129 Commits

Author SHA1 Message Date
simonecorsi
f444d98079 chore(release): 2.0.0 [skip ci]
# [2.0.0](https://github.com/simonecorsi/mawesome/compare/v1.0.45...v2.0.0) (2022-05-11)

### Bug Fixes

* fixes default template path ([6cd9c30](6cd9c30b20))
* fixes tsc build ([ec10b79](ec10b79a91))
* normalize template file loadup ([445f562](445f562fb5))
* pre-tags ([d1d4edd](d1d4edd104))
* removes unused tests ([a141d23](a141d23972))
* reworking files ([19c4c8f](19c4c8f761))
* updates gh-star-fetch ([3ec4b7c](3ec4b7cd53))

### Features

* release major ([51a4359](51a4359d98))
* update to node16 ([e1f37af](e1f37af978))
* updates deps ([7ade95d](7ade95df85))
* using gh-star-fetch ([346ba5d](346ba5d4b7))
* **template:** adds templates ([2c742b8](2c742b8205)), closes [#14](https://github.com/simonecorsi/mawesome/issues/14)

### BREAKING CHANGES

* refactored code
2022-05-11 14:05:00 +00:00
GitHub Actions
754bdf3f68 ci: persist credentials 2022-05-11 15:33:56 +02:00
GitHub Actions
51a4359d98 feat: release major
BREAKING CHANGE: refactored code
2022-05-11 15:22:44 +02:00
GitHub Actions
3b3f3777f6 build: builded dev 2022-05-11 15:12:35 +02:00
GitHub Actions
236068f866 ci: pat 2022-05-11 15:11:37 +02:00
GitHub Actions
3ec4b7cd53 fix: updates gh-star-fetch 2022-05-11 15:08:24 +02:00
GitHub Actions
3170a35260 ci: debug 2022-05-11 13:31:00 +02:00
GitHub Actions
6cd9c30b20 fix: fixes default template path 2022-05-11 13:23:25 +02:00
GitHub Actions
e1f37af978 feat: update to node16 2022-05-11 13:20:05 +02:00
GitHub Actions
19c4c8f761 fix: reworking files 2022-05-11 13:09:38 +02:00
GitHub Actions
a141d23972 fix: removes unused tests 2022-05-11 13:02:42 +02:00
GitHub Actions
7ade95df85 feat: updates deps 2022-05-11 12:45:36 +02:00
Simone Corsi
445f562fb5 fix: normalize template file loadup 2022-05-11 10:00:38 +02:00
Simone Corsi
ec10b79a91 fix: fixes tsc build 2022-05-11 09:49:34 +02:00
Simone Corsi
55cd9e9c58 build: fixes release build
Switch to semantic release didnt commit compiled output
2022-05-11 09:44:55 +02:00
simonecorsi
f70a021b83 chore(release): 1.1.0-next.2 [skip ci]
# [1.1.0-next.2](https://github.com/simonecorsi/mawesome/compare/v1.1.0-next.1...v1.1.0-next.2) (2022-05-09)

### Features

* using gh-star-fetch ([a8b6577](a8b657735b))
2022-05-11 09:44:55 +02:00
Simone Corsi
b24f13b9e9 test: fixed old suites 2022-05-11 09:44:55 +02:00
Simone Corsi
f88cf3357e ci: console 2022-05-11 09:44:55 +02:00
Simone Corsi
ce053290e3 ci: moves templates check 2022-05-11 09:44:55 +02:00
Simone Corsi
57651eab5a ci: adds logs 2022-05-11 09:44:54 +02:00
Simone Corsi
346ba5d4b7 feat: using gh-star-fetch 2022-05-11 09:44:52 +02:00
simonecorsi
459ca45678 chore(release): 1.1.0-next.1 [skip ci]
# [1.1.0-next.1](https://github.com/simonecorsi/mawesome/compare/v1.0.45...v1.1.0-next.1) (2022-04-13)

### Bug Fixes

* pre-tags ([602befc](602befcb54))

### Features

* **template:** adds templates ([791de9a](791de9ab50)), closes [#14](https://github.com/simonecorsi/mawesome/issues/14)
2022-05-11 09:30:28 +02:00
Simone Corsi
d1d4edd104 fix: pre-tags 2022-05-11 09:30:27 +02:00
Simone Corsi
2c742b8205 feat(template): adds templates
if an `TEMPLATE.ejs` file is found in the repo it will be used for rendering

closes #14
2022-05-11 09:30:27 +02:00
Simone Corsi
9d140076f7 Merge pull request #61 from simonecorsi/dependabot/npm_and_yarn/husky-8.0.1
build(deps-dev): bump husky from 8.0.0 to 8.0.1
2022-05-10 15:50:08 +02:00
Simone Corsi
8ee913b561 Merge pull request #60 from simonecorsi/dependabot/npm_and_yarn/typescript-eslint/eslint-plugin-5.23.0
build(deps-dev): bump @typescript-eslint/eslint-plugin from 4.33.0 to 5.23.0
2022-05-10 15:50:00 +02:00
Simone Corsi
78225b6f7e Merge pull request #28 from simonecorsi/dependabot/npm_and_yarn/remark-14.0.2
build(deps): bump remark from 13.0.0 to 14.0.2
2022-05-10 15:49:51 +02:00
Simone Corsi
3ba4012b02 Merge pull request #52 from simonecorsi/dependabot/npm_and_yarn/ts-node-dev-1.1.8
build(deps-dev): bump ts-node-dev from 1.1.1 to 1.1.8
2022-05-10 15:49:36 +02:00
dependabot[bot]
12f2bef8e5 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 4.33.0 to 5.23.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.23.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-10 13:47:54 +00:00
dependabot[bot]
b305b5276d build(deps-dev): bump ts-node-dev from 1.1.1 to 1.1.8
Bumps [ts-node-dev](https://github.com/whitecolor/ts-node-dev) from 1.1.1 to 1.1.8.
- [Release notes](https://github.com/whitecolor/ts-node-dev/releases)
- [Changelog](https://github.com/wclr/ts-node-dev/blob/master/CHANGELOG.md)
- [Commits](https://github.com/whitecolor/ts-node-dev/compare/v1.1.1...v1.1.8)

---
updated-dependencies:
- dependency-name: ts-node-dev
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-10 13:47:41 +00:00
dependabot[bot]
0ab33ae6e8 build(deps-dev): bump husky from 8.0.0 to 8.0.1
Bumps [husky](https://github.com/typicode/husky) from 8.0.0 to 8.0.1.
- [Release notes](https://github.com/typicode/husky/releases)
- [Commits](https://github.com/typicode/husky/compare/v8.0.0...v8.0.1)

---
updated-dependencies:
- dependency-name: husky
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-10 13:47:36 +00:00
dependabot[bot]
3e66cb8b35 build(deps): bump remark from 13.0.0 to 14.0.2
Bumps [remark](https://github.com/remarkjs/remark) from 13.0.0 to 14.0.2.
- [Release notes](https://github.com/remarkjs/remark/releases)
- [Changelog](https://github.com/remarkjs/remark/blob/main/changelog.md)
- [Commits](https://github.com/remarkjs/remark/compare/13.0.0...14.0.2)

---
updated-dependencies:
- dependency-name: remark
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-10 13:47:26 +00:00
Simone Corsi
a6f431ff5c Merge pull request #32 from simonecorsi/dependabot/npm_and_yarn/remark-toc-8.0.1
build(deps): bump remark-toc from 7.0.0 to 8.0.1
2022-05-10 15:46:59 +02:00
Simone Corsi
3e35a8e8e3 Merge pull request #48 from simonecorsi/dependabot/npm_and_yarn/ava-4.2.0
build(deps-dev): bump ava from 3.15.0 to 4.2.0
2022-05-10 15:46:46 +02:00
Simone Corsi
db410801f9 Merge pull request #51 from simonecorsi/dependabot/npm_and_yarn/sinon-14.0.0
build(deps-dev): bump sinon from 9.2.3 to 14.0.0
2022-05-10 15:46:38 +02:00
Simone Corsi
fcffe08be6 Merge pull request #53 from simonecorsi/dependabot/npm_and_yarn/typescript-4.6.4
build(deps-dev): bump typescript from 4.6.3 to 4.6.4
2022-05-10 15:46:21 +02:00
Simone Corsi
6f7de5aaff Merge pull request #54 from simonecorsi/dependabot/npm_and_yarn/commitlint/config-conventional-16.2.4
build(deps-dev): bump @commitlint/config-conventional from 16.2.1 to 16.2.4
2022-05-10 15:46:14 +02:00
Simone Corsi
a448ddef8a Merge pull request #55 from simonecorsi/dependabot/npm_and_yarn/eslint-config-prettier-8.5.0
build(deps-dev): bump eslint-config-prettier from 7.1.0 to 8.5.0
2022-05-10 15:46:04 +02:00
dependabot[bot]
b6dc6a44ec build(deps-dev): bump @commitlint/config-conventional
Bumps [@commitlint/config-conventional](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-conventional) from 16.2.1 to 16.2.4.
- [Release notes](https://github.com/conventional-changelog/commitlint/releases)
- [Changelog](https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/config-conventional/CHANGELOG.md)
- [Commits](https://github.com/conventional-changelog/commitlint/commits/v16.2.4/@commitlint/config-conventional)

---
updated-dependencies:
- dependency-name: "@commitlint/config-conventional"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-10 13:37:49 +00:00
dependabot[bot]
2f4a6f83a7 build(deps): bump remark-toc from 7.0.0 to 8.0.1
Bumps [remark-toc](https://github.com/remarkjs/remark-toc) from 7.0.0 to 8.0.1.
- [Release notes](https://github.com/remarkjs/remark-toc/releases)
- [Commits](https://github.com/remarkjs/remark-toc/compare/7.0.0...8.0.1)

---
updated-dependencies:
- dependency-name: remark-toc
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-10 13:37:43 +00:00
dependabot[bot]
34f5d7369b build(deps-dev): bump ava from 3.15.0 to 4.2.0
Bumps [ava](https://github.com/avajs/ava) from 3.15.0 to 4.2.0.
- [Release notes](https://github.com/avajs/ava/releases)
- [Commits](https://github.com/avajs/ava/compare/v3.15.0...v4.2.0)

---
updated-dependencies:
- dependency-name: ava
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-10 13:37:16 +00:00
Simone Corsi
1a46ff531e Merge pull request #58 from simonecorsi/dependabot/npm_and_yarn/commitlint/cli-16.2.4
build(deps-dev): bump @commitlint/cli from 16.2.3 to 16.2.4
2022-05-10 15:35:28 +02:00
dependabot[bot]
3ef135614f build(deps-dev): bump eslint-config-prettier from 7.1.0 to 8.5.0
Bumps [eslint-config-prettier](https://github.com/prettier/eslint-config-prettier) from 7.1.0 to 8.5.0.
- [Release notes](https://github.com/prettier/eslint-config-prettier/releases)
- [Changelog](https://github.com/prettier/eslint-config-prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/eslint-config-prettier/compare/v7.1.0...v8.5.0)

---
updated-dependencies:
- dependency-name: eslint-config-prettier
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-09 07:10:40 +00:00
dependabot[bot]
586e741afc build(deps-dev): bump sinon from 9.2.3 to 14.0.0
Bumps [sinon](https://github.com/sinonjs/sinon) from 9.2.3 to 14.0.0.
- [Release notes](https://github.com/sinonjs/sinon/releases)
- [Changelog](https://github.com/sinonjs/sinon/blob/main/docs/changelog.md)
- [Commits](https://github.com/sinonjs/sinon/compare/v9.2.3...v14.0.0)

---
updated-dependencies:
- dependency-name: sinon
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-09 07:10:39 +00:00
dependabot[bot]
3888e0bcd6 build(deps-dev): bump typescript from 4.6.3 to 4.6.4
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.6.3 to 4.6.4.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.6.3...v4.6.4)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-09 07:10:38 +00:00
Simone Corsi
2e122981f5 Merge pull request #56 from simonecorsi/dependabot/npm_and_yarn/vercel/ncc-0.33.4
build(deps-dev): bump @vercel/ncc from 0.33.3 to 0.33.4
2022-05-09 09:09:46 +02:00
dependabot[bot]
1f2f524430 build(deps-dev): bump @vercel/ncc from 0.33.3 to 0.33.4
Bumps [@vercel/ncc](https://github.com/vercel/ncc) from 0.33.3 to 0.33.4.
- [Release notes](https://github.com/vercel/ncc/releases)
- [Commits](https://github.com/vercel/ncc/compare/0.33.3...0.33.4)

---
updated-dependencies:
- dependency-name: "@vercel/ncc"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-09 07:08:48 +00:00
dependabot[bot]
b7388a0b80 build(deps-dev): bump @commitlint/cli from 16.2.3 to 16.2.4
Bumps [@commitlint/cli](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/cli) from 16.2.3 to 16.2.4.
- [Release notes](https://github.com/conventional-changelog/commitlint/releases)
- [Changelog](https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/cli/CHANGELOG.md)
- [Commits](https://github.com/conventional-changelog/commitlint/commits/v16.2.4/@commitlint/cli)

---
updated-dependencies:
- dependency-name: "@commitlint/cli"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-09 07:08:32 +00:00
Simone Corsi
4cf5a6b2ec Merge pull request #57 from simonecorsi/dependabot/npm_and_yarn/eslint-8.15.0
build(deps-dev): bump eslint from 8.14.0 to 8.15.0
2022-05-09 09:07:50 +02:00
dependabot[bot]
c39e5e788b build(deps-dev): bump eslint from 8.14.0 to 8.15.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.14.0 to 8.15.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.14.0...v8.15.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-09 07:01:34 +00:00
Simone Corsi
4567c63113 Merge pull request #50 from simonecorsi/dependabot/npm_and_yarn/husky-8.0.0
build(deps-dev): bump husky from 7.0.4 to 8.0.0
2022-05-09 09:00:53 +02:00
dependabot[bot]
5d5127ad06 build(deps-dev): bump husky from 7.0.4 to 8.0.0
Bumps [husky](https://github.com/typicode/husky) from 7.0.4 to 8.0.0.
- [Release notes](https://github.com/typicode/husky/releases)
- [Commits](https://github.com/typicode/husky/compare/v7.0.4...v8.0.0)

---
updated-dependencies:
- dependency-name: husky
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-09 05:16:07 +00:00
Simone Corsi
70c8d54fb9 Merge pull request #27 from simonecorsi/dependabot/npm_and_yarn/types/sinon-10.0.11
build(deps-dev): bump @types/sinon from 9.0.10 to 10.0.11
2022-05-06 11:20:35 +02:00
Simone Corsi
2459ad324b Merge pull request #29 from simonecorsi/dependabot/npm_and_yarn/eslint-plugin-prettier-4.0.0
build(deps-dev): bump eslint-plugin-prettier from 3.3.1 to 4.0.0
2022-05-06 11:20:24 +02:00
dependabot[bot]
aa17d94db3 build(deps-dev): bump eslint-plugin-prettier from 3.3.1 to 4.0.0
Bumps [eslint-plugin-prettier](https://github.com/prettier/eslint-plugin-prettier) from 3.3.1 to 4.0.0.
- [Release notes](https://github.com/prettier/eslint-plugin-prettier/releases)
- [Changelog](https://github.com/prettier/eslint-plugin-prettier/blob/master/CHANGELOG.md)
- [Commits](https://github.com/prettier/eslint-plugin-prettier/compare/v3.3.1...v4.0.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-prettier
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-06 09:20:18 +00:00
Simone Corsi
fe4ad219ed Merge pull request #31 from simonecorsi/dependabot/npm_and_yarn/typescript-eslint/parser-4.33.0
build(deps-dev): bump @typescript-eslint/parser from 4.12.0 to 4.33.0
2022-05-06 11:20:14 +02:00
Simone Corsi
c0e3e60f4f Merge pull request #33 from simonecorsi/dependabot/npm_and_yarn/prettier-2.6.2
build(deps-dev): bump prettier from 2.2.1 to 2.6.2
2022-05-06 11:19:59 +02:00
Simone Corsi
4b365c4b69 Merge pull request #34 from simonecorsi/dependabot/npm_and_yarn/types/ejs-3.1.0
build(deps-dev): bump @types/ejs from 3.0.5 to 3.1.0
2022-05-06 11:19:50 +02:00
Simone Corsi
00de1fc0c3 Merge pull request #40 from simonecorsi/dependabot/npm_and_yarn/eslint-8.14.0
build(deps-dev): bump eslint from 7.17.0 to 8.14.0
2022-05-06 11:19:41 +02:00
Simone Corsi
cec7c043b3 Merge pull request #49 from simonecorsi/dependabot/npm_and_yarn/lint-staged-12.4.1
build(deps-dev): bump lint-staged from 12.3.7 to 12.4.1
2022-05-06 11:19:22 +02:00
dependabot[bot]
83853a2d61 build(deps-dev): bump eslint from 7.17.0 to 8.14.0
Bumps [eslint](https://github.com/eslint/eslint) from 7.17.0 to 8.14.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v7.17.0...v8.14.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-06 09:16:30 +00:00
dependabot[bot]
24c8b9889e build(deps-dev): bump @typescript-eslint/parser from 4.12.0 to 4.33.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 4.12.0 to 4.33.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.33.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-06 09:16:26 +00:00
dependabot[bot]
20b279668f build(deps-dev): bump @types/ejs from 3.0.5 to 3.1.0
Bumps [@types/ejs](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/ejs) from 3.0.5 to 3.1.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/ejs)

---
updated-dependencies:
- dependency-name: "@types/ejs"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-06 09:16:05 +00:00
dependabot[bot]
fe70a95e4d build(deps-dev): bump @types/sinon from 9.0.10 to 10.0.11
Bumps [@types/sinon](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/sinon) from 9.0.10 to 10.0.11.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/sinon)

---
updated-dependencies:
- dependency-name: "@types/sinon"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-06 09:15:53 +00:00
dependabot[bot]
f855c17ccb build(deps-dev): bump lint-staged from 12.3.7 to 12.4.1
Bumps [lint-staged](https://github.com/okonet/lint-staged) from 12.3.7 to 12.4.1.
- [Release notes](https://github.com/okonet/lint-staged/releases)
- [Commits](https://github.com/okonet/lint-staged/compare/v12.3.7...v12.4.1)

---
updated-dependencies:
- dependency-name: lint-staged
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-06 09:15:33 +00:00
Simone Corsi
16a641ace0 Merge pull request #47 from simonecorsi/dependabot/npm_and_yarn/ejs-3.1.7
build(deps): bump ejs from 3.1.6 to 3.1.7
2022-05-06 11:15:25 +02:00
Simone Corsi
b50b8ce93a Merge pull request #45 from simonecorsi/dependabot/npm_and_yarn/types/node-17.0.31
build(deps-dev): bump @types/node from 14.14.20 to 17.0.31
2022-05-06 11:15:10 +02:00
dependabot[bot]
0b0b70d114 build(deps): bump ejs from 3.1.6 to 3.1.7
Bumps [ejs](https://github.com/mde/ejs) from 3.1.6 to 3.1.7.
- [Release notes](https://github.com/mde/ejs/releases)
- [Changelog](https://github.com/mde/ejs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/mde/ejs/compare/v3.1.6...v3.1.7)

---
updated-dependencies:
- dependency-name: ejs
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-06 09:14:35 +00:00
Simone Corsi
c0d2fb6135 Merge pull request #46 from simonecorsi/dependabot/npm_and_yarn/actions/core-1.8.0
build(deps): bump @actions/core from 1.2.6 to 1.8.0
2022-05-06 11:14:07 +02:00
dependabot[bot]
12db35c2c1 build(deps): bump @actions/core from 1.2.6 to 1.8.0
Bumps [@actions/core](https://github.com/actions/toolkit/tree/HEAD/packages/core) from 1.2.6 to 1.8.0.
- [Release notes](https://github.com/actions/toolkit/releases)
- [Changelog](https://github.com/actions/toolkit/blob/main/packages/core/RELEASES.md)
- [Commits](https://github.com/actions/toolkit/commits/HEAD/packages/core)

---
updated-dependencies:
- dependency-name: "@actions/core"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-06 05:11:04 +00:00
dependabot[bot]
07ef9724cb build(deps-dev): bump @types/node from 14.14.20 to 17.0.31
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 14.14.20 to 17.0.31.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-02 05:16:33 +00:00
GitHub Actions
3c630ecb73 ci: adds next release channel 2022-04-13 12:55:15 +02:00
Simone Corsi
62cc7b142a Merge pull request #25 from simonecorsi/dependabot/npm_and_yarn/typescript-eslint/eslint-plugin-4.33.0
build(deps-dev): bump @typescript-eslint/eslint-plugin from 4.12.0 to 4.33.0
2022-04-12 12:44:36 +02:00
dependabot[bot]
49c817ef10 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 4.12.0 to 4.33.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.33.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-12 10:20:53 +00:00
Simone Corsi
e17f0be682 Merge pull request #26 from simonecorsi/dependabot/npm_and_yarn/types/got-9.6.12
build(deps-dev): bump @types/got from 9.6.11 to 9.6.12
2022-04-12 12:15:57 +02:00
dependabot[bot]
d2477f5a96 build(deps-dev): bump prettier from 2.2.1 to 2.6.2
Bumps [prettier](https://github.com/prettier/prettier) from 2.2.1 to 2.6.2.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/2.2.1...2.6.2)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-12 10:05:20 +00:00
dependabot[bot]
97c305eeb7 build(deps-dev): bump @types/got from 9.6.11 to 9.6.12
Bumps [@types/got](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/got) from 9.6.11 to 9.6.12.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/got)

---
updated-dependencies:
- dependency-name: "@types/got"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-12 10:03:55 +00:00
Simone Corsi
a443da7025 Merge pull request #21 from simonecorsi/dependabot/npm_and_yarn/vercel/ncc-0.33.3
build(deps-dev): bump @vercel/ncc from 0.26.2 to 0.33.3
2022-04-11 09:56:15 +02:00
Simone Corsi
07b2bb76e0 Merge pull request #24 from simonecorsi/dependabot/npm_and_yarn/actions/exec-1.1.1
build(deps): bump @actions/exec from 1.0.4 to 1.1.1
2022-04-11 09:53:26 +02:00
Simone Corsi
2ad49c269e Merge pull request #15 from simonecorsi/dependabot/npm_and_yarn/ansi-regex-4.1.1
build(deps): bump ansi-regex from 4.1.0 to 4.1.1
2022-04-11 09:53:02 +02:00
Simone Corsi
fd0321acf5 Merge pull request #16 from simonecorsi/dependabot/npm_and_yarn/minimist-1.2.6
build(deps): bump minimist from 1.2.5 to 1.2.6
2022-04-11 09:52:42 +02:00
dependabot[bot]
dbd50a89e4 build(deps): bump @actions/exec from 1.0.4 to 1.1.1
Bumps [@actions/exec](https://github.com/actions/toolkit/tree/HEAD/packages/exec) from 1.0.4 to 1.1.1.
- [Release notes](https://github.com/actions/toolkit/releases)
- [Changelog](https://github.com/actions/toolkit/blob/main/packages/exec/RELEASES.md)
- [Commits](https://github.com/actions/toolkit/commits/@actions/tool-cache@1.1.1/packages/exec)

---
updated-dependencies:
- dependency-name: "@actions/exec"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-11 07:52:34 +00:00
Simone Corsi
5027ab963e Merge pull request #23 from simonecorsi/dependabot/npm_and_yarn/husky-7.0.4
build(deps-dev): bump husky from 6.0.0 to 7.0.4
2022-04-11 09:52:26 +02:00
dependabot[bot]
95daa3318c build(deps): bump ansi-regex from 4.1.0 to 4.1.1
Bumps [ansi-regex](https://github.com/chalk/ansi-regex) from 4.1.0 to 4.1.1.
- [Release notes](https://github.com/chalk/ansi-regex/releases)
- [Commits](https://github.com/chalk/ansi-regex/compare/v4.1.0...v4.1.1)

---
updated-dependencies:
- dependency-name: ansi-regex
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-11 07:52:20 +00:00
dependabot[bot]
c93b1511f1 build(deps): bump minimist from 1.2.5 to 1.2.6
Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/substack/minimist/releases)
- [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-11 07:52:20 +00:00
dependabot[bot]
0ceab70142 build(deps-dev): bump husky from 6.0.0 to 7.0.4
Bumps [husky](https://github.com/typicode/husky) from 6.0.0 to 7.0.4.
- [Release notes](https://github.com/typicode/husky/releases)
- [Commits](https://github.com/typicode/husky/compare/v6.0.0...v7.0.4)

---
updated-dependencies:
- dependency-name: husky
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-11 07:52:18 +00:00
Simone Corsi
2eb10280a7 Merge pull request #22 from simonecorsi/dependabot/npm_and_yarn/ejs-3.1.6
build(deps): bump ejs from 3.1.5 to 3.1.6
2022-04-11 09:51:39 +02:00
Simone Corsi
e4a2588002 Merge pull request #20 from simonecorsi/dependabot/npm_and_yarn/lint-staged-12.3.7
build(deps-dev): bump lint-staged from 10.5.3 to 12.3.7
2022-04-11 09:51:06 +02:00
GitHub Actions
694ba91ecc ci: remove matrix test 2022-04-11 09:50:53 +02:00
Simone Corsi
a683b39f9f Merge pull request #19 from simonecorsi/dependabot/npm_and_yarn/octokit/rest-18.12.0
build(deps-dev): bump @octokit/rest from 18.0.12 to 18.12.0
2022-04-11 09:49:16 +02:00
Simone Corsi
8253c064fe Merge pull request #18 from simonecorsi/dependabot/npm_and_yarn/node-fetch-2.6.7
build(deps): bump node-fetch from 2.6.1 to 2.6.7
2022-04-11 09:48:51 +02:00
Simone Corsi
7af34fda05 Merge pull request #17 from simonecorsi/dependabot/npm_and_yarn/trim-off-newlines-1.0.3
build(deps): bump trim-off-newlines from 1.0.1 to 1.0.3
2022-04-11 09:48:26 +02:00
dependabot[bot]
d4dd907bb0 build(deps): bump ejs from 3.1.5 to 3.1.6
Bumps [ejs](https://github.com/mde/ejs) from 3.1.5 to 3.1.6.
- [Release notes](https://github.com/mde/ejs/releases)
- [Changelog](https://github.com/mde/ejs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/mde/ejs/compare/v3.1.5...v3.1.6)

---
updated-dependencies:
- dependency-name: ejs
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-11 07:29:07 +00:00
dependabot[bot]
b0c97c8ec6 build(deps-dev): bump @vercel/ncc from 0.26.2 to 0.33.3
Bumps [@vercel/ncc](https://github.com/vercel/ncc) from 0.26.2 to 0.33.3.
- [Release notes](https://github.com/vercel/ncc/releases)
- [Commits](https://github.com/vercel/ncc/compare/0.26.2...0.33.3)

---
updated-dependencies:
- dependency-name: "@vercel/ncc"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-11 07:28:57 +00:00
dependabot[bot]
a0b73020ce build(deps-dev): bump lint-staged from 10.5.3 to 12.3.7
Bumps [lint-staged](https://github.com/okonet/lint-staged) from 10.5.3 to 12.3.7.
- [Release notes](https://github.com/okonet/lint-staged/releases)
- [Commits](https://github.com/okonet/lint-staged/compare/v10.5.3...v12.3.7)

---
updated-dependencies:
- dependency-name: lint-staged
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-11 07:28:47 +00:00
dependabot[bot]
04fbe0af6f build(deps-dev): bump @octokit/rest from 18.0.12 to 18.12.0
Bumps [@octokit/rest](https://github.com/octokit/rest.js) from 18.0.12 to 18.12.0.
- [Release notes](https://github.com/octokit/rest.js/releases)
- [Commits](https://github.com/octokit/rest.js/compare/v18.0.12...v18.12.0)

---
updated-dependencies:
- dependency-name: "@octokit/rest"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-11 07:28:33 +00:00
dependabot[bot]
d4184b0b6b build(deps): bump node-fetch from 2.6.1 to 2.6.7
Bumps [node-fetch](https://github.com/node-fetch/node-fetch) from 2.6.1 to 2.6.7.
- [Release notes](https://github.com/node-fetch/node-fetch/releases)
- [Commits](https://github.com/node-fetch/node-fetch/compare/v2.6.1...v2.6.7)

---
updated-dependencies:
- dependency-name: node-fetch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-11 07:28:25 +00:00
dependabot[bot]
064eb14315 build(deps): bump trim-off-newlines from 1.0.1 to 1.0.3
Bumps [trim-off-newlines](https://github.com/stevemao/trim-off-newlines) from 1.0.1 to 1.0.3.
- [Release notes](https://github.com/stevemao/trim-off-newlines/releases)
- [Commits](https://github.com/stevemao/trim-off-newlines/compare/v1.0.1...v1.0.3)

---
updated-dependencies:
- dependency-name: trim-off-newlines
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-11 07:28:24 +00:00
GitHub Actions
b07cc92b5c build: updates release and tooling flows 2022-04-11 09:27:43 +02:00
Conventional Changelog Action
e5ba2cf34b chore(release): v1.0.45 2022-01-17 08:44:24 +00:00
Simone Corsi
f68439999d Merge pull request #13 from simonecorsi/dependabot/npm_and_yarn/shelljs-0.8.5
build(deps): bump shelljs from 0.8.4 to 0.8.5
2022-01-17 09:43:14 +01:00
dependabot[bot]
1da350a3d0 build(deps): bump shelljs from 0.8.4 to 0.8.5
Bumps [shelljs](https://github.com/shelljs/shelljs) from 0.8.4 to 0.8.5.
- [Release notes](https://github.com/shelljs/shelljs/releases)
- [Changelog](https://github.com/shelljs/shelljs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/shelljs/shelljs/compare/v0.8.4...v0.8.5)

---
updated-dependencies:
- dependency-name: shelljs
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-15 07:04:53 +00:00
Conventional Changelog Action
6ffe17f8b4 chore(release): v1.0.44 2021-10-26 07:51:36 +00:00
GitHub Actions
4aef61f232 feat: git add multiple files at once 2021-10-26 09:50:38 +02:00
Conventional Changelog Action
5e0ef822fd chore(release): v1.0.43 2021-10-15 07:18:53 +00:00
GitHub Actions
94635fe447 feat: reduce json output size 2021-10-15 09:17:49 +02:00
Conventional Changelog Action
5b36813618 chore(release): v1.0.42 2021-10-14 07:47:28 +00:00
GitHub Actions
dcf9898d67 fix(paginator): last page now correctly matches rex 2021-10-14 09:46:33 +02:00
Conventional Changelog Action
884fc90171 chore(release): v1.0.41 2021-10-14 07:13:40 +00:00
GitHub Actions
b97833f7c5 test: fixs suite 2021-10-14 09:12:48 +02:00
Simone Corsi
1d6848cd17 fix: should avoid index lock 2021-10-14 08:57:35 +02:00
Conventional Changelog Action
0e016f41d3 chore(release): v1.0.40 2021-10-13 22:22:11 +00:00
GitHub Actions
8f9b4ccf8d fix: fixes while exit condition 2021-10-14 00:20:38 +02:00
GitHub Actions
51da6c20db feat: paginates using async generator 2021-10-13 23:44:05 +02:00
Conventional Changelog Action
f7a8341bb1 chore(release): v1.0.39 2021-08-31 09:17:17 +00:00
Simone Corsi
c361d6e2b6 Merge pull request #12 from simonecorsi/dependabot/npm_and_yarn/path-parse-1.0.7
build(deps): bump path-parse from 1.0.6 to 1.0.7
2021-08-31 11:16:32 +02:00
dependabot[bot]
ef137b518e build(deps): bump path-parse from 1.0.6 to 1.0.7
Bumps [path-parse](https://github.com/jbgutierrez/path-parse) from 1.0.6 to 1.0.7.
- [Release notes](https://github.com/jbgutierrez/path-parse/releases)
- [Commits](https://github.com/jbgutierrez/path-parse/commits/v1.0.7)

---
updated-dependencies:
- dependency-name: path-parse
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-12 23:57:13 +00:00
Conventional Changelog Action
3e66d85077 chore(release): v1.0.38 2021-06-23 22:10:04 +00:00
Conventional Changelog Action
16430922c4 chore(release): v1.0.37 2021-06-23 22:09:38 +00:00
Simone Corsi
20b7de127d Merge pull request #7 from simonecorsi/dependabot/npm_and_yarn/hosted-git-info-2.8.9
build(deps): bump hosted-git-info from 2.8.8 to 2.8.9
2021-06-24 00:09:33 +02:00
Simone Corsi
9def6961a9 Merge pull request #9 from simonecorsi/dependabot/npm_and_yarn/normalize-url-4.5.1
build(deps): bump normalize-url from 4.5.0 to 4.5.1
2021-06-24 00:09:23 +02:00
Simone Corsi
f846c5ee47 Merge pull request #10 from simonecorsi/dependabot/npm_and_yarn/glob-parent-5.1.2
build(deps): bump glob-parent from 5.1.1 to 5.1.2
2021-06-24 00:09:00 +02:00
Simone Corsi
8133f1f32e Merge branch 'main' into dependabot/npm_and_yarn/normalize-url-4.5.1 2021-06-24 00:08:00 +02:00
Simone Corsi
19e564c928 Merge branch 'main' into dependabot/npm_and_yarn/glob-parent-5.1.2 2021-06-24 00:07:19 +02:00
Conventional Changelog Action
9c0b62271d chore(release): v1.0.36 2021-06-23 22:05:32 +00:00
GitHub Actions
7ceb9cb783 feat: saving json data for future use 2021-06-24 00:04:22 +02:00
dependabot[bot]
e558e07817 build(deps): bump glob-parent from 5.1.1 to 5.1.2
Bumps [glob-parent](https://github.com/gulpjs/glob-parent) from 5.1.1 to 5.1.2.
- [Release notes](https://github.com/gulpjs/glob-parent/releases)
- [Changelog](https://github.com/gulpjs/glob-parent/blob/main/CHANGELOG.md)
- [Commits](https://github.com/gulpjs/glob-parent/compare/v5.1.1...v5.1.2)

---
updated-dependencies:
- dependency-name: glob-parent
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-12 15:27:03 +00:00
dependabot[bot]
202d6fe6c3 build(deps): bump normalize-url from 4.5.0 to 4.5.1
Bumps [normalize-url](https://github.com/sindresorhus/normalize-url) from 4.5.0 to 4.5.1.
- [Release notes](https://github.com/sindresorhus/normalize-url/releases)
- [Commits](https://github.com/sindresorhus/normalize-url/commits)

---
updated-dependencies:
- dependency-name: normalize-url
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-12 03:41:41 +00:00
dependabot[bot]
110a667b31 build(deps): bump hosted-git-info from 2.8.8 to 2.8.9
Bumps [hosted-git-info](https://github.com/npm/hosted-git-info) from 2.8.8 to 2.8.9.
- [Release notes](https://github.com/npm/hosted-git-info/releases)
- [Changelog](https://github.com/npm/hosted-git-info/blob/v2.8.9/CHANGELOG.md)
- [Commits](https://github.com/npm/hosted-git-info/compare/v2.8.8...v2.8.9)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-19 09:24:36 +00:00
29 changed files with 33863 additions and 16881 deletions

View File

@@ -1,21 +0,0 @@
{
"parser": "@typescript-eslint/parser",
"parserOptions": {
"ecmaVersion": 2020,
"sourceType": "module"
},
"env": {
"es6": true,
"node": true
},
"extends": [
"prettier/@typescript-eslint",
"plugin:@typescript-eslint/recommended",
"plugin:prettier/recommended"
],
"rules": {
"@typescript-eslint/no-var-requires": "off",
"prefer-rest-params": "off",
"@typescript-eslint/no-non-null-assertion": "off"
}
}

17
.eslintrc.js Normal file
View File

@@ -0,0 +1,17 @@
module.exports = {
root: true,
parserOptions: {
ecmaVersion: 2022,
sourceType: 'module',
},
env: {
node: true,
},
parser: '@typescript-eslint/parser',
plugins: ['@typescript-eslint'],
extends: [
'eslint:recommended',
'plugin:prettier/recommended',
'plugin:@typescript-eslint/recommended',
],
};

13
.github/CODEOWNERS vendored Normal file
View File

@@ -0,0 +1,13 @@
# Lines starting with '#' are comments.
# Each line is a file pattern followed by one or more owners.
# These owners will be the default owners for everything in the repo.
* @simonecorsi
# Order is important. The last matching pattern has the most precedence.
# So if a pull request only touches javascript files, only these owners
# will be requested to review.
# *.js @octocat @github/js
# You can also use email addresses if you prefer.
# docs/* docs@example.com

18
.github/dependabot.yml vendored Normal file
View File

@@ -0,0 +1,18 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
version: 2
updates:
- package-ecosystem: 'npm' # See documentation for possible values
directory: '/' # Location of package manifests
schedule:
interval: 'daily'
open-pull-requests-limit: 10
- package-ecosystem: 'github-actions'
directory: '/'
schedule:
interval: 'daily'
open-pull-requests-limit: 10

15
.github/pull_request_template.md vendored Normal file
View File

@@ -0,0 +1,15 @@
## 🚨 Proposed changes
> Please review the [guidelines for contributing](../../CONTRIBUTING.md) to this repository.
[[Describe the big picture of your changes here to communicate to the maintainers why we should accept this pull request. If it fixes a bug or resolves a feature request, be sure to link to that issue.]]
## ⚙️ Types of changes
What types of changes does your code introduce? _Put an `x` in the boxes that apply_
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Bugfix (non-breaking change which fixes an issue)
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
- [ ] Documentation Update (if none of the other choices apply)
- [ ] Refactor

View File

@@ -1,19 +0,0 @@
name: Test
on: [pull_request]
jobs:
version:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
token: ${{ secrets.GITHUB_TOKEN }}
- uses: actions/cache@v2
with:
path: '**/node_modules'
key: ${{ runner.os }}-modules-${{ hashFiles('**/package-lock.json') }}
- name: tests
run: npm cit

View File

@@ -1,47 +0,0 @@
name: Publish workflow
on:
push:
branches: main
jobs:
version:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
token: ${{ secrets.GITHUB_TOKEN }}
- uses: fregante/setup-git-user@v1
- uses: actions/cache@v2
with:
path: '**/node_modules'
key: ${{ runner.os }}-modules-${{ hashFiles('**/package-lock.json') }}
- name: tests
run: npm cit
- name: build
run: npm run build
- name: Bump version and push tag
id: changelog
uses: TriPSs/conventional-changelog-action@v2
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
git-message: 'chore(release): {version}'
preset: ''
- name: Create github Release
uses: actions/create-release@v1
if: ${{ steps.changelog.outputs.skipped == 'false' }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ steps.changelog.outputs.tag }}
release_name: ${{ steps.changelog.outputs.tag }}
body: ${{ steps.changelog.outputs.changelog }}
- name: Latest tag
uses: EndBug/latest-tag@v1.4.0

28
.github/workflows/release.yml vendored Normal file
View File

@@ -0,0 +1,28 @@
name: Release
on: [workflow_dispatch]
jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/setup-node@v3
with:
node-version: 16
- uses: actions/checkout@v3
with:
token: ${{ secrets.GH_TOKEN }}
persist-credentials: false
- name: Install dependencies
run: npm i
- name: Build
run: npm run build
- name: Semantic release
uses: codfish/semantic-release-action@v1
env:
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }}
GIT_AUTHOR_NAME: '${{ github.actor }}'
GIT_COMMITTER_NAME: '${{ github.actor }}'

1
.husky/.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
_

4
.husky/commit-msg Executable file
View File

@@ -0,0 +1,4 @@
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"
npx --no-install commitlint --edit $1

4
.husky/pre-commit Executable file
View File

@@ -0,0 +1,4 @@
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"
npx --no-install lint-staged

View File

@@ -1,7 +0,0 @@
module.exports = {
hooks: {
'prepare-commit-msg': 'exec < /dev/tty && git cz --hook || true',
'pre-commit': 'lint-staged',
'commit-msg': 'commitlint -E HUSKY_GIT_PARAMS',
},
};

30
.releaserc.json Normal file
View File

@@ -0,0 +1,30 @@
{
"branches": [
{ "name": "main" },
{ "name": "next", "channel": "next", "prerelease": true }
],
"plugins": [
"@semantic-release/commit-analyzer",
"@semantic-release/release-notes-generator",
"@semantic-release/changelog",
[
"@semantic-release/git",
{
"assets": [
"index.js",
"CHANGELOG.md",
"package.json",
"package-lock.json"
]
}
],
"@semantic-release/github",
[
"@saithodev/semantic-release-backmerge",
{
"branches": [{ "from": "main", "to": "next" }],
"backmergeStrategy": "rebase"
}
]
]
}

View File

@@ -1,35 +1,70 @@
## <small>1.0.35 (2021-06-22)</small> # [2.0.0](https://github.com/simonecorsi/mawesome/compare/v1.0.45...v2.0.0) (2022-05-11)
* build(deps): bump set-getter from 0.1.0 to 0.1.1 ([970d603](https://github.com/simonecorsi/mawesome/commit/970d603))
### Bug Fixes
## <small>1.0.34 (2021-05-19)</small> * fixes default template path ([6cd9c30](https://github.com/simonecorsi/mawesome/commit/6cd9c30b20acb0789668b9fd4cdbace2cb52d3ce))
* fixes tsc build ([ec10b79](https://github.com/simonecorsi/mawesome/commit/ec10b79a91bc5894d35b80026d3e216420e0721a))
* chore(release): v1.0.34 ([ab02c0d](https://github.com/simonecorsi/mawesome/commit/ab02c0d)) * normalize template file loadup ([445f562](https://github.com/simonecorsi/mawesome/commit/445f562fb50567d995f0d080d4267fc8d494731b))
* pre-tags ([d1d4edd](https://github.com/simonecorsi/mawesome/commit/d1d4edd104affc69984905c8408e859c25c58443))
* removes unused tests ([a141d23](https://github.com/simonecorsi/mawesome/commit/a141d23972c31b3dbd7e9841168219ad42fa7a18))
* reworking files ([19c4c8f](https://github.com/simonecorsi/mawesome/commit/19c4c8f761b244ddccbc445cc34078bf932559d2))
* updates gh-star-fetch ([3ec4b7c](https://github.com/simonecorsi/mawesome/commit/3ec4b7cd53c1fe885a51fb64279047a201d535dc))
### Features
## <small>1.0.33 (2021-05-19)</small> * release major ([51a4359](https://github.com/simonecorsi/mawesome/commit/51a4359d983be4c842410f0c62104fca1b28252f))
* update to node16 ([e1f37af](https://github.com/simonecorsi/mawesome/commit/e1f37af978ebcb7f770949476ac7d6bc788a1fc2))
* chore(release): v1.0.33 ([fc187df](https://github.com/simonecorsi/mawesome/commit/fc187df)) * updates deps ([7ade95d](https://github.com/simonecorsi/mawesome/commit/7ade95df8566a59145652165400cddfd1afa4bed))
* build(deps): bump handlebars from 4.7.6 to 4.7.7 ([012928b](https://github.com/simonecorsi/mawesome/commit/012928b)) * using gh-star-fetch ([346ba5d](https://github.com/simonecorsi/mawesome/commit/346ba5d4b7ba6a71bab99f2dbe3c2d010beb67d5))
* build(deps): bump lodash from 4.17.20 to 4.17.21 ([1015179](https://github.com/simonecorsi/mawesome/commit/1015179)) * **template:** adds templates ([2c742b8](https://github.com/simonecorsi/mawesome/commit/2c742b820558fd715de987178303c460f5871c29)), closes [#14](https://github.com/simonecorsi/mawesome/issues/14)
### BREAKING CHANGES
## <small>1.0.32 (2021-01-22)</small> * refactored code
* chore: removed unused npm packages ([3ad1555](https://github.com/simonecorsi/mawesome/commit/3ad1555)) # [1.1.0-next.2](https://github.com/simonecorsi/mawesome/compare/v1.1.0-next.1...v1.1.0-next.2) (2022-05-09)
* chore(release): v1.0.32 ([fe15d93](https://github.com/simonecorsi/mawesome/commit/fe15d93))
* docs: added documentation ([5753aef](https://github.com/simonecorsi/mawesome/commit/5753aef))
### Features
## <small>1.0.31 (2021-01-21)</small> * using gh-star-fetch ([a8b6577](https://github.com/simonecorsi/mawesome/commit/a8b657735b9879636cc039d79fddcdca33ccf38e))
* chore(release): v1.0.31 ([903c070](https://github.com/simonecorsi/mawesome/commit/903c070)) # [1.1.0-next.1](https://github.com/simonecorsi/mawesome/compare/v1.0.45...v1.1.0-next.1) (2022-04-13)
* feat: added user/email input for commiting ([58a7dc1](https://github.com/simonecorsi/mawesome/commit/58a7dc1))
### Bug Fixes
* pre-tags ([602befc](https://github.com/simonecorsi/mawesome/commit/602befcb5494b5bfd74d2333899311b81ea9da6d))
### Features
* **template:** adds templates ([791de9a](https://github.com/simonecorsi/mawesome/commit/791de9ab504de50e2e9cb031b9e373d7cc0589c0)), closes [#14](https://github.com/simonecorsi/mawesome/issues/14)
## <small>1.0.45 (2022-01-17)</small>
- build(deps): bump shelljs from 0.8.4 to 0.8.5 ([1da350a](https://github.com/simonecorsi/mawesome/commit/1da350a))
## <small>1.0.44 (2021-10-26)</small>
- chore(release): v1.0.44 ([6ffe17f](https://github.com/simonecorsi/mawesome/commit/6ffe17f))
- feat: git add multiple files at once ([4aef61f](https://github.com/simonecorsi/mawesome/commit/4aef61f))
## <small>1.0.43 (2021-10-15)</small>
- chore(release): v1.0.43 ([5e0ef82](https://github.com/simonecorsi/mawesome/commit/5e0ef82))
- feat: reduce json output size ([94635fe](https://github.com/simonecorsi/mawesome/commit/94635fe))
## <small>1.0.42 (2021-10-14)</small>
- chore(release): v1.0.42 ([5b36813](https://github.com/simonecorsi/mawesome/commit/5b36813))
- fix(paginator): last page now correctly matches rex ([dcf9898](https://github.com/simonecorsi/mawesome/commit/dcf9898))
## <small>1.0.41 (2021-10-14)</small>
- chore(release): v1.0.41 ([884fc90](https://github.com/simonecorsi/mawesome/commit/884fc90))
- test: fixs suite ([b97833f](https://github.com/simonecorsi/mawesome/commit/b97833f))
- fix: should avoid index lock ([1d6848c](https://github.com/simonecorsi/mawesome/commit/1d6848c))

View File

@@ -8,7 +8,6 @@ You can see an example of the output at my own [simonecorsi/awesome](https://git
<!-- toc --> <!-- toc -->
- [Table of Contents](#table-of-contents)
- [Documentation](#documentation) - [Documentation](#documentation)
- [Requirements](#requirements) - [Requirements](#requirements)
- [Configuration](#configuration) - [Configuration](#configuration)
@@ -21,32 +20,34 @@ You can see an example of the output at my own [simonecorsi/awesome](https://git
### Requirements ### Requirements
- An empty repository - An empty repository
- A personal github api key - A personal github api key
### Configuration ### Configuration
The service can be configured setting the appropriate environment variables or writing an `.env` file. The service can be configured setting the appropriate environment variables or writing an `.env` file.
| Variable | Description | Default | | Variable | Description | Default |
| -------------- | ------------------------------------------- | -------------------------------- | | ----------------- | -------------------------------------------------------------------- | -------------------------------- |
| `api-token` | Personal github api token. | `${{ secrets.API_TOKEN }}` | | `api-token` | Personal github api token. | `${{ secrets.API_TOKEN }}` |
| `github-token` | Action Token | `${{ secrets.GITHUB_TOKEN }}` | | `github-token` | Action Token | `${{ secrets.GITHUB_TOKEN }}` |
| `github-name` | Name used for the commit, default to action | Github Action | | `github-name` | Name used for the commit, default to action | Github Action |
| `github-email` | email used for commit, default to action | actions@users.noreply.github.com | | `github-email` | email used for commit, default to action | actions@users.noreply.github.com |
| `template-path` | Custom output template file ([EJS](https://ejs.co/) template engine) | [TEMPLATE.ejs](./TEMPLATE.ejs) |
| `output-filename` | Output filename | `README.md` |
#### `api-token` #### `api-token`
The Personal API Access Token is mandatory to fetch stars from the API without incurring in Rate Limits. The Personal API Access Token is mandatory to fetch stars from the API without incurring in Rate Limits.
You'll have to generate a [personal api token](https://github.com/settings/tokens/new) and then add You'll have to generate a [personal api token](https://github.com/settings/tokens/new) and then add
## Example workflow ## Example workflow
```yml ```yml
name: Update awesome list name: Update awesome list
on: on:
workflow_dispatch: workflow_dispatch:
schedule: schedule:
- cron: '0 0 * * *' - cron: '0 0 * * *'
@@ -63,5 +64,4 @@ jobs:
github-token: ${{ secrets.GITHUB_TOKEN }} github-token: ${{ secrets.GITHUB_TOKEN }}
github-email: ${{ secrets.USER_EMAIL }} github-email: ${{ secrets.USER_EMAIL }}
github-name: ${{ github.repository_owner }} github-name: ${{ github.repository_owner }}
``` ```

View File

@@ -1,4 +1,4 @@
export default `# <%= username %> Awesome List [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) # <%= username %> Awesome List [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)
> :star: generated with [simonecorsi/mawesome](https://github.com/simonecorsi/mawesome) > :star: generated with [simonecorsi/mawesome](https://github.com/simonecorsi/mawesome)
@@ -11,4 +11,3 @@ export default `# <%= username %> Awesome List [![Awesome](https://cdn.rawgit.co
<% } %> <% } %>
<% } %> <% } %>
`;

View File

@@ -12,8 +12,20 @@ inputs:
required: true required: true
github-name: github-name:
description: 'Name shown in the commit' description: 'Name shown in the commit'
default: 'GitHub Actions'
required: false
github-email: github-email:
description: 'Email shown in the commit' description: 'Email shown in the commit'
default: 'actions@users.noreply.github.com'
required: false
template-path:
required: false
description: 'EJS template path relative to project root directory'
default: 'TEMPLATE.ejs'
output-filename:
description: 'The output file name, default to README.md'
required: false
default: 'README.md'
runs: runs:
using: 'node12' using: 'node16'
main: 'index.js' main: 'index.js'

View File

@@ -1,7 +0,0 @@
/* eslint-disable node/no-unsupported-features/es-syntax */
export default {
files: ['!templates/**/*'],
extensions: ['ts'],
require: ['ts-node/register/transpile-only'],
};

29213
index.js

File diff suppressed because one or more lines are too long

20391
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,18 +1,16 @@
{ {
"name": "mawesome", "name": "mawesome",
"version": "1.0.35", "version": "2.0.0-0",
"description": "Generate awesome list from user starred repositories", "description": "Generate awesome list from user starred repositories",
"main": "index.js", "main": "index.js",
"author": "Simone Corsi<simonecorsi.dev@gmail.com>", "author": "Simone Corsi<simonecorsi.dev@gmail.com>",
"license": "MIT", "license": "MIT",
"scripts": { "scripts": {
"test": "nyc --reporter=lcov --reporter=text-summary ava -s -v",
"test:watch": "ava -w",
"style:lint": "eslint src --ext .ts", "style:lint": "eslint src --ext .ts",
"style:prettier": "prettier \"src/**/*.ts\" --list-different --write", "style:prettier": "prettier \"src/**/*.ts\" --list-different --write",
"build": "./node_modules/.bin/ncc build src/index.ts -o ./", "build": "./node_modules/.bin/ncc build src/index.ts -o ./",
"dev": "ts-node-dev src/index.ts", "dev": "ts-node-dev src/index.ts",
"prerelease": "npm run build" "prepare": "node prepare.js || echo 'Skipping prepare'"
}, },
"keywords": [ "keywords": [
"github", "github",
@@ -24,43 +22,47 @@
"javascript" "javascript"
], ],
"devDependencies": { "devDependencies": {
"@commitlint/cli": "^11.0.0", "@commitlint/cli": "^16.2.4",
"@commitlint/config-conventional": "^11.0.0", "@commitlint/config-conventional": "^16.2.4",
"@octokit/rest": "^18.0.12", "@octokit/rest": "^18.12.0",
"@octokit/types": "^6.2.1", "@octokit/types": "^6.2.1",
"@types/ejs": "^3.0.5", "@saithodev/semantic-release-backmerge": "^2.1.2",
"@types/got": "^9.6.11", "@semantic-release/changelog": "^6.0.1",
"@types/node": "^14.14.5", "@semantic-release/commit-analyzer": "^9.0.2",
"@types/sinon": "^9.0.10", "@semantic-release/git": "^10.0.1",
"@typescript-eslint/eslint-plugin": "^4.6.0", "@semantic-release/github": "^8.0.4",
"@typescript-eslint/parser": "^4.6.0", "@semantic-release/release-notes-generator": "^10.0.3",
"@vercel/ncc": "^0.26.2", "@types/ejs": "^3.1.0",
"ava": "^3.8.2", "@types/got": "^9.6.12",
"benchmark": "^2.1.4", "@types/node": "^17.0.32",
"cz-conventional-changelog": "^3.2.0", "@types/sinon": "^10.0.11",
"eslint": "^7.17.0", "@typescript-eslint/eslint-plugin": "^5.23.0",
"eslint-config-prettier": "^7.1.0", "@typescript-eslint/parser": "^5.23.0",
"@vercel/ncc": "^0.33.4",
"eslint": "^8.15.0",
"eslint-config-prettier": "^8.5.0",
"eslint-plugin-node": "^11.1.0", "eslint-plugin-node": "^11.1.0",
"eslint-plugin-prettier": "^3.3.1", "eslint-plugin-prettier": "^4.0.0",
"husky": "^4.2.5", "husky": "^8.0.1",
"lint-staged": "^10.2.2", "lint-staged": "^12.4.1",
"markdown-toc": "^1.2.0", "markdown-toc": "^1.2.0",
"nyc": "^15.0.1", "nyc": "^15.0.1",
"prettier": "^2.0.5", "prettier": "^2.6.2",
"sinon": "^9.2.3", "sinon": "^14.0.0",
"standard-version": "^9.0.0", "ts-node-dev": "^1.1.8",
"ts-node-dev": "^1.1.1", "typescript": "^4.6.4"
"typescript": "^4.1.3"
}, },
"dependencies": { "dependencies": {
"@actions/exec": "^1.0.4", "@actions/core": "^1.8.0",
"@actions/core": "^1.2.6", "@actions/exec": "^1.1.1",
"ejs": "^3.1.5", "ejs": "^3.1.7",
"gh-star-fetch": "^1.3.0",
"got": "^11.8.1", "got": "^11.8.1",
"remark": "^13.0.0", "remark": "^14.0.2",
"remark-toc": "^7.0.0" "remark-toc": "^8.0.1"
}, },
"volta": { "volta": {
"node": "14.15.4" "node": "16.14.2",
"npm": "8.6.0"
} }
} }

13
prepare.js Normal file
View File

@@ -0,0 +1,13 @@
'use strict';
let isCi = false;
try {
isCi = require('is-ci');
} catch (_) {
isCi = true;
}
if (!isCi) {
require('husky').install();
}

View File

@@ -1,11 +0,0 @@
import got from 'got';
import * as core from '@actions/core';
const GITHUB_TOKEN = core.getInput('api-token', { required: true });
export default got.extend({
headers: {
Authorization: `token ${GITHUB_TOKEN}`,
},
responseType: 'json',
});

View File

@@ -2,10 +2,17 @@
import * as core from '@actions/core'; import * as core from '@actions/core';
import * as exec from '@actions/exec'; import * as exec from '@actions/exec';
import fs from 'fs/promises';
const { GITHUB_REPOSITORY, GITHUB_REF } = process.env; const { GITHUB_REPOSITORY, GITHUB_REF } = process.env;
const branch = GITHUB_REF?.replace('refs/heads/', ''); const branch = GITHUB_REF?.replace('refs/heads/', '');
type File = {
filename: string;
data: string;
};
class Git { class Git {
constructor() { constructor() {
const githubToken = core.getInput('github-token', { required: true }); const githubToken = core.getInput('github-token', { required: true });
@@ -34,33 +41,39 @@ class Git {
return isShallow.trim().replace('\n', '') === 'true'; return isShallow.trim().replace('\n', '') === 'true';
}; };
exec = (command: string): Promise<string> => { async exec(command: string): Promise<string> {
return new Promise(async (resolve, reject) => { let execOutput = '';
let execOutput = '';
const options = { const options = {
listeners: { listeners: {
stdout: (data: Buffer) => { stdout: (data: Buffer) => {
execOutput += data.toString(); execOutput += data.toString();
},
}, },
}; },
};
const exitCode = await exec.exec(`git ${command}`, undefined, options); const exitCode = await exec.exec(`git ${command}`, undefined, options);
if (exitCode === 0) { if (exitCode === 0) {
return resolve(execOutput); return execOutput;
} else { } else {
core.error(`Command "git ${command}" exited with code ${exitCode}.`); core.error(`Command "git ${command}" exited with code ${exitCode}.`);
return reject(`Command "git ${command}" exited with code ${exitCode}.`); throw new Error(`Command "git ${command}" exited with code ${exitCode}.`);
} }
}); }
};
config = (prop: string, value: string) => config = (prop: string, value: string) =>
this.exec(`config ${prop} "${value}"`); this.exec(`config ${prop} "${value}"`);
add = (file: string) => this.exec(`add ${file}`); add = (file: string | string[]) => {
let str = '';
if (Array.isArray(file)) {
file.map((f) => (str += ` ${f}`));
} else {
str = file;
}
return this.exec(`add ${str}`);
};
commit = (message: string) => this.exec(`commit -m "${message}"`); commit = (message: string) => this.exec(`commit -m "${message}"`);
@@ -83,6 +96,20 @@ class Git {
updateOrigin = (repo: string) => this.exec(`remote set-url origin ${repo}`); updateOrigin = (repo: string) => this.exec(`remote set-url origin ${repo}`);
createTag = (tag: string) => this.exec(`tag -a ${tag} -m "${tag}"`); createTag = (tag: string) => this.exec(`tag -a ${tag} -m "${tag}"`);
async pushNewFiles(files: File[] = []): Promise<any> {
if (!files.length) return;
await this.pull();
await Promise.all(
files.map(({ filename, data }) => fs.writeFile(filename, data))
);
await this.add(files.map(({ filename }) => filename));
await this.commit(`chore(updates): updated entries in files`);
await this.push();
}
} }
export default new Git(); export default new Git();

View File

@@ -1,30 +1,14 @@
import ejs from 'ejs'; import ejs from 'ejs';
import * as core from '@actions/core'; import * as core from '@actions/core';
import remark from 'remark'; import { remark } from 'remark';
import toc from 'remark-toc'; import toc from 'remark-toc';
import MD_TEMPLATE from './template'; export const REPO_USERNAME = process.env.GITHUB_REPOSITORY?.split('/')[0];
import GithubApi from './api'; export const API_STARRED_URL = `${process.env.GITHUB_API_URL}/users/${REPO_USERNAME}/starred`;
import link from './link';
import git from './git';
import type { PaginationLink, ApiGetStarResponse } from './types';
import fs from 'fs';
const fsp = fs.promises;
export function wait(time = 200): Promise<void> {
return new Promise((resolve) => setTimeout(resolve, time));
}
export function isLastPage(links: PaginationLink): boolean {
return links.next === links.last;
}
export async function renderer( export async function renderer(
data: { [key: string]: any }, data: { [key: string]: any },
templateString = MD_TEMPLATE templateString: string
): Promise<string> { ): Promise<string> {
try { try {
return ejs.render(templateString, data); return ejs.render(templateString, data);
@@ -34,34 +18,6 @@ export async function renderer(
} }
} }
export async function apiGetStar(url: string): Promise<ApiGetStarResponse> {
const { headers, body }: any = await GithubApi.get(url);
return {
data: body,
links: link.parse(headers.link).refs.reduce(
(acc, val) => ({
...acc,
[val.rel]: val.uri,
}),
{}
),
};
}
export const REPO_USERNAME = process.env.GITHUB_REPOSITORY?.split('/')[0];
export const API_STARRED_URL = `${process.env.GITHUB_API_URL}/users/${REPO_USERNAME}/starred`;
let links: PaginationLink = {
next: API_STARRED_URL,
last: undefined,
};
export async function paginate(): Promise<ApiGetStarResponse | null> {
if (isLastPage(links)) return null;
const r = await apiGetStar(links.next);
links = r.links;
return r;
}
export function generateMd(data: string): Promise<string> { export function generateMd(data: string): Promise<string> {
return new Promise((resolve) => { return new Promise((resolve) => {
remark() remark()
@@ -77,12 +33,4 @@ export function generateMd(data: string): Promise<string> {
}); });
} }
export const OUTPUT_FILENAME: string = export const MARKDOWN_FILENAME: string = core.getInput('output-filename');
core.getInput('output-filename') || 'README.md';
export async function pushNewFile(markdown: string): Promise<any> {
await fsp.writeFile(OUTPUT_FILENAME, markdown);
await git.pull();
await git.add(OUTPUT_FILENAME);
await git.commit(`chore(${OUTPUT_FILENAME}): updated ${OUTPUT_FILENAME}`);
await git.push();
}

View File

@@ -1,50 +1,62 @@
import path from 'path';
import * as core from '@actions/core'; import * as core from '@actions/core';
import { readFile } from 'fs/promises';
import ghStarFetch from 'gh-star-fetch';
import { import {
renderer, renderer,
paginate,
REPO_USERNAME, REPO_USERNAME,
generateMd, generateMd,
pushNewFile, MARKDOWN_FILENAME,
} from './helpers'; } from './helpers';
import git from './git';
import type { SortedLanguageList, Stars, Star } from './types'; export async function main() {
// set default template
export async function main(): Promise<any> { let template = await readFile(
let results: Stars = []; path.resolve(__dirname, './TEMPLATE.ejs'),
'utf8'
while (true) {
// sorry.
const r = await paginate();
if (!r || r === null) break;
results = results.concat(r.data);
}
const sortedByLanguages = results.reduce(
(acc: SortedLanguageList, val: Star) => {
const language = val.language || 'generic';
if (!acc[language]) {
acc[language] = [val];
} else {
acc[language].push(val);
}
return acc;
},
{}
); );
const rendered = await renderer({ // get template if found in the repo
username: REPO_USERNAME, const customTemplatePath = core.getInput('template-path');
stars: Object.entries(sortedByLanguages), core.info(`check if customTemplatePath: ${customTemplatePath} exists`);
updatedAt: Date.now(), try {
template = await readFile(customTemplatePath, 'utf8');
} catch {
core.info("Couldn't find template file, using default");
}
const sortedByLanguages = await ghStarFetch({
accessToken: core.getInput('api-token', { required: true }),
compactByLanguage: true,
}); });
console.log('sortedByLanguages :>> ', sortedByLanguages);
const rendered = await renderer(
{
username: REPO_USERNAME,
stars: Object.entries(sortedByLanguages),
updatedAt: Date.now(),
},
template
);
const markdown: string = await generateMd(rendered); const markdown: string = await generateMd(rendered);
await pushNewFile(markdown); await git.pushNewFiles([
{
filename: MARKDOWN_FILENAME,
data: markdown,
},
{
filename: 'data.json',
data: JSON.stringify(sortedByLanguages, null, 2),
},
]);
} }
export async function run(): Promise<any> { export async function run(): Promise<void> {
try { try {
await main(); await main();
} catch (error) { } catch (error) {
@@ -54,8 +66,9 @@ export async function run(): Promise<any> {
const catchAll = (info: any) => { const catchAll = (info: any) => {
core.setFailed(`#catchAll: ${info}`); core.setFailed(`#catchAll: ${info}`);
core.error(info);
}; };
process.on('unhandledRejection', catchAll); process.on('unhandledRejection', catchAll);
process.on('uncaughtException', catchAll); process.on('uncaughtException', catchAll);
run(); run().catch(core.error);

View File

@@ -1,384 +0,0 @@
/**
* Copyright (c) 2016 Jonas Hermsmeier
* https://github.com/jhermsmeier/node-http-link-header
*/
/* istanbul ignore file */
'use strict';
var COMPATIBLE_ENCODING_PATTERN = /^utf-?8|ascii|utf-?16-?le|ucs-?2|base-?64|latin-?1$/i;
var WS_TRIM_PATTERN = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;
var WS_CHAR_PATTERN = /\s|\uFEFF|\xA0/;
var WS_FOLD_PATTERN = /\r?\n[\x20\x09]+/g;
var DELIMITER_PATTERN = /[;,"]/;
var WS_DELIMITER_PATTERN = /[;,"]|\s/;
/**
* Token character pattern
* @type {RegExp}
* @see https://tools.ietf.org/html/rfc7230#section-3.2.6
*/
var TOKEN_PATTERN = /^[!#$%&'*+\-\.^_`|~\da-zA-Z]+$/;
var STATE = {
IDLE: 1 << 0,
URI: 1 << 1,
ATTR: 1 << 2,
};
function trim(value) {
return value.replace(WS_TRIM_PATTERN, '');
}
function hasWhitespace(value) {
return WS_CHAR_PATTERN.test(value);
}
function skipWhitespace(value, offset) {
while (hasWhitespace(value[offset])) {
offset++;
}
return offset;
}
function needsQuotes(value) {
return WS_DELIMITER_PATTERN.test(value) || !TOKEN_PATTERN.test(value);
}
class Link {
/**
* Link
* @constructor
* @param {String} [value]
* @returns {Link}
*/
constructor(value) {
/** @type {Array} URI references */
this.refs = [];
if (value) {
this.parse(value);
}
}
/**
* Get refs with given relation type
* @param {String} value
* @returns {Array<Object>}
*/
rel(value) {
var links = [];
var type = value.toLowerCase();
for (var i = 0; i < this.refs.length; i++) {
if (this.refs[i].rel.toLowerCase() === type) {
links.push(this.refs[i]);
}
}
return links;
}
/**
* Get refs where given attribute has a given value
* @param {String} attr
* @param {String} value
* @returns {Array<Object>}
*/
get(attr, value) {
attr = attr.toLowerCase();
var links = [];
for (var i = 0; i < this.refs.length; i++) {
if (this.refs[i][attr] === value) {
links.push(this.refs[i]);
}
}
return links;
}
set(link) {
this.refs.push(link);
return this;
}
has(attr, value) {
attr = attr.toLowerCase();
for (var i = 0; i < this.refs.length; i++) {
if (this.refs[i][attr] === value) {
return true;
}
}
return false;
}
parse(value, offset) {
offset = offset || 0;
value = offset ? value.slice(offset) : value;
// Trim & unfold folded lines
value = trim(value).replace(WS_FOLD_PATTERN, '');
var state = STATE.IDLE;
var length = value.length;
var offset = 0;
var ref = null;
while (offset < length) {
if (state === STATE.IDLE) {
if (hasWhitespace(value[offset])) {
offset++;
continue;
} else if (value[offset] === '<') {
if (ref != null) {
ref.rel != null
? this.refs.push(...Link.expandRelations(ref))
: this.refs.push(ref);
}
var end = value.indexOf('>', offset);
if (end === -1)
throw new Error(
'Expected end of URI delimiter at offset ' + offset
);
ref = { uri: value.slice(offset + 1, end) };
// this.refs.push( ref )
offset = end;
state = STATE.URI;
} else {
throw new Error(
'Unexpected character "' + value[offset] + '" at offset ' + offset
);
}
offset++;
} else if (state === STATE.URI) {
if (hasWhitespace(value[offset])) {
offset++;
continue;
} else if (value[offset] === ';') {
state = STATE.ATTR;
offset++;
} else if (value[offset] === ',') {
state = STATE.IDLE;
offset++;
} else {
throw new Error(
'Unexpected character "' + value[offset] + '" at offset ' + offset
);
}
} else if (state === STATE.ATTR) {
if (value[offset] === ';' || hasWhitespace(value[offset])) {
offset++;
continue;
}
var end = value.indexOf('=', offset);
if (end === -1)
throw new Error('Expected attribute delimiter at offset ' + offset);
var attr = trim(value.slice(offset, end)).toLowerCase();
var attrValue = '';
offset = end + 1;
offset = skipWhitespace(value, offset);
if (value[offset] === '"') {
offset++;
while (offset < length) {
if (value[offset] === '"') {
offset++;
break;
}
if (value[offset] === '\\') {
offset++;
}
attrValue += value[offset];
offset++;
}
} else {
var end = offset + 1;
while (!DELIMITER_PATTERN.test(value[end]) && end < length) {
end++;
}
attrValue = value.slice(offset, end);
offset = end;
}
if (ref[attr] && Link.isSingleOccurenceAttr(attr)) {
// Ignore multiples of attributes which may only appear once
} else if (attr[attr.length - 1] === '*') {
ref[attr] = Link.parseExtendedValue(attrValue);
} else {
attrValue = attr === 'type' ? attrValue.toLowerCase() : attrValue;
if (ref[attr] != null) {
if (Array.isArray(ref[attr])) {
ref[attr].push(attrValue);
} else {
ref[attr] = [ref[attr], attrValue];
}
} else {
ref[attr] = attrValue;
}
}
switch (value[offset]) {
case ',':
state = STATE.IDLE;
break;
case ';':
state = STATE.ATTR;
break;
}
offset++;
} else {
throw new Error('Unknown parser state "' + state + '"');
}
}
if (ref != null) {
ref.rel != null
? this.refs.push(...Link.expandRelations(ref))
: this.refs.push(ref);
}
ref = null;
return this;
}
toString() {
var refs = [];
var link = '';
var ref = null;
for (var i = 0; i < this.refs.length; i++) {
ref = this.refs[i];
link = Object.keys(this.refs[i]).reduce(function (link, attr) {
if (attr === 'uri') return link;
return link + '; ' + Link.formatAttribute(attr, ref[attr]);
}, '<' + ref.uri + '>');
refs.push(link);
}
return refs.join(', ');
}
}
/**
* Determines whether an encoding can be
* natively handled with a `Buffer`
* @param {String} value
* @returns {Boolean}
*/
Link.isCompatibleEncoding = function (value) {
return COMPATIBLE_ENCODING_PATTERN.test(value);
};
Link.parse = function (value, offset) {
return new Link().parse(value, offset);
};
Link.isSingleOccurenceAttr = function (attr) {
return (
attr === 'rel' ||
attr === 'type' ||
attr === 'media' ||
attr === 'title' ||
attr === 'title*'
);
};
Link.isTokenAttr = function (attr) {
return attr === 'rel' || attr === 'type' || attr === 'anchor';
};
Link.escapeQuotes = function (value) {
return value.replace(/"/g, '\\"');
};
Link.expandRelations = function (ref) {
var rels = ref.rel.split(' ');
return rels.map(function (rel) {
var value = Object.assign({}, ref);
value.rel = rel;
return value;
});
};
/**
* Parses an extended value and attempts to decode it
* @internal
* @param {String} value
* @return {Object}
*/
Link.parseExtendedValue = function (value) {
var parts = /([^']+)?(?:'([^']+)')?(.+)/.exec(value);
return {
language: parts[2].toLowerCase(),
encoding: Link.isCompatibleEncoding(parts[1])
? null
: parts[1].toLowerCase(),
value: Link.isCompatibleEncoding(parts[1])
? decodeURIComponent(parts[3])
: parts[3],
};
};
/**
* Format a given extended attribute and it's value
* @param {String} attr
* @param {Object} data
* @return {String}
*/
Link.formatExtendedAttribute = function (attr, data) {
var encoding = (data.encoding || 'utf-8').toUpperCase();
var language = data.language || 'en';
var encodedValue = '';
if (Buffer.isBuffer(data.value) && Link.isCompatibleEncoding(encoding)) {
encodedValue = data.value.toString(encoding);
} else if (Buffer.isBuffer(data.value)) {
encodedValue = data.value.toString('hex').replace(/[0-9a-f]{2}/gi, '%$1');
} else {
encodedValue = encodeURIComponent(data.value);
}
return attr + '=' + encoding + "'" + language + "'" + encodedValue;
};
/**
* Format a given attribute and it's value
* @param {String} attr
* @param {String|Object} value
* @return {String}
*/
Link.formatAttribute = function (attr, value) {
if (Array.isArray(value)) {
return value
.map((item) => {
return Link.formatAttribute(attr, item);
})
.join('; ');
}
if (attr[attr.length - 1] === '*' || typeof value !== 'string') {
return Link.formatExtendedAttribute(attr, value);
}
if (Link.isTokenAttr(attr)) {
value = needsQuotes(value)
? '"' + Link.escapeQuotes(value) + '"'
: Link.escapeQuotes(value);
} else if (needsQuotes(value)) {
value = encodeURIComponent(value);
// We don't need to escape <SP> <,> <;> within quotes
value = value
.replace(/%20/g, ' ')
.replace(/%2C/g, ',')
.replace(/%3B/g, ';');
value = '"' + value + '"';
}
return attr + '=' + value;
};
module.exports = Link;

View File

@@ -5,14 +5,11 @@ export type SortedLanguageList = {
}; };
export type PaginationLink = { export type PaginationLink = {
next: string; uri: string;
last: string | undefined | null; rel: 'next' | 'last' | 'prev' | 'first';
}; };
export type Stars = Endpoints['GET /user/starred']['response']['data']; export type Stars = Endpoints['GET /user/starred']['response']['data'];
export type Star = Stars[number] | { language: string }; export type Star = Stars[number] | { language: string };
export type ApiGetStarResponse = { export type ApiGetStarResponse = Stars;
links: PaginationLink;
data: Stars;
};

View File

@@ -1,106 +0,0 @@
import test from 'ava';
import * as sinon from 'sinon';
import fs from 'fs';
import * as core from '@actions/core';
sinon.replace(core, 'getInput', sinon.fake());
import GithubApi from '../src/api';
const GithubApiFake = sinon.fake((rul) => ({
body: 'data',
headers: {
link:
'<https://api.github.com/user/5617452/starred?page=2>; rel="next", <https://api.github.com/user/5617452/starred?page=2>; rel="last"',
},
}));
sinon.replace(GithubApi, 'get', GithubApiFake);
import Git from '../src/git';
const pull = sinon.fake();
sinon.replace(Git, 'pull', pull);
const add = sinon.fake();
sinon.replace(Git, 'add', add);
const commit = sinon.fake();
sinon.replace(Git, 'commit', commit);
const push = sinon.fake();
sinon.replace(Git, 'push', push);
sinon.replace(Git, 'config', sinon.fake());
sinon.replace(Git, 'updateOrigin', sinon.fake());
const fsp = fs.promises;
const writeFile = sinon.fake();
sinon.replace(fsp, 'writeFile', writeFile);
import {
isLastPage,
wait,
renderer,
apiGetStar,
paginate,
generateMd,
pushNewFile,
} from '../src/helpers';
test('wait should wait', async (t) => {
await wait(200);
t.pass();
});
test('isLastPage', (t) => {
t.true(
isLastPage({
next: 'last',
last: 'last',
})
);
t.false(
isLastPage({
next: 'last',
last: undefined,
})
);
});
test('renderer should render', async (t) => {
const output = await renderer({ variable: 123 }, 'Test: <%= variable %>');
t.is(output, 'Test: 123');
});
test('apiGetStar', async (t) => {
let { data, links } = await apiGetStar('url');
t.true(GithubApiFake.called);
t.is(data, 'data');
t.deepEqual(links, {
last: 'https://api.github.com/user/5617452/starred?page=2',
next: 'https://api.github.com/user/5617452/starred?page=2',
});
});
test('paginate', async (t) => {
await paginate();
const res = await paginate();
t.is(res, null);
});
test('generateMd should create TOC', async (t) => {
const tpl = `# title
## Table of Contents
## Javascript
`;
const result = await generateMd(tpl);
t.is(
result,
`# title\n\n## Table of Contents\n\n* [Javascript](#javascript)\n\n## Javascript\n`
);
});
test('should push', async (t) => {
await pushNewFile('# title');
t.true(writeFile.calledWith('README.md', '# title'));
t.true(pull.called);
t.true(add.calledWith('README.md'));
t.true(commit.calledWith('chore(README.md): updated README.md'));
t.true(push.called);
});