Skip to content

Commit 5c27c08

Browse files
committed
git push origin add-bazel-module-support --forceAdd BazelModuleHandler to parse MODULE.bazel manifests
- Parses module() for name and version - Parses bazel_dep() including dev_dependency flag - Adds test fixture and test cases Fixes #4123 Signed-off-by: kumarasantosh <santosh.pulikond02@gmail.com>
1 parent d320c97 commit 5c27c08

File tree

5 files changed

+318
-216
lines changed

5 files changed

+318
-216
lines changed

src/packagedcode/__init__.py

Lines changed: 18 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -49,75 +49,56 @@
4949
# a handler classes MUST be added to this list to be active
5050
APPLICATION_PACKAGE_DATAFILE_HANDLERS = [
5151
about.AboutFileHandler,
52-
5352
alpine.AlpineApkArchiveHandler,
5453
alpine.AlpineApkbuildHandler,
55-
5654
bower.BowerJsonHandler,
57-
5855
build_gradle.BuildGradleHandler,
59-
6056
build.AutotoolsConfigureHandler,
6157
build.BazelBuildHandler,
58+
build.BazelModuleHandler,
6259
build.BuckMetadataBzlHandler,
6360
build.BuckPackageHandler,
64-
6561
cargo.CargoLockHandler,
6662
cargo.CargoTomlHandler,
67-
6863
chef.ChefMetadataJsonHandler,
6964
chef.ChefMetadataRbHandler,
70-
7165
cocoapods.PodspecHandler,
7266
cocoapods.PodspecJsonHandler,
7367
cocoapods.PodfileLockHandler,
7468
cocoapods.PodfileHandler,
75-
7669
conda.CondaMetaJsonHandler,
7770
conda.CondaMetaYamlHandler,
7871
conda.CondaYamlHandler,
79-
8072
conan.ConanFileHandler,
8173
conan.ConanDataHandler,
82-
8374
cran.CranDescriptionFileHandler,
84-
8575
debian_copyright.DebianCopyrightFileInPackageHandler,
8676
debian_copyright.StandaloneDebianCopyrightFileHandler,
8777
debian.DebianDscFileHandler,
88-
8978
debian.DebianControlFileInExtractedDebHandler,
9079
debian.DebianControlFileInSourceHandler,
91-
9280
debian.DebianDebPackageHandler,
9381
debian.DebianMd5sumFilelistInPackageHandler,
94-
9582
debian.DebianSourcePackageMetadataTarballHandler,
9683
debian.DebianSourcePackageTarballHandler,
97-
9884
distro.EtcOsReleaseHandler,
99-
10085
freebsd.CompactManifestHandler,
101-
10286
godeps.GodepsHandler,
10387
golang.GoModHandler,
10488
golang.GoSumHandler,
105-
10689
haxe.HaxelibJsonHandler,
107-
10890
maven.MavenPomXmlHandler,
10991
maven.MavenPomPropertiesHandler,
11092
maven.JavaJarManifestHandler,
11193
maven.JavaOSGiManifestHandler,
112-
11394
misc.AndroidAppArchiveHandler,
11495
misc.AndroidLibraryHandler,
11596
misc.AppleDmgHandler,
116-
misc.Axis2MarArchiveHandler ,
117-
misc.Axis2MarModuleXmlHandler ,
97+
misc.Axis2MarArchiveHandler,
98+
misc.Axis2MarModuleXmlHandler,
11899
misc.CabArchiveHandler,
119100
misc.ChromeExtensionHandler,
120-
misc.CpanDistIniHandler ,
101+
misc.CpanDistIniHandler,
121102
misc.CpanMakefilePlHandler,
122103
misc.CpanManifestHandler,
123104
misc.CpanMetaJsonHandler,
@@ -126,19 +107,14 @@
126107
misc.IosAppIpaHandler,
127108
misc.IsoImageHandler,
128109
misc.IvyXmlHandler,
129-
130-
misc.JavaEarAppXmlHandler ,
131-
misc.JavaEarHandler ,
132-
110+
misc.JavaEarAppXmlHandler,
111+
misc.JavaEarHandler,
133112
# is this redundant with Jar manifest?
134113
misc.JavaJarHandler,
135-
136114
misc.JavaWarHandler,
137115
misc.JavaWarWebXmlHandler,
138-
139-
misc.JBossSarHandler ,
140-
misc.JBossServiceXmlHandler ,
141-
116+
misc.JBossSarHandler,
117+
misc.JBossServiceXmlHandler,
142118
misc.MeteorPackageHandler,
143119
misc.MozillaExtensionHandler,
144120
misc.NsisInstallerHandler,
@@ -152,19 +128,14 @@
152128
npm.PnpmShrinkwrapYamlHandler,
153129
npm.PnpmLockYamlHandler,
154130
npm.PnpmWorkspaceYamlHandler,
155-
156131
nuget.NugetNupkgHandler,
157132
nuget.NugetNuspecHandler,
158133
nuget.NugetPackagesLockHandler,
159-
160134
opam.OpamFileHandler,
161-
162135
phpcomposer.PhpComposerJsonHandler,
163136
phpcomposer.PhpComposerLockHandler,
164-
165137
pubspec.DartPubspecYamlHandler,
166138
pubspec.DartPubspecLockHandler,
167-
168139
pypi.PipfileHandler,
169140
pypi.PipfileLockHandler,
170141
pypi.PipRequirementsFileHandler,
@@ -180,36 +151,26 @@
180151
pypi.PythonSdistPkgInfoFile,
181152
pypi.PythonSetupPyHandler,
182153
pypi.SetupCfgHandler,
183-
184154
readme.ReadmeHandler,
185-
186155
rpm.RpmArchiveHandler,
187156
rpm.RpmSpecfileHandler,
188-
189157
rubygems.GemMetadataArchiveExtractedHandler,
190158
rubygems.GemArchiveHandler,
191-
192159
# the order of these handlers matter
193160
rubygems.GemfileInExtractedGemHandler,
194161
rubygems.GemfileHandler,
195-
196162
# the order of these handlers matter
197163
rubygems.GemfileLockInExtractedGemHandler,
198164
rubygems.GemfileLockHandler,
199-
200165
# the order of these handlers matter
201166
rubygems.GemspecInInstalledVendorBundleSpecificationsHandler,
202167
rubygems.GemspecInExtractedGemHandler,
203168
rubygems.GemspecHandler,
204-
205169
swift.SwiftManifestJsonHandler,
206170
swift.SwiftPackageResolvedHandler,
207171
swift.SwiftShowDependenciesDepLockHandler,
208-
209172
windows.MicrosoftUpdateManifestHandler,
210-
211173
win_pe.WindowsExecutableHandler,
212-
213174
# These are handlers for deplock generated files
214175
pypi.PipInspectDeplockHandler,
215176
]
@@ -221,26 +182,21 @@
221182

