mm1ke / gentoo-scripts

Checks the Gentoo Portage tree for various problems
https://gentooqa.levelnine.at/
15 stars 2 forks source link

EAPI-7 ideas #51

Open jonasstein opened 6 years ago

jonasstein commented 6 years ago

https://dev.gentoo.org/~ulm/pms/7-draft/eapi-cheatsheet-nocombine.pdf in EAPI=7

mm1ke commented 6 years ago

I was thinking alot about your idea and also what i could check in regards to EAPI7.

One question: dolib and libopts: both are not allowed in EAPI7. I might be wrong here, but since it's not allowed it wouldn't be possible to use them in EAPI7 ebuilds anyway, wouldn't it? (in contrast to obsolete features, which could be still used). This means the check would only be interesting in EAPI0-6 ebuilds in order to know what to change before going to EAPI7? (which again would be checked - i guess by repoman - anyway?) Anyway, adding a check won't be difficult, but i guess it's only interesting for EAPI0-6 ebuilds?

Another idea: What about checking for specific versionator functions which can be used directly in EAPI7. mgorny provided a nice list about what can be replaced with what function in EAPI7: https://dev.gentoo.org/~mgorny/articles/the-ultimate-guide-to-eapi-7.html#replacing-versionator-eclass-uses

Further more:

Additionally, eutils.eclass stops implicitly providing the functions that were split out of it. If you need one of the following functions, you need to explicitly inherit the eclass providing them:

desktop.eclass — make_desktop_entry, make_session_desktop, domenu, doicon and their new variants epatch.eclass — epatch (banned) estack.eclass — estack, evar, eshopts, eumask ltprune.eclass — prune_libtool_files (banned) preserve-libs.eclass — preserve_old_lib vcs-clean.eclass — e_clean

This is something which we should check too and which i already mentioned in https://github.com/mm1ke/gentoo-scripts/issues/24 ;)