Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
584 commits
Select commit Hold shift + click to select a range
d381344
ci(action): update actions/checkout action to v4 (#594)
renovate[bot] Sep 4, 2023
119abe4
chore(deps): update dependency sinon to v16 (#596)
renovate[bot] Sep 13, 2023
bf1b490
fix(deps): update dependency aggregate-error to v5 (#597)
renovate[bot] Sep 16, 2023
0287804
chore(deps): update dependency semantic-release to v21.1.2 (#598)
renovate[bot] Sep 16, 2023
b9d89a4
chore(deps): update dependency semantic-release to v22 (#599)
renovate[bot] Sep 16, 2023
7de99d1
chore(deps): lock file maintenance (#595)
renovate[bot] Sep 16, 2023
7287bf6
chore(deps): lock file maintenance (#600)
renovate[bot] Sep 18, 2023
44226ec
chore(deps): update dependency semantic-release to v22.0.1 (#601)
renovate[bot] Sep 21, 2023
2425f52
ci(action): update actions/checkout digest to 8ade135 (#602)
renovate[bot] Sep 22, 2023
e47365e
chore(deps): update dependency semantic-release to v22.0.4 (#603)
renovate[bot] Sep 23, 2023
c132655
chore(deps): update dependency semantic-release to v22.0.5 (#604)
renovate[bot] Sep 24, 2023
0880850
chore(deps): lock file maintenance (#605)
renovate[bot] Sep 25, 2023
1f785a2
chore(deps): update dependency sinon to v16.1.0 (#609)
renovate[bot] Oct 5, 2023
c4c663e
chore(deps): update dependency nock to v13.3.4 (#610)
renovate[bot] Oct 11, 2023
a92ea8a
chore(deps): lock file maintenance (#611)
renovate[bot] Oct 16, 2023
547a1a8
chore(deps): update dependency sinon to v16.1.1 (#612)
renovate[bot] Oct 18, 2023
36ce5ba
chore(deps): update dependency sinon to v16.1.3 (#613)
renovate[bot] Oct 19, 2023
d736816
ci(action): update actions/checkout digest to b4ffde6 (#614)
renovate[bot] Oct 19, 2023
6b74dd6
chore(deps): update dependency nock to v13.3.6 (#615)
renovate[bot] Oct 19, 2023
978f9f1
chore(deps): update dependency sinon to v17 (#616)
renovate[bot] Oct 20, 2023
d05a1a1
chore(deps): lock file maintenance (#617)
renovate[bot] Oct 23, 2023
dd45648
ci(action): update actions/setup-node digest to 1a4442c (#618)
renovate[bot] Oct 23, 2023
1adce19
ci(action): update actions/checkout action to v4.1.1 (#620)
renovate[bot] Oct 23, 2023
85c861e
ci(action): update actions/setup-node action to v3.8.2 (#621)
renovate[bot] Oct 24, 2023
4729335
ci(action): update actions/setup-node action to v4 (#619)
renovate[bot] Oct 24, 2023
b218ca3
chore(deps): lock file maintenance (#622)
renovate[bot] Oct 30, 2023
ebb6bd3
chore(deps): update dependency nock to v13.3.7 (#623)
renovate[bot] Oct 30, 2023
6d70a4c
chore(deps): update dependency semantic-release to v22.0.6 (#624)
renovate[bot] Oct 31, 2023
97d3521
chore(deps): update dependency sinon to v17.0.1 (#625)
renovate[bot] Nov 1, 2023
0aa7406
chore(deps): update dependency nock to v13.3.8 (#626)
renovate[bot] Nov 3, 2023
b235b00
chore(deps): update dependency semantic-release to v22.0.7 (#627)
renovate[bot] Nov 4, 2023
c783dcd
chore(deps): lock file maintenance (#628)
renovate[bot] Nov 6, 2023
ee59c9b
chore(deps): lock file maintenance (#629)
renovate[bot] Nov 6, 2023
6cd5d4d
chore(deps): lock file maintenance (#632)
renovate[bot] Nov 13, 2023
8fbd955
chore(deps): update dependency prettier to v3.1.0 (#633)
renovate[bot] Nov 15, 2023
e529aed
feat: templating of `path`
mattyclarkson Nov 7, 2023
da6ecc3
Merge branch 'master' into patch-1
fgreinacher Nov 15, 2023
18d09c2
Merge pull request #630 from mattyclarkson/patch-1
fgreinacher Nov 15, 2023
deefa34
chore(deps): update dependency semantic-release to v22.0.8 (#634)
renovate[bot] Nov 17, 2023
9603edb
fix(deps): update dependency globby to v14 (#631)
renovate[bot] Nov 17, 2023
805bad2
chore(deps): lock file maintenance (#635)
renovate[bot] Nov 20, 2023
d90ca32
chore(deps): lock file maintenance (#637)
renovate[bot] Nov 27, 2023
c1b26ef
chore(deps): update dependency nock to v13.4.0 (#638)
renovate[bot] Nov 28, 2023
efc1674
chore(deps): lock file maintenance (#640)
renovate[bot] Dec 4, 2023
fb5ba1f
chore(deps): update dependency ava to v6 (#641)
renovate[bot] Dec 5, 2023
e932dbe
chore(deps): update dependency semantic-release to v22.0.9 (#642)
renovate[bot] Dec 5, 2023
0e3d0f2
chore(deps): update dependency semantic-release to v22.0.10 (#643)
renovate[bot] Dec 6, 2023
81b8f29
chore(deps): update dependency ava to v6.0.1 (#644)
renovate[bot] Dec 7, 2023
3764049
chore(deps): update dependency prettier to v3.1.1 (#645)
renovate[bot] Dec 10, 2023
7df9988
chore(deps): lock file maintenance (#646)
renovate[bot] Dec 11, 2023
65d964f
chore(deps): update dependency semantic-release to v22.0.11 (#648)
renovate[bot] Dec 12, 2023
ec5ca96
chore(deps): update dependency semantic-release to v22.0.12 (#649)
renovate[bot] Dec 12, 2023
f100def
chore(deps): lock file maintenance (#650)
renovate[bot] Dec 18, 2023
c097f05
ci(action): update actions/setup-node action to v4.0.1 (#651)
renovate[bot] Dec 18, 2023
cf97c59
chore: bump minimum Node version to 20.8.1
fgreinacher Dec 11, 2023
6c9b26d
Merge pull request #647 from semantic-release/chore/bump-node
fgreinacher Dec 21, 2023
8d6a4a4
chore(deps): lock file maintenance (#652)
renovate[bot] Dec 25, 2023
8ab3ec7
chore(deps): lock file maintenance (#653)
renovate[bot] Jan 1, 2024
3611895
ci(renovate): fixed the reference to the org-level config
travi Jan 1, 2024
7581811
Merge branch 'master' into renovate-config
fgreinacher Jan 3, 2024
152829e
Merge pull request #654 from semantic-release/renovate-config
fgreinacher Jan 3, 2024
f119be2
chore(deps): update dependency c8 to v9 (#656)
renovate[bot] Jan 3, 2024
aa6747b
chore(deps): lock file maintenance (#657)
renovate[bot] Jan 8, 2024
4c4e342
fix(deps): update dependency parse-url to v9
renovate[bot] Jan 8, 2024
aa7d169
Merge pull request #655 from semantic-release/renovate/parse-url-9.x
fgreinacher Jan 8, 2024
7e649eb
fix(deps): update dependency got to v14
renovate[bot] Jan 8, 2024
5ac7048
Merge pull request #639 from semantic-release/renovate/got-14.x
fgreinacher Jan 8, 2024
0f48eb3
chore(deps): update dependency c8 to v9.1.0 (#658)
renovate[bot] Jan 12, 2024
d3a0ada
chore(deps): update dependency prettier to v3.2.1 (#659)
renovate[bot] Jan 12, 2024
853ec8c
chore(deps): update dependency semantic-release to v23 (#660)
renovate[bot] Jan 13, 2024
9b06179
chore(deps): update dependency prettier to v3.2.2 (#661)
renovate[bot] Jan 14, 2024
d77280d
chore(deps): update dependency nock to v13.5.0 (#662)
renovate[bot] Jan 14, 2024
fbbd4e8
chore(deps): lock file maintenance (#663)
renovate[bot] Jan 15, 2024
c20a105
chore(deps): update dependency prettier to v3.2.3 (#664)
renovate[bot] Jan 17, 2024
9aaa423
chore(deps): update dependency prettier to v3.2.4 (#665)
renovate[bot] Jan 17, 2024
0477ba3
chore(deps): update dependency ava to v6.1.0 (#666)
renovate[bot] Jan 22, 2024
263b008
chore(deps): lock file maintenance (#667)
renovate[bot] Jan 22, 2024
d97d32a
chore(deps): update dependency nock to v13.5.1 (#668)
renovate[bot] Jan 29, 2024
4352e72
chore(deps): lock file maintenance (#669)
renovate[bot] Jan 29, 2024
ea67957
chore(deps): update dependency ava to v6.1.1 (#670)
renovate[bot] Jan 30, 2024
339658e
chore(deps): lock file maintenance (#673)
renovate[bot] Feb 5, 2024
75370c8
chore(deps): update dependency prettier to v3.2.5 (#672)
renovate[bot] Feb 5, 2024
a648bde
chore(deps): update dependency semantic-release to v23.0.1 (#674)
renovate[bot] Feb 6, 2024
a91b939
ci(action): update actions/setup-node action to v4.0.2 (#675)
renovate[bot] Feb 7, 2024
8beeea3
chore(deps): update dependency semantic-release to v23.0.2 (#676)
renovate[bot] Feb 7, 2024
3c348db
chore(deps): update dependency nock to v13.5.3 (#679)
renovate[bot] Feb 17, 2024
6e0aee6
chore(deps): lock file maintenance (#677)
renovate[bot] Feb 18, 2024
4014f51
fix(fail): properly parse issue creation response to log in terminal
JonasSchubert Feb 20, 2024
142dd15
Merge pull request #680 from JonasSchubert/fix/properly-parse-create-…
fgreinacher Feb 20, 2024
a4c5283
chore(deps): lock file maintenance (#681)
renovate[bot] Feb 26, 2024
3a1d138
chore(deps): update dependency nock to v13.5.4 (#682)
renovate[bot] Feb 27, 2024
28558bc
chore(deps): update dependency ava to v6.1.2 (#683)
renovate[bot] Feb 29, 2024
3a6eeed
chore(deps): lock file maintenance (#685)
renovate[bot] Mar 4, 2024
6c8202a
chore(deps): lock file maintenance (#686)
renovate[bot] Mar 11, 2024
10a2ba9
chore(deps): update dependency semantic-release to v23.0.3 (#687)
renovate[bot] Mar 15, 2024
1ffae3f
chore(deps): update dependency semantic-release to v23.0.4 (#688)
renovate[bot] Mar 16, 2024
5d1da19
chore(deps): lock file maintenance (#689)
renovate[bot] Mar 18, 2024
03775df
chore(deps): update dependency semantic-release to v23.0.5 (#690)
renovate[bot] Mar 18, 2024
caa7dda
chore(deps): update dependency semantic-release to v23.0.6 (#692)
renovate[bot] Mar 24, 2024
52cd586
chore(deps): lock file maintenance (#693)
renovate[bot] Mar 25, 2024
8b7e4fd
chore(deps): lock file maintenance (#694)
renovate[bot] Apr 1, 2024
1c9dc46
chore(deps): update dependency semantic-release to v23.0.7 (#695)
renovate[bot] Apr 3, 2024
44725bf
chore(deps): lock file maintenance (#696)
renovate[bot] Apr 8, 2024
f83f356
chore(deps): update dependency semantic-release to v23.0.8 (#699)
renovate[bot] Apr 10, 2024
a8b3fa5
chore(deps): lock file maintenance (#700)
renovate[bot] Apr 15, 2024
cff70e2
chore(deps): lock file maintenance (#701)
renovate[bot] Apr 22, 2024
9cbe98a
ci(action): update actions/checkout action to v4.1.3 (#702)
renovate[bot] Apr 22, 2024
e890a0b
ci(action): update actions/checkout action to v4.1.4 (#703)
renovate[bot] Apr 25, 2024
4055d01
chore(deps): lock file maintenance (#706)
renovate[bot] Apr 29, 2024
94cc869
fix: get rid of import assertion
fgreinacher Apr 29, 2024
fc7a35b
ci: add Node 22 to test matrix
fgreinacher Apr 29, 2024
ae0d44f
Merge pull request #708 from semantic-release/fix/import-assertion
fgreinacher Apr 29, 2024
e1dfc46
Merge branch 'master' into ci/node-22
fgreinacher Apr 29, 2024
8deb3a0
Merge pull request #709 from semantic-release/ci/node-22
fgreinacher May 3, 2024
1e5f652
chore(deps): update dependency ava to v6.1.3 (#710)
renovate[bot] May 6, 2024
a51a92f
chore(deps): lock file maintenance (#711)
renovate[bot] May 6, 2024
d53f94c
feat: improve output in case of errors during publish
fgreinacher May 7, 2024
aa59292
chore(deps): update dependency sinon to v17.0.2 (#713)
renovate[bot] May 7, 2024
e69d32e
Merge branch 'master' into feat/improve-error-output
fgreinacher May 8, 2024
93c6015
Merge pull request #712 from semantic-release/feat/improve-error-output
fgreinacher May 8, 2024
130eeab
ci(action): update actions/checkout action to v4.1.5 (#714)
renovate[bot] May 9, 2024
446b934
chore(deps): update dependency semantic-release to v23.1.1 (#715)
renovate[bot] May 11, 2024
4f3bbaa
chore(deps): lock file maintenance (#716)
renovate[bot] May 13, 2024
81f081c
docs: specifiy necessary token role
May 14, 2024
1db26da
chore(deps): update dependency sinon to v18 (#718)
renovate[bot] May 16, 2024
1aeabde
ci(action): update actions/checkout action to v4.1.6 (#719)
renovate[bot] May 17, 2024
6dd0e43
chore(deps): lock file maintenance (#721)
renovate[bot] May 20, 2024
e70328d
docs: mention resource access tokens in readme
fgreinacher May 21, 2024
dd9e0ad
Merge branch 'master' into docs
fgreinacher May 21, 2024
8f669cc
Merge pull request #717 from rechvs/docs
fgreinacher May 24, 2024
71b337f
chore(deps): lock file maintenance (#723)
renovate[bot] May 27, 2024
36e4081
chore(deps): update dependency semantic-release to v24 (#726)
renovate[bot] Jun 1, 2024
2b23f0d
chore(deps): update dependency prettier to v3.3.0 (#727)
renovate[bot] Jun 1, 2024
f93d1f4
test(fail): add test cases for failComment or failTitle set to false
JonasSchubert Jun 2, 2024
36030df
chore(deps): lock file maintenance (#731)
renovate[bot] Jun 3, 2024
f2eed75
Merge branch 'master' into test/add-missing-test-cases-for-fail
fgreinacher Jun 5, 2024
bad9afb
Merge pull request #729 from JonasSchubert/test/add-missing-test-case…
fgreinacher Jun 5, 2024
6dcd93c
chore(deps): update dependency prettier to v3.3.1 (#732)
renovate[bot] Jun 5, 2024
69a3922
chore(deps): lock file maintenance (#733)
renovate[bot] Jun 10, 2024
ca391cc
chore(deps): update dependency c8 to v10 (#735)
renovate[bot] Jun 11, 2024
77f14c1
chore(deps): update dependency prettier to v3.3.2 (#736)
renovate[bot] Jun 11, 2024
adea94b
chore(deps): update dependency c8 to v10.1.1 (#737)
renovate[bot] Jun 12, 2024
82168a3
ci(action): update actions/checkout action to v4.1.7 (#739)
renovate[bot] Jun 13, 2024
58c0915
chore(deps): update dependency c8 to v10.1.2 (#740)
renovate[bot] Jun 13, 2024
b998ee2
chore(deps): lock file maintenance (#742)
renovate[bot] Jun 17, 2024
83037d0
chore(commenting): log warning if successComment or failComment is us…
JonasSchubert Jun 20, 2024
c402511
feat(success-comment): allow to skip based on provided condition #480…
JonasSchubert Jun 20, 2024
29b2a3a
feat(fail-comment): allow to skip based on provided condition #480 #636
JonasSchubert Jun 20, 2024
214dd92
chore(deps): lock file maintenance (#743)
renovate[bot] Jun 24, 2024
b744ca2
chore(deps): lock file maintenance (#744)
renovate[bot] Jul 1, 2024
38b3409
chore(commenting): improve message of deprecation logging
JonasSchubert Jul 1, 2024
de98962
test(fail): improve readability
JonasSchubert Jul 1, 2024
b53d424
Merge branch 'semantic-release:master' into feat/allow-to-skip-succes…
JonasSchubert Jul 1, 2024
05d1a59
feat(commenting): disable if set to false
JonasSchubert Jul 1, 2024
495bc77
Update README.md
babblebey Jul 3, 2024
efd9caf
Update README.md
babblebey Jul 3, 2024
6b12097
chore(deps): lock file maintenance (#745)
renovate[bot] Jul 8, 2024
4c651c5
Merge branch 'master' into feat/allow-to-skip-success-comment-#480-#636
fgreinacher Jul 8, 2024
3132c19
Merge pull request #730 from JonasSchubert/feat/allow-to-skip-success…
fgreinacher Jul 8, 2024
3a6a35d
ci(action): update actions/setup-node action to v4.0.3 (#747)
renovate[bot] Jul 9, 2024
02d2f04
chore(deps): update dependency prettier to v3.3.3 (#748)
renovate[bot] Jul 13, 2024
16f5257
chore(deps): lock file maintenance (#749)
renovate[bot] Jul 15, 2024
fa8953e
chore(deps): lock file maintenance
renovate[bot] Jul 29, 2024
775d355
Merge pull request #752 from semantic-release/renovate/lock-file-main…
fgreinacher Jul 29, 2024
56edd34
fix(assets): changed generation of gitlab release asset url when prov…
aldenbe Jul 26, 2024
8c7fd63
tests(publish): updated tests to accommodate publish.js changes in gi…
aldenbe Jul 30, 2024
a6112c4
Merge pull request #755 from aldenbe/upload-404-fix
fgreinacher Jul 31, 2024
d741f51
chore(deps): lock file maintenance (#757)
renovate[bot] Aug 5, 2024
945a328
chore(deps): lock file maintenance (#758)
renovate[bot] Aug 12, 2024
11910d3
chore(deps): update dependency semantic-release to v24.1.0 (#759)
renovate[bot] Aug 17, 2024
396bcc0
chore(deps): lock file maintenance (#761)
renovate[bot] Aug 19, 2024
9eeeadd
chore(deps): update dependency nock to v13.5.5 (#762)
renovate[bot] Aug 20, 2024
4c3777c
chore(deps): lock file maintenance (#763)
renovate[bot] Aug 26, 2024
ae16615
chore(deps): lock file maintenance (#764)
renovate[bot] Sep 2, 2024
fee2c50
chore(deps): lock file maintenance (#765)
renovate[bot] Sep 9, 2024
7997eaa
chore(deps): update dependency sinon to v18.0.1 (#766)
renovate[bot] Sep 11, 2024
e328cb9
chore(deps): update dependency semantic-release to v24.1.1 (#767)
renovate[bot] Sep 11, 2024
1c91284
chore(deps): update dependency sinon to v19 (#768)
renovate[bot] Sep 13, 2024
c9f3245
chore(deps): update dependency sinon to v19.0.2 (#769)
renovate[bot] Sep 13, 2024
9122f1f
chore(deps): lock file maintenance (#770)
renovate[bot] Sep 16, 2024
30bc2bb
ci(action): update actions/setup-node action to v4.0.4 (#772)
renovate[bot] Sep 19, 2024
9197b6e
chore(deps): lock file maintenance (#773)
renovate[bot] Sep 23, 2024
6721e63
chore(deps): update dependency semantic-release to v24.1.2 (#775)
renovate[bot] Sep 27, 2024
5c6ddb5
ci(action): update actions/checkout action to v4.2.0 (#774)
renovate[bot] Sep 28, 2024
8eb8d1e
chore(deps): lock file maintenance (#776)
renovate[bot] Sep 30, 2024
ae9c141
chore(deps): lock file maintenance (#777)
renovate[bot] Oct 7, 2024
c74f35f
ci(action): update actions/checkout action to v4.2.1 (#778)
renovate[bot] Oct 7, 2024
da5d604
chore(deps): lock file maintenance (#780)
renovate[bot] Oct 14, 2024
c1b2767
chore(deps): update dependency semantic-release to v24.1.3 (#782)
renovate[bot] Oct 19, 2024
66e1c78
chore(deps): lock file maintenance (#783)
renovate[bot] Oct 21, 2024
8e8d0c8
ci(action): update actions/checkout action to v4.2.2 (#785)
renovate[bot] Oct 23, 2024
8a227cf
ci(action): update actions/setup-node action to v4.1.0 (#786)
renovate[bot] Oct 24, 2024
5284578
chore(deps): update dependency semantic-release to v24.2.0 (#787)
renovate[bot] Oct 26, 2024
0d46db8
chore(deps): update dependency ava to v6.2.0 (#788)
renovate[bot] Oct 27, 2024
80954bc
chore(deps): lock file maintenance (#789)
renovate[bot] Oct 28, 2024
945371e
chore(deps): lock file maintenance (#790)
renovate[bot] Nov 4, 2024
82ed0e9
chore(deps): update dependency nock to v13.5.6 (#791)
renovate[bot] Nov 9, 2024
60ac0fe
chore(deps): lock file maintenance (#792)
renovate[bot] Nov 11, 2024
0a04f81
chore(deps): lock file maintenance (#793)
renovate[bot] Nov 18, 2024
1180e9f
chore(deps): lock file maintenance (#795)
renovate[bot] Nov 25, 2024
3dddfe9
chore(deps): update dependency prettier to v3.4.0 (#796)
renovate[bot] Nov 26, 2024
ccde268
chore(deps): update dependency prettier to v3.4.1 (#797)
renovate[bot] Nov 26, 2024
fcaf8cc
chore(deps): lock file maintenance (#798)
renovate[bot] Dec 2, 2024
0af6cd9
fix: updated configuration example
gaidzla Dec 2, 2024
d82152e
Merge pull request #799 from gaidzla/patch-1
fgreinacher Dec 3, 2024
e5b13f0
fix: increase retry limit and make it configurable
fgreinacher Dec 3, 2024
00a3f5e
chore(deps): update dependency prettier to v3.4.2 (#801)
renovate[bot] Dec 4, 2024
e8c8f15
Merge branch 'master' into fix/retry-limit
fgreinacher Dec 4, 2024
f1d3257
Merge pull request #800 from semantic-release/fix/retry-limit
fgreinacher Dec 4, 2024
b254eb0
chore(deps): lock file maintenance (#802)
renovate[bot] Dec 9, 2024
1afdbb4
chore(deps): update dependency c8 to v10.1.3 (#803)
renovate[bot] Dec 10, 2024
abc2841
chore(deps): lock file maintenance (#804)
renovate[bot] Dec 16, 2024
37ff7de
chore(deps): lock file maintenance (#805)
renovate[bot] Dec 23, 2024
424328b
chore(deps): lock file maintenance (#806)
renovate[bot] Dec 30, 2024
e0d0174
chore(deps): update dependency semantic-release to v24.2.1 (#807)
renovate[bot] Jan 3, 2025
be27afe
chore(deps): lock file maintenance (#808)
renovate[bot] Jan 6, 2025
a1d8d9f
refactor: rename repo ID to project path for clarity
fgreinacher Jan 10, 2025
af29586
refactor: introduce projectApiUrl abstraction
fgreinacher Jan 10, 2025
bc32806
refactor: introduce getProjectContext abstraction
fgreinacher Jan 10, 2025
6b96943
fix: use project ID for API calls if available
fgreinacher Jan 10, 2025
743ab0a
style: format code
fgreinacher Jan 10, 2025
2102ec3
refactor: inline getProjectId / getProjectPath functions
fgreinacher Jan 12, 2025
38ac050
style: fix formatting
fgreinacher Jan 12, 2025
630e27e
chore(deps): lock file maintenance (#810)
renovate[bot] Jan 13, 2025
beb7ac6
refactor: don't expose project ID
fgreinacher Jan 13, 2025
ba2d063
style: fix typo
fgreinacher Jan 13, 2025
01957e7
Merge branch 'master' into fix/project-id
fgreinacher Jan 13, 2025
9d34d25
chore(project): merge pull request #809 from semantic-release/fix/pro…
JonasSchubert Jan 13, 2025
909ca2b
chore(deps): lock file maintenance (#812)
renovate[bot] Jan 20, 2025
f6787b8
chore(deps): update dependency nock to v14 (#814)
renovate[bot] Jan 25, 2025
afefbe7
chore(deps): lock file maintenance (#815)
renovate[bot] Jan 27, 2025
381c8fc
ci(action): update actions/setup-node action to v4.2.0 (#816)
renovate[bot] Jan 27, 2025
134a455
chore(deps): lock file maintenance (#817)
renovate[bot] Feb 3, 2025
a370f55
chore(deps): update dependency nock to v14.0.1 (#818)
renovate[bot] Feb 7, 2025
e29f27d
chore(deps): update dependency semantic-release to v24.2.2 (#819)
renovate[bot] Feb 9, 2025
d89f5df
chore(deps): update dependency prettier to v3.5.0 (#820)
renovate[bot] Feb 11, 2025
3144c19
chore(deps): update dependency prettier to v3.5.1 (#821)
renovate[bot] Feb 13, 2025
fcd45ad
chore(deps): update dependency semantic-release to v24.2.3 (#824)
renovate[bot] Feb 16, 2025
3d82a8f
chore(deps): lock file maintenance (#825)
renovate[bot] Feb 17, 2025
5c77244
chore(deps): update dependency prettier to v3.5.2 (#826)
renovate[bot] Feb 22, 2025
271954b
chore(deps): lock file maintenance (#827)
renovate[bot] Feb 24, 2025
60996e6
ci(action): update actions/setup-node action to v4.3.0 (#831)
renovate[bot] Mar 17, 2025
93888cd
chore(deps): update dependency prettier to v3.5.3 (#828)
renovate[bot] Mar 17, 2025
37045b4
chore(deps): lock file maintenance (#829)
renovate[bot] Mar 17, 2025
eade82c
chore(deps): update dependency sinon to v19.0.4 (#832)
renovate[bot] Mar 19, 2025
234b173
chore(deps): lock file maintenance (#833)
renovate[bot] Mar 24, 2025
aaa6006
chore(deps): update dependency sinon to v19.0.5 (#834)
renovate[bot] Mar 25, 2025
a1a0392
chore(deps): update dependency sinon to v20 (#835)
renovate[bot] Mar 25, 2025
eaec8ec
chore(deps): update dependency nock to v14.0.2 (#837)
renovate[bot] Mar 28, 2025
dcd0ab5
chore(deps): lock file maintenance (#838)
renovate[bot] Mar 31, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 30 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: Release
"on":
push:
branches:
- master
- next
- beta
- "*.x"
permissions:
contents: read # for checkout
jobs:
release:
permissions:
contents: write # to be able to publish a GitHub release
issues: write # to be able to comment on released issues
pull-requests: write # to be able to comment on released pull requests
id-token: write # to enable use of OIDC for npm provenance
name: release
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e # v4.3.0
with:
cache: npm
node-version: lts/*
- run: npm ci
- run: npx semantic-release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NPM_TOKEN: ${{ secrets.SEMANTIC_RELEASE_BOT_NPM_TOKEN }}
47 changes: 47 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: Test
"on":
push:
branches:
- master
- renovate/**
pull_request:
types:
- opened
- synchronize
jobs:
test_matrix:
strategy:
matrix:
node-version:
- 20.8.1 # minimum supported Node version
- 20
- 21
- 22
os:
- ubuntu-latest
- macos-latest
- windows-latest
runs-on: "${{ matrix.os }}"
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: "Use Node.js ${{ matrix.node-version }}"
uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e # v4.3.0
with:
node-version: "${{ matrix.node-version }}"
cache: npm
- run: npm ci
- name: Ensure dependencies are compatible with the version of node
run: npx ls-engines
- run: npm run test
test:
runs-on: ubuntu-latest
needs: test_matrix
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: "Use Node.js ${{ matrix.node-version }}"
uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e # v4.3.0
with:
node-version: "${{ matrix.node-version }}"
cache: npm
- run: npm ci
- run: npm run lint
3 changes: 0 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,3 @@ $RECYCLE.BIN/
*.lnk

# End of https://www.gitignore.io/api/macos,windows,linux,node

package-lock.json
yarn.lock
1 change: 0 additions & 1 deletion .npmrc

This file was deleted.

8 changes: 0 additions & 8 deletions .travis.yml

This file was deleted.

1 change: 0 additions & 1 deletion .yarnrc

This file was deleted.

188 changes: 155 additions & 33 deletions README.md

Large diffs are not rendered by default.

28 changes: 23 additions & 5 deletions index.js
Original file line number Diff line number Diff line change
@@ -1,16 +1,18 @@
/* eslint require-atomic-updates: off */

const verifyGitLab = require('./lib/verify');
const publishGitLab = require('./lib/publish');
import verifyGitLab from "./lib/verify.js";
import publishGitLab from "./lib/publish.js";
import successGitLab from "./lib/success.js";
import failGitLab from "./lib/fail.js";

let verified;

async function verifyConditions(pluginConfig, context) {
export async function verifyConditions(pluginConfig, context) {
await verifyGitLab(pluginConfig, context);
verified = true;
}

async function publish(pluginConfig, context) {
export async function publish(pluginConfig, context) {
if (!verified) {
await verifyGitLab(pluginConfig, context);
verified = true;
Expand All @@ -19,4 +21,20 @@ async function publish(pluginConfig, context) {
return publishGitLab(pluginConfig, context);
}

module.exports = {verifyConditions, publish};
export async function success(pluginConfig, context) {
if (!verified) {
await verifyGitLab(pluginConfig, context);
verified = true;
}

return successGitLab(pluginConfig, context);
}

export async function fail(pluginConfig, context) {
if (!verified) {
await verifyGitLab(pluginConfig, context);
verified = true;
}

return failGitLab(pluginConfig, context);
}
3 changes: 3 additions & 0 deletions lib/definitions/constants.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
export const HOME_URL = 'https://github.com/semantic-release/semantic-release';

export const RELEASE_NAME = 'GitLab release';
66 changes: 50 additions & 16 deletions lib/definitions/errors.js
Original file line number Diff line number Diff line change
@@ -1,34 +1,60 @@
const {inspect} = require('util');
const pkg = require('../../package.json');
import {inspect} from 'util';
import { createRequire } from "node:module";
const require = createRequire(import.meta.url);

const pkg = require("../../package.json");
const [homepage] = pkg.homepage.split('#');
const linkify = file => `${homepage}/blob/master/${file}`;
const stringify = obj => inspect(obj, {breakLength: Infinity, depth: 2, maxArrayLength: 5});
const linkify = (file) => `${homepage}/blob/master/${file}`;
const stringify = (object) => inspect(object, {breakLength: Number.POSITIVE_INFINITY, depth: 2, maxArrayLength: 5});

module.exports = {
export default {
EINVALIDASSETS: ({assets}) => ({
message: 'Invalid `assets` option.',
details: `The [assets option](${linkify(
'README.md#assets'
)}) must be an \`Array\` of \`Strings\` or \`Objects\` with a \`path\` property.
Your configuration for the \`assets\` option is \`${stringify(assets)}\`.`,
}),
EINVALIDFAILTITLE: ({failTitle}) => ({
message: 'Invalid `failTitle` option.',
details: `The [failTitle option](${linkify('README.md#failtitle')}) if defined, must be a non empty \`String\`.

Your configuration for the \`failTitle\` option is \`${stringify(failTitle)}\`.`,
}),
EINVALIDFAILCOMMENT: ({failComment}) => ({
message: 'Invalid `failComment` option.',
details: `The [failComment option](${linkify('README.md#failcomment')}) if defined, must be a non empty \`String\`.

Your configuration for the \`failComment\` option is \`${stringify(failComment)}\`.`,
}),
EINVALIDLABELS: ({labels}) => ({
message: 'Invalid `labels` option.',
details: `The [labels option](${linkify('README.md#labels')}) if defined, must be a non empty \`String\`.

Your configuration for the \`labels\` option is \`${stringify(labels)}\`.`,
}),
EINVALIDASSIGNEE: ({assignee}) => ({
message: 'Invalid `assignee` option.',
details: `The [assignee option](${linkify('README.md#assignee')}) if defined, must be a non empty \`String\`.

Your configuration for the \`assignee\` option is \`${stringify(assignee)}\`.`,
}),
EINVALIDGITLABURL: () => ({
message: 'The git repository URL is not a valid GitLab URL.',
details: `The **semantic-release** \`repositoryUrl\` option must a valid GitLab URL with the format \`<GitLab_URL>/<repoId>.git\`.
details: `The **semantic-release** \`repositoryUrl\` option must a valid GitLab URL with the format \`<GitLab_URL>/<projectPath>.git\`.

By default the \`repositoryUrl\` option is retrieved from the \`repository\` property of your \`package.json\` or the [git origin url](https://git-scm.com/book/en/v2/Git-Basics-Working-with-Remotes) of the repository cloned by your CI environment.`,
}),
EINVALIDGLTOKEN: ({repoId}) => ({
EINVALIDGLTOKEN: ({projectPath}) => ({
message: 'Invalid GitLab token.',
details: `The [GitLab token](${linkify(
'README.md#gitlab-authentication'
)}) configured in the \`GL_TOKEN\` or \`GITLAB_TOKEN\` environment variable must be a valid [personal access token](https://docs.gitlab.com/ce/user/profile/personal_access_tokens.html) allowing to push to the repository ${repoId}.
)}) configured in the \`GL_TOKEN\` or \`GITLAB_TOKEN\` environment variable must be a valid [personal access token](https://docs.gitlab.com/ce/user/profile/personal_access_tokens.html) allowing to push to the repository ${projectPath}.

Please make sure to set the \`GL_TOKEN\` or \`GITLAB_TOKEN\` environment variable in your CI with the exact value of the GitLab personal token.`,
}),
EMISSINGREPO: ({repoId}) => ({
message: `The repository ${repoId} doesn't exist.`,
EMISSINGREPO: ({projectPath}) => ({
message: `The repository ${projectPath} doesn't exist.`,
details: `The **semantic-release** \`repositoryUrl\` option must refer to your GitLab repository. The repository must be accessible with the [GitLab API](https://docs.gitlab.com/ce/api/README.html).

By default the \`repositoryUrl\` option is retrieved from the \`repository\` property of your \`package.json\` or the [git origin url](https://git-scm.com/book/en/v2/Git-Basics-Working-with-Remotes) of the repository cloned by your CI environment.
Expand All @@ -37,20 +63,28 @@ If you are using [GitLab Enterprise Edition](https://about.gitlab.com/gitlab-ee)
'README.md#options'
)}).`,
}),
EGLNOPERMISSION: ({repoId}) => ({
message: `The GitLab token doesn't allow to push on the repository ${repoId}.`,
EGLNOPUSHPERMISSION: ({projectPath}) => ({
message: `The GitLab token doesn't allow to push on the repository ${projectPath}.`,
details: `The user associated with the [GitLab token](${linkify(
'README.md#gitlab-authentication'
)}) configured in the \`GL_TOKEN\` or \`GITLAB_TOKEN\` environment variable must allows to push to the repository ${projectPath}.

Please make sure the GitLab user associated with the token has the [permission to push](https://docs.gitlab.com/ee/user/permissions.html#project-members-permissions) to the repository ${projectPath}.`,
}),
EGLNOPULLPERMISSION: ({projectPath}) => ({
message: `The GitLab token doesn't allow to pull from the repository ${projectPath}.`,
details: `The user associated with the [GitLab token](${linkify(
'README.md#gitlab-authentication'
)}) configured in the \`GL_TOKEN\` or \`GITLAB_TOKEN\` environment variable must allows to push to the repository ${repoId}.
)}) configured in the \`GL_TOKEN\` or \`GITLAB_TOKEN\` environment variable must allow pull from the repository ${projectPath}.

Please make sure the GitLab user associated with the token has the [permission to push](https://docs.gitlab.com/ee/user/permissions.html#project-members-permissions) to the repository ${repoId}.`,
Please make sure the GitLab user associated with the token has the [permission to push](https://docs.gitlab.com/ee/user/permissions.html#project-members-permissions) to the repository ${projectPath}.`,
}),
ENOGLTOKEN: ({repositoryUrl}) => ({
message: 'No GitLab token specified.',
details: `A [GitLab personnal access token](${linkify(
details: `A [GitLab personal access token](${linkify(
'README.md#gitlab-authentication'
)}) must be created and set in the \`GL_TOKEN\` or \`GITLAB_TOKEN\` environment variable on your CI environment.

Please make sure to create a [GitLab personnal access token](https://docs.gitlab.com/ce/user/profile/personal_access_tokens.html) and to set it in the \`GL_TOKEN\` or \`GITLAB_TOKEN\` environment variable on your CI environment. The token must allow to push to the repository ${repositoryUrl}.`,
Please make sure to create a [GitLab personal access token](https://docs.gitlab.com/ce/user/profile/personal_access_tokens.html) and to set it in the \`GL_TOKEN\` or \`GITLAB_TOKEN\` environment variable on your CI environment. The token must allow to push to the repository ${repositoryUrl}.`,
}),
};
86 changes: 86 additions & 0 deletions lib/fail.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
import { template } from "lodash-es";
import urlJoin from "url-join";
import got from "got";
import _debug from "debug";
const debug = _debug("semantic-release:gitlab");
import resolveConfig from "./resolve-config.js";
import getFailComment from "./get-fail-comment.js";
import getProjectContext from "./get-project-context.js";

export default async (pluginConfig, context) => {
const {
options: { repositoryUrl },
branch,
errors,
logger,
} = context;
const {
gitlabToken,
gitlabUrl,
gitlabApiUrl,
failComment,
failTitle,
failCommentCondition,
labels,
assignee,
retryLimit,
} = resolveConfig(pluginConfig, context);
const { encodedProjectPath, projectApiUrl } = getProjectContext(context, gitlabUrl, gitlabApiUrl, repositoryUrl);

const apiOptions = {
headers: { "PRIVATE-TOKEN": gitlabToken },
retry: { limit: retryLimit },
};

if (failComment === false || failTitle === false) {
logger.log("Skip issue creation.");
logger.error(`Failure reporting should be disabled via 'failCommentCondition'.
Using 'false' for 'failComment' or 'failTitle' is deprecated and will be removed in a future major version.`);
} else if (failCommentCondition === false) {
logger.log("Skip issue creation.");
} else {
const encodedFailTitle = encodeURIComponent(failTitle);
const description = failComment ? template(failComment)({ branch, errors }) : getFailComment(branch, errors);

const issuesEndpoint = urlJoin(projectApiUrl, `issues`);
const openFailTitleIssueEndpoint = urlJoin(issuesEndpoint, `?state=opened&search=${encodedFailTitle}`);

const openFailTitleIssues = await got(openFailTitleIssueEndpoint, { ...apiOptions }).json();
const existingIssue = openFailTitleIssues.find((openFailTitleIssue) => openFailTitleIssue.title === failTitle);

const canCommentOnOrCreateIssue = failCommentCondition
? template(failCommentCondition)({ ...context, issue: existingIssue })
: true;
if (canCommentOnOrCreateIssue) {
if (existingIssue) {
debug("comment on issue: %O", existingIssue);

const issueNotesEndpoint = urlJoin(
gitlabApiUrl,
`/projects/${existingIssue.project_id}/issues/${existingIssue.iid}/notes`
);
await got.post(issueNotesEndpoint, {
...apiOptions,
json: { body: description },
});

const { id, web_url } = existingIssue;
logger.log("Commented on issue #%d: %s.", id, web_url);
} else {
const newIssue = { id: encodedProjectPath, description, labels, title: failTitle, assignee_id: assignee };
debug("create issue: %O", newIssue);

/* eslint camelcase: off */
const { id, web_url } = await got
.post(issuesEndpoint, {
...apiOptions,
json: newIssue,
})
.json();
logger.log("Created issue #%d: %s.", id, web_url);
}
} else {
logger.log("Skip commenting on or creating an issue.");
}
}
};
8 changes: 4 additions & 4 deletions lib/get-error.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
const SemanticReleaseError = require('@semantic-release/error');
const ERROR_DEFINITIONS = require('./definitions/errors');
import SemanticReleaseError from "@semantic-release/error";
import ERROR_DEFINITIONS from "./definitions/errors.js";

module.exports = (code, ctx = {}) => {
const {message, details} = ERROR_DEFINITIONS[code](ctx);
export default (code, ctx = {}) => {
const { message, details } = ERROR_DEFINITIONS[code](ctx);
return new SemanticReleaseError(message, code, details);
};
Loading