222183
SYSTEM_PACKAGE_DATAFILE_HANDLERS = [
223184
alpine.AlpineInstalledDatabaseHandler,
224-
225185
debian_copyright.DebianCopyrightFileInPackageHandler,
226186
debian_copyright.DebianCopyrightFileInSourceHandler,
227-
228187
debian.DebianDistrolessInstalledDatabaseHandler,
229-
230188
debian.DebianInstalledFilelistHandler,
231189
debian.DebianInstalledMd5sumFilelistHandler,
232190
debian.DebianInstalledStatusDatabaseHandler,
233-
234191
rpm.RpmLicenseFilesHandler,
235-
rpm.RpmMarinerContainerManifestHandler
192+
rpm.RpmMarinerContainerManifestHandler,
236193
]
237194

238195
if on_linux:
239196
SYSTEM_PACKAGE_DATAFILE_HANDLERS += [
240197
rpm.RpmInstalledBdbDatabaseHandler,
241198
rpm.RpmInstalledSqliteDatabaseHandler,
242199
rpm.RpmInstalledNdbDatabaseHandler,
243-
244200
win_reg.InstalledProgramFromDockerSoftwareDeltaHandler,
245201
win_reg.InstalledProgramFromDockerFilesSoftwareHandler,
246202
win_reg.InstalledProgramFromDockerUtilityvmSoftwareHandler,
@@ -255,23 +211,28 @@
255211

256212
try:
257213
from go_inspector.binary import get_go_binary_handler
214+
258215
handler = get_go_binary_handler()
259216
PACKAGE_IN_COMPILED_DATAFILE_HANDLERS.append(handler)
260217
except ImportError:
261218
pass
262219

263220
try:
264221
from rust_inspector.packages import get_rust_binary_handler
222+
265223
handler = get_rust_binary_handler()
266224
PACKAGE_IN_COMPILED_DATAFILE_HANDLERS.append(handler)
267225
except ImportError:
268226
pass
269227

270228
ALL_DATAFILE_HANDLERS = (
271-
APPLICATION_PACKAGE_DATAFILE_HANDLERS + [
272-
p for p in SYSTEM_PACKAGE_DATAFILE_HANDLERS
229+
APPLICATION_PACKAGE_DATAFILE_HANDLERS
230+
+ [
231+
p
232+
for p in SYSTEM_PACKAGE_DATAFILE_HANDLERS
273233
if p not in APPLICATION_PACKAGE_DATAFILE_HANDLERS
274-
] + PACKAGE_IN_COMPILED_DATAFILE_HANDLERS
234+
]
235+
+ PACKAGE_IN_COMPILED_DATAFILE_HANDLERS
275236
)
276237

277238
# registry of all handler classes keyed by datasource_id
@@ -294,6 +255,4 @@ def get_package_handler(package_data):
294255
return ppc
295256

296257

297-
PACKAGE_DATA_CLASS_BY_DATASOURCE_ID = {
298-
maven.MavenPackageData.datasource_id: maven.MavenPackageData
299-
}
258+
PACKAGE_DATA_CLASS_BY_DATASOURCE_ID = {maven.MavenPackageData.datasource_id: maven.MavenPackageData}

0 commit comments

Comments
 (0)