Ondersteunde pakketecosystemen

Afhankelijkheidsscans ondersteunen zowel directe als transitieve afhankelijkheden voor alle ondersteunde pakketecosystemen. Het scannen van afhankelijkheden kan niet worden gedetecteerd door de leverancier van afhankelijkheden in uw opslagplaats.

Als gevolg van hoe detectie wordt uitgevoerd voor het scannen van afhankelijkheden, moet u ervoor zorgen dat u een stap voor pakketherstel in uw build-pijplijn hebt, zodat de juiste pakketversie wordt bepaald, anders ontbreken er mogelijk resultaten of onvolledig zijn.

Ecosystemen en versies

Pakketbeheer Talen Ondersteunde indelingen Labeling van ontwikkelingsafhankelijkheden Ondersteunde versies
Lading Rust Cargo.toml, Cargo.lock Niet ondersteund v1
CocoaPods Swift Podfile.lock Niet ondersteund n.v.t.
Go-modules Go go.mod, go.sum Niet ondersteund n.v.t.
Gradle Java *.lockfile Supported n.v.t.
Maven Java pom.xml Supported n.v.t.
npm JavaScript package-lock.json, , , package.jsonnpm-shrinkwrap.jsonlerna.json Supported v6, v7 & lockfile <= v3
NuGet C# *.packages.config, , *.project.assets*.csproj Niet ondersteund n.v.t.
pit Python setup.py, requirements.txt Niet ondersteund n.v.t.
pnpm JavaScript package.json Supported v7, v8
RubyGems Ruby Gemfile.lock Niet ondersteund n.v.t.
Garen JavaScript package.json Supported v1, v2

Vracht

Als Cargo cli is geïnstalleerd met v1.77 of hoger, cargo metadata wordt gebruikt, wat nauwkeuriger is.

Go-modules

Als u Go v1.17 of hoger gebruikt, go.mod wordt deze rechtstreeks gebruikt, samen met de go cli als deze aanwezig is op de agent. Anders wordt het go.sum bestand gescand.

Maven

Detectie vereist dat de maven CLI op de agent is geïnstalleerd.

Ontwikkelingsafhankelijkheden worden geïdentificeerd wanneer ze het test afhankelijkheidsbereik gebruiken.

npm

Met afhankelijkheidsscans worden basisbestanden package.json gedetecteerd, maar worden specifieke pakketversies niet opgelost zonder een pakketherstel tijdens de build, zelfs als afhankelijkheden in de package.json versies niet semantisch zijn.

Ontwikkelingsafhankelijkheden worden geïdentificeerd door de devDependencies eigenschap in package.json en de dev vlag in package-lock.json.

NuGet

Zonder pakketherstel worden afhankelijkheidsscans niet omgezet in specifieke pakketversies, zelfs niet als afhankelijkheden in de *.csproj versie niet semantisch zijn.

pit

Gebruik pip v22.2.0 of hoger om het gebruik van pip report scannen in te schakelen, wat nauwkeurigere detectie biedt.

De omgevingsvariabele PIP_INDEX_URL wordt gebruikt om te bepalen voor welke pakketfeed moet worden gebruikt pip install --report detection. De standaardwaarde maakt gebruik van de PyPi-index, tenzij pip-standaardinstellingen globaal zijn geconfigureerd.

pnpm

Ontwikkelingsafhankelijkheden worden geïdentificeerd door de packages/{package}/dev vlag in het pnpm-lockfile.

Garen

Ontwikkelingsafhankelijkheden worden geïdentificeerd door de devDependencies eigenschap in package.json.