Skip to content
Tech

Waarom breekt een patch-versie-afhankelijkheidsbump nog steeds mijn productieapplicatie?

79

Kans

Semantisch versiebeheer is een conventie, geen contract. Systematische analyse van software-ecosystemen bevestigt dat patch- en minor-releases routinematig gedragsmatige breukwijzigingen introduceren die geen enkel statisch analysetool detecteert, en 68 procent van de waargenomen npm-breuken valt in deze gedragsmatige categorie die het moeilijkst automatisch te detecteren is. De schade ontstaat voornamelijk via transitieve afhankelijkheden, waarvan slechts 21 procent testdekking heeft in de praktijk. Afhankelijkheidsscanners markeren beveiligings-CVE's maar hebben geen mechanisme voor het detecteren van semantische incompatibiliteiten twee niveaus diep. Een ontwikkelaar die vandaag één directe afhankelijkheid bijwerkt heeft geen tool die hem vertelt welk productiegedrag zal veranderen.

Waarom het belangrijk is

Het detecteren van gedragsbreuk in transitieve afhankelijkheden voordat het CI bereikt, is de ontbrekende laag tussen versiepinning en veilige upgrades.

Hoe ik de kans beoordeel

De Opportunity Score is mijn eigen inschatting, geen meting: hoe ernstig het pijn doet, hoe vaak het toeslaat, en hoe weinig er vandaag de dag bestaat om het op te lossen. Hoger betekent dat ik denk dat het meer de moeite waard is om te bouwen.

Ernst7/10

Hoeveel pijn het veroorzaakt wanneer het zich voordoet.

Frequentie9/10

Hoe vaak mensen er daadwerkelijk tegenaan lopen.

Witruimte7/10

Hoe weinig goede tools er vandaag de dag voor bestaan.

Meer problemen die het oplossen waard zijn