Skip to content

Commit 9ac6c10

Browse files
committed
Merge branch 'main' into release
2 parents dd403c2 + c0698d9 commit 9ac6c10

File tree

6 files changed

+84
-12
lines changed

6 files changed

+84
-12
lines changed

charon.spec

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
%global owner Commonjava
22
%global modulename charon
33

4-
%global charon_version 1.1.2
4+
%global charon_version 1.2.2
55
%global sdist_tar_name %{modulename}-%{charon_version}
66

77
%global python3_pkgversion 3
@@ -81,6 +81,19 @@ export LANG=en_US.UTF-8 LANGUAGE=en_US.en LC_ALL=en_US.UTF-8
8181

8282

8383
%changelog
84+
* Mon Sep 18 2023 Harsh Modi <hmodi@redhat.com>
85+
- 1.2.2 release
86+
- hot fix for "dist_tags" derived issue
87+
88+
* Wed Sep 13 2023 Harsh Modi <hmodi@redhat.com>
89+
- 1.2.1 release
90+
- Fix the aws list objects max 1000 limit issue
91+
- Fix the "dist_tags" issue in npm metadata generation
92+
93+
* Thu Jun 29 2023 Harsh Modi <hmodi@redhat.com>
94+
- 1.2.0 release
95+
- Add maven repository artifact signature feature
96+
8497
* Tue Sep 20 2022 Harsh Modi <hmodi@redhat.com>
8598
- 1.1.2 release
8699
- add configuration schema and validation

