-
Notifications
You must be signed in to change notification settings - Fork 0
feat: skeleton MAPCO-7912 #1
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
base: master
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR establishes the skeleton for the MAPCO-7912 project, setting up foundational configurations and workflows for linting, testing, committing, and releasing JavaScript GitHub Actions.
- Introduces configuration files for lint-staged, eslint, commitlint, and Prettier.
- Sets up GitHub workflows for releases, pull request validation, and Dependabot updates.
- Adds documentation and various project configuration files (.nvmrc, .npmrc, .editorconfig, etc.) to ensure consistency.
Reviewed Changes
Copilot reviewed 32 out of 32 changed files in this pull request and generated 2 comments.
Show a summary per file
File | Description |
---|---|
lint-staged.config.mjs | Adds pre-commit scripts to build, verify dist, and log messaging. |
eslint.config.mjs | Configures ESLint with a TypeScript base config. |
commitlint.config.mjs | Dynamically generates allowed scopes based on directories in actions. |
README.md | Updates project title and documentation for newly added actions. |
.vscode/settings.json | Includes VS Code configuration for TypeScript and Copilot instructions. |
.release-please-manifest.json | Initializes an empty manifest file for release management. |
.prettierrc | Uses a shared Prettier configuration. |
.prettierignore | Defines patterns to ignore during formatting. |
.nvmrc | Specifies Node version v22 (local config). |
.npmrc | Enforces engine strict mode. |
.licrc | Sets up license acceptance rules and dependency checks. |
.husky/pre-commit | Runs lint-staged and pretty-quick during pre-commit hooks. |
.husky/commit-msg | Integrates commitlint into commit-msg hook. |
.github/workflows/release-please.yaml | Automates release tag updates via a GitHub workflow. |
.github/workflows/pull-request.yaml | Adds workflows for linting, building, and testing pull requests. |
.github/dependabot.yaml | Configures Dependabot for dependencies and GitHub actions updates. |
.github/actions/init-npm/action.yaml | Defines a composite GitHub Action for initializing npm and building. |
.github/PULL_REQUEST_TEMPLATE.md | Provides a template for pull request submissions. |
.gitattributes | Sets line ending rules for consistent formatting across OSes. |
.editorconfig | Enforces coding style rules across different editors. |
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- how do we force husky to run since every user need to
npm run husky:install
- should we add validation on parameters, meaning adding AJV or other validation tool?
- overall lgtm
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- You shouldn't touch the release-please manifest other than initial "{}"
- Remove README from prettierignore
- Handle the "changelog-sections" in release-please-config.json (seems like all is considered as "require release")
- Under the generated action:
4.1 Why do you need both "example" and "usage" sections?
4.2 The uses generated in README is "map-colonies" instead of "MapColonies"
4.3 The generated release-type should be "node" instead of "simple"
In addition, use init-npm that exists already in shared-workflows |
No description provided.