Contributing to ember-codemod-sort-invocations

July 14, 2026 ยท View on GitHub

Open source projects like ember-codemod-sort-invocations live on your words of encouragement and contribution. Please give feedback, report issues, or submit pull requests!

Here are some guidelines to help you and everyone else.

Local development

Install dependencies
  1. Fork and clone this repo.

    git clone git@github.com:<your-github-handle>/ember-codemod-sort-invocations.git
    
  2. Change directory.

    cd ember-codemod-sort-invocations
    
  3. Use pnpm to install dependencies.

    pnpm install
    
Check and fix errors
  1. As you write code, please check that it meets formatting and linting rules.

    pnpm lint
    
  2. You can run lint:fix to fix errors.

    pnpm lint:fix
    
Run tests
  1. When you write code, please check that all tests continue to pass.

    pnpm test
    
Add changeset to pull request
  1. To record how a pull request affects packages, you will want to add a changeset.

    The changeset provides a summary of the code change. It also describes how package versions should be updated (major, minor, or patch) as a result of the code change.

    pnpm changeset
    
Publish package
  1. Generate a personal access token in GitHub. Enable repo and read:user scopes if your repo is private. This token will be used to retrieve pull request information.

  2. Run the release:prepare script. This removes changesets, updates package versions, and updates CHANGELOGs.

    GITHUB_TOKEN=<YOUR_PERSONAL_ACCESS_TOKEN> pnpm release:prepare
    

    Note, release:prepare also updated the workspace root's version (e.g. from 0.1.1 to 0.1.2). We will use it to name the tag that will be published.

  3. Review the file changes. Commit them in a branch, then open a pull request to merge the changes to the main branch.

    git checkout -b tag-0.1.2
    git add .
    git commit -m "Tagged 0.1.2"
    git push origin tag-0.1.2
    
  4. Create a tag and provide release notes. The tag name should match the workspace root's version (e.g. 0.1.2).

  5. Publish the package.

    pnpm release:publish --otp <YOUR_ONE_TIME_PASSWORD>