rbcli 0.2.1 → 0.2.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +23 -0
- data/Gemfile.lock +1 -1
- data/README.md +13 -8
- data/Rakefile +5 -5
- data/bin/console +3 -3
- data/docs-src/docs/development/contributing.md +24 -0
- data/docs-src/docs/imported/changelog.md +23 -0
- data/docs-src/docs/imported/quick_reference.md +1 -0
- data/docs/development/contributing/index.html +15 -0
- data/docs/imported/changelog/index.html +120 -18
- data/docs/search/search_index.json +38 -8
- data/docs/sitemap.xml +19 -19
- data/lib/rbcli.rb +3 -22
- data/lib/rbcli/configuration/configurate.rb +49 -98
- data/lib/rbcli/{stateful_systems/configuratestorage.rb → configuration/configurate_blocks/hooks.rb} +23 -15
- data/lib/rbcli/configuration/configurate_blocks/me.rb +122 -0
- data/lib/rbcli/configuration/configurate_blocks/storage.rb +50 -0
- data/lib/rbcli/engine/command.rb +59 -60
- data/lib/rbcli/engine/parser.rb +17 -10
- data/lib/rbcli/{autoupdate → features/autoupdate/common}/autoupdate.rb +2 -20
- data/lib/rbcli/{autoupdate → features/autoupdate}/gem_updater.rb +1 -0
- data/lib/rbcli/{autoupdate → features/autoupdate}/github_updater.rb +1 -0
- data/lib/rbcli/{logging → features}/logging.rb +19 -18
- data/lib/rbcli/{remote_exec → features}/remote_exec.rb +0 -0
- data/lib/rbcli/{scriptwrapping → features}/scriptwrapper.rb +0 -29
- data/lib/rbcli/{configuration/config.rb → features/userconfig.rb} +0 -0
- data/lib/rbcli/{stateful_systems → state_storage/common}/state_storage.rb +0 -0
- data/lib/rbcli/{stateful_systems/storagetypes → state_storage}/localstate.rb +2 -10
- data/lib/rbcli/{stateful_systems/storagetypes → state_storage}/remote_state_connectors/dynamodb.rb +0 -0
- data/lib/rbcli/{stateful_systems/storagetypes → state_storage}/remotestate_dynamodb.rb +6 -20
- data/lib/rbcli/util/deprecation_warning.rb +43 -0
- data/lib/rbcli/version.rb +1 -1
- data/rbcli.gemspec +1 -1
- data/skeletons/micro/executable +5 -1
- data/skeletons/mini/executable +8 -8
- data/skeletons/project/Rakefile +2 -2
- data/skeletons/project/hooks/default_action.rb +1 -1
- data/skeletons/project/hooks/first_run.rb +1 -1
- data/skeletons/project/hooks/post_execution.rb +1 -1
- data/skeletons/project/hooks/pre_execution.rb +1 -1
- data/skeletons/project/spec/spec_helper.rb +2 -2
- metadata +17 -14
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3c95c762e32d8b39e339da91ac4fe5955781d9ce830a470812bb43aa332544fa
|
4
|
+
data.tar.gz: 6798d59641964853ddc589207b314a8ea7f37aa10d56e4c5ec348619786d77be
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ba4a2817e0e0e5dcc737e50552edb82f818de31c035854e53f4cd4bd32c93745d6d2c7ca7af08ceabad949061e534c1cc6e8c02bc374844a20044c56b1b590c6
|
7
|
+
data.tar.gz: dd7e786652b140b17c7563d2f59e320d2d8355e1c58c3d1dda0ee884e168e2388d60ae97df6aa1c9c633ac17f910279222a99f0e1854f9ddaa3a9aafcd1a6aa7
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,28 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## 0.2.2 (Aug 22, 2018)
|
4
|
+
|
5
|
+
### Features
|
6
|
+
|
7
|
+
### Bugfixes
|
8
|
+
|
9
|
+
* Fixed a bug that caused the logger's target and level not to be configured properly via the Configurate block.
|
10
|
+
|
11
|
+
### Improvements
|
12
|
+
|
13
|
+
* Lazy-loading has been implemented in optional modules such as autoupdates, remote storage, etc. This means that if you do not enable them in the code, they will not be loaded into memory. This significantly improves loding times for applications.
|
14
|
+
* Abstraction system created for configuration. This has significantly simplified the existing codebase and makes future development easier.
|
15
|
+
* Deprecation warning system added. This allows for RBCli contributors to notify users of breaking changes that may impact their code.
|
16
|
+
* Folder structure has been simplified to ease development.
|
17
|
+
* Much of the code has been refactored.
|
18
|
+
|
19
|
+
### Deprecations/Changes
|
20
|
+
|
21
|
+
* The `Rbcli` module is now `RBCli` to better match the branding. The original `Rbcli` module will still work for this current release, with a warning, but future releases will require code changes.
|
22
|
+
* Hooks are now defined under the `RBCli.Configurate.hooks` block instead of `RBCli.Configurate.me`.
|
23
|
+
* The logger is now silent by default. To enable it, it must be configured either via the `Configurate` block or via the user's config file.
|
24
|
+
|
25
|
+
|
3
26
|
## 0.2.1 (Aug 8, 2018)
|
4
27
|
|
5
28
|
### Features
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -2,20 +2,22 @@
|
|
2
2
|
|
3
3
|
RBCli is currently in Alpha stages of development. All releases can be considered stable, though breaking changes may be made between versions.
|
4
4
|
|
5
|
-
Latest Release: v0.2.
|
5
|
+
Latest Release: v0.2.2 (Aug 22, 2018) -- See the [changelog][changelog] for complete details.
|
6
6
|
|
7
|
-
*
|
7
|
+
* Lazy loading for improved startup time
|
8
|
+
* Hooks are now defined under `Rbcli.Configurate.hooks`.
|
9
|
+
* Logger is disabled by default, cleaning up output
|
10
|
+
* Code refactor and cleanup
|
11
|
+
* Many more improvements
|
8
12
|
|
9
|
-
Previous Release: v0.2.
|
13
|
+
Previous Release: v0.2.1 (Aug 8, 2018)
|
10
14
|
|
11
|
-
*
|
12
|
-
* Official documentation created and hosted with Github Pages
|
13
|
-
* RBCli released under GPLv3
|
14
|
-
* Copyright/License notice displayed via RBCli tool with `rbcli license` in accordance with GPLv3 guidelines
|
15
|
-
* Many improvements and bugfixes
|
15
|
+
* Remote Execution Feature Added
|
16
16
|
|
17
17
|
[You can find the Official Documentation for RBCli Here.][documentation_home]
|
18
18
|
|
19
|
+
[If you want to support RBCli's development, please donate and help keep it going!][documentation_whoami]
|
20
|
+
|
19
21
|
## Introduction
|
20
22
|
|
21
23
|
As technologists today, we work with the command line a lot. We script a lot. We write tools to share with each other to make our lives easier. We even write applications to make up for missing features in the 3rd party software that we buy. Unfortunately, when writing CLI tools, this process has typically been very painful. We've been working with low-level frameworks for decades; frameworks like `getopt` (1980) and `curses` (1977). They fit their purpose well; they were both computationally lightweight for the computers of the day, and they gave engineers full control and flexibility when it came to how things were built. Over the years, we've used them to settle on several design patterns that we know work well. Patterns as to what a CLI command looks like, what a config file looks like, what remote execution looks like, and even how to use locks (mutexes, semaphores, etc) to control application flow and data atomicity. Yet we're stuck writing the same low-level code anytime we want to write our tooling. Not anymore.
|
@@ -27,6 +29,8 @@ Some of its key features include:
|
|
27
29
|
|
28
30
|
* __Simple DSL Interface__: To cut down on the amount of code that needs to be written, RBCli has a DSL that is designed to cut to the chase. This makes the work a lot less tedious.
|
29
31
|
|
32
|
+
* __Lazy Loading__: Even though RBCli is a heavyweight tool, it uses lazy loading to speed up application startup time. This means you don't have to worry about a large framework slowing your application down.
|
33
|
+
|
30
34
|
* __Multiple Levels of Parameters and Arguments__: Forget about writing parsers for command-line options, or about having to differentiate between parameters and arguments. All of that work is taken care of.
|
31
35
|
|
32
36
|
* __Config File Generation__: Easily piece together a default configuration even with declarations in different parts of the code. Then the user can generate their own configuration, and it gets stored in whatever location you'd like.
|
@@ -223,5 +227,6 @@ The gem is available as open source under the terms of the [GPLv3][license_text]
|
|
223
227
|
|
224
228
|
[documentation_home]: https://akhoury6.github.com/rbcli
|
225
229
|
[documentation_development]: https://akhoury6.github.com/rbcli/development/contributing/
|
230
|
+
[documentation_whoami]: https://akhoury6.github.io/rbcli/whoami/
|
226
231
|
[license_text]: https://github.com/akhoury6/rbcli/blob/master/LICENSE.txt
|
227
232
|
[changelog]: https://github.com/akhoury6/rbcli/blob/master/CHANGELOG.md
|
data/Rakefile
CHANGED
@@ -1,10 +1,10 @@
|
|
1
|
-
require
|
2
|
-
require
|
1
|
+
require 'bundler/gem_tasks'
|
2
|
+
require 'rake/testtask'
|
3
3
|
|
4
4
|
Rake::TestTask.new(:test) do |t|
|
5
|
-
t.libs <<
|
6
|
-
t.libs <<
|
7
|
-
t.test_files = FileList[
|
5
|
+
t.libs << 'test'
|
6
|
+
t.libs << 'lib'
|
7
|
+
t.test_files = FileList['test/**/*_test.rb']
|
8
8
|
end
|
9
9
|
|
10
10
|
task :default => :test
|
data/bin/console
CHANGED
@@ -19,8 +19,8 @@
|
|
19
19
|
# For questions regarding licensing, please contact andrew@blacknex.us #
|
20
20
|
##################################################################################
|
21
21
|
|
22
|
-
require
|
23
|
-
require
|
22
|
+
require 'bundler/setup'
|
23
|
+
require 'rbcli'
|
24
24
|
|
25
25
|
# You can add fixtures and/or initialization code here to make experimenting
|
26
26
|
# with your gem easier. You can also use a different console, if you like.
|
@@ -29,5 +29,5 @@ require "rbcli"
|
|
29
29
|
# require "pry"
|
30
30
|
# Pry.start
|
31
31
|
|
32
|
-
require
|
32
|
+
require 'irb'
|
33
33
|
IRB.start(__FILE__)
|
@@ -36,6 +36,30 @@ Also, don't forget to update the __Quick Reference Guide__ in the `README.md` fi
|
|
36
36
|
|
37
37
|
Once you've completed your edits, run the `makesite.sh` command to build the actual HTML pages automatically in the `docs` folder, from where they will be served when live.
|
38
38
|
|
39
|
+
## Deprecations
|
40
|
+
|
41
|
+
If a feature needs to be deprecated, RBCli has a built-in deprecation message feature. You can leverage it by calling the following code when a deprecated command is called:
|
42
|
+
|
43
|
+
```ruby
|
44
|
+
Rbcli::DeprecationWarning.new deprecated_command, message, version_when_code_will_be_removed
|
45
|
+
```
|
46
|
+
|
47
|
+
So, for example:
|
48
|
+
|
49
|
+
```ruby
|
50
|
+
Rbcli::DeprecationWarning.new 'Rbcli::Configurate.me--first_run', 'Please use `RBCli::Configurate.hooks` as the parent block instead.', '0.3.0'
|
51
|
+
```
|
52
|
+
|
53
|
+
will display the following message to the user, in red, any any time the application is run:
|
54
|
+
|
55
|
+
```text
|
56
|
+
DEPRECATION WRNING: The feature `Rbcli::Configurate.me--post_hook` has been deprecated. Please use `RBCli::Configurate.hooks` as the parent block instead. This feature will be removed in version 0.3.0.
|
57
|
+
```
|
58
|
+
|
59
|
+
Additionally, it will place the same line in the logs using `Rbcli.logger.warn` if logging is enabled.
|
60
|
+
|
61
|
+
If a deprecation warning has been added, please remember to mention it in the pull request so that others can update it later.
|
62
|
+
|
39
63
|
# Maintainer's Notes
|
40
64
|
|
41
65
|
To install this gem onto your local machine from source, run `bundle exec rake install`.
|
@@ -1,5 +1,28 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## 0.2.2 (Aug 22, 2018)
|
4
|
+
|
5
|
+
### Features
|
6
|
+
|
7
|
+
### Bugfixes
|
8
|
+
|
9
|
+
* Fixed a bug that caused the logger's target and level not to be configured properly via the Configurate block.
|
10
|
+
|
11
|
+
### Improvements
|
12
|
+
|
13
|
+
* Lazy-loading has been implemented in optional modules such as autoupdates, remote storage, etc. This means that if you do not enable them in the code, they will not be loaded into memory. This significantly improves loding times for applications.
|
14
|
+
* Abstraction system created for configuration. This has significantly simplified the existing codebase and makes future development easier.
|
15
|
+
* Deprecation warning system added. This allows for RBCli contributors to notify users of breaking changes that may impact their code.
|
16
|
+
* Folder structure has been simplified to ease development.
|
17
|
+
* Much of the code has been refactored.
|
18
|
+
|
19
|
+
### Deprecations/Changes
|
20
|
+
|
21
|
+
* The `Rbcli` module is now `RBCli` to better match the branding. The original `Rbcli` module will still work for this current release, with a warning, but future releases will require code changes.
|
22
|
+
* Hooks are now defined under the `RBCli.Configurate.hooks` block instead of `RBCli.Configurate.me`.
|
23
|
+
* The logger is now silent by default. To enable it, it must be configured either via the `Configurate` block or via the user's config file.
|
24
|
+
|
25
|
+
|
3
26
|
## 0.2.1 (Aug 8, 2018)
|
4
27
|
|
5
28
|
### Features
|
@@ -168,5 +168,6 @@ The gem is available as open source under the terms of the [GPLv3][license_text]
|
|
168
168
|
|
169
169
|
[documentation_home]: https://akhoury6.github.com/rbcli
|
170
170
|
[documentation_development]: https://akhoury6.github.com/rbcli/development/contributing/
|
171
|
+
[documentation_whoami]: https://akhoury6.github.io/rbcli/whoami/
|
171
172
|
[license_text]: https://github.com/akhoury6/rbcli/blob/master/LICENSE.txt
|
172
173
|
[changelog]: https://github.com/akhoury6/rbcli/blob/master/CHANGELOG.md
|
@@ -659,6 +659,21 @@
|
|
659
659
|
|
660
660
|
<p>Also, don't forget to update the <strong>Quick Reference Guide</strong> in the <code>README.md</code> file (the main project one) with information about your changes.</p>
|
661
661
|
<p>Once you've completed your edits, run the <code>makesite.sh</code> command to build the actual HTML pages automatically in the <code>docs</code> folder, from where they will be served when live.</p>
|
662
|
+
<h2 id="deprecations">Deprecations</h2>
|
663
|
+
<p>If a feature needs to be deprecated, RBCli has a built-in deprecation message feature. You can leverage it by calling the following code when a deprecated command is called:</p>
|
664
|
+
<pre><code class="ruby">Rbcli::DeprecationWarning.new deprecated_command, message, version_when_code_will_be_removed
|
665
|
+
</code></pre>
|
666
|
+
|
667
|
+
<p>So, for example:</p>
|
668
|
+
<pre><code class="ruby">Rbcli::DeprecationWarning.new 'Rbcli::Configurate.me--first_run', 'Please use `RBCli::Configurate.hooks` as the parent block instead.', '0.3.0'
|
669
|
+
</code></pre>
|
670
|
+
|
671
|
+
<p>will display the following message to the user, in red, any any time the application is run:</p>
|
672
|
+
<pre><code class="text">DEPRECATION WRNING: The feature `Rbcli::Configurate.me--post_hook` has been deprecated. Please use `RBCli::Configurate.hooks` as the parent block instead. This feature will be removed in version 0.3.0.
|
673
|
+
</code></pre>
|
674
|
+
|
675
|
+
<p>Additionally, it will place the same line in the logs using <code>Rbcli.logger.warn</code> if logging is enabled.</p>
|
676
|
+
<p>If a deprecation warning has been added, please remember to mention it in the pull request so that others can update it later.</p>
|
662
677
|
<h1 id="maintainers-notes">Maintainer's Notes</h1>
|
663
678
|
<p>To install this gem onto your local machine from source, run <code>bundle exec rake install</code>.</p>
|
664
679
|
<p>To release a new version, follow theese steps:</p>
|
@@ -602,8 +602,8 @@
|
|
602
602
|
<ul class="md-nav__list" data-md-scrollfix>
|
603
603
|
|
604
604
|
<li class="md-nav__item">
|
605
|
-
<a href="#
|
606
|
-
0.2.
|
605
|
+
<a href="#022-aug-22-2018" title="0.2.2 (Aug 22, 2018)" class="md-nav__link">
|
606
|
+
0.2.2 (Aug 22, 2018)
|
607
607
|
</a>
|
608
608
|
|
609
609
|
<nav class="md-nav">
|
@@ -621,6 +621,20 @@
|
|
621
621
|
Bugfixes
|
622
622
|
</a>
|
623
623
|
|
624
|
+
</li>
|
625
|
+
|
626
|
+
<li class="md-nav__item">
|
627
|
+
<a href="#improvements" title="Improvements" class="md-nav__link">
|
628
|
+
Improvements
|
629
|
+
</a>
|
630
|
+
|
631
|
+
</li>
|
632
|
+
|
633
|
+
<li class="md-nav__item">
|
634
|
+
<a href="#deprecationschanges" title="Deprecations/Changes" class="md-nav__link">
|
635
|
+
Deprecations/Changes
|
636
|
+
</a>
|
637
|
+
|
624
638
|
</li>
|
625
639
|
|
626
640
|
</ul>
|
@@ -629,8 +643,8 @@
|
|
629
643
|
</li>
|
630
644
|
|
631
645
|
<li class="md-nav__item">
|
632
|
-
<a href="#
|
633
|
-
0.2.
|
646
|
+
<a href="#021-aug-8-2018" title="0.2.1 (Aug 8, 2018)" class="md-nav__link">
|
647
|
+
0.2.1 (Aug 8, 2018)
|
634
648
|
</a>
|
635
649
|
|
636
650
|
<nav class="md-nav">
|
@@ -648,17 +662,44 @@
|
|
648
662
|
Bugfixes
|
649
663
|
</a>
|
650
664
|
|
665
|
+
</li>
|
666
|
+
|
667
|
+
</ul>
|
668
|
+
</nav>
|
669
|
+
|
670
|
+
</li>
|
671
|
+
|
672
|
+
<li class="md-nav__item">
|
673
|
+
<a href="#020-aug-5-2018" title="0.2.0 (Aug 5, 2018)" class="md-nav__link">
|
674
|
+
0.2.0 (Aug 5, 2018)
|
675
|
+
</a>
|
676
|
+
|
677
|
+
<nav class="md-nav">
|
678
|
+
<ul class="md-nav__list">
|
679
|
+
|
680
|
+
<li class="md-nav__item">
|
681
|
+
<a href="#features_2" title="Features" class="md-nav__link">
|
682
|
+
Features
|
683
|
+
</a>
|
684
|
+
|
685
|
+
</li>
|
686
|
+
|
687
|
+
<li class="md-nav__item">
|
688
|
+
<a href="#bugfixes_2" title="Bugfixes" class="md-nav__link">
|
689
|
+
Bugfixes
|
690
|
+
</a>
|
691
|
+
|
651
692
|
</li>
|
652
693
|
|
653
694
|
<li class="md-nav__item">
|
654
|
-
<a href="#
|
695
|
+
<a href="#improvements_1" title="Improvements" class="md-nav__link">
|
655
696
|
Improvements
|
656
697
|
</a>
|
657
698
|
|
658
699
|
</li>
|
659
700
|
|
660
701
|
<li class="md-nav__item">
|
661
|
-
<a href="#
|
702
|
+
<a href="#deprecationschanges_1" title="Deprecations/Changes" class="md-nav__link">
|
662
703
|
Deprecations/Changes
|
663
704
|
</a>
|
664
705
|
|
@@ -718,8 +759,8 @@
|
|
718
759
|
<ul class="md-nav__list" data-md-scrollfix>
|
719
760
|
|
720
761
|
<li class="md-nav__item">
|
721
|
-
<a href="#
|
722
|
-
0.2.
|
762
|
+
<a href="#022-aug-22-2018" title="0.2.2 (Aug 22, 2018)" class="md-nav__link">
|
763
|
+
0.2.2 (Aug 22, 2018)
|
723
764
|
</a>
|
724
765
|
|
725
766
|
<nav class="md-nav">
|
@@ -737,6 +778,47 @@
|
|
737
778
|
Bugfixes
|
738
779
|
</a>
|
739
780
|
|
781
|
+
</li>
|
782
|
+
|
783
|
+
<li class="md-nav__item">
|
784
|
+
<a href="#improvements" title="Improvements" class="md-nav__link">
|
785
|
+
Improvements
|
786
|
+
</a>
|
787
|
+
|
788
|
+
</li>
|
789
|
+
|
790
|
+
<li class="md-nav__item">
|
791
|
+
<a href="#deprecationschanges" title="Deprecations/Changes" class="md-nav__link">
|
792
|
+
Deprecations/Changes
|
793
|
+
</a>
|
794
|
+
|
795
|
+
</li>
|
796
|
+
|
797
|
+
</ul>
|
798
|
+
</nav>
|
799
|
+
|
800
|
+
</li>
|
801
|
+
|
802
|
+
<li class="md-nav__item">
|
803
|
+
<a href="#021-aug-8-2018" title="0.2.1 (Aug 8, 2018)" class="md-nav__link">
|
804
|
+
0.2.1 (Aug 8, 2018)
|
805
|
+
</a>
|
806
|
+
|
807
|
+
<nav class="md-nav">
|
808
|
+
<ul class="md-nav__list">
|
809
|
+
|
810
|
+
<li class="md-nav__item">
|
811
|
+
<a href="#features_1" title="Features" class="md-nav__link">
|
812
|
+
Features
|
813
|
+
</a>
|
814
|
+
|
815
|
+
</li>
|
816
|
+
|
817
|
+
<li class="md-nav__item">
|
818
|
+
<a href="#bugfixes_1" title="Bugfixes" class="md-nav__link">
|
819
|
+
Bugfixes
|
820
|
+
</a>
|
821
|
+
|
740
822
|
</li>
|
741
823
|
|
742
824
|
</ul>
|
@@ -753,28 +835,28 @@
|
|
753
835
|
<ul class="md-nav__list">
|
754
836
|
|
755
837
|
<li class="md-nav__item">
|
756
|
-
<a href="#
|
838
|
+
<a href="#features_2" title="Features" class="md-nav__link">
|
757
839
|
Features
|
758
840
|
</a>
|
759
841
|
|
760
842
|
</li>
|
761
843
|
|
762
844
|
<li class="md-nav__item">
|
763
|
-
<a href="#
|
845
|
+
<a href="#bugfixes_2" title="Bugfixes" class="md-nav__link">
|
764
846
|
Bugfixes
|
765
847
|
</a>
|
766
848
|
|
767
849
|
</li>
|
768
850
|
|
769
851
|
<li class="md-nav__item">
|
770
|
-
<a href="#
|
852
|
+
<a href="#improvements_1" title="Improvements" class="md-nav__link">
|
771
853
|
Improvements
|
772
854
|
</a>
|
773
855
|
|
774
856
|
</li>
|
775
857
|
|
776
858
|
<li class="md-nav__item">
|
777
|
-
<a href="#
|
859
|
+
<a href="#deprecationschanges_1" title="Deprecations/Changes" class="md-nav__link">
|
778
860
|
Deprecations/Changes
|
779
861
|
</a>
|
780
862
|
|
@@ -803,30 +885,50 @@
|
|
803
885
|
|
804
886
|
|
805
887
|
<h1 id="changelog">Changelog</h1>
|
806
|
-
<h2 id="
|
888
|
+
<h2 id="022-aug-22-2018">0.2.2 (Aug 22, 2018)</h2>
|
807
889
|
<h3 id="features">Features</h3>
|
890
|
+
<h3 id="bugfixes">Bugfixes</h3>
|
891
|
+
<ul>
|
892
|
+
<li>Fixed a bug that caused the logger's target and level not to be configured properly via the Configurate block.</li>
|
893
|
+
</ul>
|
894
|
+
<h3 id="improvements">Improvements</h3>
|
895
|
+
<ul>
|
896
|
+
<li>Lazy-loading has been implemented in optional modules such as autoupdates, remote storage, etc. This means that if you do not enable them in the code, they will not be loaded into memory. This significantly improves loding times for applications.</li>
|
897
|
+
<li>Abstraction system created for configuration. This has significantly simplified the existing codebase and makes future development easier.</li>
|
898
|
+
<li>Deprecation warning system added. This allows for RBCli contributors to notify users of breaking changes that may impact their code.</li>
|
899
|
+
<li>Folder structure has been simplified to ease development.</li>
|
900
|
+
<li>Much of the code has been refactored.</li>
|
901
|
+
</ul>
|
902
|
+
<h3 id="deprecationschanges">Deprecations/Changes</h3>
|
903
|
+
<ul>
|
904
|
+
<li>The <code>Rbcli</code> module is now <code>RBCli</code> to better match the branding. The original <code>Rbcli</code> module will still work for this current release, with a warning, but future releases will require code changes. </li>
|
905
|
+
<li>Hooks are now defined under the <code>RBCli.Configurate.hooks</code> block instead of <code>RBCli.Configurate.me</code>.</li>
|
906
|
+
<li>The logger is now silent by default. To enable it, it must be configured either via the <code>Configurate</code> block or via the user's config file.</li>
|
907
|
+
</ul>
|
908
|
+
<h2 id="021-aug-8-2018">0.2.1 (Aug 8, 2018)</h2>
|
909
|
+
<h3 id="features_1">Features</h3>
|
808
910
|
<ul>
|
809
911
|
<li>Remote Execution added for Script and External commands</li>
|
810
912
|
</ul>
|
811
|
-
<h3 id="
|
913
|
+
<h3 id="bugfixes_1">Bugfixes</h3>
|
812
914
|
<ul>
|
813
915
|
<li>Fixed a bug that caused RBCli to crash if a direct path mode script's environment variables were declared as symbols</li>
|
814
916
|
</ul>
|
815
917
|
<h2 id="020-aug-5-2018">0.2.0 (Aug 5, 2018)</h2>
|
816
|
-
<h3 id="
|
918
|
+
<h3 id="features_2">Features</h3>
|
817
919
|
<ul>
|
818
920
|
<li>CLI tool Autoupdate Enabled; when an upgrade to RBCli is detected, the RBCli CLI tool will notify the developer.</li>
|
819
921
|
<li>Official documentation created and hosted with Github Pages</li>
|
820
922
|
<li>RBCli released under GPLv3</li>
|
821
923
|
<li>Copyright/License notice displayed via RBCli tool with <code>rbcli license</code> in accordance with GPLv3 guidelines</li>
|
822
924
|
</ul>
|
823
|
-
<h3 id="
|
925
|
+
<h3 id="bugfixes_2">Bugfixes</h3>
|
824
926
|
<ul>
|
825
927
|
<li>Fixed version number loading for projects</li>
|
826
928
|
<li>Cleaned up command usage help output</li>
|
827
929
|
<li>Fixed script and external command generation</li>
|
828
930
|
</ul>
|
829
|
-
<h3 id="
|
931
|
+
<h3 id="improvements_1">Improvements</h3>
|
830
932
|
<ul>
|
831
933
|
<li>A quick reference guide can now be found in README.md</li>
|
832
934
|
<li>Autoupdate feature now allows supplying a custom message</li>
|
@@ -837,7 +939,7 @@
|
|
837
939
|
<li>Options and Parameters now allow specifying the letter to be used for the short version, or to disable it altogether</li>
|
838
940
|
<li>Userspace config can now be disabled by setting the path to nil or removing the declaration</li>
|
839
941
|
</ul>
|
840
|
-
<h3 id="
|
942
|
+
<h3 id="deprecationschanges_1">Deprecations/Changes</h3>
|
841
943
|
<ul>
|
842
944
|
<li>Removed deprecated and broken examples from the examples folder</li>
|
843
945
|
</ul>
|