Skip to content

Commit 3ece7cf

Browse files
committed
Fix erofs-utils output PURL
Signed-off-by: Keshav Priyadarshi <git@keshav.space>
1 parent d892958 commit 3ece7cf

File tree

3 files changed

+53
-28
lines changed

3 files changed

+53
-28
lines changed

src/fetchcode/package.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727

2828
from fetchcode.package_util import GITHUB_SOURCE_BY_PACKAGE
2929
from fetchcode.package_util import IPKG_RELEASES
30+
from fetchcode.package_util import ErofsUtilsGitHubSource
3031
from fetchcode.package_util import GitHubSource
3132
from fetchcode.package_util import MiniupnpPackagesGitHubSource
3233
from fetchcode.package_util import OpenSSLGitHubSource
@@ -274,7 +275,7 @@ def get_github_data_for_erofs_utils(purl):
274275
version=generic_purl.version,
275276
)
276277

277-
return GitHubSource.get_package_info(github_repo_purl)
278+
return ErofsUtilsGitHubSource.get_package_info(github_repo_purl)
278279

279280

280281
@router.route("pkg:bitbucket/.*")

src/fetchcode/package_util.py

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -235,6 +235,30 @@ def get_package_info(cls, gh_purl):
235235
yield package_from_dict(package_dict)
236236

237237

238+
class ErofsUtilsGitHubSource(GitHubSource):
239+
version_regex = None
240+
ignored_tag_regex = None
241+
242+
@classmethod
243+
def get_package_info(cls, gh_purl):
244+
245+
packages = get_github_packages(
246+
gh_purl,
247+
cls.version_regex,
248+
cls.ignored_tag_regex,
249+
cls.get_default_package(gh_purl),
250+
)
251+
252+
for package in packages:
253+
package_dict = package.to_dict()
254+
package_dict["type"] = "generic"
255+
package_dict["namespace"] = None
256+
package_dict["name"] = "erofs-utils"
257+
package_dict["version"] = package_dict["version"].replace("_", ".")
258+
259+
yield package_from_dict(package_dict)
260+
261+
238262
class MiniupnpPackagesGitHubSource(GitHubSource):
239263
version_regex = None
240264
ignored_tag_regex = None

tests/data/package/github/erofs-utils-expected.json

