rbcli 0.3.2 → 0.3.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (54) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +12 -0
  3. data/Gemfile.lock +19 -5
  4. data/docs/404.html +9 -9
  5. data/docs/advanced/automatic_updates/index.html +30 -30
  6. data/docs/advanced/command_types/index.html +78 -78
  7. data/docs/advanced/distributed_state_locking/index.html +30 -30
  8. data/docs/advanced/hooks/index.html +42 -42
  9. data/docs/advanced/index.html +27 -27
  10. data/docs/advanced/index.xml +12 -50
  11. data/docs/advanced/interactive_commands/index.html +35 -35
  12. data/docs/advanced/logging/index.html +36 -36
  13. data/docs/advanced/remote_execution/index.html +51 -51
  14. data/docs/advanced/state_storage/index.html +34 -34
  15. data/docs/advanced/user_config_files/index.html +30 -30
  16. data/docs/categories/index.html +27 -27
  17. data/docs/categories/index.xml +3 -2
  18. data/docs/development/changelog/index.html +91 -60
  19. data/docs/development/code_of_conduct/index.html +27 -27
  20. data/docs/development/contributing/index.html +40 -40
  21. data/docs/development/index.html +27 -27
  22. data/docs/development/index.xml +6 -16
  23. data/docs/development/license/index.html +26 -26
  24. data/docs/index.html +26 -26
  25. data/docs/index.json +15 -15
  26. data/docs/index.xml +20 -90
  27. data/docs/quick_reference/index.html +54 -54
  28. data/docs/quick_reference/index.xml +3 -2
  29. data/docs/sitemap.xml +0 -1
  30. data/docs/tags/index.html +27 -27
  31. data/docs/tags/index.xml +3 -2
  32. data/docs/tutorial/10-getting_started/index.html +33 -33
  33. data/docs/tutorial/20-project_layout/index.html +55 -55
  34. data/docs/tutorial/30-your_first_command/index.html +90 -90
  35. data/docs/tutorial/40-options_parameters_and_arguments/index.html +167 -167
  36. data/docs/tutorial/50-publishing/index.html +30 -30
  37. data/docs/tutorial/index.html +27 -27
  38. data/docs/tutorial/index.xml +8 -28
  39. data/docs/whoami/index.html +28 -28
  40. data/docs/whoami/index.xml +3 -2
  41. data/docs-src/.hugo_build.lock +0 -0
  42. data/docs-src/content/development/changelog.md +20 -0
  43. data/docs-src/makesite.sh +4 -4
  44. data/lib/rbcli/engine/command.rb +1 -1
  45. data/lib/rbcli/engine/parser.rb +9 -7
  46. data/lib/rbcli/util/optimist.rb +1063 -0
  47. data/lib/rbcli/version.rb +1 -1
  48. data/lib/rbcli-tool/util.rb +1 -1
  49. data/rbcli.gemspec +7 -3
  50. data/skeletons/micro/executable +6 -1
  51. data/skeletons/mini/executable +6 -1
  52. data/skeletons/project/untitled.gemspec +4 -4
  53. metadata +9 -8
  54. data/lib/rbcli/util/trollop.rb +0 -1050
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <meta charset="utf-8">
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <meta name="generator" content="Hugo 0.88.1" />
6
+ <meta name="generator" content="Hugo 0.125.1">
7
7
  <meta name="description" content="">
8
8
 
9
9
 
@@ -12,21 +12,21 @@
12
12
  <title>Publishing Your Application :: RBCli Documentation</title>
13
13
 
14
14
 
15
- <link href="/rbcli/css/nucleus.css?1634703589" rel="stylesheet">
16
- <link href="/rbcli/css/fontawesome-all.min.css?1634703589" rel="stylesheet">
17
- <link href="/rbcli/css/hybrid.css?1634703589" rel="stylesheet">
18
- <link href="/rbcli/css/featherlight.min.css?1634703589" rel="stylesheet">
19
- <link href="/rbcli/css/perfect-scrollbar.min.css?1634703589" rel="stylesheet">
20
- <link href="/rbcli/css/auto-complete.css?1634703589" rel="stylesheet">
21
- <link href="/rbcli/css/atom-one-dark-reasonable.css?1634703589" rel="stylesheet">
22
- <link href="/rbcli/css/theme.css?1634703589" rel="stylesheet">
23
- <link href="/rbcli/css/hugo-theme.css?1634703589" rel="stylesheet">
15
+ <link href="/rbcli/css/nucleus.css?1713907739" rel="stylesheet">
16
+ <link href="/rbcli/css/fontawesome-all.min.css?1713907739" rel="stylesheet">
17
+ <link href="/rbcli/css/hybrid.css?1713907739" rel="stylesheet">
18
+ <link href="/rbcli/css/featherlight.min.css?1713907739" rel="stylesheet">
19
+ <link href="/rbcli/css/perfect-scrollbar.min.css?1713907739" rel="stylesheet">
20
+ <link href="/rbcli/css/auto-complete.css?1713907739" rel="stylesheet">
21
+ <link href="/rbcli/css/atom-one-dark-reasonable.css?1713907739" rel="stylesheet">
22
+ <link href="/rbcli/css/theme.css?1713907739" rel="stylesheet">
23
+ <link href="/rbcli/css/hugo-theme.css?1713907739" rel="stylesheet">
24
24
 
