Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 922155 - dev-util/ruff-0.1.13: multiple QA issues
Summary: dev-util/ruff-0.1.13: multiple QA issues
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Patrick McLean
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-01-15 08:01 UTC by Michał Górny
Modified: 2025-03-24 05:27 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2024-01-15 08:01:56 UTC
https://gitweb.gentoo.org/repo/gentoo.git/tree/dev-util/ruff/ruff-0.1.13.ebuild

> PYTHON_COMPAT=( python3_{9..12} )

I'm pretty sure pkgcheck would emit OldPythonCompat about this if you used it to test commits.

Interspersed out-of-order LICENSE, BDEPEND, LICENSE again, SLOT, KEYWORDS, LICENSE again make the logic very hard to follow.

> 	[[ -n ${PATCHES[*]} ]] && eapply "${PATCHES[@]}"
>	eapply_user

This is known as `default`.  However, you really ought to call `distutils-r1_src_prepare` here.

>	python_copy_sources

You never use copied sources anywhere.

>	distutils-r1_src_configure

Besides being called in the wrong phase, it's actually a no-op, so you don't need to call it at all.  Yes, this is actually documented in PG.

>	for solib in $(find target/$(usex 'debug' 'debug' 'release') -maxdepth 1 -name '*.so'); do

This looks like a horribly convoluted way of saying:

	for solib in "target/$(usex 'debug' 'debug' 'release')"/*.so; do

>	dolib.so $(find target/$(usex 'debug' 'debug' 'release') -maxdepth 1 -name '*.so')

Again.  Also, you just put that path in a variable, so that should be:

	dolib.so "${releasedir}"/*.so
Comment 1 Patrick McLean gentoo-dev 2024-01-19 23:44:30 UTC
(In reply to Michał Górny from comment #0)
> https://gitweb.gentoo.org/repo/gentoo.git/tree/dev-util/ruff/ruff-0.1.13.
> ebuild
> 
> > PYTHON_COMPAT=( python3_{9..12} )
> 
> I'm pretty sure pkgcheck would emit OldPythonCompat about this if you used
> it to test commits.
I do generally use pkgcheck to test commits (occasionally I forget to), and it does not produce any warnings about ruff:

>  $ pkgcheck scan
> dev-util/ruff
>   UnstableOnly: for arch: [ amd64 ], all versions are unstable: [ 0.1.14 ]

I think you are suggesting I drop py39, which I will do in 0.1.14.

> Interspersed out-of-order LICENSE, BDEPEND, LICENSE again, SLOT, KEYWORDS,
> LICENSE again make the logic very hard to follow.

A lot of the structure of the ebuild is based on the output of pycargoebuild. Especially the multiple LICENSE stanzas, it separates out crate licenses from the main license (and I added the crates that it couldn't find the license automatically for separately as instructed by the cli output).

I will reorganized a bit in 0.1.14 to hopefully make it a littler clearer.

> 
> > 	[[ -n ${PATCHES[*]} ]] && eapply "${PATCHES[@]}"
> >	eapply_user
> 
> This is known as `default`.  However, you really ought to call
> `distutils-r1_src_prepare` here.

I will update it to call `default` rather than this in 0.1.14.

> 
> >	python_copy_sources

Calling it in src_prepare would necessitate either some nasty hacks, or building the rust code separately for each python impl. The python_copy_sources is called after cargo_src_compile in src_install to avoid recompiling the rust code. I will add a comment to src_prepare in 0.1.14 to clarify this.

> You never use copied sources anywhere.

The sources are copied in src_compile after cargo_src_compile.

> 
> >	distutils-r1_src_configure

Ok, I will drop this in 0.1.14.

> 
> Besides being called in the wrong phase, it's actually a no-op, so you don't
> need to call it at all.  Yes, this is actually documented in PG.
> 
> >	for solib in $(find target/$(usex 'debug' 'debug' 'release') -maxdepth 1 -name '*.so'); do
> 
> This looks like a horribly convoluted way of saying:
> 
> 	for solib in "target/$(usex 'debug' 'debug' 'release')"/*.so; do
> 
> >	dolib.so $(find target/$(usex 'debug' 'debug' 'release') -maxdepth 1 -name '*.so')
> 
> Again.  Also, you just put that path in a variable, so that should be:
> 
> 	dolib.so "${releasedir}"/*.so

Will update this in 0.1.14
Comment 2 Larry the Git Cow gentoo-dev 2024-01-20 00:08:30 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3d61e074830ad506ee4ceb7e4449feefd050e428

commit 3d61e074830ad506ee4ceb7e4449feefd050e428
Author:     Patrick McLean <chutzpah@gentoo.org>
AuthorDate: 2024-01-20 00:07:46 +0000
Commit:     Patrick McLean <chutzpah@gentoo.org>
CommitDate: 2024-01-20 00:08:26 +0000

    dev-util/ruff: add 0.1.14, drop 0.1.13-r1
    
    Bug: https://bugs.gentoo.org/922155
    Signed-off-by: Patrick McLean <chutzpah@gentoo.org>

 dev-util/ruff/Manifest                             | 34 +++++-----
 dev-util/ruff/files/ruff-0.1.14-tests.patch        | 12 ++++
 .../{ruff-0.1.13-r1.ebuild => ruff-0.1.14.ebuild}  | 79 ++++++++++++----------
 3 files changed, 71 insertions(+), 54 deletions(-)
Comment 3 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2024-01-25 15:17:20 UTC
There's still a:

  for solib in $(find "${releasedir}" -maxdepth 1 -name '*.so'); do
Comment 4 Larry the Git Cow gentoo-dev 2024-02-02 01:38:34 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e837858f3bd2168830ff152a68fb603fccf865be

commit e837858f3bd2168830ff152a68fb603fccf865be
Author:     Patrick McLean <chutzpah@gentoo.org>
AuthorDate: 2024-02-02 01:37:56 +0000
Commit:     Patrick McLean <chutzpah@gentoo.org>
CommitDate: 2024-02-02 01:38:29 +0000

    dev-util/ruff: add 0.2.0, drop 0.1.14
    
    Bug: https://bugs.gentoo.org/922155
    Signed-off-by: Patrick McLean <chutzpah@gentoo.org>

 dev-util/ruff/Manifest                             | 41 ++++++++++----------
 dev-util/ruff/files/ruff-0.2.0-tests.patch         | 12 ++++++
 .../ruff/{ruff-0.1.14.ebuild => ruff-0.2.0.ebuild} | 44 +++++++++++-----------
 3 files changed, 56 insertions(+), 41 deletions(-)
Comment 5 Eli Schwartz gentoo-dev 2024-03-14 18:28:30 UTC
All fixed now...