Skip to content

Improve contribution and PR process #85

@keynmol

Description

@keynmol

Aim of this is to increase contribution velocity on this repository without impacting users.

Current situation

  1. If you have 2 PRs changing any two parts of the grammar, they will immediately conflict with each other because of the dramatic changes in generated code (usually those changes are not mergeable)
  2. This means parallel PRs are in constant queue and need to be updated after each merge to the master

Suggestion

  1. Grammar PRs only bring in changes to grammar.js, corpus/* or src/scanner.c - not parser.c or any other generated code
    • This will dramatically reduce the conflicts and will make all PRs more likely to be mergeable without manual updates
  2. CI still checks for parser code being generated from grammar alone, and run tests against that
  3. When we feel like a release is due, we actually generate parser code and commit it as a separate PR

Because of the CI checks, the above process should be safe, at the cost of not containing the latest-est generated code in master. Which IMO is not a big deal.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions