Bug 232118

Summary: math/maxima: Update to 5.42.1, Take MAINTAINER'ship
Product: Ports & Packages Reporter: Lorenzo Salvadore <salvadore>
Component: Individual Port(s)Assignee: freebsd-ports-bugs (Nobody) <ports-bugs>
Status: Closed FIXED    
Severity: Affects Only Me CC: ndowens04, satosi.kimura
Priority: --- Keywords: easy, needs-qa
Version: Latest   
Hardware: Any   
OS: Any   
See Also: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=233768
Description Flags
maxima patch
koobs: maintainer-approval+
maxima patch - portlint corrections
maxima patch - correction
additional patch
maxima patch - full
maxima update to 5.42.1
salvadore: maintainer-approval+
maxima 5.42.1, simple license salvadore: maintainer-approval+

Description Lorenzo Salvadore freebsd_committer 2018-10-09 14:14:02 UTC
Created attachment 197966 [details]
maxima patch

I would like to adopt this port.

I also updated it to the most recent version.
Many other improvements are needed, but they will require some time and in the meantime this patch provides an up-to-date working version of maxima for whoever needs it.

Although many errors appear during the build, maxima works: I have tested it. (The errors seem related to the documentation)

I completed the informations about licenses. I added a BSD3CLAUSE license that should be verified: this is refered to the file ${WRKSRC}/LICENSES/getopts-license.txt. Its text is not exactly the BS3CLAUSE license but it is very similar and equivalent. For example, this is the text of the third clause of the file:

"3. Neither the name of the author nor the names of the contributors may be used to endorse or promote products devired from this software without specific prior written permission."

While the official BS3CLAUSE text is (source: https://opensource.org/licenses/BSD-3-Clause )

"3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission."
Comment 1 Kubilay Kocak freebsd_committer freebsd_triage 2018-10-10 06:39:10 UTC
Comment on attachment 197966 [details]
maxima patch

Port is unmaintained, implicit approval (pending QA)
Comment 2 Lorenzo Salvadore freebsd_committer 2018-10-10 08:05:46 UTC
Created attachment 197996 [details]
maxima patch - portlint corrections

Sorry, I am a new port maintainer, can you please explain me what the needs-qa keyword means? I read the description, but I did not understand if I should do some testing or wait that someone else does some testing to confirm that my patch works.

In case I am the one that has to test, I confirm that poudriere builds the port successfully. I also checked with portlint and found some mistakes that I have fixed in the correction of the patch.
Comment 3 Lorenzo Salvadore freebsd_committer 2018-10-12 11:26:31 UTC
Created attachment 198060 [details]
maxima patch - correction

I had forgot to define the permissions for a license. Strangely, although I had already tested it both with portlint and with poudriere I missed this error.
Comment 4 satosi.kimura 2018-10-12 15:57:11 UTC
Created attachment 198067 [details]
additional patch

> Although many errors appear during the build, maxima works:
> I have tested it. (The errors seem related to the documentation)

Did you use the original files/patch-doc_info_Makefile.in ?
In my environment, this patch was rejected, so I modify it.

Unfortunately, I have no knowledge about license.
Comment 5 Lorenzo Salvadore freebsd_committer 2018-10-12 16:47:09 UTC
Created attachment 198069 [details]
maxima patch - full

Thanks for your help!

Indeed, the original patch is rejected and the patch you provided is the same I produced, however I made a mistake when I created the diff file: I did not use diff recursively, so that the two files in the files directory were missing.

Thanks to you I have fixed it and the new patch has everything in it.

If you are interested in the updated version of maxima, you might also be interested in an updated version of lang/cmucl (if you want to build maxima with the cmucl option); you can find it here until it is commited: bug #232011.
Comment 6 satosi.kimura 2018-10-14 07:30:15 UTC
(In reply to Lorenzo Salvadore from comment #5)

> Thanks for your help!
You are welcome.

Now, I'm tasting new maxima on new cmucl. Of cource they run well.
Thank you too for your effort to update maxima and cmucl.

I cannot make attachment 198067 [details] obsolete without uploading
new attachment. So leave it against my will.
Comment 7 Nathan 2018-10-17 00:15:44 UTC
5.42.1 is out now
Comment 8 Lorenzo Salvadore freebsd_committer 2018-10-17 08:58:32 UTC
Thanks Nathan, I had not seen it yet.

I will provide the new version today or tomorrow, with some fixes I have already done to the Makefile (mainly style improvements, but I am also working to remove the documentation's errors and to provide a working test target).
Comment 9 Lorenzo Salvadore freebsd_committer 2018-10-18 15:24:21 UTC
I will provide the new version in a few more days than previously announced because I made some progress with the documentation and I would like to add them to the new patch.

I might also add a test option.
Comment 10 Lorenzo Salvadore freebsd_committer 2018-10-24 14:25:09 UTC
Created attachment 198554 [details]
maxima update to 5.42.1

This patch updates maxima to the last version (5.42.1) and brings many new features and fixes from the port point of view:

- no more errors with documentation: all the documentation that gmake was trying to build was already built in the distfile, then I just removed the documentation target and manually installed the already provided documentation; also, a DOCS option has been introduced, distinct from a MANPAGES option;

- new lisp implementation supported: CCL;

- new option: EXAMPLES;

- new option: TEST; failure of the tests does not imply that installation stops: this choice is necessary because if maxima is built with sbcl then maxima expects some tests to fail because of some sbcl's bug while they are instead successful (the bug has probably been corrected withouth the maxima team noticing it). Some tests also fail with the lisp implementation ccl unexpectedly: I think the patch can be commited anyway because it concerns only a few tests and the tests are all successful with sbcl and cmucl (last version, see bug #232011).

- license is more precise: unfortunately, maxima has one of those share folders with plenty of files, all with its own license and copyright. It seems all the specified licenses are some GPL variation (but I admit I have not read all of them yet) and I have updated the license consistently.
Comment 11 Lorenzo Salvadore freebsd_committer 2018-11-06 15:37:10 UTC
Created attachment 199014 [details]
maxima 5.42.1, simple license

I asked on the ports mailing lists how to deal with ports with many files having their own licenses such as this one (I wrote before about the share directory, but out of that directory there is still the same problem) and I was answered that I should specify only the main license and track all licenses of all files only if I really have nothing better to do.

Thus, I simplified the license field by keeping only the main license (GPLv2 with a special extra clause).
Comment 12 Lorenzo Salvadore freebsd_committer 2018-11-13 09:17:41 UTC
Changelog can be found here:

There is no distintinct changelog for 5.42.1.

I tested successfuly on poudriere with 11.2-RELEASE both with amd64 and i386. Portlint test is also successful.
Comment 13 Lorenzo Salvadore freebsd_committer 2018-11-13 09:54:14 UTC
(In reply to satosi.kimura from comment #6)

You can make your attachment obsolete by clicking on "Details" (next to your attachment), then "edit details" (next to [path] additional patch, i.e. your attachment title) and by checking the obsolete box.
Comment 14 satosi.kimura 2018-11-13 13:33:07 UTC
(In reply to Lorenzo Salvadore from comment #13)

According to your kindly advice, I can set it obsolete. Thank you.
Comment 15 commit-hook freebsd_committer 2019-01-06 03:14:16 UTC
A commit references this bug:

Author: swills
Date: Sun Jan  6 03:13:30 UTC 2019
New revision: 489434
URL: https://svnweb.freebsd.org/changeset/ports/489434

  math/maxima: Update to 5.42.1, cleanup

  While here, give maintainership to submitter

  PR:		232118
  Submitted by:	Lorenzo Salvadore <phascolarctos@protonmail.ch>

Comment 16 Steve Wills freebsd_committer 2019-01-06 03:14:35 UTC
Committed, thanks!