charon/pkgs/npm.py

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -532,16 +532,20 @@ def _do_merge(original: NPMPackageMetadata, source: NPMPackageMetadata, is_lates
532532
original.time[t] = source.time.get(t)
533533
changed = True
534534
if source.dist_tags:
535-
for d in source.dist_tags.keys():
536-
if d not in original.dist_tags.keys():
537-
original.dist_tags[d] = source.dist_tags.get(d)
538-
changed = True
539-
elif d in original.dist_tags.keys() and compare(
540-
source.dist_tags.get(d),
541-
original.dist_tags.get(d)
542-
) > 0:
543-
original.dist_tags[d] = source.dist_tags.get(d)
544-
changed = True
535+
if original.dist_tags:
536+
for d in source.dist_tags.keys():
537+
if d not in original.dist_tags.keys():
538+
original.dist_tags[d] = source.dist_tags.get(d)
539+
changed = True
540+
elif d in original.dist_tags.keys() and compare(
541+
source.dist_tags.get(d),
542+
original.dist_tags.get(d)
543+
) > 0:
544+
original.dist_tags[d] = source.dist_tags.get(d)
545+
changed = True
546+
else:
547+
original.dist_tags = source.dist_tags
548+
changed = True
545549
if source.versions:
546550
for v in source.versions.keys():
547551
original.versions[v] = source.versions.get(v)

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
"""
1616
from setuptools import setup, find_packages
1717

18-
version = "1.2.1"
18+
version = "1.2.2"
1919

2020
# f = open('README.md')
2121
# long_description = f.read().strip()

tests/test_npm_meta.py

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -144,3 +144,54 @@ def test_handle_npm_uploading_for_new_version(self):
144144
self.assertIn("1.0.1", merged.keywords)
145145
self.assertEqual("1.0.1bugs", merged.bugs)
146146
self.assertEqual("Apache-2.0.1", merged.license)
147+
148+
def test_handle_npm_meta_wrong_dist_tags(self):
149+
bucket = self.mock_s3.Bucket(MY_BUCKET)
150+
original_version_0_5_8_package_json = """
151+
{"name": "@redhat/kogito-tooling-workspace",
152+
"dist_tags": {"latest": "0.5.8"},"versions": {"0.5.8": {"name":
153+
"@redhat/kogito-tooling-workspace", "version": "0.5.8", "title": "0.5.8title",
154+
"description": "0.5.8description", "keywords": ["0.5.8"], "maintainers": [
155+
"0.5.8maintainer"], "repository": {"type": "git", "url": "https://github.com/0.5.8.git"},
156+
"bugs": "0.5.8bugs", "license": "Apache-2.0.1", "dependencies": {
157+
"@redhat/kogito-tooling-channel-common-api": "^0.5.8"}}}, "maintainers": [
158+
"0.5.8maintainer"], "description": "0.5.8 description", "time": {}, "author":
159+
"0.5.8author", "users": {"0.5.8users": true}, "repository": {"type": "git",
160+
"url": "https://github.com/0.5.8.git"}, "readme": "0.5.8readme", "readmeFilename":
161+
"0.5.8readmeFilename", "homepage": "0.5.8homepage", "keywords": ["0.5.8"],
162+
"bugs": "0.5.8bugs", "license": "Apache-2.0.1"}"""
163+
164+
bucket.put_object(
165+
Key='@redhat/kogito-tooling-workspace/package.json',
166+
Body=str(original_version_0_5_8_package_json)
167+
)
168+
tarball_test_path = os.path.join(INPUTS, 'kogito-tooling-workspace-0.9.0-3.tgz')
169+
handle_npm_uploading(
170+
tarball_test_path, "kogito-tooling-workspace-0.9.0-3",
171+
buckets=[('', MY_BUCKET, '', DEFAULT_REGISTRY)],
172+
dir_=self.tempdir
173+
)
174+
(files, _) = self.s3_client.get_files(
175+
bucket_name=MY_BUCKET,
176+
prefix='@redhat/kogito-tooling-workspace/package.json'
177+
)
178+
self.assertEqual(1, len(files))
179+
self.assertIn('@redhat/kogito-tooling-workspace/package.json', files)
180+
181+
content = self.s3_client.read_file_content(
182+
MY_BUCKET,
183+
'@redhat/kogito-tooling-workspace/package.json'
184+
)
185+
merged = read_package_metadata_from_content(content, False)
186+
self.assertEqual("@redhat/kogito-tooling-workspace", merged.name)
187+
self.assertEqual(2, len(merged.versions))
188+
self.assertIn("0.5.8", list(merged.versions.keys()))
189+
self.assertIn("0.9.0-3", list(merged.versions.keys()))
190+
self.assertEqual("0.9.0-3", merged.dist_tags["latest"])
191+
self.assertIn("0.5.8maintainer", merged.maintainers)
192+
self.assertIn("0.5.8users", merged.users.keys())
193+
self.assertEqual("https://github.com/kiegroup/kogito-tooling.git", merged.repository["url"])
194+
self.assertEqual("0.5.8homepage", merged.homepage)
195+
self.assertIn("0.5.8", merged.keywords)
196+
self.assertEqual("0.5.8bugs", merged.bugs)
197+
self.assertEqual("Apache-2.0", merged.license)

tests/test_npm_upload.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@ def test_double_uploads(self):
8787
self.assertIn("\"7.14.5\": {\"name\":", meta_content_client)
8888
self.assertIn("\"license\": \"MIT\"", meta_content_client)
8989
self.assertIn("\"dist-tags\": {\"latest\": \"7.15.8\"}", meta_content_client)
90+
self.assertNotIn("\"dist_tags\":", meta_content_client)
9091

9192
def __test_prefix(self, prefix: str = None):
9293
test_tgz = os.path.join(INPUTS, "code-frame-7.14.5.tgz")
@@ -132,3 +133,4 @@ def __test_prefix(self, prefix: str = None):
132133
self.assertIn("\"versions\": {\"7.14.5\":", meta_content_client)
133134
self.assertIn("\"license\": \"MIT\"", meta_content_client)
134135
self.assertIn("\"dist-tags\": {\"latest\": \"7.14.5\"}", meta_content_client)
136+
self.assertNotIn("\"dist_tags\":", meta_content_client)

tests/test_npm_upload_multi_tgts.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,7 @@ def test_double_uploads(self):
123123
self.assertIn(
124124
"\"dist-tags\": {\"latest\": \"7.15.8\"}", meta_content_client, msg=f'{bucket_name}'
125125
)
126+
self.assertNotIn("\"dist_tags\":", meta_content_client)
126127

127128
def __test_prefix(self, prefix: str = None):
128129
targets_ = [('', TEST_BUCKET, prefix, DEFAULT_REGISTRY),
@@ -195,3 +196,4 @@ def __test_prefix(self, prefix: str = None):
195196
"\"dist-tags\": {\"latest\": \"7.14.5\"}",
196197
meta_content_client, msg=f'{bucket_name}'
197198
)
199+
self.assertNotIn("\"dist_tags\":", meta_content_client)

0 commit comments

Comments
 (0)