25
- <link href="/rbcli/css/theme-blue.css?1634703589" rel="stylesheet">
25
+ <link href="/rbcli/css/theme-blue.css?1713907739" rel="stylesheet">
26
26
 
27
27
 
28
28
 
29
- <script src="/rbcli/js/jquery-3.3.1.min.js?1634703589"></script>
29
+ <script src="/rbcli/js/jquery-3.3.1.min.js?1713907739"></script>
30
30
 
31
31
  <style>
32
32
  :root #header + #content > #left > #rlblock_left{
@@ -55,14 +55,14 @@
55
55
  <span data-search-clear=""><i class="fas fa-times"></i></span>
56
56
  </div>
57
57
 
58
- <script type="text/javascript" src="/rbcli/js/lunr.min.js?1634703589"></script>
59
- <script type="text/javascript" src="/rbcli/js/auto-complete.js?1634703589"></script>
58
+ <script type="text/javascript" src="/rbcli/js/lunr.min.js?1713907739"></script>
59
+ <script type="text/javascript" src="/rbcli/js/auto-complete.js?1713907739"></script>
60
60
  <script type="text/javascript">
61
61
 
62
62
  var baseurl = "https:\/\/akhoury6.github.io\/rbcli\/";
63
63
 
64
64
  </script>
65
- <script type="text/javascript" src="/rbcli/js/search.js?1634703589"></script>
65
+ <script type="text/javascript" src="/rbcli/js/search.js?1713907739"></script>
66
66
 
67
67
 
68
68
  </div>
@@ -714,10 +714,10 @@
714
714
  <p>Then, for every release, you&rsquo;ll need to update the version number in <code>config/version.rb</code>. This number is automatically used by the <code>gemspec</code> when versioning the gem in the system, and by RBCli when displaying help to the user and checking for automatic updates if you enable that feature (see <a href="/rbcli/advanced/automatic_updates/">Automatic Updates</a> for more information).</p>
715
715
  <h2 id="source-control-distribution">Source Control Distribution</h2>
716
716
  <p>With Source Control distribution your users will be cloning the source code directly from your repository, and building and installing the gem locally. Thankfully, the process is pretty simple:</p>
717
- <div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-bash" data-lang="bash">git clone &lt;your_repo_here&gt;
718
- gem build mytool.gemspec
719
- gem install mytool-*.gem
720
- </code></pre></div><p>Note that he README&rsquo;s placeholder text has these commands already listed for your users, which you can leave as instructions.</p>
717
+ <div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>git clone &lt;your_repo_here&gt;
718
+ </span></span><span style="display:flex;"><span>gem build mytool.gemspec
719
+ </span></span><span style="display:flex;"><span>gem install mytool-*.gem
720
+ </span></span></code></pre></div><p>Note that he README&rsquo;s placeholder text has these commands already listed for your users, which you can leave as instructions.</p>
721
721
  <p>When using this method, we highly recommend using a git flow where you only merge to master when you are ready to release, this way your users don&rsquo;t inadvertently download a buggy commit.</p>
722
722
  <h2 id="rubygemsorg-distribution">Rubygems.org Distribution</h2>
723
723
  <p>If you&rsquo;re distributing as a gem via Rubygems.org, you&rsquo;ll need to follow a specific release process.</p>
@@ -1164,19 +1164,19 @@ gem install mytool-*.gem
1164
1164
  <div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
1165
1165
  <div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
1166
1166
  </div>
1167
- <script src="/rbcli/js/clipboard.min.js?1634703589"></script>
1168
- <script src="/rbcli/js/perfect-scrollbar.min.js?1634703589"></script>
1169
- <script src="/rbcli/js/perfect-scrollbar.jquery.min.js?1634703589"></script>
1170
- <script src="/rbcli/js/jquery.sticky.js?1634703589"></script>
1171
- <script src="/rbcli/js/featherlight.min.js?1634703589"></script>
1172
- <script src="/rbcli/js/highlight.pack.js?1634703589"></script>
1167
+ <script src="/rbcli/js/clipboard.min.js?1713907739"></script>
1168
+ <script src="/rbcli/js/perfect-scrollbar.min.js?1713907739"></script>
1169
+ <script src="/rbcli/js/perfect-scrollbar.jquery.min.js?1713907739"></script>
1170
+ <script src="/rbcli/js/jquery.sticky.js?1713907739"></script>
1171
+ <script src="/rbcli/js/featherlight.min.js?1713907739"></script>
1172
+ <script src="/rbcli/js/highlight.pack.js?1713907739"></script>
1173
1173
  <script>hljs.initHighlightingOnLoad();</script>
1174
- <script src="/rbcli/js/modernizr.custom-3.6.0.js?1634703589"></script>
1175
- <script src="/rbcli/js/learn.js?1634703589"></script>
1176
- <script src="/rbcli/js/hugo-learn.js?1634703589"></script>
1174
+ <script src="/rbcli/js/modernizr.custom-3.6.0.js?1713907739"></script>
1175
+ <script src="/rbcli/js/learn.js?1713907739"></script>
1176
+ <script src="/rbcli/js/hugo-learn.js?1713907739"></script>
1177
1177
 
1178
- <link href="/rbcli/mermaid/mermaid.css?1634703589" rel="stylesheet" />
1179
- <script src="/rbcli/mermaid/mermaid.js?1634703589"></script>
1178
+ <link href="/rbcli/mermaid/mermaid.css?1713907739" rel="stylesheet" />
1179
+ <script src="/rbcli/mermaid/mermaid.js?1713907739"></script>
1180
1180
  <script>
1181
1181
  mermaid.initialize({ startOnLoad: true });
1182
1182
  </script>
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <meta charset="utf-8">
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <meta name="generator" content="Hugo 0.88.1" />
6
+ <meta name="generator" content="Hugo 0.125.1">
7
7
  <meta name="description" content="">
8
8
 
9
9
 
@@ -12,21 +12,21 @@
12
12
  <title>Tutorial :: RBCli Documentation</title>
13
13
 
14
14
 
15
- <link href="/rbcli/css/nucleus.css?1634703589" rel="stylesheet">
16
- <link href="/rbcli/css/fontawesome-all.min.css?1634703589" rel="stylesheet">
17
- <link href="/rbcli/css/hybrid.css?1634703589" rel="stylesheet">
18
- <link href="/rbcli/css/featherlight.min.css?1634703589" rel="stylesheet">
19
- <link href="/rbcli/css/perfect-scrollbar.min.css?1634703589" rel="stylesheet">
20
- <link href="/rbcli/css/auto-complete.css?1634703589" rel="stylesheet">
21
- <link href="/rbcli/css/atom-one-dark-reasonable.css?1634703589" rel="stylesheet">
22
- <link href="/rbcli/css/theme.css?1634703589" rel="stylesheet">
23
- <link href="/rbcli/css/hugo-theme.css?1634703589" rel="stylesheet">
15
+ <link href="/rbcli/css/nucleus.css?1713907739" rel="stylesheet">
16
+ <link href="/rbcli/css/fontawesome-all.min.css?1713907739" rel="stylesheet">
17
+ <link href="/rbcli/css/hybrid.css?1713907739" rel="stylesheet">
18
+ <link href="/rbcli/css/featherlight.min.css?1713907739" rel="stylesheet">
19
+ <link href="/rbcli/css/perfect-scrollbar.min.css?1713907739" rel="stylesheet">
20
+ <link href="/rbcli/css/auto-complete.css?1713907739" rel="stylesheet">
21
+ <link href="/rbcli/css/atom-one-dark-reasonable.css?1713907739" rel="stylesheet">
22
+ <link href="/rbcli/css/theme.css?1713907739" rel="stylesheet">
23
+ <link href="/rbcli/css/hugo-theme.css?1713907739" rel="stylesheet">
24
24
 
25
- <link href="/rbcli/css/theme-blue.css?1634703589" rel="stylesheet">
25
+ <link href="/rbcli/css/theme-blue.css?1713907739" rel="stylesheet">
26
26
 
27
27
 
28
28
 
29
- <script src="/rbcli/js/jquery-3.3.1.min.js?1634703589"></script>
29
+ <script src="/rbcli/js/jquery-3.3.1.min.js?1713907739"></script>
30
30
 
31
31
  <style>
32
32
  :root #header + #content > #left > #rlblock_left{
@@ -55,14 +55,14 @@
55
55
  <span data-search-clear=""><i class="fas fa-times"></i></span>
56
56
  </div>
57
57
 
58
- <script type="text/javascript" src="/rbcli/js/lunr.min.js?1634703589"></script>
59
- <script type="text/javascript" src="/rbcli/js/auto-complete.js?1634703589"></script>
58
+ <script type="text/javascript" src="/rbcli/js/lunr.min.js?1713907739"></script>
59
+ <script type="text/javascript" src="/rbcli/js/auto-complete.js?1713907739"></script>
60
60
  <script type="text/javascript">
61
61
 
62
62
  var baseurl = "https:\/\/akhoury6.github.io\/rbcli\/";
63
63
 
64
64
  </script>
65
- <script type="text/javascript" src="/rbcli/js/search.js?1634703589"></script>
65
+ <script type="text/javascript" src="/rbcli/js/search.js?1713907739"></script>
66
66
 
67
67
 
68
68
  </div>
@@ -105,7 +105,7 @@
105
105
 
106
106
 
107
107
  <li data-nav-id="/rbcli/tutorial/" title="Tutorial" class="dd-item
108
- parent
108
+
109
109
  active
110
110
 
111
111
  ">
@@ -1118,19 +1118,19 @@
1118
1118
  <div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
1119
1119
  <div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
1120
1120
  </div>
