Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

POC: Typescript Conversion playground WIP. Do Not Merge #73

Draft
wants to merge 7 commits into
base: cli-update-and-typescript-conversion-wip
Choose a base branch
from

Conversation

D4RKAR117
Copy link

I'm creating this PR without intention of it to get merged. (at least at the near future) So everything here its just to benefit the main effort of typescript transition.

I will use it to make more aggressive changes that can benefit the typescript conversion currently leaded by @helmturner on #69 as POC to test new approaches for some things that can be improved.

Some of those things are:

  • change of package manager to pnpm
  • a new approach for the updater resolution API
  • usage of cosmiconfig instead of a hand made solution
  • a different bundler that can benefit creation of custom distributions and dev environments using unbuild and jiti.
  • Migration of the test suite to vitest.
  • Usage of citty as CLI manager instead of commander and the original yargs

This could help to test some ideas that could be a little too aggressive to follow up, and help the main effort to have a second opinion on the transition towards a modern typescript and esm library.

Thanks to @TimothyJones to allow me to do this.

- Changed default package manager from npm to pnpm
- Updated project dependencies

BREAKING CHANGE: Changed npm in favor of pnpm
- Added Typescript support for eslint

- Added typescript and basic tsconfig
- Updated .gitignore file to cover more workflows using gitignore.io
- Added .eslintignore with
basic rules
…forcement

- Added husky for git hooks management
- Added commit-msg hook with conventional commits spec
validation using commitlint
- Added commitlint.config.cts and commitizen config\scripts to do a
propper commit without effort (use pnpm commit)
- Changed project structure to match more concise spec for typescript
- Changed file module
resolution from cjs to esm
- Added missing types packages
- Preparation to migrate test to vitest

BREAKING CHANGE: Changed project structure and module resolution to support typescript and esm
"fix absolute-version#29"
- Added basic typings for config spec
- Added improved  preset spec resolving using esm
'import.meta.resolve' fallback to node resolve
- Modified command manager to cast better types
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant