Holochain Dev Pulse 01

Rust Esikatselu

Tämä ensimmäinen Holochain Dev -pulssi on pääosin kertaus yhden ydinvoimalaitteidemme, Nicolas Luckin, "Holochain Developer Preview Release Release", äskettäin julkaistulle blogin viestille. Meillä on kuitenkin myös joitain lisäpäivityksiä jaettavaksi. Toimitamme säännöllisiä Holochainin kehityspäivityksiä eteenpäin.

Olemme työskennelleet ahkerasti Holochain Rust Refactor ja ydintoimintojoukkojen suhteen, yksinkertaistamalla dramaattisesti sovelluskehitystä, vapauttamalla Rust HDK, testaamalla tehokkaita makroja, parantamalla koodikehityskokemusta, keskittymällä spesifiseen kehitykseen ja ottamalla käyttöön modulaarinen kehys.

Kehittäjän esikatselun julkaisutiedot:

· Holochain Rust Developer Preview julkaistu

· Pysyvyys tiedostojärjestelmässä käytössä

· Sovelluskoodien kehittämistä on yksinkertaistettu dramaattisesti

· Otettiin käyttöön modulaarinen kehys

· Esitteli uuden kokonaisuuden, nimeltään “Containers”

Muut tämän viikon kohokohdat:

· DevCamp Alpha isännöi

· DevCamp korosta!

· Julkaisi Rust-sovellusrakennuksen opetusohjelman kehittäjän esikatselutiedotteelle

· Parannettu sisäisiä prosessihakemuksia

· Valmistunut enemmän "kulissien takana" -työtä (virheenkorjaukset, teknologiavelan vähentäminen jne.)

· Julkaistut Holochain Book- ja laatikoihin perustuvat API-dokumentaatio

Kehitysversion esikatselupainikkeen kohokohdat (yksityiskohtainen)

Holochain Rust Developer Preview julkaistiin

Valmisimme sen, jonka määrittelemme toiminnallisuuden ydinjoukkoksi, jota vaaditaan tietojen lukemiseen ja kirjoittamiseen sekä paikalliselle ketjullesi että siitä. Tähän sisältyy kaikki tekemistä tietojen sitouttamiseen, kirjoittamiseen ja lukemiseen, samoin kuin linkkien luominen ja linkkien haku. Ne ovat saatavilla Rust HDK: ssa kahden viikon takaisen lopun jälkeen (27. lokakuuta). Lisätietoja HDK-levyistä alla.

Pysyvyys tiedostojärjestelmässä käytössä

Tiedostojärjestelmän pysyvyyden perustoteutus tapahtui myös äskettäin. Ennen tätä viikkoa voisit aloittaa Holochain-tapauksesi ja tappaa sen, saamatta mitään takaisin aiemmin kirjoittamasi ja tallentamasi mukaan. Nyt lähdeketjun tilamuutokset pysyvät samoina kuin litteät tiedostot. Muut pysyvyyden toteutukset ovat tulossa pian!

Sovelluskoodien kehittämistä on yksinkertaistettu dramaattisesti

Uusi Rust-versio esittelee JSON-paketitiedostomuodon, joka sisältää kaiken, mikä liittyy DNA: han (jopa koottuun zom-koodisi). Olemme myös poistaneet eräät kielet (JavaScript ja Lisp) ja esitelleet WebAssemblyn rakennuskohteeksi.

Nämä kaksi päätöstä ovat parempia pitkällä tähtäimellä, koska voimme tukea enemmän kieliä ilmaiseksi, ja zom-koodin suorittaminen on paljon nopeampaa. Mutta se tulee joitain kompromisseja. Zome-toiminnot ovat matalamman tason ja vaativat hiukan osoitinta.

Olemme kuitenkin ottaneet käyttöön myös Rust HDK: n (Holochain Developer Kit), joka yksinkertaistaa dramaattisesti sovelluskoodien kehittämistä, kun kirjoitat zome-koodia Rustissa. Sen lisäksi, että se piilottaa alhaisen tason sovellusliittymän kaiken monimutkaisuuden, sen mukana tulee myös rakennustyökalu, joka tuottaa kaikki zomen metatiedot automaattisesti koodista. Aiemmin Holochain-protossa sinun oli kirjoitettava nämä metatiedot käsin. Tämä on hieno uutinen - sinun ei enää tarvitse määritellä suurta osaa sovelluskoodistasi JSON: ssä! Hyvästi kopiointiin, oikeinkirjoitusvirheisiin ja asiayhteyden muutoksiin. Ja älä huoli; build-putkilinja myös kääntää koodisi WebAssemblelle sinulle ja yhdistää sen metatietojen kanssa paketitiedostoon.

Esitteli modulaarisen kehyksen

Uusi pino on eksponentiaalisesti modulaarisempi kuin alkuperäinen alfa. Uudistimme sen tällä tavalla, jotta voimme ottaa käyttöön kaikenlaisia ​​uusia mahdollisuuksia - uusia kohdealustoja / arkkitehtuureja / käyttöjärjestelmiä, erilaisia ​​tallennusalustakkeita, liitettäviä graafisia käyttöliittymiä, salattuja verkkokerroksia jne. (Olemme jo testanneet Android-kokoamisen!), Mutta se mahdollistaa myös niin monia muita mahdollisuuksia ja yhteisöpohjaisia ​​innovaatioita.

