Spec URL: https://martinkg.fedorapeople.org/Review/SPECS/python-kivy.spec SRPM URL: https://martinkg.fedorapeople.org/Review/SRPMS/python-kivy-1.9.1-1.fc25.src.rpm Description: Kivy is an open source, cross-platform [Python](https://www.python.org) framework for the development of applications that make use of innovative, multi-touch user interfaces. The aim is to allow for quick and easy interaction design and rapid prototyping whilst making your code reusable and deployable. Kivy is written in Python and [Cython](http://cython.org/), based on OpenGL ES 2, supports various input devices and has an extensive widget library. With the same codebase, you can target Windows, OS X, Linux, Android and iOS. All Kivy widgets are built with multitouch support. Kivy is MIT licensed, actively developed by a great community and is supported by many projects managed by the [Kivy Organization](http://kivy.org/#organization). Fedora Account System Username: martinkg
Spec URL: https://martinkg.fedorapeople.org/Review/SPECS/python-kivy.spec SRPM URL: https://martinkg.fedorapeople.org/Review/SRPMS/python-kivy-1.9.1-2.fc25.src.rpm %changelog * Sun Jan 29 2017 Martin Gansser <martinkg> - 1.9.1-2 - added BuildArch noarch to doc subpackage - adapt architecture and Python version for html build - add BR python3-sphinx rpmlint -i python-kivy.spec /home/martin/rpmbuild/SRPMS/python-kivy-1.9.1-2.fc25.src.rpm /home/martin/rpmbuild/RPMS/x86_64/python2-kivy-1.9.1-2.fc25.x86_64.rpm /home/martin/rpmbuild/RPMS/x86_64/python3-kivy-1.9.1-2.fc25.x86_64.rpm /home/martin/rpmbuild/RPMS/x86_64/python2-kivy-devel-1.9.1-2.fc25.x86_64.rpm /home/martin/rpmbuild/RPMS/x86_64/python3-kivy-devel-1.9.1-2.fc25.x86_64.rpm /home/martin/rpmbuild/RPMS/x86_64/python-kivy-examples-1.9.1-2.fc25.x86_64.rpm /home/martin/rpmbuild/RPMS/noarch/python-kivy-doc-1.9.1-2.fc25.noarch.rpm /home/martin/rpmbuild/RPMS/x86_64/python-kivy-debuginfo-1.9.1-2.fc25.x86_64.rpm python-kivy.src: W: spelling-error %description -l en_US multi -> mulch, mufti The value of this tag appears to be misspelled. Please double-check. python2-kivy.x86_64: W: spelling-error %description -l en_US multi -> mulch, mufti The value of this tag appears to be misspelled. Please double-check. python2-kivy.x86_64: E: incorrect-fsf-address /usr/lib64/python2.7/site-packages/kivy/tools/highlight/kivy-mode.el The Free Software Foundation address in this file seems to be outdated or misspelled. Ask upstream to update the address, or if this is a license file, possibly the entire file with a new copy available from the FSF. python2-kivy.x86_64: W: uncompressed-zip /usr/lib64/python2.7/site-packages/kivy/tests/unicode_files.zip The zip file is not compressed. python3-kivy.x86_64: W: spelling-error %description -l en_US multi -> mulch, mufti The value of this tag appears to be misspelled. Please double-check. python3-kivy.x86_64: E: incorrect-fsf-address /usr/lib64/python3.5/site-packages/kivy/tools/highlight/kivy-mode.el The Free Software Foundation address in this file seems to be outdated or misspelled. Ask upstream to update the address, or if this is a license file, possibly the entire file with a new copy available from the FSF. python3-kivy.x86_64: W: uncompressed-zip /usr/lib64/python3.5/site-packages/kivy/tests/unicode_files.zip The zip file is not compressed. python2-kivy-devel.x86_64: W: only-non-binary-in-usr-lib There are only non binary files in /usr/lib so they should be in /usr/share. python2-kivy-devel.x86_64: W: no-documentation The package contains no documentation (README, doc, etc). You have to include documentation files. python3-kivy-devel.x86_64: W: only-non-binary-in-usr-lib There are only non binary files in /usr/lib so they should be in /usr/share. python3-kivy-devel.x86_64: W: no-documentation The package contains no documentation (README, doc, etc). You have to include documentation files. python-kivy-examples.x86_64: W: spelling-error Summary(en_US) multitouch -> multitudinous The value of this tag appears to be misspelled. Please double-check. python-kivy-examples.x86_64: W: spelling-error %description -l en_US multi -> mulch, mufti The value of this tag appears to be misspelled. Please double-check. python-kivy-examples.x86_64: W: no-documentation The package contains no documentation (README, doc, etc). You have to include documentation files. python-kivy-doc.noarch: W: spelling-error %description -l en_US multi -> mulch, mufti The value of this tag appears to be misspelled. Please double-check. 8 packages and 1 specfiles checked; 2 errors, 13 warnings.
Hello! There are a few issues that will need to be fixed for approval: * The package can't be installed. dnf reports: - nothing provides python-kivy(x86-64) = 1.9.1-2.fc27 needed by python-kivy-doc-1.9.1-2.fc27.noarch - nothing provides python-kivy(x86-64) = 1.9.1-2.fc27 needed by python-kivy-examples-1.9.1-2.fc27.x86_64 Recommendations: - Use the %{?python_provide:%python_provide python2-%{srcname}} and %{?python_provide:%python_provide python3-%{srcname}} macros in the python2- and python3- subpackages. This will also make python2-kivy provide python-kivy as it is currently supposed to do. - IMO, example and doc packages don't really need to Require the package they document. You could just drop these requires. This is completely at your option of course, but if you do so, be sure to add the license file to both of them. * The license on this package is a bit complex according to fedora-review's run of licensecheck. I think the License field should be: LGPLv2.1+, GPLv2+, GPLv3, BSD, and MIT. Additionally, three of the example files are CC by-nc, so the example subpackage further requires that label. * The Requires are in the top level of the spec file, and only specify python3- requirements. Presumably, the python2- subpackage also needs its versions of these dependencies. The way it's specified, neither subpackage gets its dependencies when installed. Recommendation: - Move the python3- dependencies into the python3- %package section, and add python2- equivalents into the python2- %package section. That's all for requirements to be approved, but I have a few suggestions that are at your option (if you don't do the things after this, it won't block approval of the package): * The package bundles some fonts. There are a few ways to deal with this: - These fonts are already packaged for Fedora - you could Require: them and then symlink them. - You can declare that your package has these fonts bundled by using this syntax: Provides: bundled(dejavu-sans-fonts) Provides: bundled(google-roboto-fonts) - Delete the fonts - does it really need them? * There's a newer version of the package available upstream. According to their home page, 1.10.0 is released. * Is it possible to run the test suite in Koji? If so, it would be good to add a %check section. * About 6 MB is being stored in /usr/share. That data could be split into a noarch subpackage that the other packages Require:, which would be nice to do.
One more thing - the package fails to build in Koji: https://koji.fedoraproject.org/koji/taskinfo?taskID=20228227 The -doc subpackage is requiring an archful version of python-kivy, which is causing it to build differently. Recommendation: - Remove the %{_isa} macro from the doc and example package Requires.
Ping MartinKG?
(In reply to Randy Barlow from comment #2) > Additionally, three of the example files are CC > by-nc, so > the example subpackage further requires that label. Note that CC BY-NC is *not* an acceptable licence in Fedora. Examples with restrictions on commercial use need to be removed. See "Bad Licenses" in https://fedoraproject.org/wiki/Licensing:Main#Content_Licenses
@Petr this license type are only reported by 3 files from the demo folder, checked by https://martinkg.fedorapeople.org/Packages/kivy/licensecheck.txt *No copyright* CC by-nc ----------------------- Kivy-1.10.0/examples/demo/showcase/data/icons/next.png Kivy-1.10.0/examples/demo/showcase/data/icons/prev.png Kivy-1.10.0/examples/demo/showcase/data/icons/sourcecode.png what should we do ? simply remove this files or report it upstream, that thid license type is not accepted by Fedora ? new RPMS Spec URL: https://martinkg.fedorapeople.org/Review/SPECS/python-kivy.spec SRPM URL: https://martinkg.fedorapeople.org/Review/SRPMS/python-kivy-1.10.0-1.fc28.src.rpm %changelog * Thu May 24 2018 Martin Gansser <martinkg> - 1.10.0-1 - Update to 1.10.0 - Add kivy-1.10.0-upstream-cython-fix-1.patch - Add kivy-1.10.0-upstream-cython-fix-2.patch - Add kivy-1.10.0-upstream-cython-fix-3.patch - Add kivy-1.10.0-upstream-cython-fix-4.patch - Add kivy-1.10.0-upstream-cython-fix-5.patch - Add kivy-1.10.0-upstream-sdl-mixer-2.0.2-support.patch - Add kivy-1.10.0-version.patch
Remove the CC-BY-NC files, and let upstream know that these files aren't [Free Content], which is complicating distribution of all of Kivy. [Free Content]: https://en.wikipedia.org/wiki/Free_content I am not sure if removing them can be done by simply not including them in the built RPMs, or if you need to remove them from the SRPM as well, as described here: https://fedoraproject.org/wiki/Packaging:SourceURL#When_Upstream_uses_Prohibited_Code Since I'm not sure, I made the bug block FE-Legal to get someone from the Legal team to clarify. The section I linked above says "Some upstream packages include patents or trademarks that we are not allowed to ship even as source code," so maybe "Non-Commercial" licenced code is OK to ship in SRPMs? But that reading doesn't sound right -- are there no *licence* restrictions on SRPMs? I couldn't find much in the various guidelines. If there are, I believe the "When Upstream uses Prohibited Code" paragraph should mention/link to them.
Please remove them from the source tarball. It is not sufficient to simply delete these files during the package build process, because the SRPM will have the "No Commercial" restriction, which has an impact on any distribution of Fedora's SRPM tree. You can ask upstream to remove these non-free files, but they may not be concerned about that.
(In reply to Tom "spot" Callaway from comment #8) > Please remove them from the source tarball. It is not sufficient to simply > delete these files during the package build process, because the SRPM will > have the "No Commercial" restriction, which has an impact on any > distribution of Fedora's SRPM tree. > > You can ask upstream to remove these non-free files, but they may not be > concerned about that. Thanks for your information done Spec URL: https://martinkg.fedorapeople.org/Review/SPECS/python-kivy.spec SRPM URL: https://martinkg.fedorapeople.org/Review/SRPMS/python-kivy-1.10.0-2.fc28.src.rpm %changelog * Fri Jun 08 2018 Martin Gansser <martinkg> - 1.10.0-2 - remove files with non acceptable CC BY-NC licence from tar archive
Lifting FE-Legal.
Spec URL: https://martinkg.fedorapeople.org/Review/SPECS/python-kivy.spec SRPM URL: https://martinkg.fedorapeople.org/Review/SRPMS/python-kivy-1.10.1-1.fc28.src.rpm %changelog * Thu Jun 21 2018 Martin Gansser <martinkg> - 1.10.1-1 - Update to 1.10.1 - Dropped patches - Specfile cleanup
This seems to fail to build on Rawhide: cythoning kivy/_event.pyx to kivy/_event.c building 'kivy._event' extension creating build/temp.linux-x86_64-3.7 creating build/temp.linux-x86_64-3.7/kivy gcc -pthread -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fPIC -Ikivy/include -I/usr/include/python3.7m -c kivy/_event.c -o build/temp.linux-x86_64-3.7/kivy/_event.o BUILDSTDERR: /usr/lib64/python3.7/distutils/dist.py:274: UserWarning: Unknown distribution option: 'dependency_links' BUILDSTDERR: warnings.warn(msg) BUILDSTDERR: /usr/lib64/python3.7/distutils/dist.py:274: UserWarning: Unknown distribution option: 'install_requires' BUILDSTDERR: warnings.warn(msg) BUILDSTDERR: /usr/lib64/python3.7/distutils/dist.py:274: UserWarning: Unknown distribution option: 'extra_requires' BUILDSTDERR: warnings.warn(msg) BUILDSTDERR: /usr/lib64/python3.7/distutils/dist.py:274: UserWarning: Unknown distribution option: 'setup_requires' BUILDSTDERR: warnings.warn(msg) BUILDSTDERR: error: command 'gcc' failed with exit status 1
I am aware about this issue in rawhide. upstream ticket: https://github.com/kivy/kivy/issues/5936
Those are only warnings (possibly because you don't BR setuptools). The build fails because you don't BuildRequires: gcc
SRPM URL: https://www.dropbox.com/s/2z8sx3g92jyr7sx/python-kivy-1.10.1-2.fc28.src.rpm?dl=0 Spec URL: https://www.dropbox.com/s/rdr8c63oq56kn5m/python-kivy.spec?dl=0 %changelog * Thu Sep 20 2018 Martin Gansser <martinkg> - 1.10.1-2 - Add BR gcc - Add BR python3-setuptools
@Randy can you please go ahead with the review ? SRPM URL: https://martinkg.fedorapeople.org/Review/SPECS/python-kivy.spec Spec URL: https://martinkg.fedorapeople.org/Review/SRPMS/python-kivy-1.10.1-2.fc29.src.rpm %changelog * Thu Sep 20 2018 Martin Gansser <martinkg> - 1.10.1-2 - Add BR gcc - Add BR python3-setuptools
We cannot add new software that depends on Python 2 to Fedora without a FESCo exception, so see if it can build with python3-sphinx instead of python2-sphinx: https://fedoraproject.org/wiki/Packaging:Python#Python_Version_Support It also has some ambiguous Python requires lines - those should be adjusted to be explicitly Python 3. The Python packages should also be named with a python3- prefix instead of a python- prefix.
SRPM URL: https://martinkg.fedorapeople.org/Review/SPECS/python3-kivy.spec Spec URL: https://martinkg.fedorapeople.org/Review/SRPMS/python3-kivy-1.10.1-3.fc29.src.rpm %changelog * Fri Dec 14 2018 Martin Gansser <martinkg> - 1.10.1-3 - Use python3-sphinx instead of python2-sphinx - rename package to python3-kivy I opened the ticket 2017 with my email-address mgansser, but this email address not longer exists. How can i change it to mgansser. Maybe close this ticket an open a new one ?
<whoosh, drive-by contribution from an FPC member> > - rename package to python3-kivy This was not correctly done. The main/source package MUST be called python-kivy and have no files, and the python3 version MUST be in a sub-package called python3-kivy. Please refer to the Python Packaging Guidelines for this: https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/#_naming </whoosh>
Another try: SRPM URL: https://martinkg.fedorapeople.org/Review/SPECS/python-kivy.spec Spec URL: https://martinkg.fedorapeople.org/Review/SRPMS/python-kivy-1.10.1-4.fc29.src.rpm %changelog * Sat Dec 15 2018 Martin Gansser <martinkg> - 1.10.1-4 - Add python3 subpkg
The source tarball still contains licenses in Fedora's bad license list. For example, kivy-1.10.1/examples/audio/main.py is Creative Commons Sampling Plus Public License (v1.0). I need to unassign myself from this review as I won't have time to attend to it in the near future. https://fedoraproject.org/wiki/Licensing:Main#Bad_Licenses_2
SRPM URL: https://martinkg.fedorapeople.org/Review/SPECS/python-kivy.spec Spec URL: https://martinkg.fedorapeople.org/Review/SRPMS/python-kivy-1.11.0-1.fc30.src.rpm %changelog * Mon Jun 03 2019 Martin Gansser <martinkg> - 1.11.0-1 - Update to 1.11.0 * Sat Dec 15 2018 Martin Gansser <martinkg> - 1.10.1-4 - Add python3 subpkg - Remove file with bad license examples/audio/main.py
- These need to be added as Requires: they are needed when the package is installed, not only at build time # Unbundle fonts and JS BuildRequires: dejavu-sans-fonts BuildRequires: google-roboto-fonts BuildRequires: google-roboto-mono-fonts BuildRequires: js-underscore BuildRequires: js-jquery - Instead of making these executable, remove their shebang, you could do it in %prep # E: non-executable-script chmod a+x %{buildroot}%{python3_sitearch}/kivy/tools/kviewer.py chmod a+x %{buildroot}%{python3_sitearch}/kivy/tools/pep8checker/pep8.py chmod a+x %{buildroot}%{python3_sitearch}/kivy/tools/pep8checker/pre-commit.githook - Do this in %prep too: # fixes E: script-without-shebang chmod 0644 %{buildroot}%{_datadir}/kivy-examples/demo/kivycatalog/main.py chmod 0644 %{buildroot}%{_datadir}/kivy-examples/demo/showcase/main.py chmod 0644 %{buildroot}%{_datadir}/kivy-examples/demo/touchtracer/main.py chmod 0644 %{buildroot}%{_datadir}/kivy-examples/demo/shadereditor/main.py chmod 0644 %{buildroot}%{_datadir}/kivy-examples/demo/pictures/main.py chmod 0644 %{buildroot}%{_datadir}/kivy-examples/demo/showcase/data/screens/"tabbedpanel + layouts.kv" chmod 0644 %{buildroot}%{_datadir}/kivy-examples/keyboard/android.txt chmod 0644 %{buildroot}%{_datadir}/kivy-examples/keyboard/main.py chmod 0644 %{buildroot}%{_datadir}/kivy-examples/keyboard/numeric.json chmod 0644 %{buildroot}%{_datadir}/kivy-examples/settings/main.py - Why does the doc building needs xvfb-run? xvfb-run make html
SRPM URL: https://martinkg.fedorapeople.org/Review/SPECS/python-kivy.spec Spec URL: https://martinkg.fedorapeople.org/Review/SRPMS/python-kivy-1.11.0-2.fc30.src.rpm %changelog * Sat Jun 08 2019 Martin Gansser <martinkg> - 1.11.0-2 - Add RR dejavu-sans-fonts - Add RR google-roboto-fonts - Add RR google-roboto-mono-fonts - Add RR js-underscore - Add RR js-jquery - Move fix for E: non-executable-script to prep section - Move fix for E: script-without-shebang to prep section - Remove BR xorg-x11-server-Xvfb
- You didn't fix it as I recommended, you need to remove the shebang, not add executable bitsor change the shebang: # E: wrong-script-interpreter sed -i -e 's|#!/usr/bin/env python|#!/usr/bin/python3|g' kivy/tools/kviewer.py sed -i -e 's|#!/usr/bin/env python|#!/usr/bin/python3|g' kivy/tools/pep8checker/pep8.py sed -i -e 's|#!/usr/bin/env python|#!/usr/bin/python3|g' kivy/tools/pep8checker/pre-commit.githook # E: non-executable-script chmod a+x kivy/tools/kviewer.py chmod a+x kivy/tools/pep8checker/pep8.py chmod a+x kivy/tools/pep8checker/pre-commit.githook for lib in $(find -type f -name '*.py'); do sed '1{\@^#!@d}' $lib > $lib.new && touch -r $lib $lib.new && mv $lib.new $lib done We don't care about pre-commit.githook - I can't build the package: DEBUG util.py:585: BUILDSTDERR: No matching package to install: 'google-roboto-mono-fonts' DEBUG util.py:585: BUILDSTDERR: Not all dependencies satisfied DEBUG util.py:585: BUILDSTDERR: Error: Some packages could not be found. This package does not exist.
Actually it existed but it's now orphaned: https://src.fedoraproject.org/rpms/google-roboto-mono-fonts
(In reply to Robert-André Mauchin from comment #25) > - You didn't fix it as I recommended, you need to remove the shebang, not > add executable bitsor change the shebang: > > # E: wrong-script-interpreter > sed -i -e 's|#!/usr/bin/env python|#!/usr/bin/python3|g' > kivy/tools/kviewer.py > sed -i -e 's|#!/usr/bin/env python|#!/usr/bin/python3|g' > kivy/tools/pep8checker/pep8.py > sed -i -e 's|#!/usr/bin/env python|#!/usr/bin/python3|g' > kivy/tools/pep8checker/pre-commit.githook > > # E: non-executable-script > chmod a+x kivy/tools/kviewer.py > chmod a+x kivy/tools/pep8checker/pep8.py > chmod a+x kivy/tools/pep8checker/pre-commit.githook > > > for lib in $(find -type f -name '*.py'); do > sed '1{\@^#!@d}' $lib > $lib.new && > touch -r $lib $lib.new && > mv $lib.new $lib > done > > We don't care about pre-commit.githook > > - I can't build the package: > > DEBUG util.py:585: BUILDSTDERR: No matching package to install: > 'google-roboto-mono-fonts' > DEBUG util.py:585: BUILDSTDERR: Not all dependencies satisfied > DEBUG util.py:585: BUILDSTDERR: Error: Some packages could not be found. > > This package does not exist. > > Actually it existed but it's now orphaned: https://src.fedoraproject.org/rpms/google-roboto-mono-fonts I know this, i have compiled the package locally on my computer. the packages could't be installed due dependencies [martin@f30 SPECS]$ sudo rpm -Uvh /home/martin/rpmbuild/RPMS/x86_64/python3-kivy-1.11.0-3.fc30.x86_64.rpm /home/martin/rpmbuild/RPMS/x86_64/python3-kivy-devel-1.11.0-3.fc30.x86_64.rpm /home/martin/rpmbuild/RPMS/x86_64/python3-kivy-examples-1.11.0-3.fc30.x86_64.rpm /home/martin/rpmbuild/RPMS/noarch/python3-kivy-doc-1.11.0-3.fc30.noarch.rpm error: Failed dependencies: python3.7dist(kivy-garden) >= 0.1.4 is needed by python3-kivy-1.11.0-3.fc30.x86_64 I created a new spec file, rpmlint no longer reports a shebang issue. SRPM URL: https://martinkg.fedorapeople.org/Review/SPECS/python-kivy.spec Spec URL: https://martinkg.fedorapeople.org/Review/SRPMS/python-kivy-1.11.0-3.fc30.src.rpm
> I know this, i have compiled the package locally on my computer. Well either you adopt the orphan or you remove the dependencies. I can't review a package I can't build in mock.
This is an automatic action taken by review-stats script. The ticket submitter failed to clear the NEEDINFO flag in a month. As per https://fedoraproject.org/wiki/Policy_for_stalled_package_reviews we consider this ticket as DEADREVIEW and proceed to close it.
The needinfo request[s] on this closed bug have been removed as they have been unresolved for 1000 days