Revision history for Perl extension EyeDrops 0.01 Sun Sep 23 11:35:12 2001 - original version 0.02 Tue Sep 25 18:05:02 2001 - updated version number :-) - improved documentation - new functions: get_builtin_shapes, get_eye_shapes - extra tests added 0.03 Sun Sep 30 14:07:03 2001 - fixed die within eval with new TrapEvalDie attribute - new test t/nasty.t added to test TrapEvalDie - fixed SIG warnings with new TrapWarn attribute - improved filler: added $_ to $: - changed encoding from octal (%o) to hex (%x) for chars in range 128..255; this reduces binary encoding size - minor performance improvements - minor shape improvements 0.04 Sun Oct 7 11:31:42 2001 - minor improvements to documentation - new tests t/recur.t and t/limit.t - crude test for END block added 0.05 Sun Oct 14 17:19:42 2001 - minor fixes to demo/sightly.pl - new shape: spoon - minor improvements to documentation 1.00 Sat Nov 10 15:12:11 2001 - new shapes: larry, damian, cricket, mongers - new functions: border_shape, invert_shape, rotate_shape - new attributes: Rotate, Invert, BorderGap, BorderWidth - documentation improvements 1.01 Sun Nov 11 11:10:09 2001 - new shape from Ryan King: larry2 - minor improvements to documentation 1.02 Sun Dec 9 17:11:42 2001 - minor improvements to documentation - minor enhancements to demo/sightly.pl - left-justified spoon.eye - changed parameters to border_shape function - new attributes: BorderGapLeft, BorderGapRight etc. - BorderWidthLeft, BorderWidthRight etc. - new attribute: Indent - new attribute: Reflect - new attribute: FillerVar - new shape: merlyn - fixed module bug raised by Mark Puttnam - added new test program module.t to test Mark's bug 1.03 Sat Dec 15 18:42:09 2001 - minor improvements to documentation - new shapes: golfer, santa and buffy2 1.04 Sat Jan 5 14:15:15 2002 - minor improvements to documentation - minor fixes to shape: buffy2 - new shape: camel2 (use.perl.org camel) - new shape: camel3 (London.pm bactrian camel at London zoo) - new shape: dipsy (London.pm infobot is called dipsy) - new shape: buffy3 (buffy riding a pony) 1.05 Sun Jan 6 17:09:35 2002 - minor improvements to documentation - minor fixes to shape: buffy3 - new shape: buffy4 (horizontal banner of "Buffy") - new shape: riding (banner of "riding") - new shape: a (banner of "a") - new shape: pony (banner of "Pony") 1.06 Sun Feb 24 23:09:35 2002 - minor improvements to documentation - minor code improvements - minor fixes to shape: pony, buffy2 - new shape: london - new shape: pony2 - new shape: eugene - new shape: tpr 1.07 Sun Mar 31 15:12:17 2002 - improved documentation, added Buffy looking in the mirror - fixed EyeDrops.pm to work with Perl 5.7.3 only needed to change: $src =~ tr#\\[]{}<>^_|~'`#/()()()H-!T""#; to: $src =~ tr#_\\[]{}<>^|~'`#-/()()()H!T""#; due to 'invalid range' H-! error - minor change to shapes: damian, camel - new shape: kermit (thanks Jason) - new shape: pgolf (thanks `/anick) - fixed bug where EyeDrops sometimes generated an invalid program or more shapes than it needed to - new test: limit2.t to verify above bug fixed - new test: sightly2.t - made sure test programs clean up all .tmp files - added -Mstrict to all test programs to ensure they work with -w and 'use strict' too - localised file globals appropriately in all test programs - tested under Win98 and adjusted nasty.t accordingly 1.08 Sun Apr 21 16:13:18 2002 - documentation: added sub-sections to Examples section - documentation: added 'Dueling Dingos' sub-section - minor change to shape: pgolf - new shape: eye - new shape: mosquito - new shape: coffee - new shape: yanick - new shape: yanick2 - new shape: yanick3 1.09 Sun May 19 17:09:12 2002 - new attributes: Reduce and Expand - new attributes: RotateType and RotateFlip - new functions: reduce_shape and expand_shape - new rtype/flip parameters added to rotate_shape function - rotate 90 and 270 now work, no longer squashed - added support for new attributes to demo/sightly.pl - new test: reshape.t (tests Reduce, Expand, Rotate) - new test: camel.t - documentation: added 'Thirty Two Camels' sub-section - minor change to shape yanick (identical dimensions to camel now) 1.10 Wed May 29 19:08:11 2002 - new attribute: Compact - function pour_sightly: added new compact parameter - added support for Compact attribute to demo/sightly.pl - test camel.t: enhanced with Compact tests - documentation: increased from 'Thirty Two Camels' to 'Twelve Thousand and Thirty Two Camels' - documentation: improved 'Buffy Looking in the Mirror' 1.11 Sun Jun 30 11:02:09 2002 - new shape: alien - documentation: minor improvements - documentation: added 'Somersaulting Camels' section 1.12 Sun Aug 4 14:17:01 2002 - new shape: llama - new shape: parrot - new shape: simon - new shape: jon - new shape: yanick4 - new shape: tonick - documentation: minor changes - documentation: added 'Abbreviated History of Perl 6' section 1.13 Sun Sep 15 17:05:09 2002 - new shape: siertri - new shape: undies - minor change to shape: simon - documentation: minor changes - documentation: added 'Sierpinski Triangles' section 1.14 Sun Sep 22 18:42:14 2002 - converted siertri shape to a built-in (removed siertri.eye) - documentation: retracted claim that Mtv's Sierpinski program is the shortest (thankyou Adam and Eugene) - documentation: minor changes 1.15 Sun Oct 6 19:31:14 2002 - new shape: acme - code: minor changes - documentation: minor changes 1.16 Sun Nov 3 19:31:14 2002 - new shape: schwern - new shape: naw - new shape: gelly - minor change to shape: acme - documentation: minor changes - documentation: added 'Naked Arm Wrestling' section 1.17 Sun Dec 8 12:21:04 2002 - new shape from cam.pm: snow - new program to generate table: demo/gentable.pl - fixed bug where EyeDrops sometimes generated an invalid program - extended limit2.t (test 9) to verify above bug fixed - minor code improvements 1.18 Sun Dec 22 13:25:12 2002 - new shape from Takanori KAWAI: kansai_pm - new shape from Takanori KAWAI: writing_perl - new shape derived from Yanni's Ascii Art collection: candle - new shape derived from Yanni's Ascii Art collection: china1 - new shape derived from Yanni's Ascii Art collection: panda - new shape derived from Yanni's Ascii Art collection: santa2 - minor code improvements 1.19 Sun Jan 5 15:09:04 2003 - new shape from cam.pm: beer - new shape: campm - minor change to shape: candle - minor change to shape: china1 - documentation: minor changes - minor code improvements 1.20 Sun Jan 12 12:21:55 2003 - documentation: added 'EyeDropping EyeDrops.pm' section - minor code improvements 1.21 Sun Jan 19 14:01:12 2003 - documentation: minor changes - minor code improvements 1.30 Sun Feb 23 17:19:04 2003 - new function: pour_text - new attributes: Text, TextFiller - added support for new attributes to demo/sightly.pl - new test: text.t - documentation: added 'Snowflakes' section - minor code improvements 1.31 Sun Mar 30 18:16:14 2003 - FillerVar attribute: allow a simple string as an alternative to a reference to filler variables - limit.t, sightly.t: new test cases added - added file: demo/hellotest.pl - minor code improvements 1.32 Sun Apr 13 15:09:17 2003 - added Build.PL and adjusted Makefile.PL (thanks Ken) - added META.yml - new function: get_eye_string - documentation: make_triangle, make_siertri, make_banner - convert.t, sightly.t: new test cases added 1.33 Sat May 3 11:19:27 2003 - new shape: baghdad - documentation: added 'Baghdad Bob' section 1.34 Sun June 8 23:42:05 2003 - documentation: added '99 Bottles of Beer' section - new shapes: bottle, bottle2 - new function: hjoin_shapes - new attributes: TrailingSpaces, RemoveNewlines - added support for new attributes to demo/sightly.pl - function make_banner: strip leading spaces if any - new test: vshape.t - reshape.t, sightly2.t: new test cases added 1.35 Sun June 15 09:09:59 2003 - new shape: heart (thanks `/anick) - new shape: rose - test vshape.t: fixed Linux-only banner test - Build.PL: fixed for Module::Build v0.19 1.40 Sun June 29 11:19:33 2003 - There were getting to be too many .eye files cluttering the vitally important Acme root directory, so I moved them from Acme directory to Acme/EyeDrops directory (if you have installed a previous version of Acme::EyeDrops, suggest you delete old .eye files in the Acme root directory) - new shape: flag_canada (to mark Canada day, thanks `/anick) - new shape: map_australia - new shape: hipowls - new built-in shape: all - minor change to shape: rose - removed demo/helloworld.pl from distribution - removed demo/hellotest.pl from distribution - removed demo/examples.pl from distribution - updated test programs to not rely on demo directory 1.41 Sun July 27 18:22:04 2003 - new shapes: smiley, smiley2, smiley3 - built-in shape 'all': now supports Width parameter - documentation: shortened some examples - new functions: get_eye_dir, set_eye_dir - new functions: add_builtin_shape, del_builtin_shape - new attribute: InformHandler - function pour_sightly: added new inform_handler parameter - new tests: border.t, gen.t, yharn.t, zgen.t (generated) - sightly2.t removed (put into sightly.t) - test vshape.t: added tests for new functions - tests: now skipped correctly - tests: text.t now run in taint mode (-Tw) - Fixed some minor border-related bugs exposed by border.t - added camel shape to Makefile.PL/Build.PL - Support PERL_SMOKE environment variable for long-running tests (see http://archive.develooper.com/perl-qa@perl.org/msg01927.html, thanks merlyn) 1.42 Sun Aug 3 12:02:08 2003 - Bug fix release for Perl 5.8.1 (see Perl bug #23143). - For the first time, the EyeDrops test suite uncovered a Perl bug (dance a little jig): recur.t, test 4 failed on Perl 5.8.1-RC2 with the error: panic: pad_free curpad. Thanks merlyn for reporting. Since this bug won't be fixed for 5.8.1, we workaround it by never using $_ as a filler variable - sightly.t: run generated test programs in taint mode - tests: renamed to more appropriate names - tests: new long running test 13_to.t - documentation: added "Getting Started" section - documentation: fixed program in "Naked Arm Wrestling" section - documentation: updated 'Abbreviated History of Perl 6' section 1.43 Sun Aug 31 17:12:55 2003 - new shapes: alpaca, bighorn, map_italy - removed functions set_eye_dir, add_builtin_shape, del_builtin_shape which were mistakenly added to version 1.41 (these are not really necessary and change module state, which is a Bad Thing) - documentation: added 'twang bra-strap' to acme shape description - tests: merged old 13_to.t, old 12_Beer.t to new 19_surrounds.t new Test::Pod test, 18_sky.t 11_bold.t now tested in taint mode (no banner test) 12_Beer.t now banner test only (not taint safe) 1.44 Sun Apr 25 19:07:41 2004 - Bug fix release for Perl 5.8.4: some of the tests broke because they were naughtily exploiting a Perl bug re use strict inside (?{...}) constructions in regexps (see 01_mug.t/05_Parrot.t) - new shapes: map_world1, map_world2, map_world3, map_japan, map_uk - new shapes: music, dan, bottle3 - Build.PL: fixed for Module::Build v0.24 (_find_file_by_type changed) - new attribute: SourceHandle - new test: 14_gulp.t tests SourceHandle (and other invalid attributes) - minor code improvements (removed $this_dir, check for invalid attrs in sightly(), allow SourceFile/SourceString of '0') - documentation: updated stale URL links 1.45 Mon Dec 27 17:15:04 2004 - new shape: halloween (thanks TheEnigma) - new shape: koaladile (thanks Schwern) - new shape: saturn - renamed function slurp_tfile() to _slurp_tfile() - regenerated zgen.t (gen.t changed due to slurp_tfile() change) (regenerated it with: perl -w -I lib t/gen.t generate) - pod coverage: documented slurp_yerself() - tests: improved the ugly test suite a little new test: 16_astride.t simple threads test new test: 17_Orange.t tests pod coverage split 00_Coffee.t into two (last bit is now 15_Buffy.t) added slurp_yerself() tests to 13_to.t added Regex => 0 tests to 05_Parrot.t exercise regex_binmode_print_sightly() in 05_Parrot.t new tests added to 05_Parrot.t/06_not.t/10_Ponie.t et al in response to gaping holes detected by Devel::Cover removed exit 0 from end of tests - documentation: added new Error Handling section - Devel::Cover results: stmt branch cond sub pod total 95.2 91.3 90.8 100.0 100.0 93.5 1.46 Sat May 14 23:21:04 2005 - new shape: pugs - new shape: pugs2 - minor code improvements (limited scope of %builtin_shapes) - tests: fixed Test::More dependency in 17_Orange.t simplified 18_sky.t (Test::Pod) added invalid shape test to 14_gulp.t 1.47 Sat May 21 19:15:33 2005 - new shape: autrijus - documentation: updated 'Abbreviated History of Perl 6' section - tests: added new test to 05_Parrot.t - Build.PL: simplified for Module::Build 0.26 and above - Temporarily renamed Build.PL to xBuild.PL to stop CPAN tester robots from using Build.PL (got a lot of unexplained failures with v1.46, yet they worked fine when installed manually) 1.50 Sat August 6 23:08:42 2005 - First attempt at "shape properties" -- note that these are experimental and subject to change in future releases - Added new .eyp (properties) files for all .eye shapes - new functions: get_eye_properties find_eye_shapes get_eye_keywords - new internal functions: _get_properties _get_eye_shapes _get_eye_string _get_eye_properties _find_eye_shapes _get_eye_keywords - new attribute: EyeDir - documentation: added 'Shape Properties' section - new program: demo/findshapes.pl - tests: added property tests to 13_to.t - tests: adjusted 19_surrounds.t for .eyp files - new shape: schwern2 (shape schwern without the banner) 1.51 Sun September 11 23:17:33 2005 - new shape: adrianh - minor enhancements to demo/findshapes.pl - tests: improved property tests in 13_to.t - tests: added InformHandler throw test to 07_a.t - minor code improvements