Spec URL: http://flyn.org/SRPMS/linkchecker.spec SRPM URL: http://flyn.org/SRPMS/linkchecker-4.7-1.fc7.src.rpm Description: This package was previously approved (Bug #168611), was orphaned and is now maintained by Mike Petullo again. Because it was orphaned for more than three months, it needs to be reviewed again.
Created attachment 159034 [details] mock build log of linkchecker 4.7-1 on rawhide i386 Some comments. * SourceURL - For sourceforge source, please check the section "Sourceforge.net" of: http://fedoraproject.org/wiki/Packaging/SourceURL * Mock build fails (build log attached) - Note: Now .pyo, .pyc must not be excluded. * File entry - The two lines ---------------------------------------------- %dir %{_datadir}/linkchecker/ %{_datadir}/linkchecker/* ---------------------------------------------- can be replaced with one line: ---------------------------------------------- %{_datadir}/linkchecker/ ---------------------------------------------- - And similarly, IMO the part # Collate list of python files can be removed and can be simplified. * ExcludeArch ---------------------------------------------- # Do not have one of these to test on: ExcludeArch: x86_64 ---------------------------------------------- - What do you mean by this? (see "sitearch" comment below) * sitearch - .so module is arch-dependent and should be installed under site_arch directory (on x86_64 and ppc64, site_lib and site_arch directory differs) * Requires - Check Requires for this package * For example, this package requires python-docutils * python-imaging is available on Fedora * And maybe this package requires more packages.
Spec URL: http://flyn.org/SRPMS/linkchecker.spec SRPM URL: http://flyn.org/SRPMS/linkchecker-4.7-2.fc7.src.rpm Implemented Mamoru's recommendations.
Created attachment 159201 [details] mock build log of linkchecker 4.7-2 on rawhide i386 For 4.7-2: * File entry ---------------------------------------- %{python_sitearch}/* %{python_sitearch}/linkcheck ---------------------------------------- - This way of listing causes many duplicate file entry on i386 (check the mock build log attached). * again site_lib vs site_arch - While arch-dependent files (usually .so file) must be installed under site_arch directory, arch-independent .py{,o,c} files must be installed under site_lib directory (so you have to use both site_lib and site_arch) * Directory ownership - /usr/share/man/{de,fr}/man1 are already owned by man * rpmlint - Some files' permissions are not correct. ----------------------------------------- W: linkchecker spurious-executable-perm /usr/share/doc/linkchecker-4.7/doc/examples/check_urls.sh W: linkchecker spurious-executable-perm /usr/share/doc/linkchecker-4.7/cgi-bin/lc.cgi W: linkchecker spurious-executable-perm /usr/share/doc/linkchecker-4.7/cgi-bin/lc.fcgi W: linkchecker spurious-executable-perm /usr/share/doc/linkchecker-4.7/doc/rest2htmlnav W: linkchecker spurious-executable-perm /usr/share/doc/linkchecker-4.7/doc/examples/check_blacklist.sh W: linkchecker spurious-executable-perm /usr/share/doc/linkchecker-4.7/doc/examples/check_for_x_errors.sh ----------------------------------------- * Documents * gettext files - /usr/share/doc/linkchecker-4.7/doc/{de,fr}.po must be converted by msgfmt (in gettext) and be installed into proper directories and must not be installed as documents * man files - /usr/share/doc/linkchecker-4.7/doc/{de,fr}/linkchecker.1 must not be needed (man files are installed)
Spec URL: http://flyn.org/SRPMS/linkchecker.spec SRPM URL: http://flyn.org/SRPMS/linkchecker-4.7-3.fc7.src.rpm
Created attachment 159277 [details] mock build log of linkchecker 4.7-3 on rawhide i386 * This time mockbuild fails again. * And please check directory ownership issue. For example, the directory %{python_sitearch}/linkcheck/ is not owned by any package. Note: on i386, ppc, this directory is the same as %{python_sitelib}/linkcheck/ and on x86_64 and ppc64 this directory is also unowned (for example)
Spec URL: http://flyn.org/SRPMS/linkchecker.spec SRPM URL: http://flyn.org/SRPMS/linkchecker-4.7-4.fc7.src.rpm
* Umm.. still some directories are not owned. Currently, the file entry of your spec file can be simplified as: ----------------------------------------------------------- %files %defattr(-,root,root,-) <- Please add this %{_bindir}/linkchecker %{_datadir}/linkchecker/ %{python_sitelib}/linkcheck/ %{python_sitelib}/_linkchecker_configdata.* %ifarch x86_64 ppc64 %{python_sitearch}/linkcheck/ %endif %{_mandir}/man1/linkchecker.1* %lang(de) %{_mandir}/de/man1/linkchecker.1* %lang(fr) %{_mandir}/fr/man1/linkchecker.1* %doc TODO doc/ cgi-bin/ README COPYING --------------------------------------------------------------- * And still gettext po files are installed. By the way did you check that these .po file actually don't work? * And I noticed that the two files under /usr/share/linkchecker seem to be configuration files. IMO these files should be moved under %_sysconfdir and marked as %config(noreplace).
Spec URL: http://flyn.org/SRPMS/linkchecker.spec SRPM URL: http://flyn.org/SRPMS/linkchecker-4.7-5.fc7.src.rpm
This time: * linkchecker won't work: ----------------------------------------------------- [root@localhost mock]# linkchecker http://www.ioa.s.u-tokyo.ac.jp/~mtasaka/ Traceback (most recent call last): File "/usr//bin/linkchecker", line 527, in <module> config.init_logging(debug=options.debug) File "/usr/lib/python2.5/site-packages/linkcheck/configuration/__init__.py", line 161, in init_logging logging.config.fileConfig(filename) File "/usr/lib/python2.5/logging/config.py", line 76, in fileConfig formatters = _create_formatters(cp) File "/usr/lib/python2.5/logging/config.py", line 107, in _create_formatters flist = cp.get("formatters", "keys") File "/usr/lib/python2.5/ConfigParser.py", line 511, in get raise NoSectionError(section) ConfigParser.NoSectionError: No section: 'formatters' ------------------------------------------------------- - linkcheck/configuration/__init__.py really uses logging.conf - The configutaion directory path is set in _linkchecker_configdata.py * gettext .mo files - File entries of gettext .mo files should be marked by using %find_lang. * rpmlint - rpmlint complains: -------------------------------------------------------- E: linkchecker non-executable-script /usr/share/linkchecker/examples/lc.cgi 0644 E: linkchecker non-executable-script /usr/share/linkchecker/examples/check_blacklist.sh 0644 E: linkchecker non-executable-script /usr/share/linkchecker/examples/lc.fcgi 0644 E: linkchecker non-executable-script /usr/share/linkchecker/examples/check_for_x_errors.sh 0644 E: linkchecker non-executable-script /usr/share/linkchecker/examples/check_urls.sh 0644 ---------------------------------------------------------
Spec URL: http://flyn.org/SRPMS/linkchecker.spec SRPM URL: http://flyn.org/SRPMS/linkchecker-4.7-5.fc7.src.rpm This should fix the three problems listed in comment #9.
Spec URL: http://flyn.org/SRPMS/linkchecker.spec SRPM URL: http://flyn.org/SRPMS/linkchecker-4.7-6.fc7.src.rpm This should fix the three problems listed in comment #9.
Well, * Still _linkchecker_configdata.py (and configuration/__init__.py) expects that linkcheckerrc and logging.conf are installed under /usr/share/linkchecker, not under /etc/linkchecker/. _linkchecker_configdata.py should be modified so that config_dir points to /etc/linkchecker. Also both logging.conf and linkcheckerrc should be moved under /etc/linkchecker and be marked as %config(noreplace) * And it seems to me that files under /usr/share/linkchecker/examples are documents and can be moved under /usr/share/doc/linkchecker-<version>.
Spec URL: http://flyn.org/SRPMS/linkchecker.spec SRPM URL: http://flyn.org/SRPMS/linkchecker-4.7-7.fc7.src.rpm I got rid of the examples entirely. The installer does not put them is a good spot. I'm not sure the value of installing example code in /usr/share/doc anyway. I did modify the installer to put the configuration files in /etc/linkchecker.
Almost okay, assiging.
Okay. for -7: * gettext .po files - Well, actually "LANG=de_DE linkchecker <URL>" works, however non-ascii characters are corrupted (same for fr, perhaps and for es) Changing the encoding from ISO-8859-1 to UTF-8 (by iconv) seems to work. Other things seems okay. Please fix the issue above and I think I can approve this package (if I did not overlook anything).
On my system, I don't see any corrupted characters. Both "LANG=de_DE man linkchecker" and "LANG=de_DE linkchecker http://www.flyn.org" look fine. No corrupt characters with linkchecker-4.7-7.fc7 here. I tested this using gnome-terminal and a text console.
Ah... I had to specify locale explicitly "LANG=de_DE.UTF-8"... Okay. -------------------------------------------------------- This package (linkchecker) is APPROVED by me --------------------------------------------------------
Please close this bug as NEXTRELEASE when rebuild is done.
ping again?