[Bug 2379712] Review Request: gi-loadouts - Loadouts for Genshin Impact

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



https://bugzilla.redhat.com/show_bug.cgi?id=2379712



--- Comment #3 from Akashdeep Dhar <akashdeep.dhar@xxxxxxxxx> ---
> - Packages MUST NOT have dependencies (either build-time or runtime) on
>   packages named with the unversioned python- prefix unless no properly
>   versioned package exists. Dependencies on Python packages instead MUST
>   use names beginning with python2- or python3- as appropriate.
>   Note: Unversionned Python dependency found.
>   See: https://docs.fedoraproject.org/en-US/packaging-
>   guidelines/Python/#_dependencies

Addressed. Please check
https://github.com/gridhead/gi-loadouts/blob/6b51f6b6389cbc9d403b1e4c2cf3e3a9eed87b32/gi-loadouts.spec#L20-L21
and
https://github.com/gridhead/gi-loadouts/blob/6b51f6b6389cbc9d403b1e4c2cf3e3a9eed87b32/gi-loadouts.spec#L16.

> - Dist tag is present.
>
>   * The dist tag should be optional, i.e. instead of “%{dist}”, use “%{?dist}”.

Addressed. Please check
https://github.com/gridhead/gi-loadouts/blob/6b51f6b6389cbc9d403b1e4c2cf3e3a9eed87b32/gi-loadouts.spec#L7.

> - You shouldn’t need to hardcode the path to the tesseract binary (in
>   gi_loadouts/conf.py), pytesseract will use “tesseract” in $PATH per default.

Addressed. Please check
https://github.com/gridhead/gi-loadouts/blob/d85abe2b99add1fb34c461b971ab1158a01279fd/gi_loadouts/conf.py.

Also, as this is a cross-platform software application including Microsoft
Windows and MacOS (Yep) - It kinda has to be like that.

Folks can provide the custom location of wherever they have installed Tesseract
from the GUI Qt file browser during the runtime.

> - Besides being 4 letters long and an uncommon abbreviation 😉, the %pack macro
>   just introduces another level of indirection. You can just use “Name:
>   gi-loadouts” and %name later.

Addressed. Please check
https://github.com/gridhead/gi-loadouts/blob/6b51f6b6389cbc9d403b1e4c2cf3e3a9eed87b32/gi-loadouts.spec#L1-L3.

> - %srce also is an uncommon way of shortening “source” and besides that, Python
>   packages in Fedora usually use %srcname or %pypi_name for this purpose. You
>   can also generate it automatically from %name instead of setting it manually:
>
>   %global srcname %(echo %name | sed -e 's/-/_/g')

Addressed. Please check
https://github.com/gridhead/gi-loadouts/blob/6b51f6b6389cbc9d403b1e4c2cf3e3a9eed87b32/gi-loadouts.spec#L2.

> - %uuid is a misnomer, org.gridhead.gi-loadouts isn’t a UUID[1]. I guess
>   something like %app_id (à la [2]) would be more apt. Also, isn’t your domain
>   gridhead.net rather than .org?
>
>   [1]: https://en.wikipedia.org/wiki/Universally_unique_identifier
>   [2]: https://docs.flatpak.org/en/latest/using-flatpak.html#identifiers

Addressed. Please check
https://github.com/gridhead/gi-loadouts/blob/6b51f6b6389cbc9d403b1e4c2cf3e3a9eed87b32/gi-loadouts.spec#L3.

> - Why does the RPM package use a custom tarball, what’s the difference to the
>   one not named `-custom`?

Loadouts for Genshin Impact makes use of PySide6-Essentials, which is a minimal
package of PySide6. This however is not packaged on Fedora Linux and hence, I
have to resort to using the big PySide6 instead which is. The custom tarball
changes just that and nothing else. If there would be a way to modify an
existing tarball to make the aforementioned changes to it before it is used for
generating an SRPM, that would be a whole lot wieldier.

> [!]: Package must own all directories that it creates.
>      Note: Directories without known owners: /usr/lib/python3.14,
>      /usr/lib/python3.14/site-packages, /usr/share/icons/hicolor,
>      /usr/share/icons/hicolor/scalable/apps,
>      /usr/share/icons/hicolor/scalable
>
>      * The Python directories probably are false positives because I ran
>        fedora-review on F42 (with Python 3.13 as the main version).
>      * Most packages shipping hicolor icons just require hicolor-icon-theme
>        which owns the icon directories.

Addressed. Please check
https://github.com/gridhead/gi-loadouts/blob/6b51f6b6389cbc9d403b1e4c2cf3e3a9eed87b32/gi-loadouts.spec#L22
and
https://github.com/gridhead/gi-loadouts/blob/6b51f6b6389cbc9d403b1e4c2cf3e3a9eed87b32/gi-loadouts.spec#L47-L49.

