Bug 1884255 - Review Request: python-patiencediff - Contains the implementation of the patiencediff algorithm
Summary: Review Request: python-patiencediff - Contains the implementation of the pati...
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Miro Hrončok
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 1838858
TreeView+ depends on / blocked
 
Reported: 2020-10-01 13:08 UTC by Ondřej Pohořelský
Modified: 2020-11-03 21:24 UTC (History)
2 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2020-11-03 21:24:53 UTC
Type: Bug
Embargoed:
mhroncok: fedora-review+


Attachments (Terms of Use)

Description Ondřej Pohořelský 2020-10-01 13:08:08 UTC
SPEC URL: https://fedorapeople.org/cgit/opohorel/public_git/python-patiencediff.git/tree/python-patiencediff.spec
SRPM URL: https://people.redhat.com/opohorel/python-patiencediff-0.2.0-1.fc32.src.rpm
Description: Contains the implementation of the patiencediff algorithm. This package was separated from Breezy package.
Fedora Account System Username: opohorel

Koji: https://koji.fedoraproject.org/koji/taskinfo?taskID=52579868

Comment 2 Miro Hrončok 2020-10-01 14:47:53 UTC
Spec sanity
===========

> License:        GNU GPLv2 or later

This is not a valid license tag, see https://fedoraproject.org/wiki/Licensing:Main#SoftwareLicenses

That should be:

  License:        GPLv2+

BTW upstream says GPLv2+ everywhere, but uses the 'License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)' classifier. Could you please contact them about the confusion?



> %{?python_provide:%python_provide python3-%{pypi_name}}

If you target Fedora 33+ only, you don't need this. If you target older releases, you should use https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/#_the_py_provides_macro instead.



> # Remove bundled egg-info
> rm -rf %{pypi_name}.egg-info

This is most likely not needed.



> %{__python3} setup.py test

Please, use %{python3} rather than %{__python3}.



> %{python3_sitearch}/%{pypi_name}
> %{python3_sitearch}/%{pypi_name}-%{version}-py%{python3_version}.egg-info

Please add trailing slashes to assert those are directories:

  %{python3_sitearch}/%{pypi_name}/
  %{python3_sitearch}/%{pypi_name}-%{version}-py%{python3_version}.egg-info/

Comment 3 Ondřej Pohořelský 2020-10-02 14:02:55 UTC
Thank you for a helpful review!

I've made proposed changes to spec file and contacted upstream regarding license confusion[0].
They confirmed that license is GPLv2+ and that they are going to push fixed classifiers. 

SPEC URL: https://fedorapeople.org/cgit/opohorel/public_git/python-patiencediff.git/plain/python-patiencediff.spec
SRPM URL: https://people.redhat.com/opohorel/python-patiencediff-0.2.0-1.fc32.src.rpm

Koji: https://koji.fedoraproject.org/koji/taskinfo?taskID=52652247


[0]https://groups.google.com/g/breezy-vcs/c/xRhjYm8Zp7c/m/uoPtRB5BBwAJ

Comment 4 Miro Hrončok 2020-10-04 19:38:38 UTC
Package Review
==============

Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated


Issues:

python3-patiencediff.x86_64: E: non-executable-script /usr/lib64/python3.9/site-packages/patiencediff/__init__.py 644 /usr/bin/env python
python3-patiencediff.x86_64: E: non-executable-script /usr/lib64/python3.9/site-packages/patiencediff/_patiencediff_py.py 644 /usr/bin/env python

Please, strip the shebangs and possibly send a suggestion upstream to do the same. _patiencediff_py.py does nothing when executed and packages should be executed by `python -m patiencediff`, not bu running __init__.py as a script.


Note that the README says:

    Usage
    =====

    To invoke patiencediff from the command-line::

        python -m patiencediff file_a file_b

But that does not work:

    <mock-chroot> sh-5.0# python3 -m patiencediff
    /usr/bin/python3: No module named patiencediff.__main__; 'patiencediff' is a package and cannot be directly executed




