Ancestry
De gedeclareerde afstammingslijn tussen packageversies die Salesforce vertelt van welke eerdere versie een nieuwe versie moet upgraden.
Definitie
Ancestry is de verplichte afstammingslijn die een managed packageversie declareert naar de versie waarvan deze upgradet, ingesteld via ancestorId of ancestorVersion in sfdx-project.json. Salesforce gebruikt dit om te valideren dat een upgradepad veilig is: velden kunnen niet op incompatibele wijze worden verwijderd en opnieuw toegevoegd, verplichtheid kan niet onverwacht worden aangescherpt, en andere destructieve upgradepatronen worden opgevangen voordat een versie subscriberorgs bereikt. Unlocked packages vereisen ancestry niet op dezelfde manier, omdat Salesforce ervan uitgaat dat teams beide kanten van de upgrade beheersen; managed packages handhaven het omdat een subscriberorg die blind upgradet geen ander vangnet heeft. Het overslaan of verkeerd declareren van ancestry is een veelvoorkomende oorzaak van verwarrende validatiefouten bij het maken van een nieuwe managed packageversie. Onze gids met 2GP-valkuilen behandelt ancestry-fouten die ISV's echte releasetijd kosten.
Hoe het werkt in Serpent
Serpent houdt de ancestry van packageversies automatisch bij als onderdeel van het promotieproces, zodat upgradepaden geldig blijven zonder dat een release engineer voor elke build handmatig ancestor-versies hoeft te declareren. Wanneer de gedeclareerde ancestor van een versie niet overeenkomt met de daadwerkelijke upgradeketen, signaleert Serpent dit vóór het aanmaken in plaats van na een mislukte Salesforce-validatie. Zie 2GP CI/CD in Serpent voor hoe version ancestry in de pipeline past.

Ancestry, beantwoord
Start gratis. Geen creditcard, geen installatie, geen verplichting.
Binnen 15 minuten ingericht. Geen DevOps-medewerker nodig.
