On Wed, Dec 16, 2020 at 2:45 AM Miro HronĨok <mhroncok(a)redhat.com> wrote:
On 12/9/20 7:44 PM, Ben Cotton wrote:
> == Scope ==
> * Proposal owners:
> We will go through the Fedora release and determine what nodejs
> packages Fedora should package. We will implement nodejs library
> bundling on those we already own. For those that we do not own, we
> will work with their owners to implement nodejs library bundling.
>
> As packages implement nodejs library bundling, we will monitor the
> nodejs libraries and note which ones are no longer required. When
> they are no longer required, we will retire them, if we own them. If
> we do not own them, we will work with the owners to retire them, if
> they wish.
>
> * Other developers:
> For Fedora packagers whose package rely on nodejs libraries, please
> contact the [[https://developer.fedoraproject.org/tech/languages/nodejs/SIG.html|
> Nodejs SIG]] and we will help you find the easiest way to bundle your
> nodejs libraries.
>
> For Fedora nodejs library packages, look to see what depends on your
> library. If it looks like you can do so, retire your nodejs library.
> If you would like, give the
> [[https://developer.fedoraproject.org/tech/languages/nodejs/SIG.html|
> Nodejs SIG]] admin to your nodejs libraries, and they will work
> through the process for you.
I thought about this a bit more and I would really appreciate to see at least
some preliminary list of packages that will be retired/removed (completely fine
if it's defined as "all nodejs-* packages except subpackages of nodejs itself
and nodejs-packaging") and the *list of dependent packages that are impacted by
this change*.
I've done some preliminary check with:
https://pagure.io/releng/blob/master/f/scripts/find_unblocked_orphans.py
$ python find_unblocked_orphans.py --skip-orphans $(repoquery
--repo=rawhide-source -a | pkgname | grep ^nodejs- | grep -v ^nodejs-packaging$
| sort | uniq)
...
The following packages require above mentioned packages:
Depending on: nodejs-backbone (2), status change: 2017-08-04 (175 weeks ago)
beets (maintained by: maha, mbaldessari)
beets-plugins-1.4.9-8.fc33.noarch requires js-backbone = 1.3.3-10.fc34
python-notebook (maintained by: churchyard, python-sig)
python3-notebook-6.1.4-1.fc34.noarch requires js-backbone =
1.3.3-10.fc34
Depending on: nodejs-generic-pool (1), status change: 2020-08-24 (16 weeks ago)
statsd (maintained by: noodles, piotrp)
statsd-0.8.6-1.fc34.noarch requires npm(generic-pool) = 2.2.2
Depending on: nodejs-shelljs (1), status change: 2020-05-13 (31 weeks ago)
notepadqq (maintained by: orphan)
notepadqq-1.4.8-13.fc33.x86_64 requires nodejs-shelljs = 0.8.4-2.fc33
Depending on: nodejs-typescript (1), status change: 2020-11-22 (3 weeks ago)
gnome-shell-extension-pop-shell (maintained by: carlwgeorge, dustymabe)
gnome-shell-extension-pop-shell-1.0.0-3.20201130gitee943b8.fc34.src
requires
npm(typescript) = 4.0.2
Depending on: nodejs-underscore (11), status change: 2020-05-13 (31 weeks ago)
R-V8 (maintained by: qulogic)
R-V8-3.4.0-1.fc34.src requires js-underscore = 1.10.2-3.fc34
R-V8-3.4.0-1.fc34.x86_64 requires js-underscore = 1.10.2-3.fc34
beets (maintained by: maha, mbaldessari)
beets-plugins-1.4.9-8.fc33.noarch requires js-underscore = 1.10.2-3.fc34
coffee-script (maintained by: jsmith, nodejs-sig, patches, vjancik)
coffee-script-1.10.0-14.fc33.src requires npm(underscore) = 1.10.2
python-f5-sdk (maintained by: xavierb)
python-f5-sdk-3.0.21-7.fc33.src requires js-underscore = 1.10.2-3.fc34
python-f5-sdk-doc-3.0.21-7.fc33.noarch requires js-underscore =
1.10.2-3.fc34
python-h2 (maintained by: eclipseo, python-sig)
python-h2-4.0.0-1.fc34.src requires js-underscore = 1.10.2-3.fc34
python-h2-doc-4.0.0-1.fc34.noarch requires js-underscore = 1.10.2-3.fc34
python-hyperlink (maintained by: eclipseo, python-sig)
python-hyperlink-20.0.1-1.fc34.src requires js-underscore =
1.10.2-3.fc34
python-hyperlink-doc-20.0.1-1.fc34.noarch requires js-underscore =
1.10.2-3.fc34
python-notebook (maintained by: churchyard, python-sig)
python3-notebook-6.1.4-1.fc34.noarch requires js-underscore =
1.10.2-3.fc34
perl-Mojolicious-Plugin-AssetPack (maintained by: eseyman)
perl-Mojolicious-Plugin-AssetPack-2.10-1.fc34.src requires coffee-script
=
1.10.0-14.fc33
python-webassets (maintained by: dcallagh, kumarpraveen, pjp, sundaram)
python-webassets-0.12.1-18.fc34.src requires /usr/bin/coffee
vim-syntastic (maintained by: praiskup)
vim-syntastic-coffee-3.10.0-7.fc33.noarch requires coffee-script =
1.10.0-14.fc33
openqa (maintained by: adamwill)
openqa-4.6-59.20201103git91baf79.fc34.noarch requires
perl(Mojolicious::Plugin::AssetPack) = 2.10,
perl(Mojolicious::Plugin::AssetPack::Util)
openqa-4.6-59.20201103git91baf79.fc34.src requires
perl(Mojolicious::Plugin::AssetPack) = 2.10
openqa-common-4.6-59.20201103git91baf79.fc34.noarch requires
perl(Mojolicious::Plugin::AssetPack) = 2.10
openqa-devel-4.6-59.20201103git91baf79.fc34.noarch requires
perl(Mojolicious::Plugin::AssetPack) = 2.10
...
Is this any accurate?
We plan on only removing nodejs library leaves (packages that nothing
depends on for running or building).
I've never ran that script looking for packages that nothing depends
on, and I'm not sure I'm looking at the output correctly.
Would I look at the "FTBFS (rawhide) (not depended on) (740):"
section? Are those the leaves?
Anyway, there would be some variation on what you have there, if that
is correct. It would be more ...
dnf repoquery --qf="%{source_name}" -a | grep ^nodejs- | grep -v
^nodejs-packaging% | sort -u -o nodejs.sources
vi nodejs.sources # remove the non-noarch packages, any any others we need to
python3 find_unblocked_orphans.py --skip-orphans $(cat nodejs.sources)
Troy