Skip to content

Semantic Versioning & Automated Changelog #79

@jamcar23

Description

@jamcar23

Flexpilot should switch to using semantic versioning with the following convention:

  • Major: OP versions
  • Minor: Flexpilot feature releases
  • Patch: Flexpilot bug fixes

At the same time FP should replace OP's changelog with its own. It can still include OP changes but only when FP's Major version number changes. The managing of this changelog should happen automatically as part of the CI pipeline, as such we'll need a python script to do the following:

  • Add commit messages to changelog file.
  • Show op param changes: it'll be more helpful to the user and the added changes can come the pr diff of the file.
  • Show OP changes when op version updates
  • Manage version number based on OP version / by looking at the committed changes and seeing if the messages starts with feat or fix.
  • Automatically manage merge conflicts so that changelog is in order based on when the PR got merged

Other things to consider doing at the same time:

  • Setup pipeline step to create tags for src & r2++ before merging in a major change.
  • Automatically publish github release when r2++ is updated.

Things to think about more:

  • What will the version number be for -ci branches? How will we avoid conflicts?

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions