There may still be occasions where old systems need to be upgraded rather than reinstalled. Currently portage-2.1.6.7_p1 is being held in the tree, p.masked, for this purpose, however it needs an eselect. Until recently, eselect-1.2.15 sufficed, but this was removed from the tree. Would it be possible to keep an EAPI=0 revision of eselect-1.2.18 in the tree (or restore and p.mask 1.2.15) for this purpose, slated for removal when portage-2.1.6.7_p1 is also removed? Reproducible: Always
EAPI 2 was approved in 2008, therefore I don't see much point in this. Especially, several of eselect's dependencies have no ebuilds with EAPI 0 left, e.g. sys-apps/coreutils (EAPI 3) or sys-apps/file (EAPI 2).
The EAPI of eselect's direct dependencies (at least for 1.2.15 or 1.2.18) don't matter as long as they exist already on the end-user's system (they did in my case) as eselect can build against the currently-installed version rather than the currently-in-tree one. That said, I will attempt to solve this via an overlay rather than directly in the portage tree.
I've restored eselect-1.2.15.ebuild from the attic.