Lines changed: 27 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[
22
{
3-
"type": "github",
4-
"namespace": "erofs",
3+
"type": "generic",
4+
"namespace": null,
55
"name": "erofs-utils",
66
"version": "1.1",
77
"qualifiers": {},
@@ -30,14 +30,14 @@
3030
"dependencies": [],
3131
"contains_source_code": null,
3232
"source_packages": [],
33-
"purl": "pkg:github/erofs/erofs-utils@1.1",
33+
"purl": "pkg:generic/erofs-utils@1.1",
3434
"repository_homepage_url": null,
3535
"repository_download_url": null,
3636
"api_data_url": null
3737
},
3838
{
39-
"type": "github",
40-
"namespace": "erofs",
39+
"type": "generic",
40+
"namespace": null,
4141
"name": "erofs-utils",
4242
"version": "1.2",
4343
"qualifiers": {},
@@ -66,14 +66,14 @@
6666
"dependencies": [],
6767
"contains_source_code": null,
6868
"source_packages": [],
69-
"purl": "pkg:github/erofs/erofs-utils@1.2",
69+
"purl": "pkg:generic/erofs-utils@1.2",
7070
"repository_homepage_url": null,
7171
"repository_download_url": null,
7272
"api_data_url": null
7373
},
7474
{
75-
"type": "github",
76-
"namespace": "erofs",
75+
"type": "generic",
76+
"namespace": null,
7777
"name": "erofs-utils",
7878
"version": "1.2.1",
7979
"qualifiers": {},
@@ -102,14 +102,14 @@
102102
"dependencies": [],
103103
"contains_source_code": null,
104104
"source_packages": [],
105-
"purl": "pkg:github/erofs/erofs-utils@1.2.1",
105+
"purl": "pkg:generic/erofs-utils@1.2.1",
106106
"repository_homepage_url": null,
107107
"repository_download_url": null,
108108
"api_data_url": null
109109
},
110110
{
111-
"type": "github",
112-
"namespace": "erofs",
111+
"type": "generic",
112+
"namespace": null,
113113
"name": "erofs-utils",
114114
"version": "1.3",
115115
"qualifiers": {},
@@ -138,14 +138,14 @@
138138
"dependencies": [],
139139
"contains_source_code": null,
140140
"source_packages": [],
141-
"purl": "pkg:github/erofs/erofs-utils@1.3",
141+
"purl": "pkg:generic/erofs-utils@1.3",
142142
"repository_homepage_url": null,
143143
"repository_download_url": null,
144144
"api_data_url": null
145145
},
146146
{
147-
"type": "github",
148-
"namespace": "erofs",
147+
"type": "generic",
148+
"namespace": null,
149149
"name": "erofs-utils",
150150
"version": "1.4",
151151
"qualifiers": {},
@@ -174,14 +174,14 @@
174174
"dependencies": [],
175175
"contains_source_code": null,
176176
"source_packages": [],
177-
"purl": "pkg:github/erofs/erofs-utils@1.4",
177+
"purl": "pkg:generic/erofs-utils@1.4",
178178
"repository_homepage_url": null,
179179
"repository_download_url": null,
180180
"api_data_url": null
181181
},
182182
{
183-
"type": "github",
184-
"namespace": "erofs",
183+
"type": "generic",
184+
"namespace": null,
185185
"name": "erofs-utils",
186186
"version": "1.5",
187187
"qualifiers": {},
@@ -210,14 +210,14 @@
210210
"dependencies": [],
211211
"contains_source_code": null,
212212
"source_packages": [],
213-
"purl": "pkg:github/erofs/erofs-utils@1.5",
213+
"purl": "pkg:generic/erofs-utils@1.5",
214214
"repository_homepage_url": null,
215215
"repository_download_url": null,
216216
"api_data_url": null
217217
},
218218
{
219-
"type": "github",
220-
"namespace": "erofs",
219+
"type": "generic",
220+
"namespace": null,
221221
"name": "erofs-utils",
222222
"version": "1.6",
223223
"qualifiers": {},
@@ -246,14 +246,14 @@
246246
"dependencies": [],
247247
"contains_source_code": null,
248248
"source_packages": [],
249-
"purl": "pkg:github/erofs/erofs-utils@1.6",
249+
"purl": "pkg:generic/erofs-utils@1.6",
250250
"repository_homepage_url": null,
251251
"repository_download_url": null,
252252
"api_data_url": null
253253
},
254254
{
255-
"type": "github",
256-
"namespace": "erofs",
255+
"type": "generic",
256+
"namespace": null,
257257
"name": "erofs-utils",
258258
"version": "1.7",
259259
"qualifiers": {},
@@ -282,14 +282,14 @@
282282
"dependencies": [],
283283
"contains_source_code": null,
284284
"source_packages": [],
285-
"purl": "pkg:github/erofs/erofs-utils@1.7",
285+
"purl": "pkg:generic/erofs-utils@1.7",
286286
"repository_homepage_url": null,
287287
"repository_download_url": null,
288288
"api_data_url": null
289289
},
290290
{
291-
"type": "github",
292-
"namespace": "erofs",
291+
"type": "generic",
292+
"namespace": null,
293293
"name": "erofs-utils",
294294
"version": "1.7.1",
295295
"qualifiers": {},
@@ -318,7 +318,7 @@
318318
"dependencies": [],
319319
"contains_source_code": null,
320320
"source_packages": [],
321-
"purl": "pkg:github/erofs/erofs-utils@1.7.1",
321+
"purl": "pkg:generic/erofs-utils@1.7.1",
322322
"repository_homepage_url": null,
323323
"repository_download_url": null,
324324
"api_data_url": null

0 commit comments

Comments
 (0)