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

Various rules #153

Closed
wants to merge 47 commits into from
Closed

Various rules #153

wants to merge 47 commits into from

Conversation

Chocimier
Copy link
Contributor

Hello, here is a bunch of rules, mainly Void related. Notes:

  • I am not sure is it good to prefix with rust or go as canonical name just because software is written in such language, but at least there is no need to invent suffix and there is illusion of being futureproof, so used that where appropriate
  • networkmanager-qt could go into https://github.com/repology/repology-rules/blob/master/800.renames-and-merges/kde.yaml#L18 , but like stated in comment it needs to match at least one of prefix or suffix. Regexp like (?:kde-|kde4-|(?=.*(?:-kde5|-kf5)$))(pim-apps-libs|pim-runtime) catch that, but can't say what is performance
  • I would rather want use for xed ruleset: mint, mx instead of debuntu, but can't
  • Was anything wrong with perl:libwww merge?

Copy link
Member

@AMDmi3 AMDmi3 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great work, but that's too big to review and merge at once. I've added some change requests, but the list is by no means complete. I suggest to split it into a lot of small commits per rule or group of related rules (e.g. split/merge for the same name) so I could cherry-pick good rules into master right away, some other questionable rules into local branch for testing, and others would be left for the next review iteration after rebase.

I am not sure is it good to prefix with rust or go as canonical name just because software is written in such language

The prefixes are not added because it's written in some language, they are added because it's a module for some language, and we absolutely have to do this as collisions between modules for different languages are apparent. For end-user applications we do the opposite, e.g. remove prefixes (some repositories apply language prefixes even for appications, and module collections like crates.io are always prefixed by default).

In the future these prefixes may be converted into cleaner concept of namespaces which are separate from the project names.

networkmanager-qt could go into https://github.com/repology/repology-rules/blob/master/800.renames-and-merges/kde.yaml#L18

Thought so too at first, but on the second though it's good as it is. The megaregexp is supposed to be the easy way to automatically catch all naming variations - if it doesn't, there's no need to force it.

I would rather want use for xed ruleset: mint, mx instead of debuntu, but can't

I prefer to use more generic rulesets based on the assumption that there's flow inside packaging ecosystems, and packages are likely to migrate from derivative/extension repositories into main ones (e.g. parabola/manjaro → arch, mx/mint → ubuntu/debian, unitedrpms/rpmfusion → fedora).

However, it's easy to introduce more granular rulesets if needed. I haven't looked into most split rules yet.

Was anything wrong with perl:libwww merge?

I probably just couldn't decide for the target name, as even on CPAN there is LWP vs. libwww-perl ambiguity, plus there's that double perl tautology. Maybe that was before I've seen a lot of python:foo-python and python:python-foo projects and got used to it. perl:libwww-perl is good.

@@ -8,6 +8,11 @@
- fonts-ttf-kacst
- kacst-fonts

- setname: "fonts:kakwafont"
name:
- font-kakwafont
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't see font-kakwafont package anywhere

@@ -26,10 +26,14 @@
- { setname: acroread, namepat: "acroread[0-9.]*" }
- { setname: acroread-asianfonts, namepat: "acroread9-.*font.*", ruleset: pkgsrc }
- { setname: acroread7-asianfonts, namepat: "acroread7-.*font.*", ruleset: pkgsrc }
- { setname: acsccid, name: pcsc-acsccid }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

800.renames-and-merges/a.yaml Outdated Show resolved Hide resolved
@@ -48,6 +52,7 @@
- { setname: agda-stdlib, name: "haskell:agda-stdlib" }
- { setname: agg, name: antigraingeometry }
- { setname: agg, name: libagg }
- { setname: aiohttp-cors, name: ["python:aiohttp-cors","python:aiohttp-cors2","python:aiohttp1-cors"] }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

python:aiohttp-cors

@@ -74,6 +80,8 @@
- { setname: alsa-plugins, name: alsa-plugins-oss, addflavor: oss }
- { setname: alsamodularsynth, name: [alsa-modular-synth, ams] }
- { setname: amavisd-new, name: amavisd, ruleset: openpkg }
- { setname: amber-search, name: amber, wwwpart: dalance }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here and everywhere: 800* rules are for merges only, use of selectors like wwwpart is discouraged here. Instead, there should be amber in 850*

@@ -1,5 +1,6 @@
# vim: tabstop=39 expandtab softtabstop=39

- { name: gamehub, verpat: ".*master", rolling: true }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is an actual tag, so that's not rolling. snapshot, more likely.

@@ -32,6 +32,7 @@
- { name: kcron, verpat: "[0-9]+\\.[0-9]*[13579]\\..*", devel: true }
- { name: kdav, verpat: "[0-9]+\\.[0-9]*[13579]\\..*", devel: true }
- { name: kde-common, verpat: "[0-9]+\\.[0-9]*[13579]\\..*", devel: true }
- { name: kde5, verpat: "([0-9]+(\\.[0-9]+){2}).*", setver: $1 }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I assume these are metaports. Should be removed via 200.blacklists/metaports.yaml