1121
- <script src="/rbcli/js/clipboard.min.js?1634703589"></script>
1122
- <script src="/rbcli/js/perfect-scrollbar.min.js?1634703589"></script>
1123
- <script src="/rbcli/js/perfect-scrollbar.jquery.min.js?1634703589"></script>
1124
- <script src="/rbcli/js/jquery.sticky.js?1634703589"></script>
1125
- <script src="/rbcli/js/featherlight.min.js?1634703589"></script>
1126
- <script src="/rbcli/js/highlight.pack.js?1634703589"></script>
1121
+ <script src="/rbcli/js/clipboard.min.js?1713907739"></script>
1122
+ <script src="/rbcli/js/perfect-scrollbar.min.js?1713907739"></script>
1123
+ <script src="/rbcli/js/perfect-scrollbar.jquery.min.js?1713907739"></script>
1124
+ <script src="/rbcli/js/jquery.sticky.js?1713907739"></script>
1125
+ <script src="/rbcli/js/featherlight.min.js?1713907739"></script>
1126
+ <script src="/rbcli/js/highlight.pack.js?1713907739"></script>
1127
1127
  <script>hljs.initHighlightingOnLoad();</script>
1128
- <script src="/rbcli/js/modernizr.custom-3.6.0.js?1634703589"></script>
1129
- <script src="/rbcli/js/learn.js?1634703589"></script>
1130
- <script src="/rbcli/js/hugo-learn.js?1634703589"></script>
1128
+ <script src="/rbcli/js/modernizr.custom-3.6.0.js?1713907739"></script>
1129
+ <script src="/rbcli/js/learn.js?1713907739"></script>
1130
+ <script src="/rbcli/js/hugo-learn.js?1713907739"></script>
1131
1131
 
1132
- <link href="/rbcli/mermaid/mermaid.css?1634703589" rel="stylesheet" />
1133
- <script src="/rbcli/mermaid/mermaid.js?1634703589"></script>
1132
+ <link href="/rbcli/mermaid/mermaid.css?1713907739" rel="stylesheet" />
1133
+ <script src="/rbcli/mermaid/mermaid.js?1713907739"></script>
1134
1134
  <script>
1135
1135
  mermaid.initialize({ startOnLoad: true });
1136
1136
  </script>
@@ -4,64 +4,44 @@
4
4
  <title>Tutorial on RBCli Documentation</title>
5
5
  <link>https://akhoury6.github.io/rbcli/tutorial/</link>
6
6
  <description>Recent content in Tutorial on RBCli Documentation</description>
7
- <generator>Hugo -- gohugo.io</generator>
7
+ <generator>Hugo 0.125.1</generator>
8
8
  <language>en-us</language>
9
- <lastBuildDate>Thu, 20 Jun 2019 15:08:08 -0400</lastBuildDate><atom:link href="https://akhoury6.github.io/rbcli/tutorial/index.xml" rel="self" type="application/rss+xml" />
9
+ <lastBuildDate>Thu, 20 Jun 2019 15:07:21 -0400</lastBuildDate>
10
+ <atom:link href="https://akhoury6.github.io/rbcli/tutorial/index.xml" rel="self" type="application/rss+xml" />
10
11
  <item>
11
12
  <title>Getting Started</title>
12
13
  <link>https://akhoury6.github.io/rbcli/tutorial/10-getting_started/</link>
13
14
  <pubDate>Thu, 20 Jun 2019 15:07:21 -0400</pubDate>
14
-
15
15
  <guid>https://akhoury6.github.io/rbcli/tutorial/10-getting_started/</guid>
16
- <description>Welcome to the RBCli getting started tutorial! In this tutorial we&amp;rsquo;re going to cover the basics of RBCli and get a simple application up and running. It should take you between 30-60 minutes to complete, depending on your skill level with Ruby.
17
- As you go throught the tutorial, you can either use the Next and Back buttons on the page to navigate, or use the menu directly.
18
- Supported Ruby Versions You&amp;rsquo;ll need Ruby installed before you can use RBCli.</description>
16
+ <description>Welcome to the RBCli getting started tutorial! In this tutorial we&amp;rsquo;re going to cover the basics of RBCli and get a simple application up and running. It should take you between 30-60 minutes to complete, depending on your skill level with Ruby.&#xA;As you go throught the tutorial, you can either use the Next and Back buttons on the page to navigate, or use the menu directly.&#xA;Supported Ruby Versions You&amp;rsquo;ll need Ruby installed before you can use RBCli.</description>
19
17
  </item>
20
-
21
18
  <item>
22
19
  <title>The Project Layout</title>
23
20
  <link>https://akhoury6.github.io/rbcli/tutorial/20-project_layout/</link>
24
21
  <pubDate>Thu, 20 Jun 2019 15:07:21 -0400</pubDate>
25
-
26
22
  <guid>https://akhoury6.github.io/rbcli/tutorial/20-project_layout/</guid>
27
- <description>Now we will learn about what an RBCli project looks like and how to start using it.
28
- Project Initialization Types RBCli can initialize a tool in three different modes:
29
- Project Mode (default) Mini Mode Micro Mode Project Mode If you&amp;rsquo;ve been following along with the tutorial, you&amp;rsquo;ve already seen Project Mode. An RBCli Project consists of several folders, each of which has a specific function. The RBCli framework handles loading and parsing the code automatically.</description>
23
+ <description>Now we will learn about what an RBCli project looks like and how to start using it.&#xA;Project Initialization Types RBCli can initialize a tool in three different modes:&#xA;Project Mode (default) Mini Mode Micro Mode Project Mode If you&amp;rsquo;ve been following along with the tutorial, you&amp;rsquo;ve already seen Project Mode. An RBCli Project consists of several folders, each of which has a specific function. The RBCli framework handles loading and parsing the code automatically.</description>
30
24
  </item>
