autodie 1.10 beta released - It's Fatal 2.0!
After much hacking, I'm very glad to say that I've got a version of Fatal/autodie that I'm willing to foist upon the world for beta testing. It's not a release candidate, but all the important things that should work, do work (I hope).
For those who haven't seen my previous discussions, you can think of autodie as a Fatal 2.0. It provides lexical scope, exception objects, and much nicer error messages. It even lets you make system() fatal[1].
You can find the distribution at:
http://perltraining.com.au/~pjf/autodie/
It's currently not on the CPAN because I don't want innocent bystanders replacing their Fatal.pm by accident.
Currently it only works on Perl 5.10 and above. Support for 5.8 is on my TODO list.
I'm specifically after feedback on the following points:
- Do any tests fail on your system?
- If you use the new Fatal.pm module, does any of your existing code break? (It should be 100% backwards compatible.)
- If you s/Fatal/autodie/; in your code, does it do what you expect? Are the error messages nicer? Are there any gotchas I've missed?
If you really want to get your hands dirty, feel free to look at the TODO file, the DESIGN.pod file, or the source code in general. Suggestions and patches are very much appreciated. If you've got a github account, I'm happy to give you commit access, or you can just fork the repository.
If you want to see my five minute talk about what this is about, see the video in my blog.
If you want to track my repository of changes, you can find them at:
http://github.com/pfenwick/autodie/tree/master
I also want to say a special thank-you to Aristotle, who has provided invaluable feedback while I've been working on the project.
Any questions, feedback, criticisms, patches, or ideas are welcome.
Many thanks,
Paul
[1] To fatalise system() you'll also need to install IPC::System::Simple.