Spec URL: http://jamesni.fedorapeople.org/flies-python-client/flies-python-client.spec SRPM URL: http://jamesni.fedorapeople.org/flies-python-client/flies-python-client-0.0.2-1.fc13.src.rpm Description: Hi, I just finished the packaging flies-python-client, I would appreciate a sponsor and review so that i can get it into Fedora Extras Flies Python client is a client that working with Flies server for creating project and iteration, retrieving info of all the projects on Flies server, retrieving info of single project or single iteration. It also provide functions for pushing or pulling the publican files from/to Flies server. Flies Python client also include a library which provide basic operations for communicating with Flies server.
Hi, Just done a quick review, and found some problem. 1. It does not build with: koji build --scratch dist-f13 SRPMS/flies-python-client-0.0.2-1.fc13.src.rpm Seems like you need to remove BuildArch: noarch from your spec. 2. Error messages from using following command: find . -name "flies-python-client*.rpm" -exec rpmlint -i '{}' \; flies-python-client.src: E: description-line-too-long C Flies Python client is a client that communicate with Flies server for creating project Your description lines must not exceed 80 characters. If a line is exceeding this number, cut it to fit in two lines. flies-python-client.src: E: no-changelogname-tag There is no %changelog tag in your spec file. To insert it, just insert a '%changelog' in your spec file and rebuild it. flies-python-client.src: W: no-url-tag The URL tag is missing. flies-python-client.src:37: W: libdir-macro-in-noarch-package (main package) %{_libdir}/* The %{_libdir} or %{_lib} macro was found in a noarch package in a section that gets included in binary packages. This is most likely an error because these macros are expanded on the build host and their values vary between architectures, probably resulting in a package that does not work properly on all architectures at runtime. Investigate whether the package is really architecture independent or if some other dir/macro should be instead. flies-python-client.src: W: no-cleaning-of-buildroot %install You should clean $RPM_BUILD_ROOT in the %clean section and in the beginning of the %install section. Use "rm -rf $RPM_BUILD_ROOT". Some rpm configurations do this automatically; if your package is only going to be built in such configurations, you can ignore this warning for the section(s) where your rpm takes care of it. 1 packages and 0 specfiles checked; 2 errors, 3 warnings. flies-python-client.noarch: E: explicit-lib-dependency python-polib You must let rpm find the library dependencies by itself. Do not put unneeded explicit Requires: tags. flies-python-client.noarch: E: description-line-too-long C Flies Python client is a client that communicate with Flies server for creating project Your description lines must not exceed 80 characters. If a line is exceeding this number, cut it to fit in two lines. flies-python-client.noarch: E: no-changelogname-tag There is no %changelog tag in your spec file. To insert it, just insert a '%changelog' in your spec file and rebuild it. flies-python-client.noarch: W: no-url-tag The URL tag is missing. flies-python-client.noarch: E: non-executable-script /usr/lib/python2.6/site-packages/fliesclient/flies.py 0644L /usr/bin/env This text file contains a shebang or is located in a path dedicated for executables, but lacks the executable bits and cannot thus be executed. If the file is meant to be an executable script, add the executable bits, otherwise remove the shebang or move the file elsewhere. flies-python-client.noarch: E: zero-length /usr/share/doc/flies-python-client-0.0.2/README
I have modify the spec file and flies.py. The koji build is successful and rpmlint is also passed without error. I have replace the source rpm and spec file on fedorapeople.
Um, I have seen the new file, would you mind to bump the release version (release version +1) and upload the new file to avoid the confusion? thanks!
Ok, I just change the release version and upload the new file: Spec URL: http://jamesni.fedorapeople.org/flies-python-client/flies-python-client.spec SRPM URL: http://jamesni.fedorapeople.org/flies-python-client/flies-python-client-0.0.2-2.fc13.src.rpm
Thanks for your hard work, however, there are issues regarding package and usage. Packages: 1. You package is LGPLv2+, which means that you need to include both COPYING and COPYING.LESSER in your package. (see http://www.gnu.org/licenses/gpl-howto.html) 2. To make this package build in Fedora-12 (and possible RHEL5 / RHEL6). You can add following to your BuildRequires section: %if 0%{?fedora} < 13 BuildRequires: python-devel %endif Usage: After build, I read the README and http://code.google.com/p/flies/wiki/FliesPythonClient, it does not tell me how to: 1. Connect the server. There is an option in .fliesrc, but that doesn't seem to work. 2. Authenticate myself. I suppose there's a way to let me type password, submit a key, or something like that. Also, when executing flies list, it outputed following error: Traceback (most recent call last): File "/usr/bin/flies", line 8, in <module> load_entry_point('flies-python-client==0.0.2', 'console_scripts', 'flies')() File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 277, in load_entry_point return get_distribution(dist).load_entry_point(group, name) File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 2180, in load_entry_point return ep.load() File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 1913, in load entry = __import__(self.module_name, globals(),globals(), ['__name__']) File "/usr/lib/python2.6/site-packages/fliesclient/flies.py", line 30, in <module> from flieslib.client import FliesResource File "/usr/lib/python2.6/site-packages/fliesclient/flieslib/__init__.py", line 23, in <module> from client import * File "/usr/lib/python2.6/site-packages/fliesclient/flieslib/client.py", line 29, in <module> from resservice import ResourceService File "/usr/lib/python2.6/site-packages/fliesclient/flieslib/resservice.py", line 35, in <module> from publican import Publican ImportError: No module named publican
I am offering to sponsor James upon successful completion of this review.
I made some modify for the source code, license file, Spec file and README based on Ding's comment, and submit the new version to fedorapeople. You can find the new version in following URL: Spec URL: http://jamesni.fedorapeople.org/flies-python-client/flies-python-client.spec SRPM URL: http://jamesni.fedorapeople.org/flies-python-client/flies-python-client-0.0.3-1.fc13.src.rpm
I just submit a new release of the package, including an example configuration file and adding dependency needed by fedora 12(and less). You could also find the example configuration file named fliesrc.txt on "http://jamesni.fedorapeople.org/flies-python-client/fliesrc.txt". Spec URL: http://jamesni.fedorapeople.org/flies-python-client/flies-python-client.spec SRPM URL: http://jamesni.fedorapeople.org/flies-python-client/flies-python-client-0.0.3-2.fc13.src.rpm
Not quiet sure what the cause is, but when I run "flies list" it starts outputting: Traceback (most recent call last): File "/usr/bin/flies", line 9, in <module> load_entry_point('flies-python-client==0.0.3', 'console_scripts', 'flies')() File "/usr/lib/python2.6/site-packages/fliesclient/flies.py", line 551, in main client.run() File "/usr/lib/python2.6/site-packages/fliesclient/flies.py", line 528, in run self._list_projects() File "/usr/lib/python2.6/site-packages/fliesclient/flies.py", line 155, in _list_projects print ("Id: %s")%project.id File "/usr/lib/python2.6/site-packages/fliesclient/flieslib/jsonmodel.py", line 39, in id return self.json.get('id') AttributeError: 'unicode' object has no attribute 'get' This happen in both Fedora-13 and Fedora-12. Mind have a look with that?
I suspect this error related to cache of httplib2, but not sure about that. I have modify the code and submit a new package. Spec URL: http://jamesni.fedorapeople.org/flies-python-client/flies-python-client.spec SRPM URL: http://jamesni.fedorapeople.org/flies-python-client/flies-python-client-0.0.3-3.fc13.src.rpm
Well, I've tested 0.0.3-3 on both Fedora-12 and Fedora-13, the problem still exist. Is there a way to clean/rebuild the cache by hand? BTW, whenever you changed source, please remember to update the version number, e.g. from version 0.0.3 to 0.0.4. Release number is for the case that: 1. You change the spec. 2. You add new patch. without touch the source tarball. If you change both source and spec, you only need to update the version number, e.g. 0.0.3-3 -> 0.0.4-1. Regards,
I submit a new version that resolve some issues related to flies-python-client. Spec URL: http://jamesni.fedorapeople.org/flies-python-client/flies-python-client.spec SRPM URL: http://jamesni.fedorapeople.org/flies-python-client/flies-python-client-0.0.4-1.fc13.src.rpm
I found a import error when running the flies command, that's because i rename the module resservice in the package to docservice, but still leave some clause in the package. I sumbit a new version of the python-client to fix that error. Spec URL: http://jamesni.fedorapeople.org/flies-python-client/flies-python-client.spec SRPM URL: http://jamesni.fedorapeople.org/flies-python-client/flies-python-client-0.0.5-1.fc13.src.rpm
Hi James, rpmlint does produce following warnings and error: 1. flies-python-client.src: W: invalid-url Source0: http://jamesni.fedorapeople.org/flies-python-client/flies-python-client-0.0.5.tar.gz HTTP Error 404: Not Found This can be fixed easily by uploading the source tarball to jamesni.fedorapeople.org. But guess you will probably use github as your hosting later. 2. flies-python-client.noarch: E: explicit-lib-dependency python-httplib2 We need that for using it with Fedora-12 (and possible with RHEL6), so no need to touch it. 3. flies-python-client.noarch: W: no-manual-page-for-binary flies You can always add man page later. Currently having README and command line help is sufficient. Your package therefore pass the review. You may asked SCM to have following branches: Branches: f12 f13 f14 el6 But not el5, because it does not run on el5. (It builds though). MUST: + rpmlint output is acceptable. Note: issues listed in previous paragraph. + Package meets naming and packaging guidelines. + Package meets licensing guidelines, and match the source license. + Source files match upstream. + specfile is properly named, is cleanly written + Spec file is written in American English. + Spec file is legible. + dist tag is present. + BuildRoot is proper. + BuildRequires are proper. + Requires are proper. + %install starts with rm -rf %{buildroot} (or $RPM_BUILD_ROOT) + %clean contains rm -rf %{buildroot} (or $RPM_BUILD_ROOT) + %doc files present. + %doc files do not interfere runtime application. + Macros are consistently used. + Package builds in koji. + Package contains code or permissible content. + Package installed properly. + No system library is bundled. + Not relocatable, unless proper justification is presented. + %files section must include a %defattr(...) line, and file permissions are correct. + No duplication in %files + File names are in valid UTF-8. + Own all directory it creates. + Files or directories are not owned by other packages. + No .la libtool archives exists. SHOULD: + License text are in separate files. + Package build in mock. + Package can build in all supported architectures. + Package runs properly. + No direct files dependencies, unless they are in either /etc, /bin, /sbin, /usr/bin, or /usr/sbin APPROVED
Src tarball has been uploaded: e9aef2ec33d72453c7231ed0e3c75523 flies-python-client-0.0.5.tar.gz Thanks Ding-Yi for the detailed review and testing. Builds and runs for me and I checked the src files include license headers. As Sponsor I am also approving this package. James Ni please go ahead and apply for Packager group membership and I will sponsor you.
Next you can request the package to be added following https://fedoraproject.org/wiki/Package_SCM_admin_requests
New Package SCM Request ======================= Package Name: flies-python-client Short Description: Flies Python client is a client that communicate with Flies server. Owners: jamesni Branches: f12 f13 f14 el6 InitialCC: dchen petersen
The bug summary doesn't match the package name here. Could you correct the summary and then resubmit the git request with the correct name? Thanks.
New Package SCM Request ======================= Package Name: flies-python-client Short Description: flies-python-client is a client that communicate with Flies server. Owners: jamesni Branches: f12 f13 f14 el6 InitialCC: dchen petersen
Git done (by process-git-requests).
I have push the source to git, and make a update in bodhi.
Package Change Request ====================== Package Name: flies-python-client New Branches: el5 Owners: jamesni InitialCC: dchen petersen