Bug 221544 - [maintainer][patch] science/lamprop: Update to 3.4.
Summary: [maintainer][patch] science/lamprop: Update to 3.4.
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Luca Pizzamiglio
URL:
Keywords: patch
Depends on:
Blocks:
 
Reported: 2017-08-15 16:49 UTC by rsmith
Modified: 2017-12-29 14:27 UTC (History)
2 users (show)

See Also:


Attachments
Patch for the port. (1.17 KB, patch)
2017-08-15 16:49 UTC, rsmith
no flags Details | Diff
Updated patch for 3.3.3 and comments (1.80 KB, patch)
2017-08-20 14:37 UTC, rsmith
no flags Details | Diff
Updated patch for 3.4 & Python flavors. (2.28 KB, patch)
2017-12-23 20:52 UTC, rsmith
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description rsmith 2017-08-15 16:49:47 UTC
Created attachment 185452 [details]
Patch for the port.

Update lamprop to 3.3.2. Output of the tests as advised by the porters handbook shown below:

# make stage
===>  License BSD2CLAUSE accepted by the user
===>   lamprop-3.3.2 depends on file: /usr/local/sbin/pkg - found
=> rsmith-nl-lamprop-3.3.2_GH0.tar.gz doesn't seem to exist in /usr/ports/distfiles/.
=> Attempting to fetch https://codeload.github.com/rsmith-nl/lamprop/tar.gz/3.3.2?dummy=/rsmith-nl-lamprop-3.3.2_GH0.tar.gz
rsmith-nl-lamprop-3.3.2_GH0.tar.gz              0% of   51 kB    0  Bps
rsmith-nl-lamprop-3.3.2_GH0.tar.gz            100% of   51 kB  294 kBps 00m00s
===> Fetching all distfiles required by lamprop-3.3.2 for building
===>  Extracting for lamprop-3.3.2
=> SHA256 Checksum OK for rsmith-nl-lamprop-3.3.2_GH0.tar.gz.
===>  Patching for lamprop-3.3.2
===>   lamprop-3.3.2 depends on file: /usr/local/bin/python3.6 - found
===>  Configuring for lamprop-3.3.2
===>  Building for lamprop-3.3.2
--- doc ---
--- lamprop ---
--- doc ---
cd doc; make all
--- lamprop ---
python3 build.py
--- doc ---
--- lamprop.1.pdf ---
--- lamprop.5.pdf ---
--- lamprop.1.pdf ---
mandoc -Tps lamprop.1 >lamprop.1.ps
--- lamprop.5.pdf ---
mandoc -Tps lamprop.5 >lamprop.5.ps
epspdf lamprop.5.ps
--- lamprop.1.pdf ---
epspdf lamprop.1.ps
--- lamprop.5.pdf ---
rm -f lamprop.5.ps
--- lamprop.1.pdf ---
rm -f lamprop.1.ps
===>  Staging for lamprop-3.3.2
===>   lamprop-3.3.2 depends on file: /usr/local/lib/python3.6/site-packages/numpy/core/numeric.py - found
===>   lamprop-3.3.2 depends on file: /usr/local/bin/python3.6 - found
===>   Generating temporary packing list
cd /home/rsmith/src/freebsd/ports-changes/lamprop/lamprop/work/lamprop-3.3.2 && make PREFIX=/home/rsmith/src/freebsd/ports-changes/lamprop/lamprop/work/stage/usr/local install
install -d /home/rsmith/src/freebsd/ports-changes/lamprop/lamprop/work/stage/usr/local/bin
install lamprop /home/rsmith/src/freebsd/ports-changes/lamprop/lamprop/work/stage/usr/local/bin
gzip -c doc/lamprop.1 >lamprop.1.gz
gzip -c doc/lamprop.5 >lamprop.5.gz
install -d /home/rsmith/src/freebsd/ports-changes/lamprop/lamprop/work/stage/usr/local/man/man1
install -d /home/rsmith/src/freebsd/ports-changes/lamprop/lamprop/work/stage/usr/local/man/man5
install -m 644 lamprop.1.gz /home/rsmith/src/freebsd/ports-changes/lamprop/lamprop/work/stage/usr/local/man/man1
install -m 644 lamprop.5.gz /home/rsmith/src/freebsd/ports-changes/lamprop/lamprop/work/stage/usr/local/man/man5
rm -f lamprop.1.gz lamprop.5.gz
====> Compressing man pages (compress-man)
# make check-orphans
====> Checking for pkg-plist issues (check-plist)
===> Parsing plist
===> Checking for items in STAGEDIR missing from pkg-plist
===> Checking for items in pkg-plist which are not in STAGEDIR
===> No pkg-plist issues found (check-plist)
# make package
===>  Building package for lamprop-3.3.2
# make install
===>  Installing for lamprop-3.3.2
===>   lamprop-3.3.2 depends on file: /usr/local/lib/python3.6/site-packages/numpy/core/numeric.py - found
===>   lamprop-3.3.2 depends on file: /usr/local/bin/python3.6 - found
===>  Checking if lamprop already installed
===>   Registering installation for lamprop-3.3.2
Installing lamprop-3.3.2...
# make deinstall
===>  Deinstalling for lamprop
===>   Deinstalling lamprop-3.3.2
Updating database digests format:   0%
Updating database digests format:   0%
Updating database digests format: 100%
Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 1 packages (of 0 packages in the universe):

