- New upstream release 0.040
- Document warning and error messages produced by Exporter::Tiny
- Exporter::Tiny would previously cause B.pm to be loaded into memory any
time it exported anything: it no longer does
- No longer die when redefining locally defined subs
- Warn when redefining any subs
- Use %license where possible
- New upstream release 0.038
- Added: Support Exporter.pm's import negation syntax qw( !foo )
- Added: Support Exporter.pm's regexp import syntax qw( /foo/ )
- Fix minor error in documentation of generators
- Improved handling of hashrefs of options passed to tags, and hashrefs of
options found within %EXPORT_TAGS arrayrefs
- Only attempt to merge hashes if we're sure they're both really hashes!
Exporter::Tiny supports many of Sub::Exporter's external-facing features
including renaming imported functions with the -as, -prefix and -suffix
options; explicit destinations with the into option; and alternative
installers with the installer option. But it's written in only about 40%
as many lines of code and with zero non-core dependencies.
Its internal-facing interface is closer to Exporter.pm, with configuration
done through the @EXPORT, @EXPORT_OK and %EXPORT_TAGS package variables.
Exporter::Tiny performs most of its internal duties (including resolution of
tag names to sub names, resolution of sub names to coderefs, and installation
of coderefs into the target package) as method calls, which means they can be
overridden to provide interesting behavior.