@@ -74,6 +76,7 @@
- { name: lugaru, verpat: "[0-9]{3}.*", ignore: true } # dates and snapshots
- { name: lugaru, verpat: "201[56].*", outdated: true } # 1.2 from 2017
- { name: luit-xterm, verpat: "20[0-9]{6}", setver: "2.0-$0" }
- { name: lxde, noscheme: true }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Likewise, metaports should be removed.

@@ -134,12 +134,14 @@
- { name: libssh, ver: ["0.11"], incorrect: true }
- { name: libssh, ruleset: gobolinux, untrusted: true } # accused of fake 0.11
- { name: libstemmer, noscheme: true }
- { name: libtcd, verpat: "([0-9]+\\.[0-9]+\\.[0-9]+)[-_.]?[rp]([0-9]+)", setver: "$1.$2" }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Better just add any_is_patch: true for it (and remove verpat). Additionally, verpat: "(.*)p(.*)", setver: "$1r$2", ruleset: gentoo to keep Gentoo happy as they cannot into arbitrary post-release suffixes.

- { name: libtelnet, verpat: ".*\\+[0-9a-f]{7}", incorrect: true } # nix fake
- { name: libtorrent, verpat: "20[0-9]{6}.*", ignore: true } # nix fake
- { name: libtorrent, verpat: "[0-9]+\\.[0-9]+\\.[0-9]*[13579]", devel: true } # http://rakshasa.github.io/rtorrent/
- { name: libtxc-dxtn, ver: "1.1", ruleset: solus, incorrect: true }
- { name: libtxc-dxtn, ruleset: solus, untrusted: true }
- { name: libubox, noscheme: true }
- { name: libui, verpat: "(?:0.)?([.0-9]*[0-9])\\.?(?:a|alpha)", setver: "alpha$1" }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd just verpat: "[0-9].*a", incorrect: true

@Chocimier
Copy link
Contributor Author

For end-user applications we do the opposite, e.g. remove prefixes

Brillant.

Rules split, some changes applied, as day is going to end. I will rework it more carefully and apply the rest of requested changes until Tuesday.

I don't see |font-kakwafont| package anywhere

Was not indexed on x86_64 Void for some reason, scheduled for rebuild.

Others https://repology.org/metapackages/?search=acsccid (lite with |addflavor|)?
→ |python:aiohttp-cors|
|-bin| requires |addflavor: true|
→ |btrfs-backup|
|font-firacode| as well
|pam-pam-radius-auth| as well
|schilytools| looks more proper.
+- { name: "fonts:ipa", verpat: "([0-9]{3})\.([0-9]{2})", setver: $1$2 }
+- { name: doom3, verpat: "1.3.([0-9]{2,})", ruleset: gentoo, setver: "1.3.1.$1" }
+- { name: gamehub, verpat: ".*master", rolling: true }

Changed

adapta-gtk-theme-3.94 adapta-gtk-theme-wal (with addflavor)?

Wildcard rule catch that, flavor added.

@AMDmi3
Copy link
Member

AMDmi3 commented Feb 11, 2019

(first bunch of rules merged, you can rebase)

AMDmi3 pushed a commit that referenced this pull request Feb 11, 2019
AMDmi3 added a commit that referenced this pull request Feb 11, 2019
AMDmi3 added a commit that referenced this pull request Feb 11, 2019
AMDmi3 added a commit that referenced this pull request Feb 11, 2019
@Chocimier
Copy link
Contributor Author

updated, one new rule for bff

@@ -32,6 +32,8 @@
- { setname: actiona, name: actionaz, ruleset: chocolatey }
- { setname: activeio, name: activemq-activeio }
- { setname: adabooch, name: [booch95,gnat-booch95] }
- { setname: adapta-gtk-theme, name: [adapta,gtk-theme-adapta] }
- { setname: adapta-gtk-theme, namepat: "adapta-gtk-theme.*", addflavor: true }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, this is too wide. Version suffixes (including -legacy and alike) should not be flavored, variants should be. That is, only colorpack and wal variants need addflavor. Better just to list them verbatim here, without regexps.

@@ -3,6 +3,7 @@
- { setname: "python:3to2", name: 3to2 }
- { setname: "python:absl-py", name: "python:absl", ruleset: macports } # there's python:absl in pypi which is different package
- { setname: "python:absl-py", name: absl-py }
- { setname: "python:aiohttp-cors", name: [aiohttp-cors,"python:aiohttp-cors2","python:aiohttp1-cors"] }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

python:aiohttp-cors-gns3 with addflavor