31
-
32
25
  <item>
33
26
  <title>Your First Command</title>
34
27
  <link>https://akhoury6.github.io/rbcli/tutorial/30-your_first_command/</link>
35
28
  <pubDate>Thu, 20 Jun 2019 15:07:21 -0400</pubDate>
36
-
37
29
  <guid>https://akhoury6.github.io/rbcli/tutorial/30-your_first_command/</guid>
38
- <description>Creating the Command Creating the command is straightforward:
39
- rbcli command --name=list #or rbcli command -n list And there you have it! Now you can try out your command by typing:
40
- ./exe/mytool list Congrats! You should now see a generic output listing the values of several variables. We&amp;rsquo;ll get into what they mean in a bit, but first, let&amp;rsquo;s make the tool&amp;rsquo;s execution a bit easier.
41
- Now that you know your way around a project, its time to create your first command!</description>
30
+ <description>Creating the Command Creating the command is straightforward:&#xA;rbcli command --name=list #or rbcli command -n list And there you have it! Now you can try out your command by typing:&#xA;./exe/mytool list Congrats! You should now see a generic output listing the values of several variables. We&amp;rsquo;ll get into what they mean in a bit, but first, let&amp;rsquo;s make the tool&amp;rsquo;s execution a bit easier.&#xA;Now that you know your way around a project, its time to create your first command!</description>
42
31
  </item>
43
-
44
32
  <item>
45
33
  <title>Options, Parameters, and Arguments</title>
46
34
  <link>https://akhoury6.github.io/rbcli/tutorial/40-options_parameters_and_arguments/</link>
47
35
  <pubDate>Thu, 20 Jun 2019 15:07:21 -0400</pubDate>
48
-
49
36
  <guid>https://akhoury6.github.io/rbcli/tutorial/40-options_parameters_and_arguments/</guid>
50
- <description>If you&amp;rsquo;re already an experienced coder, you can jump to the last section of this document, the Simplified Reference (TLDR)
51
- Command Line Structure In the previous section, you saw two parts of the RBCli command line structure - the executable followed by the command. However, RBCli is capable of more complex interaction. The structure is as follows:
52
- toolname [options] command [parameters] argument1 argument2... Options are command line parameters such as -f, or --force.</description>
37
+ <description>If you&amp;rsquo;re already an experienced coder, you can jump to the last section of this document, the Simplified Reference (TLDR)&#xA;Command Line Structure In the previous section, you saw two parts of the RBCli command line structure - the executable followed by the command. However, RBCli is capable of more complex interaction. The structure is as follows:&#xA;toolname [options] command [parameters] argument1 argument2... Options are command line parameters such as -f, or --force.</description>
53
38
  </item>
54
-
55
39
  <item>
56
40
  <title>Publishing Your Application</title>
57
41
  <link>https://akhoury6.github.io/rbcli/tutorial/50-publishing/</link>
58
42
  <pubDate>Thu, 20 Jun 2019 15:07:21 -0400</pubDate>
59
-
60
43
  <guid>https://akhoury6.github.io/rbcli/tutorial/50-publishing/</guid>
61
- <description>RBCli creates projects designed to be easily distributed via either source control or as a gem. We&amp;rsquo;ll go over both methods.
62
- Common Tasks Regardless of where you are publishing, certain tasks need to be accomplished. Namely, preparing the gemspec and the README.
63
- In both files the items that need changing are pretty obvious &amp;ndash; you&amp;rsquo;ll need to fill out your name, email, etc, and replace the placeholder text in the README with something useful to your users.</description>
44
+ <description>RBCli creates projects designed to be easily distributed via either source control or as a gem. We&amp;rsquo;ll go over both methods.&#xA;Common Tasks Regardless of where you are publishing, certain tasks need to be accomplished. Namely, preparing the gemspec and the README.&#xA;In both files the items that need changing are pretty obvious &amp;ndash; you&amp;rsquo;ll need to fill out your name, email, etc, and replace the placeholder text in the README with something useful to your users.</description>
64
45
  </item>
65
-
66
46
  </channel>
67
47
  </rss>
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <meta charset="utf-8">
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <meta name="generator" content="Hugo 0.88.1" />
6
+ <meta name="generator" content="Hugo 0.125.1">
7
7
  <meta name="description" content="">
8
8
 
9
9
 
@@ -12,21 +12,21 @@
12
12
  <title>My Letter To You :: RBCli Documentation</title>
13
13
 
14
14
 