Eri paikkoja on niin paljon, että ihmiset voivat kytkeä sen. Esimerkiksi meillä on joustava pysyvyyssovellusliittymä, mikä tarkoittaa, että voit käyttää mitä tahansa määrää erilaisia ​​taustaohjelmia lähdeketjun ja DHT-sirun tallentamiseen. Joku voisi kirjoittaa toteutuksen, joka käyttää PostgreSQL: tä; joku muu voisi kirjoittaa toteutuksen MongoDB: hen. Tällä hetkellä kirjoitamme tiedostojärjestelmään, joka on alkeellisinta toteutusta. Vaikka tämä tuli yhteen äskettäin, se oli seurausta monien kuukausien huolellisista arkkitehtonisista päätöksistä, jotka alkavat jo maksaa osinkoja.

Kuukausittainen pulssi - https://github.com/holochain/holochain-rust/pulse/kuukausi

Esitteli uuden kokonaisuuden nimeltä “Containers”

Tässä on uusi asia! Meillä on uusi kokonaisuus Holochainin maailmassa, jota kutsumme konttiksi. Se yhdistää kaikki Holochain-sovelluksesi ja tietosi yhdeksi kokonaisuudeksi ja esittelee sen maailmalle yhtenäisessä käyttöliittymässä. Eri säiliöillä voi olla eri tarkoitukset; Tässä on kaksi, jotka ovat jo saatavilla:

  • holochain-cmd on komentorivisäiliö, joka aktivoi, rakentaa ja testaa sovelluksia. Sitä käytät rakentaaksesi zome-koodisi paketiksi, ja sen mukana tulee JavaScript-ajoaika, jonka avulla voit suorittaa suosikki JS-pohjaiseen testauskehykseen kirjoitetut testit.
  • Holosqape on todiste loppukäyttäjän työkalun konseptista, johon voit ladata sovelluksia. Se ei ole erityisen kiillotettu tai käyttäjäystävällinen; sinun on tiedettävä, mitä olet tekemässä käyttääksesi sitä. Se on kuitenkin jännittävä, koska siellä asiat osuvat lopulta ihmisiin kehittäjien ulkopuolelle. Jos joku lähettää sinulle sovelluksen ja haluat asentaa ja käyttää sitä, se on mahdollista nyt! Tämä on osa Rust-kehittäjän esikatseluversiota. Tämä on meille niin tärkeää!

Holochain Rust -julkaisun ensimmäinen virallinen versio luotiin

On viisi arkistoa, jotka kattavat tämän uuden julkaisun, ja olemme merkinneet saman versionumeron kaikissa niissä. Ne, jotka voidaan kääntää binaariksi ihmisille ladattaviksi, sijoitetaan Holochain / app-spec-rust -varastoon ”julkaisut” -välilehdessä. Nämä ovat binaareja eri arkistoista, jotka ovat synkronoituna keskenään. Haluamme sanoa: “Hei kehittäjät! Tsekkaa tämä. Tämä on kehittäjämme esikatselu, asenna nämä kohteet, kokeile ja aloita rakentaminen. Kerro meille kokemuksestasi. ”

Kehystys ja odotukset

Holochain Rust -kehittäjän esikatselu sisältää keskeiset toiminnallisuudet ja kehittäjän työkalut ilman luvattua matalan tason verkkotoimintoa. Tämä julkaisu on keskittynyt kehittäjiin ja heidän palautteensa saamiseen. Olemme luetteloineet julkaisun readme-rajoitukset.

Holochain Rust Alpha 2: n virallinen julkaisu on suunniteltu; ilmoitamme sinulle ja muulle yhteisölle, kun lähestymme julkaisupäivää.

Muut tämän viikon kohokohdat

DevCamp Alpha -palvelinta

Kääritimme DevCamp # 1 maanantaina 10. ja 29. päivänä ja se oli menestys! Loimme DevCampille kehittäjille tarkoitetun opetusvideon. Tämä video sisältää katsauksen uuteen Holochain-sovellusliittymään ja Rust HDK: han sekä esimerkki rakennettavasta tehtäväsovelluksesta. Videossa näytesovellus on keskittynyt holochain-DNA: han eikä yhdistä käyttöliittymään. Halusimme tarjota esimerkkejä muutamista hyödyllisistä asioista ja osoittaa ihmisille, että sovelluksesi on helppo rakentaa jo tässä varhaisessa vaiheessa. Linkki videoon jaetaan, kun se on saatavilla.

DevCamp-tapahtumassa osallistujat oppivat Holochain Protosta, Holochain Rustista ja Holochain-avainkäsitteistä.

DevCamp Alpha

DevCamp Korosta!

Näimme DevCampin aikana kehittävän Holo World -opetusohjelman uudelleen Rustissa. Heille oli mielenkiintoista saada sovellus toimimaan vain yhden päivän sisällä.