@@ -81,6 +81,7 @@
- { setname: alsa-plugins, name: alsa-plugins-oss, addflavor: oss }
- { setname: alsamodularsynth, name: [alsa-modular-synth, ams] }
- { setname: amavisd-new, name: amavisd, ruleset: openpkg }
- { setname: amber-search, name: "rust:amber" }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This doesn't match anything

Copy link
Member

@AMDmi3 AMDmi3 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ready for another rebase

@@ -29,6 +29,8 @@
- { name: allure, wwwpart: allure-framework/allure2, setname: allure-report }
- { name: allure, warning: "please classify me" }

- { name: amber, setname: amber-search, wwwpart: dalance }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This doesn't match anything

@@ -67,6 +67,7 @@
- { setname: bitdefender, name: bdc, ruleset: openpkg }
- { setname: bitkeeper, name: bitkeeper-development, weak_devel: true }
- { setname: bitkeeper, name: bitkeeper-production }
- { setname: blackbird-gtk-theme, name: [blackbird-themes,gtk-theme-blackbird,xfce-theme-blackbird] }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it would be better to add a namespace for themes and use it. E.g. gtktheme:blackbird.

@@ -98,6 +98,8 @@

- { name: "python:antlr", wwwpart: [antlr.org, antlr2.org], setname: antlr }

- { name: "python:codespell", setname: codespell, wwwpart: "github.com/codespell-project/codespell" }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This belongs to 800 ruleset, there's no ambiguity.

@@ -66,6 +66,8 @@
- { name: cmt, ruleset: openbsd, setname: ladspa-cmt }
# otherwise Cross platform configuration management environment

- { name: cozy, setname: cozy-audiobooks, wwwpart: geigi }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Rule for solus package is needed, may use summpart: "audio book" for it. And in accordance with #56, would be nice to also add wwwpart: cozy.io rule (renaming to something like cozy-cloud), and corresponding warning rule.

@@ -46,6 +46,9 @@
- fira-fonts
- fira-sans
- fira-webfont
- font-fira-otf
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I won't merge these, repository naming is ambigous.

@@ -37,6 +37,7 @@
- { setname: hugin, name: [hugin-app,hugin-tools], addflavor: true }
- { setname: hugo-sitegen, name: "go:hugo" }
- { setname: hunspell, name: [libhunspell,libhunspell1.3], addflavor: lib }
- { setname: hunspell-ru-ru-ieyo, name: hunspell-ru-aot-ieyo }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Judging by download name, more correct name would be hunspell-ru-ru-aot-ieyo

@@ -8,7 +8,7 @@
- { setname: libarchive, name: libarchive-devel, weak_devel: true }
- { setname: libarchive, name: libarchive3 }
- { setname: libatomic-ops, name: [atomic-ops,libatomicops] }
- { setname: libcap, name: [libcap2,libcap1,compat-libcap1] }
- { setname: libcap, name: [libcap2,libcap1,compat-libcap1,libcap-pam] }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be a separate rule with addflavor

@@ -39,6 +39,7 @@
- { setname: opencl-headers, name: [khronos-opencl-headers,opencl,opencl-cpp-headers,opencl-headers-1-2,opencl-headers12,opencl2-headers] }
- { setname: opencollada, name: libopencollada }
- { setname: opencore-amr, name: libopencore-amr0 }
- { setname: opencpn-plugin-gshhs, name: [opencpn-gshhs,opencpn-gshhs-crude] }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd introduce opencpn: namespace

@@ -87,6 +87,7 @@
- { setname: pkgconf, name: pkgconfig, ruleset: ravenports } # XXX
- { setname: plasma-browser-integration, name: plasma5-plasma-browser-integration }
- { setname: plasma-integration, name: [plasma5-integration,plasma5-plasma-integration] }
- { setname: plasma5-applets-active-window-control, name: [plasma-active-window-control,plasma-applet-active-window-control,plasmoid-active-window-control] } # normalize all plasma applets?
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd introduce plasma: namespace with corresponding wildcard rules. Outside of this PR, since this would require some testing.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes, please do so

@@ -35,6 +35,7 @@
- { setname: "python:cld2", name: pycld2 }
- { setname: "python:colorama", name: "python:colorama-0.3.3" }
- { setname: "python:colorama", name: colorama } # XXX: make upstream use prefix
- { setname: "python:configparser", name: [configparser,"python:backports.configparser"] }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

backports bit needs flavor

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Got it. But here situation is not that python:backports.configparser is a backport of python:configparser. All packages catched are same backport of standard(?) module from python 3.5.

@Chocimier
Copy link
Contributor Author

rebased

@AMDmi3
Copy link
Member

AMDmi3 commented Mar 21, 2019

Done. Next iteration will probably be the last.

@AMDmi3
Copy link
Member

AMDmi3 commented Jun 10, 2020

Finished in #375.

@AMDmi3 AMDmi3 closed this Jun 10, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants