Opt-in [compat] tests ok ? augment ver list;

The introduction of a new version for a [compat] listed package results in nonempty status --outdated often enough that a safe opt-in way of reducing these events is desirable.

To ensure the processing happen only if the package owner[s] want it (to prevent the processing otherwise) consider an .github/workflow/autocompat.toml that at its most simple would “know” when a [compat] listed package has merged a new version which is not covered by the current Project.toml.

In that case, a temporary branch is created and the only changes are to the Project.toml (a) bumping the owned package’s version patch number (b) extending that package’s [compat] string to include the new version number (in an intelligent way, to prevent accumulating too many too specific versions)

Then run the owned pkg’s tests on this branch using the new version of the [compat] package. If the tests pass, then merging the change into the main branch with an appropriate comment and register the update.

Within the .toml file, finer control would be available. For example, selecting which external pkgs are “active” in this way (if not all [compat] entries) or providing a waiting time before a new version of some/all [compat] pkgs are processed.

This doesn’t sound entirely different from CompatHelper, except for the automatic merge parts.

1 Like

I thought it best to work with what works now with other activity that git supports, and presume a clear+clean way for the rest.
I have no experience with github action development

Is this reasonably easy to implement?
Would it be worth the CI overhead $?

From just a package developer point of view, I agree that the only thing that sounds effectively different from existing CompatHelper workflow is the automatic merge, which seems somewhat risky. CompatHelper opens a PR on a new branch with the right commit and tests will run as long as your CI is set to run on PRs. So the only step of the process that you are eliminating is the button click at the end. To have a fully automatic workflow, you’d need to automatically call Registrator as well for a new release.

:ok:

“Never Mind” - Emily Litella