+− THE DAILY DIFFdev & AI news
NEEDS REVIEW

Gits nye hash-standard – hvad det betyder

Gits foreslåede SHA-256 standard skaber en kompatibilitetsgrænse for nye repositories.

Gits foreslåede SHA-256 standard skaber en kompatibilitetsgrænse for nye repositories. Vi tjekker den officielle plan, Scott Chacones indvending og en fungerende GitHub preview-undtagelse, dækker derefter Pi 1.0 og SvelteKit 3. Dom: KRÆVER ANMELDELSE.

Læs den skriftlige udgave (engelsk) ↗

Hvad denne video dækker

  • Hvorfor kan to Git-repositories nægte at tale sammen?
  • Hvad ændrer Git 3 egentlig?
  • Hvorfor udskifte SHA-1, hvis Git opdager kollisioner?
  • Hvad viste vores lokale kompatibilitetstjek?
  • Hvad overlever et nedbrud i Pi Durable?

Oversat udskrift

Oversat fra den originale engelske fortælling. Tilgængelig lyd og undertekster styres af YouTube.

Hvorfor kan to Git-repositories nægte at tale sammen?

0:00 Man skulle tro, at opgradering af Git holder dine værktøjer i gang. Gits planlagte nye hash-standard skaber repositories, som dagens gamle format ikke kan tale med. I denne video, hvorfor ændre? Hvad går i stykker? Hvem er klar? Der er allerede en fungerende undtagelse på GitHub. Jeg viser dig, hvad det beviser til sidst. Det er fredag, den anden oktober, og dette er The Daily Diff.

0:18 I torsdags kaldte en GitHub-medstifter Gits planlagte ændring en dyr fejltagelse. Pi sendte et nyt agent-harness, og SvelteKit sendte endnu en migration. Scott Chacon hjalp med at bygge GitHub og skrev Pro Git, så denne klage kommer indefra. inde fra huset. Huset sælger også Git-værktøjer. Først den faktiske plan.

Hvad ændrer Git 3 egentlig?

0:35 Git tre ville som standard give nye repositories SHA to hundrede og seksoghalvtreds, når biblioteker og hostingtjenester er klar til at understøtte det. Det officielle dokument giver ingen udgivelsesdato og holder SHA et understøttet. Dit eksisterende repository ændrer ikke magisk format, når du opgraderer den eksekverbare. Det er værd at huske, før din gruppechat planlægger en nødmigration. Dramaet er en foreslået standard, og fristen er i øjeblikket en tom kalender.

Hvorfor udskifte SHA-1, hvis Git opdager kollisioner?

0:58 Hvorfor overhovedet ændre? Git navngiver objekter ved at hashe deres indhold. Filer fører ind i træer, og commits henviser til træer og tidligere commits. Det giver dig integritet på tværs af historikken. Skift hashing-skemaet, og objektnavne ændres også, inklusive referencer, der er gemt inde i andre objekter. Chacon rækker tilbage til Linus Torvalds, Gits skaber, med argumentet om, at betroet

1:17 distribution er vigtig. Det er en historisk position, og Linus valgte SHA et tilbage i to tusind og fem. Sikkerhedssagen har flyttet sig siden da. Forskere demonstrerede SHA et kollisioner i to tusind og sytten, og demonstrerede senere et valgt præfiksangreb mod PGP-identitetscertifikater. Moderne Git opdager kendte kollisionsangreb med forstærket SHA et. Dets vedligeholdere ønsker også beskyttelse mod fremtidige angreb, hvilket er en rimelig ting at ønske fra signaturer.

1:41 Chacon mener, at økosystemregningen køber for lidt sikkerhed. Han foreslår at signere en separat stærk kontrolsum af træindhold, samtidig med at dagens objektdressering bevares nedenunder. Hvad går i stykker? Jeg oprettede begge formater lokalt og hashede den samme lille fil.

Hvad viste vores lokale kompatibilitetstjek?

1:54 Det ene objektnavn har fyrre hex-tegn, det andet har fireogtres. Så prøvede jeg at hente mellem dem. Min installerede Git afviste det med uoverensstemmende algoritmer, præcis den kompatibilitetsgab, der er beskrevet i den nuværende officielle manual. Dette brugte min gamle installerede Git, så det fortæller os om dagens grænse. At kalde det en test af den ikke-udgivne Git tre ville være kreativ bogføring. Migrationsarbejdet strækker sig ind i scripts, der antager en hashes længde, og systemer, der linker til objektnavne.

