Revision history for Perinci-Access-Perl
0.67 2014-05-17 (SHARYANTO)
- No functional changes.
- Replace File::Slurp with File::Slurp::Tiny.
0.66 2014-04-30 (SHARYANTO)
[ENHANCEMENTS]
- meta action: Now uses Perinci::Sub::Normalize instead of
Perinci::Sub::Wrapper to reduce startup overhead in things like
Perinci::CmdLine's --help or autocompletion (which only request
'meta' action). In other words, we now decouple metadata
normalization and wrapping.
[REMOVED FEATURES]
- Remove 'extra_wrapper_args' option (it's not used so far, except for
turning off wrapping in Perinci::CmdLine in completion mode to reduce
startup overhead).
- meta action: Remove returning 'orig_meta' in result metadata (so far
it's only used by Perinci::To::Doc when wanting to know the original
value of 'result_naked' and 'args_as' properties). This can now be
done via the 'normalize_metadata'=>0 option.
[INCOMPATIBLE CHANGES]
- Rename option 'extra_wrapper_convert' to 'set_function_properties'
(the new name is more abstract and less low-level).
0.65 2014-04-16 (SHARYANTO)
- Set 'entity_date' property from $DATE package variable.
0.64 2014-04-15 (SHARYANTO)
- call action: accept 'argv' Riap request key. This is actually not
defined yet in specification, but useful in cases where an argument
has a cmdline_alias with coderef, where it will fail to be parsed at
the client-side because JSON doesn't transport the coderef.
0.63 2014-03-30 (SHARYANTO)
[INTERNAL]
- Remove $self->{_actionmetas} and $self->{_typeaccts} cache. They are
per-object (instead of global) so a bit wasteful, they make patching
of adding new actions not work after the object is created, and they
are microoptimization anyway.
0.62 2014-03-27 (SHARYANTO)
- No functional changes.
- Adjust to Perinci::Sub::Wrapper 0.56.
0.61 2014-03-26 (SHARYANTO)
[BUG FIXES]
- Die message from function got hidden.
0.60 2014-03-20 (SHARYANTO)
[INTERNAL]
- Avoid using _get_code_and_meta() accept in get_code() and get_meta(),
for better subclassing (I'm currently hacking on
Perinci::Access::Schemeless::DBI).
0.59 2014-03-07 (SHARYANTO)
- Skip wrapping function if already metadata tells that wrapped in
embed mode (see Dist::Zilla::Plugin::Rinci::Wrap).
0.58 2014-03-06 (SHARYANTO)
- No functional changes. Adjust to Perinci::Sub::Wrapper 0.51.
0.57 2013-12-21 (SHARYANTO)
[BUG FIXES]
- On load=0, return error on request to package that does not exist (so
that things like list => /Existing/Sub_That_Doesnt_Exist/ can fail).
0.56 2013-12-20 (SHARYANTO)
- Allow list action on parent of allowed paths (e.g. allow_paths=/a/b
then we allow list on / and /a but it will still show only the
allowed paths).
0.55 2013-11-27 (SHARYANTO)
- Allow scheme '/' in Perinci::Access::Perl (for App::riap's
convenience).
- Bugfix: Fix matching against {allow,deny}_paths &
{allow,deny}_schemes.
0.54 2013-11-27 (SHARYANTO)
[INCOMPATIBLE CHANGES]
- Now return relative URI's in list and child_metas, to be more
tree-like (preferred by App::riap).
0.53 2013-11-04 (SHARYANTO)
[REMOVED FEATURES]
- Remove disk cache because I think it's inelegant, causes stale cache
problems and security issues; for reducing startup overhead, will
count on embedded wrapping (instead of on-the-fly/dynamic wrapping)
provided by the next version of Perinci::Sub::Wrapper.
[REFACTORING]
- Move complete_arg_val implementation routine to Perinci-Sub-Complete
so it is reusable outside the context of Riap.
0.52 2013-10-03 (SHARYANTO)
- No functional changes. Avoid perl undef warning.
0.51 2013-10-03 (SHARYANTO)
- wrap cache file: check for staleness.
- wrap cache file: create legal filename for Windows (no ':').
- wrap cache file: option to output UTF-8 ('use_utf8' attribute,
currently undocumented).
0.50 2013-10-02 (SHARYANTO)
- use err().
- Add option: disk_cache (default: 0) to cache wrap result to disk.
0.49 2013-09-08 (SHARYANTO)
[BUG FIXES]
- 'meta' action returned empty orig_meta.
0.48 2013-09-08 (SHARYANTO)
- Rename distribution from Perinci-Access-InProcess to
Perinci-Access-Perl, split Perinci::Access::InProcess to ::Perl and
::Schemeless as its superclass. This clears up some things, mainly
that pl:/Foo/Bar/ must point to Foo::Bar perl package so things like
package_prefix are moved to Schemeless.
0.47 2013-09-07 (SHARYANTO)
- Update to Rinci 1.1.36 (entity_version becomes entity_v).
[BUG FIXES]
- 'list', 'info', 'actions' actions now correctly check the existence
of entity first.
- Subsequent attempt at loading a failed module ($INC{foo} is undef) is
now correctly reported as error.
0.46 2013-09-07 (SHARYANTO)
[BUG FIXES]
- 'list' action should only ignore missing modules, not compile errors.
- Fix uri parsing: /foo should mean function 'foo', not package 'foo'.
[ENHANCEMENTS]
- Add PackagePrefix subclass (proof of concept).
0.45 2013-09-05 (SHARYANTO)
[BUG FIXES]
- Fix regression: if package already exists (like 'main'), don't fail
the module loading. This broke a lot of scripts yesterday.
0.44 2013-09-04 (SHARYANTO)
- 'meta' action on '/' now works.
- 'list' action now correctly lists prefixes, e.g. if there are only
foo::bar::baz and foo::bar::qux, 'list' action on '/foo/' correctly
lists '/foo/bar/' instead of returning empty.
- Observe {allow,deny}_paths in 'list' action.
0.43 2013-08-22 (SHARYANTO)
[INCOMPATIBLE CHANGES]
- Rename option 'use_wrapped_sub' to 'wrap'.
[ENHANCEMENTS]
- Internal refactoring to make custom behavior easier to implement
(unfinished).
- Add options 'allow_paths' and 'deny_paths'.
[REMOVED FEATURES]
- Remove support for per-entity wrapping flag (via
_perinci.access.inprocess.use_wrapped_sub property) because it's
currently unused.
[ETC]
- Adjust to Perinci::Access::Base 0.29.
0.42 2013-08-13 (SHARYANTO)
- Bug fix for parse_url().
0.41 2013-08-13 (SHARYANTO)
[ENHANCEMENTS]
- Add parse_url() support.
0.40 2013-08-13 (SHARYANTO)
[REMOVED FEATURES]
- Remove dependency on Perinci::Util::get_package_meta_accessor
(removed in 0.35). Thereby also removing the $PERINCI_META_ACCESSOR
feature (this variable in a package can point to another class which
tells people how to get the Rinci metadata for said package). This
feature is not that useful: we still need to load the module first.
There are cases where we might want to lookup metadata (or even map
Riap request uri -> Perl package) from the database without loading
.pm files. Thus we will rework this class to allow that.
0.39 2012-11-02 (SHARYANTO)
[BUG FIXES]
- 'list' action didn't work (fails to list subpackages) when requested
module does not exist.
0.38 2012-11-02 (SHARYANTO)
- Add option: use_wrapped_sub (to make it possible to use call original
sub instead of wrapped version). Can also be set using
_perinci.access.inprocess.use_wrapped_sub in metadata. Currently I
don't have a need for this yet.
0.37 2012-10-31 (SHARYANTO)
- Add option: cache_size (to make it possible to disable caching).
Currently used for testing/benchmarking overhead.
- Update to Perinci::Sub::Wrapper 0.33.
0.36 2012-10-24 (SHARYANTO)
- Pass -progress special argument containing Progress::Any object to
functions which set 'progress' feature to true.
0.35 2012-08-29 (SHARYANTO)
- Pass -dry_run => 1 to tx function in dry run mode, so the function
can detect dry run mode (and, say, display messages).
0.34 2012-08-29 (SHARYANTO)
- Support '-tx_action_id' to tx function in dry run mode (Rinci
1.1.28).
0.33 2012-08-29 (SHARYANTO)
- Support 'dry_run' in call action (Riap 1.1.19).
0.32 2012-08-28 (SHARYANTO)
- Pass confirmation for actions 'undo' and 'redo' too (actually those
are the important ones).
0.31 2012-08-28 (SHARYANTO)
- Implement confirmation (Rinci 1.1.27). Pass Riap request key
'confirm' => 1 to pass '-confirm' to function (via TM).
0.30 2012-08-22 (SHARYANTO)
- Adjust to Rinci 1.1.25. No longer check transaction support of
functions (we'll just let TM do that). No longer provide
-undo_trash_dir to function to simplify things.
0.29 2012-08-16 (SHARYANTO)
- Adjust to Rinci 1.1.23 and Perinci::Tx::Manager 0.22. No longer list
Perinci::Tx::Manager as dependency. Move transaction tests to
Perinci-Tx-Manager distribution.
0.28 2012-08-10 (SHARYANTO)
- First release, split to make Perinci dist empty (that dist was a
growing mixed bag and caused headache in dependencies).