15
- <link href="/rbcli/css/nucleus.css?1634703589" rel="stylesheet">
16
- <link href="/rbcli/css/fontawesome-all.min.css?1634703589" rel="stylesheet">
17
- <link href="/rbcli/css/hybrid.css?1634703589" rel="stylesheet">
18
- <link href="/rbcli/css/featherlight.min.css?1634703589" rel="stylesheet">
19
- <link href="/rbcli/css/perfect-scrollbar.min.css?1634703589" rel="stylesheet">
20
- <link href="/rbcli/css/auto-complete.css?1634703589" rel="stylesheet">
21
- <link href="/rbcli/css/atom-one-dark-reasonable.css?1634703589" rel="stylesheet">
22
- <link href="/rbcli/css/theme.css?1634703589" rel="stylesheet">
23
- <link href="/rbcli/css/hugo-theme.css?1634703589" rel="stylesheet">
15
+ <link href="/rbcli/css/nucleus.css?1713907739" rel="stylesheet">
16
+ <link href="/rbcli/css/fontawesome-all.min.css?1713907739" rel="stylesheet">
17
+ <link href="/rbcli/css/hybrid.css?1713907739" rel="stylesheet">
18
+ <link href="/rbcli/css/featherlight.min.css?1713907739" rel="stylesheet">
19
+ <link href="/rbcli/css/perfect-scrollbar.min.css?1713907739" rel="stylesheet">
20
+ <link href="/rbcli/css/auto-complete.css?1713907739" rel="stylesheet">
21
+ <link href="/rbcli/css/atom-one-dark-reasonable.css?1713907739" rel="stylesheet">
22
+ <link href="/rbcli/css/theme.css?1713907739" rel="stylesheet">
23
+ <link href="/rbcli/css/hugo-theme.css?1713907739" rel="stylesheet">
24
24
 
25
- <link href="/rbcli/css/theme-blue.css?1634703589" rel="stylesheet">
25
+ <link href="/rbcli/css/theme-blue.css?1713907739" rel="stylesheet">
26
26
 
27
27
 
28
28
 
29
- <script src="/rbcli/js/jquery-3.3.1.min.js?1634703589"></script>
29
+ <script src="/rbcli/js/jquery-3.3.1.min.js?1713907739"></script>
30
30
 
31
31
  <style>
32
32
  :root #header + #content > #left > #rlblock_left{
@@ -55,14 +55,14 @@
55
55
  <span data-search-clear=""><i class="fas fa-times"></i></span>
56
56
  </div>
57
57
 
58
- <script type="text/javascript" src="/rbcli/js/lunr.min.js?1634703589"></script>
59
- <script type="text/javascript" src="/rbcli/js/auto-complete.js?1634703589"></script>
58
+ <script type="text/javascript" src="/rbcli/js/lunr.min.js?1713907739"></script>
59
+ <script type="text/javascript" src="/rbcli/js/auto-complete.js?1713907739"></script>
60
60
  <script type="text/javascript">
61
61
 
62
62
  var baseurl = "https:\/\/akhoury6.github.io\/rbcli\/";
63
63
 
64
64
  </script>
65
- <script type="text/javascript" src="/rbcli/js/search.js?1634703589"></script>
65
+ <script type="text/javascript" src="/rbcli/js/search.js?1713907739"></script>
66
66
 
67
67
 
68
68
  </div>
@@ -585,7 +585,7 @@
585
585
 
586
586
 
587
587
  <li data-nav-id="/rbcli/whoami/" title="My Letter To You" class="dd-item
588
- parent
588
+
589
589
  active
590
590
 
591
591
  ">
@@ -695,7 +695,7 @@
695
695
 
696
696
 
697
697
  <p>My Fellow Coder,</p>
698
- <p>I&rsquo;m glad to see you are interested in RBCli. I&rsquo;d like to introduce myself. My name is Andrew, and I&rsquo;ve been a technologist since 1992 when my father bought our first family computer &ndash; a 486DX2 which ran at 66Mhz (33Mhz if you turned off the &lsquo;turbo&rsquo; button) and came with MS DOS 5.0, <a href="https://en.wikipedia.org/wiki/QBasic">QBasic</a>, and a game already coded in it called <a href="https://classicreload.com/qbasic-nibbles.html">Nibbles</a> (if you care to see the code, die 5 times and don&rsquo;t play again). I didn&rsquo;t like that the game forced my name to be &ldquo;Sammy&rdquo;, and thought, &ldquo;hey, if I can see the code, can&rsquo;t I change it?&rdquo;. So I did what any annoyed child would do and learned to code so I could do just that. I&rsquo;d tell you what I changed it to, but I was so proud of myself for this simple feat that I changed it every 30 seconds and couldn&rsquo;t settle on just one name. Then I performed my first ever hack, and figured out how to go through walls without dying. All of a sudden the world seemed limitless.</p>
698
+ <p>I&rsquo;m glad to see you are interested in RBCli. I&rsquo;d like to introduce myself. My name is Andrew, and I&rsquo;ve been a technologist since 1992 when my father bought our first family computer &ndash; a 486DX2 which ran at 66Mhz (33Mhz if you turned off the &rsquo;turbo&rsquo; button) and came with MS DOS 5.0, <a href="https://en.wikipedia.org/wiki/QBasic">QBasic</a>, and a game already coded in it called <a href="https://classicreload.com/qbasic-nibbles.html">Nibbles</a> (if you care to see the code, die 5 times and don&rsquo;t play again). I didn&rsquo;t like that the game forced my name to be &ldquo;Sammy&rdquo;, and thought, &ldquo;hey, if I can see the code, can&rsquo;t I change it?&rdquo;. So I did what any annoyed child would do and learned to code so I could do just that. I&rsquo;d tell you what I changed it to, but I was so proud of myself for this simple feat that I changed it every 30 seconds and couldn&rsquo;t settle on just one name. Then I performed my first ever hack, and figured out how to go through walls without dying. All of a sudden the world seemed limitless.</p>
699
699
  <p>I was only a child at the time, but on that day I learned that every &ldquo;rule&rdquo; in computing was an artifical construct and could be changed to suit your needs. Thus began my career in tech and my obsession to change the world with it. This is why RBCli was born.</p>