> [!]: Changelog in prescribed format.
>
>      * Links in the RPM changelog are too much detail, from the Packaging
>        Guidelines[3]: “The changelog describes the changes to the package that
>        are relevant to the users of the package.” In a new package, this is
>        usually something like “Import [version XYZ as] new package” or similar.
>
>      [3]: https://docs.fedoraproject.org/en-US/packaging-guidelines/#changelogs

Addressed. Please check
https://github.com/gridhead/gi-loadouts/blob/6b51f6b6389cbc9d403b1e4c2cf3e3a9eed87b32/gi-loadouts.spec#L64-L66.

> [!]: Requires correct, justified where necessary.
>
>      * "tesseract": python3-pytesseract should require this (it doesn’t because
>        the “Requires” line is in the wrong place, a fix is on the way)
>      * From the Python Packaging Guidelines[4]: “Packages MUST NOT have
>        dependencies (either build-time or runtime) with the unversioned prefix
>        python- if the corresponding python3- dependency can be used instead.”
>        * "python-pyside6": It should be sufficient if you added it as a
>          python-level dependency to pyproject.toml
>        * "python-pillow-qt": Ideally, the same should be true, but upstream
>          doesn’t declare a “qt” extra for the pillow package => make it
>          “python3-pillow-qt”.
>
>      [4]: https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/#_dependencies

Addressed. I removed the `tesseract` runtime dependencies.

Please check
https://github.com/gridhead/gi-loadouts/blob/6b51f6b6389cbc9d403b1e4c2cf3e3a9eed87b32/gi-loadouts.spec#L20-L21
and
https://github.com/gridhead/gi-loadouts/blob/6b51f6b6389cbc9d403b1e4c2cf3e3a9eed87b32/gi-loadouts.spec#L16.

> [!]: Package complies to the Packaging Guidelines
>
>      * This is sort of an umbrella for all the other items. Not sure why the
>        template lists it at all, not to mention in the middle of all the other
>        detailed things. 🤔

Addressed. Please check (Bruh).

> [!]: Final provides and requires are sane (see attachments).
>
>      * See “python-*” vs. “python3-*” above.

Addressed. Please check
https://github.com/gridhead/gi-loadouts/blob/6b51f6b6389cbc9d403b1e4c2cf3e3a9eed87b32/gi-loadouts.spec#L20-L21
and
https://github.com/gridhead/gi-loadouts/blob/6b51f6b6389cbc9d403b1e4c2cf3e3a9eed87b32/gi-loadouts.spec#L16.

> [!]: Spec file according to URL is the same as in SRPM.
>      Note: Spec file as given by url is not the same as in SRPM (see
>      attached diff).
>      See: (this test has no URL)

Let me edit the original body to add the updated source RPM and updated RPM
specfiles.

> gi-loadouts.noarch: E: spelling-error ('gameplay', '%description -l en_US gameplay -> game play, game-play, gamely')
> gi-loadouts.src: E: spelling-error ('gameplay', '%description -l en_US gameplay -> game play, game-play, gamely')
>
>   * False positive, both Oxford English Dictionary and Merriam Webster know this word

I hate just how this is termed as an error. It should be a warning at best.
What's next then? My name gets termed as a typo?

> gi-loadouts.noarch: W: python-leftover-require python-pillow-qt
> gi-loadouts.noarch: W: python-leftover-require python-pyside6
>
>   * See above

Addressed. Please check
https://github.com/gridhead/gi-loadouts/blob/6b51f6b6389cbc9d403b1e4c2cf3e3a9eed87b32/gi-loadouts.spec#L20-L21
and
https://github.com/gridhead/gi-loadouts/blob/6b51f6b6389cbc9d403b1e4c2cf3e3a9eed87b32/gi-loadouts.spec#L16.

> gi-loadouts.noarch: W: no-manual-page-for-binary gi-loadouts
> gi-loadouts.spec:12: W: mixed-use-of-spaces-and-tabs (spaces: line 12, tab: line 5)
>   2 packages and 0 specfiles checked; 2 errors, 4 warnings, 11 filtered, 2 badness; has taken 11.5 s
>
>   * Not sure which spec file is the authoritative one 😉, but decide on either
>     tabs or spaces.

The one that makes the RPM lint tool happy.

Actually, never mind - I actually do not care about making the RPM lint tool
happy anymore.


-- 
You are receiving this mail because:
You are always notified about changes to this product and component
You are on the CC list for the bug.
https://bugzilla.redhat.com/show_bug.cgi?id=2379712

Report this comment as SPAM: https://bugzilla.redhat.com/enter_bug.cgi?product=Bugzilla&format=report-spam&short_desc=Report%20of%20Bug%202379712%23c3

-- 
_______________________________________________
package-review mailing list -- package-review@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to package-review-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/package-review@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue




[Index of Archives]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite Conditions]     [KDE Users]

  Powered by Linux