2.3.4
JC (23 Sep 02)
- Changes to Release_Notes associated
with making release 2.3.4
Frederic Magnard (2002-09-20)
- Fix NAXIS in fits writer with Astro::FITS::Header
TJ (2002-09-20) - wfits should now write SIMPLE as logical with
Astro::FITS::Header
TJ - wfits now works correctly with Astro::FITS::Header
TJ - Paper over weirdness in PDL::GSL build when Slatec is disabled.
TJ - func.t was failing if Slatec was not available. This was because
PDL::Func was loaded before PDL::Slatec in t/func.t. Now fixed
(and include an additional croak in PDL::Func).
TJ - Compatibility fixes for perl 5.005_03
+ updated ppport.h from perl 5.8.0
+ lvalue problems with slices.pd and primitive.pd
+ Graphics/PGPLOT/Window/Window.xs now uses ppport.h
TJ - Core.xs.PL used invalid XS for hdr and gethdr
DJB - Backported "_Inline removal to Makefile.PL & t/inlinepdlpp.t"
CS - version to 2.3.4
CS - backported a number of patches from the main branch
DB 9/11: Lite.pm typo
TJ 9/02: PDL::IO::Storable now uses PTR2IV
Fix valgrind warning in pdlapi.c
(use of uninitialised variable in dump)
Fix memory leak associated with magic
CED (19-Aug-02)
- Window.pm spinlock includes special release_and_barf to unlock signals.
(the Right Answer is to fix barf() to throw a __DIE__ signal;
but that opens other cans of worms.)
- documentation for some of the inplace-flag handlers
CED (16-Aug-02)
- indexND: runs faster; doesn't check boundaries at all
- indexNDb: includes "forbid" boundary condition (which barfs on violation)
- interpND: skips trivial cases for bilinear interpolation (factor-of-2
speedup for each dimension that is indexed by an integer)
- Window.pm:
* ->imag labels axes, if you pass in label fields as options.
* isolated initenv() viewport setup, so imag() can use it in pix code
CED (15-Aug-02)
- PGPLOT::Window fixes:
- ticks default to outside for images; inside for everyone else
- cleaned up pixel scaling code (used initenv() now) in imag
- Image alignment code - you can choose how the image fits within
the box if you explicitly set the scaling (or use fits_imag)
- fits_imag automagically draws wedges rather than modifying the title.
- draw_wedge position defaults to 1.5 rather than 2 (avoids cropping of
wedge labels in the default case).
CED (12-Aug-02)
- Minor speed increase to InterpND (still needs work!)
- PGPLOT::Window::(imag1|imag|fits_imag) now does pixel scaling correctly
(I hope) -- substituded pgqvp (viewport dims) for pgqvsz (window dims)
- Axes now default to having tick marks outside the box instead of inside
the box. That prevents scrozzling by images.
- pgwin() convenience function is a little more convenient
- Fix to spinlocks in Window.pm.
- gethdr() can return undef again; new method hdr() is always defined.
CED (9-Aug-02)
- Signal-deferral mechanism for PDL::Graphics::PGPLOT::Window should
avoid many pgplot-related weirdnesses
CED (8-Aug-02)
- Minor fixes to fits_imag, also in PDL::Graphics::PGPLOT::Window
- Minor fix to IndexND, in slice.pd
- now fits_imag doesn't attempt to reconcile different CTYPE units.
DJB (8-Aug-02)
- changed behaviour of TextWidth option in PDL::Graphics::PGPLOT::Window
It is now only applied if specified (ie doesn't default to 1 and so
clobber the LineWidth/HardLW settings). Added a little documentation
but it needs to be improved.
CED (7-Aug-02)
- Slightly cleaner MOD in ops.pd
- added interpND (to primitive.pd) and indexNDb (to slices.pd).
CED (6-Aug-02)
- New % operator follows (mathematically correct) perl % operator behavior
- AutoLoad throws an error if foo.pdl doesn't declare foo(). (used
to loop endlessly).
- AutoLoad error messages are more informative.
CS - hopefully fixed bug with new pdl(arrayref) implementation
CED (2-Aug-02)
- Add IndexND to slices.pd
- Add pdl output for scalar context to WhereND in primitive.pd
CED (1-Aug-02)
- Incorporate FITS into rpic/wpic interface (allow conversion code
to recognize drop-in replacement functions for rpic/wpic)
- Minor fix to FITS I/O version checking
CS - add PDL::IO::Storable and PDL::GSL::SF hierarchy
- fast pdl method! please test heavily
- don't do opengl tests unless opengl is actually built!
- mute annoying warnings from PP::PDLParObj
CS - explicitly load PDL::Core in PP boot section
- examples: make modules with Inline::Pdlpp!
CED (26-Jun-02)
PDL::Graphics::PGPLOT::Window::line() autoranging avoids infinity
CED (25-Jun-02)
Changes to PDL::Graphics::PGPLOT::Window:
- Added pgwin() -- exported constructor (less typing)
- Added =>Size option to constructor (less typing)
- Added =>Units option to constructor (PGPLOT units only at the moment)
- Interactive windows appear at the size you ask for. (less annoyance)
DJB - quoted "PDL::Type" in byte/short/.. fns in Core.pm to fix
problem seen with using 'use strict' with perl 5.6.0
CS - patch by Ken Williams to improve speed of 'pdl $perl_array_ref'
CS - check for Astro::FITS::Version >= 1.12
CED (17-Jun-02)
- add fits_imag to PGPLOT interface
CS - allow niceslice to use the syntax
$pdl($greater_1D_piddle)
which indexes into flattened $pdl; result has same shape
as $greater_1D_piddle
CS - allow PP Code to handle constructs like
$arr(n => 3*i+1)
if Text::Balanced is installed
- fix included Benchmark suite
- NiceSlice.pm: make splitprotected interface similar to split's
CS - fix PP.pm: bug #564937 (needed a check for sv_isobject(...) )
- make sure pp_done is called automatically if user forgets!
CS - applied Diab's patch #559860: improve trylink, Math/Makefile.PL
- applied Diab's patch #559885: overload 'eq'
- Inline::Pdlpp: fix join-bug, add MakePdlppInstallable to allow
installation of modules with Inline Pdlpp calls, update test
and INFO method
- allow to set trylink 'Hide' behaviour from perldl.conf (suggested
by Diab)
DJB (04 Jun 02)
- minor fixes to the build highlighted by warnings from perl 5.8.0
TJ (31 May 02)
- Use INT2PTR/PTR2IV to fix compiler warnings
when the IV size does not match the pointer size
(eg linux with -Dusermorebits). This will break compatibility
with perl 5.005 unless we add some of our own macros
- Fix prototype warning in rout.pd with PerlIO_print
- Apply CS's patch to CallExt.pm to prevent spurious
failure of DynaLoader in perl 5.8.0
2.3.3
JC (22 May 02)
- Changes to Release_Notes, PDL.pm associated
with making release 2.3.3
CS - bump up NiceSlice version
- gsl_random rng destructor!
- improve PDL::Exporter doc (I never remember the darn syntax)
CS - reshape behaviour like idl when no dim args are given
- niceslicing gets a new modifier: $a(;-) drops dims of size 1
CED (16 May 02)
- Several minor changes to Dumper and RandVar for compatibility with
BSD and perl 5.005
CS - Makefile.PL: warning if mods for NiceSlice missing
- IO/Misc: print warning at the end of the make output
- Graphics/PGPLOT: small change to the (still undocumented) autolog func
CED (15 May 02)
- Added Astro::FITS::Header recognition to PDL::IO::Dumper.
CED (14 May 02)
- Removed NiceSlicing from RandVar and Dumper (they use slice only now)
CED (from the distant past)
- Added PDL::IO::Dumper, which provides deep data structure storage
and retrieval in armored-ASCII format. Requires Data::Dumper
(from CPAN), FITSIO (also from CPAN), and uuencode(1).
CED (13 May 02)
- Modified legacy rfits/wfits support to handle strings more cleanly
(more like Astro::FITS::Header)
- Moved missing-module message to IO/Misc/Makefile.PL
- Added stringification test to t/misc.t
CED (10 May 02)
- Modified rfits/wfits to support Astro::FITS::Header as an underlying
FITS header driver. The fallback (to the more-or-less original KGB
code) is probably Wrong as string handling now changes depending
on the presence of Astro::FITS::Header;
whether Astro::FITS::Header is present; but ultimately everyone
just uses Astro::FITS::Header and the problem goes away.
CS - folded PDL-2_3-gimp-fix branch into main trunk
- typos
DJB (09 May 02)
- removed *.P files from Lib/Slatec/slatec/ (no longer needed)
CS - fix wcols bug #541847
- remove $Config{libs} from callext_cc to make callext work on
recent debian systems
**** possible source of incompatibility ******
- dumper.t: test only if uuencode/decode present
- lmfit example
- add diskcache.t to MANIFEST
CS - remove remaining call to pdl_family funcs in pdlapi.c
- apply perldl patch for -M switch (bug #530441)
CS - perldl v1.32: changed preprocess interface -> pipeline
- Pic.pm: make option parsing case insensitive
- Lvalue.pm : use attributes interface (fixes lvalues with bleadperl)
- Core: remove pdlfamily.c dependencies and delete the file
pdlapi.c: make_now noop, future_me etc stuff in pdl_destroy
- PP: make_now is really a noop with above family changes - removed
- doc updates
DJB (09 Apr 02)
- added 'use PDL::Math' to PDL.pm (but not Lite/LiteF versions)
(22 Apr 02)
- added Kaj Wiik's patch to use pgtbox in PGPLOT/Window.pm (#538831)
-- this needs documentation!
JB (07 Apr 02)
- Moved $CTAB to become part of the $self object in PGPLOT/Window.pm
This fixes the error that caused the second image plotted to hard-
copy devices to become blank.
DJB (02 Apr 02)
- added Ben Gertzfield's patch for bug #538283 (pptemplate.pod location)
CS - doc updates
- box2d in image2d.pd
- some more PGPLOT tline fixes
- PGPLOT autolog stuff (as yet undocumented)
- perldl -V (version info)
- remove 'use PDL::Core' from PdlParObj.pm (static linking)
- Makefile.PL: fix PDL::Config formatting,
make solaris/usemymalloc/gcc message even more verbose
- misc.pd: fix rasc bug (|| vs or)
- add BUGS file
DJB (27 Feb 02)
- added finite fix for HP-UX systems to math.pd (by Albert Chin)
CS - slice fix
- pdlcore.h.PL: gimp fix
- perldl Ctrl-C handling (Ken Williams tip!)
- polyfillv: make lvalue sub
DJB
- PDL::IO::NDF::rndf() now accepts NDF sections (01/08/02)
- added fft prototype to slatec.pd (from Jonathan Scott Duff, 01/17/02)
CS - INSTALL & DEPENDENCIES update (bug #488867)
- FlexRaw: read/write from open file handles (by Dov Grobgeld)
- IO::Misc: fix filehandle code for rcols etc.
add file handle awareness to rasc
- slices.pd: improve 'index' error message
CS - remove the defunct t/quat.t
- fix PDL::GSL to work with libgsl 1.X
CS - fix for #474736 (sym with points), needed that feature
- applied symsize patch #474853
CS - fix for Dev.pm: load PDL::Types only once
- stop PDL::IO::Pic warning by default
2.3.2
CS - change pdlcore.h.PL so that gimp-perl compiles
again
- Changes to Release_Notes, PDL.pm associated
with making release 2.3.2
2.3.1
John Cerney (11/21/01)
- Changes to Release_Notes, PDL.pm associated
with making release 2.3.1
DJB - added WITH_IO_BROWSER to perldl.conf (default 0) to
control whether PDL::IO::Browser is made. Will now compile
on MacOS X 10.1.
CS - get rid of Perl_die etc dependencies and other barfisms
- make sure t/inlinepdlpp.t has a full search path to PDL::Core
- Basic/Pod : podselect only when Pod::Select available
CS - fix Makefile/Dev.pm bugs (that break build on PDL-free
systems)
- bump version to 2.3.1
2.3
John Cerney (11/13/01)
- Changes to Release_Notes, PDL.pm, TODO associated
with making release 2.3
- |= &= bug fix
CS - inline fixes
- dim & ndims aliases for getdim & getndims
- perldl doc updates
- reverting perldl.conf changes introduced in CVS
- Makefile.PL: detect buggy solaris+gcc+mymalloc combination
CS - fix Dev.pm warnings (triggered by Inline::Pdlpp tests)
- Inline::Pdlpp docs
CS - fix bug in Dev.pm that I introduced
- change misleading topdl docs (fooled me!)
- macosx patch
CS - Tim's TERM patch
- Stefan's Matrix patch
- added PDL::API manpage
- PDL::Core::Dev helper functions for work with
Inline
- pictests only for internal PNM format
DJB (23/Oct/01)
- changes to bad.pd in order to clean up build slightly (for
instance we longer need to create pdlapi.c from pdlapi.c.PL)
- added Diab Jerius' patch [ #469110 ] for rvals/options
- added a test for this [and fixed a bug I'd introduced]
DJB (15/Oct/01)
- minor fix to ellipse (no longer requires options array) and to
imag (will correctly handle transforms for axes with "-ve" pixel
size, such as RA in Astronomy)
CS - Xrange, Yrange for PGPLOT, fix tline and tpoints
CS - niceslice docs, class methods for PDL::Options,
perldl: enable niceslicing at startup (if available)
Lvalue: add sever method
CS - Inline::Pdlpp docs addittions, test script added
CS - NiceSlice modifiers + bug fix
CS - Inline::Pdlpp !!!
DJB (23/Aug/01)
- you no longer need to surround options by {} for
PDL::Graphics::PGPLOT::Window->new()
JB - Added a recording feature to the PGPLOT interface.
CS - NiceSlice doc update
JB (14/Aug/01)
- Added a package wide store for options for env. This allows the
next device to reuse the most recent set of env options.
CS - minmax: return scalars!
- PDL::Options for PDL::Graphics::Karma
- disable PDL::PP SIG{__DIE__} overload by default
DJB (07/Aug/01)
- added VertSpace to ...PGPLOT::Window's legend()
CS - make sure perldl works with NiceSlice
- add nslice to lvalue funcs
- new 'sclr' method
- enhanced clump interface
- pdlapi: backport pdl_get vaffine
- experimental 'autosever' for PDL::NiceSlice
- quieter 'mkhtmldocs'
- fix OpenGL docs screwing up online help
DJB (05/Aug/01)
- applied wfits patch from Diab Jerius
([ #443431 ] wfits outputs illegal FITS keywords)
- added test for whist to t/hist.t from DIAB Jerius (patch #443438)
- added 'demo ooplot' to demonstrate "new" interface to PGPLOT
CS - PDLCode.pm: fix bug #441586: PDL::PP cant handle pars with numerals
CS - primitive.pd: fix random funcs so that they work with Perl's srand
* does it work on pre-5.6 perls? *
- update Lvalue documentation
CS - slices.pd: fix lags bug #436823
- Fit/Polynomial.pm: normalization wasn't threaded (bug #438335)
- PP.pm: make CoreSv linkage static (MacOSX)
- Basic.pm: apply whist patch
- PDL::SFilter renamed to PDL::NiceSlice
CS - fix MANIFEST
- fix 'reduce' docs
- SFilter improvements
- which and which_both now auto-flatten the input piddle
to match 'where' behaviour
- Core.pm: 'flat' change and added 'nslice'
- pdlcore.h : compatibility with C++ compilation
**** required renaming 'new' member of struct Core to 'pdlnew' !! ****
CS - Makefile.PL: Filter::Simple, Text::Balanced dependencies
- bad.pd: fix for win32
- Lib/Slatec/Makefile.PL: win32 fix
- t/flexraw.t: remove extraneous 'use ExtUtils::F77'
- t/poly.t: win32 needs larger error threshold ?:(
- t/sfilter.t: script broke on platforms without prereqs
- win32: general update for latest build; add slatec support
DJB (20/Jun/01)
- make bad.pd compile with PDL::Type changes and fix minor bug
CS - fix rvals bug (annoying one!)
- syntactical sugar: convenience operators for PDL::Type
CS - Basic/SourceFilter (see also L<PDL::SFilter>)
- generate PP templates with pptemplate
- PP: pp_boundscheck (see PP.pm)
CS - PP.pm: remove first '$this' arg from pp_add_exported!
- LM.pm: fix implementation bug; still not sure if it works properly
need more tests!
- apply Raul's debian patch
DJB (7/Jun/01)
- minor fix for rfits() with bad-value support
John Cerney (6/4/01)
- Doco fix in complex.pd
CS - image2d.t skip fix
- mslice update
- numeric for PDL::Char
DJB (24/May/01)
- fixed bug in Image2D::centroid2d when (x+box/2) > m (ditto for the y
axis). Added bad-value support to centroid2d and max2d_ind
DJB (8/May/01)
- OpenBSD doesn't seem to have values.h, which causes Basic/Math to fail:
see http://testers.cpan.org/search?request=dist&dist=PDL#2.2.1
Now using limits.h in Basic/Math/mconf.h for GNU systems - only tested
on solaris and i386-linux.
- fixed typo in debian/rules
John Cerney (5/3/01)
- Simple change to primitive.pd so that interpol sub
makes it into the PDL namespace, and not just the
PDL::Primitive namespace. Also added a simple test
case for this routine.
CS - F77CONF variable for debian build (see INSTALL)
2.2.1
John Cerney (4/25/01)
- Changes to Release_Notes, PDL.pm, TODO associated
with making release 2.2.1
CS - PDL::Lvalue -- PDL lvalue subs (added to loaders)
- PDL::Matrix -- added docs
- doc tidbits
- don't test raster and SGI formats any more (pic(no)*rgb.t)
John Cerney (4/11/01)
- Modified t/opengl.t to turn-off the PERL_DL_NONLAZY env variable
when running this test. Due to some inconsistencies in the opengl
headers (gl.h, glu.h) and what functions are actually in the opengl
libs, PDL's OpenGL.so sometimes (When using Mesa 3.3 for instance)
gets built with interfaces to functions that aren't there. Setting
PDL_DL_NONLAZY=0 prevents the test case from failing in these
cases.
DJB (10/Apr/01)
- hacked Core/Dev.pm to work with perl 5.6.1 (ExtUtils::Liblist has
changed although its documentation has not)
CS - applied Christopher Marshall's minimum_n_ind patch (bug #413184) + test
CS - fix mem leak patch so that core struct version croaking works
* NOTE: recent patches will require recompilation of any external
* modules that use PDL::PP; PDL will tell you when using such
* modules *
- barf is now really only an alias for croak; this is a test if we
can live with the original croak; we should be able to!
- update COPYING for the 21st century ;)
John Cerney (4/3/01)
- Modified Makefile.PL in Graphics to add '-lm' to the libs.
This fixes a 'Can't locate auto/PDL/Graphics/OpenGL/glpcOpenWin.al'
error in make test during opengl.t for some platforms.
Shouldn't hurt otherwise.
CS
- make_physvaffine is now a member of the core struct
- pdl_get is now vaffine aware (must be preceded by call to make_physvaffine)
- worke around bug in the core logic (pdl_make_physical et al.) that
cause index and others to leak memory; not the perfect solution yet
but core logic is just way too confusing to make sense of it!!!!!!
for details see comments in pdl_make_physical (pdlapi.c.PL) and
pdl_initthreadstruct (pdlthread.c)
- slatec: document the 'det' function
DJB (26/Mar/01)
- PDL::Func now sets bc => 'simple' as the default for Hermite
interpolation.
DJB (14/Mar/01)
- PGPLOT::Window changes: addressed "undefined window size" part
of bug #406858; added PosReference option + minor bug fix
to transform()
- renamed PosReference to RefPos. close() will print a message if
a hardcopy device and $PDL::verbose is set, hack to fix bug
#408589 (draw_wedge() erasing plot) for simple cases (15/Mar/01)
DJB (27/Feb/01)
- addressed PDL::Func bugs/doc issues as reported by
Halldór Olafsson and Vince McIntyre (bug #233484)
CS - fix bug in pow in math.pd (reported on perldl mailing list)
CS - fixed bug in writing pnms (bug #127696)
- Core.pm: temporary fix to work around core bug (see comments
in pdl_make_physical in pdlapi.c) that made convert
leak memory (related to bug #116501)
CS - fixed diagonal bug that caused apparently random errors
(bug #116502)
CS
- changes for win32 compatibility:
pdlcore.c: avoid die_where & co, use Perl_croak instead
Math/cpoly.c: win32 doesn't know about values.h
Lib/Image2D/resample.h: win32 doesn't know about M_PI
t/fastraw.t: skip mmap tests on win32
- slices.pd: possible rotate segfault fixed
- fix slight mslice problem (didn't make sure its inputs were
converted to int)
- new functions 'in' and 'uniq' in primitive.pd -> need tests
- image2d: a slightly faster median: med2df
- new function approx in Core.pm
**** attention: possible name clash; test scripts should *****
**** use tapprox from now on *****
2.2
John Cerney (20/12/00)
- Minor changes to Makefile.PL and Reduce.pm for compatibility with
perl 5.005
John Cerney (6/12/00)
- Added new curve fitting routine: Linfit. Finds
a linear-combination of specified functions
that best fits data. (Similar to Polynomial.pm)
Marc Lehmann (5/!2/00)
- Don't add artificial newlines in PdlParObj.pm, you never know what the
surrounding code might look like. Makes PDL compile with perl-5.7 again.
John Cerney (5/12/00)
- Updated log10 in ops.pd to have consistent
copy behavior for subclassed objects as discussed
in Objects.pod.
- Expanded the tests in t/subclass4.t to test for log10
and other simple functions.
CS - added some features to dice
Doug Burke
- rcols(): do not read an extra line with LINES option (Frank Samuelson)
- added draw_wedge() (& DrawWedge option to imag()) to PGPLOT
CS - fix call of Perl_croak in pdlthread.c for threading perls (reported
by Diab Jerius)
Doug Burke (03/11/00)
- removed $_ from shorttype method: fixes $_->info() bug
- perldl/pdldoc now list other matches to a help query (not wonderful)
- fixed 0.5 pixel shift in imag()
CS - fix bug in splitdim (didn't check nthdim) that can lead to coredumps
- Dev.pm: malloc debugging support
- Core.pm.PL: flat as clump(-1) alias
bug in mslice: cast indices to int added
Jarle Brinchmann (22/10/00)
- Further bug fixes to PGPLOT added (courtesy of Kaj Wiik). Also a
convenience function to calculate transforms (transform, courtesy
of Kaj Wiik).
- Examples/tests for the PGPLOT interface added in Example/PGPLOT
Jarle Brinchmann (21/10/00)
- Considerable re-write of PGPLOT. This now uses PDL::Option to
set options. There is also now a OO interface
PDL::Graphics::PGPLOT::Window which PDL::Graphics::PGPLOT now uses.
- New functionality includes:
- Interactive cursors (cursor)
- Text on plots (text)
- Legends (legend)
- Circles, Rectangles, Ellipses
- Multiple plot windows, oone can jump from panel to panel when
the window is divided in several.
- More control over options - see PDL::Graphics::PGPLOTOptions for
details.
This is not tested under Windows - and possibly not all functions work
as they used to..
Doug Burke (18/10/00)
- added warp2d (+ supporting fns) to PDL::Image2D. This allows
images to be resampled using 2D polynomials as basis functions.
- (19/10/00) bug fixes & clean up of documentation for above
- rfits() now sets hdrcpy flag of piddle (so that the FITS header is
copied to new piddles).
Doug Burke
- moved PDL::Type object from PDL::Core to PDL::Types. This shouldn't
affect most people.
CS
- split primitive.pd into primitive.pd and ufunc stuff (ufunc.pd)
- changed loaders to reflect this split (PDL.pm, Lite.pm, LiteF.pm)
- moved 'assgn' to PDL::Ops (since it's primarily used for
overloading '.=')
- added conv1d to primitive.pd -> this one was dropped
from the dist at some stage but it makes sense to have it
- Pic.pm: print conversion message only when debugging
- fixed a problem with TriD: APIENTRY not defined when
processing glu.h (since include files are ignored)
- added sever docs
- a reduce function for PDL (Reduce.pm)
- percentile projections patch applied to primitive.pd
- fix some thread_define problems
Doug Burke
- improved support for bad values in r/wfits and r/wndf
- added setbadtonan() to PDL::Bad.
- moved log10() entirely over to Basic/Ops/ops.pd (so it's no longer
defined in PDL::Core.
CS
- moved trylink to Dev.pm (L<PDL::Core::Dev>)
- modified Graphics/Makefile.PL accordingly
Doug Burke
- cleaned up endian support. Threw out my check_endian stuff since perl
already knows - there's a isbigendian fn in Dev.pm (eg see
IO/Misc/misc.pd)
- added setvaltobad() and setnantobad() to PDL::Bad, renamed replacebad()
to setbadtoval() (perhaps should keep it as an alias?)
setnantobad doesn't work (yet) if $PDL::Bad::UseNaN == 1
CS
- added Matrix.pm (suggestion by Stephan Heuel)
- Core.xs.PL: getdim, at and set now support the 'infinite dim'
piddle behaviour discussed on pdl-porters
- perldl: $bflag incorrect due to low 'and' precendence
- PDL.pm: the version was still far behind ;-(
- Basic.pm: PDL->null breaks inheritance
- Core.pm.PL: allow <2D piddles as arguments in creating functions
(not yet reflected in the docs). Another step on the way
to improve the balancing act between scalar and 1D piddles
and normal perl scalars
- Core.xs.PL, pdlcore.h.PL: PDL.malloc -> PDL.smalloc renamed
- Core/Makefile.PL: endian stuff only when WITH_BADVAL (reduce
likelihood of build problems); don't assume that '.' is in the
PATH (good distributions like DEBIAN avoid that ;)
- Doc/Perldl.pm: new (undocumented) aproposover function -- do
your own thing with returned matches
- karma.pd: PDL->malloc -> PDL->smalloc
Doug Burke (09/06/00-09/07/00)
- Core and pdl_trans structure are now the same, whatever the choice of
WITH_BADVAL and BADVAL_USENAN. The version number of the core has been
bumped to 2 (removing the need for Christian's recent patch) since this
is binary incompatible with PDL 2.1.1
- clean up of build process - both because of above change and also to
stop problems when switching between WITH_BADVAL = 1 and 0.
- exported several routines in PDL::Bad
Jim Edwards
- improved OpenGL detection during 'perl Makefile.PL'
Doug Burke (09/05/00)
- minor clean-up to the build process. Now creates Basic/Core/badsupport.p
in top-level Makefile.PL for when PDL::Config hasn't been created - fixes
setting BADVAL options in ~/perldl.conf
Doug Burke
- Bad value support integrated into the main branch. Set WITH_BADVAL to 1 in
perldl.conf to use. See Basic/BadValues.pod for more information and try
the two demos (demo bad, bad2).
Many of the internals have been tweaked (eg many more files are created at
compile time in Basic/Core - including Dev.pm; m51.fits is now installed
for the bad2 demo ...)
- Basic/Core now contains isbigendian.p - this is created at compile time.
IO::Misc::isbigendian uses this.
- IO::NDF now saves byte piddles as "_UBYTE", rather than "_BYTE", NDFs
- log10 is now in Ops (using C-library version), although a version is
left in Core.pm.PL so that log10(2.3) returns a perl scalar, not a 0D piddle
- removed 1-argument form of where() since been deprecated long enough
Jim Edwards
- swcols added to IO::Misc - like wcols but to a string, not a file
Jim Edwards (08/25/00)
- minor bugfix in TriD contour3d
- added Labels to TriD contour3d options
Doug Burke (08/12/00-08/13/00; 08/17/00)
- minor bugfix to Graphics/Karma/Makefile.PL
- made qsort and qsort_ind C routines in primitive.pd available to all
modules via the PDL Core structure (pdlcore.h is now created by pdlcore.h.PL)
and updated image2d.pd to use this (+ bug fix to patch2d)
- added double precision versions of sum, sumover, cumusumover (same for prod)
and average (eg dsum, daverage). Added prodover routine
Changed stats to use this (+ changed PDL::Tests to avoid name clashes)
- revamped Types.pm.PL
- made Inplace option for pp_def a bit more sensible
- marked several functions in math.pd as inplace (needs documenting)
- fixed rndf() so that can use rndf('../bob')
Jim Edwards (08/08/00)
- Major changes to the TriD code (requires perl 5.6.0)
Doug Burke (08/02/00)
- 'bool' to 'boolvar' in cpoly.c to get it to compile under Linux
- added 'Inplace' rule to PP.pm to flag a routine as inplace (see ops.pd)
- minor improvement to PP output if $::PP_VERBOSE is set
CS - ops.pd: fix inplace problem (reported by Tim Conrow)
Doug Burke (07/27/00)
- some minor changes to PP.pm & PDLCode.pm (no longer generates
'THISISxxx' macros in xs code unless they're required.
CS - PP: don't use copy method when HASP2Child
- Makefile.PL: no .3 manpages
CS - Core: pdl.h dependencies
- pdlapi.c: comments and debugging
- ops.pd: docs fixes
- PGPLtw.pd: doc fOT_demo: choose /GW on MSwin32
- mkpdlfuncpod: some experimentation
- Karma/Makefile.PL: malloc debugging support
- CallExt/Makefile.PL: malloc debugging support
- fftw.pd: doc fixes, exports and convolution
- slatec: error handler now calls croak (instead of being fatal)
- VRML: fix problem with prototype registration
Doug Burke (7/02/00 - 7/9/00)
- stopped some excess code generation & improve legibility of some code
in Basic/Gen/PP.pm and Basic/Gen/PP/PdlParObj.pm
- minor doc cleanup in Graphics/TriD/Rout/rout.pd (lack of head3 in pod)
- added a test to t/hdrs.t to pick up a bug I'd introduced
- replaced Basic/Core/mkpdlconv.p by Basic/Core/pdlconv.c.PL, removed
mention of pdlbasicops in Basic/Core/Makefile.PL
Tim Jenness (6/30/00)
- PDL::CallExt now works on WinNT with VC++
Doug Burke (6/29/00)
- added methods to PDL::Type - enum, symbol, ctype, ppsym, realctype
and shortctype - which provide access to information in PDL::Types
eg print byte->ctype prints "PDL_Byte".
Changed info in Core and rcols in IO/Misc to use these methods.
Currently un-documented.
Tim Jenness (6/28/00)
- miscellaneous patches for Win32 support
Make Callext.pm and callext.t more generic
Lib/Image2D check for presence of rint()
Add ABSTRACT and AUTHOR to top level Makefile.PL
- conv.t now uses the Test module
Doug Burke (6/21/00; 6/22/00)
- mkhtmldoc.pl should now handle links to scripts in Index.pod for
perl < 5.6.0. Removed link hacking for perl >= 5.6.0.
2.1.1
CS - fix Perl_croak problem with 'usethreading'
Doug Burke (6/15/00)
- hand-rolled podselect (podsel) created if perl version earlier than
5.6.0
Doug Burke (6/9/00)
- added Christian's changes to online documentation to support scripts
(eg see Index.pod or Index.html)
Jim Edwards (5/19/2000) TriD (cvs brance trid_experimental) (merged 6/7/00)
- several changes in TriD including a new Tk widget,
see the file PDL/Graphics/TriD/README
- added TkTriD demo to perldl.PL
2.1
Marc Lehmann (6/7/00)
- enable sincos optimization only for glibc >= 2.1
CS - warn if 5.004 that next version will require 5.005
- PL_na issue in PGPLOT.xs
- disable sincos optimization in complex.pd until glibc issues sorted
John Cerney (6/2/00)
- Updated FAQ to match the Jarle's version at
http://www-astro.physics.ox.ac.uk/~jarle/PDLfaq/pdlfaq_new.html
Doug Burke (5/31/00)
- more minor doc patches
John Cerney (5/26/00)
- Applied patch to fix reflect options in conv2d (image2D
function) not being symmetric. Ref sourceforge Patches 100287,
100359, and Bug 104614.
Doug Burke (5/25/00)
- added 'pdldoc' shell command to provide access to PDL documentation
without having to start up perldl
- cosmetic changes to output of usage + minor doc change to PDL::Basic
John Cerney (5/25/00)
- Modified PP.pm to call $arg1->copy for subclassed
objects in some simple cases, otherwise call
$class->initialize. See Basic/Pod/Objects.pod
for a detailed discussion.
Doug Burke (5/23/00,5/24/00)
- corrected faulty t/interp.t and t/interp_slatec.t scripts
- minor doc changes to Indexing.pod, image2d.pd, fft.pd & NDF.pm
- added FRAME option to iis (Graphics::IIS)
CS - hopefully the PDL::Filter modules will work now
a proper test should be added
Doug Burke (5/22/00)
- Graphics::IIS - now works with new PP code + minor doc changes
- Func - changed gradient() to work as described + added PDL::Func::
to method names in the documentation so they do not get picked up
by perldl's help (eg 'help set')
- \s to \\s in getfuncdocs() to avoid warning in Doc/Doc.pm
John Cerney (5/21/00)
- Minor Changes to Basic/Gen/PP.pm to fix error reporting, and
to get rid of some warning messages when run with the -w
switch
Doug Burke (5/19/00)
- Amalgated Interpolate & Interpolate::Slatec into PDL::Func (found
in Lib/). I've left the old files in the distribution, although they're
no longer made/installed, in case anyone wants to do a better job.
- minor doc changes to Image2D
zowie - Changed PGPLOT::im to PGPLOT::imag1 (1:1 aspect ratio shortcut).
Avoids conflict with the imaginary-component sub by the same name.
CS - fix for sever mem-leak -> ultimate source seems to be
a problem in destroytransform on un-physvaffined
piddle -- needs proper tracking down!!!!
- more types for Otherpars (PP.pm)
Doug Burke
- added PDL::Interpolate and PDL::Interpolate::Slatec which provide
a (hopefully) simple, OO interface to interpolation methods
CS - correct PDL::Ops docs
- fix problem in pdl_croak_param (pdlthread.c) due to changes
in Perl_mess in perl 5.6
- update TODO
zowie - Autoloader update (handles '+' for entire dir trees)
- Graphics::PGPLOT::imag update (includes options for image scaling)
- perldl update (minor fix to avoid null code ref bug in PDL::myeval)
CS - debian stuff
- image rotation (rot2d)
- karma kimagergb renamed to krgb
krgb -> can send 3d RGB piddles now (i.e. [3,x,y,z] piddles)
CS - quick (and semi-dirty) inplace fix for ops.pd
- slices.pd: fix xchg,mv not catching negative dims,
treat neg dim indices like neg perl array indices
Doug Burke (4/29/00)
- fixed interpol failing to recognise extrapolation at 'high' x +
added interpolate with slightly different error handling
- commented out 'use PDL::Lib::LLSQRout' in PDL/Lib/Gaussian.pm
Tim Jenness (4/26/00)
- Patch mconf.h so that it works on Alphas running Linux
Doug Burke
- fixed apropos command to work with perl 5.6.0
- t/poly.t failed on solaris 2.7 with new PP code. Changed check
from < 200 to < 210.
- added PDL:getdim to Core.pm documentation
Doug Hunt (4/26/2000)
- Merged fast-xswrapper branch back to main PDL tree.
- Left Ops thus:
All ops are are overloaded to call XS as directly as possible, but
the direct call of ops such as : $a->plus($b, 0) requires the '0' argument
which tells the XS routine 'plus' not to swap the arguments.
CS
- slight ops.pd changes
- match prototypes with original ones in complex.pd
- some more work on PP.pm (yet unfinished)
Doug Hunt (4/19/2000)
- Cleaned up Ops to take advantage of new fast XS wrappers
Doug Burke
- changes to pod to HTML conversion. Links between modules - eg
L<PDL::Graphics::PGPLOT|PDL::Graphics::PGPLOT> - should now work.
See Doc/mkhtmldoc.pl and Doc/scantree.pl
- minor doc changes to a number of files
- Improved output from apropos (aka ??) in the perldl shell:
1) ref string is now cleaned of any pod directives (eg C<$a> -> '$a')
2) the formatting has been improved, so that it fills the screen,
word-wraps, and indents the ref string if printed on new lines
3) better handling of long names
As an example, try 'perldl> ?? str' before and after.
However, it's a *horrible* hack - using undocumented parts of
Pod::Text to do 1 and 2, and calculation of screen width is poor.
Needs testing on perl 5.6.0 for a start!
CS
- applied vaffine leak fix to main branch
- new polyfill function (image2d.pd)
- some (unfinished) preparations for easier leak debugging, see perldl.conf
Doug Burke
- Added PCHIP routines tp PDL::Slatec (interpolation,
differentiation, and integration of functions).
Also moved creation of SlatecProtos.h from Makefile.PL
to slatec.pd
- stop wfits() from complaining when reading in the header
of FITS files from the DSS server at STScI
- minor clean up of write_dummy_make() Basic/Core/Dev.pm
- minor doc updates for PDL::Primitive and PDL::Basic
- converted FFTW and GSL to use write_dummy_make() in Makefile.PL
Tim Jenness
- Update PDL::IO::NDF to v1.02, enhance reading of axis errors
plus some bug fixes.
- Add test for PDL::IO::NDF
- Added polynomial fitting routines to PDL::Slatec (polfit,
pvalue and pcoef)
John Cerney
- Added (psuedo)-support for variable-size strings in PDL::Char
2.005
CS - version to 2.005
- finally try to fix 5.6.0 problem correctly
Doug Burke (4/4/00)
- Changed to Basic/Makefile.PL to install man pages for PDL,
PDL::Lite, PDL::LiteF, and PDL::Options.
- Changed Makefile.PL to allow installation of documentation if
INSTALLDIRS=perl (rather than site) is used
CS - applied Karl's 5.6 patch to pdlcore.c
- typo in Doug's error message fixed
Doug Hunt (3/23/00)
- Improved error messages in PDL::Graphics::PGPLOT for the case when the
correct version of PGPLOT (v2.16 or later) is not installed.
2.004
John Cerney (3/16/00)
- Added -lm to the Lib/Image2D/Makefile.PL suggested by Doug Burke
to fix a compile problem on Solaris 2.7.
John Cerney (3/15/00)
- Added Christian Pellegrin's bilinear and image scaling patch.
with cleaned up docs and test cases.
- Update Version to 2.004
Doug Hunt (3/8/00)
- Added 'use PDL::Graphics::PGPLOT' to Demos/PGPLOT_demo.pm. Now it works.
This bug was introduced in my 3/2 and 3/3/00 changes.
John Cerney (3/5/00)
- Modified Basic/Complex/Complex.pd to not generate warning messages
when re-defining the PDL overloaded operator subs.
Doug Burke
- IO::Misc - default type for DEFTYPE (rcols option) is now definable
using the $PDL::IO::Misc::deftype variable.
Doug Hunt (3/3/00)
- Removed PDL::Graphics::PGPLOT from PDL.pm. This had been causing
troubles due to the previous change which took away autoloading
in PGPLOT.
Doug Hunt (3/2/00)
- Updated Graphics/IO/PGPLOT, adding a typemap and a PGPLOT.xs file.
This change added capability to PDL::Graphics::PGPLOT::line, allowing
one to use the 'MISSING' option. When this option is specified, 'line'
will draw many disconnected polylines (delimited by the value specified
as 'MISSING') instead of just one. This is useful in drawing maps with
line.
Marc Lehmann
- Patch to Basic/Core/Dev.pm fix Parallel build bug. (Ref PDL-Porters Messages
dated 1/8/00 and 1/5/00.)
- Small Patch to Graphics/Karma/karma.pd. Change 'na' to 'PL_na';
(PDL-P msg 1/15/00)
Robin Williams:
- Patch to Graphics/TriD/OpenGL/generate.p to get
OpenGL working on OSF (it crunched because
perlxs interprets the #ifs as comments
if they're indented).
Karl Glazebrook:
- Patch to Perldl.PL to improve readlines handling:
- tells you which module it is using
- correctly informs whether editing is available or not
John Cerney
- Documentation fix for FlexRaw.pm (Based on change submitted
by Francois Primeau.)
- Updated Makefile in FFTW to correct a build problem that occurs
when both single and double FFTW libs are present. (suggested
by Diab Jurius).
- Updated TriD Makefile to find openGL libs specified in the
perldl.conf file.
- Updated Graphics/TriD/OpenGL/generate.p to include patch by
Diab Jerius (ref PDL-Porters message dated 11/9/99).
This fixes compilation problems with native openGL on solaris.
Note: Patch to Graphics/TriD/TriD/GL.pm was not applied. (Risk
of breaking GL on other platforms)
CS
- added function 'det' to PDL::Slatec -> calculate determinant
Doug Burke
- Graphics::LUT - added several intensity ramps, instead of just
using a linear scale.
- internal changes to Graphics::LUT - now stores data in external
FITS files rather than within the module to improve speed and
reduce use of disk-space.
- first attempt at improving installation of OpenGL stuff
- Graphics/IIS/iis.pd: minor change (re Christian's PP changes)
- Graphics/PGPLOT/PGPLOT.pm: add CENTRE option [bin()], doc update
- minor code cleanup for IO/NDF/NDF.pm and IO/Misc/misc.pd
- added docs for sethdr to Basic/Core/Core.pm
Marc Lehmann
- small changes to complex.pd: remove bogus Cneg, streamline docs.
Doug Burke
- added TYPES/DEFTYPE options to PDL::IO::Misc::rcols()
to specify the type of the piddles
NOTE: (!!!)
different from patch to 2.003 sent to perldl list
(http://www.xray.mpe.mpg.de/mailing-lists/perldl/2000-01/msg00037.html),
as you now specify the types directly, rather than as strings.
- added HEADER option to PDL::IO::Misc::wcols()
- added BORDER option to PDL::Graphics::PGPLOT
- added examples of new PGPLOT options to 'demo pgplot'
- added t/lut.t to test PDL::Graphics::LUT, and
added tests of options in rcols() to t/misc.t
- minor doc update for PDL::Primitive - example for whichND()
now works
CS
- introduced switch for automatic hdr copying, off by default
- PP: added pp_addbegin, pp_beginwrap and pp_setversion
pp_addxs now adds to the current module's namespace by default,
!not! to PDL anymore (patch by Marc Lehmann)
pp_addisa now really works as advertised (i.e. adds to
@ISA and doesn't split on whitespace anymore)
- misc.pd: bswap functions work always inplace, remove
[o] from sigs
- added PDL::Complex to the dist (first try of a derived class),
does remarkly many things already but needs some testing,
donated by Marc Lehmann
Doug Hunt
- added PDL::Char, a subtype of PDL which allows manipulation
of byte type PDLs as N dimensional arrays of fixed length
strings
Doug Burke
- added AXIS option to PDL::Graphics::PGPLOT + doc changes
- added PDL::LUT module to provide colour tables - useful for
PGPLOT's ctab() function (note: plan, in near future, to
change to a binary format to reduce size of this module)
CS
- Levenberg-Marquardt fitting module
- added required additional slatec functions + some docs
- some handy bits for PDL::Options function interface
- bool.t didn't make it into 2.002 (touch problem?)
- fftw.t test shouldn't rely on another module
- PDL::Doc: support input from more than one file
- Slatec/Makefile.PL: #include "g2c.h" seems unneccesary (and
leeds to trouble on my debian 2.1 system)
- PGPLOT patch from pdl-porters
- Robin's Basic/Math patches
2.003
Christian Pellegrin
- Patch to add an interface to the GSL
(GNU Scientific Library) package.
- Patch to compile under perl5.005_57
- Patch to add an interface to the FFTW
library. (A free C FFT library including
multi-dimensional, real, and parallel transforms)
Christian Soller
- Patch to add 'any' and 'all' functions to use for comparison
operations. (e.g. This enables things like any($pdl == 3.2)
or all($pdl > 0) )
- Patch to picnorgb test to fix greyscale and rgb
generation on some platforms.
- Misc Patch: Make Image.pm return 1.
Make the gaussian fit routines use the correct
xvals.
Karl Glazebrook:
- Patch to Basic/Core/Basic.pm to fix bug in
centre=> when operating on pre-existing array.
John Cerney:
- Put File::Spec in the PREREQ_PM list. (PDL now
requires File::Spec since PDL2.002)
- Removed of ExtUtils::F77 from the distribution.
Added ExtUtils::F77 to the PREREQ_PM list.
(ExtUtils::F77 is already on CPAN separately.
Having it also distributed with PDL causes
confusion.)
- Fixed cumuprodover docs to be similar to
cumusumover.
- Fixed typo in squaretotri function. (na
changed to mna)
- Fixed IO/FlexRaw to find properly find the
howbig function.
- Fixed export of rasc and rcube in IO/misc/
misc.pd.
Brian Craft:
- Patch to FastFaw.pm to fix sysread problems when
reading from fifos.
Lupe Christoph:
- Patch to OpenGL.xs to compile with perlio/sfio.
Brain Warner:
- Patch so t/poly.t doesn't fail if Slatec not
installed.
Robin Williams:
- Added Singular Value Decomposition (SVD) function.
- Patch to IO/Browser/hists/dec_osf.pl to fix
small syntax in -D_XOPEN_SOURCE_EXTENDED
define flag.
- Patch to Basic/Core/pdlthread.c to clarify
error messages when barfing.
- Patch to fix problems with generate.p and
OpenGL on Solaris.
Helmut Jarausch:
- Change to pldcore.c to fix problem compiling on
a IRIX6.5.3 box using perl 5.005_57
Mark Lehmann:
- Patch to pdlcore.h and PP.pm to overwrite
croak() via PP and not in pdlcore.h
Joshua Pritikin:
- Fix to Basic/Core/mkpldconv.p to change na
variable to n_a.
Al Danial:
- Patch to fix compilation on RS/6000
running AIX 4.3.2 and perl 5.004_04.
Doug Burke:
- Patch to iis.pd to allow the user
to change the title of an image
displayed with iis().
- Patch to IO/Misc/misc.pd:
1) Added option PERLCOLS so you can now read
in columns into perl arrays at the same
time as reading in data into piddles.
2) Changed the meaning of the 'c' parameter
in the LINES option. It will only affect
you if you use LINES together with
INCLUDE/EXCLUDE.
3) It now complains if you forget to surround
patterns by //
4) It will also warn you (if $PDL::verbose is true)
if no data is read in from a file.
- Patch to PP.pod docs to clearup PRIV/CODE usage.
Tim Pickering
- Patch to Basic/Math/Makefile.PL to get the bessy0
and bessyn working again in glibc 2.1 systems.
(glibc 2.0 as in RH 5.2 or
debian 2.1 is not affected)
2.002
John Cerney:
- Modified Basic/Core/Makefile.Pl so that ppport.h
gets properly installed.
- Removed Version.pm from distribution. This file now
gets auto-generated during the build process.
- Fixed permissions of Known_Problems file.
- Misc Changes to Doc/mkhtmldoc.pl and Doc/scantree.pl
to make html links work correctly.
- Minor documentation fixes.
Christian Soeller:
- Fixed documentation build problems. Install process
now builds a index html file.
- Changes to get the win32 activestate port
going. (available from
ftp://ftp.aao.gov.au:/pub/perldl/dev/Win32)
- Changes to compile under cygwin32.
Doug Burke:
- Modification to slices.pd docs clarifying the
usage of -1 to indicate the last element when
slicing.
- misc.pd doc modification to indicate that rcols()
will ignore lines beginning with a # character
if no pattern is specified.
- misc.pd patch to rcols where options can now
be given to:
only include lines matching a pattern
exclude lines matching a pattern
only use a specified range of line numbers
- Patch to Graphics/IIS/iis.pd to fix warning messages
when running with the perl -w flag.
Karl Glazebrook:
- Updated F77.pm to match version 1.10 of ExtUtils-F77.
- Added polynomial fit package Polynomial.pm
- Patch to Lib/Slatec/Makefile.Pl to fix problems
compiling on sparc/solaris
- Patch to Basic/Primitive/primitive.pd to make matmult
thread properly and to make matmult an exported function.
- Patch to Makefile.PL that allows PDL to be built and
installed conveniently away from it's final destination.
This is useful for making RPMs.
Joshua Pritikin:
- Patch to pdlcore.c moving some #defines around
to improve portability between perl versions.
Kristian Nielsen
- Patch to Basic/Primitive/primitive.pd to fix
whistogram and whistogram2d problems and updates
documentation.
Robin Williams
- Update to Basic/Math/Makefile.PL.
- Update to Basic/Primitive/Primitive.pd to
include new functions. zcover, andover, etc.
- Patch to FFT to fix but with single-column/row
kernels
Tim Jenness
- Patch to IO/NDF/NDF.pm that updates the
POD documentation and makes sure that the reader
skips any array extensions (like those generated
by Starlink CCDPACK).
- Patch to Lib/Slatec/Makefile.PL
to fix problems compiling slatec with g77 on Redhat
linux
- Patch to t/argtest.t, t/scope.t to get rid of
warning messages.
- Patch to perldl.PL that allows a user supplied
subroutine to be called to pre-process all perldl
strings.
James Williams:
- Patch to mkhtmldoc.pl to fix problem with not
generating all html files.
2.001
John Cerney:
- Added reference to the CPAN testers results page
to the README file.
- Fixed improper comments (causing warning messages)
for '#endif _pdlmagic_h' in pdlmagic.h
- Removed reference to PDL being only at 'alpha release'
in Indexing.pod.
- Updated Christian Soeller's email address in all files.
- Clarified docs on the RMS element returned by the stats
function.
- Changed how $PDL::VERSION is set so CPAN will pick it
up correctly:
* PDL::VERSION is now set directly in PDL.pm
* Makefile.PL reads $PDL::VERSION from PDL.pm and
auto-generates Basic/Version.pm
Joshua Pritikin: Changes for compatibility with PDL-Objstore.
Includes all the fairly conservative changes. More radical
changes to come.
- Deals with portability between perl versions using Devel-PPPort.
- Adds a version number to the PDL API.
- Optional bounds checking for PP.
- Simplistic support for C++ comments in PP code.
- Much improved searching for the Solaris math library.
Jarle Brinchmann:
- Added 'isempty' function.
Robin Williams:
- Doc tidying in Basic/Math together with a
wrapper routine for eigens and the start of a test set.
Karl Glazebrook:
- Patch to where function in primitive.pd to fix
bug in ($i,$j,$k) = where($x,$y,$z, $x+5>0)
- Added PDL::Fit-Gaussion Module
- Patch to Core.pm so you can say $a = float(3,4,5)
just as you can say $a = pdl(3,4,5).
- Patch to slices.pd to export the dice and dice_axis
functions.
Robert Schwebel
- Patch for the "perldl" shell that does the following:
1.) Print out usage information if non-valid option is given.
2.) Introduce "quit" equivalent to "exit"
3.) some linebreaks to fit comments into 80 char terminals
Christian Soeller:
- Commented out the close(STDERR) lines in pnd.pd to fix a
problem where the output from a 'die' is not seen for
certain test cases after using rpic/wpic from PDL::IO::Pic.
- Misc Patch:
- negative positions for dummy
- matmult now also supports promotion to sig dims
- PDL::matmult naming corrected
- MathGraph: call PDL::random
- Pic.pm: use PDL::Options -> minimum matching now supported
removed 'close STDERR' calls
- tifftopnm converter: added -nolut option
- pnm.pd: get rid of 'uninitialized...' warning
- flexraw.t: fix for broken linux dists that don't have compress (but gzip)
- picnorgb.t: hopefully got rid of error with SGI format
- slice.t/matmult.t: tests for new features.
- Patch to
- fix a bug when using pthreads and output argument creation
- new function PDL::Core::pthreads_enabled
- updated pthread.t
- Fixed a problem in pdlapi.c where some vaffine optimizations
had been broken by in a previous version. (Karl also added
a test case to complain if this is broken again.)
Doug Burke:
- Patch to clean up some of the PGPLOT documentation.
Harry Felder:
- Patch to Basic/Math/Makefile.PL to not depend on PWD
environment variable.
Doug Hunt:
- Patch to Core.pm to add '$PDL::undefval' variable,
which controls how undefs are treaded when a PDL
is created from a perl structure using
pdl(), float(), double(), etc.
Tim Jenness:
- Change to perldl to accept -w flag. This runs perldl
with the perl warnings (i.e. the perl -w flag) enabled.
2.0 (1.99990 with very minor changes)
John Cerney
- Fixed duplicate entry of PDL::IO::NDF information in the DEPENDENCIES file.
- Added more items to Known_Problems file.
1.99990
John Cerney:
- Renamed reorderDims method to reorder to slices.pd
Christian Soeller:
- Dimension promotion of 0-d PDLs patch.
- Patch to pnm.pd to fix bug reported to the list by Karl.
Tuomas Lukka:
- Allow mmapping of null piddles (i.e. zero-length vectors: dims = (0))
- Fix Math spelling mistake: PI0 -> PIO
- Fix Math compilation error: add ++
- Added close(fd) at the end of set_data_by_mmap in Core.xs
Karl Glazebrook
- Added Rcube to IO/Misc.pd Reads list of files directly
into a large data cube (for efficiency).
- Corrected spelling error in the README file.
Pete Ratzlaff
- Fix to imag() in PGPLOT.pm to set the world plotting
coordinates to a more sensible result when specifying
a translation.
Jarle Brinchmann
- Added FITS header support for comments & history.
Joshua Pritikin
- Patch to pdlapi.c to fix obvious memory leak.
- Patch to PP.pm to workaround @_ bugs in perl5.005.
Robin Williams
- Fix for some reported compliation problems with Math
library.
1.99989
Tuomas Lukka:
- Added Fractal Mountain range to Tri-d demos
- Corrected error in impatient.pod. ('top right'
to 'top left' in 'Sections' section.)
Tim Jenness
- Updated dependency file to reflect the addition
of PDL::IO::NDF to the distribution.
Anton Berezin
- Modified Basic/Math/Makefile.PL to fix potential
conflicts with temp files in the /tmp directory
John Cerney:
- Added reorderDims method to slices.pd
- Modified subclass2/3.t tests to be more representative
of how a functional object would be subclassed.
- Added '-I/usr/X11R6/include' to the default OPENGL_INC in
perldl.conf
Robin Williams
- Cosmetic patch to TriDGallery
- Addition of intover (integral) to Primitive.pm
- Changes to Basic/Math files so that nan and
infinity handling are now in a consistent interface.
Pete Ratzlaff
- Fixes typo in Gaussian.pm
Karl Glazebrook
- Patch to IO/Misc/misc.pd to fix a minor bug
- Patch to IO/Misc/misc.pd to be more memory efficient.
- Update to Simplex.pm docs to be more clear to mere
mortals. Addition of tsimp2.pl example.
Joshua Pritikin
- Patch to pdlmagic.h to fix problems compliling with
SunPro 4.2 C++.
Christian Soeller:
- Added a quick/simple ascii file reader (rasc) to
IO/Misc.pd
1.99988
Christian Soeller:
- patch to make the picrgb/picnorgb tests fail more gracefully
with the commonplace 'maxval too large' problem.
- Corrections for docs in PGPLOT.pm
- Fix for pnm.pd to revert the STDERR redirection after
a file is opened.
Karl Glazebrook:
- Updated Slatec's F77.pm from version 1.07 to 1.08
- Added qsorti function.
- Added Karma text overlays
- Added new indexing function dice_axis
Robin Williams:
- Fix for browser warnings appearing on finicky systems.
Jarle Brinchmann:
- Updated to PGPLOT.pm so that if you input a (100,1,100) image
to imag, the 1-element dimensions will be ignored. It also
checks that the piddle doesn't get too small, so that
if you input a (100, 1, 1, 1) image, it will be
treated as a (100,1) image by PGPLOT.
John Cerney:
- Modified PP.pod to get rid of 'head3' errors from the pod2man
converters
- Modified PDL.pm PDL::Lite.pm , PDL::LiteF.pm so that the $VERSION would
be picked up correctly. 'use PDL 2.0' now correctly checks the version.
- Fixed dead links in pod documentation.
- Added dice and dice axis indexing functions in slice.pd
(Cerney and Glazeblook)
- Modified PdlParObj.pm to clarify 'too few dimemsions' errors.
1.99987
Karl Glazebrook:
- Fix for minor array bounds bug in image2d.pd
- Addition of PDL->create and PDL->destroy to pdlcore
Core.xs
- Change to perldl.conf to (a) Makes Karma find X better,
(b) finds MesaGL as well as GL by default
- Modification of the pic*rgb.t tests to fail more
gracefully with bad converters.
- Patch to Graphics/Karma/karma.pd to sort out some non-
standard options casing.
- Patch to Basic/Math/mconf.h to conditionally define
INFINITY
- Fix to IO/Misc/misc.pd so you can use pipes, + minor doc fix/update
Jarle Brinchmann:
- Minor Demos/PGPLOT_demo fix.
Tim Jenness:
- Patch to Core to get PDL->new() etc working.
(pdlapi.c, pdlcore.h and Core.xs )
- Patch to perldl.PL so that $string, $code
and $coderef can be used by the user.
- Changes made to directory structure so
NDF.pm would be installed correctly.
Kaj Wiik
- Minor syntax fix to PG_PLOT.pm
1.99986
Robin Williams:
- Test for fft and fftconvolve and
fix for fft.pd
Karl Glazebrook:
- Fix for PGPLOT to work more like
it should
Anton Berezin:
- F77 Fixes for freebsd
Anton Berezin
- Fix to Pnm/pnm.pd to work under perl5.005
John Cerney
- Fixes for subclassing to work properly
- Addition of more test cases.
- PP.pm and PP.pod additions for subclassing.
- Minor Change to Html.pm to correct problem with it
creating false html references from .pod text that contained
'=head' as examples.
- Updates to Doc/mkhtmldoc.pl to fix most problems with html documents
not referencing each other correctly. In order to not change multiple
.pod documents and documentation in .pm files, html docs will now be
installed in ..../site_perl/PDL/htmldocs/PDL instead of
..../site_perl/PDL/htmldocs. (If installing over a previous version,
the html files in .../site_perl/PDL/htmldocs should be deleted to
avoid confusion.
Robin Williams:
- FFT test file addition (t/fft.t)
(Test number 2 fails... commented-out for now)
Andy Dougherty, John Cerney
- Changes to compile with perl5.005
Anton Berezin:
- Change for Browser to compile with freebsd
Robin Williams:
- Change behavior of overloaded bool operator
to not stringify. This was causing a major
slowdown in cases where a PDL object was
being tested in a boolean context. (e.g.
if($PDL){ ...} )
1.99985 (2.0 one half to go )
Karl:
- PGPLOT_demo.pm was hosed by Tjl. Fixed
- same put in Makefile.PL and perldl.PL
- perldl.PL: syntax error.
- fft.pd: remove printf
Tjl:
- (noticed by Robin Williams) Whitespace removals
- removed ops.pd SYNOPSIS
Robin:
- fix to browse building
Dov Grobgeld:
- the two pnm.pd one-liner for 5.005 (wpnm, rpnm)
1.9998 (2.0 try 7, one more to go ;)
Robin:
- spelling updates
- PP.pm: silence xsubpp about prototypes
- TriDGallery fixes
- perldl: use pager, accept sub as prompt (added to by Achim)
- PS to pnm in IO/Pnm/Pic.pm
- MPEG border
- ninterpol (n-dim regular grid interpolation), Lib/ImageND
- badmask
- fft.pd minimal patch
- "using"
- MPEG writing into stdin - save tmp files
- fft new version
- PP fixes: $P and cosmetics
- rebin (N-dim rebinning algorithm)
- rotate
- curses.h include
[ didn't include index() patch - incompatible. Maybe new name? ]
Karl:
- ExtUtils/F77.pm new version
- debug/verbose patch
- shift_elements (but supplanted by Robin's rotate later)
- new Karma
- NAN shall not spoil minimum/maximum
- Make list() listindices do the right thing with nulls
Tim Jenness:
- fix misc problem when trying to write complicated headers to fits
files
- NDF writing/reading using the perl NDF module
- MAIN__ into slatec.pd to avoid linkage errors
- PDL::Options
- minmax docpatch (modified by Tjl)
Jarle:
- PGPLOT update
Joshua Pritikin:
- -M, -m, -I arguments to perldl
schinder@pobox.com:
- use -f in Makefile.PL
Tuomas:
- Fix strndup in pdlthread.c
- error if RAND_MAX not defined
- cumu* (cumulative sum,product
1.9908 (2.0 try 6)
Tjl:
- memleak patch (idea by Robin)
- pdl_destroytransform so that it doesn't core dump easily any more.
1.9907 (2.0 try 5)
Christian:
- major patch containing stuff from other people.
Joshua:
- dTHR -> errno if not defined
Tjl:
- quaternion rotate routine was totally hosed.
added tests (probably will cause bad things where TriD
doesn't exist :(..
1.9906 (2.0 try 4)
Robin:
- patch Tjl's botched edit to his game of life
- perldl.PL: do paging with page() and nopage().
Achim:
- doc_install, pure_perl_install.. hopefully these now work
Joshua Pritikin:
- rename 'thr', 'op' and fix fftn.c error message for non-sick compilers
- fix NAN on suns
Tjl:
- add #ifdef dTHR to be compatible with 5.004_*
1.9905 (2.0 try 3)
Someone (lost the mail):
- realclean Basic/Core/Config.pm
Achim:
- don't install pod2usage, pod2select in script dir
- Lib/ImageRGB -> ImageRGB (!!!)
- DEBUGGING => PDL_DEBUGGING
- install patches for 5.005
Tjl:
- remove gotos from str2D to not tickle bug in 5.004_64,
which I couldn't reproduce at smaller scale :(
- at Karl's prompting, removed the other mandelbrots for now :(
- Fix memory leak (reported by Kaj Wiik)
- change sin, cos, asin, acos, log, exp and the like to be [F,D]
GenericTypes only.
Robin:
- TriDGallery: game of life! (edited by Tjl)
Karl:
- new karma.pd
- reshape patch
- callext patch
1.9904 (2.0 try 2)
Tjl:
- (Andreas Heitmann): rename rs in the rest of places
- (Robin): openglq.pd: make COLORSAD not to warn for nonconstant init
Karl:
- histogram fix (which earlier fell through Tjl's fingers)
- new ExtUtils::F77
- "aargh" patch
Robin:
- Demos/TriD2.pm: fix state at end
- fix stupid Makefile.PL blooper by Tjl
- patch Perldl.pm to do 'help $a'
1.9903 (2.0 try 1)
Tjl:
- PDL::Lib::FFT -> PDL::FFT (Robert Schwebel)
- MathGraph stuff (same)
- tiny TriD tweaks for VRML::Browser
- strdup -> malloc(strlen+1)+strcpy
- rename 'rs'
Karl:
- (finally applied) pdlcore.c datatype patch
Jarle:
- minmax + which_two
- one2nd, whichND
Robin:
- PGPLOT fixes
Achim:
- Install fixes
1.9902
Tjl:
- fix pdlcore.c to work with MAGIC hashes, to enable really
wild constructions to come
- twiddle with flexraw.t
- PP cleanup: let 'SIZE' be used in RedoDimsCode. (needs to be cleaned
up from the other kind of access to this.. also need '$PDL(a)')
- null = just flag, so 0-dimensions are now allowed.
- allow which to take other types for mask as well... - required
cleaning PP to make RedoDimsCode be parsed just like Code, except
without threadloop. Seems to work nicely.
(I needed to take ($a == byte 5)->which for a large byte $a and
was horrified to find that my program grew to dozens of Mb)
!!! Note: possible incompatibility: before a floating value 0<v<1
would be interpreted as false, now true - but more logical this
way.
- where to take multiple arguments before the mask,
to map them all through the mask.
- add 'isnull' to Core.xs
- Basic/Gen/PP/PDLCode.pm to 'use strict', just in case...
- add 'Config.pm' to help with tests
- flexraw.t to use this
- Makefile.PLs to set the results of the tests.
- Maybe add PDL::Config_user later to store original
config hash values from user.
- threadover to clear NOMYDIMS flag.
Raphael:
- Callext fixes for hp-ux, required an interface change !!!
TODO:
- patch integration
- Makefile.PL should check for f77, store information and other
places just use that, especially the tests..
1.9901
Christian:
- new faq
- few changes to the demos (especially replaced
'output ' with 'print' in the printouts; beginners might be confused
by the 'output' abstraction)
- new demo '3dgal' for the TriD Gallery
- install PDL::Graphics::VRML::Protos in the correct place
- fixed picrgb test to generate a warning when broken
tiff converters are encountered (patched source now included)
those who reported errors with this test please check again
after patch has been included
- make slatec clean rule more complete
Raphael:
- fix Slatec Makefile.PL to work with more stringent makes
- provide 'rint'
Tjl:
- change Copyright + files' copyrights
- new 3dgal stuff
- undo Slatec return -> exit: if slatec is not built, Lib/Makefile
didn't get built
Robin:
- fix typo in Makefile.PL
- add C<> in PG.pm
Jarle:
- better barf message for pdl((pdl 0), (pdl 1))
Gerald:
- typo in PP.pod
1.9900
- make perldl-documentation startup not depend on verbose
- '??' = apropos
- wcols (with Robin)
- fix the TriD demos a little bit...
- clip
- [xyz]linvals
- TriD doc bug fix: grabPIC3d
- vsearch
- FastRaw doc bug
- add to DEPENDS
- misc.pd typos
Karl:
- deprecate where($a), multidim $a->where($b)
1.98_02
Tjl:
- add maptextfraw
- allow even more flexible PDL::Type::new: let it be a scalar piddle.
- made stringize use listref_c for additional speed & avoiding
stack overflows and other nasty stuff.
- add scope.t to finally test for export stuff working and fix PDL.pm
to use $pkg (from Karl).
- undid the stupid glPolygonOffsetEXT fix, now it should finally work.
- default.perldlrc: set verbose=0 to stop too much waffling!
Karl [via Gerald]
- Makefile.PL: -I patch
1.98_00 [ was 1.98_01 originally ]
Tjl:
- Various typos - for copyright notices, find ... | xargs perl -p -i.bak RULEZ!
- remake Demos subdirectory with reasonable content.
- new TriD demos in Demos/TriD
- keeptwiddling3d etc. into TriD exported, NAME CHANGE !!!
- hold3d parameter
- POLAR2D context for TriD
- document TriD::MathGraph briefly
- fix TriD/Graph.pm to not barf when several graphs were removed
- Fix mmapped piddle freeing for fastraw - now magickable.
- Fix howbig, zeroes, Types stuff to accept PDL::Type objects
instead of numbers in more places, e.g. FastRaw. fastraw.t updated
- Removed TriD/Vertices.pm Lib/DataPresenter.pm
- removed some of the old crud in Core.pm
- Made Pod scanner not look into Pod::Parser.
- lots of doc fixes, moving docs into the new format.
- mkhtmldoc.pl: emulate "mkdir -p" when installing
- Doc/Doc/Perldl.pm: allow e.g. 'new' to get 'PDL::new' to save typing.
- standardize "3-d", "3-D" and "3d" into "3D".
- Die on errors in evals in Basic/*.pm!!! (e.g. dynaloader unresolved
symbols are now brought to light).
- fix "GetHistory" bug by checking for "can".
- Remove PCARout & PCA, as not really useful in present form !!!
Robin:
- mconf.h osf warnings patch
1.96_01
- TJL's jumbo patch
- stuff into Basic/Math
- TriD/MathGraph, for display of graphs in three
dimensions, by finding an appropriate representation
via a molecular dynamics-type search
- Christian's clipping patch
- set -ve indice patch
- added my wcols() to PDL::IO::Misc
- Lite.pm bug (Shawn)
- Robin's mconf.h patch and Kaj's erfi.t test inserted
- Christians type() patch
- Christians const.c patch for IRIX
- added Christian's COPYING suggestion
- heroically went through and changed all the copyright messages
on the docs to conform to the new standard
- fixed (c) notice in Core.pm docs, others still need to be
done
- better explanation of GenericTypes and Pars in PP.pod
- improved scantree.pl (portable cwd).
- HTML docs!! - thanks to Christian's mkhtmldoc.pl (some changes)
into the distribution. included a hacked Pod::Html (from perl
5.004) as PDL::Pod::Html Still not great but gives us something
to work from. Some links still broken - patches welcome. See
file:/usr/local/lib/perl5/site_perl/PDL/HtmlDocs
for docs after 'make install'
- TJL's average() patch and primitive.t patch
- Docs now only built during 'make install' or 'make doctest'
(which builds them under ./blib), this saves them being built
unnecessarily during 'make'
- PDL::Slatec now works on any system with a f77 compiler.
All unused slatec functions were got rid of which fortunately
removed all the ones with COMPLEX arguments. Also changed
prototype generation which removes warnings on build.
Added local copy of ExtUtils::F77 back into dist and WITH_SLATEC
option to perldl.conf (undef by default for auto-decision).
- removed Example/PP - out of date
1.95_07
- applied Christian's mega-patch - but there were problems
I had to fix manually.
(a) his maga-patch didn't include the patch to pdl.h he had
already made.
(b) the change should have been made to pdl.h.PL in any case.
- fixed NAME in Indexing.pod
- may have fixed executable install problem of 'perldl' shell
- fixed PDL.pm being lost from docs db
- Robin's problems 'compiling pdl 1.54_06 Basic/Math' patch 17/12/97
Rejected because of following error (Linux/gcc)
const.c:80: parse error before `3.14159265358979323846'
const.c:99: parse error before `__extension__'
const.c:99: parse error before `}'
Can the patch be revised?
- Robin's at() accepts -ve indices patch. Can we have set() to?
- removed 'docscan' and 'pdlhead2item' from MANIFEST - OK ?
1.95_06
KGB
- FITS patch
- restored cc8compt fibonacci from pdl-porters archive (!)
- fixed misc module name problems in tests (thanks Bob!)
- Robin and Christian's help patches
- Robin's Object.pod patch
- Achim: chmod 0755 on Doc/*.PL,
- Achim wanted pdldoc.db in archlib, ignored this (don't understand
why)
- put fudge in ops.pd to get rid of that stupid compiler warning
with abs() and byte/ushort types
- rebuilt MANIFEST hope it is OK now
- introduced new barf(...) routine in Core.pm and pdlcore.c
[see help barf]
we should use barf(...) in C and Perl code instead of croak etc.
Note the barf engine is written in Perl, so is easy to customize!
- changed references to 'croak' in pd/xs/c code to barf(..)
or Perl_croak where appropriate
- changed references to 'croak' in various .pm files to barf()
where appropriate
- croak #defined to barf() in pdlcore.h to catch the use in
xsubpp (..fingers crossed..). Perhaps future xsubpp will allow
an override of this.
- renamed PDL::Io:: heirarchy PDL::IO:: for consistency with Perl IO::
1.95_05
KGB
- Renamed PDL.pdl_make_physical PDL.make_physical (woops!) - ditto
physdims().
- Changed type config. Now Types.pm pdl.h pdlsimple.h are generated
AUTOMATICALLY from Types.pm.PL pdl.h.PL and pdlsimple.h.PL
files using perl Config information. int size issue is now handled
from perl config information. Lots of potential for more flexibility.
Hope this doesn't break Alpha stuff by mistake!
- Revised PDL::CallExt. Now uses make_physical rather than PP and allows
unlimited args in the same way as PDL-1.11. Ought to be more compiler
friendly too! Put callext.t back.
- Added 'dog' and 'cat'
1.95_04
KGB
- Added glEnable/DisableClientState to dontfunc in OpenGL
- Doug: added fake MAIN_ to cfft.f in Slatec for old g77s
- Achim's patches of 4/12
- my IIS changes
- Robin's random and Inf/NaN patches of 4/12
- Christian: 'minor doc polishing Core.pm+primitive.pd'
- Christian: INSTALL patches.
- Christian: 'docs in Doc/Doc/Perldl.pm'
- Robin's minor perldl docs patch
- Restored my missing hist() patch and test of Oct 10th (sic)
- Achim's suggestions on help 'help' and help 'perldl', '?' and
allow no quotes (with warning)
- Added solaris_2 hints file for OpenGL
- Robins perldl pod patches but NOT 'l' as a synonym for 'last'
(I don't like this as 'last' is a perl keyword)
1.95_03
KGB:
- Various small changes to TriD/test*.pl scripts. Renamed as *.p
- minor TriD changes to comply with new zeroes() etc.
- moved tests all into one top level t/ directory.
- corrected PDL::initialise and convert (Christian)
- Robin's primitive.pd patch
- callext.t temporarily disabled - I will rewrite the module.
- Minor changes to 'Doc'.
- TriD renamed to PDL::Graphics::TriD
1.95_02 [emergency bug fixing release]
KGB:
- Redid all the zeroes/ones/[xyrz]vals/[g]random/sequence stuff
someone please please give me some objective advice :-)
- Added Robin's new FFT
- 3 byte change to Pnm.pm for new zeroes()
- added make_physical and make_physdims to PDL struct
1.95_01
KGB:
- Added Cephes code to PDL::Math as backup, changed signature of
jn, yn.
- changed scalar convesion in pdlcore.c SvPDLV() - '2.0' is now
double, '2' is now int. [Uses SvNOK SvIOK etc] - changed
Basic/t/conv.t to comply.
- Added magic {PDL} = code ref hook. And put test/example in
subclass.t
- random() is now like zeroes() and both allow type/dim and
$x template arguments. New arg proc. method to support this.
- Added grandom().
- Ressurected PDL::Exporter (q.v.). Much simpler than bizarrity
in PDL-1.11. Now 'use PDL::Mod' defaults to loading ':Func'.
Provision for noimports. Less typing!!!! Modified docs too.
- Renamed PDL::Graphics::PG PDL::Graphics::PGPLOT
- Reverted to manpages named PDL::FAQ.1, PDL::Dataflow.1, etc.
This is simpler and maintains consistence between manpage
and pod browsers. Fixed all the text links to comply.
- small changes to Pod/ docs.
- shut PP the hell up! Much less scary build now.
- added Pods to files scanned in building doc database.
- [xvyz]rvals now act like zeroes - but they now act like
constructos so $derived->xvals does not give you what
you expect. Need to think about this some more.
1.94_09
KGB: NOTE ONE MAJOR INCOMPATIBLE CHANGE [random]
- removed PDL_OPTIONS - PDL_CONFIG for everything. I think this is
better, e.g. if we want debugging we can add Debugging=>1 to
%PDL_CONFIG.
- changed use of PDL_CONFIG - see INSTALL. I think this is simpler.
- made Karma conform with above - and simplified.
- changed Callext arg limit to 10 to avoid compiler explosions.
- integrated PDL::Doc, created PDL::Doc::Perldl.
- manifying is now back from the .pm file rather then the .pd
(this is a better design now pod are semi-generated from PP)
- Christian's patches of 25/11/97:
'Core.xs and pdlapi.c'
'test' for Io::Pic
- added docs for Doc field in PP.pod and made one-line a special case
- Moved statistical functions from Basic.pm to Primitive.pm
- Lots and lots and lots and lots and lots and lots and lots and
lots and lots and lots and lots and lots and lots and lots and
lots and lots and lots and lots and lots and lots and lots and
lots and lots and lots and lots and lots and lots and lots and
lots and lotsof miscellaneous docs.
- Robin's browser patch of 26/11
- Core now completely OO - i.e. none of the stuff below Basic/ export
routines to each other and it still works!
- changed occurences of foo(sig) to use '=for sig' as this seems to
work better with Pod::Parser.
- made random $x=random($y), i.e. to get inplace now random(inplace $y)
OK?????????? This is because I think it is natural to say
$r = random(zeroes(10,20,2)), etc.
If this is a major headache let me know and I will change it back.
- Docs => undef allowed - no PP docs at all (not even the sig)
- Various changes to Docs.pm and Docs::Perldl.pm - apropos text searches
now include module names and one-line desriptions. God I love this
language.
- Renamed Iutil module as ImageRGB - hope this is OK???
- changed name of 'inv' to 'matinv' in Slatec for consistency
with matmult in Primitive.
1.94_06
Christian:
- lots of things.
Robin:
- add type to PdlParObj.pm
Achim (req):
- Version to Core.pm
Tjl:
- New configuration.
1.94_05
... Not recorded. Real threading for example.
1.94_02
Lots of changes by everyone, e.g. FFT, Browser, ...
1.94_01
Christian:
- simplescaler
- VRML !!!
Achim:
- misc.t patch
- Browser hints
Karl:
- autocreation memleak patch
Robin:
- flexraw test correction
Jarle:
- Ops.pd: prevent creation of -0
Tuomas:
- Core bug fixes for e.g. $a->slice("...")->index(...) .= foo,
originally reported by Christian.
- mandel.pl demo
Others??
1.94
Kgb:
- Autoload patch
- subclass fixes: pdl_destroy + test.
- sethdr + gethdr ref counts
- rfits/wfits update
Christian:
- where etc.
- imag3d without lines
Kaj Wiik:
- tsimp.pl use correction
Achim:
- Tk patch
Tjl:
- Change PP.pm to really allow Pars => 'a(tri=>3)' to happen.
Embarrassingly, this was a one-liner.
- OpenGL libs changed to take both GL and MesaGL.
- openglq.pd: use tri=3
- rout.pd ditto
- TriD.pm: documentation updates & 'LINE' as context
- Graph.pm: coordinate axes labels!
- test7.pl: some niceties.
- make the thread incs etc. into register variables.
this should, with a good compiler, result in some speedup.
- primitive.pd: histogram -> histogram + whistogram,
more thread-friendly.
- correct foo.t
- TriD: add imag3d_ns (no surface) and minor twiddling.
1.93_06
Kgb:
- PP: use PDLOBJ for the stub subs.
- Basic.pm: sec, ins fixes - use "int" to ensure type of coords.
- PG.pm fixes
- IIS fixes
Achim:
- ws fixes for docs, pptest.t
- "small perldl fixes"
Tjl:
- start making support for piddle-controlled (e.g. affine)
transformations by using magic.
- Core.xs: setdims should now work with dataflow properly.
- Core.xs, pdl.h, pdlapi.h, PP.pm: add support for
foofunctions and PDL::Trans objects. These are a very basic way
of accessing the internals of transformations so that
in the future, as the mechanism is improved,
you can e.g. change your slice from outside.
The current level of support is enough to make a routine
that takes a slice of one dimension and is given offset and
increment and n in that.
- TriD:
- add test8.pl to demonstrate an use of foofunctions.
- document OpenGLQ and Rout
- add gl_triangles_n for shaded triangles
- TriD.pm:
- realcoords: add more contexts
- make the default routines all plot a graph
- GL.pm:
- add glPolygonOffset call to GL::Window in order to
get good-looking imag3d always
- change the colors to somewhat lighter ones.
- delete_viewports -> clear_viewports (like clear_objects)
- new argument to twiddle
- Graph.pm:
- default names for dataseries
- waffle less
- support changed dataseries
- Image.pm:
- use realcoords COLOR context
- Lines.pm:
- start deprecation by renaming package
- Objects.pm:
- realcoords support better by r_type
- waffle less
- SLattice_S to draw shaded lattices
- tests changed somewhat.
- Core.xs: remove pdl_unpackint unnecessarity
- Basic.pm: make axisvals return zeroes if not enough dimensions.
- Opt/Simplex/Simplex.pm: add support for temperature a la
Numerical Recipes.
- (Christian) - remove Data::Dumper from FastRaw.
1.93_05
Tjl:
- PP: several changes, basically inline *size and *incs into
register variables to speed up execution.
- TriD:
- add TriD/Rout for misc C routines for TriD
- add a routine to do flowing combination of 3 piddles into
coordinates or colours
- this makes the test3.pl data_changed stuff work again.
- imagrgb now defaults to a whole-window image - no reason
to make it rotatable with the mouse.
1.93_04
Tjl:
- TriD: add stuff for Tk
- OpenGL: ConnectionNumber
- ButtonPress + Release: more info back
- TriD.pm: add export imagrgb
- Control3D: small changes + TriD::Tk::post_menu
- GL.pm: ConnectionNumber support for Tk eventloop
- Graph.pm: minor changes
- Image.pm: major changes, make multi-D images actually work.
also, support for different multi-D background color.
***** NOTE: calling convention now same as with coordinates!
this means an incompatible change.
- added Tk.pm, rudimentary support for a menu of actions
associated with the displayed 3D graph. Currently, can save
the image.
- test3.pl: change to new imagrgb calling sequence.
- GoBoard.pm: ditto
- test6.pl: test the Tk functionality.
- testimg.pl: really test the multidimensional picture facility
with an 8-D tricolor picture.
- Io/Pnm/Pic.pm: use the new 'Func' convention
- perldl.PL: new '-tk' option to use Tk and the Tk event loop.
1.93_03
Tjl:
- TriD:
- Change default controller to ArcCone
- Graphs with axes!
- PP:
- EquivDimCheck now honoured
- iis.pd: #undef Generic
- OpenGL/Makefile.PL update + generate.PL tuning
- Browse: manpage twiddle
1.93_02
Tjl:
- Core/Basic.pm: use PDL::Core qw/:Func/;
- Core/Core.xs, pdl.h, pdlapi.h: hdr stuff (untested)
- Core/Core.xs: bugfix threadover_n to make_physical
- Core/pdlapi.c: pdl_destroy will not destroy if an affine trans the
child of which hasn't been allocated exists.
- Core/pdlapi.c: pdl_changed will not try to do overeager
optimization. Fixes flow.t bug
- Basic/t/flow.t: enable again the tests that now work.
- Gen/PP.pm: new '$a = inner($b,$c)' changes.
- Slices/slices.pd: splitdim checks arguments
- Basic/t/thread.t: semi-add new test
- Graphics/TriD/OpenGL: new PDL::OpenGL module to enable virtualization
- Graphics/TriD/OpenGLQ: a test for TriD virtualization of OpenGL,
this will later on expand a lot
- Graphics/TriD/TriD.pm & TriD/*: new docs, small changes.
- Io/Fastraw/FastRaw.pm: don't waffle when mmapping
- MANIFEST.SKIP: add more ignorable stuff
KGB:
- Fixed multiple 'use PDL' etc problem for loaders.
- "use 5.004"
1.93_01 (Kgb) MAJOR CHANGES
- these are very significant and affect code throughout the
system so EXPECT problems. In particular note that this code
is the new PATCHBASE.
- NEW IMPORT/EXPORT system
PDL_OO.pm now deleted.
PDL::Exporter is DEAD and gone!! (hooray)
All modules now define their functions in package PDL.
The idea is a PDL::Module now looks like this:
package PDL::Module;
@EXPORT_OK = qw( sub1 sub2 ...);
%EXPORT_TAGS = (Func=>[@EXPORT_OK]);
@ISA = qw( Exporter ... );
*sub1 = \&PDL::sub1;
sub PDL::sub1 { ... def ...}
# If you wanted to do something special (e.g. a constructor) you can:
sub rfits(PDL->rfits(@_)); # This gets exported
sub PDL::rfits {
my $class = shift;
# etc...
}
i.e. the onus is entirely on the module writer.
Thus saying 'use PDL::Module' will load (cheaply) PDL methods.
If you want to (less cheaply) import functions say 'use PDL::Module qw/:Func/'
PP has been modified to generate modules which follow this scheme. i.e. by
default it stuffs its functions in to the PDL namespace, and writes stubs
'*sub1 = \&PDL::sub1;' into the PM file. This can be changed at whim
however. There is a new pp function - pp_bless('MyObj') which will change the
default package from "PDL" to 'MyObj' in anticipation of future
Object-Oriented PP modules. (Up to the author how he writes his module).
Also the pp_def(PMFunc=>'...') attribute can be used to generate special
purpose PM code instead of the default.
Comments please, hopefully nice ones as I have spent all day changing
code everywhere and debugging!!!
- Karl (exhausted)
- Module defaults
PDL.pm now loads a set of standard packages (with :Func) - including graphics
and I/O for TPJ article and v1.11 compatibility. Thus a script with 'use PDL'
is v1.11 compatible (modulo bug fixes!)
Lite.pm loads only the truly fundametal core, with no imports, for method
speed freaks. Thus a lean script need only say 'use PDL::Lite' plus whatever
else it needs.
I hope various other sets of meta-modules (PDL::Astronomy, PDL::Medical) etc
will follow this simple scheme. Basically there is nothing sacred about
'use PDL' anymore - it is just one of many loaders.
- perldl shell
The 'perldl' script sources C<~/.perldlrc> if present or falls back to
C<PDL/default.perldlrc>. The latter just does the standard 'use PDL'
Thus by creating a C<~/.perldlrc> you are free to 'use PDL::Lite' or
whatever set of modules you fancy without impinging on v1.11 compatibility.
I think this is a rather elegant solution to all our aesthetic tastes
(namespace polluters vs method maniacs, module hoarders vs leany
meanies) while still ensuring script compatibility with v1.11.
I hope everyone is happy with this!
- Fixed minor bug in FlexRaw
1.92_10: 'make test' ok but see flow.t
- PATCHBASE reset to zero
(KGB)
- new wfits() with BITPIX support and clever BSCALE/BZERO - PLEASE TEST!!
- added Robin's PDL::Io::Browser
- Robin's 'cutmask' function (need PP version!!!) - needs docs SOMEWHERE!!
- string() no longer make_physical()
- added mslice and test (slice.t)
- lags patch (Jun 29)
- extra tests to flow.t which FAIL, currently disabled as
'make test' then stops early.
- added some tests of simple ops and functions
- moved all the 2D routines (med2d etc) into PDL::Image2D
- Inserted new TriD 16/Jul (untested)
- tjl's 'IMPORTANT: Just let me eat my words once more today' patch
- applied tjl's 'minorities' patch - ext modules now seem to work
- fixed rfits/wfits bugs, added gzip/compress support via suffixes
- increased size trap in pdlhash.c to 1Gb
1.92_09:
- applied Tuomas' Simplex patch
- applied Robin's patch: SlowRaw -> FlexRaw
- added PDL::Io::Pnm and PDL::Io::Pic (+PDL::Lib::Iutil) to
support image I/O based on pbmplus/netpbm (+ wmpeg based on
mpeg_encode)
- PDL::PP - $TBSULFD(B,S,U,L,F,D)_func now expands to
B_func, S_func, etc *without* intervening whitespace
- byte+ qualifier to make a pdl a "typeslave"
- dispensed with Pthread.pm, thread_define now part of
PDL::Core
- new PDL::Dbg
1.92_08:
- ops.pd debugged
- FastRaw doc patches (TJL)
1.92_06/07:
Applied the 41(!) missing patches. See file KGB.1.92_06_TO_1.92_07
- numerous small changes.
1.92_05/06:
- Rudimentary perl level threading; see documentation in Pthread.pm.
- Diagonal patch
- workaround for slice and clump to *not* leave trans in
a too ill-defined state when croaking (previously sometimes
coredumped upon destruction (as reported by Karl), see tests
in croak.t).
- Karl's zeroes patch.
- Matmult in primitive.pd.
- history mechanism for perldl.
- PDL::PP : type+ qualifiers, int, float and double now supported
$GENERIC, $SIZE, fixed $P vaffine bug, [t] now does
something, set named dimension from an 'OtherPars', i.e.
OtherPars => 'int nsz => n'
- primitive.pd : added histogram + interpol
- Basic.pm : added hist
- new file tests.pd in Basic/Test to hold tests for PP features
- updated indexing.pod, PP.pod and FAQ.pod
- Lib/Makefile.PL : only build slatec stuff if we have f2c (until we
get a Makefile that works with ExtUtils::F77)
- Dev.pm : change postambles so that C files built from .pd's will be cleaned
1.92_04:
Lots of patches from people installed. If I forget someone's
attribution, please remind me.
1.92_02:
Vaffining. Just about everything should work now.
New library files that don't work properly yet.
1.91_01:
Perldl: don't use blib unless have to (eval).
Hashes done away with: $a->{...} doesn't work.
It was impossible to get both that *and* a reasonable
assignment behaviour.
1.91:
Bug fixen
New PDL::PP
The perldl shell now aborts on <EOF>, q and Q.