700
700
  <p>RBCli started as a collection of code that I would copy-paste between projects, until one day when I wondered if I could just find a framework that suited me. I couldn&rsquo;t - in case you hadn&rsquo;t guessed - so I decided to build my own and give it to the world. I would not have accomplished even half of what I have without the open source community, and this is to be the first of hopefully many contributions back.</p>
701
701
  <p>The features in RBCli have been chosen from over 25 years of experience writing applications, building features that 3rd parties left out, managing large scale infrastructure, designing embedded systems, integrating enterprise systems, automating CI/CD, scripting my own computers, and so much more. I hope that you can find as much use out of it as I have.</p>
@@ -1133,19 +1133,19 @@
1133
1133
  <div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
1134
1134
  <div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
1135
1135
  </div>
1136
- <script src="/rbcli/js/clipboard.min.js?1634703589"></script>
1137
- <script src="/rbcli/js/perfect-scrollbar.min.js?1634703589"></script>
1138
- <script src="/rbcli/js/perfect-scrollbar.jquery.min.js?1634703589"></script>
1139
- <script src="/rbcli/js/jquery.sticky.js?1634703589"></script>
1140
- <script src="/rbcli/js/featherlight.min.js?1634703589"></script>
1141
- <script src="/rbcli/js/highlight.pack.js?1634703589"></script>
1136
+ <script src="/rbcli/js/clipboard.min.js?1713907739"></script>
1137
+ <script src="/rbcli/js/perfect-scrollbar.min.js?1713907739"></script>
1138
+ <script src="/rbcli/js/perfect-scrollbar.jquery.min.js?1713907739"></script>
1139
+ <script src="/rbcli/js/jquery.sticky.js?1713907739"></script>
1140
+ <script src="/rbcli/js/featherlight.min.js?1713907739"></script>
1141
+ <script src="/rbcli/js/highlight.pack.js?1713907739"></script>
1142
1142
  <script>hljs.initHighlightingOnLoad();</script>
1143
- <script src="/rbcli/js/modernizr.custom-3.6.0.js?1634703589"></script>
1144
- <script src="/rbcli/js/learn.js?1634703589"></script>
1145
- <script src="/rbcli/js/hugo-learn.js?1634703589"></script>
1143
+ <script src="/rbcli/js/modernizr.custom-3.6.0.js?1713907739"></script>
1144
+ <script src="/rbcli/js/learn.js?1713907739"></script>
1145
+ <script src="/rbcli/js/hugo-learn.js?1713907739"></script>
1146
1146
 
1147
- <link href="/rbcli/mermaid/mermaid.css?1634703589" rel="stylesheet" />
1148
- <script src="/rbcli/mermaid/mermaid.js?1634703589"></script>
1147
+ <link href="/rbcli/mermaid/mermaid.css?1713907739" rel="stylesheet" />
1148
+ <script src="/rbcli/mermaid/mermaid.js?1713907739"></script>
1149
1149
  <script>
1150
1150
  mermaid.initialize({ startOnLoad: true });
1151
1151
  </script>
@@ -4,8 +4,9 @@
4
4
  <title>My Letter To You on RBCli Documentation</title>
5
5
  <link>https://akhoury6.github.io/rbcli/whoami/</link>
6
6
  <description>Recent content in My Letter To You on RBCli Documentation</description>
7
- <generator>Hugo -- gohugo.io</generator>
7
+ <generator>Hugo 0.125.1</generator>
8
8
  <language>en-us</language>
9
- <lastBuildDate>Thu, 20 Jun 2019 15:46:52 -0400</lastBuildDate><atom:link href="https://akhoury6.github.io/rbcli/whoami/index.xml" rel="self" type="application/rss+xml" />
9
+ <lastBuildDate></lastBuildDate>
10
+ <atom:link href="https://akhoury6.github.io/rbcli/whoami/index.xml" rel="self" type="application/rss+xml" />
10
11
  </channel>
11
12
  </rss>
File without changes
@@ -6,6 +6,26 @@ weight: 100
6
6
  ---
7
7
 
8
8
 
9
+ ## 0.3.3 (April 24, 2024)
10
+
11
+ ### Improvements
12
+ * Tested with Ruby 3.3.0
13
+ * Updated dependencies for Ruby 3.3.0
14
+ * Updated dependnecies for Sekeleton projects
15
+ * Added a `bundler/inline` gemfile on mini and micro skeleton projects to simplify their use
16
+ * Replaced deprecated Trollop gem with its replacement, [ManageIQ/Optimist](https://github.com/ManageIQ/optimist)
17
+
18
+ ### Bugfixes
19
+ * Updated deprecated ERB call for skeleton generation to use new format
20
+
21
+ ## 0.3.2 (October 28, 2023)
22
+
23
+ ### Bugfixes
24
+
25
+ * Replaced several calls to the deprecated `.exists?` method with `.exist?` for compatibility with Ruby 3.2.0
26
+ * Updated dependencies to latest versions
27
+ * Standardized on version locking to the latest Major version of dependencies rather than the latest Minor ones
28
+
9
29
  ## 0.3.1 (October 19, 2021)
10
30
 
11
31
  ### Bugfixes
data/docs-src/makesite.sh CHANGED
@@ -10,7 +10,7 @@ DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null && pwd )"
10
10
  # Changelog
11
11
  _chlog_src="${DIR}/../CHANGELOG.md"
12
12
  _chlog_target="${DIR}/content/development/changelog.md"
13
- cat << EOF > ${_chlog_target}
13
+ cat << EOF > "${_chlog_target}"
14
14
  ---
15
15
  title: "Changelog"
16
16
  date: 2019-06-20T15:07:21-04:00
@@ -19,13 +19,13 @@ weight: 100
19
19
  ---
20
20
 
21
21
  EOF
22
- cat ${_chlog_src} | tail -n +2 >> ${_chlog_target}
22
+ cat "${_chlog_src}" | tail -n +2 >> "${_chlog_target}"
23
23
 
24
24
 
25
25
  # Quick Reference
26
26
  _qref_src="${DIR}/../README.md"
27
27
  _qref_target="${DIR}/content/quick_reference/_index.md"
28
- cat << EOF > ${_qref_target}
28
+ cat << EOF > "${_qref_target}"
29
29
  +++
30
30
  title = "Quick Reference"
31
31
  date = 2019-06-20T15:49:49-04:00
@@ -35,6 +35,6 @@ draft = false
35
35
  +++
36
36
 
37
37
  EOF
38
- sed -n '/Quick Reference/,$p' ${_qref_src} | tail -n +2 >> ${_qref_target}
38
+ sed -n '/Quick Reference/,$p' "${_qref_src}" | tail -n +2 >> "${_qref_target}"
39
39
 
40
40
  hugo -d "${DIR}/../docs"
@@ -146,7 +146,7 @@ class Rbcli::Command
146
146
  command_name = self.name.split('::')[-1].downcase
147
147
  command_desc = @data[:description]
148
148
  command_usage = @data[:usage]
149
- optx = Trollop::options do
149
+ optx = Optimist::options do
150
150
  data = Rbcli.configuration(:me)
151
151
  banner <<-EOS
152
152
  #{data[:description]}
@@ -18,9 +18,11 @@
18
18
  # For questions regarding licensing, please contact andrew@blacknex.us #
19
19
  ##################################################################################
20
20
 
21
-
22
- #TODO: Change this once the changes have been merged into trollop gem proper
23
- require 'rbcli/util/trollop'
21
+ #TODO: Pull in the Optimist gem once the required PR's have been merged:
22
+ # https://github.com/ManageIQ/optimist/pull/145
23
+ # https://github.com/ManageIQ/optimist/pull/146
24
+ # https://github.com/ManageIQ/optimist/pull/147
25
+ require 'rbcli/util/optimist'
24
26
 
25
27
  module Rbcli::Parser
26
28
 
@@ -30,7 +32,7 @@ module Rbcli::Parser
30
32
  # We show deprecation warnings before anything else, encouraging the developer to update their code.
31
33
  Rbcli::DeprecationWarning.display_warnings
32
34
 
33
- @cliopts = Trollop::options do
35
+ @cliopts = Optimist::options do
34
36
  data = Rbcli.configuration(:me)
35
37
  version "#{data[:scriptname]} version: #{data[:version]}"
36
38
  banner <<-EOS
@@ -68,7 +70,7 @@ Commands:
68
70
  elsif @cmd[0].nil?
69
71
  default_action = Rbcli.configuration(:me, :default_action) || Rbcli.configuration(:hooks, :default_action)
70
72
  if default_action.nil?
71
- Trollop::educate
73
+ Optimist::educate
72
74
  else
73
75
  default_action.call @cliopts
74
76
  end
@@ -76,7 +78,7 @@ Commands:
76
78
  @cmd << Rbcli::Command.commands[@cmd[0]].class.parseopts
77
79
 
78
80
  if (@cliopts[:remote_exec_given] and not @cliopts[:identity_given]) or (not @cliopts[:remote_exec_given] and @cliopts[:identity_given])
79
- Trollop::die 'Must use `--remote-exec` and `--identity` together.'
81
+ Optimist::die 'Must use `--remote-exec` and `--identity` together.'
80
82
  end
81
83
 
82
84
  Rbcli.configuration(:me, :pre_hook).call @cliopts unless Rbcli.configuration(:me, :pre_hook).nil?
@@ -85,7 +87,7 @@ Commands:
85
87
  Rbcli.configuration(:me, :post_hook).call @cliopts unless Rbcli.configuration(:me, :post_hook).nil?
86
88
  Rbcli.configuration(:hooks, :post_hook).call @cliopts unless Rbcli.configuration(:hooks, :post_hook).nil?
87
89
  else
88
- Trollop::die "Unknown subcommand #{@cmd[0].inspect}"
90
+ Optimist::die "Unknown subcommand #{@cmd[0].inspect}"
89
91
  end
90
92
 
91
93
  end