===== MUST items =====

C/C++:
[x]: Package does not contain kernel modules.
[x]: Package contains no static executables.
[-]: Development (unversioned) .so files in -devel subpackage, if present.
     Note: so-files are Python extension modules.
[x]: If your application is a C or C++ application you must list a
     BuildRequires against gcc, gcc-c++ or clang.
[x]: Package does not contain any libtool archives (.la)
[x]: Rpath absent or only used for internal libs.

Generic:
[x]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
[x]: License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses. Licenses
     found: "Unknown or generated", "GNU Lesser General Public License",
     "GPL (v2 or later)".
[x]: License file installed when any subpackage combination is installed.
[x]: %build honors applicable compiler flags or justifies otherwise.
[s]: Package contains no bundled libraries without FPC exception.
[x]: Changelog in prescribed format.
[x]: Sources contain only permissible code or content.
[-]: Package contains desktop file if it is a GUI application.
[-]: Development files must be in a -devel package
[x]: Package uses nothing in %doc for runtime.
[x]: Package consistently uses macros (instead of hard-coded directory
     names).
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict.
[x]: Package obeys FHS, except libexecdir and /usr/target.
[-]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[x]: Requires correct, justified where necessary.
[x]: Spec file is legible and written in American English.
[-]: Package contains systemd file(s) if in need.
[x]: Useful -debuginfo package or justification otherwise.
[x]: Package is not known to require an ExcludeArch tag.
[-]: Large documentation must go in a -doc subpackage. Large could be size
     (~1MB) or number of files.
     Note: Documentation size is 10240 bytes in 1 files.
[x]: Package complies to the Packaging Guidelines
[x]: Package successfully compiles and builds into binary rpms on at least
     one supported primary architecture.
[x]: Package installs properly.
[x]: Rpmlint is run on all rpms the build produces.
     Note: There are rpmlint messages (see attachment).
[x]: If (and only if) the source package includes the text of the
     license(s) in its own file, then that file, containing the text of the
     license(s) for the package is included in %license.
