Bug 4215

Summary: Review Request: mlt-freeworld
Product: Package Reviews Reporter: Sérgio Basto <sergio>
Component: Review RequestAssignee: Richard <hobbes1069>
Status: RESOLVED FIXED    
Severity: normal CC: hobbes1069, musuruan, rpmfusion-package-review
Priority: P5    
Version: Current   
Hardware: All   
OS: GNU/Linux   
namespace:
Bug Depends on:    
Bug Blocks: 4    

Description Sérgio Basto 2016-08-28 07:40:55 CEST
Spec URL: http://www.serjux.com/rpms/mlt-freeworld.spec
SRPM URL: http://www.serjux.com/rpms/mlt-freeworld-6.2.0-3.fc23.src.rpm


Description:
MLT was packaged in Fedora proper with ffmpeg support , this package give us the freeworld part of the package , is just for F25+ and epel7 

This package is not eligible to be included in Fedora, because it depends on
ffmpeg.
Comment 1 Richard 2016-08-28 14:08:49 CEST
Quick spec review first.

- Summary tag on top? ;)

- BSD File
# mlt/src/win32/fnmatch.{c,h} are BSD-licensed.

Does fnmatch end up in the linux version since it's in the win32 folder? If not then you don't need to consider it for licensing purposes.

- Could use %make_install in %install (not the same as the depreciated %makeinsall)
Comment 2 Sérgio Basto 2016-08-28 21:28:00 CEST
(In reply to comment #1)
> Quick spec review first.
> 
> - Summary tag on top? ;)

fixed 

> - BSD File
> # mlt/src/win32/fnmatch.{c,h} are BSD-licensed.
> 
> Does fnmatch end up in the linux version since it's in the win32 folder? If not
> then you don't need to consider it for licensing purposes.
>

This are the licenses of source code , should I change here ? or in Fedora proper ? , but see that we don't remove win32 , from source , don't know what should do. 
 
> - Could use %make_install in %install (not the same as the depreciated
> %makeinsall)

fixed use %make_install and %make_build

I re-uploaded the source of the links .
Comment 3 Andrea Musuruane 2016-08-28 21:59:15 CEST
(In reply to comment #2)

> > - BSD File
> > # mlt/src/win32/fnmatch.{c,h} are BSD-licensed.
> > 
> > Does fnmatch end up in the linux version since it's in the win32 folder? If not
> > then you don't need to consider it for licensing purposes.
> >
> 
> This are the licenses of source code , should I change here ? or in Fedora
> proper ? , but see that we don't remove win32 , from source , don't know what
> should do. 

The License: field refers to the licenses of the contents of the binary rpm:
https://fedoraproject.org/wiki/Packaging:LicensingGuidelines

"GPLv3 and LGPLv2+ and BSD" would mean that the in the resulting *binary* RPM there some files under GLPv3, other files under LGPLv2+ and again others under BSD. I guess this is not the case.
Comment 4 Sérgio Basto 2016-08-28 22:54:17 CEST
(In reply to comment #3)
> (In reply to comment #2)
> 
> > > - BSD File
> > > # mlt/src/win32/fnmatch.{c,h} are BSD-licensed.
> > > 
> > > Does fnmatch end up in the linux version since it's in the win32 folder? If not
> > > then you don't need to consider it for licensing purposes.
> > >
> > 
> > This are the licenses of source code , should I change here ? or in Fedora
> > proper ? , but see that we don't remove win32 , from source , don't know what
> > should do. 
> 
> The License: field refers to the licenses of the contents of the binary rpm:
> https://fedoraproject.org/wiki/Packaging:LicensingGuidelines
> 
> "GPLv3 and LGPLv2+ and BSD" would mean that the in the resulting *binary* RPM
> there some files under GLPv3, other files under LGPLv2+ and again others under
> BSD. I guess this is not the case.

OK, fixed License: GPLv3 and LGPLv2+ , I removed the src/win32 after %setup , to be sure that is not used . 

# mlt/src/win32/fnmatch.{c,h} are BSD-licensed.
# be sure that aren't used
rm -r src/win32/
Comment 5 Sérgio Basto 2016-08-28 22:55:30 CEST
Spec URL: http://www.serjux.com/rpms/mlt-freeworld.spec
SRPM URL: http://www.serjux.com/rpms/mlt-freeworld-6.2.0-3.fc23.src.rpm


Description:
MLT was packaged in Fedora proper without ffmpeg support , this package give us
the freeworld part of the package , is just for F25+ and epel7 

This package is not eligible to be included in Fedora, because it depends on
ffmpeg.
Comment 6 Richard 2016-08-31 18:03:49 CEST
Package Review
==============

Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
[ ] = Manual review needed



===== MUST items =====

C/C++:
[x]: Package does not contain kernel modules.
[x]: Package contains no static executables.
[x]: Development (unversioned) .so files in -devel subpackage, if present.
     Note: Unversioned so-files in private %_libdir subdirectory (see
     attachment). Verify they are not in ld path.
[x]: Header files in -devel subpackage, if present.
[x]: Package does not contain any libtool archives (.la)
[x]: Rpath absent or only used for internal libs.

Generic:
[x]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
[-]: 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 is included in %license.
     Package requires base mlt package which contains the license file.
[x]: License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses. Licenses
     found: "*No copyright* GPL (v2 or later) (with incorrect FSF
     address)", "LGPL (v2.1 or later) (with incorrect FSF address)", "GPL
     (v2 or later)", "GPL (v3 or later)", "Unknown or generated", "MIT/X11
     (BSD like)", "*No copyright* LGPL (v2.1 or later) (with incorrect FSF
     address)", "LGPL (v2 or later) (with incorrect FSF address)", "BSL",
     "BSD (3 clause)", "GPL (v2 or later) (with incorrect FSF address)",
     "GPL (with incorrect FSF address)", "LGPL (v2.1 or later)". 323 files
     have unknown license. Detailed output of licensecheck in /home/build
     /fedora-review/mlt-freeworld/licensecheck.txt
[-]: License file installed when any subpackage combination is installed.
[-]: If the package is under multiple licenses, the licensing breakdown
     must be documented in the spec.
[x]: Package does not own files or directories owned by other packages.
     Note: Dirs in package are owned also by: /usr/share/mlt(mlt),
     /usr/share/mlt/avformat(mlt), /usr/lib64/mlt(mlt)
[x]: %build honors applicable compiler flags or justifies otherwise.
[x]: Package contains no bundled libraries without FPC exception.
[x]: Changelog in prescribed format.
[x]: Sources contain only permissible code or content.
[-]: Package contains desktop file if it is a GUI application.
[-]: Development files must be in a -devel package
[x]: Package uses nothing in %doc for runtime.
[x]: Package consistently uses macros (instead of hard-coded directory
     names).
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict.
[x]: Package obeys FHS, except libexecdir and /usr/target.
[-]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[x]: Requires correct, justified where necessary.
[x]: Spec file is legible and written in American English.
[-]: Package contains systemd file(s) if in need.
[x]: Useful -debuginfo package or justification otherwise.
[x]: Package is not known to require an ExcludeArch tag.
[x]: Package complies to the Packaging Guidelines
[x]: Package successfully compiles and builds into binary rpms on at least
     one supported primary architecture.
[x]: Package installs properly.
[x]: Rpmlint is run on all rpms the build produces.
     Note: There are rpmlint messages (see attachment).
[x]: Package requires other packages for directories it uses.
[x]: Package must own all directories that it creates.
[x]: All build dependencies are listed in BuildRequires, except for any
     that are listed in the exceptions section of Packaging Guidelines.
[x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[x]: Macros in Summary, %description expandable at SRPM build time.
[x]: Dist tag is present.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Package use %makeinstall only when make install DESTDIR=... doesn't
     work.
[x]: Package is named using only allowed ASCII characters.
[x]: Package does not use a name that already exists.
[x]: Package is not relocatable.
[x]: Sources used to build the package match the upstream source, as
     provided in the spec URL.
[x]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[x]: File names are valid UTF-8.
[x]: Large documentation must go in a -doc subpackage. Large could be size
     (~1MB) or number of files.
     Note: Documentation size is 0 bytes in 0 files.
[x]: Packages must not store files under /srv, /opt or /usr/local

===== SHOULD items =====

Generic:
[x]: If the source package does not include license text(s) as a separate
     file from upstream, the packager SHOULD query upstream to include it.
[x]: Final provides and requires are sane (see attachments).
[x]: Fully versioned dependency in subpackages if applicable.
     Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in mlt-
     freeworld-debuginfo
[?]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[x]: Scriptlets must be sane, if used.
[x]: Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[?]: Package should compile and build into binary rpms on all supported
     architectures.
     Built for x86_64 only.
[-]: %check is present and all tests pass.
[x]: Packages should try to preserve timestamps of original installed
     files.
[x]: Reviewer should test that the package builds in mock.
[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[x]: Sources can be downloaded from URI in Source: tag
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.

===== EXTRA items =====

Generic:
[x]: Rpmlint is run on debuginfo package(s).
     Note: No rpmlint messages.
[x]: Rpmlint is run on all installed packages.
     Note: There are rpmlint messages (see attachment).
[x]: Large data in /usr/share should live in a noarch subpackage if package
     is arched.


Rpmlint
-------
Checking: mlt-freeworld-6.2.0-3.fc26.x86_64.rpm
          mlt-freeworld-debuginfo-6.2.0-3.fc26.x86_64.rpm
          mlt-freeworld-6.2.0-3.fc26.src.rpm
mlt-freeworld.x86_64: W: spelling-error Summary(en_US) transcoders -> trans coders, trans-coders, transponders
mlt-freeworld.x86_64: W: spelling-error %description -l en_US ffmpeg -> MPEG
mlt-freeworld.x86_64: W: spelling-error %description -l en_US transcoders -> trans coders, trans-coders, transponders
mlt-freeworld.x86_64: W: spelling-error %description -l en_US xml -> XML, ml, x ml
mlt-freeworld.x86_64: W: spelling-error %description -l en_US extendible -> extensible, extendable, vendible
mlt-freeworld.x86_64: W: no-documentation
mlt-freeworld.src: W: spelling-error Summary(en_US) transcoders -> trans coders, trans-coders, transponders
mlt-freeworld.src: W: spelling-error %description -l en_US ffmpeg -> MPEG
mlt-freeworld.src: W: spelling-error %description -l en_US transcoders -> trans coders, trans-coders, transponders
mlt-freeworld.src: W: spelling-error %description -l en_US xml -> XML, ml, x ml
mlt-freeworld.src: W: spelling-error %description -l en_US extendible -> extensible, extendable, vendible
3 packages and 0 specfiles checked; 0 errors, 11 warnings.




Rpmlint (debuginfo)
-------------------
Checking: mlt-freeworld-debuginfo-6.2.0-3.fc26.x86_64.rpm
1 packages and 0 specfiles checked; 0 errors, 0 warnings.





Rpmlint (installed packages)
----------------------------
mlt-freeworld.x86_64: W: spelling-error Summary(en_US) transcoders -> trans coders, trans-coders, transponders
mlt-freeworld.x86_64: W: spelling-error %description -l en_US ffmpeg -> MPEG
mlt-freeworld.x86_64: W: spelling-error %description -l en_US transcoders -> trans coders, trans-coders, transponders
mlt-freeworld.x86_64: W: spelling-error %description -l en_US xml -> XML, ml, x ml
mlt-freeworld.x86_64: W: spelling-error %description -l en_US extendible -> extensible, extendable, vendible
mlt-freeworld.x86_64: W: no-documentation
2 packages and 0 specfiles checked; 0 errors, 6 warnings.



Requires
--------
mlt-freeworld (rpmlib, GLIBC filtered):
    /sbin/ldconfig
    libavcodec.so.57()(64bit)
    libavcodec.so.57(LIBAVCODEC_57)(64bit)
    libavdevice.so.57()(64bit)
    libavdevice.so.57(LIBAVDEVICE_57)(64bit)
    libavfilter.so.6()(64bit)
    libavfilter.so.6(LIBAVFILTER_6)(64bit)
    libavformat.so.57()(64bit)
    libavformat.so.57(LIBAVFORMAT_57)(64bit)
    libavutil.so.55()(64bit)
    libavutil.so.55(LIBAVUTIL_55)(64bit)
    libc.so.6()(64bit)
    libm.so.6()(64bit)
    libmlt.so.6()(64bit)
    libmlt.so.6(MLT_0.8.8)(64bit)
    libmlt.so.6(MLT_0.9.2)(64bit)
    libmlt.so.6(MLT_0.9.4)(64bit)
    libpthread.so.0()(64bit)
    libswscale.so.4()(64bit)
    libswscale.so.4(LIBSWSCALE_4)(64bit)
    mlt
    rtld(GNU_HASH)

mlt-freeworld-debuginfo (rpmlib, GLIBC filtered):



Provides
--------
mlt-freeworld:
    libmltavformat.so()(64bit)
    mlt-freeworld
    mlt-freeworld(x86-64)

mlt-freeworld-debuginfo:
    mlt-freeworld-debuginfo
    mlt-freeworld-debuginfo(x86-64)



Unversioned so-files
--------------------
mlt-freeworld: /usr/lib64/mlt/libmltavformat.so

Source checksums
----------------
https://github.com/mltframework/mlt/archive/v6.2.0/mlt-6.2.0.tar.gz :
  CHECKSUM(SHA256) this package     : dd2ee742e89620de78a259790f92a7cadad67f0e0a6c1ea7ed932f96fb739fff
  CHECKSUM(SHA256) upstream package : dd2ee742e89620de78a259790f92a7cadad67f0e0a6c1ea7ed932f96fb739fff


Generated by fedora-review 0.6.1 (f03e4e7) last change: 2016-05-02
Command line :/usr/bin/fedora-review -n mlt-freeworld-6.2.0-3.fc23.src.rpm -r -m fedora-rawhide-x86_64-rpmfusion_free
Buildroot used: fedora-rawhide-x86_64
Active plugins: Generic, Shell-api, C/C++
Disabled plugins: Java, Python, fonts, SugarActivity, Ocaml, Perl, Haskell, R, PHP
Disabled flags: EXARCH, DISTTAG, EPEL5, BATCH, EPEL6

*** APPROVED ***
Comment 7 Sérgio Basto 2016-08-31 20:29:33 CEST
Package CVS request
======================
Package Name:  mlt-freeworld
Short Description: MLT was packaged in Fedora proper without ffmpeg support, this package give us the freeworld part of the package, is just for F25+ and epel7 
Owners: sergiomb
Branches: f25 epel7
InitialCC:
----------------------
License tag: free

Thanks!
Comment 8 Sérgio Basto 2016-09-01 19:02:11 CEST
built in koji 

Thanks
Comment 9 Nicolas Chauvet 2016-09-02 08:09:40 CEST
Thx for the fix,
BTW there is probably a need to explicitly requires mlt-freeworld for packages that was previously using mlt.