Bug 661660 - Review Request: metamorphose2 - A cross platform file and folder mass renamer
Summary: Review Request: metamorphose2 - A cross platform file and folder mass renamer
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Mohamed El Morabity
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2010-12-09 10:36 UTC by Pierre-YvesChibon
Modified: 2011-01-07 19:59 UTC (History)
3 users (show)

Fixed In Version: metamorphose2-0.7.1-4.fc14
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2011-01-07 19:59:28 UTC
Type: ---
Embargoed:
pikachu.2014: fedora-review+
j: fedora-cvs+


Attachments (Terms of Use)

Description Pierre-YvesChibon 2010-12-09 10:36:57 UTC
Spec URL: http://pingou.fedorapeople.org/RPMs/metamorphose2.spec
SRPM URL: http://pingou.fedorapeople.org/RPMs/metamorphose2-2.0.7.1-1.fc14.src.rpm
Description: 
A cross platform file and folder mass renamer, allows many different
renaming operations in a GUI. Features include search and replace (with RE),
insert, numbering, date/time, id3 & EXIF tag read, change length, get all
files in sub-dirs, undo/redo, etc.

Comment 1 Mohamed El Morabity 2010-12-09 10:41:26 UTC
I will review it.

Comment 2 Mohamed El Morabity 2010-12-12 13:50:20 UTC
Some comments:

* The version should be 0.7.1, instead of 2.0.7.1. The RPMs and
  DEBs files provided by upstream have this version by the way.

* You should set as BR python2 and not python (in case of a switch to python3 as
  default Python interpreter).

* The .desktop file is not Freedesktop-compliant: see the validation error
  returned by desktop-file-install: 
    metamorphose2.desktop: error: (will be fatal in the future): value
    "Filesystem" in key "Categories" in group "Desktop Entry" requires another
    category to be present among the following categories: System
  Please fix it