Saimme paljon hyvää palautetta Holochainin asennusprosessista. Jatkossa asennusprosessi on yksinkertaistettu prosessi, jolla on pääsy esiasennettuihin binaareihin. Olemme päivittäneet ja muotoilleet uudelleen README-tiedostot ja lisänneet linkit tärkeimpiin paikkoihin osoittaaksesi esivalmistettujen binaarien dokumentaatiota. Tämä varmistaa nopeimman reitin Holochainin asentamiseen. Yhteenvetona voidaan todeta, että Holochainin asentaminen on helppoa nyt, ja tulevaisuudessa se on vielä helpompaa.

Valmistui enemmän "kulissien takana" -työtä (virheenkorjaukset, teknisen velan vähentäminen jne.)

Teimme pieniä virhekorjauksia (ts. Yhteys WebSocket-portteihin saatiin korjattuja) DevCamp-palautteen perusteella.

Tällä viikolla kehitysryhmä oli keskittynyt koodin puhdistukseen, huolehtien kohteiden jäädyttämisestä, pienistä virhekorjauksista ja syvällisestä (ja enemmän aikaa vievästä) kulissien takana tapahtuvasta työstä.

Julkaisi Rust-sovellusrakennuksen opetusohjelman kehittäjän esikatselutiedotteelle

Meillä oli ihmisiä, jotka opiskelivat Holochain Protoa tällä viikolla laaja-alaisesti. Proto-oppiminen on keskeinen osa opetussuunnitelmaa. Esittelimme myös Holochain Rust -virran, julkaisun niille, jotka olivat kiinnostuneempia Rustista ja vähemmän kiinnostuneita sovelluksen loppuun saattamisesta DevCampin loppuun mennessä. Jotkut ihmiset halusivat vain saada käsityksen Holochain Rustista ja kirjoittaa koodin uusimmalla versiolla. Muut ihmiset päättivät tehdä molemmat. Jotkut ihmiset työskentelivät opetussuunnitelman sosiaalisen sovelluksen näkökulmasta, kun taas toisten tavoitteena oli oppia Holochain ja saada altistuminen koodille. Jotkut keskittyivät holochain-käsitteisiin. Meillä oli todellinen yhdistelmä ihmisiä, jotka suorittivat erilaisia ​​opetussuunnitelman osia DevCampin sulkevassa ympyrässä.

Parannettu sisäisiä prosesseja vetämispyyntöihin

Pyrimme parantamaan sisäisiä prosessejamme ja käsittelemään vetopyyntöjä (PR) ja seurantaa, jotta PR: t eivät pysähdy. Ei ole tehokasta joutua vetämään pyyntöjä, jotka eivät ole sulautumassa, istuvat lepotilassa ja jäävät taakse. Tämän ratkaisemiseksi keskityimme prosessitason työhön tällä viikolla. Dev-tiimi pyrkii parantamaan prosessia siten, että muiden kehittäjien on virtaviivaistettava osallistumaan koodiin ja dokumentointiin. Tavoitteenamme on kehittää parannettu vetopyyntöjen prosessi, joten ryhmän ja kaikkien koodia avustajien välillä on hyvä seuranta.

Julkaistut Holochain Book- ja laatikoihin perustuvat API-dokumentaatio

Holochain-kirjan dokumentaatio sisältää esimerkkejä koodeista, jotka ovat erittäin tärkeitä kehittäjille. Sisäisten esimerkkien näkeminen yhdessä sovellusliittymäviitteen kanssa auttaa huomattavasti sovelluksen kehitysprosessissa. Kaikki kehittäjän esikatselussa olevat toiminnot dokumentoidaan API-viitteessä (Rust-API-linkit). Tällaista dokumentaatiota ei ollut saatavilla ennen tätä viikkoa.

Holochain-kirjalinkit

HDK: https://holochain.github.io/rust-api/0.0.1/hdk/

Eläintarhat: https://holochain.github.io/rust-api/0.0.1/hdk/macro.define_zome.html

Ruoste: https://holochain.github.io/holochain-rust/

Huomaa: Kehittäjäportaalissa huomaat yläreunassa uuden bannerin, joka kutsuu avainta. https://developer.holochain.org/

Osallistu dokumentaatioon

Holochain dev -tiimi on sitoutunut syventämään osallistumiskulttuuria ja tekemään siitä suhteellisen helpon osallistumisen. Haluamme kutsua kehittäjiä osallistumaan dokumentaatioon. Siksi lisäsimme joitain ”ehdottaa muokkausta” -painikkeita, jotta asiakirjojen tiettyihin osiin osallistuminen olisi helpompaa.

Jos olet kiinnostunut osallistumaan koodiin, hyvä lähtökohta on auttaa dokumentoinnissa. Mielestämme se on paras tapa saada hyvä käsitys Holochainin arkkitehtuurista ja koodipohjasta ja osallistua projektiimme samaan aikaan.

Kehittäjäkysymykset?

Voit myös löytää vastauksia moniin usein kysyttyihin kysymyksiin.

Liity joukkoomme Mattermost keskustelemaan näistä päivityksistä! Muista liittyä Holochain / Tech Q & A -kanavaan.