Skip to content

Latest commit

 

History

History
159 lines (103 loc) · 4.1 KB

File metadata and controls

159 lines (103 loc) · 4.1 KB

Contributing to Runespoor Stack

Thank you for taking an interest in contributing! We appreciate you! 🫶🏽

Below are the guidelines on how to help in the best possible way.

Submitting an Issue

Before creating a new issue, please search through open issues using the GitHub issue search bar. You might find the solution to your problem, or can verify that it is an already known issue.

We want a bug-free and best-performing project. That's why we take all reported issues to heart. But please be aware that if we can't reproduce the problem, we won't have a way of locating and adequately fixing it.

Therefore, to solve the problem in the best possible way, please create a minimal repository that reproduces the problem with the least possible code explaining and demonstrating the error.

Without enough information to reproduce the issue, we will close it because we can't recreate and solve it.

Submitting a Pull Request (PR)

Branch Organization

We adopt trunk-based development therefore all Pull Requests are made against the main branch because we do not use separate branches for development or for the versions we release.

Good first issue

The issues marked with ~"good first issue" label are a good starting point to familiarize yourself with the project.

Before solving the problem, please check with the maintainers that the issue is still relevant. Feel free to leave a comment on the issue to show your intention to work on it and prevent other people from unintentionally duplicating your effort.

Sending a Pull Request

Before submitting a pull request, consider MR checklist is fully resolved. You could find it in the PR template.

Local development

Prerequisites

Clone repository:

git clone git@github.com:runespoor-engineering/changelog-manager.git

Specify how to reconcile divergent branches.

git config pull.rebase false

Install pnpm globally:

npm install -g pnpm

Install package dependencies for the project.

pnpm install

If you want to open a PRs you could fork the repository. For more information read the following docs: Fork a repo, Contributing to projects.

Common commands

Install the dependencies described in your package.json files, and update the shrinkwrap file as needed.

pnpm update

Do a full, clean build of the project in the repository.

pnpm build

Asks a series of questions and then generates a -.json file in the common folder used for CHANGELOG generation.

pnpm run changelog:change

Run linters throw all the project

pnpm run lint

Run linters throw all the project with autofix

pnpm run lint:fix

Run formatter throw all the project

pnpm run format

Run formatter throw all the project with autofix

pnpm run format:fix

Run tests throw for the project

pnpm run test

Detect unimported files and packages:

pnpm run unimported

Check updates using pnpm outdated:

pnpm outdated

Generate change file:

pnpm run changelog:change

Verify change files:

pnpm run changelog:verify

Apply change files:

pnpm run changelog:apply