Installed packages to be REMOVED:
	lamprop-3.3.2

Number of packages to be removed: 1
[1/1] Deinstalling lamprop-3.3.2...
[1/1] Deleting files for lamprop-3.3.2:   0%
[1/1] Deleting files for lamprop-3.3.2:   0%
[1/1] Deleting files for lamprop-3.3.2:  16%
[1/1] Deleting files for lamprop-3.3.2:  33%
[1/1] Deleting files for lamprop-3.3.2:  50%
[1/1] Deleting files for lamprop-3.3.2:  66%
[1/1] Deleting files for lamprop-3.3.2:  83%
[1/1] Deleting files for lamprop-3.3.2: 100%

Running make package as a normal user:

> make package
===>  License BSD2CLAUSE accepted by the user
===>   lamprop-3.3.2 depends on file: /usr/local/sbin/pkg - found
===> Fetching all distfiles required by lamprop-3.3.2 for building
===>  Extracting for lamprop-3.3.2
=> SHA256 Checksum OK for rsmith-nl-lamprop-3.3.2_GH0.tar.gz.
===>  Patching for lamprop-3.3.2
===>   lamprop-3.3.2 depends on file: /usr/local/bin/python3.6 - found
===>  Configuring for lamprop-3.3.2
===>  Building for lamprop-3.3.2
--- doc ---
--- lamprop ---
--- doc ---
cd doc; make all
--- lamprop ---
python3 build.py
--- doc ---
--- lamprop.1.pdf ---
--- lamprop.5.pdf ---
--- lamprop.1.pdf ---
mandoc -Tps lamprop.1 >lamprop.1.ps
--- lamprop.5.pdf ---
mandoc -Tps lamprop.5 >lamprop.5.ps
epspdf lamprop.5.ps
--- lamprop.1.pdf ---
epspdf lamprop.1.ps
--- lamprop.5.pdf ---
rm -f lamprop.5.ps
--- lamprop.1.pdf ---
rm -f lamprop.1.ps
===>  Staging for lamprop-3.3.2
===>   lamprop-3.3.2 depends on file: /usr/local/lib/python3.6/site-packages/numpy/core/numeric.py - found
===>   lamprop-3.3.2 depends on file: /usr/local/bin/python3.6 - found
===>   Generating temporary packing list
cd /home/rsmith/src/freebsd/ports-changes/lamprop/lamprop/work/lamprop-3.3.2 && make PREFIX=/home/rsmith/src/freebsd/ports-changes/lamprop/lamprop/work/stage/usr/local install
install -d /home/rsmith/src/freebsd/ports-changes/lamprop/lamprop/work/stage/usr/local/bin
install lamprop /home/rsmith/src/freebsd/ports-changes/lamprop/lamprop/work/stage/usr/local/bin
gzip -c doc/lamprop.1 >lamprop.1.gz
gzip -c doc/lamprop.5 >lamprop.5.gz
install -d /home/rsmith/src/freebsd/ports-changes/lamprop/lamprop/work/stage/usr/local/man/man1
install -d /home/rsmith/src/freebsd/ports-changes/lamprop/lamprop/work/stage/usr/local/man/man5
install -m 644 lamprop.1.gz /home/rsmith/src/freebsd/ports-changes/lamprop/lamprop/work/stage/usr/local/man/man1
install -m 644 lamprop.5.gz /home/rsmith/src/freebsd/ports-changes/lamprop/lamprop/work/stage/usr/local/man/man5
rm -f lamprop.1.gz lamprop.5.gz
====> Compressing man pages (compress-man)
===>  Building package for lamprop-3.3.2
Comment 1 Bartek Rutkowski freebsd_committer 2017-08-17 12:01:26 UTC
The patch, as it is, doesn't build properly, fails with following errors:

