Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-dev@l.g.o
Cc: python@g.o, "Michał Górny" <mgorny@g.o>
Subject: [gentoo-dev] [PATCH 00/25] python-r2 eclass suite
Date: Sat, 29 Feb 2020 20:42:33
Message-Id: 20200229204201.99290-1-mgorny@gentoo.org
1 Hello,
2
3 Here's a first proposed version of python-r2 suite. This aims to switch
4 the eclasses into more proactive versioning model over deprecating
5 and removing API in place. The main idea is that for the majority
6 of ebuilds (and especially those that do not trigger QA warnings right
7 now), the migration should be as simple as applying a few sed patterns.
8
9 Another implication of this model is that I'm going to provide a simple
10 conversion script once the eclasses are ready. While it won't be able
11 to fix all possible issues, it should be able to fix the common renames,
12 and catch the removed bits.
13
14 The list of changes included so far:
15
16 - all deprecated things (read: those triggering deprecation warnings)
17 have been removed or explicitly banned
18
19 - python.eclass / distutils.eclass failed migration checks have been
20 removed
21
22 - some functions were explicitly made internal:
23
24 a. python_wrapper_setup -- called by python_setup
25
26 b. python_is_installed -- used by any-r1 python_setup
27
28 c. python_export -- some bits are used only internally, others are now
29 available via python_get* only
30
31 - multi-impl eclass is now called python-multi-r2, to stop confusing
32 people into using it
33
34 - distutils-r1 now passes --skip-build to install phase
35
36 - in python-single-r1, PYTHON_MULTI_USEDEP has been renamed back
37 to PYTHON_USEDEP, for consistency between eclasses
38 (PYTHON_SINGLE_USEDEP is still a thing)
39
40 I'm open to further suggestions.
41
42 --
43 Best regards,
44 Michał Górny
45
46 Michał Górny (25):
47 eclass: Copy python-r1 suite to python-r2
48 distutils-r2.eclass: Remove EXAMPLES
49 distutils-r2.eclass: Remove no-op subphase defaults
50 distutils-r2.eclass: Remove distutils.eclass checks
51 distutils-r2.eclass: Make all old QA warnings fatal
52 python-r2.eclass: Remove python_gen_usedep
53 python-utils-r2.eclass: Remove python.eclass checks
54 python-utils-r2.eclass: Mark python_wrapper_setup private
55 python-utils-r2.eclass: Mark python_is_installed private
56 python-utils-r2.eclass: Add missing @INTERNAL to private func
57 python-utils-r2.eclass: Fix obsolete docs on python_export_best
58 python-utils-r2.eclass: Mark python_export private
59 python-utils-r2.eclass: Remove PYTHON_SITEDIR export
60 python-utils-r2.eclass: Remove PYTHON_INCLUDEDIR export
61 python-utils-r2.eclass: Remove PYTHON_LIBPATH export
62 python-utils-r2.eclass: Remove PYTHON_CFLAGS export
63 python-utils-r2.eclass: Remove PYTHON_LIBS export
64 python-utils-r2.eclass: Remove PYTHON_CONFIG export
65 python-utils-r2.eclass: Remove PYTHON_SCRIPTDIR export
66 python-single-r2.eclass: PYTHON_MULTI_USEDEP → PYTHON_USEDEP
67 distutils-r2.eclass: Pass --skip-build to install
68 eclass: python-r2.eclass → python-multi-r2.eclass
69 python-any-r2.eclass: Verbosely report used implementation
70 python-single-r2.eclass: Report used impl verbosely
71 python-multi-r2.eclass: Report python_setup impl verbosely
72
73 eclass/distutils-r2.eclass | 1112 +++++++++++++++++++++++++++++
74 eclass/python-any-r2.eclass | 360 ++++++++++
75 eclass/python-multi-r2.eclass | 783 ++++++++++++++++++++
76 eclass/python-single-r2.eclass | 509 +++++++++++++
77 eclass/python-utils-r2.eclass | 1191 +++++++++++++++++++++++++++++++
78 eclass/tests/distutils-r2.sh | 98 +++
79 eclass/tests/python-utils-r2.sh | 250 +++++++
80 7 files changed, 4303 insertions(+)
81 create mode 100644 eclass/distutils-r2.eclass
82 create mode 100644 eclass/python-any-r2.eclass
83 create mode 100644 eclass/python-multi-r2.eclass
84 create mode 100644 eclass/python-single-r2.eclass
85 create mode 100644 eclass/python-utils-r2.eclass
86 create mode 100755 eclass/tests/distutils-r2.sh
87 create mode 100755 eclass/tests/python-utils-r2.sh
88
89 --
90 2.25.1

Replies

Subject Author
[gentoo-dev] [PATCH 01/25] eclass: Copy python-r1 suite to python-r2 "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 02/25] distutils-r2.eclass: Remove EXAMPLES "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 03/25] distutils-r2.eclass: Remove no-op subphase defaults "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 04/25] distutils-r2.eclass: Remove distutils.eclass checks "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 05/25] distutils-r2.eclass: Make all old QA warnings fatal "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 06/25] python-r2.eclass: Remove python_gen_usedep "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 07/25] python-utils-r2.eclass: Remove python.eclass checks "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 08/25] python-utils-r2.eclass: Mark python_wrapper_setup private "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 09/25] python-utils-r2.eclass: Mark python_is_installed private "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 10/25] python-utils-r2.eclass: Add missing @INTERNAL to private func "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 11/25] python-utils-r2.eclass: Fix obsolete docs on python_export_best "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 12/25] python-utils-r2.eclass: Mark python_export private "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 13/25] python-utils-r2.eclass: Remove PYTHON_SITEDIR export "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 14/25] python-utils-r2.eclass: Remove PYTHON_INCLUDEDIR export "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 15/25] python-utils-r2.eclass: Remove PYTHON_LIBPATH export "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 16/25] python-utils-r2.eclass: Remove PYTHON_CFLAGS export "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 17/25] python-utils-r2.eclass: Remove PYTHON_LIBS export "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 18/25] python-utils-r2.eclass: Remove PYTHON_CONFIG export "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 19/25] python-utils-r2.eclass: Remove PYTHON_SCRIPTDIR export "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 20/25] python-single-r2.eclass: PYTHON_MULTI_USEDEP → PYTHON_USEDEP "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 21/25] distutils-r2.eclass: Pass --skip-build to install "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 22/25] eclass: python-r2.eclass → python-multi-r2.eclass "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 23/25] python-any-r2.eclass: Verbosely report used implementation "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 24/25] python-single-r2.eclass: Report used impl verbosely "Michał Górny" <mgorny@g.o>
[gentoo-dev] [PATCH 25/25] python-multi-r2.eclass: Report python_setup impl verbosely "Michał Górny" <mgorny@g.o>