pfenwick / autodie

Make functions succeed or die in Perl, with lexical scope.

This URL has Read+Write access

autodie / Changes
8822d277 » pfenwick 2008-09-06 1.992 released 1 Revision history for autodie
2
8b12854d » pfenwick 2009-07-02 RT #47520 - No double file/... 3 * BUGFIX: format_default() in autodie::exception no longer
4 returns a string with file and line attached. This would
5 cause the file and line information to appear twice when
6 format handlers would choose to fall back to the defaults.
7 The file and line information is now always added by
8 stringify(). (RT #47520, thanks to Michael Schwern)
9
10 * BUGFIX: Exceptions thrown by 2-argument open() are more likely
11 to specify the mode as 'for reading' when no explicit
12 mode was given. (RT #47520, thanks to Michael Schwern)
13
79a10c3a » pfenwick 2009-07-02 Bump to version 2.04. Tag ... 14 2.04 Thu Jul 2 18:56:57 AUSEST 2009
15
12c7902e » pfenwick 2009-07-01 Removed oops where a debugg... 16 * TEST: Removed spurious warning about insufficient credit.
17
a72aad70 » Jerry D. Hedden 2009-07-01 Reduce debug output from hi... 18 * TEST: hints.t produces less debugging output when testing
19 the Perl core. (Thanks to Jerry D. Hedden)
20
fe193f2a » pfenwick 2009-07-01 Remove spurious failures fr... 21 * TEST: hints.t no longer spuriously fails when checking
22 the return values from File::Copy under Windows before
23 Perl 5.10.1. (Thanks to Curtis Jewell)
24
45270eb4 » pfenwick 2009-06-30 Bump to 2.03 and release 25 2.03 Wed Jul 1 15:39:16 AUSEST 2009
ab614fe5 » pfenwick 2009-06-30 Fix booching test on 5.8.x ... 26
27 * BUGFIX: Stopped blog_hints.t from booching under Perl
28 5.8.x. because parent.pm is not installed.
29
5dc61d7c » pfenwick 2009-06-30 Push to 2.02 and release 30 2.02 Wed Jul 1 15:06:21 AUSEST 2009
31
c55a7a70 » pfenwick 2009-06-30 Add context()/return() to a... 32 * FEATURE: autodie::exception now supports ->context() to
33 discover the context of the failing subroutine, and
34 ->return() to get a list of what it returned.
35
36 * BUGFIX: ->function from autodie::exception now returns
37 the original name of the dying sub, rather than its imported
38 name. For example, 'File::Copy::copy' rather than 'main::copy'.
39 Core functions continue to always return 'CORE::whatever'.
40
1a5f9cf2 » pfenwick 2009-06-30 Add extra tests based upon ... 41 * TEST: blog_hints.t tests new hinting features against
42 examples in my blog at http://pjf.id.au/blog/
43
2fe96c50 » pfenwick 2009-06-30 Bump to 2.01 and release. 44 2.01 Wed Jul 1 01:31:24 AUSEST 2009
45
8c414faa » pfenwick 2009-06-28 Thank-you, Toby, for docufi... 46 * DOCUMENTATION: General copyediting and tidy-up
47 (Thanks to Toby Corkindale)
48
1fb3bbd8 » pfenwick 2009-06-29 Perl 5.10.1 fixes 49 * BUGFIX: Warnings are no longer emitted when undefined values
50 are compared by hinting routines.
51
52 * BUGFIX: Hints for File::Copy now operate correctly under
53 Perl 5.10.1.
54
36240690 » pfenwick 2009-06-30 5.8.x : inheritance is suff... 55 * BUGFIX: Inheritance is now considered sufficient to declare
56 allegiance to the hints provider role under Perl 5.8.x.
57 (Thanks to Glenn Fowler)
58
1fb3bbd8 » pfenwick 2009-06-29 Perl 5.10.1 fixes 59 * TEST: hints.t no longer throws failures under Perl 5.10.1.
60
21a03deb » jawnsy 2009-06-29 pod-coverage.t no longer fa... 61 * TEST: pod-coverage.t (author test) no longer fails if
2fe96c50 » pfenwick 2009-06-30 Bump to 2.01 and release. 62 Sub::Identify is not installed.
63 (Thanks to Jonathan Yu. RT #47437)
21a03deb » jawnsy 2009-06-29 pod-coverage.t no longer fa... 64
aa3813d6 » pfenwick 2009-06-28 Release 2.0 65 2.00 Mon Jun 29 01:24:49 AUSEST 2009
8da7e15d » pfenwick 2009-05-21 Bump to 1.999_01 for release. 66
30adf70c » pfenwick 2009-02-22 Hinting support working! H... 67 * FEATURE: autodie can now accept hints regarding how
68 user and module subroutines should be handled. See
69 autodie::hints for more information.
70
71 * INTERFACE: The calls to the internal subroutines
72 one_invocation() and write_invocation() have changed.
73 An additional argument (the user subroutine reference) is
74 passed as the second-last argument. This may break code
75 that previously tried to call these subroutines directly.
76
77 * BUGFIX: Calls to subroutines to File::Copy should now
78 correctly throw exceptions when called in a list context.
79
b762a06c » pfenwick 2009-03-03 Fixed iternal error in writ... 80 * BUGFIX: An internal error where autodie could potentially
81 fail to correctly report a dying function's name has been
82 fixed.
4ee38780 » pfenwick 2009-02-14 Added (failing) tests for a... 83
4d8aba2f » pfenwick 2009-06-28 Fixed bug where package sca... 84 * BUGFIX: autodie will no longer clobber package scalars when
85 a format has the same name as an autodying function.
86 (Thanks to Ben Morrow)
87
5ee5bf9c » pfenwick 2009-03-03 Changes: Documented backcom... 88 * INTERFACE: The internal interfaces for fill_protos(),
d141c872 » pfenwick 2009-03-03 _make_fatal isn't backwards... 89 one_invocation(), write_invocation() are now once again
90 backward compatible with legacy versions of Fatal. It is
91 still strongly recommended these interfaces are NOT called
92 directly. The _make_fatal() subroutine is not backwards
93 compatible.
7a9c89b6 » pfenwick 2009-02-17 Documented tests. Expanded ... 94
a1c5c734 » pfenwick 2009-03-01 Merge branch 'master' into ... 95 * TEST: Added internal-backcompat.t to test backwards
96 compatibility of internal interfaces.
4ee38780 » pfenwick 2009-02-14 Added (failing) tests for a... 97
6eed7e98 » pfenwick 2009-03-05 Documentation changes with ... 98 * DOCUMENTATION: Expanded documentation regarding how
99 autodie changes calls to system(), and how this must be
100 explicitly enabled.
101
d7300942 » pfenwick 2009-06-28 Upgraded Module::Install to... 102 * BUILD: Upgraded to Module::Install 0.91
fb7ce815 » pfenwick 2009-05-08 Upgrade Module::Install to ... 103
b594b92c » pfenwick 2009-05-10 Insisting on hints now work... 104 * BUGFIX: A situation where certain compile-time diagnostics
105 and errors from autodie would not be displayed has been
106 fixed.
107
a395fbfe » pfenwick 2009-03-01 Added missing timestamp on ... 108 1.999 Sat Feb 28 18:36:55 AUSEDT 2009
b4ad38d5 » pfenwick 2009-02-22 Autodie treats system() as ... 109
963feac9 » pfenwick 2009-02-24 Documented: String eval + 5... 110 * BUGFIX: Autodie now correctly propagates into string evals
111 under 5.10+. Autodie completely fails to propagate into
112 string evals under 5.8. No fix for 5.8 is known.
db04618b » pfenwick 2009-02-24 autodie now propagates corr... 113
b3ac9a11 » pfenwick 2009-02-27 Rearranged Changes in order... 114 * BUGFIX: The caller() method on autodie::exception objects
115 should now always report the correct caller. While it
116 would always get the line, file, and package correct, previously
117 it would sometimes report less-than-helpful callers like
118 '__ANON__' or '(eval)'.
7a9c89b6 » pfenwick 2009-02-17 Documented tests. Expanded ... 119
b4ad38d5 » pfenwick 2009-02-22 Autodie treats system() as ... 120 * BUGFIX: autodie was treating system() as a user-sub, not
121 a built-in. This could tigger extra (unnecessary) work
122 inside autodie, but otherwise had no user impact.
db04618b » pfenwick 2009-02-24 autodie now propagates corr... 123
412113ed » pfenwick 2009-02-22 Fixed misleading synopsis i... 124 * DOCUMENTATION: The synopsis for autodie::exception::system
125 previously implied system() was made autodying by default.
126 This was not the case. It must still be enabled with
127 use autodie qw(system).
128
963feac9 » pfenwick 2009-02-24 Documented: String eval + 5... 129 * DOCUMENTATION: Noted the 5.8 string eval bug in
130 autodie/BUGS.
131
b3ac9a11 » pfenwick 2009-02-27 Rearranged Changes in order... 132 * TEST: Added test for correct caller output on
133 autodie::exception objects. Thanks to Piers Harding
134 for spotting this bug at KiwiFoo.
135
136 * TEST: Added tests for user-defined autodying functions
137 changing behaviour depending upon context. This was
138 reported in http://perlmonks.org/?node_id=744246 .
139
140 * TEST: Tests for autodie propagating into string eval.
141
40762c67 » pfenwick 2009-02-24 Additional tests for autodi... 142 * TEST: Expanded tests to ensure autodie::exception returns
143 the correct line number and caller.
144
4cc96643 » pfenwick 2009-02-24 Expanded caller.t to do ext... 145 * TEST: Expanded tests to ensure autodie::exception returns
146 correct information when calling subroutines in external files.
147
62b738d4 » pfenwick 2009-01-02 Bump version to 1.998 and r... 148 1.998 Sat Jan 3 11:19:53 AUSEDT 2009
149
99f46302 » pfenwick 2008-12-04 Removed Module::AutoInstall... 150 * BUILD: Removed Module::AutoInstall, which previously
151 was loaded but not used, but currently doesn't actually
152 do what we want.
153
7e77782a » pfenwick 2008-12-05 exception_class.t: Worked a... 154 * TEST: We manually stringify $@ for one test in
155 exception_class.t to avoid a bug involving overloaded
156 classes containing apostrophies.
157
d61fa9d5 » pfenwick 2008-12-11 mkdir.t and unlink.t no lon... 158 * TEST: unlink.t and mkdir.t avoid changing directories,
159 which could cause spurious failures when @INC includes
160 paths relative to the current working directory.
161
884aae99 » pfenwick 2008-12-15 Better documentation of use... 162 * DOCUMENTATION: Spurious "used only once" messages are
163 documented in Fatal's documentation (as well as autodie's).
164
b4183273 » Craig A. Berry 2009-01-02 In determining whether test... 165 * TEST: truncate.t has been updated to avoid incorrect
166 test failures on VMS machines. Many thanks to Craig A
167 Berry for the bug report and fix. (RT #42110)
168
4a78d868 » pfenwick 2008-12-03 Don't test exception object... 169 1.997 Thu Dec 4 15:14:00 AUSEDT 2008
170 * TEST: Test::More 0.86 (and possibly 0.85) appears to
171 dislike package names that contain the apostrophe
172 character (these occur in some tests for Klingon
173 localisation). We now skip these tests on systems
174 with Test::More >= 0.85 installed.
175
8305d299 » pfenwick 2008-12-03 Release time! 176 1.996 Thu Dec 4 09:07:39 AUSEDT 2008
7096f27b » pfenwick 2008-12-02 We now provide an exception... 177 * FEATURE: Child classes can now provide an exception_class()
178 method that returns the desired exception class, rather
179 than over-riding the whole throw() method. Existing classes
180 that over-ride throw() will still work as before.
181
707942e6 » pfenwick 2008-12-02 Fixed nasty bug where multi... 182 * BUGFIX: Fixed a bug where multiple autodie-derived classes
183 would share the same subroutine cache. This could result
184 in excptions from the wrong class being thrown.
185
186 This bug did not affect programs which used only autodie,
187 or a single autodie-derived class.
188
3b20b05b » pfenwick 2008-12-02 Added missing version tag e... 189 * BUGFIX: Missing 1.995 version tag added to export list.
190
191 * TEST: Make sure that we always have a working version tag for
192 our current version.
193
411d0d7f » pfenwick 2008-11-29 Release time! 1.995 194 1.995 Sun Nov 30 17:30:16 AUSEDT 2008
fc094d36 » pfenwick 2008-11-29 Documented: We no longer pr... 195
2b596a5c » pfenwick 2008-11-28 Improved error messages fro... 196 * FEATURE: Errors from 2-argument open now have more human
197 friendly error messages for reading, writing, and appending.
198
fc094d36 » pfenwick 2008-11-29 Documented: We no longer pr... 199 * FEATURE: autodie will never print unsightly references to
200 GLOB(0x...) structures in error messages; instead it uses
201 the placeholder '$fh'.
202
bfffde76 » pfenwick 2008-11-04 Module::AutoInstall lets us... 203 * BUILD: Bundled Module::AutoInstall makes it clear to users
204 they need to install IPC::System::Simple for autodying
205 system() support.
206
911a4b5b » pfenwick 2008-11-05 Tests for better looking co... 207 * TEST: truncate.t provides more diagnostics on failure.
208
209 * TEST: Tests for better formatted reports from connect().
210
a9fcab65 » pfenwick 2008-11-12 Added open.t for carefully ... 211 * TEST: New 'open.t' contains specific tests for well-formatted
212 messages from open().
213
c852dd18 » pfenwick 2008-09-24 Release time! Added timest... 214 1.994 Thu Sep 25 16:18:56 AUSEST 2008
0cf81a8f » pfenwick 2008-09-17 flock() added to :file cate... 215
2cdd8db5 » pfenwick 2008-09-21 Greatly increased checking ... 216 * BUGFIX: flock(), ioctl() and truncate() are now part of
217 the :file tag.
218
219 * BUGFIX: link(), mkdir(), rmdir(), symlink() and umask()
220 are now part of the :filesys tag.
221
222 * BUGFIX: The new :msg tag contains msgctl(), msgget(), msgrcv(),
223 and msgsnd().
224
225 * BUGFIX: The new :semaphore tag contains semctl(), semget()
226 and semop().
227
228 * BUGFIX: The new :shm tag contains shmget(), shmread() and
229 shmctl().
230
231 * BUGFIX: The new :ipc tag contains :msg, :semaphore, :shm and pipe().
232
233 * BUGFIX: The read(), seek(), sysread(), syswrite() and sysseek()
234 methods have been added to :io.
0cf81a8f » pfenwick 2008-09-17 flock() added to :file cate... 235
a9bdba68 » pfenwick 2008-09-24 Much better error reporting... 236 * BUGFIX: autodie produces more detailed messages on internal
237 faults, and is more aggressive about stopping code compilation.
238
365bece4 » pfenwick 2008-09-20 Merge branch 'master' into ... 239 * FEATURE: flock will not die on failure when called
240 with the LOCK_NB option and would return false
241 due to an EWOULDBLOCK. See function specific notes
242 in autodie documentation for more details.
243
49dbe3bc » pfenwick 2008-09-17 Added _format_flock handler... 244 * FEATURE: Stringified exceptions from flock() are significantly
365bece4 » pfenwick 2008-09-20 Merge branch 'master' into ... 245 nicer to read.
49dbe3bc » pfenwick 2008-09-17 Added _format_flock handler... 246
3ef29344 » pfenwick 2008-09-24 Version bump to 1.994. Add... 247 * FEATURE: use autodie qw(:1.994) can be used to specify the
248 :default tag from a particular version.
249
5a7c1c26 » pfenwick 2008-09-24 Documented function-specifi... 250 * DOCUMENTATION: flock() is documented as being in the :file tag.
251
252 * DOCUMENTATION: Added function-specific notes in autodie.pm
253
a13f48e1 » pfenwick 2008-09-21 New tests from Jacinta. 254 * TEST: New tests for rmdir(), mkdir(), and unlink(), thanks
255 to Jacinta Richardson.
256
0997eb3d » pfenwick 2008-09-24 Added author-only perlcriti... 257 * TEST: Added author-only perlcritic tests.
258
af97b231 » pfenwick 2008-09-24 META.yml has more correct v... 259 * META: META.yml has more correct author information.
260
34662d22 » pfenwick 2008-09-13 Added release time to Chang... 261 1.993 Sun Sep 14 11:15:36 AUSEST 2008
65768f60 » pfenwick 2008-09-11 RT #39172: The :dbm tag is ... 262
263 * DOCUMENTATION: The :dbm tag is now correctly documented
264 in autodie/CATEGORIES. Thanks to Darren Duncan for spotting
265 this. (RT #39172)
266
25f58ae6 » pfenwick 2008-09-11 RT #39172 closedir() has be... 267 * DOCUMENTATION: The README file has been updated to reflect
268 current minimum Perl versions (5.8.0) and current resources.
269
270 * DOCUMENTATION: The closedir() function is properly
271 documented as being included in the :filesys tag.
272
a4b26ab4 » pfenwick 2008-09-13 Feedback section added to d... 273 * DOCUMENTATION: Feedback section added to the autodie
274 documentation. If you find the module useful, consider
275 saying so on cpanratings.perl.org, or dropping me a note.
276
48b815fb » pfenwick 2008-09-13 Upgrade to Module::Install ... 277 * BUILD: Upgrade to Module::Intstall 0.77
278
8822d277 » pfenwick 2008-09-06 1.992 released 279 1.992 Sun Sep 7 15:51:32 AUSEST 2008
e1033eb0 » pfenwick 2008-03-28 Internal release 280
dfb4ba91 » pfenwick 2008-09-06 Added closedir() to :filesy... 281 * BUGFIX: unlink(), rename(), chdir() and closedir() functions
282 are now included in the :filesys tag.
5059ba7d » pfenwick 2008-08-29 RT #38845, detect missing s... 283
ddeeeaa6 » pfenwick 2008-09-06 binmode added to :file. Sp... 284 * BUGFIX: binmode() is now checked for failure as part of
285 the :file tag.
286
287 * BUGFIX: Using an unopened filehandle in an autodying
288 built-in no longer triggers a spurious warning.
289
5059ba7d » pfenwick 2008-08-29 RT #38845, detect missing s... 290 * BUGFIX: RT #38845, corrected a missing space in the error
291 produced by autodie when called with the ':void' switch.
292 Many thanks to Matt Kraai for the patch!
293
cf04ae2d » pfenwick 2008-09-06 Added support for dbmopen a... 294 * FEATURE: The dbmopen() and dbmclose() functions are now
295 supported in their own :dbm tag. This is part of :io
296 (and hence :default).
297
298 * FEATURE: The dbmopen() built-in has its own formatter,
299 which ensures errors always display the mask in octal,
300 not decimal.
301
0f966af9 » pfenwick 2008-09-05 unlink, rename and chdir ar... 302 * DOCUMENTATION: The :filesys tag is properly documented.
303
8583704f » pfenwick 2008-09-03 Added link to perl tip 304 * DOCUMENTATION: Added link to Perl tip on autodie.
305
0f966af9 » pfenwick 2008-09-05 unlink, rename and chdir ar... 306 * TEST: RT #38845, t/internal.t updated to detect malformed error
307 messages involving the mixing of ':void' and autodie.
308
1a5d5b37 » pfenwick 2008-08-22 Release time. v1.991 309 1.991 Fri Aug 22 23:57:24 AUSEST 2008
06cc027e » pfenwick 2008-08-20 Bugfix: RT#38614, stringifi... 310
311 * BUGFIX: RT #38614, stringified autodie::exceptions objects
312 now always end with a newline. Thanks to Offer Kaye for the
313 report.
314
2ce004eb » pfenwick 2008-08-19 More descriptive changes tags. 315 * BUGFIX: Makefile.PL is no longer executable.
1e5a9526 » pfenwick 2008-07-22 Makefile.PL is no longer ex... 316
2ce004eb » pfenwick 2008-08-19 More descriptive changes tags. 317 * BUGFIX: 'chdir' added to defaults, and the :filesys group.
c261c9ee » pfenwick 2008-08-04 chdir added to defaults and... 318
c0389536 » pfenwick 2008-08-20 Bugfix: RT #38598. The errn... 319 * BUGFIX: RT #38598, the errno attribute on autodie::exception
320 objects is now correctly set.
321
355a109a » pfenwick 2008-08-22 RT #38066 - exceptions from... 322 * BUGFIX: RT #38066, exceptions from system() now report
323 the correct line number.
324
4d2455ad » pfenwick 2008-08-20 RT #38614 - Exceptions shou... 325 * TEST: Internal tests changes to ease integration with core.
326
2ce004eb » pfenwick 2008-08-19 More descriptive changes tags. 327 * TEST: Checks added for empty 'errno' string in basic_exceptions.t
855f51c5 » pfenwick 2008-08-19 Added (failing) tests for e... 328
4d2455ad » pfenwick 2008-08-20 RT #38614 - Exceptions shou... 329 * TEST: Errors should end with a newline.
330
675453bf » pfenwick 2008-08-20 fork tests should no longer... 331 * TEST: fork tests should no longer mysteriously fail
332 on Solaris.
333
1b22117f » pfenwick 2008-08-20 backcompat.t should no long... 334 * TEST: backcompat.t should no longer give strange failures on
335 old versions of 5.8.3 or earlier.
336
355a109a » pfenwick 2008-08-22 RT #38066 - exceptions from... 337 * TEST: system.t ensures the correct file is reported.
338
cbbd4072 » pfenwick 2008-08-20 Upgrade to Module::Install ... 339 * BUILD: Upgrade to Module::Install 0.75
340
c4684e3e » pfenwick 2008-07-21 1.99 release 341 1.99 Mon Jul 21 02:25:23 PDT 2008
e81c961a » pfenwick 2008-07-21 Documentation/category impr... 342
343 * RELEASE CODENAME: "jarich", in thanks for her giving
344 up pretty much a whole week of her life to do nothing
345 but help me work on my talks for OSCON.
61d0f4ea » pfenwick 2008-07-03 autodie now checks open() f... 346
347 * BUGFIX: autodie will now check open() for returning
348 undef, not merely false, as open() can legimiately
349 return zero for open(my $fh, '-|') || exec(...) style
350 calls.
351
a902631c » pfenwick 2008-07-03 Added lethal.t, a test for ... 352 * TEST: Added t/lethal.t, a test for basic subclassing.
353
fbc72df8 » pfenwick 2008-07-05 Added t/lethal.t and t/user... 354 * TEST: Added t/usersub.t, a test for correct handling
355 of user subroutines.
356
357 * DOCUMENTATION: Noted in autodie.pm that user subs can
358 only be made Fatal/autodying if they've been declared
359 first.
360
2bac1c23 » pfenwick 2008-07-10 We can (again) detect an il... 361 * FEATURE: Conflicts between 'no autodie' and 'use Fatal'
362 re-enabled.
363
5156ce30 » pfenwick 2008-07-15 Added sysopen(), fcntl() an... 364 * FEATURE: Added sysopen() and fcntl() to :file, and
ce4c1553 » pfenwick 2008-07-15 Vanilla autodie means :defa... 365 exec() and system to :system. exec() doesn't yet work
366 due to its prototype;
367
368 * FEATURE: Vanilla 'use autodie' now implies
369 'use autodie qw(:default)'. This excludes system(),
e81c961a » pfenwick 2008-07-21 Documentation/category impr... 370 which depends upon an optional module, and exec(),
371 which breaks its exotic form.
5156ce30 » pfenwick 2008-07-15 Added sysopen(), fcntl() an... 372
d3d6ca2f » pfenwick 2008-07-18 Moved internal tests from F... 373 * TEST: Internal tests moved from Fatal.t to
374 internal.t
375
265bfe79 » pfenwick 2008-07-18 Added support for fileno. 376 * FEATURE: Added support for fileno.
377
c38808f0 » pfenwick 2008-07-18 Added support for exec(). 378 * FEATURE: Addded support for exec (although this
379 breaks the exotic form while autodie is in scope).
380
916e9a24 » pfenwick 2008-07-18 We now correctly support 'n... 381 * BUGFIX: 'no autodie' now plays nicely with user subs.
382
e81c961a » pfenwick 2008-07-21 Documentation/category impr... 383 * DOCUMENTATION: Added a brief mention of the category
384 system that autodie provides.
385
2626d8fb » pfenwick 2008-07-03 Release time! 1.11_01 "Ari... 386 1.11_01 Fri Jul 4 12:53:11 AEST 2008
387
388 * RELEASE CODENAME: "Aristotle", in thanks for the many
389 long and detailed discussions about the autodie interface
390 and how it should interact with Fatal. Aristotle was
391 instrumental in ensuring autodie has the clean and
392 simple interface that it does now.
fd1ce5e5 » pfenwick 2008-07-01 Removed kludge that forced ... 393
2544843f » pfenwick 2008-07-03 Retabbed 394 * FEATURE: 5.8 now has the ability to differentiate between calls
395 that return false to indicate failure, and those that
396 only return undef to indicate failure. CORE::send and
397 CORE::recv are examples of these.
fd1ce5e5 » pfenwick 2008-07-01 Removed kludge that forced ... 398
2544843f » pfenwick 2008-07-03 Retabbed 399 * FEATURE: You can now 'use autodie qw(fork)' to make sure your
400 forks are successful (they must return defined).
e0dfa76f » pfenwick 2008-07-01 autodie now knows about for... 401
86d1f35e » pfenwick 2008-07-01 Leaks into other files are ... 402 * TEST: t/todo.t removed. We have passing tests (recv.t)
662cbaef » pfenwick 2008-07-01 todo.t is dead. Huzzah! 403 for the reminder I had stuffed into here.
404
2544843f » pfenwick 2008-07-03 Retabbed 405 * TEST: t/fork.t added, for testing autodying fork.
970d6e66 » pfenwick 2008-07-01 Added tests for fork() 406
86d1f35e » pfenwick 2008-07-01 Leaks into other files are ... 407 * INTERNAL: The internal subroutine _remove_lexical_subs has been
5a82dc17 » pfenwick 2008-07-01 _remove_lexical_subs rename... 408 renamed to a much less misleading name of _install_subs,
409 since that's what it actually does now.
410
86d1f35e » pfenwick 2008-07-01 Leaks into other files are ... 411 * BUGFIX: Found and fixed a nasty bug where autodie's internal
412 subroutine cache was being too agressive. This could result in
413 handles from the incorrect package being used. Scalar filehandles
414 have never been affected by this bug.
415
416 * BUGFIX: Autodying subroutines will no longer leak into other
417 files if they are used/required/done in the same lexical scope.
48094bf0 » pfenwick 2008-07-01 Fixed nasty bug where autod... 418
d7f35efe » pfenwick 2008-07-01 Fatal.pm should now properl... 419 * BUILD: Fatal and autodie now install themselves with a
420 INSTALLDIRS=perl target, meaning they will now correctly
421 override (and possibly overwrite) your installed Fatal.pm
422 on 'make install'.
423
18e1027f » pfenwick 2008-07-02 Documented the 'used only o... 424 * DOCUMENTATION: Documented the 'used only once' bug when
425 using Fatal/autodie with package filehandles. This has
426 always existed in Fatal, and as far as I know it incurable
427 (but harmless).
428
d351cea0 » pfenwick 2008-07-03 Crickey! We can now subcla... 429 * FEATURE: autodie and its exceptions can now be subclassed!
430
431 * TEST: Added t/crickey.t as an example of using fair dinkum
432 subclasses of autodie. Mate, I reckon it's time for a beer.
433
2379b761 » pfenwick 2008-07-03 Moved autodie::exception ob... 434 * INTERNAL: Moved exception architecture from inside-out
435 objects (which need lots of extra work under 5.8) to
436 regular hashes (which don't need extra work).
437
5832655b » pfenwick 2008-07-03 Inline relevant portions of... 438 * INTERNAL: Inlined relevant portions of Scope::Guard, meaning
439 autodie can be installed with no dependencies. (It still
440 recommends IPC::System::Simple.)
441
2626d8fb » pfenwick 2008-07-03 Release time! 1.11_01 "Ari... 442 1.10_07 Sun Jun 29 15:54:26 AEST 2008
2544843f » pfenwick 2008-07-03 Retabbed 443 * RELEASE CODENAME: "ikegami", in thanks for solving the problem
444 of getting lexical replacement of subroutines working for real
445 under Perl 5.8. As this works better than my 5.10 implemenation,
446 it forms the foundation for this release.
02984ceb » pfenwick 2008-06-22 Housekeeping of version num... 447
2544843f » pfenwick 2008-07-03 Retabbed 448 * Removed inappropriate diagnostics about :lexical from Fatal.pm
3b7bb604 » pfenwick 2008-06-23 Documentation improvements ... 449
2544843f » pfenwick 2008-07-03 Retabbed 450 * Moved can't mix lexical and void diagnostics to autodie.pm
3b7bb604 » pfenwick 2008-06-23 Documentation improvements ... 451
2544843f » pfenwick 2008-07-03 Retabbed 452 * Added some basic tests for sysopen()
f7292cbd » pfenwick 2008-06-25 Added basic tests to see if... 453
2544843f » pfenwick 2008-07-03 Retabbed 454 * Removed the 5.10 only way of tracking lexical hints with
455 %^H. Our code now exclusively uses the more portable
456 5.8 code that employs Scope::Guard (and has less side-effects).
413982c0 » pfenwick 2008-06-28 Removed 5.10 hints tracking... 457
2544843f » pfenwick 2008-07-03 Retabbed 458 * Exotic system is no longer clobbered under 5.10 outside of
459 autodie's scope.
fc7519a9 » pfenwick 2008-06-28 Documentation reminder: exo... 460
2544843f » pfenwick 2008-07-03 Retabbed 461 * autodie::exception::match is better exercised in the 5.8
462 test suite.
59abe196 » pfenwick 2008-06-28 autodie::exception::Match i... 463
2544843f » pfenwick 2008-07-03 Retabbed 464 * Re-enabled 'use autodie' vanilla tests.
08bb0e3b » pfenwick 2008-06-28 Re-enabled failing 'use aut... 465
2544843f » pfenwick 2008-07-03 Retabbed 466 * t/backcompat.t no longer fails under Devel::Cover
c49b1143 » pfenwick 2008-06-28 backcompat.t no longer fail... 467
2544843f » pfenwick 2008-07-03 Retabbed 468 * Repeating function names in arguments to autodie no
469 longer causes those functions to become 'stuck' in
470 autodying mode.
d3be6e3b » pfenwick 2008-06-28 Repeating function names in... 471
2544843f » pfenwick 2008-07-03 Retabbed 472 * Wrong-version of Fatal.pm support added, along with basic
473 hints on how to get it working.
dae30624 » pfenwick 2008-06-28 Extra documentation particu... 474
2544843f » pfenwick 2008-07-03 Retabbed 475 * Expanded documentation on autodie, particularly for
476 exception handling under Perl 5.8.
dae30624 » pfenwick 2008-06-28 Extra documentation particu... 477
2544843f » pfenwick 2008-07-03 Retabbed 478 * Less warnings from t/exceptions.t when running under 5.10.
c6a566bc » pfenwick 2008-06-28 Scope::Guard is now a requi... 479
2544843f » pfenwick 2008-07-03 Retabbed 480 * All releases now really depend upon Scope::Guard, not just 5.8.
515fc231 » pfenwick 2008-06-28 Made exceptions.t less warn... 481
7a573dae » stennie 2008-07-01 replace cygwin TZs with mor... 482 1.10_06 Sun Jun 22 21:50:39 AEST 2008
68d4714f » pfenwick 2008-06-22 Overhauled lexical subs pro... 483
2544843f » pfenwick 2008-07-03 Retabbed 484 * RELEASE CODENAME: "Chocolateboy", in thanks for his wonderful
485 insights, and for letting me sound off way too many ideas
486 about how things may be done.
68d4714f » pfenwick 2008-06-22 Overhauled lexical subs pro... 487
2544843f » pfenwick 2008-07-03 Retabbed 488 * Fixed speeling errors in context.t, thanks to Stennie.
ec998c7d » pfenwick 2008-06-14 Fixed spelling errors in co... 489
2544843f » pfenwick 2008-07-03 Retabbed 490 * Fixed minor pod errors and omissions.
54c408c3 » pfenwick 2008-06-15 Corrected minor pod errors ... 491
2544843f » pfenwick 2008-07-03 Retabbed 492 * Fixed bug in recv.t which resulted in an incorrect number
493 of skipped tests on systems using socketpair emulation.
b2c74be1 » pfenwick 2008-06-15 Fixed incorrect number of s... 494
2544843f » pfenwick 2008-07-03 Retabbed 495 * Fixed a bug that would cause unwanted interactions between
496 autodie and autobox. Thanks to chocolateboy. (5.8)
113251f8 » pfenwick 2008-06-15 Fixed a bug that would caus... 497
2544843f » pfenwick 2008-07-03 Retabbed 498 * Wrote a (failing) test case demonstrating that the
499 autodie pragma could leak across files. Many thanks to
500 chocolateboy for bringing this to my attention.
219a33a5 » pfenwick 2008-06-15 Added (failing) test to det... 501
2544843f » pfenwick 2008-07-03 Retabbed 502 * t/system.t checks to see if exotic system has been injured
503 in the same package as 'use qutodie qw(system)'
f2fe4549 » pfenwick 2008-06-16 Check for continuing health... 504
2544843f » pfenwick 2008-07-03 Retabbed 505 * Calling filename reliably reported in 5.8 error messages
506 and error objects.
9cc30842 » pfenwick 2008-06-18 5.8 error objects now corre... 507
2544843f » pfenwick 2008-07-03 Retabbed 508 * User subs can be made autodying under 5.8, but they leak
509 over the entire package (which is very bad!)
6e775c5c » pfenwick 2008-06-18 Added tests for autodying u... 510
2544843f » pfenwick 2008-07-03 Retabbed 511 * Context-checking tests split into package-scope tests and
512 lexical scope tests.
61cec2c6 » pfenwick 2008-06-21 Support for lexical user-su... 513
2544843f » pfenwick 2008-07-03 Retabbed 514 * Lexical user-subs are disabled under Perl 5.8. They were
515 leaking everywhere and not being lexical at all. Attempting
516 to use a lexical user-sub under 5.8 now causes an error.
61cec2c6 » pfenwick 2008-06-21 Support for lexical user-su... 517
2544843f » pfenwick 2008-07-03 Retabbed 518 * Bugs found in interaction between autodie and Fatal in
519 5.8. When used together, we can't reliably replace a
520 Fatalised sub with an autodying one, and then switch it
521 back again at the end of block.
f5ec7da0 » pfenwick 2008-06-21 Detection for (failing) att... 522
2544843f » pfenwick 2008-07-03 Retabbed 523 * Bugs described above fixed, thanks to ikegami!
68d4714f » pfenwick 2008-06-22 Overhauled lexical subs pro... 524
2544843f » pfenwick 2008-07-03 Retabbed 525 * Overhauled _remove_lexical_subs, based on ikegami's
526 input. This routine would now be better named
527 "_install_lexical_subs", since it can now both
528 install and remove.
68d4714f » pfenwick 2008-06-22 Overhauled lexical subs pro... 529
2544843f » pfenwick 2008-07-03 Retabbed 530 * Surpressed some warnings under 5.8 about uninitialised
531 hints hashes.
68d4714f » pfenwick 2008-06-22 Overhauled lexical subs pro... 532
2544843f » pfenwick 2008-07-03 Retabbed 533 * Added support for backwards compatible Fatal calls in
534 5.8. These are currently a little *too* backwards compatible,
535 possessing the same bugs as the old Fatal (clobbering
536 context).
68d4714f » pfenwick 2008-06-22 Overhauled lexical subs pro... 537
2544843f » pfenwick 2008-07-03 Retabbed 538 * Improved caching of pre-generated subroutines. We now
539 cache the compiled subroutine, rather than the uncompiled
540 code.
f5ec7da0 » pfenwick 2008-06-21 Detection for (failing) att... 541
2544843f » pfenwick 2008-07-03 Retabbed 542 * Added more tests to ensure Fatal throws backcompat
543 strings, whereas autodie throws exception objects.
f5ec7da0 » pfenwick 2008-06-21 Detection for (failing) att... 544
2544843f » pfenwick 2008-07-03 Retabbed 545 * Support for lexical user-subs enabled, tested, and working
546 in 5.8!
f9c4e27c » pfenwick 2008-06-22 Lexical user subs work in 5... 547
2544843f » pfenwick 2008-07-03 Retabbed 548 * Added resources to Makefile.PL / META.yml
da0e3551 » pfenwick 2008-06-22 Added blog and repository i... 549
61cec2c6 » pfenwick 2008-06-21 Support for lexical user-su... 550
7a573dae » stennie 2008-07-01 replace cygwin TZs with mor... 551 1.10_05 Sun Jun 15 15:46:38 AEST 2008
2544843f » pfenwick 2008-07-03 Retabbed 552 * Kludgy support for Perl 5.8 using Scope::Guard and dark
553 and terrible magicks taken from namespace::clean.
ccb64ae6 » pfenwick 2008-06-13 Bumped versions. Updated C... 554
2544843f » pfenwick 2008-07-03 Retabbed 555 * Rudimentary caching of generated code, to avoid having
556 to regenerate the same code every single time Fatal/autodie
557 is used on the same function.
ccb64ae6 » pfenwick 2008-06-13 Bumped versions. Updated C... 558
2544843f » pfenwick 2008-07-03 Retabbed 559 * Nuking subroutines at end of lexical scope moved into
560 own subroutine.
09dde36c » pfenwick 2008-06-14 (5.8) Nuking subs at end of... 561
2544843f » pfenwick 2008-07-03 Retabbed 562 * Perl 5.8 support working! Backcompat mode not yet
563 supported, nor is autodie with user defined subs.
564 The 5.8 support that is there is rather kludgy, and
565 still needs a lot of work.
3c4b8429 » pfenwick 2008-06-14 Perl 5.8 autodie support is... 566
2544843f » pfenwick 2008-07-03 Retabbed 567 * Perl 5.8 code no longer gets executed under 5.10 when
568 executing write_invocation().
1b45db17 » pfenwick 2008-06-14 Perl 5.8 code no longer exe... 569
2544843f » pfenwick 2008-07-03 Retabbed 570 * lex58.t tells the user that we'll get warnings under
571 Win32, and these are to be ignored. This is due to
572 a Perl behaviour where it always calls the shell under
573 Win32, even when multi-arg system is used.
6d62a304 » pfenwick 2008-06-14 Updated test cases, Makefil... 574
2544843f » pfenwick 2008-07-03 Retabbed 575 * lex58.t no longer fails to compile on Perl 5.10 which
576 is still clobbering exotic open. Perl 5.8 does not
577 clobber the exotic form.
6d62a304 » pfenwick 2008-06-14 Updated test cases, Makefil... 578
2544843f » pfenwick 2008-07-03 Retabbed 579 * Backcompat tests are all marked as TODO under perl 5.8
6d62a304 » pfenwick 2008-06-14 Updated test cases, Makefil... 580
2544843f » pfenwick 2008-07-03 Retabbed 581 * Makefile.PL moved back to saying autodie works under 5.8
6d62a304 » pfenwick 2008-06-14 Updated test cases, Makefil... 582
2544843f » pfenwick 2008-07-03 Retabbed 583 * Context/user-sub tests skipped under 5.8, which does
584 not yet support autodying of user subs.
18e93b6b » pfenwick 2008-06-14 Context/user-sub tests skip... 585
2544843f » pfenwick 2008-07-03 Retabbed 586 * lex58 tests now skipped if IPC::System::Simple not installed.
132c4008 » pfenwick 2008-06-14 Scope::Guard required for P... 587
2544843f » pfenwick 2008-07-03 Retabbed 588 * Squished a spurious warning from lex58.t
132c4008 » pfenwick 2008-06-14 Scope::Guard required for P... 589
7a573dae » stennie 2008-07-01 replace cygwin TZs with mor... 590 1.10_04 Sat Jun 14 15:02:17 AEST 2008
2544843f » pfenwick 2008-07-03 Retabbed 591 * Made all $VERSION numbers more friendly to static code
592 analysis tools (including CPAN).
593 * Added a test to make sure all version numbers are incremented
594 in lock-step.
6f0e88c7 » pfenwick 2008-06-12 Made all $VERSIONs more fri... 595
2544843f » pfenwick 2008-07-03 Retabbed 596 * Started 5.8 support
597 * Removed dependencies on 5.10 'use feature'.
598 * Removed dependencies on 5.10 fieldhashes.
599 * a::e::match no longer uses smart-match or //
600 * %^H init doesn't use // anymore.
601 * 5.8 won't try to use // in fatalised subs (kludge)
754c6f68 » pfenwick 2008-06-12 First steps in a 5.8 port; ... 602
2544843f » pfenwick 2008-07-03 Retabbed 603 * recv.t corrected to use a custom socket (closed for writing)
604 and to ignore SIGPIPEs.
1ef565c1 » pfenwick 2008-06-13 Make sure our send/recv tes... 605
7a573dae » stennie 2008-07-01 replace cygwin TZs with mor... 606 1.10_03 Fri Jun 13 11:04:17 AEST 2008
2544843f » pfenwick 2008-07-03 Retabbed 607 * Updated backwards compatibility tests to work on
608 non-Enligh systems.
db9fab71 » pfenwick 2008-06-12 Bumped to 1.10_03. Fixed b... 609
7a573dae » stennie 2008-07-01 replace cygwin TZs with mor... 610 1.10_02 Fri Jun 13 10:55:00 AEST 2008
2544843f » pfenwick 2008-07-03 Retabbed 611 * Tweaked boilerplate test to remove windows-only paths.
612
613 1.10_01 Thu Jun 12 17:19:13 AEST 2008
614 * First beta release of module.
615
616 1.09 UNRELEASED
617 * Many changes not documented here.
618 * Fatal is now fully backwaards compatible again.
619 * system() can be fatalised/autodying if IPC::System::Simple
620 is installed.
621 * Rationlisation of autodie::exception API.
622 * autodie::exception->function() now always returns the
623 full function name as best we can find it, and not
624 what may be getting replaced (eg, CORE::open instead of
625 main::open).
626
627 1.08 Sat Mar 29 10:54:20 AEDT 2008
e1033eb0 » pfenwick 2008-03-28 Internal release 628 Dual-lifed module internally from work I was doing on p5p.
629