"Fossies" - the Fresh Open Source Software Archive 
Member "PDL-2.084/Changes" (21 May 2023, 120782 Bytes) of package /linux/misc/PDL-2.084.tar.gz:
As a special service "Fossies" has tried to format the requested text file into HTML format (style:
standard) with prefixed line numbers.
Alternatively you can here
view or
download the uninterpreted source code file.
See also the latest
Fossies "Diffs" side-by-side code changes report for "Changes":
2.083_vs_2.084.
1 2.084 2023-05-21
2 - reduce size of PDL_KLUDGE_COPY_X macro to <4096 in line with C standard, to fix for older clang on many BSD
3
4 2.083 2023-04-30
5 - no changes from 2.082_01
6
7 2.082_01 2023-04-27
8 - fix some memory leaking - thanks Yury Pakhomov for report
9 - fix random() failing (#422) - thanks @falsifian for report
10 - PP Inplace now checks inputs and outputs are dimensionally compatible (#416)
11 - no more HTML doc generation
12 - PDL::Doc::add_module now adds all submodules of given namespace (#420)
13 - [o] OtherPars can now be omitted from args like [o] ndarrays
14 - OtherPars can now be incomplete arrays of pdl* (#421)
15 - add [io] OtherPars
16 - add ArgOrder PP key
17 - [nc] removed as Pars type-specifier, use [io]
18 - fix pdl2 bug with demos (#424) - thanks @HaraldJoerg for report
19 - fix PP bug revealed by https://github.com/moocow-the-bovine/PDL-HMM/pull/4
20 - operations with only output ndarrays can now not be Inplace
21 - overloaded ops require proper overload-handling; PDL::Complex now does
22 - for more idiomatic XS code, PDL C function interface now pdl_run_(name)
23 - add FtrCode in XS, to match HdrCode
24 - add sound demo - thanks @HaraldJoerg
25 - OtherPars can now be $argname, for XS processing only and not in operation
26 - fix broadcasting over empty ndarray (#429) - thanks @falsifian for tests
27 - fix appending with empty ndarray (#430) - thanks @falsifian for tests
28 - fix whereND with all-zero mask or empty input (#428) - thanks @falsifian for tests
29 - inplace operations no longer copy input arg if inplace
30
31 2.082 2023-03-22
32 - no changes from 2.081_03
33
34 2.081_03 2023-03-20
35 - allow OtherPars to set index-size of not-otherwise-used index
36 - fix nested loop() bug for Pars with e.g. (n,n)
37
38 2.081_02 2023-03-14
39 - add pp_add_typemaps
40
41 2.081_01 2023-02-27
42 - drop erroneous Test::Deep dependency
43 - fix `(my $tmp = $pa->inplace) += 1`
44 - fix [o] OtherPars to work if PMCode
45 - fix MatrixOps::det returning Perl 0 for some singular - thanks @wlmb for report
46 - fix intersect bug (#419) - thanks @jo-37 for report
47
48 2.081 2022-10-25
49 - no changes from 2.080_02
50
51 2.080_02 2022-10-22
52 - fix t/matrix.t over-sensitive comparison test for uselongdouble
53
54 2.080_01 2022-10-21
55 - fix longstanding t_rot bug shown in https://perlmonks.org/?node_id=683514
56 - add inflateN
57 - fix MatrixOps::inv failing on native-complex (#403) - thanks @KJ7LNW for report
58 - fix MatrixOps::identity losing class of invocant if ndarray (#401) - thanks @pryrt for report
59 - change PP-generated XS PROTOTYPES to DISABLE
60 - allow [o] on OtherPars (#362)
61 - fix conv2d to allow complex arguments (#407) - thanks @wlmb
62 - Add complex support to interpolate (#408) - thanks @KJ7LNW
63 - Refactor PDL::IO::Browser curses detection to additionally use ncurses*-config (#412)
64 - Add File::Which as a configure dependency (previously runtime only) (#412)
65
66 2.080 2022-05-28
67 - make IO::STL work on big-endian systems (#394) - thanks @sebastic for report
68 - pp_add_macros macros now receive list of args split like C preprocessor
69 - most of PDL::VectorValued into Primitive/Slices - thanks @moocow-the-bovine
70 - depend on Text::Balanced 2.05, removing monkeypatch (#396)
71 - make {w,}histogram throw error not segfault when min == max (#397) - thanks @fantasma13 for report
72
73 2.079 2022-05-03
74 - move Math::badmask to Bad
75 - PDL.propagate_badflag propagates both to parents AND children, sets flag itself
76 - Ops::assgn now propagates its badflag without needing to set output badflag
77 - remove FindBadStatusCode
78 - remove redundant use of CopyBadStatusCode
79 - PDL.null deprecated, doesn't allocate pdl.sv now
80 - PDL::Dataflow doc updated
81 - add TriD::trigrid3d
82 - add PDL::IO::STL
83 - replace *_RECURSE_GUARD macros which use process-global variable, causing problems if multi-thread, with stack parameters - thanks @marioroy for report
84 - add Primitive::{cmp,eq}vec
85 - add Image2D::crop
86 - PP typemap-search includes dirs above
87
88 2.078 2022-04-10
89 - Ops::atan2 etc have default swap param
90 - fix Transform::Cartography::t_carree spelling (compat alias created)
91 - add Transform::Cartography::t_raster2{fits,float}
92 - Transform::inverse on transform without an inverse now fatal error
93 - fix Transform::t_fits bug which ignored ignore_rgb for making inverse
94 - TriD::GL now more resilient and exceptions don't leave GL broken
95 - add Transform::Cartography::earth_shape
96 - back-port Text::Balanced fixes to improve NiceSlice (#383)
97 - fix long-standing "harmful" scaling of output with dim 1 (#392)
98 - fix segfault bug for Ufunc::{odd,}{pct,med}over with empty - thanks @nerdstrike for report
99 - struct pdl add "value" field for data that fits there, avoiding separate memory-management (#358)
100 - copy over the sensible method-name aliases for PDL::Complex from PDL::LinearAlgebra
101
102 2.077 2022-03-16
103 - Ufunc::{min,max}over{,_ind} behaviour for NaNs fixed to match docs
104 - Ufunc::{min,max}over_n_ind can handle badvals
105 - single badval as boolean is now an error (#388)
106 - IO::FlexRaw::readflex can take last dim as undef (#322)
107 - add IO::(Fast|Flex)Raw::glue\L\1 (#322)
108 - PDL::Demos::Routines replaced with PDL::Demos, update demos (#42)
109 - switch pdl_destroy to use mg_free not SvOBJECT_off, needed by Perl ithreads (#385)
110 - implement Ctrl-C handling in perldl (#269)
111 - add with_time command to shells
112 - fix shell history getting lost if OpenGL loaded before listed (#337)
113 - fix TriD objects being off-centre (#337)
114 - fix Primitive::which_both docs to match behaviour
115 - add Primitive::where_both
116 - PP now checks data pointers for NULL if nvals > 0 except in RedoDimsCode
117 - add Core::dup{,N}
118
119 2.076 2022-02-25
120 - fix long-standing bug in dice that broke with PDL subclasses (#363)
121 - remove docs for {type,map}fld
122 - splitdim throws exception if non-divisible nsp given, can give negative dim
123 - changed matmult tilesize from 64 to 8*sizeof(double)/sizeof(gentype) - performance increases 50%, comparable to reference LAPACK
124 - fix NiceSlice regression - thanks @fantasma13 for report
125
126 2.075 2022-02-19
127 - fix false-positive heredoc in bitshift (#383) - thanks @d-lamb for report
128 - threading now called broadcasting (compat aliases created)
129 - fix 2.057_01 regression in {broadcast,thread}_define - thanks @eserte for report
130 - fix regression of append allowing type upgrade to second argument's type
131 - add empty() function
132 - fix when readdata functions return error (#356)
133 - RedoDimsCode can now use $SIZE(other_index) (#386)
134
135 2.074 2022-02-08
136 - fix PDL::Complex->null stringify error
137
138 2.073 2022-02-07
139 - PDL::Complex no longer undefs PDL::i
140 - passing null as input param now an error
141 - can now unify Code and BadCode into Code, and use PDL_IF_BAD() or #ifdef PDL_BAD_CODE
142 - add macros PDL_IF_GENTYPE_{REAL,INTEGER,UNSIGNED}(iftrue,iffalse) in Code
143 - fix IO::IDL (#381) - thanks @YuryPakhomov for report and test data
144 - fix [t] Pars with multi-thread; now cannot be passed as params (#382) - thanks @d-lamb for report
145
146 2.072 2022-01-30
147 - fix bug in qsortveci that broke PDL::VectorValued - thanks @zmughal for report
148
149 2.071 2022-01-29
150 - fix segfault bug in qsortvec - thanks @zmughal for investigation and report
151
152 2.070 2022-01-28
153 - add GIS::Proj::proj_version
154 - fix Transform::Proj4 tests to work with ortho results in PROJ >6.3.1 (assumed 8+)
155
156 2.069 2022-01-28
157 - PDL::NiceSlice override Text::Balanced::extract_multiple for performance
158
159 2.068_07 2022-01-28
160 - fix PDL::new bug in creating longlong (#378) - thanks @zmughal
161
162 2.068_06 2022-01-25
163 - fix PDL::new bug in creating longdouble (#374) - thanks @zmughal
164
165 2.068_05 2022-01-23
166 - build and test-false-negative-avoidance improvements
167
168 2.068_04 2022-01-22
169 - fix bug in memory allocation revealed on 32-bit
170
171 2.068_03 2022-01-20
172 - improve GSL version parsing - thanks @d-lamb
173 - Slatec to work again with 32-bit pointer size
174 - got_complex_version to check for long-double version to reduce build fails
175
176 2.068_02 2022-01-17
177 - Slatec 64-bit safe
178
179 2.068_01 2022-01-16
180 - Minuit 64-bit safe
181 - Slatec 64-bit improvements
182 - fix IO::FITS::rfits with variable-length data to work on bigendian
183
184 2.068 2022-01-14
185 - add pdl.nbytes
186 - specify SByte as explicitly "signed" as C99 allows unsigned if not say
187
188 2.067 2022-01-13
189 - remove PDL.grow from API
190 - remove $PDL::BIGPDL check for 1GB data
191 - fix 2.064 regression in $pdl->sequence - thanks @moocow-the-bovine
192 - PDL_CORE_VERSION 20
193
194 2.066 2022-01-10
195 - re-release without erroneous OpenGL::GLUT requires dep
196
197 2.065 2022-01-10
198 - switch TriD stuff to use OpenGL::GLUT for GLUT functionality
199 - GLUT TriD now reopens the window on next draw if was closed
200 - bifuncs like Ops::plus no longer need explicit swap parameter
201 - add C "PDL_Value" union type
202 - replace Convert::UU as dep with own code - thanks @sebastic for suggestion
203
204 2.064 2022-01-08
205 - enable perldl -glut on Win32
206
207 2.063_05 2022-01-08
208 - rename PDL::get_trans to trans_parent
209 - add PDL::Trans::{parents,children}
210 - rename pdl.child_transes to trans_children, add PDL::trans_children
211
212 2.063_04 2022-01-07
213 - pdlpp_mkgen runs .pd files in correct dir
214 - PDL.changesoon removed
215 - longlong default bad value now LLONG_MIN
216 - add signed byte (SB), unsigned long (UL) and longlong (ULL)
217 - add Bad::locf - thanks @kmx
218 - fix qsortvec* with bad values - thanks @d-lamb for report
219 - hook @drzowie-created RICE_1 compression up to wfits
220 - PDL::FFT now thread- and 64-bit-safe
221 - sclr to croak if called on multi-element array
222 - $TXYZ() macros fatal error if any of trans's GenericTypes not dealt with
223 - add long double both real (LD) and complex (CLD)
224 - NiceSlice uses the better Filter::Simple version as is now quick
225 - IO::Pic::wpic assume PBM can do 16-bits per sample as exists since 2003
226 - added PDL::Graphics, an overview of modules - thanks @mascip
227 - add Type::bswap
228 - IO::Pnm::{r,w}pnm can work on open file-handle
229 - IO::Pic::rmpeg added
230 - IO::Pic::rpic will return an n+1-dim ndarray if multiple images in file
231 - set_datatype (and PDL.converttype) now badval-aware
232 - add dependency on File::Which - thanks @zmughal
233 - pp_addpm automatically adds line-number from .pd to aid debugging
234 - PDL_Indx now a C ptrdiff_t, PDL_*Long now C {,u}int{32,64}_t to simplify config
235 - xvals etc now return at least a double
236 - Primitive::{fibonacci,axisvalues} not output-only but can work inplace
237
238 2.063_03 2021-12-23
239 - add pp_add_macros
240
241 2.063_02 2021-12-23
242 - add PDL.scalar
243 - add dummy pdl_pthread_main_thread for when no POSIX threads
244 - PDL.pdlnew to make a null pdl except not ALLOCATED
245 - stopped disabling pthreads on BSD
246
247 2.063_01 2021-12-21
248 - define, use PDL_REPRINCS
249 - PDL.{pdlnew,null,get_thread{dims,offsp{,_int}}} return NULL on error, not croak
250 - PDL.{trans_check_pdls,barf_if_error,error_accumulate}
251 - PDL.{magic_get_thread,{start,iter}threadloop} return -1 not die
252 - PDL.sever returns pdl_error not pdl * (Perl interface stays same)
253 - ANYVAL_ISBAD interface change
254 - fix ->at with pdl having non-default badvalue
255 - macro args can contain () eg $CROAK("%d", $SIZE(n))
256 - remove Slices::flowconvert
257 - PDL_ISBAD macro
258 - bad values of NaN now work right with $ISBAD() etc
259 - rename PDL.slice_args_parse to slice_args_parse_sv
260 - stop redodims leaking memory
261 - remove PDL.{dim_checks,get,put_offs} from Core
262 - rename PDL.children_changesoon to changesoon
263 - GIS::Proj inplace funcs set output bad if any input bad
264 - switched GIS::Proj to PROJ 6 API
265 - PDL.make_error{,_simple} for error-handling instead of croak et al - can't just return as generated functions no longer return void
266 - remove PDL.vaffinechanged
267 - fix zeroes() regression from 2.057_01 where zeroes($byte_pdl) would give double
268 - make PDL::Compression functions thread-safe
269 - remove Core::set_dataflow_b
270 - PDL.affine_new to take PDL_Indx* not SV*
271 - PDL_CORE_VERSION 19
272
273 2.063 2021-11-19
274 - PDL::Core::seed - thanks @zmughal
275
276 2.062 2021-11-19
277 - Primitive::srand() added, random() calls if not done yet - thanks @whumann for report
278 - Primitive::random() et al to use xoroshiro256plus instead of Perl's rand()
279 - Primitive::random() et al able to pthread
280
281 2.061 2021-11-11
282 - native-complex ->re and ->im methods do two-way dataflow
283 - fix pp_line_numbers change not being done right for .pm
284
285 2.060 2021-11-08
286 - work around more recent GCC not tgmath-ing log10 for complex
287
288 2.059 2021-11-08
289 - removed supplied Cephes functions that C99 mandates
290 - Ops,Math to use tgmath.h not own $T() stuff
291 - MatrixOps switch from bespoke SSLib complex to C99 native complex
292 - Core::online_cpus, used to set_autopthread_targ if no env var set
293
294 2.058 2021-11-06
295 - no changes from 2.057_05
296
297 2.057_05 2021-11-06
298 - (DO{COMP,PRIV})DIMS -> more-accurate ${1}ALLOC
299 - stop Pars or OtherPars called "I" - thanks Judd Taylor for report
300 - pp_line_numbers restores line numbering after end of given text
301 - allow "CTYPE var[]" as OtherPars, add T_PDL_DIMLIST to typemap
302 - pnminraw etc to take $filehandle not just name of glob
303
304 2.057_04 2021-10-12
305 - remove legacy pdl_create
306 - remove long-deprecated nslice
307 - multi-C only updates files that have changed, for faster rebuilds
308 - because OtherPars are now in a separate struct, no restriction on names
309 - mslice is just an alias to Slices::slice
310 - allow any pointer including pdl * as OtherPars
311
312 2.057_03 2021-10-02
313 - remove IO::Misc::rdsa, untested since PDL 1.9 and needing non-CPAN "DSA" module
314 - throw error when XS called with inplace input but also explicit output
315 - OtherPars to separate struct; pdl_transvtable.structsize of that
316 - allow external .pd to opt-in to one-C-file-per-function
317
318 2.057_02 2021-09-26
319 - split internal .pd into one C file per pp_def function allowing parallel build
320 - tidy various modules so they don't get symbol clashes from that
321
322 2.057_01 2021-09-24
323 - fix pp_add_boot to remove any blank lines (such as added by pp_line_numbers)
324 - GSL::CDF now uses barf() on error, not GSL default of core-dump
325 - propagate_badflag only recurses with children that had different value
326 - Example/doc-pp script to use GraphViz2 to show pp_def key dependencies
327 - affineinternal only read/write when both parent & child physical
328 - allow zero-length ndarray as slice index even for length-1 dim - thanks @trevcs for report (SF#443, GH#229)
329 - replace some malloc/free with smalloc to not leak on exception
330 - replace whole genpp infrastructure with generated C macro
331 - remove Core.twod, requires recompile
332 - remove PDL::iscontig
333 - move all non-SV-using C out of Core.xs to C files
334 - remove unused pdl_{copy,unpackdims} including from Core struct
335 - move extra checks and functionality from Core.xs setdims into pdl_setdims, call that
336 - fix off-by-one error in nthreadids
337 - pthreading can be over non-divisible number of threads
338 - remove Core.qsort_*
339 - zeroes now quicker as only does memset, not assgn operation
340 - add $PPSYM()
341 - change API of PDL->converttype to remove obsolete flag
342 - remove unused "copy" mechanism for pdl_trans
343 - rename (struct pdl).trans -> trans_parent for comprehensibility
344 - now an error if CopyBadStatusCode uses $PRIV(bvalflag)
345 - fix setnantobad doc to match behaviour fixed in 2.040, add setnonfinitetobad
346 - Inplace now throws error for >2 elements in array-ref
347 - remove oslice (after 8 years) and never-used Slices::{s_,}identity
348 - all PDL operations now have a C function interface called pdl_(name)_run
349 - add setinftobad - thanks @alex-prusevich for suggestion
350 - PDL_CORE_VERSION 18
351
352 2.057 2021-08-13
353 - restore PDL_MAGIC_DELETEDATA mechanism
354 - PDL_CORE_VERSION 17
355
356 2.056 2021-08-08
357 - remove (very-)long-deprecated mmap code in favour of File::Map
358 - remove obsolete Core members, update Core version
359 - remove unnecessary Core members to reduce struct size and increase cacheability
360 - removed legacy mmap implementation including PDL_MAGIC_DELETEDATA mechanism
361 - remove PDL::Constants::{I,J} which returned a PDL::Complex - use PDL::i()
362 - n{good,bad}over, sum, prod, *pct, etc now return ndarrays not Perl values
363 - make PDL::IO::FastRaw::mapfraw not allocate RAM
364 - PDL_CORE_VERSION 16
365
366 2.055 2021-08-03
367 - officially deprecate PDL::Complex in favour of "native complex" - thanks @wlmb for suggestion
368 - throw exception for [phys] Pars with multi-used, non-matching dim of 1 instead of silent repeat
369
370 2.054 2021-07-26
371 - add PDL::Core::at_c as back-compat alias for at_bad_c
372
373 2.053 2021-07-26
374 - work around P:G:Limits::round_pow failing tests with uselongdouble
375
376 2.052 2021-07-04
377 - fix IO::Storable bug - thanks @viy2 for report
378 - add PDL::Opt::Simplex example - thanks @ewheelerinc
379 - allow POD in pp_line_numbers again - thanks @fantasma13 for report
380
381 2.051 2021-06-14
382 - also use $Config{cppflags} to find GD includes - thanks @d-lamb for report
383
384 2.050 2021-06-02
385 - fix pdlperl.h build bug - thanks @jplesnik for report
386
387 2.049 2021-05-31
388 - PDL::Complex->from_native / as_native
389 - zap obsolete MatrixOps::eigen_c
390 - MatrixOps::identity now preserves higher dims on multi-dim input
391 - copy now copies ndarray and leaves original ndarray's inplace alone
392 - MatrixOps::lu_decomp now preserves inplace flag on input
393 - MatrixOps::lu_backsub now gets output dims right including inplace - thanks @wlmb for report
394
395 2.048 2021-05-24
396 - remove obsolete and inaccurate doc relating bad values to NaN
397 - parse simple complex-number strings
398 - SvPDLV gives more comprehensible error if given a hash without "PDL" key
399 - drop SKIP_KNOWN_PROBLEMS support
400 - drop POGL_VERSION, USE_POGL, WITH_3D config; just try building
401 - Inline now not a dep but if installed gets updated to suitable version
402 - drop WITH_SLATEC config; just try building
403 - new pdlperl.h for Perl-specific functions/macros
404 - $PDL::undefval can be ndarray
405 - replace PDL::Complex stringification with native-complex version
406 - overloading now done in PDL::Ops/Primitive where functions defined
407 - overloading honours subclass methods
408
409 2.047 2021-05-08
410 - add PDL::i2C
411 - replace creal, cimag with re, im, for easier PDL::Complex -> native transition
412 - change default r2C and i2C input types to D from F
413 - add czip($re, $im) -> native complex
414 - i() as function (not constant) like nan()
415 - ci() removed
416 - add abs2
417 - re, im not exported due to clash with Test::Deep
418
419 2.046 2021-05-04
420 - pdl([native-complex]) now creates a native-complex ndarray
421 - sumover/prodover now also process native complex
422
423 2.045 2021-05-03
424 - PDL::r2C able to take simple numbers
425 - comparing PDL::Complex other than for equality now a fatal error, can == with real
426 - same comparison change in native complex
427 - PDL::Complex slices that affect 0-th dim get re-blessed as PDL
428 - PDL::Complex can assign real values and threading won't also assign to imag
429 - PDL::Constants only loads PDL::Complex on demand
430
431 2.044 2021-05-01
432 - fix a definite malloc error that may be what started build failures on 32-bit
433
434 2.043 2021-04-30
435 - fix case-sensitivity issue for earlier Perls in stringifying "NaN" - thanks @zmughal
436
437 2.042 2021-04-30
438 - ones, zeroes can be called with no args, returns zero-dims ndarray
439 - add nan() and inf() that behave similarly to ones, mutatum mutandis
440
441 2.041 2021-04-30
442 - at least GCC 4.8.5 needs loop var declared first
443 - can now use Inline "with" PDL in languages other than C
444 - ipow second param is "indx" so specify
445 - ipow only operate on floating-point types
446
447 2.040_02 2021-04-29
448 - build fixes plus make LINALG work on 32-bit
449 - update metadata to correct List::Util version dep
450
451 2.040_01 2021-04-28
452 - all C dimension- and threadid-related things now typed PDL_Indx
453 - PDL_CORE_VERSION 15
454
455 2.040 2021-04-27
456 - PDL_CORE_VERSION 14 for Core struct updates
457 - drop unused dep Module::Compile
458 - switch from List::MoreUtils to List::Util to reduce deps
459 - bad value per-PDL support now always present, not configurable
460 - use C99 isnan() to check for NaN, not isfinite(); complex if either are NaN
461 - the above (this note added post facto) changes setnantobad's behaviour to match function name
462 - can use NaN as badvalue for all floating-point types
463 - BADVAL_USENAN configuration option removed
464 - remove checks for _MSC_VER < 1400 as native complex req renders irrelevant
465 - add $type->floatsuffix for more generalisation
466 - all pdl.h type code generated from type objects to ease adding new types
467 - all suitable PDL::Primitive functions support native complex
468 - add PDL::GSL::LINALG - linear algebra routines from GSL
469
470 2.039 2021-04-24
471 - update lu_backsub docs with comparison to other linear algebra code
472 - fix "complex" type-qualifier bug affecting native-complex r2C
473 - add core pdl_at0
474 - Core.xs:set_c, badvalue now able to take a PDL object not just Perl scalar
475 - can construct a PDL object with Math::Complex objects
476 - fix cfloat-comparison that was breaking badval detection in complex types
477 - add $type->isnan('c expression')
478 - badvalue doesn't force return values to be Perl scalar but PDL object
479 - native complex values get Perl-ised into PDL::Complex::Overloads objects not strings
480
481 2.038 2021-04-19
482 - make pdlpp_postamble 4th arg be XS subs destination
483 - Inline::Pdlpp can take package param to put XS subs into
484 - incorporated GSL CDF functions out of PDL::Stats - thanks @maggiexyz!
485
486 2.037 2021-04-16
487 - switch obsolete finite() to C99 isfinite()
488 - add ppdefs_all
489 - make PDL::Types::ppdefs only return non-complex types for back-compat
490
491 2.036 2021-04-16
492 - fix t/gis_proj.t
493
494 2.035 2021-04-15
495 - bad value support now always present, not configurable
496 - pthread detection simplified, now enabled for Windows and MacOS
497 - remove check in build for ~/.perldl.conf
498 - remove TEMPDIR config - all now use File::Temp
499 - remove unnecessary PDL::Version (just "require PDL")
500 - relocate tests to beside what's tested (helps with any split)
501 - incorporate patches from downstream OpenSUSE - thanks @perlpunk
502 - add ppdefs_complex
503
504 2.034 2021-03-31
505 - add "complex" Pars type qualifier, r2C function
506
507 2.033 2021-03-30
508 - native complex documented better - thanks @fantasma13
509 - add "real" Pars type qualifier
510
511 2.032 2021-03-24
512 - fix t/pptest.t so it passes on 5.10, add VERSION_FROM to pdlpp_stdargs
513
514 2.031 2021-03-23
515 - pp_setversion preserves version as string, handling quote characters
516
517 2.030 2021-03-21
518 - PDL::Types now have the data to make PDL::Type::real etc operate
519 - pp_setversion treats (and preserves) version as string
520
521 2.029 2021-03-12
522 - no changes from 2.028_01
523
524 2.028_01 2021-03-08
525 - stop claiming packages C::StructObj C::StructType C::Type C::Var SymTab Win32::DDE::Netscape XS
526 - incorporate relevant improvements made in PDLA distros
527 - fix t/nat_complex.t to avoid glibc bug 18594 (fixed v2.22)
528
529 2.028 2021-03-07
530 - correct complex-maths functions for their C types
531 - fix MOD-problem-dodging logic for native complex
532
533 2.027 2021-03-06
534 - no changes from 2.026_04
535
536 2.026_04 2021-03-02
537 - define and use C macros in PP for shorter, more comprehensible XS
538
539 2.026_03 2021-02-28
540 - got_complex_version change to defeat FreeBSD 10 false positive for complex funcs
541 - trig functions like asin($perl_scalar) return NaN for >1 again
542
543 2.026_02 2021-02-25
544 - implement PDL::Type::real etc
545 - native complex numbers need check_lib as FreeBSD <10 has no complex trig
546
547 2.026_01 2021-02-19
548 - native support for complex numbers - thanks @fantasma13
549
550 2.026 2021-02-13
551 - fix GSL build errors, improve docs - thanks @d-lamb
552 - rfits properly treats BLANK in rice-compressed - thanks @d-lamb
553 - added Floyd-Warshall example to MATLAB comparison doc
554
555 2.025 2020-11-19
556 - fix spellings - thanks @sebastic
557
558 2.024 2020-09-17
559 - use CCCDLFLAGS for compile of pdl.c to include -fPIC where needed - thanks @newville
560
561 2.023 2020-09-14
562 - Remove extrapolation code from PDL::GSL::INTERP. - thanks @d-lamb
563
564 2.022 2020-09-06
565 - Fix wfits so that explicitly setting BITPIX works. - thanks @d-lamb
566 - add PDL::IO::Pic::imageformat - thanks @wlmb
567
568 2.021 2020-03-01
569 - fix pdlpp_postamble - thanks @sebastic
570
571 2.020_05 2019-12-29
572 - fix t/pgplot.t
573
574 2.020_04 2019-12-28
575 - more diagnostic info for PGPLOT / F77
576
577 2.020_03 2019-12-26
578 - PGPLOT test to check $DISPLAY first
579 - CallExt test to use abs path because of recent MacOS change
580
581 2.020_02 2019-12-17
582 - spelling fixes - thanks @sebastic
583
584 2.020_01 2019-12-12
585 - merge the documentation system updates - thanks @d-lamb
586
587 2.020 2019-12-12
588 - no changes from 2.019_06
589
590 2.019_06 2019-12-08
591 - PGPLOT stop accidentally finding own PGPLOT.pm from . in @INC - was loading installed %PDL::Config into Makefile.PL process
592
593 2.019_05 2019-12-02
594 - calloc->malloc+memset, as calloc on Win32 = "free to wrong pool"
595 - memset after malloc in pdlapi.c
596
597 2.019_04 2019-11-27
598 - fix PdlParObj.pm excessive pp_line_numbers
599
600 2.019_03 2019-11-25
601
602 - t/config.t stop specifying number of %Config keys
603 - update Inline dep for ILSM-finding bug
604 - use pp_line_numbers in PP.pm and ops.pd
605 - use calloc not malloc to reduce valgrind errors in ufunc.t
606
607 2.019_02 2019-11-19
608
609 - fix t/fits.t tempfiles use
610 - _oneliner to use EU::MM right
611
612 2.019_01 2019-11-10
613
614 - Honor LDFLAGS when building pdl - thanks @wiz-0
615 - build works even without Devel::CheckLib
616 - race condition in tests fixed to allow parallel tests
617 - fix spelling errors - thanks @sebastic
618 - Fix tilde expansion tests when non-existent $HOME - thanks @sebastic
619 - zap inc/Carp - fix #94
620 - update doc URLs, and docs - thanks @d-lamb
621 - replace all non-sort, non-ppdef-doc $a/$b in codebase - thanks @d-lamb
622 - Clean up PDL::Fit::Gaussian docs and tests - thanks @d-lamb
623 - badval fixes on systems with only unsigned chars - thanks @d-lamb
624 - fix segfault in some uses of PDL::Transform::map - thanks @d-lamb
625 - Improve compatibility with Perl's experimental 'bitwise' feature - thanks sprout@cpan.org
626 - RedoDims fix - thanks @drzowie
627 - range speedup - thanks @drzowie
628 - PDL::Lite fixes to bug that broke Test::PDL
629 - propagation of badflag with .= - thanks @hainest
630 - doc-building fixes for Windows
631 - quote-protect rpic/wpic commands
632 - test-coverage now available for XS files too
633 - Only build PDL::Graphics::PGPLOT if PGPLOT installed
634 - better vsearch_* docs - thanks @zmughal
635 - PDL::Complex doc and code fixes, tests, and improvements - thanks @d-lamb
636
637 v2.019 2018-05-05 16:42:44-04:00
638
639 General Notes:
640
641 * This is version 2.019 of the Perl Data Language.
642
643 * It is a the first official release of PDL initiating
644 the development and release moving from sourceforge
645 to github hosting.
646
647 Highlights:
648
649 * cat returns an ndarray of the highest input type, not
650 the first.
651
652 * The 'thresh' options in fitwarp2d has been removed.
653
654 * rfits/wfits now do tilde filename expansion.
655
656 * det in MatrixOps now uses the cached lu_decomp
657 value correctly.
658
659 * Multiple minor fixes, docs, cleanup, and changing
660 things to point to github away from sf.net.
661
662 v2.018_02 2018-04-28 13:46:27-04:00
663
664 General Notes:
665
666 * This is version 2.018_02 of the Perl Data Language.
667
668 * It is a the release candidate for the PDL-2.019
669 release which marks the move of PDL development
670 from sf.net to github.
671
672 Highlights:
673
674 * Various updates to redirect links and documentation refs
675 to the github ones.
676
677 * Various fixes over the past year since PDL-2.018 release
678 which will be documented at the next official PDL release.
679
680
681
682 v2.018_01 2018-04-13 09:56:56-04:00
683
684 General Notes:
685
686 * This is version 2.018_01 of the Perl Data Language.
687
688 * It is a transition developers release for the move of
689 PDL development from sf.net to github.
690
691 Highlights:
692
693 * Various updates to redirect links and documentation refs
694 to the github ones.
695
696 * Various fixes over the past year since PDL-2.018 release
697 which will be documented at the next official PDL release.
698
699
700
701 v2.018 2017-05-21 17:02:03-04:00
702
703 General Notes:
704
705 * This is version 2.018 of the Perl Data Language.
706
707 Highlights:
708
709 * SF.net Bugs fixed:
710
711 429 Alien::Proj4->load_projection_information parses PJ_sch parameters incorrectly
712 432 Work around List::MoreUtils bug t/gd_oo_test.t started failing in testers.
713 433 GSL SF errors kill perl and pdl2/perldl shell
714 434 Missing indx type in heading list of conversions.
715
716 * Build improvements:
717
718 - Add requirements and better test diags for PDL::IO::GD.
719
720 - Apppy patch so PDL::Lite can be used more than once
721 Thanks to Shawn Laffan for the patch.
722
723 - Fix build on perl <= 5.14 by adding ExtUtils::ParseXS to
724 CONFIGURE_REQUIRES.
725
726 - Make coretarget generate parallelisable make deps Make
727 "core" target be generated by separate function
728
729 - Fixes for coming removal of . from @INC for PDL build.
730 Thanks to Todd Rinaldo for the first patch and raising the issue.
731
732 * Various updates to the documentation.
733
734
735
736 v2.017_02 2017-05-18 17:33:55-04:00
737
738 General Notes:
739
740 * This is version 2.017_02 of the Perl Data Language,
741 and essentially PDL 2.018 release candidate 1. If
742 it tests ok we expect to release it as PDL 2.018 this
743 weekend.
744
745 Highlights:
746
747 * Fix problem where PDL::Lite could not be loaded more
748 than once. (Thanks to Shawn Laffan)
749
750 * Fix sf.net bug #429 with poor generation of documentation.
751
752 * Fix sf.net bug #433 where errors in GSL routines caused
753 perl to exit.
754
755 * Build enhancements for PDL::IO::GD to improve test
756 diagnostic messages and add List::MoreUtils as a
757 dependency for PDL.
758
759 * Better docs and explanation of indx datatype.
760 This closes sf.net bug #434.
761
762 * Add some missing modules to DEPENDENCIES (thanks
763 to Luis Mochan).
764
765
766
767 v2.017_01 2017-04-29 11:39:22-04:00
768
769 General Notes:
770
771 * This is version 2.017_01 of the Perl Data Language,
772
773 * Addresses some problems from changes in the perl
774 infrastructure that are or will break things in PDL.
775
776 Highlights:
777
778 * Handle coming removal of '.' from @INC
779
780 * Fix sf bug #432: Work around List::MoreUtils bug
781 This was causing a lot of PDL test failures.
782
783 * Fix build problem on perl <= 5.14
784
785
786
787 v2.017 2016-10-08 13:50:39-04:00
788
789 General Notes:
790
791 * This is version 2.017 of the Perl Data Language,
792
793 * Bugs fixed:
794
795 379 Passing qsort an extra argument causes a segfault
796 393 Tests may fail if perl is compiled with -Duselongdouble
797 409 PDL demos with PGPLOT display ignore $ENV{PGPLOT_DEV}
798 413 PDL::Core::Dev::pdlpp_postamble() cannot handle .pd files in subdirectories
799 419 t/#pdl_from_string.t fails on long double systems
800 421 PDL::IO::FITS can't handle 64-bit integers (longlong, indx)
801 422 PDL misc. compiler warnings.
802 423 wcols FORMAT option always incorrectly gives error
803 424 Calling PDL on a list of ndarrays fails to propogate bad values
804 425 svd is broken for everything but 2x2 matrices
805 --- Typo in PDL::GSLSF::COUPLING routine gsl_sf_coupling_6j
806
807
808 Highlights:
809
810 * Several patches contributed from the Debian team have been applied
811 that fix documentation spelling errors, make PDL builds more
812 reproducible, and will make packaging PDL easier.
813
814 * More helpful error message when multi-element PDL is used in
815 a boolean expression (feature request #84)
816
817 * Improve argument size handling and documentation for rle
818 (feature request #80)
819
820 * One can now use $pdlc = pdl($pdla,$pdlb) when $pdla and/or $pdlb
821 have BAD values and the BAD values will propagate to
822 $pdlc. Previously this would only work with a copy of a single
823 ndarray (e.g., $pdlc = pdl($pdla) ) or with 'cat'.
824
825 * Many changes have been made to make PDL compile more cleanly and
826 emit fewer compiler warnings.
827
828 * Quiet printf format warning for sizeof()
829
830 * Deprecate finite in favor of isfinite.
831
832 * Many cleanups and additions to the test suite to use Test::More
833 and to add meaningful test descriptions.
834
835 * Added subtests to primitive.t
836
837 * Add PDL::Doc::add_module to pdlpp_postamble
838
839
840
841 v2.016_91 2016-10-03 14:03:19-04:00
842
843 General Notes:
844
845 * This is version 2.016_13 of the Perl Data Language,
846 a.k.a. PDL-2.017 release candidate 1.
847
848 * All but release notes and announcement done...
849
850 Highlights:
851
852 * Added subtests to primitive.t
853
854 * Quiet printf format warning for sizeof()
855
856
857
858 v2.016_03 2016-10-01 17:51:40-04:00
859
860 General Notes:
861
862 * This is version 2.016_03 of the Perl Data Language.
863
864 Highlights:
865
866 * Bugs fixed:
867 413 PDL::Core::Dev::pdlpp_postamble() cannot handle .pd files in subdirectories
868 419 t/#pdl_from_string.t fails on long double systems
869
870 * More helpful error message when multi-element PDL is used in
871 a boolean expression (feature request #84)
872
873 * Improve argument size handling and documentation for rle
874 (feature request #80)
875
876
877
878 v2.016_02 2016-09-21 13:42:15-04:00
879
880 General Notes:
881
882 * This is version 2.016_02 of the Perl Data Language.
883
884 * Bugs fixed:
885 379 Passing qsort an extra argument causes a segfault
886 393 Tests may fail if perl is compiled with -Duselongdouble
887 409 PDL demos with PGPLOT display ignore $ENV{PGPLOT_DEV}
888 421 PDL::IO::FITS can't handle 64-bit integers (longlong, indx)
889 422 PDL misc. compiler warnings.
890 423 wcols FORMAT option always incorrectly gives error
891 424 Calling PDL on a list of ndarrays fails to propogate bad values
892 425 svd is broken for everything but 2x2 matrices
893 --- Typo in PDL::GSLSF::COUPLING routine gsl_sf_coupling_6j
894
895 Highlights:
896
897 * One can now use $pdlc = pdl($pdla,$pdlb) when $pdla and/or $pdlb
898 have BAD values and the BAD values will propagate to
899 $pdlc. Previously this would only work with a copy of a single
900 ndarray (e.g., $pdlc = pdl($pdla) ) or with 'cat'.
901
902 * Many changes have been made to make PDL compile more cleanly and
903 emit fewer compiler warnings.
904
905 * Many cleanups and additions to the test suite to use Test::More
906 and to add meaningful test descriptions.
907
908 * Several patches contributed from the Debian team have been applied
909 that fix documentation spelling errors, make PDL builds more
910 reproducible, and will make packaging PDL easier.
911
912
913
914 v2.016_01 2016-06-01 13:01:55-04:00
915
916 General Notes:
917
918 * This is version 2.016_01 of the Perl Data Language.
919
920
921 Highlights:
922
923 * Add PDL::Doc::add_module to pdlpp_postamble
924
925 * Deprecate finite in favor of isfinite.
926
927
928
929 v2.016 2016-05-30 10:22:04-04:00
930
931 General Notes:
932
933 * This is version 2.016 of the Perl Data Language.
934
935 * Bugs fixed:
936 417 Perl 5.22: + GSL 2.1 fails to build
937 408 PDL::GSL::RNG set_seed minor improvement
938 407 Build failures with GSL 2.1
939 416 PDL::PP creates .pm & .xs files before pp_done is called
940 414 ccNcompt (i.e. cc4compt and cc8compt) breaks with byte data type
941
942
943 Highlights:
944
945 * All collapse operators now have "<name>over" equivalent names.
946 This ends an API wart in which most, but not all, of the collapse
947 operators had a short form that did full collapse and a long form
948 that did 1-D collapse only (e.g. "and" collapses to a point,
949 while "andover" collapses by one dimension). The exceptions are
950 left in for legacy code, but now have regularized "-over" forms
951 as well:
952
953 average -> avgover
954 daverage -> davgover
955 maximum -> maxover
956 maximum_ind -> maxover_ind
957 maximum_n_ind -> maxover_n_ind
958 minmaximum -> minmaxover
959 minimum -> minover
960 minimum_ind -> minover_ind
961 minimum_n_ind -> minover_n_ind
962
963 * PDL::Transform image resampling now handles bad values in
964 images. In particular, the `h' and `j' (optimized filter)
965 resampling methods properly skip bad values in the image,
966 marking output pixels bad if more than 1/3 of the weighted
967 values associated with that output pixel are bad.
968
969 * PDLs with dataflow can now be reshaped. The dataflow
970 connection gets severed by the reshape operation.
971
972 * PDL::IO::FITS now works better with RICE-compressed FITS
973 images, such as are produced by NASA's SDO project.
974
975 - The NAXIS* header keywords are now replaced by their
976 ZNAXIS* equivalents, so the NAXIS fields in the header
977 are correct after the image is read in.
978
979 - The Z*, TFIELDS, TTYPE*, and TFORM* keywords are now
980 deleted from the header object, so that the uncompressed,
981 loaded image does not have leftover compression headers.
982
983 * The language preprocessor PDL::PP now does not automatically
984 call pp_done for modules that do not call pp_done themselves.
985 This new, stricter behavior requires module authors to call
986 pp_done at the end of their PDL::PP file. This prevents
987 partially-complete .xs and .pm files from being written if
988 there is a module build error.
989
990 * PDL::GSLSF modules have several fixes/improvements to support
991 building against GSL 2.0:
992
993 - New calling convention for gsl_sf_ellint_D.
994 - New functions gsl_sf_legendre_array
995 and gsl_sf_legendre_array_index.
996 - Deprecated gsl_sf_legendre_Plm_array
997 and gsl_sf_legendre_sphPlm_array.
998 - New tests for new legendre functions.
999 - Test requires all PDL::GSLSF modules
1000 to successfully load.
1001
1002 * PDL::GSL::RNG now allows chaining for the set_seed() method:
1003 e.g. $rng = PDL::GSL::RNG->new(..)->set_seed(..)
1004
1005 * PDL::Image2D's ccNcompt connected-component analysis code now
1006 returns types that are >= long, to avoid common overflow errors.
1007
1008 * PDL::whichND returns PDLs of Indx type, to avoid overflows.
1009
1010 * Empty ndarrays are handled slightly differently now by
1011 PDL::info and `help vars'. Empty ndarrays are different
1012 from null ndarrays, and now generate different info strings.
1013 (null ndarrays lack data or dimensions; empty ndarrays have
1014 at least one dimension of size 0).
1015
1016 * PDL::Fit::LM:
1017
1018 - Documentation has been clarified relating to input
1019 data uncertainties and weighting of the fit.
1020 - A small test suite has been added.
1021
1022 * There is now a .gitattributes file so GitHub repo language
1023 stats are more accurate.
1024
1025 * The PDL SF/GitHub deveolpment workflow is integrated into
1026 the DEVELOPMENT docs.
1027 v2.015_001 2016-05-27 12:28:39-04:00
1028
1029 General Notes:
1030
1031 * A.k.a PDL-2.016 release candidate 1.
1032
1033
1034 Highlights:
1035
1036 * TBD
1037
1038
1039
1040 v2.015 2015-11-22 08:52:22-05:00
1041
1042 General Notes:
1043
1044 * PDL-2.015 is a clean and polish release. It fixes
1045 some problems discovered with PDL-2.014 and improves
1046 the 64bit integer support.
1047
1048
1049 Highlights:
1050
1051 * Fixes to improve compile and test of F77 modules
1052 on OS X (i.e. don't build i386 versions)
1053
1054 * Basic/Ops/ops.pd - make compatible with MSVC++ 6.0
1055
1056 * Fix win10 breakage in t/flexraw_fortran.t Apparently, temp
1057 files were not being released after use which was preventing
1058 the tests to pass.
1059
1060 * Fix missing PDL license information
1061
1062 * Fix sf.net bug #403: reshape() failed when applied to a
1063 ndarray with dataflow. Now, changing the shape of a PDL
1064 that already has dataflow is prevented and an error message
1065 given.
1066
1067 * Fix sf.net bug 406 Added missing logic for clump(-N) and minor
1068 cleanup of perl wrapper.
1069
1070 * force new_pdl_from_string to return an ndarray with P=physical flag
1071
1072 * Add $PDL::indxformat for PDL_Indx This avoids loss of
1073 significance when 64bit PDL_Indx values are printed.
1074
1075 Make new_pdl_from_string() avoid converting IV values
1076 to NVs This allows pdl(indx, '[ 9007199254740992 ]')
1077 to work without rounding due to the 52bit double
1078 precision mantissa versus the 63bits + sign for PDL_Indx.
1079
1080 * Add type support info to pdl() constructor documentation.
1081 pdl() has always supported this usage but examples were
1082 missing in the documentation.
1083
1084 * improving PDL::GSL::RNG documentation
1085
1086 * remove spurious '}' from gnuplot demo
1087
1088
1089
1090 v2.014_03 2015-11-19 12:37:00-05:00
1091
1092 General Notes:
1093
1094 * This quick release is to verify the fix for the
1095 PDL license information.
1096
1097
1098 Highlights:
1099
1100 * Some updates to Changes and Known_problems
1101 as well.
1102
1103
1104
1105 v2.014_02 2015-11-17 09:20:23-05:00
1106
1107 General Notes:
1108
1109 * This is the 2nd release candidate for PDL-2.015
1110
1111
1112 Highlights:
1113
1114 * Same as PDL-2.014_01 but with a couple of F77 build
1115 fixes from Karl to support MacOSX builds and, we hope,
1116 a SciPDL to go with PDL-2.015!
1117
1118
1119
1120 v2.014_01 2015-11-14 14:01:28-05:00
1121
1122 General Notes:
1123
1124 * This is PDL-2.014_01, a cleanup and bug fix release.
1125
1126
1127 Highlights:
1128
1129 * Add $PDL::indxformat for PDL_Indx and
1130 Make new_pdl_from_string() avoid converting IV values to NVs
1131
1132 PDL_Indx values (type indx) now print with an integer
1133 format specification so all digits get printed. In
1134 addition pdl(indx, '[ 9007199254740992 ]') works as well
1135 going the other direction.
1136
1137 * Fix sf.net bug 403: reshape can't handle ndarrays with -C flag
1138
1139 reshape() on an ndarray with dataflow isn't meaningful.
1140 Now a warning is given. You can $pdl->sever first
1141 and then reshape() can be applied.
1142
1143 * Fix sf.net bug 406: clump() produces bogus dims
1144
1145 * Various build improvments and documentation fixes:
1146
1147 - force new_pdl_from_string to return an ndarray with P=physical flag
1148 - remove spurious '}' from gnuplot demo
1149 - Basic/Ops/ops.pd - make compatible with MSVC++ 6.0
1150 - Fix win10 breakage in t/flexraw_fortran.t
1151 - improving PDL::GSL::RNG documentation
1152 - Add type convert info to POD for the pdl() constructor
1153
1154
1155
1156 v2.014 2015-10-12 11:44:10-04:00
1157
1158 General Notes:
1159
1160 * This is PDL-2.014 introducing full support for
1161 64bit indexing operations using 64bit PDL_Indx
1162 data type.
1163
1164 * PDL can now create and use ndarrays having more
1165 than 2**32 elements. Of particular use is that
1166 you can now use PDL::IO::FlexRaw to memory map
1167 ndarrays from files on disk which can allow for
1168 simplified processing and IO on extremely large
1169 data.
1170
1171 * Due to the new PDL_Anyval type changes, existing
1172 PDL::PP modules may need to be updated to support
1173 the new PDL Core version 12 API. Authors, please
1174 see PDL::API for macros to ease the porting.
1175
1176 Users, be aware that some modules may not work
1177 until they are updated by their maintainers.
1178
1179
1180 Highlights:
1181
1182 * Implement PDL_Anyval data type as union to support
1183 64bit indexing
1184
1185 This adds a union data type to add 64bit integer support to
1186 the original PDL-2.x types which assumed that double was
1187 capable of holding all the "lesser" types. With the PDL_Anyval
1188 type, we can correctly handle 64bit integer data types and
1189 avoid errors and loss of precision due to conversions to or
1190 from PDL_Double. Special thanks to kmx and zowie for their
1191 help to complete and debug this implementation.
1192
1193 * Many fixes to the build process to make PDL more robust
1194 to build, test, and install. This takes advantage of new
1195 automated CI testing via Travis CI on the github site.
1196
1197 Thanks much to Ed and Zakariyya for their work to get
1198 this started and maintained. This CI testing makes
1199 this the best tested and best testing PDL release ever!
1200
1201 * Various documentation clean-ups and work to improve
1202 on-line viewing at http://metacpan.org and others.
1203 (Thanks kmx and Derek!)
1204
1205 * A new ipow() method haw been added with 64bit integer
1206 support. ipow() calculates the integer exponentiation
1207 of a value by successive multiplications. This allows
1208 one to avoid loss of significance in integer exponents.
1209 pow() converts the value to double and will always have
1210 <52bits precision.
1211
1212 * nbadover and ngoodover now return indx type (PDL_Indx)
1213
1214 * PDL now detects when your perl installation has been
1215 built with floating point longer than 8 bytes and gives
1216 a one time warning that precision will be lost converting
1217 from perl NV to PDL_Doubles. This warning is given on
1218 "use PDL;"
1219
1220 * "use PDL" now includes "use PDL::IO::Storable"
1221 This avoids a hard to diagnose crash that can
1222 occur when a user tries using Storable without the
1223 necessary "use PDL::IO::Storable".
1224
1225 * MANY sf.net bugs fixed:
1226
1227 400 dataflow slice crash around 2**31 boundary
1228 399 Small doc fixes
1229 398 $pdl->hdr items are lost after $pdl->reshape
1230 396 online docs for modules only work first time in PDL shells
1231 395 ipow (integer exponentiation) support for 64bit index support
1232 394 demo cartography fails
1233 383 gcc/#gfortran 4.9.2 needs -lquadmath
1234 378 where on dice of pdl bad results
1235 376 PDL Segmentation fault working with Storable restored PDL
1236 347 t/#pdl_from_string.t has a failure if BADVAL_NAN=1
1237 346 ExtUtils::F77 dependency causing problems for CPAN install
1238 343 longlong constructor and display lose digits due to...
1239 340 orover of byte data returns long type
1240
1241
1242
1243 v2.013_06 2015-10-10 16:04:14-04:00
1244
1245 General Notes:
1246
1247 * This is PDL-2.013_06 which is RC 2 for PDL-2.014
1248 and likely the final one before the official
1249 release. Please report any final issues and doc
1250 patches ASAP.
1251
1252
1253 Highlights:
1254
1255 * Mark some failing tests in t/primitive.t as TODO
1256 to avoid CPAN Testers failures.
1257
1258 * Add IPC::Cmd to TEST_REQUIRES
1259
1260
1261
1262 v2.013_05 2015-10-08 07:14:19-04:00
1263
1264 General Notes:
1265
1266 * This is PDL-2.013_05 (a.k.a. PDL-2.014 rc 1) which
1267 is the fifth CPAN developers release for PDL with
1268 newly completed support for 64bit indexing.
1269
1270 * Needs testing for ndarrays with more than 2**32
1271 elements but all checks pass so far.
1272
1273
1274 Highlights:
1275
1276 * Fix problem with broken t/opengl.t for testers
1277
1278
1279
1280 v2.013_04 TBD
1281
1282 General Notes:
1283
1284 * This is PDL-2.013_04 which is the fourth CPAN
1285 developers release for PDL with newly completed
1286 support for 64bit indexing.
1287
1288 * Needs testing for ndarrays with more than 2**32
1289 elements but all checks pass so far.
1290
1291
1292 Highlights:
1293
1294 * t/opengl.t is skipped the dynamic GL window creation
1295 tests if $AUTOMATED_TESTING is true.
1296
1297 * A new ipow() routine for integer exponentiation
1298
1299 * Corrected return types of intover, borover, bandover,
1300 nbadover, and ngoodover.
1301
1302 * Fixed compile problem in clang from using finite()
1303 on an integer datatype.
1304
1305
1306
1307 v2.013_03 2015-10-04 12:21:30-04:00
1308
1309 General Notes:
1310
1311 * This is PDL-2.013_03 which is the third CPAN
1312 developers release for PDL with newly completed
1313 support for 64bit indexing.
1314
1315 * Needs testing for ndarrays with more than 2**32
1316 elements but all checks pass so far.
1317
1318
1319 Highlights:
1320
1321 * More clean-up to handle perls with long double NVs
1322 Loss of precision will be warned on "use PDL;"
1323
1324 * Skipping t/bigmem.t to avoid OOM CPAN Testers fails.
1325
1326 * Minor fixes to C code to meet stricter compiler
1327 and C99 requirements.
1328
1329
1330
1331 v2.013_02 2015-10-03 08:40:08-04:00
1332
1333 General Notes:
1334
1335 * This is PDL-2.013_02 which is the second CPAN
1336 developers release for PDL with newly completed
1337 support for 64bit indexing.
1338
1339 * Needs testing for ndarrays with more than 2**32
1340 elements but all checks pass so far.
1341
1342
1343 Highlights:
1344
1345 * Clean up to handle perls with long double NVs
1346
1347 * Various bugs closed
1348
1349 * PDL::IO::Storable is now loaded with "use PDL;"
1350
1351
1352
1353 v2.013_01 2015-09-26 17:39:41-04:00
1354
1355 General Notes:
1356
1357 * This is PDL-2.013_01 which is the first CPAN
1358 developers release for PDL with newly completed
1359 support for 64bit indexing.
1360
1361 * Needs testing for ndarrays with more than 2**32
1362 elements but all checks pass so far.
1363
1364
1365 Highlights:
1366
1367 * TBD
1368
1369
1370
1371 v2.013 2015-08-14 08:37:15-04:00
1372
1373 General Notes:
1374
1375 * This is PDL-2.013. It is PDL-2.012 with some fixes
1376 for badvalue problems and Solaris make issues.
1377
1378 * See PDL 2.012 notes below.
1379
1380
1381 Highlights:
1382
1383 * Fix for sf.net bug #390: scalar PDL with badvalue
1384 always compares BAD with perl scalars. Now a warning
1385 is given if the badvalue could conflict with the
1386 results of a logical or comparision operation.
1387
1388 * Fixed a makefile construct which was ambiguous and
1389 caused build failures on Solaris using their make.
1390 Gnu make was not affected even on Solaris.
1391
1392
1393
1394 v2.012_01 2015-08-01 15:47401-0400
1395
1396 General Notes:
1397
1398 * This is PDL-2.012_01. It is PDL-2.012 with some fixes
1399 for badvalue problems when the badvalue was 0 or 1.
1400
1401 * See PDL 2.012 notes below.
1402
1403
1404 Highlights:
1405
1406 * Candidate fix for sf.net bug #390: scalar PDL with
1407 badvalue always compares BAD with perl scalars
1408
1409
1410
1411 v2.012 2015-06-14 08:27:01-0400
1412
1413 General Notes:
1414
1415 * This is PDL-2.012 it is essentially PDL-2.011 with some
1416 fixes for some minor issues that only came to light
1417 with a new official release.
1418
1419 * See PDL 2.011 notes below.
1420
1421
1422 Highlights:
1423
1424 * Add package statements so PDL::Lite and PDL::LiteF are
1425 indexed correctly
1426
1427 * Give PDL::NiceSlice a non-developer release for indexing
1428
1429 * Fix build regression that broke ActiveState perl
1430 builds for many perl versions and OS platforms.
1431
1432
1433
1434 v2.011 2015-06-02 17:01:22-0400
1435
1436 General Notes:
1437
1438 * This is PDL-2.011 it is essentially PDL-2.008 with some
1439 fixes for some minor issues.
1440
1441 * perl 5.10.x is now the minimum version of perl
1442 supported by PDL-2.008 and later.
1443
1444 * PDL::FFTW is no longer part of the PDL Core.
1445 Please use PDL::FFTW3 from CPAN (Dima Kogan)
1446 with Alien::FFTW3 support (Craig DeForest)
1447
1448 * PDL::Graphics::PLplot is no longer included in
1449 the PDL core distribution. Please install from
1450 CPAN directly.
1451
1452 * 50 sf.net bug tickets closed/fixed since PDL-2.007!
1453
1454 * Partial 64bit indexing support with some fixes
1455 to remaining issues. Full 64bit support for perl
1456 modulus operater ('%') is in progress.
1457
1458 * Major clean up and rework of the core PDL
1459 computation code, the build process, test suites,
1460 and updating to reflect more of the best practices
1461 for perl module development.
1462
1463 * The PDL development has moved to github and now
1464 has added continuous commit testing via the
1465 Travis-CI framework. The git workflow is now
1466 inline with current practices and it is expected
1467 that this will allow more contributions and "eyes
1468 on the code".
1469
1470
1471 Highlights:
1472
1473 * See PDL 2.008 Highlights below.
1474
1475
1476
1477 v2.010 2015-06-02 14:40:15-0400
1478
1479 General Notes:
1480
1481 * Another indexing regression. Sigh.
1482
1483
1484
1485 v2.009_01 2015-05-29 17:47:57-0400
1486
1487 General Notes:
1488
1489 Highlights:
1490
1491 * Removal of PDL::Graphics::PLplot since exists as separate CPAN distro
1492
1493
1494
1495 v2.009 2015-05-29 12:26:25-0400
1496
1497 General Notes:
1498
1499 * This is PDL-2.009. It has tweaks to fix PAUSE/CPAN
1500 indexing problems in 2.008.
1501
1502 * Known_problems updated to reflect a seldom seen
1503 pdldoc installation problem for certain custom
1504 perl configurations on cygwin. A workaround is
1505 known. Please contact the PDL mailing list if you
1506 have this problem. See the sf.net bug report at
1507 http://sourceforge.net/p/pdl/bugs/384/ for more
1508 information.
1509
1510 * See Release Notes for PDL 2.008 below for more.
1511
1512
1513
1514 v2.008 2015-05-24 18:42:22-0400
1515
1516 General Notes:
1517
1518 * This is PDL-2.008! Yay!
1519
1520 * perl 5.10.x is now the minimum version of perl
1521 supported by PDL-2.008 and later.
1522
1523 * 50 sf.net bug tickets closed/fixed since PDL-2.007!
1524
1525 * Partial 64bit indexing support with some fixes to
1526 remaining issues. Full 64bit support for perl modulus
1527 operater ('%') is in progress.
1528
1529 * Major clean up and rework of the core PDL computation
1530 code, the build process, test suites, and updating to
1531 reflect more of the best practices for perl module
1532 development.
1533
1534 * The PDL development has moved to github and now has
1535 added continuous commit testing via the Travis-CI
1536 framework. The git workflow is now inline with
1537 current practices and it is expected that this will
1538 allow more contributions and "eyes on the code".
1539
1540 Highlights:
1541
1542 * PDL::FFTW is no longer part of the PDL Core.
1543 Please use PDL::FFTW3 from CPAN (Dima Kogan)
1544 with Alien::FFTW3 support (Craig DeForest)
1545
1546 * New improved vsearch functionality, interfaces,
1547 and documentation (Diab Jerius)
1548
1549 * PDL::IO::Storable now robust against version, platform
1550 endianness, and supports the new 64bit PDL_Indx data
1551 type (Dima Kogan)
1552
1553 * Clean up of PDL/Basic/Core code to remove cruft and
1554 to simplify the evolution to a coming improvements
1555 (Craig DeForest)
1556
1557 * Major clean up, de-crufting, and streamlining of the
1558 entire PDL ExtUtils::MakeMaker build process (Ed J)
1559
1560 * Standardizing and updating the entire PDL test suite
1561 to a common basis (use Test::More) and coding to more
1562 consistent best practices. E.g., use strict
1563 This is a huge (ongoing) effort but a comprehensive
1564 test suite is needed for regression tests to validate
1565 compatibility of coming PDL3 architecture changes.
1566 (Zakariyya Mughal)
1567
1568 * You can now call the PDL::Graphics2D twiddle()
1569 routine with an argument of 0 or 1 (i.e., false
1570 or true) to set whether the twiddle loop is run.
1571
1572 * Library dependency detection improvements including
1573 PROJ4 and GD. A number of improvements in this for
1574 strawberry perl on windows (kmx)
1575
1576 * The PDL distribution process now generated the
1577 documentation for the modules using the automated
1578 code generation process. This makes all the PDL
1579 docs available on http://search.cpan.org and on
1580 http://metacpan.org for your web browser. (kmx)
1581
1582 * Improved support to build XS/C extensions: (Ed J)
1583 - You can now: "use Inline with => 'PDL';", see PDL::API
1584 - You can, in your module's Makefile.PL:
1585 "$p = new ExtUtils::Depends 'MyMod', 'PDL'"
1586
1587 * MANY sf.net tickets closed:
1588
1589 377 PDL::Transform::Proj4 not building under latest dev EUMM
1590 375 Storable files incorrectly processed from older versions.
1591 374 CONFIGURE_REQUIRES => Devel::CheckLib
1592 373 2.007_11 MANIFEST
1593 372 2.007_11 fails on MS Windows 64bit
1594 371 PDL-2.4.11 medover failure in perl 5.20.1
1595 370 PDL-2.007 can fail to build Basic/#Core files
1596 369 slice fails with subclass index
1597 368 PDL::Slatec::polyfit ignores incorrect length of weight ndarray...
1598 367 BAD value parsing breakage
1599 365 CPAN PDL install broken due to breakage in Module::Compile 0.34
1600 363 PP "OtherPars" namespace is not clean
1601 362 rcols COLIDS need chomp-ing
1602 361 vsearch bug w/# reversed list
1603 360 subtle & rare bug in vsearch
1604 359 Improved documentation for vsearch
1605 358 one2nd() has unexpected behaviour when given a Perl scalar rather than an ndarray
1606 357 Android support
1607 356 overload::Method() does not return coderef for stringification
1608 355 dog creates 0 dim ndarray which squeezes to 1 dim.
1609 353 imag2d not 'use warnings' safe and no way to disable twiddle
1610 352 reorder() not an lvalue sub
1611 351 PDL_BOOT has wrong XS code
1612 350 Modules using PDL::Slatec will get installed even if Slatec is disabled
1613 349 PDL needs integrated support for PDL::PP and CPAN indexer
1614 348 PDL->null->slice('')->nelem results in error
1615 345 documentation of WITH_PLPLOT in perldl.conf incorrect
1616 344 Current version numbering is broken
1617 342 BUGS file not indexable or discoverable
1618 337 rangeb() broken for 64bit index support on 32bit perl
1619 332 "isn't numeric in null operation" warning could be more helpful
1620 331 uniq does not always return proper object
1621 329 t/#picrgb.t fails in PDL build
1622 321 Several core modules do not have man pages
1623 319 PDL::Index does not render on websites
1624 316 plplot.t failure when building 2.4.11
1625 314 conv1d bad value broken
1626 313 clip() edge case not handled right
1627 312 Wrong results in corner empty-set cases
1628 283 PDL::IO::FITS::wfits corrupting FITS image
1629 272 indexND of Empty pdls can segfault
1630 268 PLplot still unusable with X
1631 261 max() fails on nan
1632 256 Threadable version of PDL::MatrixOps::inv
1633 232 perl -d chokes on lvalue functions
1634 227 PGPLOT module doesn't work in PDL
1635 224 Ctrl-C kills perldl in win32 console
1636 207 Name "PDL::SHARE" used only once.
1637 63 Unable to get the 3d demos
1638 51 justify option fails in imag (PDL2.3.4)
1639
1640
1641
1642 v2.007_17 2015-05-06 13:35:57-0400
1643
1644 General Notes:
1645
1646 * This is PDL-2.008_rc4!
1647
1648 Highlights:
1649
1650 * Clean up of large number modulo tests and make TODO for
1651 the PDL-2.008 release.
1652
1653 * Fix build/configure problems from CPAN Testers reports.
1654
1655 * Quiet excessive warnings in perldl and pdl2doc
1656
1657
1658
1659 v2.007_16 2015-04-22 10:23:46-0400
1660
1661 General Notes:
1662
1663 * This is PDL-2.008_rc3!
1664
1665 Highlights:
1666
1667 * Various clean up and doc fixes
1668
1669 * Add more of the PDL prerequisites explicitly to handle
1670 missing core functionality for CPAN Testers.
1671
1672
1673
1674 v2.007_15 2015-04-19 17:08:55-0400
1675
1676 General Notes:
1677
1678 * This is PDL-2.008_rc2!
1679
1680 Highlights:
1681
1682 * Build issues with PROJ4 detection and link with cygwin
1683 platforms has been worked around.
1684
1685 * Failing tests in t/ops.t for new 64bit modulus support
1686 have been marked TODO.
1687
1688
1689
1690 v2.007_14 2015-04-11 14:28:07-0400
1691
1692 General Notes:
1693
1694 * This is PDL-2.008_rc1!
1695
1696 Highlights:
1697
1698 * More cleanup and a couple of build issues fixed with
1699 PROJ4.
1700
1701 * Various test suite improvements.
1702
1703
1704
1705 v2.007_13 2015-03-22 16:00:03-0400
1706
1707 General Notes:
1708
1709 * Counting down to a PDL-2.008 release this April 2015
1710
1711 Highlights:
1712
1713 * Travis on Github now routinely tests on dev ExtUtils::MakeMaker, clang:
1714 https://travis-ci.org/PDLPorters/pdl
1715
1716 * Coveralls on Github now lists test coverage:
1717 https://coveralls.io/r/PDLPorters/pdl
1718
1719 * Many tests updated to use Test::More, Test::Deep, Test::Exception
1720
1721 * PDL::FFTW is now removed from the PDL core. Use
1722 PDL::FFTW3 instead.
1723
1724 * Prototype use of Alien::Proj4 to encapsulate install/build info
1725
1726 * Fix warnings compiling under clang
1727
1728 * Addition of "core" and "coretest" targets for quicker build and dev cycle
1729
1730 * Make Filter::Util::Call the default engine for PDL::NiceSlice
1731
1732 * Make PDL_Anyval type, for 64-bit purposes
1733
1734 * Clean up and better-comment pdl*.h
1735
1736 * Make "isn't numeric in null operation" warning more helpful
1737
1738 v2.007_12 2015-03-06 09:18:04-05:00
1739
1740 General Notes:
1741
1742 * Counting down to a PDL-2.008 release this February 2015
1743
1744 * This release marks the completion of almost all the
1745 priority issues needed for PDL-2.008. Expect feature
1746 freeze, final shakedown, and release to come!
1747
1748
1749 Highlights:
1750
1751 * Fixed sf.net bug #373 2.007_11 MANIFEST
1752
1753 * Implemented 'core' and 'coretest' targets for quick testing.
1754
1755 * Fix quote/whitespace build problems
1756
1757 * Fix threading problem discovered in PDL::MatrixOps::inv()
1758
1759 * Build improvements and support for automated commit testing
1760 via the travis-ci infrastructure
1761
1762 * Fixed sf.net bug #368 PDL::Slatec::polyfit ignores
1763 incorrect length of weight ndarray
1764
1765 * Fixed sf.net bug #374 CONFIGURE_REQUIRES => Devel::CheckLib
1766
1767 * Tests and fixes for modulus operator for 64bit integer
1768 operands. Tests on 32bit systems welcome.
1769
1770 * Lots of tweaks and cleanup...
1771
1772 v2.007_11 2015-02-24 16:08:36-05:00
1773
1774 General Notes:
1775
1776 * Counting down to a PDL-2.008 release this February 2015
1777 Highlights:
1778
1779 * The new Filter::Simple engine for PDL::NiceSlice is now
1780 the default. This fixes problems where PDL::NiceSlice
1781 was applying the sourcefilter to the content of comments
1782 and strings. Still to do: implement for command line use
1783 in perldl/pdl2 shells.
1784
1785 * Added ability to call PDL::Graphics2D twiddle() routine with
1786 an argument of 0 or 1 (technically false or true) to set
1787 whether the twiddle loop is run. Also fixed a minor warning
1788 generated with 'use warnings'. This closes bug #353.
1789
1790 * Lots of clean up and build process improvements.
1791
1792
1793
1794 v2.007_10 2015-02-02 10:59:22-05:00
1795
1796 General Notes:
1797
1798 * Counting down to a PDL-2.008 release this February 2015
1799
1800 Highlights:
1801
1802 * More clean up to build process.
1803
1804
1805
1806 v2.007_09 2015-01-29 11:01:24-05:00
1807
1808 General Notes:
1809
1810 * Counting down to a PDL-2.008 release this February 2015
1811
1812 Highlights:
1813
1814 * perl 5.10.x is now the minimum version of perl supported for
1815 this release. Please test.
1816
1817 * Much clean up of the EU::MM build process by Ed.:w
1818
1819
1820
1821 v2.007_08 2015-01-20 18:24:01-05:00
1822
1823 General Notes:
1824
1825 * Counting down to a PDL-2.008 release this January 2015
1826
1827 Highlights:
1828
1829 * Some ExtUtils::MakeMaker fixes and clean up for the PDL build
1830 process.
1831
1832 * Fix non-portable usage bug in t/vsearch.t which prevented the
1833 test from passing on perls 5.12 and earlier
1834
1835
1836
1837 v2.007_07 2015-01-06 17:44:08+11:00
1838
1839 General Notes:
1840
1841 * Counting down to a PDL-2.008 release this January 2015
1842
1843 Highlights:
1844
1845 * This release includes the new pre-generated pm/pod to
1846 clean up the docs available on-line on metacpan.org and
1847 search.cpan.org.
1848
1849 * Bug fix in t/vsearch.t to support perl 5.12 and earlier.
1850 PDL currently supports perl 5.8.x and later.
1851
1852
1853
1854 v2.007_06 2015-01-05 13:31:13-05:00
1855
1856 General Notes:
1857
1858 * Counting down to a PDL-2.008 release this January 2015
1859
1860 Highlights:
1861
1862 * Fixed a number of bugs on the sf.net tracker
1863
1864 * Fix for EU-MM-7.0 and later problem with dmake
1865
1866 * Include generated pod in the distribution so that
1867 metacpan.org and search.cpan.org have better/working
1868 online docs.
1869
1870
1871
1872 v2.007_05 2014-12-24 09:24:04-05:00
1873
1874 General Notes:
1875
1876 Highlights:
1877
1878 * You can now: "use Inline with => 'PDL';" - see PDL::API
1879
1880 * You can, in your module's Makefile.PL: "$p = new ExtUtils::Depends
1881 'MyMod', 'PDL'"
1882
1883 * Various bugs fixed
1884
1885 * New vsearch() implementations with features and flexibility
1886
1887
1888
1889 v2.007_04 2014-09-09 00:44:29+01:00
1890
1891 General Notes:
1892
1893 Highlights:
1894
1895 * You can now: "use Inline with => 'PDL';" - see PDL::API
1896
1897 * You can, in your module's Makefile.PL: "$p = new ExtUtils::Depends
1898 'MyMod', 'PDL'"
1899
1900
1901 v2.007_03 2014-07-01 16:54:59-04:00
1902
1903 General Notes:
1904
1905 Highlights:
1906
1907 * Fix documentation builds for installs into vendor directory.
1908
1909 * Fixes for library detection on MS Windows
1910
1911 * Fix incompatibility of PDL::IO::Storable with perl versions < 5.10.x
1912
1913
1914
1915 v2.007_02 2013-11-25 14:10:22-05:00
1916
1917 General Notes:
1918
1919 Highlights:
1920
1921 * This release should be a working PDL::IO::Storable that
1922 is compatable with the new 64bit index support.
1923
1924 * PDL::IO::Storable now requires perl 5.10.x or greater
1925 although the overall distribution requirements are not
1926 planned to update to 5.10.x until the completion of
1927 fixes for the longlong hidden double precision conversion
1928 slash truncation bug.
1929
1930
1931
1932 v2.007_01 2013-11-17 16:31:17-05:00
1933
1934 General Notes:
1935
1936 Highlights:
1937
1938 * Added FAQ entry on PDL version numbering change and how
1939 to specify required PDL versions.
1940
1941 * Corrected perldl.conf docs for WITH_PLPLOT in the comments
1942
1943 * Update PDL::IO::Storable to work with the new PDL_Indx
1944 data type. Also made the code backwards compatible to
1945 read files written by older PDL releases.
1946
1947 * Fixed NaN handling for min/max and cleaned up handling
1948 of empty sets.
1949
1950 * Various enhancements to PDL::Transform
1951
1952
1953
1954 v2.007 2013-10-12 12:56:52-04:00
1955
1956 General Notes:
1957
1958 * PDL computations now use 64bit indexing/addressing if
1959 your platform supports it (i.e., your perl configuration
1960 has $Config{ivsize} == 8).
1961
1962 - You can process with pdls with more then 2**32 elements.
1963
1964 - Memory mapped file IO supports up to 8TB files which
1965 allows much simpler processing of large data files.
1966 (See mapflex in PDL::IO::FlexRaw for details)
1967
1968 * PDL-2.007 has a new, unified slicing engine and syntax
1969 that consolidates the multiple slicing variants into
1970 a backward compatible but now 64bit aware slice. See
1971 the PDL::Slices for the new syntax that is enabled.
1972
1973 * PDL::FFTW has moved to its own distribution on CPAN
1974 and is no longer in the PDL core distribution. Look
1975 for PDL::FFTW3 coming to CPAN soon.
1976
1977 * Some required dependencies have been update to more
1978 recent versions:
1979
1980 - ExtUtils::MakeMaker now requires version 6.56 or
1981 higher, the minimum version with CONFIGURE_REQUIRES
1982 support.
1983
1984 - Perl OpenGL 0.6702 is now required for PDL::Graphics::TriD
1985 to build. This fixes a number of critical bugs and should
1986 be a seamless upgrade.
1987
1988 - File::Map version 0.57 is required. This fixes map_anonymous
1989 support for the >2**32 sizes needed for 64bit support.
1990 Legacy mmap support for unix platforms is no longer
1991 supported. The distribution requires File::Map so you
1992 should not notice the change.
1993
1994 * Incompatible Changes:
1995
1996 - PDL::FFT now uses the same sign convention as FFTW and
1997 the rest of the world, -1/+1 for forward and reverse
1998 FFT respectively.
1999
2000 - C/XS API of PDL-2.007 is incompatible with previous
2001 PDL releases. If you upgrade to PDL-2.007, you *will*
2002 need to re-install or upgrade *all* dependent XS or PP
2003 based modules.
2004
2005 - PDL now auto-promotes array refs in many places that
2006 previously required an ndarray (so you can say, e.g.,
2007 "$a->index([2,3])" instead of "$a->index(pdl(2,3))").
2008
2009 - String syntax for slice() specifications now ignore
2010 white space.
2011
2012 * The clean up of the PDL core distribution continues and
2013 PDL-2.007 is no exception. Many bug fixes, documentation
2014 updates, code and implementation improvements make this
2015 the best testing PDL release to date.
2016
2017
2018 Highlights:
2019
2020 * FITS IO improvements and fixes:
2021
2022 - Added 'afh" option to rfits to allow explicit use of
2023 legacy hash parser for performance reasons.
2024
2025 - New multiple extension writing support for wfits.
2026
2027 * Added pp_deprecate_module() to PDL::PP
2028
2029 * New mode/modeover functions in PDL::Ufunc
2030
2031 * Made exception handling in slices more robust.
2032
2033 * PDL::CLONE_SKIP added for improved ithread support.
2034
2035 * Updated graticule() in PDL::Transform::Cartography to
2036 support NaN-delimited output.
2037
2038 * Bugs fixes:
2039
2040 - Fix %hash randomization bugs in PDL tests
2041
2042 - Fix OpenBSD pthread build problem for non-threaded perls
2043
2044 - Fix PDL::shape to return vector for 1-D ndarrays
2045
2046 - Fix badvalue-on-truncate support for map and for interpND
2047
2048 - Fix for MSVC++ 6.0 to build on 32bit systems.
2049 MSVC++ 6.0 cannot be used to build 64bit index support.
2050
2051 - Fix polyfit() handling of BAD values and various edge cases.
2052
2053 - Fix rare "Bizarre copy of HASH in scalar assignment"
2054
2055 - Fix rcols with colsep and $PDL::undefval
2056
2057 - Fix sf.net bug #331 "uniq does not always return proper object"
2058
2059 - Fix sf.net bug #338 PDL::FFT uses backwards sign convention from FFTW
2060
2061 - Make PDL::NiceSlice preserve line numbering (sf.net feature #75)
2062
2063 - PDL::IO::GD->new() is now less picky about it args, and no longer crashes
2064
2065 - Two bug fixes to transform.pd, and an augmentation
2066
2067
2068
2069 v2.006 2013-03-23 10:02:31-04:00
2070
2071 General Notes:
2072
2073 * Change to the version number scheme used for PDL
2074 from the dotted-integers format back to plain old
2075 decimal numbers.
2076
2077 Unfortunately, PDL has used both alternatives before
2078 and in an inconsistent, out-of-order way. With this
2079 release, the current version will also be the most
2080 recent version with respect to both numbering schemes.
2081
2082 For more details see David Goldens blob post on
2083 the topic and the pdl-porters list discussion:
2084
2085 http://www.dagolden.com/index.php/369/version-numbers-should-be-boring/
2086 http://mailman.jach.hawaii.edu/pipermail//pdl-porters/2013-February/005343.html
2087
2088
2089 * PDL-2.006 also showcases the demos of two new PDL graphics
2090 modules in the perldl/pdl2 shells:
2091
2092 - PDL::Graphics::Gnuplot
2093 http://search.cpan.org/~zowie/PDL-Graphics-Gnuplot-1.4/
2094
2095 - PDL::Graphics::Prima
2096 http://search.cpan.org/~dcmertens/PDL-Graphics-Prima-0.13/
2097
2098 Both modules install on all supported PDL platforms. A
2099 recent addition is PDL::Graphics::Simple which provides
2100 a uniform presentation to the variety off available PDL
2101 plot/view/print options.
2102
2103 - PDL::Graphics::Simple
2104 http://search.cpan.org/~zowie/PDL-Graphics-Simple-1.004/README.pod
2105
2106 Let us know how they work for you. As they are
2107 relatively "young" contributions your feedback and
2108 questions are always welcome.
2109
2110
2111 * PDL Distribution related updates:
2112
2113 - Fixes a build issue for PDL at ASPerl
2114
2115 - Many fixes for debian distributions.
2116
2117 - PDL::IO::NDF has been moved to its own
2118 distribution on CPAN. This could affect
2119 upgrades from older PDL installs.
2120
2121
2122 Highlights:
2123
2124 * New support for reading IDL format files via PDL::IO::IDL.
2125
2126 * Added an unpdl method which is (roughly) the inverse
2127 operation of pdl (Joel Berger).
2128
2129 * Updated polyfill and polyfillv routines to the algorithm
2130 from pnpoly: more accurate on edge pixels and faster due
2131 to its PP implementation (Tim Haines).
2132
2133 * Added Boundary=>'Replicate' option to conv2d and med2d (chm).
2134
2135 * Support for new additional random number generators to
2136 PDL::GSL (John Lapeyre).
2137
2138 * Add lgamma support for MinGW-built perls with tests
2139 to match (sisyphus).
2140
2141 * Many improvments to docs and their generation from
2142 PDL sources. Specific new functionality support:
2143
2144 - Newly refactored docs engine using core perl
2145 modules rather than PDL-only ones (Joel Berger)
2146
2147 - New FullDoc key added to PDL::PP makes writing CPAN
2148 friendly .pd files much, much easier (David Mertens).
2149
2150 - New PDL::Doc::add_module() routine to add an external
2151 module's POD (with PDL::Doc conventions) to the PDL
2152 docs on-line database (Craig DeForest).
2153
2154 * Many bugs fixed, some even before a ticket could be opened!
2155
2156 - Sf.net bug #3607936: Fixed a bug causing crashes
2157 due to using inplace with a duplicate argument.
2158
2159 - Sf.net bug #3603249: AutoLoader leaks $_ into local
2160 context, reported and fixed by Craig.
2161
2162 - Sf.net bug #3588182: Fixed hist() handling of the case
2163 of fractional steps in integral input data types.
2164
2165 - Sf.net bug #3563903: Fixed bug in PNG format detection
2166 on win32 platforms.
2167
2168 - Sf.net bug #3544682: Fixed error report bug in perldl
2169 that resulted from a change in the way perl handles
2170 eval exception reporting.
2171
2172 - Sf.net bug #3539760: qsort[vec] are now inplace aware.
2173
2174 - Sf.net bug #3518190: Potential fix for t/gd_oo_tests.t
2175 test crashes.
2176
2177 - Sf.net bug #3515759: Work around for PDL::GIS::Proj
2178 build failures with proj-4.8.0.
2179
2180 - Sf.net bug #3479009: Fixed dummy() to generate a
2181 valid syntax for the underlying call to slice().
2182
2183 - Sf.net bug #3475075: Fixed 16-bit PNM raw format handling.
2184
2185 - Added warning if conv1d is used on an ndarray with
2186 the badflag set.
2187
2188 - Fix NaN sign issues as reported (and fixed!) by
2189 Matthew McGillis with contributions by Sisyphus.
2190
2191 - Fix rim() 3-arg form. Added tests to support and
2192 verify the development.
2193
2194 - Fixed a problem with multiple windows and imag2d
2195 and imag2d_update.
2196
2197 * The PDL shells keep getting better:
2198
2199 - New feature in perldl and pdl2 where a pattern matching
2200 the PDL shell prompt (in $PERLDL::PREFIX_RE) will get
2201 stripped off of input lines before eval. This makes it
2202 easier to cut-and-paste example text from PDL shell
2203 sessions or from the PDL Book into an active session.
2204
2205 - Added a demo for PDL::Graphics::Prima to the PDL shells.
2206
2207 - Added a demo for gnuplot to the PDL shells.
2208
2209 - The p shortcut to display output in the PDL shells has
2210 been reverted to its previous 2.4.10 behavior. If you
2211 wish it to be an exact alias for print just override
2212 in your .perldlrc or local.perldlrc file.
2213
2214
2215
2216 v2.4.11 2012-05-20 13:32:17-04:00
2217
2218 General Notes:
2219
2220 * This is a point release of PDL to support the coming perl
2221 5.16.0 release.
2222
2223 Highlights:
2224
2225 * A new implementation mapflex and mapfraw routines provides
2226 memory-mapped IO for all platforms including win32 systems.
2227
2228 * The new memory mapped IO support is implemented using
2229 File::Map so version 0.47 has been added as a required
2230 dependency to force automated testing so an automated build
2231 will need this dependency installed.
2232
2233 NOTE: For systems having POSIX mmap, a manual build of
2234 PDL will automatically use the legacy implementation.
2235
2236 * Various cleanup to existing code to fix warnings generated
2237 by perl versions 5.15.x and higher.
2238
2239 Remove deprecation warning in PGPLOT/Window/Window.pm
2240 complex.pd - fix attempts to overload '<=>=' and '=>'
2241
2242 * Sf.net bugs fixed:
2243
2244 3518253 Make PDL::flat work under perl 5.16 (thanks sprout!)
2245 3516600 pdl_from_string.t fails w/ BADVAL_USENAN=1
2246 3487569 PDL::IO::Misc : rcols problem (thanks bperret!)
2247 3476648 PDL build of HTML docs fails on recent bleed Perl
2248
2249 * Other bugs fixed:
2250
2251 Fix check for glutRunning logic for imag2d
2252 Fixed a bug in cat's error reporting.
2253 Added lvalue awareness to whereND
2254
2255 * New and improved tests have been added to the test suite.
2256
2257 Tests t/gd_oo_tests.t and t/inline-comment-test.t are
2258 skipped for BSD platforms (see sf.net bugs #3518190 and
2259 #3524081 to track their issues).
2260
2261 * New support for multi-line comments in PP code. See docs for
2262 PDL::PP for details (e.g., pdldoc PP).
2263
2264 * Various enhancements to barf/croak output and messages to make
2265 error reports and stack traces more useful and readable.
2266
2267 * There is a new changes (or Changes) target for the PDL Makefile
2268 which is a convenience target that allows one to regenerate the
2269 Changes file from git.
2270
2271 v2.4.10 2012-02-03 18:44:47-05:00
2272
2273 General Notes:
2274
2275 New Stuff:
2276
2277 * PDL::Constants module provides E, PI, I (or J) and more.
2278
2279 * PDL::NiceSlice has a new engine based on Filter::Simple
2280 which is more selective about where the PDL::NiceSlice
2281 sourcefilter is applied.
2282
2283 * pdl() constructor now accepts a string argument which
2284 can include MATLAB-style [ ; ] syntax, bad values,
2285 inf values, and nan values. This makes it much easier
2286 to specify pdl values in programs and scripts.
2287
2288 * PDL now supports pthreads on all platforms as well
2289 as a new, auto-parallelization capability for PDL
2290 threadloops across multiple processors using the
2291 PDL::ParallelCPU module.
2292
2293 * Many(!) bug fixes.
2294
2295
2296 Incompatible Changes:
2297
2298 * List output from whichND is now deprecated.
2299
2300 * The default.perldlrc uses PDL::Constants to
2301 provide E and PI.
2302
2303 * perldl.conf has new fields so be sure to update
2304 any local versions you use with the new fields.
2305
2306 * rcols and wcols always use dim0 for the data
2307 dimension and dim1 for the column dimension.
2308 This only matters if you use the support for
2309 reading multiple columns into a 2D pdl.
2310
2311 * Makefile.PL now requires at least version 6.31
2312 of ExtUtils::MakeMaker to support the new standard
2313 INSTALL_BASE option matching Module::Build usage.
2314
2315 * Prerequisite Text::Balanced minimum version is
2316 now 1.89 although this is not expected to be an
2317 issue because it is provided in the perl core
2318 since 5.8.0.
2319
2320
2321 Highlights:
2322
2323 * General cleanup of code, including restructuring for clarity.
2324
2325 * List output from whichND() is now deprecated. whichND() now returns
2326 an ndarray of coordinates in all cases with a warning when a list
2327 context is detected. See the docs for work-arounds to your code.
2328
2329 * PDL::IO::Misc now has better support for handles that are not
2330 files (e.g., pipes or standard input) for rgrep(), rcols(),...
2331
2332 * Added bad value support to pctover() and oddpctover().
2333 This was sf.net feature #3328001.
2334
2335 * New whereND() routine provides the same functionality as where
2336 but with support for multi-dimensional masks and implicit
2337 threading over higher dimensions. This was sf.net feature
2338 request #3390043.
2339
2340 * Many bugs fixed.
2341
2342 3059083 Problems with FITS header handling
2343 3080505 PLplot segfaults on plshades call on OS X
2344 3285520 status message from gslmroot_fsolver
2345 3294808 sever on Empty ndarray causes segfault
2346 3295544 NiceSlice parsing bug
2347 3299611 FITS I/O obscure bug
2348 3300467 NiceSlice asterisk parsing issue
2349 3307121 wmpeg sometimes kills perldl if file already exists
2350 3307613 indexND of Empty pdls can segfault
2351 3368883 t/opengl.t fails if display type not available
2352 3375837 _read_flexhdr state machine fails
2353 3388862 tiny bug in PDL-2.4.3. May apply to 2.4.9
2354 3391645 bad printf formats in pdlapi.c and others
2355 3394327 PDL::IO::FITS::wfits corrupting FITS image
2356 3396738 PDL::Core::convert default return type
2357 3410905 t/pgplot.t hangs test harness for PDL
2358 3415115 whereND fails to handle all zero mask case
2359 3428356 PDL::Transform::map output FITS header is slightly wrong
2360 3434842 Error in definition of gsl_sf_laguerre_n function
2361
2362 * PDL::Constants now provides: E, PI, I and J and is loaded by the
2363 default.perldlrc. It is not yet part of 'use PDL' so you'll need
2364 to 'use PDL::Constants ...' by hand for now.
2365
2366 * default.perldlrc sets $PDL::IO::FlexRaw::writeflexhdr=1 by
2367 default so that writeflex() to a filename automatically writes
2368 the header file. This is different from the previous behavior
2369 but it seems to "do what you mean". Feedback welcome!
2370
2371 * PDL::NiceSlice now has a new engine based on Filter::Simple which
2372 is smarter about only applying the slicing source filter to syntax
2373 occurring outside of POD, comments, and quotelike strings. The
2374 new implementation is available for *files* by setting the
2375 PDL_NICESLICE_ENGINE environment variable to 'Filter::Simple'.
2376
2377 Work is underway to port the new niceslice filter implementation
2378 to perldl/pdl2. Once this task is completed, the new engine will
2379 become the default source filter and the PDL_NICESLICE_ENGINE
2380 environment variable will be removed.
2381
2382 * There is experimental support for PDL::NiceSlice syntax in the
2383 perl debugger (i.e., perl -d). Just set the PERL5DB environment
2384 variable to 'BEGIN { require "PDLdb.pl" }' to use niceslice
2385 from the debugger command line. If PERL5DB is already set,
2386 you'll need to adjust the above recipe accordingly.
2387
2388 * Better handling of build configuration options from perldl.conf
2389 as well as improvements in the detection of external dependencies.
2390
2391 * perldl.conf has some new fields added:
2392 - POSIX_THREADS_INC and POSIX_THREADS_LIBS to specify
2393 locations of your pthread header file and library
2394 - PDL_CONFIG_VERSION to track the perldl.conf VERSION
2395 - PDLDOC_IGNORE_AUTOLOADER to control pdldoc behavior
2396 - PDL_BUILD_DIR provides the build directory path
2397 - PDL_BUILD_VERSION provides the PDL build version
2398 (to help with ambiguity from multiple PDL installs)
2399
2400 NOTE: If you are using a private or customized perldl.conf
2401 file, please be sure to update with these additional fields
2402 as the perl Makefile.PL doesn't yet detect version skew
2403 automatically.
2404
2405 * PDL::IO::Browser now builds in many cases (but not all).
2406 If you try it, please let us know how it goes. Just edit
2407 the value of WITH_IO_BROWSER in your perldl.conf before
2408 configuring the build (i.e., perl Makefile.PL).
2409
2410 * PDL::PP has seen some significant improvements including
2411 code cleanup, improved documentation, and code refactoring
2412 for comprehension. There is a new PDL::PP::pp_line_numbers()
2413 routine which enables line # traceback for errors and warnings
2414 from PP code.
2415
2416 * Improved error output from the pdl2 shell via the new
2417 CleanErrors plugin which filters out the non-PDL part
2418 of the error output leading to *much* more concise and
2419 helpful reports.
2420
2421 * The pdl() constructor now accepts a string argument which
2422 allows for writing pdls using a matlab/octave style
2423 syntax as well as cutting and pasting from interactive
2424 session output to create pdls initializations for scripts
2425 and program files.
2426
2427 The new constructor also allows for inf, nan, and bad to
2428 generate the appropriate values (case insensitive), e.g.,
2429
2430 $bad = pdl q[1 2 3 bad 5 6]; # Set fourth element to the bad value
2431 $bad = pdl q[1 2 3 BAD 5 6]; # ditto
2432 $bad = pdl q[1 2 inf bad 5]; # now third element is IEEE infinite value
2433 $bad = pdl q[nan 2 inf -inf]; # first value is IEEE nan value
2434
2435 This is new functionality so feedback and problem reports
2436 are welcome.
2437
2438 * PDL::Image2D has new routines: pnpoly() to determine the points
2439 in a polygon from the sequence of vertex coordinates, and
2440 cc4compt() for 4-component labeling of a binary image.
2441
2442 * PDL now supports pdls larger than 2GiB. The element count
2443 is still an int type internally so the total number of elements
2444 per-ndarray must be less than 2**31.
2445
2446 * POSIX threads (pthreads) are supported for win32 and cygwin
2447 platforms. Pthreads are now available for all PDL platforms.
2448
2449 * New PDL::ParallelCPU module provides automatic distribution
2450 of implicit thread loops across a number of processors. Now
2451 you can watch your PDL computations maximize the load on
2452 *all* your processors. See the docs for how to configure this
2453 feature and how to adjust your calculations to best take
2454 advantage of this feature.
2455
2456 * PDL::Graphics::PLplot now works with the latest release of the
2457 PLplot library and has improved configuration and build
2458 handling. Feedback welcome.
2459
2460 * rcols() and wcols() now use the same convention for multi-column
2461 input and output: dim0 is *always* the data dimension and
2462 dim1 corresponds to the columns in the file. This adjustment
2463 makes them their inverse operations.
2464
2465 * The ADEV calculation in statsover has been corrected along
2466 with the documentation.
2467
2468 * PDL::Graphics::TriD changes:
2469 - PDL::Graphics::TriD now builds using the perl OpenGL
2470 module (POGL) when configured on cygwin with the
2471 interface=W32API option. By default, POGL used
2472 interface=GLX on cygwin which does software rendering
2473 via Mesa/X11 (slower!). If you reinstall POGL with
2474 the W32API setting, you will need to rebuild PDL and
2475 PDL::Graphics::TriD to pick up the new configuration.
2476 - A new 4-line graphics demo contributed by Mark Baker has
2477 been added to 'demo 3dgal'. Take a look.
2478
2479 * Various enhancements to FITS handling, including:
2480 - add map() fix for nonlinear FITS headers
2481 - Enable hdrpcy() in rfits() for Rice-compressed images
2482
2483 * Test suite improvements to provide better diagnostics from
2484 failures and to make tests more correct avoiding "false fails"
2485 in the test reports. Various tests have been migrated to use
2486 File::Temp::tempdir and File::Temp::tempfile to improve the
2487 robustness for temporary files and directories naming and
2488 creation during tests.
2489
2490 * Update ExtUtils::MakeMaker required version to 6.31 to support
2491 the new standard of INSTALL_BASE to configure for a local
2492 perl/PDL module installation.
2493
2494 * Update Text::Balanced required version to 1.89. This is the
2495 version present in perl 5.8.0 (the minimum required for PDL)
2496 so this change in requirement is not expected to affect any
2497 PDL users.
2498
2499 * pdldoc now searches your PDLLIB path for PDL::AutoLoader docs
2500 in addition to the pre-extracted documentation database. This
2501 makes pdldoc give the same output as the help command in the
2502 PDL shells.
2503
2504 * Many updates and additions to the PDL documentation.
2505
2506 * Devel::CheckLib is being used in more places during the
2507 PDL configuration stage. We plan to make this the standard
2508 baseline for dependency library detection going forwards.
2509 The included copy of Devel::CheckLib has been updated to 0.95.
2510
2511 * A new unified implementation of barf()/warn() for PDL removes
2512 code duplication. barf() is now defined in both PDL::Core and
2513 the PDL packages. PDL::cluck is added as an analog of Carp::cluck
2514 (as PDL::barf is an analog of Carp::confess). barf() now
2515 generates its stack trace by hooking into Carp::confess on
2516 both the Perl and C sides.
2517
2518 * Various fixes for PDL::Transform
2519 - fix inverse in perspective()
2520 - fix t_cubic() parameter parsing
2521 - fix handling of multiple PCi_j systems in the ndarray header
2522
2523 * Added SIGPIPE handlers to cases where PDL uses pipes to/from
2524 external processes (such as ffmpeg or some NetPBM image
2525 converter programs). This should make PDL "SIGPIPE safe" by not
2526 exiting when a PDL piped IO output process quits (e.g., as when
2527 called from within the perldl/pdl2 shell).
2528
2529
2530
2531 v2.4.9 2011-04-09 10:05:43-04:00
2532
2533 General Notes:
2534
2535 * Fixes a couple of surprise bugs that were discovered
2536 immediately with the PDL-2.4.8 release.
2537
2538 * See Also: the Release Notes for PDL-2.4.8 below
2539
2540
2541 Highlights:
2542
2543 * Fix sf.net bug #3267408 "t/slice.t crashes in tests 68-70 for BSD"
2544
2545 * Fix sf.net bug #3190227 "PDL build fails with parallel GNU make -j3 -j3"
2546
2547 * Fixed various tempfile name generation problems by switching
2548 to File::Temp instead of hand rolled solutions. This is the
2549 recommended approach going forward.
2550
2551 * Force Convert::UU usage for BSD to work around a t/dumper.t
2552 failure on MirBSD.
2553
2554
2555
2556 v2.4.8 2011-03-29 17:12:41-04:00
2557
2558 General Notes:
2559
2560 * The deprecated Karma imaging library support code
2561 has been removed from the PDL distribution.
2562
2563 * Perl OpenGL (POGL) is now the only build option for
2564 3-D graphics support in PDL. The POGL build has
2565 proven to be portable and reliable. This prepares
2566 TriD graphics development for the next stage of
2567 re-factoring for support and new features.
2568
2569 * Many improvements to the PDL configuration, build
2570 and test process make this the most robust PDL yet.
2571
2572 * PDL::IO::FlexRaw now supports automatic header file
2573 creation when writeflex() is given a filename argument
2574 for writing. readflex/writeflex/mapflex now support
2575 reading and writing ndarrays with bad values in them.
2576
2577 * New PDL::Constants module provides PI and E.
2578
2579 * PDL::Complex now supports in-place operations.
2580
2581 * Added $PDL::toolongtoprint to set the maximum ndarray
2582 size allowed to print as a string. This was added
2583 to the default.perldlrc to make it easier to discover
2584 by users.
2585
2586 * wmpeg() from PDL::IO::Pic uses the new ffmpeg back-end
2587 and can create many additional file formats beyond MPEG
2588 alone, including MP4 and animated GIF. See the
2589 documentation for details.
2590
2591 * Lots of improvements to the documentation, overall
2592 usability and many bugs fixed!
2593
2594 Highlights:
2595
2596 Build and Test Enhancements:
2597
2598 * Karma support code has been *removed* from the PDL
2599 distribution The last stable PDL distribution with
2600 Karma code was be PDL-2.4.7.
2601
2602 * You must use the Perl OpenGL module to build the
2603 PDL 3-D graphics module, PDL::Graphics::TriD.
2604 OPENGL_LIBS, OPENGL_INC and OPENGL_DEFINE are no
2605 longer used by perldl.conf for the configuration
2606 process.
2607
2608 * Added a check for mis-installed PROJ4 libraries. If
2609 the library does not initialize (even if present) then
2610 PDL will not build the PROJ4 modules. This is sf.net
2611 feature #3045456.
2612
2613 * GD, HDF, PROJ4, OpenGL, and GSL tests will not be run
2614 unless the corresponding module was configured to be
2615 built. This addresses the possibly mysterious test
2616 failures caused by previous PDL installations in the
2617 perl path at build time.
2618
2619 * Use of the Test::More TODO {} blocks allows tests for
2620 known bugs to be added to the test suite without
2621 causing the suite to fail. This replaces the previous
2622 SKIP_KNOWN_PROBLEMS option and should better enable
2623 test first development and debugging.
2624
2625 * utils/perldlpp.pl is a new script for off-line source
2626 filtering to pre-filter PDL source files with NiceSlice
2627 constructs. This allows PDL to use NiceSlice constructs
2628 in the core functionality while still allowing PDL to
2629 work in environments where source filters are not supported.
2630
2631 * The 'perl Makefile.PL' response to detecting another PDL
2632 in the build path has changed. If such a pre-existing PDL
2633 installation is detected, the user is warned *but*
2634 configuration and build will proceed nonetheless.
2635
2636 * Clean-up and fixes to demos and tests for reliability and
2637 portability.
2638
2639 Documentation:
2640
2641 * Added INTERNATIONALIZATION file with i18n notes. PDL
2642 does yet not have internationalization support beyond
2643 that provided by perl itself.
2644
2645 * Cleared up the documentation on when to use lu_decomp
2646 and versus lu_decomp2. Now that lu_decomp is threaded,
2647 it is the preferred implementation.
2648
2649 * wmpeg() with the ffmpeg converter supports generation of
2650 many different output video file formats including MPEG,
2651 MP4, and animated GIF. Documentation on these uses were
2652 added.
2653
2654 * New example code refresh.pdl in Example/PLplot to
2655 provide for PLplot, some of the same functionality
2656 as in PDL::Graphics::PGPLOT.
2657
2658 * Other documentation updates for clarity and correctness.
2659
2660 New Features or Functionality:
2661
2662 * New PDL::Constants module providing PI and E (so far)
2663
2664 * Inplace support added for PDL::Complex operations
2665
2666 * pdldoc and the pdl2/perldl help commands now print all
2667 matches by default when multiple matches are found.
2668
2669 * A do_print command was added to the pdl2 shell which
2670 toggles the input mode between printing and not
2671 printing the return value of each command.
2672
2673 * readflex/writeflex/mapflex now support reading and writing
2674 ndarrays with bad values in them. This was sf.net feature
2675 request #3028127, "add badvalue support to FlexRaw".
2676
2677 * writeflex now supports automatically calling the
2678 writeflexhdr() routine if you have set the variable
2679 $PDL::FlexRaw::writeflexhdr to a true value and are
2680 writing to a file given by filename as argument.
2681
2682 * Updated the error handling for GSL::INTERP to match other
2683 GSL module usages.
2684
2685 * Applied sf.net patch #3209075 IO::HDF square sds
2686
2687 * New binary blob support in PDL::IO::GD::OO
2688
2689 Bugs Fixed:
2690
2691 * Applied Christian Soeller's patch for FFTW on 64-bit
2692 systems. This resolves bug #3203480 "t/fftw.t fails
2693 on 64-bit systems".
2694
2695 * Fixed sf.net bug #3172882 re broken threading in inv().
2696 inv() and lu_backsub() now handle threading. Updated
2697 documentation for lu_decomp, lu_deomp2, and lu_backsub.
2698
2699 * Fixed sf.net bug #3171702 "missing podselect command
2700 breaks PDL build"
2701
2702 * Fixed sf.net bug #3185864 (bad adev in statsover)
2703
2704 * Fixed sf.net bug #3139697: fixed imag2d() to work better
2705 with Mac OS X GLUT and not just FreeGLUT.
2706
2707 * Fixed uniqind bug #3076570
2708
2709 * Fixed SF bug #3057542: wmpeg doesn't error on missing
2710 ffmpeg program. Now wmpeg returns 1 on success and
2711 undef on error. If ffmpeg is not in PATH, it just fails
2712 immediately....
2713
2714 * Fixed SF bug #3056142: pdl2 fallback to perldl broken
2715 on win32
2716
2717 * Fixed SF bug #3042201: t/dumper.t fails mysteriously
2718
2719 * Fixed SF bug #3031068: PDL::IO::FlexRaw mapflex memory
2720 mapping fails
2721
2722 * Fixed SF bug #3011879, "pdl() constructor crashes perl for
2723 mixed ref/ndarray args" and #3080505, and #3139088. This
2724 fix also includes a larger and more complete set of tests.
2725
2726 * Fixed segfault in plplot.t with a work-around.
2727
2728 * Fixed bug in readenvi.pdl header list value processing
2729 and added support for embedded file headers.
2730
2731 * Fixed bug in FlexRaw.pm support for headers with Type
2732 passed as string.
2733
2734 * Fixed imag2d() in PDL::Graphics2D. It no longer calls
2735 exit on ESC if run within the pdl2/perldl shell. Also
2736 did some clean up of key controls and module mechanics.
2737
2738 * Fixed upstream bug in Devel::REPL for MultiLine
2739 continuation. Now incomplete q[] and qq[] constructs
2740 continue reading until properly closed. See the
2741 Known_problems file for details.
2742
2743
2744
2745 v2.4.7 2010-08-18 20:55:52-04:00
2746
2747 General Notes:
2748
2749 * New requirements:
2750 - perl version 5.8.x and higher
2751 - Convert::UU
2752
2753 * PDL::Graphics::TriD now requires OpenGL-0.63
2754
2755 * New 2-D image display routine: imag2d()
2756
2757 * pdl() constructor, a.k.a. PDL->new(), now
2758 takes string arguments with either MATLAB type
2759 concatenation syntax or PDL print output (for
2760 easier cut-and-paste from PDL shell sessions).
2761
2762 * Improved text and comma separated value file
2763 input via rcols(): faster and more flexible.
2764
2765 * A new PDL shell based on Devel::REPL (i.e.,
2766 Moose technology). The new shell supports
2767 more perl syntax (lexical variables and
2768 packages), is more extensible (via a system
2769 of plugins), and supports many forms of file
2770 and variable completion.
2771
2772 Install Devel::REPL and give it a try!
2773 User feedback welcome.
2774
2775 * More portability (builds on more platforms
2776 with more features than ever).
2777
2778 * Many bugs fixed...
2779
2780
2781 Highlights:
2782
2783 * General
2784
2785 OpenGL-0.63 is required for PDL::Graphics::TriD.
2786
2787 Convert::UU is required for PDL.
2788
2789 Karma is DEPRECATED and NOT SUPPORTED. Set
2790 USE_KARMA=>1 in perldl.conf to force a build.
2791
2792
2793 * New 2D Image Display Feature: imag2d()
2794
2795 See PDL::Graphics2D for documentation.
2796
2797 Add image pixel value display on mouse
2798 click in imag2d window
2799
2800 Add keyboard command shortcuts for imag2d
2801 (with placeholders)
2802
2803 Fix a number of imag2d() usabiilty bugs
2804
2805
2806 * pdl() Constructor Can Take String Input
2807
2808 Allows use of MATLAB-style [ ; ] syntax
2809
2810 Allows cut-and-paste of printed pdl values
2811 as input args for pdl()
2812
2813
2814 * rcols/wcols Improvements
2815
2816 Much faster read times
2817
2818 Multiple columns can read into a single
2819 pdl varible
2820
2821 Symmetric handling of perl and pdl
2822 column data
2823
2824 Improved format support for CSV file input
2825
2826
2827 * Enhanced PDL Shell (Version 2)
2828
2829 Based on Devel::REPL which must be installed
2830 along with either Term::ReadLine::Perl or
2831 Term::ReadLine::Gnu to use the pdl2 features.
2832
2833 Supports Term::ReadLine::Perl and Term::ReadLine::Gnu.
2834
2835 Upward compatable with the original PDL shell, perldl.
2836
2837 Adds completion and command line editing support
2838 across all PDL platforms.
2839
2840 Adds support for current package and lexical variables.
2841
2842 Toggle default print output via the do_print attribute.
2843
2844 Default prompt for perldl and pdl2 is now 'pdl> '
2845
2846 help vars now shows results alphabetically
2847
2848 pdl2 now runs (falls back to) perldl if Devel::REPL
2849 is not installed or if Term::ReadLine::(Perl|Gnu) is
2850 not installed.
2851
2852
2853 * Other Features
2854
2855 Fix wmpeg() to use ffmpeg to generate the
2856 video (sf.net feature request #3010984).
2857
2858 Added tiled compressed image handling to rfits
2859
2860 Faster matrix multiply
2861
2862 Preliminary support for ENVI file format data
2863 in PDL/IO/ENVI/readenvi.pdl
2864
2865
2866 * Build Improvements:
2867
2868 PDL build process now detects multiple PDL installs
2869 and warns of possible conflicts.
2870
2871 'use PDL' now loads PDL::Config by default.
2872
2873 PDL "as built" configuration is now saved to %PDL::Config
2874
2875 Changes file is automatically updated each release
2876
2877 Add SKIP_KNOWN_PROBLEMS support for build
2878
2879 Add checks to prevent warnings from access to $HOME
2880 when it is not defined.
2881
2882
2883 * Portability Fixes
2884
2885 Multiple build improvements for debian platforms
2886
2887 Improved portability across perl and compiler versions
2888
2889 Reduced number of fortran dependencies
2890
2891 Improved support for win32 platforms
2892 - PDL::GIS::Proj builds for win32
2893 - PDL::Transform::Proj4 builds for win32
2894 - PDL::Graphics::PLplot builds for win32
2895 - PDL::IO::Dumper builds for win32
2896
2897
2898 * 3-D Graphics
2899
2900 Improved PDL::Graphics::TriD demos and examples
2901
2902 Fixed problems with VRML support for many platforms.
2903
2904 Better dependency searches for OpenGL during PDL build
2905
2906 Removed warnings "noise" when used with perl -w
2907
2908 New spheres3d routine added to PDL::Graphics::TriD
2909
2910
2911 * Bugs Fixed
2912
2913 Fix PDL::AutoLoader to handle win32 PDLLIB path
2914 syntax with ; as separator.
2915
2916 Fix PDL::Complex::string and sum and sumover
2917 (sf.net bug #1176614)
2918
2919 Fix PDL::Config does not match actual build
2920 configuration (sf.net bug #3030998).
2921
2922 Fix dimension numbering in PDL::Transform::t_fits
2923
2924 Fix jpegtopnm problem in proj_transform.t
2925
2926 Fix rt.cpan.org bug #53815 in IO/HDF/SD/SD.pd
2927
2928 Fix rt.cpan.org bug #59126 in isempty pod
2929
2930 Fix sf.net bug #2901170 re overly verbose warnings when
2931 running TriD with perl -w
2932
2933 Fix sf.net bug #3011143 re whitespace in perl path
2934
2935 Fix sf.net bug #3021578 re missing xtra dummy dims
2936
2937 Fix threading with lu_decomp and lu_backsub
2938 (sf.net bug #3021567)
2939
2940 Fix uniq and uniqind NaN and BAD value handling
2941 (sf.net bug #3011659)
2942
2943 Fix uniqvec bug where it did not return a 2-D result
2944 (sf.net bug #2978576)
2945
2946 Fix uuencode/uudecode detection logic in PDL::IO::Dumper
2947 to include Convert::UU check
2948
2949 Make PDL prompt/warn if space in build path
2950 (sf.net bug #2924854).
2951
2952 Fix up code to not crash on non-lazy linking systems.
2953
2954 Work arounds for perl-d lvalue temp bug introduced
2955 in recent perls.
2956
2957 t/lvalue.t is skipped if run under the debugger.
2958
2959 Fix format string attack errors in GSL, PGPLOT,
2960 and Transform.
2961
2962
2963 * Many Documentation Improvements
2964
2965 Completely reworked PDL web site
2966 - Clearer and more helpful to new PDL users.
2967 - See http://pdl.perl.org for the latest!
2968
2969 New documentation:
2970 - Migration guide for MATLAB users.
2971 - Migration guide for Scilab users.
2972 - Threading tutorial.
2973
2974 Major reorganization of documentation to better
2975 help new users
2976 - A guide to PDL's tutorial documentation.
2977 - A guide to PDL's module reference documentation.
2978 - A study course through all of PDL's documentation.
2979 - Removed PDL::Intro
2980
2981 POD cleanup across many PDL modules and functions.
2982
2983 Update to copyright statements throughout PDL
2984 to clarify licenses.
2985
2986 Improved on-line help and apropos features in
2987 the PDL shell
2988
2989 Updated FAQ
2990
2991 Improved POD to HTML translation
2992
2993 DEPENDENCIES for PDL updated and checked
2994 for applicability.
2995
2996 INSTALL guides improved in the distribution
2997 and on the web site.
2998
2999
3000
3001 v2.4.6 2009-12-31 23:06:11-05:00
3002
3003 General Notes:
3004
3005 * Mainly a bug fix and polishing release
3006
3007
3008 Highlights:
3009
3010 * Improved 3D graphics and OpenGL functionality
3011
3012 * imag2d() routine for multi-image (photo) display
3013
3014 * Many fixes for Debian package release
3015
3016 * Several little bugs fixed since PDL-2.4.5
3017
3018 * Fixed some issues with PDL convolution routines
3019
3020 * Improved documentation and release notes and files
3021
3022 * Padre and enhanced perldl shell integration begun
3023
3024
3025 Summary of Changes:
3026
3027 * Improved 3D graphics and OpenGL functionality
3028
3029 Perl OpenGL 0.62 is the minimum required version
3030 for PDL::Graphics::TriD to build.
3031
3032 TriD now builds correctly for Mac OS X systems
3033 without X11 installed.
3034
3035 Autoprobe for build of 3D graphics and the use
3036 of the Perl OpenGL library has been implemented.
3037 The default perldl.conf setting is to check.
3038
3039 Improved multi-window support for PDL::Graphics::TriD
3040 display windows: the GLUT window ID is now part of
3041 the default window title for convenience, and redraws
3042 with multiple open TriD windows are handled correctly.
3043
3044 * imag2d() routine for multi-image (photo) display
3045
3046 REQUIRES: The Perl OpenGL TriD interface and FreeGLUT.
3047
3048 IMPORTANT: Legacy X11 TriD is *not* supported!
3049
3050 It is implemented in the imag2d.pdl file for autoloading
3051 via PDL::AutoLoader. To use, copy the imag2d.pdl file
3052 to somewhere in your PDLLIB path or add the location to
3053 your PDLLIB environment variable.
3054
3055 It works with multiple, simultaneous, image windows
3056 and appears to work side-by-side with TriD graphics
3057 windows.
3058
3059 After you have imag2d.pdl in your @PDLLIB list,
3060 you can use 'help imag2d' to get usage instructions
3061 and documentation.
3062
3063 This implements the basic functionality planned regarding
3064 an improved imagrgb() routine.
3065
3066 * Many fixes for Debian package release
3067
3068 This should allow PDL-2.4.6 to be more readily released
3069 as a Debian packages. The general clean up involved
3070 improves PDL portability and robustness generally.
3071
3072 * Several little bugs fixed since PDL-2.4.5
3073
3074 The number of history lines when you use Term::ReadLine::Perl
3075 with perldl are now set correctly to $PERLDL::HISTFILESIZE.
3076 The default value is 500.
3077
3078 A number of minor internal fixes for portability and
3079 implementation improvements:
3080
3081 - Add comment re fix for defined(%hash) usage
3082 - Fix annoying PGPLOT::HANDLE warning message
3083 - Replace GIMME by GIMME_V in Core.xs
3084 - Update to v3.14 of ppport.h portability
3085
3086 Fixed MINUIT build problem where non-standard code was
3087 being generated which caused problems with rigorous compiler
3088 settings. This was SF bug #2524068.
3089
3090 * Fixed a number of issues with PDL convolution routines
3091
3092 conv1d() algorithm adjusted to match conv2D() and convolutionND().
3093 Documentation on the exact computation being performed in conv1d()
3094 was added.
3095
3096 Fixes bug #2630369 with fftconvolve(). It now gives the same results
3097 as conv1d(), conv2d(),.., except perhaps with respect to the boundary
3098 condition handling.
3099
3100 * Improved documentation and release notes and files
3101
3102 Updated PDL::FAQ.
3103
3104 Lots of little changes to bring documentation in line
3105 with current PDL functionality. Volunteer editors and
3106 contributors always welcome!
3107
3108 * Padre and enhanced perldl shell integration begun
3109
3110 There is a new PDL-2.4.6/Padre/ subdirectory in the PDL
3111 source tree which contains work towards Padre integration
3112 and a 2nd generation, enhanced perldl shell for PDL.
3113
3114 E.g. an *experimental* plug-in giving PDL::NiceSlice support
3115 to the Devel::REPL shell is included. See the Padre/README
3116 file for instructions to get you started.
3117
3118
3119
3120 v2.4.5 2009-10-24 11:56:23-04:00
3121
3122 Highlights:
3123
3124 * 3D graphics modules now run on win32 and Mac OS X
3125 systems without requiring X11 be installed. The
3126 only prerequisites are OpenGL and FreeGLUT/GLUT.
3127
3128 * Release documentation and FAQ have been updated
3129 to be more useful (and more accurate).
3130
3131 * PDL build, test, and run time diagnostic messages
3132 have been make clearer and more helpful.
3133
3134 * Many bugs have been fixed since PDL-2.4.4 so this
3135 is the most reliable PDL ever.
3136
3137 * PDL now requires perl 5.6.2 or greater and has
3138 updated DEPENDENCIES information and code. This
3139 should improve the buildability of PDL
3140
3141
3142 General Notes:
3143
3144 This is the first PDL release supporting the new build
3145 strategy for the PDL::Graphics::TriD modules. The result
3146 is it now builds on more platforms than ever. You'll
3147 need to install the OpenGL module and have FreeGLUT or
3148 GLUT (for Mac OS X) on your system.
3149
3150 If you have problems with the new TriD build (that you
3151 did not have before), edit perldl.conf and set USE_POGL
3152 to 0. That should enable you to build the legacy TriD
3153 code but you *will* want to submit a bug report, see the
3154 next point....
3155
3156 IMPORTANT: Given the increased portability and generality
3157 of the new TriD interface approach, it is expected that
3158 the legacy TriD build interface (based on X11) will be
3159 deprecated soon (almost immediately) and removed after that.
3160 (N.B. It has been effectively unsupported for some time)
3161
3162 If you are new to PDL, we recommend joining the perldl
3163 mailing list for discussion and questions. See
3164
3165 http://pdl.perl.org/?page=mailing-lists
3166
3167 for how to sign up and links and searches of the list
3168 archive discussions.
3169
3170
3171 Summary of Changes:
3172
3173 New perldl.conf configuration parameters controlling
3174 build of TriD with perl OpenGL (a.k.a. POGL) with the
3175 follow default values:
3176
3177 USE_POGL:
3178 1 -- build using POGL
3179 0 -- build using legacy build process
3180 undef -- build with POGL if possible
3181
3182 POGL_VERSION:
3183 0.60 -- minimum required version of OpenGL
3184
3185 POGL_WINDOW_TYPE:
3186 'glut' -- use a GLUT GUI for window creation
3187 'x11' -- use GLX and X11 for the GUI (this is a "compatibility
3188 mode" to support PDL::Graphics::TriD::Tk widgets)
3189
3190 NOTE: Set WITH_3D => 0 in perldl.conf to disable the
3191 TriD build completely. Just setting USE_POGL => 0 is
3192 not enough.
3193
3194 The OpenGL tests in t/opengl.t now respects the interactive
3195 setting from the PDL_INT environment variable.
3196
3197 Two TriD check programs, 3dtest.pl and line3d.pl, are added to the
3198 main PDL build directory. They can be run as quick checks of the
3199 new functionality and are short enough run under the perl debugger
3200 if needed. e.g.
3201
3202 perl -Mblib 3dtest.pl OR perl -Mblib line3d.pl
3203
3204
3205 OpenGL (a.k.a. GL) is the default TriD output device on all
3206 platforms. VRML does not work at the moment. GLpic is not
3207 tested but may work.
3208
3209 Closed SF bug #1476324 by adding FAQ entry on clean installs
3210
3211 Fix qsorti(null()) crash bug from SF bug #2110074. Make
3212 qsorti() return quietly when given a null() ndarray input
3213
3214 Fix broken PP typemap finding code, thanks to CS for the
3215 final code and many testers!
3216
3217 Fix t/autoload.t tilde expansion bugs and test failures.
3218 tilde expansion seems to work consistently with bash now
3219
3220 Partial fix implemented for PDL::IO::Browser. The code has
3221 only been tested with cygwin but it should work on systems
3222 with ncurses in the "right place". This is **not tested**
3223 but set WITH_IO_BROWSER => 1 if you wish to try.
3224
3225 If the perldl shell is unable to load PDL for some reason
3226 and defaults to basic perl support, the prompt now changes
3227 to perl> reflecting that fact.
3228
3229 readflex() now works with File::LinearRaid.
3230
3231 Many win32 fixes to tests and build process which make
3232 things work more smoothly on win32 platforms.
3233
3234 See the Changes file or run 'git log --stat' for the detailed
3235 list of changes.
3236
3237
3238
3239 v2.4.4 2008-11-12 19:16:53-10:00
3240
3241 General Notes:
3242
3243 - Bad value support is now enabled by default for
3244 PDL builds. This feature allows simpler handling
3245 of missing or invalid data during processing.
3246
3247 For example, missing pixels could be interpolated
3248 across. Calculations could be skipped for
3249 missing data points...
3250
3251 Edit the perldl.conf file to turn off bad value
3252 support before compiling if needed.
3253
3254 - This release includes significant improvments
3255 in portability, enhancements in functionality,
3256 and *many* bugs fixed.
3257
3258 - PDL::Graphics::TriD modules for 3-D and image
3259 visualization are being refactored for improved
3260 portability and performance. Preliminary hooks
3261 are in PDL-2.4.4 to support the new functionality.
3262
3263 Announcements to the perldl mailing list will be
3264 made when the PDL::Graphics::OpenGL::Perl and
3265 Term::ReadLine::FreeGLUT suport is on CPAN.
3266
3267 - Builds out-of-the-box on cygwin and win32
3268
3269 - perl 5.6.x is explicitly required to configure and
3270 will go away in future versions. 5.8.x and above
3271 are the recommended versions
3272
3273
3274 Summary of Changes:
3275
3276 - Improve uuencode support in Dumper for additional OSes
3277 such as *BSD varieties that may need additional options
3278 to prevent stripping of the leading slash in pathnames
3279 including: darwin, netbsd, openbsd, freebsd, and dragonfly.
3280
3281 - Updated more PDL tests to use the recommended Test::More
3282
3283 - Updated PDL::Graphics::PLplot build support for more 5.9.0
3284 specific features
3285
3286 - AutoLoader ~ expansion has been updated to conform more
3287 closely to the ~ expansion in the bash shell
3288
3289 - Better checks for a valid PROJ4 build environment are now
3290 performed before attempting to compile PDL modules using it
3291
3292 - PDL now builds and runs on perl-5.10.x
3293
3294 - The perldl shell has added support for using FreeGLUT for
3295 display in analogy with the existing Tk event loop support.
3296 This enables refactoring of the TriD modules to use the
3297 Perl OpenGL module (a.k.a. POGL) instead of the internal,
3298 and deprecated, PDL::Graphics::OpenGL et. al.
3299
3300 - The perldl acquire/filter/execute loop is now $_-safe by
3301 using $lines instead of $_ for all the central modifications.
3302 Avoids problems with some AUTOLOAD functions that leaked $_.
3303
3304 - Removed ExtUtils::F77 from the required prerequisites for
3305 PDL to improve the buildability on platforms without an
3306 available fortran compiler. If you have a fortran compiler
3307 and EU::F77 installed, PDL::Slatec will be built.
3308
3309 - zeros function added as an alias for the zeroes function
3310
3311 - Many warning messages that were not actually problems have
3312 been quieted, especially many pointer to int conversion messages
3313
3314 - Added $PERLDL::HISTFILESIZE to allow configuration of the number
3315 of lines of history to be saved by the interactive PDL shell.
3316
3317 - Fixed implementation of the pctover() function to address bug
3318 #2019651 on sf.net. Added explicit documentation in the code
3319 on the algorithm being used.
3320
3321 - Various updates to the PDL FAQ
3322
3323 - Implemented a PDL interface to the Minuit minimization library
3324 from CERN
3325
3326 - Removed circular dependency in PDL Makefile.PL Makefile generation
3327 process which caused builds with some versions of make to fail
3328
3329 - Multiple fixes to enhance configuration and build for win32
3330
3331 - Added basic table-inversion to t_lookup for PDL::Transform
3332
3333 - Fixed problem in uniqvec() where it failed to generate a correct
3334 result if all the input vectors were the same, fixed bug #1869760
3335
3336 - Add improved 16-bit image support for IO with rpic() and wpic()
3337 provided you have a recent version of the NetPBM library that
3338 supports 16-bit images
3339
3340 - Enabled building of GSL on Win32.
3341
3342
3343
3344 v2.4.3 2006-08-20 06:07:30-10:00
3345
3346 General Notes:
3347
3348 - again, mainly a bugfix and polishing release.
3349
3350 - builds out-of-the-box on cygwin and win32 build environment
3351 has been significantly improved
3352
3353 - perl 5.6.x is now deprecated; 5.8.x is recommended. Support
3354 for 5.6.x may go away in future versions.
3355
3356
3357 Summary of Changes:
3358
3359 - PDL now builds under cygwin on windows PC including
3360 TriD(OpenGL) 3D graphics and PGPLOT and PLplot 2D graphics
3361 support. See PDL/cygwin/ and files README and INSTALL for
3362 details and how to build/install external dependencies.
3363
3364 - The win32 build has been improved. See PDL/win32/INSTALL
3365 for details.
3366
3367 - Many fixes from the Debian build patches have been
3368 incorporated. See PDL/debian for specifics.
3369
3370 - 64bit platform build has been improved.
3371
3372 - New functionality, functions and modules:
3373
3374 * Bad value support has been extended to per-PDL bad
3375 values as an experimental feature. To use, configure
3376 WITH_BADVAL => 1 and BADVAL_PER_PDL => 1 in perldl.conf
3377 before building.
3378
3379 * PDL::GSL::INTEG now supports the calculation of
3380 nested integrals
3381
3382 * New function tcircle (threaded circle) added to
3383 PDL::Graphics::PGPLOT This draws multiple circles in
3384 one go (see also tpoints and tline)
3385
3386 * Added set operation routines for pdls treated as sets
3387 (help setops).
3388
3389 * PDL::IO::GD module interface to the GD runtime image
3390 libaray (http://www.boutell.com/gd/) has been integrated.
3391
3392 * The PDL::GIS::Proj and PDL::Transform::Proj4 modules
3393 to interface to the PROJ4 Cartographic Projections
3394 Library (http://proj.maptools.org/) have been added.
3395
3396 * PDL::IO::HDF provides an interface to the HDF4
3397 library (http://hdf.ncsa.uiuc.edu/).
3398
3399
3400 - The PDL test suite (i.e. tests in in PDL/t) has been
3401 enhanced. Coverage has improved and output diagnostic
3402 messages are more useful. Test::More is becoming the
3403 preferred test module. The vanilla Test and Test::Simple
3404 may be deprecated in the future.
3405
3406 - PDL core code has been fixed to address valgrind-detected
3407 errors and to enable better bad value support including the
3408 new experimental per-PDL bad values. These changes will
3409 require a re-build/install of any external modules using
3410 the C interface of PDL. See perldl.conf to configure the
3411 new bad value support.
3412
3413 - Several TriD graphics build problems have been resolved.
3414 The TriD rotation bug has been fixed.
3415
3416 - Many other bug fixes too numerous to mention. See the
3417 PDL/Changes file for details.
3418
3419 - Multiple fixes and additions to PDL documentation as well
3420 as the PDL::FAQ.
3421
3422
3423
3424 v2.4.2 2004-12-28 09:19:30-10:00
3425
3426 General Notes:
3427
3428 - again, mainly a bugfix and polishing release.
3429
3430 - perl 5.6.x is now deprecated; 5.8.x is recommended. Support
3431 for 5.6.x may go away in future versions.
3432
3433 - a little too late for Christmas; but happy new year 2005!
3434
3435
3436 Summary of Changes:
3437
3438 - Overhaul of FITS I/O. FITS binary tables are now supported,
3439 for both reading and writing.
3440
3441 - Many improvements to PLplot handling
3442
3443 - New Graphics::Limits package determines display range for multiple
3444 concurrent data sets
3445
3446 - Better PDL::reduce function
3447
3448 - Improvements to PDL::Transform
3449
3450 - pdl() constructor is more permissive -- you can feed it PDLs and
3451 it does the Right Thing most of the time.
3452
3453 - Cleaner handling of config files
3454
3455 - Improvements to multi-line parsing in the perldl shell
3456
3457 - New 'pdl' command-line entry to perldl shell allows #!-style
3458 scripting (so you can re-use your journal files verbatim)
3459
3460 - Several fixes for Microsoft Windows operation
3461
3462 - PDL::undefval works properly, also has warning tripwires
3463
3464 - statsover finally seems to produce meaningful, consistent RMS values
3465
3466 - Several 64-bit compatibility issues (this work is probably not yet
3467 complete).
3468
3469 - Many small bug-fixes too numerous to list (see the Changes file).
3470
3471
3472
3473
3474 v2.4.1 2004-01-05 12:27:18-10:00
3475
3476 General Notes:
3477
3478 - mainly a bugfix and polishing release
3479
3480
3481 Summary of Changes:
3482
3483 - Fixed warnings with perl 5.8.2
3484
3485 - Replace original m51.fits with freely distributable image
3486
3487 - Upgrade PLplot interface for plplot-5.2.1 and perl 5.8.2
3488
3489 - Improvement to documentation of autoloaded routines
3490
3491 - Added more universal `whatis' function to perldl
3492
3493 - Numerous small fixes/additions to docs/functions
3494
3495 - Improved handling of empty ndarrays
3496
3497 - Fixed most reported bugs
3498
3499
3500 v2.4.0 2003-05-22 12:09:26-10:00
3501
3502 General Notes:
3503
3504 - Perl 5.6.0 or later is now required, along with the modules
3505 Filter and Text::Balanced.
3506
3507 - After installing PDL 2.4.0 external PDL modules will need to re-built.
3508 (any such modules will refuse to load until they have been re-built)
3509
3510 - New demos of the PDL::Transform and PDL::Transform::Cartography
3511 modules have been added to perldl.
3512 Type 'demo transform' or 'demo cartography' in the perldl shell.
3513 ( Note that PGPLOT is required to run )
3514
3515 Summary of Changes:
3516
3517 - The NiceSlice syntax comes of age
3518 (Nice slicing has been around a while, but really needs to be
3519 acknowledged as the main way of slicing PDLs...)
3520
3521 - New GSL functionality: greatly improved access to the Gnu Scientific
3522 Library, including interpolation, finite-difference, random
3523 variable, and other routines.
3524
3525 - New, very powerful indexing and slicing operators allow boundary
3526 conditions (range, indexND)
3527
3528 - N-dimensional indexing (indexND) and selection (whichND) methods
3529
3530 - Powerful syntax for coordinate transformation and arbitrary image
3531 resampling and coordinate transformations -- including high powered
3532 spatially-variable filtering (PDL::Transform module)
3533
3534 - Support for major cartographic transformations
3535 (PDL::Transform::Cartography module)
3536
3537 - New PLPlot graphics interface ( cleaner and faster than PGPLOT )
3538
3539 - Many improvements to the PGPlot interface:
3540 * Strong FITS support (easy display of images, vectors, & contours in
3541 science coordinates)
3542 * Better vector graphic support [including improvements to line() and
3543 a new routine, lines()]
3544 * Much cleanup of errors and bugs
3545 * Spinlocks prevent interrupt-related PGPLOT crashes (requires Perl 5.8)
3546 * RGB output to truecolor devices (requires PGPLOT-5.3devel)
3547
3548 - Improvements to the perldl shell:
3549 * Many bug fixes
3550 * Multi-line inputs to the perldl shell for easier cut-n-paste
3551 * ^D blocking on demand (controlled by perl variable or command-line
3552 switch)
3553 * Autoloading detects error conditions on compile
3554 * New demos
3555
3556 - Header copying is now explicit rather than by reference -- so that,
3557 e.g., FITS file manipulation is more intuitive and natural.
3558
3559 - Improved support for Astro::FITS::Header
3560
3561 - Bad value support is improved
3562
3563 - Several new utility routines, including glue(), zcheck(), and ndcoords().
3564
3565 - Better matrix operation support: matrix operations are now in
3566 PDL::MatrixOps, and are all threadable. Singular value decomposition,
3567 determinant, linear equation solving, matrix inversion,
3568 eigenvalue decomposition, and LU-decomposition.
3569
3570 v2.3.4 2002-09-23 15:50:06-10:00
3571
3572 - Now should compile using perl 5.8.0
3573 - Improved speed for generating PDL's from a perl array ref
3574 - Added PDL::IO::Storable, which enables PDL storage/retrieval
3575 using the Storable package.
3576 - Added PDL::GSL::SF (Gnu Scientific Library, Special Functions) hierarchy
3577 - New % operator follows (mathematically correct) perl % operator behavior
3578 - Numerous Bug Fixes
3579
3580 See the Changes file for a detailed list of changes.
3581
3582 v2.3.3 2002-05-22 03:16:29-10:00
3583
3584 Mainly a bugfix release with some nice little additions:
3585 - PDL::IO::Dumper: Cleanly save and restore complex
3586 data structures including PDLs.
3587 - Support for the new Astro::FITS::Header module
3588 (availiable on CPAN).
3589
3590 See the Changes file for a detailed list of changes.
3591
3592 v2.3.2 2001-12-18 22:20:31-10:00
3593
3594 - A pure bugfix release to fix compilation problems with gimp-perl
3595 (part of the gimp distribution). The following notes from
3596 2.3 and 2.3.1 still apply:
3597
3598 v2.3.1 2001-11-21 14:38:32-10:00
3599
3600 - A bugfix release to fix some compilation problems seen with
3601 2.3. The following notes from 2.3 still apply:
3602
3603 v2.3 2001-11-16 05:12:41-10:00
3604
3605 Summary of Changes
3606 - A nicer slicing syntax for PDL added via the new
3607 PDL::NiceSlice module.
3608 - Inline::Pdlpp module added, which enables in-line
3609 PDL::PP definitions. (i.e. no Makefiles, building
3610 hassles for creating PP code)
3611 - A Multitude of bug fixes, doc updates, and other
3612 changes.
3613
3614 Note:Support for perl version 5.005 and previous is
3615 limited in this release. Perl 5.6.0 or greater is
3616 recommended for full PDL functionality.
3617
3618 See the Changes file for a detailed list of changes.
3619
3620 v2.2.1 2001-04-25 03:05:46-10:00
3621
3622 Summary of Changes
3623 Bugs Fixed:
3624 - 'pow' function fixed in math.pd
3625 - Misc memory leaks fixed.
3626 - PGPLOT 'undefined window size'
3627 bug fixed.
3628 - Test failures with opengl.t fixed.
3629 - Error in output of 'minimum_n_ind' function
3630 fixed.
3631
3632 Misc Changes:
3633 - Documentation updates.
3634 - Updates to work with perl5.6.1
3635
3636 See the Changes file for a detailed list of changes.
3637
3638 v2.2 2000-12-21 03:25:36-10:00
3639
3640 Major Changes:
3641
3642 - 'Bad' Value Support added. With this option compiled-in, certain
3643 values in a PDL can be designated as 'Bad' (i.e. missing, empty,
3644 etc). With this designation, most PDL functions will properly
3645 ignore the 'Bad' values. See PDL::BadValues for details.
3646
3647 - PGPLOT interface rewritten. New Features:
3648 - Interactive cursors (cursor)
3649 - Text on plots (text)
3650 - Legends (legend)
3651 - Circles, Rectangles, Ellipses
3652 - Multiple plot windows, one can jump from panel to panel when
3653 the window is divided in several.
3654 - More control over options - see PDL::Graphics::PGPLOTOptions for
3655 details.
3656 - New Examples in Example/PGPLOT.
3657
3658 - Major updates to the Tri-D Code. Now requires perl 5.6 for TriD.
3659
3660 - 'Reduce' function added. This provides a consistent interface to the
3661 projection routines (sumover, average, etc). See PDL::Reduce.
3662
3663 - Improved OpenGL detection during 'perl Makefile.PL
3664
3665 - pdldoc command added. This allows you to look up PDL
3666 documentation similar to the perldoc command.
3667
3668 - Perl 5.6 is now recommended for PDL 2.2. It will still work
3669 with perl 5.005, but some of the extra libs won't be compiled
3670 ( like Graphics/TriD).
3671
3672 Many other changes. See the Changes file for a detailed list of changes.
3673
3674 v2.1 2000-06-07 22:23:47+00:00
3675
3676 Major Changes:
3677 - Speed Increase. Most PDL functions are now done totally
3678 in C-code, without any perl wrapper functions as was done
3679 with previous versions. The speedup will be most noticeable
3680 for operations on many small PDL arrays.
3681 - Mem Leaks Fixed.
3682 - Added a consistent, Object-Oriented interface to the
3683 various interpolate functions in PDL. (PDL::Func,
3684 See Lib/Func.pm).
3685
3686 See the Changes file for a detailed list of changes.
3687
3688
3689
3690 v2.005 2000-04-05 22:30:35+00:00
3691
3692 Major Changes:
3693 - A bugfix release to fix 2.004 problems with PGPLOT changes
3694 and perl 5.6.0.
3695 - The following notes from 2.004 still apply:
3696 - *IMPORTANT NOTE*: Due to changes to the PGPLOT module, 'use
3697 PDL::Graphics::PGPLOT' has been removed from PDL.pm (i.e. in scripts
3698 and within perldl you now need to explicitly say 'use
3699 PDL::Graphics::PGPLOT'). Additionally, it needs Karl's new 2.16
3700 release of the PGPLOT module (available from CPAN).
3701 - Notable additions are a module for operations on complex ndarrays
3702 (PDL::Complex), a subtype of PDL which allows manipulation of byte
3703 type PDLs as N dimensional arrays of fixed length strings (PDL::Char)
3704 and a Levenberg-Marquardt fitting module (PDL::Fit::LM).
3705 - Bug reports and patches to the relevant places on sourceforge, please.
3706