The Roadmap of Sparrow6 project development.
- Perl/Bash tasks
- test.pl6 - embedded test support ( aka m10 - METEN minimalistic embedded test engine )
- multiroot story support ( ability to run multi root stories )
- ignore_story_err implementation
- set_stdout implementation
- ignore_error() instead of ignore_story_err()
- implement cwd attribute
- implement purge-cache
- Add self!set-sparrow-root(); to Sparrow6::SparrowHub::API constructor
- s6 - install/search/list plugin
- freeze SparrowHub index for Sparrow/Perl5, disable upload action
- read config support (set-conf/conf/SP6_CONF)
- sudo support
- Implement os() function
- Rewrite resources/sparrow6common.pm to Perl6
- Port Sparrowdo::DSL to Sparrow6::DSL
- Sparrowdo - convert outthentic tests to regular tests
- Sparrowdo - support for config
- Sparrow6::Task::Runner::Api story => task renaming
- Sparrowdo copy local files
- Regexp interpolation
- Sequences, Ranges, Withins
- Streams for Sequences, Ranges and Withins
- Handle comments inside code/generators correctly
- Port Otthentic::DSL tests to Sparrow6
- Don't allow nested contexts
- Task states ( ability to exchange data between tasks - implimented for Perl )
- Ruby support
- Python support
- Document Sparrow6::Task::Check
- S6 -
--repo-init
command - Document task states
- Ruby plugins, bundle install test
- Rename sparrow.index to index
- module_run added
- Powershell support
- Renaming: suite.yaml => config.yaml
- Renaming: story* => task*
- Renaming: story => task
- Renaming: story.check => task.check
- Rewrite Sparrow client to s6 ( Sparrow::S6 )
- Switch Tomtit to Updated Sparrowdo version ( github master branch )
- Switch Sparrowdo to Updated Sparrowdo version ( github master branch )
- SparrowHub reference removed from docs
- modules/ => tasks/ renaming
- ignore_task_err => ignore_task_error renaming
- story_run => task_run renaming
- story_var => task_var renaming
- Consider lightweight SparrowHub alternative ( Azure free host, domain ) - http://repo.southcentralus.cloudapp.azure.com
- Create information on SparrowHub retirement - reddit
- s6 cli module-run added
- Documenting repo.southcentralus.cloudapp.azure.com
- Perl6 support ( after renaming )
- Args stringification
- Reconsider Sparrowdo bootstrap ( need to remove some packages from there - git, perl ? )
- target_os() => os() # implemented but should be documented
- meta.txt => task.txt (???)
- sparrow.json => sparrow6.json (?)
These features are almost done, just list them here
- Task states ( ability to exchange data between tasks )
- config.pl6 support (???)
- m10
streams
# streams presented as a Hash ( need to document )streams_arrays
# streams presented as an Array ( need to document )dump_streams
( implemeted for Perl, need to document )note:
expressions ( done, need to document )- m10 ( need to add more helpers )
- Low priority - document Sparrow6::Task::Runner Class
- Low priority - document m10 feature ( METEN - Minimalistic Embedded Testing Engine )
- Low priority -
s6 --install
install plugin without plugin name ( read data from sparrow.json in CWD )
- hook set_stdout gets merged with task stdout in ( implimented, need to document )
- task check is not triggered if there is no task ( implimented, need to document ) - breaking changes
- Sparrowdo - Sparrow6::DSL::Assert - workaround for
input_param
method - Sparrowdo - support for target_host
- Sparrowdo - cwd cli support ( do we need it? )
- Sparrowdo - vagrant support ( do we need it ? )
- Sparrowdo - git ( Sparrlets support, do we need it ? )
- Sparrowdo -
var=name=value
command line support (done via --tags)
- Sparrowdo -
module_run
,task_run
cli options support - Deprecate set_stdout (???), hook stdout should contribute to task stdout (???)
- Don't allow generators/codes if check failures (???)
- Handle code failures in task checks (???)
- Impliment cwd parameter for Sparrow6 tasks
- Use api/v2 instead of api/v1
- meta.txt support
- Supporting outthentic messages
- Color/nocolor output
- Dry run support (??? is it possible with Sparrow6? I doubt)
- suite.json config support
- Port existed Sparrowdo:: Modules to Sparrow6
- Adjust existing Sparrow plugins ( documentation fixes, compatibility with Sparrow6 core )
- Plugins - fix Perl5 generators as Array refs
- Write tests for Ruby common libraries - $task-dir/common.rb $root-dir/common.rb
- Write tests for Powershell streams support
- s6 cli - save / restore tasks
- Task descriptions (task.txt)
- dump_streams() implimentation for Ruby, Python, Powershell
- Windows support ( run stories, run hooks )
- Catch stderr for hooks/stories (?)
- Don't strip comments from one-line code and generator expressions
- Switch Sparky to Updated Sparrowdo version ( done partly, need to check )
- Port Sparrowform to Sparrow6
- Make Old Sparrowhub plugins compatible with Sparrow6
- truncating to the
match_l
is removed, we reports check results as is, even for really long matched strings (examples/match-length.pl6) :blank
is deprecated, you should use regexp:^^ \s* $$
insteadsuite.ini
,suite.json
are not supportedstory.pm
files are not supported- task recursive execution is not supported
outthentic_die
,outthentic_exit
functions are not supported- old reports formats ("production, default, concise") are not supported
- private plugins supports dropped in favor of private repositories