rpm-software-management / mock

Mock is a tool for a reproducible build of RPM packages.
GNU General Public License v2.0
384 stars 235 forks source link

move opensuse-leap-15.4 to eol directory #1464

Closed xsuchy closed 2 months ago

xsuchy commented 2 months ago

Leap 15.4 EOLed at 07 Dec 2023 according to https://endoflife.date/opensuse

xsuchy commented 2 months ago

Seems that regexp for towncrier snippets does not like dots in filename. Should I fix the name or can we ignore it?

praiskup commented 2 months ago

Should I fix the name or can we ignore it?

I think yes. Reported here: https://github.com/sanitizers/chronographer-github-app/issues/44

webknjaz commented 2 months ago

@xsuchy I haven't checked your towncrier use yet, but it's not just the bot, the underlying tool itself parses the fragments similarly since period-delimited components have defined semantics, unless the fragment is orphaned. My immediate instinct would be fixing the file name.

xsuchy commented 2 months ago

@webknjaz I will fix the filename. That is not a problem. But I normally executed towncrier create leap-15.4.config because that seemed natural in this context and towncrier allowed it while the bot later complained.

xsuchy commented 2 months ago

File renamed.

webknjaz commented 2 months ago

The first part leap-15 is an issue number in Towncrier. You just happen not to render it. Then, there's 4 which is used for sorting if there's several fragments with that issue number that you don't want ordered randomly. And only after that, there's the category.

Have you tried towncrier check on that fragment? I think it might be a bug on their side with insufficient validation.

The bot fails because it expects the identifier to be a number. The traditional use is putting an issue or a PR ID there, which is the common pattern the bot facilitates originally. I'll need to think if that could be improved.

webknjaz commented 2 months ago

Oh, wait, the number comes after the category. So towncrier will thing that 4 is the category. Try running towncrier build --draft with this fragment. I'm pretty sure it'll either not show up at all or traceback somewhere..

praiskup commented 2 months ago

We are using a custom template: https://github.com/rpm-software-management/mock/blob/acf15e81b0c858c3dc0341ec0afbe61cfdd2cc7d/pyproject.toml#L6

And the overall use of towncrier is non-standard (the tool doesn't seem to ready to handle monorepos, and we should somehow standardize our release policies for release notes).

The commit looks good, merging! Thank you.

webknjaz commented 2 months ago

@praiskup yeah, I've found it already. For monorepos, you could have multiple configs and run towncrier once per each subproject, making multiple change log files that you'd then merge in post-processing, I suppose. You can also have multiple configs for different audiences in the same project, a-la scriv, by calling towncrier differently. If you can outline the needs, I can look into it more in-depth.