Dear PDL folks, I have uploaded PDL 2.026_04.
This version has improvements to PP that make the generated XS code a little over half as long, by using C macros. The biggest gains are in the threadloops, which can now be comprehended because they are quite short, and all the repetitive stuff is in macros which are each no more than about 30 lines, and therefore each also comprehensible. It even compiles a few percent quicker! However, while this makes writing and debugging PP code easier, there are no substantive changes to PDL, so my aim to make the next full-release of PDL around the end of the week remains. Please let me (and/or the list) know if you find any problems! Best regards, Ed From: Ed .<mailto:ej...@hotmail.com> Sent: 01 March 2021 00:08 To: perldl<mailto:pdl-general@lists.sourceforge.net>; pdl-devel<mailto:pdl-de...@lists.sourceforge.net> Subject: PDL 2.026_03 released - please try it out Dear PDL folks, I have just uploaded PDL 2.026_03. As indicated below, this fixes things on FreeBSD 9 & 10 (I believe), and also makes asin (etc) only return complex results when given complex inputs. (This was because PP defaults to the last GenericTypes entry when given e.g. a byte, which “2” gets turned into – make “D” be last, and all is well) Please give it a try with all your scripts / modules, because if all goes well, I will release it as 2.027 within about a week, give or take. Best regards, Ed From: Ed<mailto:ej...@hotmail.com> Sent: 28 February 2021 12:34 To: Karl Glazebrook<mailto:karlglazebr...@mac.com> Cc: pdl-general@lists.sourceforge.net<mailto:pdl-general@lists.sourceforge.net> Subject: Re: [Pdl-general] pgplot instructions for Big Sur macOS Hi Karl, You’re quite right it’s not super-explicit on that point, though the tutorials linked from the page I linked are. Yes, GitHub have servers on which they run the “actions” (aka workflows). The splitting up of things has been under discussion for over 6 years. It has been prototyped extensively with PDLA, and has been proved to work well, and to increase maintainability (an important goal for me and my successor(s)) with no loss of functionality. My plan going forward is: * iron out remaining gremlins with the new “native complex” feature (FreeBSD 10 is pretending that “clog” is there when it’s not, and I want it to work as now with Perl scalars being real-only, so Craig doesn’t need to change his scripts) * do the last non-dev release of “big PDL” with that * split out a minimal PDL::Core into its own distro, and update the PDL libraries I control to depend on just that (for faster CI / installation) * split out other chunks like GSL, etc. With each one, “big PDL” will get a new version that depends on the chunks, so it will still install “everything including the kitchen sink” Best regards, Ed From: Karl Glazebrook<mailto:karlglazebr...@mac.com> Sent: Sunday, February 28, 2021 7:35 AM To: Ed .<mailto:ej...@hotmail.com> Cc: pdl-general@lists.sourceforge.net<mailto:pdl-general@lists.sourceforge.net> Subject: Re: pgplot instructions for Big Sur macOS The documents are all a bit meta. So they run on github servers? It is never clearly said that I could see. A split is fine if done properly and planned. Without that I’d prefer to keep it in. Karl On 16 Feb 2021, at 6:45 pm, Ed . <ej...@hotmail.com<mailto:ej...@hotmail.com>> wrote: Hi Karl, GitHub Actions are all explained in the link I gave in my previous message 😊 (spoiler: it’s a classic example of cloud computing) By “more modern” I’m referring to one of the many other possibilities like PLplot, Gnuplot, Prima – of the ones that already have PDL support (and that have better RGB support, among other features – see https://en.wikipedia.org/wiki/PGPLOT for info on e.g. PG2PLplot, a transition library)! The harm is in needing to ensure that ideally all of the PDL distribution (which has 99 separate components) works, in every release, which is a major task for the maintainer. A good solution would be to finally start pulling “PDL” the distribution into some of its component parts, as has long been discussed: for instance PDL::Core with maybe just the REPLs and the packages imported by “use PDL” would be a separate distribution; the various Proj libraries could be a separate component; the PGPLOT another; maybe GSL another one. That way if PDL::Graphics::PGPLOT needs fixing, that can be done (and released) independently. Best regards, Ed From: Karl Glazebrook<mailto:karlglazebr...@mac.com> Sent: 16 February 2021 07:23 To: Ed .<mailto:ej...@hotmail.com> Cc: pdl-general@lists.sourceforge.net<mailto:pdl-general@lists.sourceforge.net> Subject: Re: pgplot instructions for Big Sur macOS Right. I took a look at that yml file and I can sort of see what is going on. On what machine is that CI stuff being run? Re FreeBSD. Are there many users? I have no idea how ports files would work on that distribution, I haven’t even learned how to do this on Macports or Homebrew (though I should), but I can certainly advise someone on the command line tricks needed to build it. PGPLOT is not really ‘in PDL’. The module PDL::Graphics::PGPLOT is perl only, and depends on PGPLOT module being present and working - which is not part of PDL (and in fact predates it). I see no harm in leaving it in? I would be interested to know what you mean by ‘more modern alternatives’. Such as? Karl On 16 Feb 2021, at 1:15 pm, Ed . <ej...@hotmail.com<mailto:ej...@hotmail.com>> wrote: Whatever is specified in any “.github/workflows/*.yml”! https://docs.github.com/en/actions By the way, I think I’m about to make PGPLOT work somewhat better on FreeBSD in the imminent next version. The FreeBSD port says it’s not got a maintainer, and they’re asking for volunteers. Karl, if you’re keen on keeping PGPLOT going, that might be useful? I spun up a FreeBSD virtual machine this evening, there are many tutorials. One other possibility is for PGPLOT to get dropped from PDL, because it’s taking up a fair bit of effort, for not a great deal of benefit given there are various more modern alternatives. I’m reluctant, but there are only so many hours in the day. What do others think? Best regards, Ed From: Karl Glazebrook<mailto:karlglazebr...@mac.com> Sent: 16 February 2021 01:31 To: Ed .<mailto:ej...@hotmail.com> Cc: pdl-general@lists.sourceforge.net<mailto:pdl-general@lists.sourceforge.net> Subject: Re: pgplot instructions for Big Sur macOS OK . … in this case what ‘action’ is actually run? On 16 Feb 2021, at 12:25 pm, Ed . <ej...@hotmail.com<mailto:ej...@hotmail.com>> wrote: CI is “continuous integration”, run every time a commit is pushed to the server (or a pull request is created or updated) to give instant feedback on problems. GitHub Actions is the new-ish service provided by GitHub for this. It’s much better than Travis now is, given Travis are deliberately turning off their open-source support. GitHub actions are configured in the files under .github. There are tutorials which are very good, but the starting point we have works, which always helps 😊 From: Karl Glazebrook<mailto:karlglazebr...@mac.com> Sent: 16 February 2021 01:22 To: Ed .<mailto:ej...@hotmail.com> Cc: pdl-general@lists.sourceforge.net<mailto:pdl-general@lists.sourceforge.net> Subject: Re: pgplot instructions for Big Sur macOS Hi Ed Sorry for the dumb question - can you explain what ' GitHub Action CI’ is? Do I need to know about it? Karl On 15 Feb 2021, at 4:26 pm, Ed . <ej...@hotmail.com<mailto:ej...@hotmail.com>> wrote: I’ve updated the CPAN PGPLOT somewhat, including adding GitHub Action CI. I tried to make it also test on MacOS by using your instructions, but I don’t know enough about the MacOS specifics. I’ve left the attempt on a branch, hopefully a Mac expert (Karl? 😊) can fix it: https://github.com/PDLPorters/perl5-PGPLOT/tree/macos-ci From: Karl Glazebrook<mailto:karlglazebr...@mac.com> Sent: 14 January 2021 00:26 To: Ed .<mailto:ej...@hotmail.com> Cc: pdl-general@lists.sourceforge.net<mailto:pdl-general@lists.sourceforge.net> Subject: Re: pgplot instructions for Big Sur macOS Hi all An update on this. The config there uses Apple’s CC, but I have now come across some random segv’s that seem to be avoided if one uses GCC 11 and GFORTRAN 11. So I would recommend editing gfortran_cc_BigSur.conf from that patch to use GCC - and take it from http://hpc.sourceforge.net<http://hpc.sourceforge.net/> (which is where I got GFORTRAN) Karl On 7 Jan 2021, at 4:57 pm, Karl Glazebrook <karlglazebr...@mac.com<mailto:karlglazebr...@mac.com>> wrote: Here you go Ed et al: This below installs a fully functioning pgplot on my Big Sur ARM Mac in /usr/local/pgplot. I expect it will also work the same on Big Sur Intel. You need to have prerequisites: 1. Macports X11 installed in the usual place under /opt/… (I have xorg-server 1.20.10) 2. gfortran installed in /usr/local/... (I have version '11.0.0 20201128 (experimental)’ installed from http://hpc.sourceforge.net<http://hpc.sourceforge.net/>) Things are dynamically linked. # Run these shell commands to install pgplot curl --remote-name https://astronomy.swin.edu.au/~karl/pgplot/pgplot531.tar.gz curl --remote-name https://astronomy.swin.edu.au/~karl/pgplot/pgplotpatch.diff tar xvf pgplot531.tar.gz cd pgplotsrc patch -p 1 -i ../pgplotpatch.diff SRC=$PWD sudo mkdir /usr/local/pgplot cd /usr/local/pgplot sudo cp $SRC/drivers.list . sudo $SRC/makemake $SRC/ darwin gfortran_cc_BigSur sudo make sudo make clean ./pgdemo1 # Works I hope that can be passed on to the Macports, Homebrew people to take what tricks they need from this. I guess the patch and the latest hard to find pgplot tarball is the most important thing. The patch selects drivers that work and are relevant today, fixes up the makefile generator, and changes one line of code in the png driver to avoid an error. cheers Karl On 6 Jan 2021, at 2:18 am, Ed . <ej...@hotmail.com<mailto:ej...@hotmail.com>> wrote: Hi Karl, Could you capture on here what lines of code etc you changed, hopefully along with all the software versions you used etc, so that ideally someone else arriving fresh could do exactly what you did and get the same results? Best regards, Ed
_______________________________________________ pdl-general mailing list pdl-general@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/pdl-general