Bug 1190476
| Summary: | Review and acl request for pcmanfm-qt package | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Helio Chissini de Castro <helio> | ||||||||||||
| Component: | pcmanfm-qt | Assignee: | Mamoru TASAKA <mtasaka> | ||||||||||||
| Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||||||||||
| Severity: | medium | Docs Contact: | |||||||||||||
| Priority: | unspecified | ||||||||||||||
| Version: | rawhide | CC: | christoph.wickert, helio, mtasaka, rdieter, ti.eugene | ||||||||||||
| Target Milestone: | --- | ||||||||||||||
| Target Release: | --- | ||||||||||||||
| Hardware: | All | ||||||||||||||
| OS: | Linux | ||||||||||||||
| Whiteboard: | |||||||||||||||
| Fixed In Version: | pcmanfm-qt-0.9.0-6.fc22 | Doc Type: | Bug Fix | ||||||||||||
| Doc Text: | Story Points: | --- | |||||||||||||
| Clone Of: | Environment: | ||||||||||||||
| Last Closed: | 2015-02-25 19:43:08 UTC | Type: | Bug | ||||||||||||
| Regression: | --- | Mount Type: | --- | ||||||||||||
| Documentation: | --- | CRM: | |||||||||||||
| Verified Versions: | Category: | --- | |||||||||||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||||||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||||||||||
| Embargoed: | |||||||||||||||
| Attachments: |
|
||||||||||||||
|
Description
Helio Chissini de Castro
2015-02-08 13:05:02 UTC
Created attachment 989382 [details]
Spec file
First of all: At least please check the current pcmanfm-qt.spec http://pkgs.fedoraproject.org/cgit/pcmanfm-qt.git/tree/pcmanfm-qt.spec?id=92a2d83c9876cd89a10fda2a49124bce90ba1cae , compare with your spec file, check the difference and examine if anything is missing on your spec file. * Source URL ------------------------------------------------------------- $ spectool -g ../SPECS/pcmanfm-qt.spec Getting http://lxqt.org/downloads/lxqt/0.9.0/pcmanfm-qt-0.9.0.tar.xz to ./pcmanfm-qt-0.9.0.tar.xz % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 curl: (22) The requested URL returned error: 404 Not Found ------------------------------------------------------------- * Requires - Explain why "R: lxqt-common" is newly added. - "pcmanfm-qt" must have EVR-%isa (Epoch-Version-Release) specific Requires for libfm-qt5 https://fedoraproject.org/wiki/Packaging:Guidelines?rd=Packaging/Guidelines#Requiring_Base_Package * Obsoletes / Provides - Manage properly Obsoletes / Provides for _all_ binary rpms which are created from current pcmanfm-qt (Fedora) srpm. * For example - As Qt4 support is removed, Obsoletes for "pcmanfm-qt4" "libfm-qt4" and so on is properly added. - Also Obsoletes / Provides must be version-specific: https://fedoraproject.org/wiki/Packaging:Guidelines?rd=Packaging/Guidelines#Renaming.2FReplacing_Existing_Packages * BR (BuildRequires) - Explain why changing BR is needed * At least check "CMakeLists.txt", especially "find_package", "pkg_check_modules" items in CMakeLists.txt in pcmanfm-qt tarball and write proper BuildRequires there (i.e. compare BRs in your spec file and current pcmanfm-qt.spec, and check if the changes are needed) * Expecially "kf5-kwindowsystem-devel" is mysterious. Where did this come from? * Check pkgconfig(Qt5Help), pkgconfig(Qt5Xdg) * And where is doxygen used? * %setup - add -q option (as written in the example of the below) https://fedoraproject.org/wiki/Packaging:Guidelines?rd=Packaging/Guidelines#Handling_Locale_Files * Scriptlets * <Again> /sbin/ldconfig is missing https://fedoraproject.org/wiki/Packaging:Guidelines?rd=Packaging/Guidelines#Shared_Libraries * <Again> desktop-file-validate or so is missing https://fedoraproject.org/wiki/Packaging:Guidelines?rd=Packaging/Guidelines#desktop-file-install_usage * <Again> desktop-database is missing https://fedoraproject.org/wiki/Packaging:ScriptletSnippets?rd=Packaging/ScriptletSnippets#desktop-database * Changelog, %description, etc - Respect other people's work. Please don't remove histories already in %changelog - And please check if you really have to change %description , Summary etc on the current spec file Extras (changed from the time I wrote the spec file) * License - Now license files must be marked as %license https://fedoraproject.org/wiki/Packaging:LicensingGuidelines?rd=Packaging/LicensingGuidelines#License_Text So please - read Fedora guidelines, and get familiar with those - read other people's works and respect them Ah, (also missing from my spec file)
* Language files
- *.qm files must be handled by %lang(foo), using
%find_lang pcmanfm-qt --with-qt
https://fedoraproject.org/wiki/Packaging:Guidelines?rd=Packaging/Guidelines#Handling_Locale_Files
Attached release 2 - Source url: FIXED - lxqt-common as new requires: pcmanfm-qt has resources now inside the lxqt-common package, including xdg data, icons. Without this depends it become incomplete - "pcmanfm-qt" must have EVR-%isa for libfm-qt5: No, it not. Libraries are automatic solved by rpm dependency solver. Rex Dieter can confirm this for me. - BR: All the build requires are properly placed. kf5-kwindowsystem is introduced in the 0.9.0 cycle of development as a replacement library for window task code. Qt5Help is needed because find_package(Qt5X11Extras 5.2 REQUIRED). Qt5Xdg is a explicit requires for new LXQt system, and is handled by the project. Doxygen comes from BUILD_DOCUMENTATION=ON. Was missing on last spec, but added again on release 2 - * %setup - add -q option: FIXED - Missing /sbin/ldconfig: FIXED - Destop validation and database: FIXED - License: No, the example on text is clear, need to be License: on header only. - Changelog: Changelog was there, just the two last entries are missing due to copied package before that was added. All other changelog was there: FIXED - Translation: FIXED I did everythign you requested. Created attachment 989656 [details]
Relase 2 with all changes requested
> lxqt-common as new requires: pcmanfm-qt has resources now inside the lxqt-common package, including xdg data, icons. Without this depends it become incomplete Check if its "incompleteness" is really important. Such dependency should be usually handed with kickstart or comps file,. > "pcmanfm-qt" must have EVR-%isa for libfm-qt5: > No, it not. Libraries are automatic solved by rpm > dependency solver. Rex Dieter can confirm this for me. Please read this again: https://fedoraproject.org/wiki/Packaging:Guidelines?rd=Packaging/Guidelines#Requiring_Base_Package It says: It is almost always better to over specify the version, so it is best practice to just use a fully versioned dependency: Requires: %{name}%{?_isa} = %{version}-%{release}. Devel packages are an example of a package that must require their base packages using a fully versioned dependency. i.e. This says even if library dependency itself can be resolved by rpmbuild dependency autodetector, *still* full version dependency must be added. > kf5-kwindowsystem is introduced in the 0.9.0 cycle of development as a replacement library for window task code. Please check which code in pcmanfm-qt actually uses kf5-kwindowsystem-devel header > Qt5Help is needed because find_package(Qt5X11Extras 5.2 REQUIRED) So *please read* the current pcmanfm-qt spec file. Currently there is "BR: pkgconfig(Qt5X11Extras)", which actually matches this requirement. > Qt5Xdg is a explicit requires for new LXQt system, and is handled by the project And actually where is this used in pcmanfm-qt source code? Again please read CMakeLists.txt and properly write needed BuildRequires. and please compare your spec file with the current. > License: No, the example on text is clear, need to be License: on header only. That is, now COPYING file must not be %doc but must be %license, i.e. %license COPYING > Translation: FIXED And now the directory %{_datadir}/%{name} or so is not owned by any packages. > Obsoletes: libfm-qt-devel Again obsoletes must be at least version specific. * And still upgrade path for libfm-qt-devel-common is not properly handled. Attached Release 3: - Strict library requires: DONE - KDE KWindowSystem removed: Dependency comes only on panel now - Qt5Help still needed: CMake Error at CMakeLists.txt:23 (find_package): By not providing "FindQt5LinguistTools.cmake" in CMAKE_MODULE_PATH this project has asked CMake to find a package configuration file provided by "Qt5LinguistTools", but CMake did not find one. This is included in Qt5Help package - libQtXdg requires: Removed, is handled now but liblxqt package. Was using suring the development cycle. - License: DONE - Translation dir ownership: FIXED I nassigned the ownership of this directory to lxqt-common, that is base dependency of most of the packages - Obsoletes issues: DONE Created attachment 990531 [details]
Release 3
For -3: - %license - Still libfm-qt5 package uses %doc for COPYING - Directory ownership issue > I nassigned the ownership of this directory to lxqt-common http://pkgs.fedoraproject.org/cgit/lxqt-common.git/commit/?id=c670aca8696aac74491dbc27144bce6ce7cbd1f0 In pcmanfm-qt.spec, %{_datadir}/%{name}/ is expanded as /usr/share/pcmanfm-qt, not /usr/share/lxqt . Still /usr/share/pcmanfm-qt, /usr/share/pcmanfm-qt/translations/ are not owned by any package. - And, I noticed that translation files under %_datadir/libfm-qt must also be handled by %find_lang (again, be careful with directory ownership issue) - Upgrade path for libfm-qt4-devel does not seem to be handled. Version 4 attached - Ownership of directories: DONE - License tag move: DONE - Obsoletes on libfm-qt4-devel package: DONE - libfm-qt translation files: DONE Created attachment 991381 [details]
Release 4
Now build log shows: warning: File listed twice: /usr/share/libfm-qt/translations/libfm-qt_ar.qm warning: File listed twice: /usr/share/libfm-qt/translations/libfm-qt_cs_CZ.qm warning: File listed twice: /usr/share/libfm-qt/translations/libfm-qt_de.qm warning: File listed twice: /usr/share/libfm-qt/translations/libfm-qt_es.qm warning: File listed twice: /usr/share/libfm-qt/translations/libfm-qt_fr.qm warning: File listed twice: /usr/share/libfm-qt/translations/libfm-qt_gl.qm warning: File listed twice: /usr/share/libfm-qt/translations/libfm-qt_it.qm warning: File listed twice: /usr/share/libfm-qt/translations/libfm-qt_ja.qm warning: File listed twice: /usr/share/libfm-qt/translations/libfm-qt_lt_LT.qm warning: File listed twice: /usr/share/libfm-qt/translations/libfm-qt_pt.qm warning: File listed twice: /usr/share/libfm-qt/translations/libfm-qt_ru.qm warning: File listed twice: /usr/share/libfm-qt/translations/libfm-qt_ru_RU.qm warning: File listed twice: /usr/share/libfm-qt/translations/libfm-qt_zh_TW.qm Created attachment 993181 [details]
Rekase 5
Fixed Last issue. Once more issue
- Now directory ownership for %{_datadir}/libfm-qt/translations is missing.
Please add this (to libfm-qt5 subpackage), i,e, add
%dir %{_datadir}/libfm-qt/translations
to libfm-qt.
Please request pcmanfm-qt commitment acl.
(In reply to Mamoru TASAKA from comment #16) > Please request pcmanfm-qt commitment acl. ... I already changed. Please commit. Done. Thanks pcmanfm-qt-0.9.0-6.fc22 has been submitted as an update for Fedora 22. https://admin.fedoraproject.org/updates/pcmanfm-qt-0.9.0-6.fc22 pcmanfm-qt-0.9.0-6.fc22 has been pushed to the Fedora 22 stable repository. If problems still persist, please make note of it in this bug report. |