Comment 3 Pierre-YvesChibon 2010-12-12 14:06:12 UTC
(In reply to comment #2)
> Some comments:
> 
> * The version should be 0.7.1, instead of 2.0.7.1. The RPMs and
>   DEBs files provided by upstream have this version by the way.

Although I agree to do the change, it means that the software will have to be renamed for metamorphose 3.

I would rather change the name to metamorphose and keep the 2 in the version number.

> * You should set as BR python2 and not python (in case of a switch to python3
> as
>   default Python interpreter).

I'll do this.

> * The .desktop file is not Freedesktop-compliant: see the validation error
>   returned by desktop-file-install: 
>     metamorphose2.desktop: error: (will be fatal in the future): value
>     "Filesystem" in key "Categories" in group "Desktop Entry" requires another
>     category to be present among the following categories: System

sed -i -e "s|Categories=Utility;Filesystem;|Categories=Utility;System;|" metamorphose2.desktop
added in %prep.

I will upload the new version once I hear your opinion about the name/version problem.

Comment 4 Pierre-YvesChibon 2010-12-15 08:58:34 UTC
I asked upstream who said that metamorphose1 and metamorphose2 can coexist.

I therefore renamed my rpm.

Spec URL: http://pingou.fedorapeople.org/RPMs/metamorphose2.spec
SRPM URL:
http://pingou.fedorapeople.org/RPMs/metamorphose2-0.7.1-2.fc14.src.rpm

Comment 5 Mohamed El Morabity 2010-12-20 15:18:34 UTC
* Since wxGTK is already required by wxPython, you don't need to set wxGTK as a
  Requires. But python-mutagen is required for multimedia tags support; please
  add it as Requires.

* The following files:
  - src/operations/greek_numb.py src/EXIF.py
  - src/mutagen/__init__.py
  are only used as libraries in metamorphose2, so:
  - they must not be executable
  - their shebang must be removed.
  See:
    http://fedoraproject.org/wiki/PackageMaintainers/Packaging_Tricks#Remove_shebang_from_Python_libraries

* You should not add the .gz extension to man pages listed in %files, you'd
  rather use the "*" joker:
    %files -f %{name}.lang
    %defattr(-,root,root,-)
    [...]
    %{_mandir}/man1/%{name}.1.*
    [...]

* gettext as BR is not really needed here, it is never called by the build
  tools.

Comment 6 Pierre-YvesChibon 2010-12-20 20:38:52 UTC
Changelog:
* Tue Dec 20 2010 pingou <pingou> 0.7.1-3
- Remove wxGTK from Requires
- Use wildcard for the man pages
- Remove gettext from BuildRequires
- Remove shebang from non-script files


Spec URL: http://pingou.fedorapeople.org/RPMs/metamorphose2.spec
SRPM URL:
http://pingou.fedorapeople.org/RPMs/metamorphose2-0.7.1-3.fc13.src.rpm

Comment 7 Mohamed El Morabity 2010-12-21 12:35:14 UTC
Here is the review.

MUST: rpmlint must be run on every package.
->OK, only false-positive spelling issues

MUST: The package must be named according to the Package Naming Guidelines.
->OK

MUST: The spec file name must match the base package %{name}, in the format
      %{name}.spec unless your package has an exemption.
->OK

MUST: The package must meet the Packaging Guidelines.
->OK

MUST: The package must be licensed with a Fedora approved license and meet the
      Licensing Guidelines.
->OK

MUST: The License field in the package spec file must match the actual license.
->OK, all files under GPL v2 or above

MUST: 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 must be included in %doc.
->N/A

MUST: The spec file must be written in American English.
->OK

MUST: The spec file for the package MUST be legible.
->OK

MUST: The sources used to build the package must match the upstream source, as
      provided in the spec URL.
->OK, md5sum = e03a93072865b5176ddb4c07af97dd51

MUST: The package MUST successfully compile and build into binary rpms on at
      least one primary architecture.
->OK, see http://koji.fedoraproject.org/koji/taskinfo?taskID=2680921

MUST: If the package does not successfully compile, build or work on an
      architecture, then those architectures should be listed in the spec in
      ExcludeArch.
->N/A

MUST: All build dependencies must be listed in BuildRequires, except for any
      that are listed in the exceptions section of the Packaging Guidelines ;
      inclusion of those as BuildRequires is optional.
->OK

MUST: The spec file MUST handle locales properly. This is done by using the
      %find_lang macro. Using %{_datadir}/locale/* is strictly forbidden.
->OK

MUST: Every binary RPM package (or subpackage) which stores shared library
files
      (not just symlinks) in any of the dynamic linker's default paths, must
      call ldconfig in %post and %postun.
->N/A

MUST: Packages must NOT bundle copies of system libraries.
->OK

MUST: If the package is designed to be relocatable, the packager must state
this
      fact in the request for review, along with the rationalization for
      relocation of that specific package. Without this, use of Prefix: /usr is
      considered a blocker.
->N/A

MUST: A package must own all directories that it creates. If it does not create
      a directory that it uses, then it should require a package which does
      create that directory.
>OK

MUST: A Fedora package must not list a file more than once in the spec file's
      %files listings. 
->OK

MUST: Permissions on files must be set properly. Executables should be set with
      executable permissions, for example. Every %files section must include a
      %defattr(...) line.
->OK

MUST: Each package must consistently use macros.
->OK

MUST: The package must contain code, or permissable content.
->OK

MUST: Large documentation files must go in a -doc subpackage.
->N/A

MUST: If a package includes something as %doc, it must not affect the runtime
of
      the application. To summarize: If it is in %doc, the program must run
      properly if it is not present.
->OK

MUST: Header files must be in a -devel package.
->N/A

MUST: Static libraries must be in a -static package.
->N/A

MUST: If a package contains library files with a suffix (e.g. libfoo.so.1.1),
      then library files that end in .so (without suffix) must go in a -devel
      package.
->N/A

MUST: In the vast majority of cases, devel packages must require the base
      package using a fully versioned dependency: Requires: %{name} =
      %{version}-%{release}.
->N/A

MUST: Packages must NOT contain any .la libtool archives, these must be removed
      in the spec if they are built.
->N/A

MUST: Packages containing GUI applications must include a %{name}.desktop file,
      and that file must be properly installed with desktop-file-install in the
      %install section.
->OK

MUST: Packages must not own files or directories already owned by other
      packages.
->OK

MUST: All filenames in rpm packages must be valid UTF-8.
->OK


Two small issues anyway:
* don't forget to add python-mutagen as a Requires. I belive it was absent-mindedness only ^^
* you don't need to tag %{_datadir}/doc/%{name} with %doc, it is done automatically for any file/folder installed in %{_datadir}/doc/
Yet I trust you to fix these issues before import.

So this package is APPROVED.

Comment 8 Pierre-YvesChibon 2010-12-21 14:24:04 UTC
Thanks for the review Mohamed, I will be careful to correct the final bits.


New Package SCM Request
=======================
Package Name: metamorphose2
Short Description: A cross platform file and folder mass renamer
Owners: pingou
Branches: f14
InitialCC:

Comment 9 Jason Tibbitts 2010-12-21 16:02:02 UTC
Git done (by process-git-requests).

Comment 10 Fedora Update System 2010-12-22 05:19:06 UTC
metamorphose2-0.7.1-4.fc14 has been submitted as an update for Fedora 14.
https://admin.fedoraproject.org/updates/metamorphose2-0.7.1-4.fc14

Comment 11 Fedora Update System 2010-12-22 19:50:15 UTC
metamorphose2-0.7.1-4.fc14 has been pushed to the Fedora 14 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update metamorphose2'.  You can provide feedback for this update here: https://admin.fedoraproject.org/updates/metamorphose2-0.7.1-4.fc14

Comment 12 Fedora Update System 2011-01-07 19:59:22 UTC
metamorphose2-0.7.1-4.fc14 has been pushed to the Fedora 14 stable repository.  If problems still persist, please make note of it in this bug report.


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