Revision history for Perl extension Metabrik.
1.11 Sun Nov 22 17:46:43 CET 2015
- FEATURE: core::shell: auto prefix by run if entered command is a used Brik
example: perl::module install Class::Gomor
is equivalent to: run perl::module install Class::Gomor
- FEATURE: Metabrik: brik_author and brik_license Commands and Properties
- FEATURE: Metabrik: auto tagging of Briks based on Repository, Category and Name
- FEATURE: Metabrik: optional_modules and optional_binaries Properties.
Also added brik_has_binary and brik_has_module Commands.
- new: core::context: get_used Command to return a reference to a used Brik
- new: brik::search: command Command to search a Brik by existing Commands
- bugfix: shell::script: allow blank lines and comments
- bugfix: core::shell: correctly stop a run Command on SIGINT
- bugfix: Metabrik: return error and not info on bad usage for some brik_has_* Commands
- bugfix: Metabrik: correctly call brik_fini on core::context exiting
1.10 Tue Oct 27 20:13:36 CET 2015
- FEATURE: core::context: allows to pass complex structs arguments to run and set Commands
Example: run network::arp scan $info->{subnet}
- FEATURE: core::context: allows also to execute Perl code within an Argument of a
run Command
Example: run client::dns ptr_lookup "[ map { @$_ } values %$RUN ]"
- FEATURE: core::shell: allows to complete aliases (can be disabled via
aliases_completion Attribute
- FEATURE: shell::command: use_sudo Attribute to launch sudo on executing external command
- FEATURE: shell::command: file globbing enabled with capture Command
- UPDATE: moved attributes_default() from brik_use_properties to brik_properties when
there is no need to use $self. It allows instanciated Attributes inheritage to work.
- UPDATE: shell::command: do not print STDERR when using capture Command when there is no
STDERR string captured.
- new: shell::command: execute Command to use capture_mode Attribute to launch either
capture or system Command
- bugfix: core::context: save_state to use Metabrik brik_attributes Command to correctly
retrieve all Brik Attributes even those inherited
- bugfix: core::shell: display error on chdir() failure
- bugfix: core::shell: escapes " character when executing a multiline Perl/Metabrik Code
example:
my $test = 'root'
for (0..1) {
'run shell::command system "ls /$test"'
}
- bugfix: Metabrik: error checking within new_from_brik_init Command
- bugfix: Metabrik: logging correctly on class calls to _log_*()
1.09 N/A
- FEATURE: core::shell/core::context: supports passing Perl code directly as Commands
Arguments. Example: run database::sqlite create MyTable "[ qw(field1 field2) ]"
- RENAME: core::shell: help_show_brik_attributes => help_show_base_attributes
- RENAME: core::shell: help_show_brik_commands => help_show_base_commands
- RENAME: core::shell: comp_show_brik_attributes => comp_show_base_attributes
- RENAME: core::shell: comp_show_brik_commands => comp_show_base_commands
- UPDATE: core::shell: rework of help/completion scheme
- UPDATE: core::shell: help Command rewritten to show help for Metabrik only (not Term:Shell)
- bugfix: core::shell: use unique match to run Commands
- bugfix: shell::command: correctly check return value from system Command for errors
- new: core::shell: get_help/comp_attributes and get_help/comp_commands Commands
- new: Metabrik: brik_base_attributes, brik_inherited_attributes, brik_own_attributes Commands
- new: Metabrik: brik_base_commands, brik_inherited_commands, brik_own_commands Commands
1.08 Thu Mar 19 06:48:34 CET 2015
- FEATURE: core::shell: run executable commands found in PATH through system Command
- UPDATE: shell::command: now use IPC::Run3 to capture shell commands output
- update: shell::command: system Command now returns $? on success
- update: Metabrik: display every missing items from brik_require_*_check() before erroring
- update: new dependance on IPC::Run3
1.07 Sun Mar 8 17:52:37 CET 2015
- bugfix: shell::history: correctly writes $* variables when calling history Commands
- new: shell::rc: create an alias to make it easy to switch to root from Shell
- new: brik::search and perl::module Briks integrated in main distribution
- remove: no more metabrik-cpanm, enforce use of standard cpanm
1.06 Fri Feb 27 07:17:59 CET 2015
- bugfix: shell::command: go trough PATH to find a cmd to run (like less PAGER)
- bugfix: core::shell: on SIGINT handling, now allows to break multiline and run Commands
- bugfix: core::shell: allow user to get out of multiline mode by hitting Ctrl+C
- bugfix: core::shell: better management of Metabrik Commands in multiline mode
=> you can put Metabrik Commands within single quotes anywhere
- update: shell::script: load Command can take an optional file parameter
- update: metabrik, shell::rc/script, core::shell: easier handling of rc file loading
- new: metabrik: --script-rc argument to load a specific rc file for scripts
1.05 Tue Feb 10 08:01:53 CET 2015
- FEATURE: core::shell: multiline mode do not require lines to end with `\' anymore
- FEATURE: core::shell: Metabrik commands are directly translated to Perl code
=> Note: no alias support for now, only set, get, run and use are handled
- bugfix: shell::command: check for error code from `` call
- bugfix: Metabrik: do not override default Attributes with brik_use_properties
if already set by brik_properties
- bugfix: Metabrik: correctly prints help Command details when overriden by subclass
- new: Metabrik: brik_preinit() creates a datadir directory per Brik
if datadir property exists.
- update: Metabrik: default directory is set to $HOME/metabrik i/o /tmp
1.04 Sun Jan 4 13:07:56 CET 2015
- bugfix: core::context: don't overwrite $RUN when run Command fails
- bugfix: core::shell: help Command must not overwrite $RUN variable
- bugfix: core::log: error Command must return undef, this is the error status
- new: Metabrik: new_from_brik_init() base method
- copyright: update to 2015
1.03 Sat Dec 20 17:48:44 CET 2014
- bugfix: shell::script: return proper values from run cmds
- bugfix: shell::script: disable SIGINT when running a script
- update: core::shell: always complete Briks on use, even when Brik is already used
- new: core::global: exit_on_sigint Attribute, for use in scripts
- new: core::shell: help_show_inherited and comp_show_inherited Attributes to
respectively show inherited Attributes on help Commands and show inherited
Attributes when using completion
- new: bin/metabrik: will load .metabrik_script_rc (if exists) when executing a script
1.02 Sun Nov 30 12:28:07 CET 2014
- bugfix: bin/metabrik: document --script option
- bugfix: core::context: brik_init on first run only when it is not a base class Command
- new: metabrik: new_from_brik() method
1.01 Sat Nov 22 17:05:46 CET 2014
- UPDATE: brik_init: sets init_done Attribute only on success, must be called by subclass at the end
- bugfix: metabrik: fix inheritance of Briks properties over class hierarchy, like setting default Attributes
- bugfix: core::context: correctly stops run Commands in case brik_init has failed
- bugfix: core::context: fix save_state and restore_state Commands return value on success
- bugfix: core::shell: correctly handle current working directory
- new: core::shell: pwd Command
1.00 Sun Nov 16 17:07:12 CET 2014
- first public release