mmarzolla / queueing

A queueing package for GNU Octave
https://www.moreno.marzolla.name/software/queueing
GNU General Public License v3.0
0 stars 0 forks source link

DESCRIPTION.in #2

Closed Schamschula closed 5 months ago

Schamschula commented 5 months ago

The MacPorts port maintainer for Octave and Octave packages here.

The file name DESCRIPTION.in should be DESCRIPTION.

I get the error:

the DESCRIPTION file /opt/local/var/macports/build/_Users_marius_Development_MacPorts_ports_octave_octave-queueing/octave-queueing/work/tmp-build could not be read: invalid stream object

unless I rename the file.

mmarzolla commented 5 months ago

DESCRIPTION.in contains a few variables (PROGNAME, VERSIONNUM, VERSIONDATE) that are replaced by the Makefile which generates the DESCRIPTION file after the substitution. That simplifies the release of a new version since I only need to change the values on the Makefile, and the change gets propagated (almost) everywhere. Could you please provide the command that triggers the error you reported?

Schamschula commented 5 months ago

The MacPorts octave package build system does quite a bit behind the scenes. However, in this instance the build process runs

/opt/local/bin/octave-cli -q -f -H --eval 'try; pkg build -verbose -nodeps /opt/local/var/macports/build/_Users_marius_Development_MacPorts_ports_octave_octave-queueing/octave-queueing/work/tmp-build /opt/local/var/macports/build/_Users_marius_Development_MacPorts_ports_octave_octave-queueing/octave-queueing/work/queueing-1.2.8.tar.gz; catch; disp(lasterror.message); exit(1); end_try_catch;'

I don't see any other output prior to the error.

mmarzolla commented 5 months ago

I can not reproduce the problem:

$ wget -q https://github.com/mmarzolla/queueing/releases/download/1.2.8/queueing-1.2.8.tar.gz
$ octave --eval "pkg build /home/moreno/tmp/build queueing-1.2.8.tar.gz"
$

and in /home/moreno/tmp/build there is indeed a file queueing-1.2.8-any-none.tar.gz.

The file DESCRIPTION.in is not present in the tarball at https://github.com/mmarzolla/queueing/releases/download/1.2.8/queueing-1.2.8.tar.gz , so I am wondering where it comes from (other than the source tree).

Schamschula commented 5 months ago

I figured it out: The MacPorts octave PortGroup defaults to the archive fetch method for GitHub. In this case we need to override this with the releases method to get the correct tarball.

Fixed: https://github.com/macports/macports-ports/commit/2c1b74ce490574749464399399267f2f467068cf