Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Separate stable releases from unstable ones #753

Closed
cheese1 opened this issue Mar 8, 2019 · 7 comments · Fixed by #948
Closed

Separate stable releases from unstable ones #753

cheese1 opened this issue Mar 8, 2019 · 7 comments · Fixed by #948
Assignees
Labels
groomed Medium Priority This ticket has a medium priority type.feature New feature
Milestone

Comments

@cheese1
Copy link

cheese1 commented Mar 8, 2019

It would be great to be able to exclude specific patterns.
Sometime one does not want to get notified of alpha,beta,pre- and test-releases, release-candidates....

it worked in such a way with cnucnu and i always miss that feature.
i for my part almost never package unstable software and i think most packagers do so.

@Zlopez Zlopez added type.feature New feature Medium Priority This ticket has a medium priority labels Mar 9, 2019
@Zlopez
Copy link
Contributor

Zlopez commented Mar 9, 2019

I actually thought about this feature recently. I just need to think how to implement this. Currently I have few ideas in the head:

  1. Let this be handled by the version scheme - it should mark them as pre-release versions
  2. Let this on user - add new field, where user could specify, which versions should be ignored, every version containing any string in this field will be ignored.
  3. Combine the two options above, let something be handled by version scheme and rest by user.

Either case will help with false notifications about new versions and will made versions on the project more readable.

@cheese1
Copy link
Author

cheese1 commented Mar 12, 2019

i think a way to accomplish that would be:

  • have a list of "stable" versions (the full list minus alpha, beta,...)
  • have a second list of all versions (we already have that)
  • have a predefined regex to define the "minus"-list, it should be possible to redefine that regex

new tickets (for fedora) should be triggered for the "stable" list, in my opinion.
the output via api should have a new line version_stable and a new array versions_stable, eg:

{
...
"updated_on": 1482495004.0,
"version": "2.12-alpha",
"version_stable": "2.10",
"version_url": "zero-install",
"versions": [
"2.12-alpha",
"2.11-beta",
"2.10",
"2.9.1",
"2.9",
"2.8",
"2.7"
],
"versions_stable": [
"2.10",
"2.9.1",
"2.9",
"2.8",
"2.7"
]
}

@Zlopez
Copy link
Contributor

Zlopez commented Mar 12, 2019

This sounds like a good idea. I will look at it more closely, when I start working on this issue.

@yarda
Copy link

yarda commented Nov 26, 2019

I have the same problem with Tcl package in Fedora (https://bugzilla.redhat.com/show_bug.cgi?id=1488695). I just want bugzilla reports about stable releases, not alphas, but it seems:

  • I cannot change the regex in anitya, becase there are already mappings for more downstreams and I don't want to break them (maybe they are interested in getting notifications about alphas)
  • Adding new project like e.g. tcl-stable with different regex could help, but I consider it as a dirty hack which should be avoided

So at the moment there is Fedora bugzilla about development version of the package, but I am missing notifications about stable updates (this is what recently happened in https://bugzilla.redhat.com/show_bug.cgi?id=1488695).

@Zlopez
Copy link
Contributor

Zlopez commented Nov 27, 2019

This needs to be added as a monitoring option for Anitya (something like "Monitoring - stable"). So we could only report versions that the maintainer is really interested in. This way we don't brake the already setup projects and it will affect only Fedora maintainers.

@Zlopez Zlopez added this to the 1.0 milestone Mar 16, 2020
@Zlopez Zlopez added the groomed label May 25, 2020
@Zlopez
Copy link
Contributor

Zlopez commented Jul 2, 2020

Thanks to #898, the user will be able specify filters that will be used on any retrieved versions. This will allow user to ignore some of the versions released by upstream.

I still need to look at the option of marking the versions as pre-release and sending the message containing separated stable versions.

@Zlopez Zlopez changed the title remove beta releases Separate stable releases from other releases Jul 2, 2020
@Zlopez Zlopez changed the title Separate stable releases from other releases Separate stable releases from unstable ones Jul 2, 2020
@Zlopez Zlopez self-assigned this Jul 7, 2020
@Zlopez
Copy link
Contributor

Zlopez commented Jul 7, 2020

Here is the list of changes that needs to be done to implement this ticket:

  • Add pre-release property to ProjectVersion object
  • Add pre-release pattern field to Project (same as in Add filter field for versions #944)
  • Add property stable_versions to project to get versions without pre-release versions
  • Add new field to project edit page (with tooltip), which allows you to set the pre-release pattern (same as in Add filter field for versions #944)
  • Add new field to create_project and edit_project in utilities.py (same as in Add filter field for versions #944)
  • Change new_project and edit_project UI methods (same as in Add filter field for versions #944)
  • Update versions classes to work with pre-release pattern field on Project
  • Add field versions_stable to ProjectVersionUpdated message

Notes:

  • The versions introduced before this change will be considered as stable.

Zlopez added a commit to Zlopez/anitya that referenced this issue Jul 8, 2020
* Add pre-release property to version
* Add pre-release filter column to project
* Change prerelease method on version classes
* UI changes for the new field
* Add field `versions_stable` to `ProjectVersionUpdated`

Closes fedora-infra#753

Signed-off-by: Michal Konečný <[email protected]>
Zlopez added a commit to Zlopez/anitya that referenced this issue Jul 9, 2020
* Add pre-release property to version
* Add pre-release filter column to project
* Change prerelease method on version classes
* UI changes for the new field
* Add field `versions_stable` to `ProjectVersionUpdated`

Closes fedora-infra#753

Signed-off-by: Michal Konečný <[email protected]>
Zlopez added a commit to Zlopez/anitya that referenced this issue Jul 9, 2020
* Add pre-release property to version
* Add pre-release filter column to project
* Change prerelease method on version classes
* UI changes for the new field
* Add field `versions_stable` to `ProjectVersionUpdated`

Closes fedora-infra#753

Signed-off-by: Michal Konečný <[email protected]>
Zlopez added a commit that referenced this issue Jul 15, 2020
* Add pre-release property to version
* Add pre-release filter column to project
* Change prerelease method on version classes
* UI changes for the new field
* Add field `versions_stable` to `ProjectVersionUpdated`

Closes #753

Signed-off-by: Michal Konečný <[email protected]>
@Zlopez Zlopez mentioned this issue Jan 4, 2021
2 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
groomed Medium Priority This ticket has a medium priority type.feature New feature
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants