Sign me up Login

Details about package wildmidi

Name: wildmidi (PTS)
Uploader: Bret Curtis <psi29a@gmail.com> (Debian QA page)
Description: wildmidi - software MIDI player
libwildmidi2 - software MIDI player library
libwildmidi-dev - software MIDI player library headers
libwildmidi-config - software MIDI player configuration

Package uploads

Upload #2

Information

Version: 0.4.6-1
Uploaded: 2024-11-11 21:11
Source package: wildmidi_0.4.6-1.dsc
Distribution: unstable
Section: sound
Priority: optional
Homepage: https://github.com/Mindwerks/wildmidi
Vcs-Browser: https://salsa.debian.org/games-team/WildMIDI
Vcs-Git: https://salsa.debian.org/games-team/WildMIDI.git
Closes bugs: #1082522

Changelog

 wildmidi (0.4.6-1) unstable; urgency=medium
 .
   * New upstream release.
   * Update control and metadata (Closes: 1082522)

QA information

Comments

  1. Hi Bret,
    
    The main issues that need to be resolved are the license 'debian/copyright' issues below. Some maybe false positives but a full review would be good.
    
    philwyett@ks-tarkin:~/Development/builder/debian/wildmidi-0.4.6$ lrc
    en: Versions: recon 3.0  check 3.3.9-1
    
    Parsing Source Tree  ....
    Reading d/copyright  ....
      Missing Files: Paragraph for debian/
    Running licensecheck ....
    
    d/copyright      | licensecheck
    
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man1/wildmidi.1
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_ClearError.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_Close.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_ConvertBufferToMidi.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_ConvertToMidi.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_FastSeek.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_GetError.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_GetLyric.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_GetMidiOutput.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_GetOutput.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_GetString.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_GetVersion.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_Init.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_InitVIO.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_MasterVolume.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_Open.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_OpenBuffer.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_SetCvtOption.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_SetOption.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_Shutdown.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_SongSeek.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man5/wildmidi.cfg.5
    LGPL-3           | GPL and/or LGPL-3 include/common.h
    LGPL-3           | GPL and/or LGPL-3 include/f_hmi.h
    LGPL-3           | GPL and/or LGPL-3 include/f_hmp.h
    LGPL-3           | GPL and/or LGPL-3 include/file_io.h
    LGPL-3           | LGPL-2.1+         include/filenames.h
    LGPL-3           | GPL and/or LGPL-3 include/f_midi.h
    LGPL-3           | GPL and/or LGPL-3 include/f_mus.h
    LGPL-3           | GPL and/or LGPL-3 include/f_xmidi.h
    LGPL-3           | BSD-2-Clause-NetBSD and/or BSD-2-clause include/getopt_long.h
    LGPL-3           | GPL and/or LGPL-3 include/gus_pat.h
    LGPL-3           | GPL and/or LGPL-3 include/internal_midi.h
    LGPL-3           | GPL and/or LGPL-3 include/lock.h
    LGPL-3           | LGPL-2+           include/mus2mid.h
    LGPL-3           | GPL and/or LGPL-3 include/patches.h
    LGPL-3           | GPL and/or LGPL-3 include/reverb.h
    LGPL-3           | GPL and/or LGPL-3 include/sample.h
    LGPL-3           | GPL and/or LGPL-3 include/wildmidi_lib.h
    LGPL-3           | GPL and/or LGPL-3 include/wildplay.h
    LGPL-3           | GPL and/or LGPL-3 include/wm_error.h
    LGPL-3           | GPL and/or LGPL-3 include/wm_tty.h
    LGPL-3           | LGPL-2+           include/xmi2mid.h
    LGPL-3           | GPL-3 and/or LGPL src/DevTest.c
    LGPL-3           | GPL and/or LGPL-3 src/f_hmi.c
    LGPL-3           | GPL and/or LGPL-3 src/f_hmp.c
    LGPL-3           | GPL and/or LGPL-3 src/file_io.c
    LGPL-3           | GPL and/or LGPL-3 src/f_midi.c
    LGPL-3           | GPL and/or LGPL-3 src/f_mus.c
    LGPL-3           | GPL and/or LGPL-3 src/f_xmidi.c
    LGPL-3           | BSD-2-Clause-NetBSD and/or BSD-2-clause and/or ISC src/getopt_long.c
    LGPL-3           | GPL and/or LGPL-3 src/gus_pat.c
    LGPL-3           | GPL and/or LGPL-3 src/internal_midi.c
    LGPL-3           | GPL and/or LGPL-3 src/lock.c
    LGPL-3           | LGPL-2+           src/mus2mid.c
    LGPL-3           | GPL and/or LGPL-3 src/patches.c
    GPL-3            | GPL and/or LGPL-3 src/player/amiga.c
    GPL-3            | GPL and/or LGPL-3 src/player/dos/dosdma.c
    GPL-3            | GPL and/or LGPL-3 src/player/dos/dosdma.h
    GPL-3            | GPL and/or LGPL-3 src/player/dos/dosirq.c
    GPL-3            | GPL and/or LGPL-3 src/player/dos/dosirq.h
    GPL-3            | GPL and/or LGPL-3 src/player/dos/dossb.c
    GPL-3            | GPL and/or LGPL-3 src/player/dos/dossb.h
    GPL-3            | GPL and/or LGPL-3 src/player/msleep.c
    GPL-3            | GPL and/or LGPL-3 src/player/out_ahi.c
    GPL-3            | GPL and/or LGPL-3 src/player/out_alsa.c
    GPL-3            | GPL and/or LGPL-3 src/player/out_coreaudio.c
    GPL-3            | GPL and/or LGPL-3 src/player/out_dart.c
    GPL-3            | GPL and/or LGPL-3 src/player/out_dossb.c
    GPL-3            | GPL and/or LGPL-3 src/player/out_netbsd.c
    GPL-3            | GPL and/or LGPL-3 src/player/out_none.c
    GPL-3            | GPL and/or LGPL-3 src/player/out_openal.c
    GPL-3            | GPL and/or LGPL-3 src/player/out_oss.c
    GPL-3            | GPL and/or ISC and/or LGPL-3 src/player/out_sndio.c
    GPL-3            | GPL and/or LGPL-3 src/player/out_wave.c
    GPL-3            | GPL and/or LGPL-3 src/player/out_win32mm.c
    GPL-3            | GPL and/or LGPL-3 src/player/wildmidi.c
    GPL-3            | GPL and/or LGPL-3 src/player/wm_tty.c
    LGPL-3           | GPL and/or LGPL-3 src/reverb.c
    LGPL-3           | GPL and/or LGPL-3 src/sample.c
    LGPL-3           | GPL and/or LGPL-3 src/wildmidi_lib.c
    LGPL-3           | GPL and/or LGPL-3 src/wm_error.c
    LGPL-3           | LGPL-2+           src/xmi2mid.c
    
    Regards
    
    Phil
    Needs work Phil Wyett at Nov. 12, 2024, 5:57 p.m.
  2. Hello Phil! Thanks again,
    
    as both GPL-2(+) and LGPL-2(+) are forward compatible with GPL-3(+) and LGPL-3(+); this shouldn't be an issue. As the author of some of those files, that was definitely the intent. I'll make sure it's taken care of by next release. 
    
    Indeed, the man files as statements about the LGPL in them to indicate that the interfaces are covered by that license, but also indicates that the man page itself is covered under the CC-BY-SA.
    Ready Bret Curtis at Nov. 13, 2024, 11:57 a.m.
  3. Also added issue to track this, lucky #256 :)
    https://github.com/Mindwerks/wildmidi/issues/256
    Ready Bret Curtis at Nov. 14, 2024, 8:38 a.m.
  4. Hi,
    
    Have you had time to review the 'debian/copyright' against the source tree?
    
    Example:
    
    LGPL-3           | LGPL-2+           src/xmi2mid.c
    
    Needs to be in copyrught file as LGPL-2+.
    
    and have all copyright holders, below is header
    
    /*
     * XMIDI: Miles XMIDI to MID Library
     *
     * Copyright (C) 2001  Ryan Nunn
     * Copyright (C) 2014  Bret Curtis
     * Copyright (C) WildMIDI Developers 2015-2016
     *
     * This library is free software; you can redistribute it and/or
     * modify it under the terms of the GNU Library General Public
     * License as published by the Free Software Foundation; either
     * version 2 of the License, or (at your option) any later version.
     *
     * This library is distributed in the hope that it will be useful,
     * but WITHOUT ANY WARRANTY; without even the implied warranty of
     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
     * Library General Public License for more details.
     *
     * You should have received a copy of the GNU Library General Public
     * License along with this library; if not, write to the
     * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
     * Boston, MA  02110-1301, USA.
     */
    
    License/Copyright issues are classed as RC bugs.
    
    Please let us know or file an RFS[1] when the task is complete, so we may review again.
    
    [1] https://mentors.debian.net/sponsors/rfs-howto/
    
    Regards
    
    Phil
    Needs work Phil Wyett at Dec. 16, 2024, 10:54 a.m.

Upload #1

Information

Version: 0.4.6-1
Uploaded: 2024-11-11 10:41
Source package: wildmidi_0.4.6-1.dsc
Distribution: unstable
Section: sound
Priority: optional
Homepage: https://github.com/Mindwerks/wildmidi
Vcs-Browser: https://salsa.debian.org/games-team/WildMIDI
Vcs-Git: https://salsa.debian.org/games-team/WildMIDI.git
Closes bugs: #1082522

Changelog

 wildmidi (0.4.6-1) unstable; urgency=medium
 .
   * New upstream release.
   * Update control an dmetadata (Closes: 1082522)

QA information

Comments

  1. Bret,
    
    Preamble...
    
    Thank you for taking the time to prepare this package and your contribution to the Debian project.
    
    The review below is for assistance. This review is offered to help package submitters to Debian mentors inorder to improve their packages prior to possible sponsorship into Debian. There is no obligation on behalf of the submitter to make any alterations based upon information provided in the review.
    
    Review...
    
    1. Build:
    
      * pbuilder [1]: Good
      * sbuild [2]: Good
    
    2. Lintian [3]: Information
    
    Running lintian...
    N:
    I: libwildmidi2: hardening-no-bindnow [usr/lib/x86_64-linux-gnu/libWildMidi.so.2.1.0]
    N: 
    N:   This package provides an ELF binary that lacks the "bindnow" linker flag.
    N:   
    N:   This is needed (together with "relro") to make the "Global Offset Table"
    N:   (GOT) fully read-only. The bindnow feature trades startup time for
    N:   improved security. Please consider enabling this feature or consider
    N:   overriding the tag (possibly with a comment about why).
    N:   
    N:   If you use dpkg-buildflags, you may have to add hardening=+bindnow or
    N:   hardening=+all to DEB_BUILD_MAINT_OPTIONS.
    N:   
    N:   The relevant compiler flags are set in LDFLAGS.
    N: 
    N:   Please refer to https://wiki.debian.org/Hardening for details.
    N: 
    N:   Visibility: info
    N:   Show-Always: no
    N:   Check: binaries/hardening
    N: 
    N:
    I: wildmidi: hardening-no-bindnow [usr/bin/wildmidi]
    N:
    I: libwildmidi2: symbols-file-missing-build-depends-package-field libWildMidi.so.2 [symbols]
    N: 
    N:   The symbols file for this package does not contain a Build-Depends-Package
    N:   meta-information field.
    N:   
    N:   This field specifies the name of the -dev package associated to the
    N:   library and is used by dpkg-shlibdeps(1) to make sure that the dependency
    N:   generated is at least as strict as the corresponding build dependency.
    N:   
    N:   This is useful as allows packages to not hardcode this information
    N:   multiple times.
    N:   
    N:   Note that the format of deb-symbols(5) files requires that the *
    N:   Build-Depends-Package: line should start in column one of the file and not
    N:   be indented to align with the symbols themselves. Please do not use the
    N:   placeholder #PACKAGE#. The development package for your shared library
    N:   must be stated explicitly.
    N: 
    N:   Please refer to The symbols File Format (Section 8.6.3.2) in the Debian
    N:   Policy Manual, the deb-symbols(5) manual page, the dpkg-shlibdeps(1)
    N:   manual page,
    N:   https://www.debian.org/doc/manuals/maint-guide/advanced.en.html#librarysymbols,
    N:   and Bug#944047 for details.
    N: 
    N:   Visibility: info
    N:   Show-Always: no
    N:   Check: debian/shlibs
    N: 
    N:
    P: wildmidi source: package-uses-old-debhelper-compat-version 12
    N: 
    N:   This package uses a debhelper compatibility level that is no longer
    N:   recommended. Please consider using the recommended level.
    N:   
    N:   For most packages, the best way to set the compatibility level is to
    N:   specify debhelper-compat (= X) as a Build-Depends in debian/control. You
    N:   can also use the debian/compat file or export DH_COMPAT in debian/rules.
    N:   
    N:   If no level is selected debhelper defaults to level 1, which is
    N:   deprecated.
    N: 
    N:   Please refer to the debhelper(7) manual page for details.
    N: 
    N:   Visibility: pedantic
    N:   Show-Always: no
    N:   Check: debhelper
    N: 
    N:
    P: wildmidi source: silent-on-rules-requiring-root [debian/control]
    N: 
    N:   The field Rules-Requires-Root is missing from the file debian/control.
    N:   
    N:   Over time, Debian has successively narrowed the steps for which elevated
    N:   privileges are required. It speeds up the building of installation
    N:   packages in the archive. Eventually, Debian will switch the default
    N:   archive-wide behaviour to expedite the build process further.
    N:   
    N:   Please declare explicitly that the sources do not require root privileges.
    N:   You can use the setting Rules-Requires-Root: no in the source stanza of
    N:   debian/control, but please verify with diffoscope(1) that the installation
    N:   packages produced are in fact identical.
    N: 
    N:   Please refer to usr/share/doc/dpkg/spec/rootless-builds.txt, debian/rules
    N:   and Rules-Requires-Root (Section 4.9.2) in the Debian Policy Manual, and
    N:   Rules-Requires-Root (Section 5.6.31) in the Debian Policy Manual for
    N:   details.
    N: 
    N:   Visibility: pedantic
    N:   Show-Always: no
    N:   Check: debian/control/field/rules-requires-root
    N:   Renamed from: rules-requires-root-missing
    N: 
    
    I: Lintian run was successful.
    
    3. Licenses [4]: Issue, possible false positives
    
    philwyett@ks-tarkin:~/Development/builder/debian/wildmidi-0.4.6$ lrc
    en: Versions: recon 3.0  check 3.3.9-1
    
    Parsing Source Tree  ....
    Reading d/copyright  ....
      Missing Files: Paragraph for debian/
    Running licensecheck ....
    
    d/copyright      | licensecheck
    
    CC-BY-SA-4.0     | LGPL-3            docs/license/LGPLv3.txt
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man1/wildmidi.1
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_ClearError.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_Close.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_ConvertBufferToMidi.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_ConvertToMidi.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_FastSeek.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_GetError.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_GetLyric.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_GetMidiOutput.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_GetOutput.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_GetString.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_GetVersion.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_Init.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_InitVIO.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_MasterVolume.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_Open.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_OpenBuffer.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_SetCvtOption.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_SetOption.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_Shutdown.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man3/WildMidi_SongSeek.3
    CC-BY-SA-4.0     | GPL and/or LGPL-3 docs/man/man5/wildmidi.cfg.5
    
    
    4. Watch file [uscan --force-download]: Good
    
    5. Build Twice [sudo pbuilder build --twice <package>.dsc]: Good
    
    6. Reproducible builds [5]: Good
    
    7. Install [No previous installs]: Good
    
    8. Upgrade [Over previous installs if any]: Good
    
    Additional...
    
    A. Correct the below line of 'debian/changelog'.
    
    * Update control an dmetadata (Closes: 1082522)
    
    Summary...
    
    I believe wildmidi is not yet ready for sponsorship at this time. Could the contributor rectify one of more of the raised issues.
    
    Regards
    
    Phil
    
    [1] pbuilder:
    
      * Command: sudo pbuilder build <PACKAGE>.dsc
      * Document: https://wiki.ubuntu.com/PbuilderHowto.
      * Document: https://wiki.debian.org/PbuilderTricks
    
    [2] sbuild:
    
      * Command: sbuild <PACKAGE>.dsc
      * Document: https://wiki.kathenas.org/pmwiki.php/Kathenas/Article00000002
      * Document: https://wiki.debian.org/sbuild
    
    [3] lintian:
    
      * Command: lintian -v -i -I -E --pedantic --profile debian (*.dsc, *.changes, *.buildinfo). Each can throw up different results, so be thorough.
      * Document: https://wiki.debian.org/Lintian
    
    [4] lrc:
    
      * Command: lrc
      * Document: https://wiki.debian.org/CopyrightReviewTools#licenserecon
    
    [5] reprotest
    
      * Command: sudo reprotest --vary=-build_path,domain_host.use_sudo=1 --auto-build <PACKAGE>.dsc -- schroot unstable-amd64-sbuild
      * Document: https://wiki.kathenas.org/pmwiki.php/Kathenas/Article00000004
      * Document: https://wiki.debian.org/ReproducibleBuilds/
      * Document: https://wiki.debian.org/ReproducibleBuilds/Howto#Newer_method
    Needs work Phil Wyett at Nov. 11, 2024, 2:39 p.m.
  2. Hello Phil, thanks for taking the time to review this!
    
    I've uploaded a new version that should have the lintian issues resolved, changelog updated an da few of the copyright things taken care of. 
    
    I don't think the lrc is fool proof though, as the man pages are CC-BY-SA. That being said, I should take care of headers better to make sure wildmidi is internally consistent. ^^ 
    
    The player should be GPLv3+ and the library LGPLv3+; I'll have that taken care of by the next release.
    Ready Bret Curtis at Nov. 11, 2024, 9:14 p.m.