[x]: Package requires other packages for directories it uses.
[x]: Package must own all directories that it creates.
[x]: Package does not own files or directories owned by other packages.
[x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[x]: Macros in Summary, %description expandable at SRPM build time.
[x]: Dist tag is present.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Package must not depend on deprecated() packages.
[x]: Package use %makeinstall only when make install DESTDIR=... doesn't
     work.
[x]: Package is named using only allowed ASCII characters.
[x]: Package does not use a name that already exists.
[x]: Package is not relocatable.
[x]: Sources used to build the package match the upstream source, as
     provided in the spec URL.
[x]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[x]: File names are valid UTF-8.
[x]: Packages must not store files under /srv, /opt or /usr/local

Python:
[x]: Python eggs must not download any dependencies during the build
     process.
[x]: A package which is used by another package via an egg interface should
     provide egg info.
[x]: Package meets the Packaging Guidelines::Python
[x]: Package contains BR: python2-devel or python3-devel
[x]: 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.
[x]: Python packages must not contain %{pythonX_site(lib|arch)}/* in %files
[x]: Binary eggs must be removed in %prep

===== SHOULD items =====

Generic:
[-]: If the source package does not include license text(s) as a separate
     file from upstream, the packager SHOULD query upstream to include it.
[x]: Final provides and requires are sane (see attachments).
[-]: Fully versioned dependency in subpackages if applicable.
[!]: Package functions as described.
[?]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[-]: Sources are verified with gpgverify first in %prep if upstream
     publishes signatures.
[-]: Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[?]: Package should compile and build into binary rpms on all supported
     architectures.
[x]: %check is present and all tests pass.
[?]: Packages should try to preserve timestamps of original installed
     files.
[x]: Reviewer should test that the package builds in mock.
[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[x]: Sources can be downloaded from URI in Source: tag
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.

===== EXTRA items =====

Generic:
[x]: Rpmlint is run on all installed packages.
     Note: There are rpmlint messages (see attachment).
[x]: Large data in /usr/share should live in a noarch subpackage if package
     is arched.
[x]: Spec file according to URL is the same as in SRPM.


Rpmlint
-------
Checking: python3-patiencediff-0.2.0-1.fc34.x86_64.rpm
          python-patiencediff-debugsource-0.2.0-1.fc34.x86_64.rpm
          python-patiencediff-0.2.0-1.fc34.src.rpm
python3-patiencediff.x86_64: W: spelling-error %description -l en_US difflib -> diff lib, diff-lib, difficult
python3-patiencediff.x86_64: W: spelling-error %description -l en_US convience -> convince, convenience, convergence
python3-patiencediff.x86_64: E: non-executable-script /usr/lib64/python3.9/site-packages/patiencediff/__init__.py 644 /usr/bin/env python
python3-patiencediff.x86_64: E: non-executable-script /usr/lib64/python3.9/site-packages/patiencediff/_patiencediff_py.py 644 /usr/bin/env python
python-patiencediff.src: W: spelling-error %description -l en_US difflib -> diff lib, diff-lib, difficult
python-patiencediff.src: W: spelling-error %description -l en_US convience -> convince, convenience, convergence
3 packages and 0 specfiles checked; 2 errors, 4 warnings.




Rpmlint (installed packages)
----------------------------
python3-patiencediff.x86_64: W: spelling-error %description -l en_US difflib -> diff lib, diff-lib, difficult
python3-patiencediff.x86_64: W: spelling-error %description -l en_US convience -> convince, convenience, convergence
python3-patiencediff.x86_64: E: non-executable-script /usr/lib64/python3.9/site-packages/patiencediff/__init__.py 644 /usr/bin/env python
python3-patiencediff.x86_64: E: non-executable-script /usr/lib64/python3.9/site-packages/patiencediff/_patiencediff_py.py 644 /usr/bin/env python
2 packages and 0 specfiles checked; 2 errors, 2 warnings.



Unversioned so-files
--------------------
python3-patiencediff: /usr/lib64/python3.9/site-packages/patiencediff/_patiencediff_c.cpython-39-x86_64-linux-gnu.so

Source checksums
----------------
https://files.pythonhosted.org/packages/source/p/patiencediff/patiencediff-0.2.0.tar.gz :
  CHECKSUM(SHA256) this package     : d828c8dca0db860b26d441097e866a75f3ded8ea45244d3ba5f691a62928537a
  CHECKSUM(SHA256) upstream package : d828c8dca0db860b26d441097e866a75f3ded8ea45244d3ba5f691a62928537a


Requires
--------
python3-patiencediff (rpmlib, GLIBC filtered):
    libc.so.6()(64bit)
    python(abi)
    rtld(GNU_HASH)

python-patiencediff-debugsource (rpmlib, GLIBC filtered):



Provides
--------
python3-patiencediff:
    python-patiencediff
    python3-patiencediff
    python3-patiencediff(x86-64)
    python3.9-patiencediff
    python3.9dist(patiencediff)
    python3dist(patiencediff)

python-patiencediff-debugsource:
    python-patiencediff-debugsource
    python-patiencediff-debugsource(x86-64)



Generated by fedora-review 0.7.0 (fed5495) last change: 2019-03-17
Command line :try-fedora-review -b 1884255 -m fedora-rawhide-x86_64 --mock-options=--enablerepo=local
Buildroot used: fedora-rawhide-x86_64
Active plugins: C/C++, Python, Shell-api, Generic
Disabled plugins: R, Java, fonts, SugarActivity, Haskell, Perl, Ocaml, PHP, Ruby
Disabled flags: EPEL6, EPEL7, DISTTAG, BATCH, EXARCH

Comment 5 Miro Hrončok 2020-10-04 19:43:42 UTC
Side note: Consider excluding /usr/lib64/python3.9/site-packages/patiencediff/test_patiencediff.py from the installation.

Comment 6 Miro Hrončok 2020-10-17 22:26:12 UTC
Could you please work with upstream to fix the broken invocation? I can help, if needed.

Comment 7 Ondřej Pohořelský 2020-10-19 07:57:04 UTC
(In reply to Miro Hrončok from comment #6)
> Could you please work with upstream to fix the broken invocation? I can
> help, if needed.

I'm sorry for not posting the update. I wrote an e-mail to upstream[0].
I've got an off list reply that they fixed it in master. I'm going to rebase to new version and post fixed version of package here.


[0]https://groups.google.com/g/breezy-vcs/c/R-KhJ-iKVf4/m/xNAk_3jJCwAJ

Comment 8 Miro Hrončok 2020-10-19 09:26:49 UTC
Thanks for the update. Here's a followup from me: https://github.com/breezy-team/patiencediff/pull/5

Comment 9 Ondřej Pohořelský 2020-10-26 12:47:27 UTC
I rebased to newer version and added patch that fixes shebang in __main.py__

SPEC URL: https://people.redhat.com/opohorel/python-patiencediff.spec
SRPM URL: https://people.redhat.com/opohorel/python-patiencediff-0.2.1-1.fc32.src.rpm

Comment 10 Miro Hrončok 2020-10-26 15:06:52 UTC
Every patch should be justified in spec and/or link to upstream. In this case, I suggest to use:

  # Remove redundant shebang and conditional from __main__.py
  Patch1:   https://github.com/breezy-team/patiencediff/pull/5.patch

Instead of a different version of the same.

-----

If you'd like to avoid the patch, you can strip the shebang in %prep with:

  # remove a useless shebang; fixed in upstream git
  sed -i '1{/^#!/d}' patiencediff/__main__.py


-----


It appears that the tarball used to build the package is not the same tarball as located on the Source url:

https://files.pythonhosted.org/packages/source/p/patiencediff/patiencediff-0.2.1.tar.gz :
  CHECKSUM(SHA256) this package     : cde3ece054837358d3c64b8fd18d3e15ead5b07d8f6d20bdfacce92d8725e506
  CHECKSUM(SHA256) upstream package : 9b0a00a0ec3e9fd90c3c3a280065a7c35315c8ed3f93520da0a9bcd70511a25a


-----


rpmlint:

python3-patiencediff.x86_64: W: spelling-error %description -l en_US difflib -> diff lib, diff-lib, difficult
python3-patiencediff.x86_64: W: spelling-error %description -l en_US convience -> convince, convenience, convergence
python3-patiencediff.x86_64: E: non-executable-script /usr/lib64/python3.9/site-packages/patiencediff/_patiencediff_py.py 644 /usr/bin/env python
2 packages and 0 specfiles checked; 1 errors, 2 warnings.


"difflib" is probably a technical term, but "convience" seems to be an actual typo. I suggest to fix it in the %description and send a PR upstream with the same.

_patiencediff_py.py still has an useless shebang. It can be removed together with the other shebang:

  # remove useless shebangs; fixed in upstream git
  sed -i '1{/^#!/d}' patiencediff/*.py

Comment 11 Ondřej Pohořelský 2020-10-27 15:47:22 UTC
I went with Patch approach.
Different tarball checksum is my mistake as I took new version from GitHub instead of PyPi. Should be fixed now.
"difflib" points to Python library, so that's not a spelling error.
"convience" is a typo, I've made a upstream PR and added it as a patch[0]
Thank you very much for pointing these issues out and helping me resolve it!

[0]https://github.com/breezy-team/patiencediff/pull/6


SPEC URL: https://people.redhat.com/opohorel/python-patiencediff.spec
SRPM URL: https://people.redhat.com/opohorel/python-patiencediff-0.2.1-1.fc32.src.rpm

Comment 12 Miro Hrončok 2020-10-27 21:06:17 UTC
Package Review
==============

Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated


Package is APPROVED. Thanks for all the changes!

I would not insist on patching the README in the package for the sake of the typo but since it is already there, feel free to keep it.



===== MUST items =====

C/C++:
[x]: Package does not contain kernel modules.
[x]: Package contains no static executables.
[-]: Development (unversioned) .so files in -devel subpackage, if present.
     Note: Unversioned so-files are Python extension modules.
[x]: If your application is a C or C++ application you must list a
     BuildRequires against gcc, gcc-c++ or clang.
[x]: Package does not contain any libtool archives (.la)
[x]: Rpath absent or only used for internal libs.

Generic:
[x]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
[x]: License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses. Licenses
     found: "Unknown or generated", "GNU General Public License, Version
     2", "*No copyright* GNU General Public License v2.0 or later", "GNU
     General Public License v2.0 or later".
[x]: License file installed when any subpackage combination is installed.
[x]: %build honors applicable compiler flags or justifies otherwise.
[x]: Package contains no bundled libraries without FPC exception.
[x]: Changelog in prescribed format.
[x]: Sources contain only permissible code or content.
[-]: Package contains desktop file if it is a GUI application.
[-]: Development files must be in a -devel package
[x]: Package uses nothing in %doc for runtime.
[x]: Package consistently uses macros (instead of hard-coded directory
     names).
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict.
[x]: Package obeys FHS, except libexecdir and /usr/target.
[-]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[x]: Requires correct, justified where necessary.
[x]: Spec file is legible and written in American English.
[-]: Package contains systemd file(s) if in need.
[x]: Useful -debuginfo package or justification otherwise.
[x]: Package is not known to require an ExcludeArch tag.
[-]: Large documentation must go in a -doc subpackage. Large could be size
     (~1MB) or number of files.
     Note: Documentation size is 10240 bytes in 1 files.
[x]: Package complies to the Packaging Guidelines
[x]: Package successfully compiles and builds into binary rpms on at least
     one supported primary architecture.
[x]: Package installs properly.
[x]: Rpmlint is run on all rpms the build produces.
     Note: There are rpmlint messages (see attachment).
[x]: If (and only if) the source package includes the text of the
     license(s) in its own file, then that file, containing the text of the
     license(s) for the package is included in %license.
[x]: Package requires other packages for directories it uses.
[x]: Package must own all directories that it creates.
[x]: Package does not own files or directories owned by other packages.
[x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[x]: Macros in Summary, %description expandable at SRPM build time.
[x]: Dist tag is present.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Package must not depend on deprecated() packages.
[x]: Package use %makeinstall only when make install DESTDIR=... doesn't
     work.
[x]: Package is named using only allowed ASCII characters.
[x]: Package does not use a name that already exists.
[x]: Package is not relocatable.
[x]: Sources used to build the package match the upstream source, as
     provided in the spec URL.
[x]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[x]: File names are valid UTF-8.
[x]: Packages must not store files under /srv, /opt or /usr/local

Python:
[x]: Python eggs must not download any dependencies during the build
     process.
[x]: A package which is used by another package via an egg interface should
     provide egg info.
[x]: Package meets the Packaging Guidelines::Python
[x]: Package contains BR: python2-devel or python3-devel
[x]: 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.
[x]: Python packages must not contain %{pythonX_site(lib|arch)}/* in %files
[x]: Binary eggs must be removed in %prep

===== SHOULD items =====

Generic:
[-]: If the source package does not include license text(s) as a separate
     file from upstream, the packager SHOULD query upstream to include it.
[x]: Final provides and requires are sane (see attachments).
[-]: Fully versioned dependency in subpackages if applicable.
[x]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[x]: Patches link to upstream bugs/comments/lists or are otherwise
     justified.
[-]: Sources are verified with gpgverify first in %prep if upstream
     publishes signatures.
[-]: Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[?]: Package should compile and build into binary rpms on all supported
     architectures.
[x]: %check is present and all tests pass.
[?]: Packages should try to preserve timestamps of original installed
     files.
[x]: Reviewer should test that the package builds in mock.
[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[x]: Sources can be downloaded from URI in Source: tag
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.

===== EXTRA items =====

Generic:
[x]: Rpmlint is run on all installed packages.
[-]: Large data in /usr/share should live in a noarch subpackage if package
     is arched.
[x]: Spec file according to URL is the same as in SRPM.


Rpmlint
-------
Checking: python3-patiencediff-0.2.1-1.fc34.x86_64.rpm
          python-patiencediff-debugsource-0.2.1-1.fc34.x86_64.rpm
          python-patiencediff-0.2.1-1.fc34.src.rpm
python3-patiencediff.x86_64: W: spelling-error %description -l en_US difflib -> diff lib, diff-lib, difficult
python-patiencediff.src: W: spelling-error %description -l en_US difflib -> diff lib, diff-lib, difficult
3 packages and 0 specfiles checked; 0 errors, 2 warnings.




Rpmlint (installed packages)
----------------------------
python3-patiencediff.x86_64: W: spelling-error %description -l en_US difflib -> diff lib, diff-lib, difficult
2 packages and 0 specfiles checked; 0 errors, 1 warnings.



Unversioned so-files
--------------------
python3-patiencediff: /usr/lib64/python3.9/site-packages/patiencediff/_patiencediff_c.cpython-39-x86_64-linux-gnu.so

Source checksums
----------------
https://files.pythonhosted.org/packages/source/p/patiencediff/patiencediff-0.2.1.tar.gz :
  CHECKSUM(SHA256) this package     : 9b0a00a0ec3e9fd90c3c3a280065a7c35315c8ed3f93520da0a9bcd70511a25a
  CHECKSUM(SHA256) upstream package : 9b0a00a0ec3e9fd90c3c3a280065a7c35315c8ed3f93520da0a9bcd70511a25a


Requires
--------
python3-patiencediff (rpmlib, GLIBC filtered):
    libc.so.6()(64bit)
    python(abi)
    rtld(GNU_HASH)

python-patiencediff-debugsource (rpmlib, GLIBC filtered):



Provides
--------
python3-patiencediff:
    python-patiencediff
    python3-patiencediff
    python3-patiencediff(x86-64)
    python3.9-patiencediff
    python3.9dist(patiencediff)
    python3dist(patiencediff)

python-patiencediff-debugsource:
    python-patiencediff-debugsource
    python-patiencediff-debugsource(x86-64)



Generated by fedora-review 0.7.0 (fed5495) last change: 2019-03-17
Command line :try-fedora-review -b 1884255 -m fedora-rawhide-x86_64 --mock-options=--enablerepo=local
Buildroot used: fedora-rawhide-x86_64
Active plugins: Shell-api, Generic, Python, C/C++
Disabled plugins: Ocaml, R, SugarActivity, PHP, Haskell, Ruby, Java, fonts, Perl
Disabled flags: EPEL6, EPEL7, DISTTAG, BATCH, EXARCH

Comment 13 Gwyn Ciesla 2020-11-02 15:45:30 UTC
(fedscm-admin):  The Pagure repository was created at https://src.fedoraproject.org/rpms/python-patiencediff

Comment 14 Miro Hrončok 2020-11-02 15:50:39 UTC
Three recommended actions after adding the package:

1) enable koschei tracking once available: https://koschei.fedoraproject.org/package/python-patiencediff?collection=f34
2) add @python-sig group to: https://src.fedoraproject.org/rpms/python-patiencediff/addgroup
3) add/edit the upstream package to/at https://release-monitoring.org/ and pair it with Fedora's python-patiencediff package


Note You need to log in before you can comment on or make changes to this bug.