[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been reviewed and added / updated if needed (for bug fixes / features)
[x] Build (npm run build) was run locally and any changes were pushed
[x] All tests and linting (npm run checks) has passed locally and any fixes were made for failures
[ ] I kept my pull requests small so it can be reviewed easier
Pull request type
Please check the type of change your PR introduces:
[ ] Bugfix
[ ] Feature
[x] Code style update (formatting, renaming)
[x] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[x] Documentation content changes
[ ] Other (please describe):
What is the current behaviour?
Git Mob cli and vscode extension have duplicated code which implements the core functionality. It will be helpful to create a core library to share between these codebases.
There might be further value for the open source community to reuse the package in their tooling.
Does this introduce a breaking change?
[ ] Yes
[x] No
Workspace design
WIP - learning about workspaces/monorepos and is it a good idea for git mob
Top-level actions
[x] Prettier - code formatting
[x] Linting - statically analyze code for problems
[x] Building git mob cli package
[x] Publishing (needs the --workspaces flag on npm publish --workspaces)
[x] Unit testing per package - jest in core and ava in cli
[x] npm link for git mob cli - looks like it's not needed to run npm link to run the tests. Not sure why this is the case.
[x] Create versioning process
[x] Should Typescript be top-level or per package? I'll keep at top-level, I think I would like all packages to use TS. See how it goes.
[x] Integrate core library into git mob cli - only added getPrimaryAuthor full integration to be done in another PR.
[x] Update readme for main and per package
[x] Update contribution and publishing documentation
Notes:
Versioning: This does not work as expected following command npm version patch --workspaces --include-workspace-root - What happens is it runs the root script and then versions but does not wait for packages to run and update. This results in packages with changed versions not committed with the root package version. This is probably what Lerna manages. Might be worth using Lerna version
Pull request checklist
npm run build
) was run locally and any changes were pushednpm run checks
) has passed locally and any fixes were made for failuresPull request type
Please check the type of change your PR introduces:
What is the current behaviour?
Git Mob cli and vscode extension have duplicated code which implements the core functionality. It will be helpful to create a core library to share between these codebases.
There might be further value for the open source community to reuse the package in their tooling.
Does this introduce a breaking change?
Workspace design
WIP - learning about workspaces/monorepos and is it a good idea for git mob
Top-level actions
--workspaces
flag onnpm publish --workspaces
)npm link
to run the tests. Not sure why this is the case.getPrimaryAuthor
full integration to be done in another PR.Notes:
Versioning: This does not work as expected following command
npm version patch --workspaces --include-workspace-root
- What happens is it runs the root script and then versions but does not wait for packages to run and update. This results in packages with changed versions not committed with the root package version. This is probably what Lerna manages. Might be worth using Lerna version