Hello folks,
I would like to inform you all, that GLEP-81 migration has been finally
done. All existing packages got migrated and no ones left.
On Sun, 10 Jul 2022, Anna wrote:
On 2022-07-09 23:37, Conrad Kostecki wrote:
I would like to inform you all, that GLEP-81 migration has been
finally done. All existing packages got migrated and no ones left.
What to do with user.eclass now? It's already marked @DEPRECATED, do
we want it @DEAD and eventually removed?
On Sun, 10 Jul 2022, Anna wrote:
On 2022-07-09 23:37, Conrad Kostecki wrote:
I would like to inform you all, that GLEP-81 migration has been
finally done. All existing packages got migrated and no ones left.
Great work, thank you!
What to do with user.eclass now? It's already marked @DEPRECATED, do
we want it @DEAD and eventually removed?
The eclass dies in EAPI 8 if called from an ebuild outside the acct-* category. We could extend this to EAPIs 6 and 7 (but it might cause
problems for overlays).
Also, not sure if the @DEPRECATED tag should be used for an eclass
that
is still indirectly inherited by other eclasses.
How about attached patch?
Ulrich
From 49006bdb82f321c359dcf8f0f78893ccdf0e6be7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ulrich=20M=C3=BCller?= <ulm@gentoo.org>
Date: Sun, 10 Jul 2022 09:14:19 +0200
Subject: [PATCH] user.eclass: Warn about eclass usage in all EAPIs MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Remove @DEPRECATED tag because this is not a removal candidate.
Signed-off-by: Ulrich Müller <ulm@gentoo.org>
---
eclass/user.eclass | 24 +++++++++++++-----------
1 file changed, 13 insertions(+), 11 deletions(-)
diff --git a/eclass/user.eclass b/eclass/user.eclass
index d5b827d2e76b..b4f63ffab4a2 100644
--- a/eclass/user.eclass
+++ b/eclass/user.eclass
@@ -7,25 +7,27 @@
# Michał Górny <mgorny@gentoo.org> (NetBSD)
# @SUPPORTED_EAPIS: 6 7 8
# @BLURB: user management in ebuilds
-# @DEPRECATED: acct-user/acct-group packages
# @DESCRIPTION:
# The user eclass contains a suite of functions that allow ebuilds
# to quickly make sure users in the installed system are sane.
case ${EAPI} in
- 6|7) ;;
- 8)
- if [[ ${CATEGORY} != acct-* ]]; then - eerror "In EAPI ${EAPI}, packages must not
inherit user.eclass"
- eerror "unless they are in the acct-user or
acct-group category."
- eerror "Migrate your package to GLEP 81
user/group management,"
- eerror "or inherit user-info if you need only
the query functions."
- die "Invalid \"inherit user\" in EAPI ${EAPI}"
- fi
- ;;
+ 6|7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
esac
+if [[ ${CATEGORY} != acct-* ]]; then
+ eerror "Packages must not inherit user.eclass unless they are" + eerror "in the acct-user or acct-group category." + eerror "Migrate your package to GLEP 81 user/group management,"
+ eerror "or inherit user-info if you need only the query functions."
+ if [[ ${EAPI} != [67] ]]; then + die "Invalid \"inherit user\"" + else
+ eerror "This message will become fatal in EAPI ${EAPI}
on 2023-01-01"
+ fi
+fi
+
if [[ -z ${_USER_ECLASS} ]]; then
_USER_ECLASS=1
What to do with user.eclass now? It's already marked @DEPRECATED, doOn Sun, 10 Jul 2022, Anna wrote:
we want it @DEAD and eventually removed?
The eclass dies in EAPI 8 if called from an ebuild outside the acct-* category. We could extend this to EAPIs 6 and 7 (but it might cause
problems for overlays).
Also, not sure if the @DEPRECATED tag should be used for an eclass that
is still indirectly inherited by other eclasses.
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 546 |
Nodes: | 16 (2 / 14) |
Uptime: | 01:19:43 |
Calls: | 10,387 |
Calls today: | 2 |
Files: | 14,061 |
Messages: | 6,416,728 |