cd doc; make all
--- lamprop ---
python3 build.py
python3: not found
*** [lamprop] Error code 127

make[1]: stopped in /wrkdirs/usr/ports/science/lamprop/work/lamprop-3.3.2
--- doc ---
A failure has been detected in another branch of the parallel make

make[2]: stopped in /wrkdirs/usr/ports/science/lamprop/work/lamprop-3.3.2/doc
*** [doc] Error code 2

make[1]: stopped in /wrkdirs/usr/ports/science/lamprop/work/lamprop-3.3.2
2 errors

make[1]: stopped in /wrkdirs/usr/ports/science/lamprop/work/lamprop-3.3.2
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** Error code 1

Stop.
make: stopped in /usr/ports/science/lamprop

While you're fixing that, you could also get rid of the pkg-plist file in favor of PLIST_FILES and drop the make install instead of direct ${INSTALL_*} directives.
Comment 2 rsmith 2017-08-20 14:37:07 UTC
Created attachment 185605 [details]
Updated patch for 3.3.3 and comments

(In reply to comment #1)

I've re-worked the patch. It now requires the python3 meta-port, otherwise the `env` command in the script won't work. (I don't want to tie this to a particular minor version of Python 3.)

Also, the updated port Makefile now uses the INSTALL_* commands.

Additionally, I discovered that the documentation was out of date, so I improved that and rolled a 3.3.3 release, which is now the target.
Comment 3 Luca Pizzamiglio freebsd_committer 2017-09-05 17:15:14 UTC
The current python support in the infrastructure doesn't allow to build this package as requested.

The problem is: this is a python 3 port. That means that a python 3.x will be installed.
Unfortunately, it doesn't mean that all other python dependencies (in this case numpy) will be built against python3.

The default python version for the dependencies is defined by DEFAULT_VERSIONS.

Currently, concurrent support of python2 and python3 in the same repo is limited. There is some work going on and it will be soon possible to accept this PR.
Comment 4 rsmith 2017-09-06 21:44:34 UTC
(In reply to Luca Pizzamiglio from comment #3)

If there were a py3 version of the numpy port, that would also solve the problem.

But I'm fine with putting this PR on hold until the ports infrastructure can deal with python 3 packages.
Comment 5 rsmith 2017-12-23 20:52:54 UTC
Created attachment 189068 [details]
Updated patch for 3.4 & Python flavors.

Tested after flavors were introduced in the ports tree.

As a normal user:

Script started on Sat Dec 23 21:46:13 2017
slackbox:~/src/freebsd/myports/lamprop> make stage
===>  License BSD2CLAUSE accepted by the user
===>   lamprop-3.4 depends on file: /usr/local/sbin/pkg - found
===> Fetching all distfiles required by lamprop-3.4 for building
===>  Extracting for lamprop-3.4
=> SHA256 Checksum OK for rsmith-nl-lamprop-3.4_GH0.tar.gz.
===>  Patching for lamprop-3.4
===>   lamprop-3.4 depends on file: /usr/local/bin/python3.6 - found
===>  Configuring for lamprop-3.4
===>  Building for lamprop-3.4
cd /home/rsmith/src/freebsd/myports/lamprop/work/lamprop-3.4 && python3.6 build.py
===>  Staging for lamprop-3.4
===>   lamprop-3.4 depends on package: py36-numpy>0 - found
===>   lamprop-3.4 depends on file: /usr/local/bin/python3.6 - found
===>   Generating temporary packing list
install  -m 555 /home/rsmith/src/freebsd/myports/lamprop/work/lamprop-3.4/lamprop /home/rsmith/src/freebsd/myports/lamprop/work/stage/usr/local/bin
install  -m 444 /home/rsmith/src/freebsd/myports/lamprop/work/lamprop-3.4/doc/lamprop.1 /home/rsmith/src/freebsd/myports/lamprop/work/stage/usr/local/man/man1
install  -m 444 /home/rsmith/src/freebsd/myports/lamprop/work/lamprop-3.4/doc/lamprop.5 /home/rsmith/src/freebsd/myports/lamprop/work/stage/usr/local/man/man5
====> Compressing man pages (compress-man)
slackbox:~/src/freebsd/myports/lamprop> make check-orphans
====> Checking for pkg-plist issues (check-plist)
===> Parsing plist
===> Checking for items in STAGEDIR missing from pkg-plist
===> Checking for items in pkg-plist which are not in STAGEDIR
===> No pkg-plist issues found (check-plist)
slackbox:~/src/freebsd/myports/lamprop> make package
===>  Building package for lamprop-3.4
slackbox:~/src/freebsd/myports/lamprop> portlint
WARN: Makefile: no port directory /usr/ports/math/py-numpy@py36 found, even though it is listed in RUN_DEPENDS.
0 fatal errors and 1 warning found.
slackbox:~/src/freebsd/myports/lamprop> exit
exit

Script done on Sat Dec 23 21:46:54 2017

Install/deinstall tests as root:

Script started on Sat Dec 23 21:47:05 2017
root@slackbox:/home/rsmith/src/freebsd/myports/lamprop # make install
===>  Installing for lamprop-3.4
===>  Checking if lamprop already installed
===>   Registering installation for lamprop-3.4
Installing lamprop-3.4...
root@slackbox:/home/rsmith/src/freebsd/myports/lamprop # make deinstall
===>  Deinstalling for lamprop
===>   Deinstalling lamprop-3.4
Updating database digests format: 100%
Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 1 packages (of 0 packages in the universe):

Installed packages to be REMOVED:
	lamprop-3.4

Number of packages to be removed: 1
[1/1] Deinstalling lamprop-3.4...
[1/1] Deleting files for lamprop-3.4: 100%
root@slackbox:/home/rsmith/src/freebsd/myports/lamprop # exit
exit

Script done on Sat Dec 23 21:47:17 2017
Comment 6 commit-hook freebsd_committer 2017-12-29 14:26:02 UTC
A commit references this bug:

Author: pizzamig
Date: Fri Dec 29 14:25:16 UTC 2017
New revision: 457507
URL: https://svnweb.freebsd.org/changeset/ports/457507

Log:
  science/lamprop: Update to 3.4

  PR:		221544
  Submitted by:	rsmith@xs4all.nl (maintainer)

Changes:
  head/science/lamprop/Makefile
  head/science/lamprop/distinfo
  head/science/lamprop/pkg-descr
  head/science/lamprop/pkg-plist
Comment 7 Luca Pizzamiglio freebsd_committer 2017-12-29 14:27:13 UTC
Committed. Thanks!