2:19 Genhashing af en historik kræver en kortlægning mellem disse identiteter. Gits overgangsdesign inkluderer den kortlægning og signaturhåndtering. Implementeringsklarhed er vigtig, fordi et designdokument ikke opgraderer biblioteket, der gemmer sig inde i dit foretrukne udviklerværktøj. Det er den menneskelige pris i Chacones argument. Hver værktøjsvedligeholder får endnu et kompatibilitetsjob, mens brugere opdager, at deres versionskontrol nu kræver versionskontrol. For nu skal du teste din vært og dine værktøjer, før du vælger det nye format til et

2:44 projekt. Eksisterende teams kan beholde deres nuværende format, mens det økosystem indhenter det. I mellemtiden nåede Pi en punkt nul.

Hvad overlever et nedbrud i Pi Durable?

2:51 Det er et kodningsagent-harness fra Earendil, med indbygget MCP-understøttelse gennem Codemode og værktøjer, der indlæses, når de er nødvendige. Teamet kalder minimalisme for pointen. Hvis din agentopsætning allerede ligner en lille regering, at holde værktøjer ude af prompten, indtil de er nødvendige, lyder som administrativ reform. Den udgav også Pi Durable, et separat eksperimentelt framework. Opgaver gemmer kontrolpunkter, så en genstartet proces kan samle ufærdigt arbejde op fra permanent lagring. Den afgørende detalje er værktøjsgenafspilning.

3:16 Et værktøj, der blev afbrudt af et nedbrud, kører kun igen, når det erklærer det sikkert. Ellers får modellen besked om, at den blev afbrudt. Det er en nyttig grænse, når et værktøj kan bruge penge. Jeg vil have assistenten til at huske min indkøbsliste uden at fejre et nedbrud ved at købe den to gange.

Hvad migrerer SvelteKit 3 for dig?

3:30 SvelteKit tre landede også torsdag og flyttede konfigurationen ind i Vite og erstattede dollar lib med hash lib, ved hjælp af standard package subpath imports. Migrationskommandoen omskriver, hvad den kan, og efterlader en to-do-liste for resten. Din robot kan hjælpe, og din diff fortjener stadig at blive læst. Meddelelsen rekrutterer endda dine robotvenner til resterne. Vi når det punkt, hvor en framework-opgradering sender lektier og en foreslået vikar. Og fjernfunktioner kræver stadig eksperimentel Async Svelte.

3:56 Et stort versionsnummer føles beroligende, men individuelle funktioner bærer deres egne modenhedsetiketter. Tjek dem, du faktisk bruger.

Hvad beviser GitHubs fungerende undtagelse?

4:03 Så hvem er klar til Gits nye format? Her er undtagelsen. Et offentligt GitHub-repository, der indeholder Brian Carlsons foredrag, returnerer allerede et fuldt SHA to hundrede og seksoghalvtreds objektnavn. Jeg tjekkede den offentlige fjernbetjening direkte. Forelæsningsslides kalder support en privat forhåndsvisning og siger, at oprettelse af repository er stadig på vej. Der er faktisk fremskridt bag venteværelset. Det beviser, at GitHub kan hoste dette preview-repository.

4:24 Det giver os nul garanti for, at almindelig projektoprettelse eller alle dine integrationer er klar. Undtagelsen har en tilladelsesgrænse. Hvis du hellere vil læse dette end at høre mig sige det, lander diffen i din indbakke hver morgen, gratis på the daily diff dot dev, link nedenfor. Så dagens dom er kræver anmeldelse.

Hvorfor afhænger min dom af hele værktøjskæden?

4:40 Jeg ville beholde den stærkere hash-mulighed og teste hele værktøjskæden, før jeg ændrer standardindstillinger. Kompatibilitet er en del af levering af sikkerhedsforbedringen. Og det er diffen for i dag. Jeg er Niko fra Axrisi. Flet ansvarligt.

Kilder

  1. Chaconblog.gitbutler.com
  2. Git's official plangit-scm.com
  3. Current interoperabilitygit-scm.com
  4. Transition designgit-scm.com
  5. Independent collision researchsha-mbles.github.io
  6. GitHub preview repositorygithub.com
  7. Pi 1.0earendil.com
  8. Pi Durableearendil.com
  9. SvelteKit 3svelte.dev
  10. HN discussionnews.ycombinator.com

Relaterede videoer