planter-cli 3.0.1 → 3.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (104) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.gitmodules +3 -0
  4. data/CHANGELOG.md +10 -0
  5. data/README.md +5 -3
  6. data/bin/plant +1 -1
  7. data/docker/Dockerfile +2 -4
  8. data/docker/Dockerfile-2.6 +3 -5
  9. data/docker/Dockerfile-2.7 +2 -4
  10. data/docker/Dockerfile-3.0 +2 -3
  11. data/docker/Dockerfile-3.3 +11 -0
  12. data/docker/sources.list +11 -0
  13. data/lib/planter/filelist.rb +5 -4
  14. data/lib/planter/plant.rb +3 -3
  15. data/lib/planter/prompt.rb +5 -5
  16. data/lib/planter/string.rb +22 -0
  17. data/lib/planter/tag.rb +39 -2
  18. data/lib/planter/version.rb +1 -1
  19. data/lib/planter.rb +30 -17
  20. data/lib/tty-spinner/.editorconfig +9 -0
  21. data/lib/tty-spinner/.github/FUNDING.yml +1 -0
  22. data/lib/tty-spinner/.github/ISSUE_TEMPLATE/BUG_REPORT.md +31 -0
  23. data/lib/tty-spinner/.github/ISSUE_TEMPLATE/FEATURE_REQUEST.md +23 -0
  24. data/lib/tty-spinner/.github/ISSUE_TEMPLATE/config.yml +5 -0
  25. data/lib/tty-spinner/.github/PULL_REQUEST_TEMPLATE.md +19 -0
  26. data/lib/tty-spinner/.github/workflows/ci.yml +59 -0
  27. data/lib/tty-spinner/.gitignore +14 -0
  28. data/lib/tty-spinner/.rspec +2 -0
  29. data/lib/tty-spinner/.rubocop.yml +78 -0
  30. data/lib/tty-spinner/CHANGELOG.md +151 -0
  31. data/lib/tty-spinner/CODE_OF_CONDUCT.md +132 -0
  32. data/lib/tty-spinner/Gemfile +17 -0
  33. data/lib/tty-spinner/LICENSE.txt +22 -0
  34. data/lib/tty-spinner/README.md +581 -0
  35. data/lib/tty-spinner/Rakefile +10 -0
  36. data/lib/tty-spinner/appveyor.yml +33 -0
  37. data/lib/tty-spinner/bin/console +14 -0
  38. data/lib/tty-spinner/bin/setup +8 -0
  39. data/lib/tty-spinner/demo.gif +0 -0
  40. data/lib/tty-spinner/examples/auto_spin.rb +10 -0
  41. data/lib/tty-spinner/examples/basic.rb +10 -0
  42. data/lib/tty-spinner/examples/clear.rb +11 -0
  43. data/lib/tty-spinner/examples/color.rb +14 -0
  44. data/lib/tty-spinner/examples/error.rb +11 -0
  45. data/lib/tty-spinner/examples/formats.rb +13 -0
  46. data/lib/tty-spinner/examples/hide_cursor.rb +14 -0
  47. data/lib/tty-spinner/examples/log.rb +13 -0
  48. data/lib/tty-spinner/examples/multi/basic.rb +15 -0
  49. data/lib/tty-spinner/examples/multi/basic_top_level.rb +15 -0
  50. data/lib/tty-spinner/examples/multi/custom_style.rb +28 -0
  51. data/lib/tty-spinner/examples/multi/files.rb +16 -0
  52. data/lib/tty-spinner/examples/multi/jobs.rb +11 -0
  53. data/lib/tty-spinner/examples/multi/multi.rb +19 -0
  54. data/lib/tty-spinner/examples/multi/multi_top_level.rb +20 -0
  55. data/lib/tty-spinner/examples/multi/pause.rb +28 -0
  56. data/lib/tty-spinner/examples/multi/threaded.rb +30 -0
  57. data/lib/tty-spinner/examples/pause.rb +24 -0
  58. data/lib/tty-spinner/examples/run.rb +20 -0
  59. data/lib/tty-spinner/examples/success.rb +11 -0
  60. data/lib/tty-spinner/examples/threaded.rb +13 -0
  61. data/lib/tty-spinner/examples/update.rb +13 -0
  62. data/lib/tty-spinner/lib/tty/spinner/formats.rb +274 -0
  63. data/lib/tty-spinner/lib/tty/spinner/multi.rb +352 -0
  64. data/lib/tty-spinner/lib/tty/spinner/version.rb +7 -0
  65. data/lib/tty-spinner/lib/tty/spinner.rb +604 -0
  66. data/lib/tty-spinner/lib/tty-spinner.rb +2 -0
  67. data/lib/tty-spinner/spec/spec_helper.rb +52 -0
  68. data/lib/tty-spinner/spec/unit/auto_spin_spec.rb +25 -0
  69. data/lib/tty-spinner/spec/unit/clear_spec.rb +16 -0
  70. data/lib/tty-spinner/spec/unit/error_spec.rb +53 -0
  71. data/lib/tty-spinner/spec/unit/events_spec.rb +35 -0
  72. data/lib/tty-spinner/spec/unit/formats_spec.rb +9 -0
  73. data/lib/tty-spinner/spec/unit/frames_spec.rb +31 -0
  74. data/lib/tty-spinner/spec/unit/hide_cursor_spec.rb +51 -0
  75. data/lib/tty-spinner/spec/unit/job_spec.rb +12 -0
  76. data/lib/tty-spinner/spec/unit/join_spec.rb +10 -0
  77. data/lib/tty-spinner/spec/unit/log_spec.rb +60 -0
  78. data/lib/tty-spinner/spec/unit/multi/auto_spin_spec.rb +32 -0
  79. data/lib/tty-spinner/spec/unit/multi/error_spec.rb +107 -0
  80. data/lib/tty-spinner/spec/unit/multi/line_inset_spec.rb +57 -0
  81. data/lib/tty-spinner/spec/unit/multi/on_spec.rb +11 -0
  82. data/lib/tty-spinner/spec/unit/multi/register_spec.rb +46 -0
  83. data/lib/tty-spinner/spec/unit/multi/spin_spec.rb +101 -0
  84. data/lib/tty-spinner/spec/unit/multi/stop_spec.rb +95 -0
  85. data/lib/tty-spinner/spec/unit/multi/success_spec.rb +108 -0
  86. data/lib/tty-spinner/spec/unit/new_spec.rb +25 -0
  87. data/lib/tty-spinner/spec/unit/pause_spec.rb +43 -0
  88. data/lib/tty-spinner/spec/unit/reset_spec.rb +19 -0
  89. data/lib/tty-spinner/spec/unit/run_spec.rb +30 -0
  90. data/lib/tty-spinner/spec/unit/spin_spec.rb +117 -0
  91. data/lib/tty-spinner/spec/unit/stop_spec.rb +88 -0
  92. data/lib/tty-spinner/spec/unit/success_spec.rb +53 -0
  93. data/lib/tty-spinner/spec/unit/tty_spec.rb +8 -0
  94. data/lib/tty-spinner/spec/unit/update_spec.rb +85 -0
  95. data/lib/tty-spinner/tasks/console.rake +11 -0
  96. data/lib/tty-spinner/tasks/coverage.rake +11 -0
  97. data/lib/tty-spinner/tasks/spec.rake +29 -0
  98. data/lib/tty-spinner/tty-spinner.gemspec +36 -0
  99. data/scripts/runtests.sh +1 -1
  100. data/spec/cli_spec.rb +27 -0
  101. data/spec/spec_helper.rb +26 -0
  102. data/spec/templates/test/_planter.yml +3 -6
  103. data/src/_README.md +5 -3
  104. metadata +86 -2
@@ -0,0 +1,78 @@
1
+ AllCops:
2
+ NewCops: enable
3
+
4
+ Layout/FirstArrayElementIndentation:
5
+ Enabled: false
6
+
7
+ Layout/FirstHashElementIndentation:
8
+ Enabled: false
9
+
10
+ Layout/LineLength:
11
+ Max: 82
12
+
13
+ Layout/SpaceInsideHashLiteralBraces:
14
+ EnforcedStyle: no_space
15
+
16
+ Lint/AssignmentInCondition:
17
+ Enabled: false
18
+
19
+ Metrics/AbcSize:
20
+ Max: 30
21
+
22
+ Metrics/BlockLength:
23
+ CountComments: true
24
+ Max: 25
25
+ IgnoredMethods: []
26
+ Exclude:
27
+ - "spec/**/*"
28
+
29
+ Metrics/ClassLength:
30
+ Max: 1500
31
+
32
+ Metrics/CyclomaticComplexity:
33
+ Enabled: false
34
+
35
+ Metrics/MethodLength:
36
+ Max: 20
37
+
38
+ Naming/FileName:
39
+ Exclude:
40
+ - "lib/tty-spinner.rb"
41
+
42
+ Naming/BinaryOperatorParameterName:
43
+ Enabled: false
44
+
45
+ Style/AsciiComments:
46
+ Enabled: false
47
+
48
+ Style/BlockDelimiters:
49
+ Enabled: false
50
+
51
+ Style/CommentedKeyword:
52
+ Enabled: false
53
+
54
+ Style/FrozenStringLiteralComment:
55
+ Exclude:
56
+ - "spec/**/*"
57
+
58
+ Style/LambdaCall:
59
+ SupportedStyles:
60
+ - call
61
+ - braces
62
+
63
+ Style/Semicolon:
64
+ Exclude:
65
+ - "spec/**/*"
66
+
67
+ Style/StringLiterals:
68
+ EnforcedStyle: double_quotes
69
+
70
+ Style/StringLiteralsInInterpolation:
71
+ EnforcedStyle: double_quotes
72
+
73
+ Style/SymbolProc:
74
+ Exclude:
75
+ - "spec/**/*"
76
+
77
+ Style/TrivialAccessors:
78
+ Enabled: false
@@ -0,0 +1,151 @@
1
+ # Change log
2
+
3
+ ## [v0.10.0] - unreleased
4
+
5
+ ### Added
6
+ * Add Spinner#log method for logging messages above the spinner
7
+ * Add new formats (:pulse_4, :toss, :lighthouse, :points, :points_2)
8
+ * Add ability to specify a custom mark for error, pause, success and stop methods
9
+
10
+ ### Changed
11
+ * Change gemspec to include rake and rspec as dev dependencies
12
+ * Change all built-in formats to use consistent frames formatting
13
+
14
+ ## [v0.9.3] - 2020-01-28
15
+
16
+ ### Changed
17
+ * Change gemspec to add metadata, remove test artefacts and load version directly
18
+
19
+ ## [v0.9.2] - 2019-12-08
20
+
21
+ ### Fixed
22
+ * Fix multi spinner cursor hiding by @benklop
23
+
24
+ ## [v0.9.1] - 2019-05-29
25
+
26
+ ### Changed
27
+ * Change bundler to remove version limit
28
+ * Change to update tty-cursor dependency
29
+
30
+ ## [v0.9.0] - 2018-12-01
31
+
32
+ ### Changed
33
+ * Change tty-cursor dependency
34
+ * Change to Ruby >= 2.0
35
+ * Change to freeze all string literals
36
+ * Change #execute_job to stop evaluating in spinner context and just execute the job
37
+ * Change #register to accept a spinner instance by Shane Cavanaugh(@shanecav84)
38
+
39
+ ### Fixed
40
+ * Fix to remove a stray single quote in spin_4 by Kristofer Rye(@rye)
41
+ * Fix Multi#line_inset to correctly assign styling in threaded environment
42
+ * Fix #stop & #auto_spin to always restore hidden cursor if enabled
43
+ * Fix deadlock when registering multi spinners
44
+
45
+ ## [v0.8.0] - 2018-01-11
46
+
47
+ ### Added
48
+ * Add new formats :bounce, :burger, :dance, :dot_2, ..., dot_11, :shark, :pong
49
+
50
+ ### Changed
51
+ * Change to only output to a console and stop output to a file, pipe etc...
52
+
53
+ ### Fixed
54
+ * Fix spinner #stop to clear line before printing final message
55
+
56
+ ## [v0.7.0] - 2017-09-11
57
+
58
+ ### Added
59
+ * Add :spin event type and emit from TTY::Spinner#spin
60
+
61
+ ### Changed
62
+ * Change to automatically spin top level multi spinner when registered spinners spin
63
+ * Remove unnecessary checks for top spinner in multi spinner #stop, #success, #error
64
+
65
+ ### Fixed
66
+ * Fix multi spinner #observe to only listen for events from registered spinners
67
+
68
+ ## [v0.6.0] - 2017-09-07
69
+
70
+ ### Changed
71
+ * Change TTY::Spinner::Multi to render registered spinners at row
72
+ position at point of rendering and not registration
73
+
74
+ ### Fixed
75
+ * Fix handling of multi spinner events
76
+ * Fix multi spinner display for unicode inset characters
77
+
78
+ ## [v0.5.0] - 2017-08-09
79
+
80
+ ### Added
81
+ * Add TTY::Spinner::Multi to allow for parallel spinners executation by Austin Blatt[@austb]
82
+ * Add formatting for multi spinner display by Austin Blatt[@austb]
83
+ * Add ability to add and execute jobs for single and multi spinners
84
+ * Add abilty to register multi spinners with async jobs
85
+ * Add #pause and #resume for single and multispinner
86
+
87
+ ### Changed
88
+ * Change to unify success category to mark spinner as succeded or errored
89
+ * Change Spinner to be thread safe
90
+
91
+ ### Fixed
92
+ * Stop firing events when a spinner is stopped
93
+
94
+ ## [v0.4.1] - 2016-08-07
95
+
96
+ ### Changed
97
+ * Change #update to clear output when in spinning state
98
+
99
+ ## [v0.4.0] - 2016-08-07
100
+
101
+ ### Added
102
+ * Add #auto_spin to automatically displaying spinning animation
103
+
104
+ ### Changed
105
+ * Change #start to setup timer and reset done state
106
+
107
+ ## [v0.3.0] - 2016-07-14
108
+
109
+ ### Added
110
+ * Add #run to automatically execute job with spinning animation by @Thermatix
111
+ * Add #update to allow for dynamic label name replacement
112
+
113
+ ### Fixed
114
+ * Fixed cursor hiding for success and error calls by @m-o-e
115
+ * Fix #join call to define actual error
116
+ * Fix #stop to print only once when finished
117
+
118
+ ## [v0.2.0] - 2016-03-13
119
+
120
+ ### Added
121
+ * Add new spinner formats by @rlqualls
122
+ * Add ability to specify custom frames through :frames option
123
+ * Add :clear option for removing spinner output when done
124
+ * Add #success and #error calls for stopping spinner
125
+ * Add :done, :success, :error completion events
126
+ * Add :success_mark & :error_mark to allow changing markers
127
+ * Add :interval for automatic spinning duration
128
+ * Add #start, #join and #kill for automatic spinner animation
129
+
130
+ ### Changed
131
+ * Change message formatting, use :spinner token to customize message
132
+ * Change format for defining spinner formats and intervals
133
+
134
+ ## [v0.1.0] - 2014-11-15
135
+
136
+ * Initial implementation and release
137
+
138
+ [v0.10.0]: https://github.com/piotrmurach/tty-spinner/compare/v0.9.3...v0.10.0
139
+ [v0.9.3]: https://github.com/piotrmurach/tty-spinner/compare/v0.9.2...v0.9.3
140
+ [v0.9.2]: https://github.com/piotrmurach/tty-spinner/compare/v0.9.1...v0.9.2
141
+ [v0.9.1]: https://github.com/piotrmurach/tty-spinner/compare/v0.9.0...v0.9.1
142
+ [v0.9.0]: https://github.com/piotrmurach/tty-spinner/compare/v0.8.0...v0.9.0
143
+ [v0.8.0]: https://github.com/piotrmurach/tty-spinner/compare/v0.7.0...v0.8.0
144
+ [v0.7.0]: https://github.com/piotrmurach/tty-spinner/compare/v0.6.0...v0.7.0
145
+ [v0.6.0]: https://github.com/piotrmurach/tty-spinner/compare/v0.5.0...v0.6.0
146
+ [v0.5.0]: https://github.com/piotrmurach/tty-spinner/compare/v0.4.1...v0.5.0
147
+ [v0.4.1]: https://github.com/piotrmurach/tty-spinner/compare/v0.4.0...v0.4.1
148
+ [v0.4.0]: https://github.com/piotrmurach/tty-spinner/compare/v0.3.0...v0.4.0
149
+ [v0.3.0]: https://github.com/piotrmurach/tty-spinner/compare/v0.2.0...v0.3.0
150
+ [v0.2.0]: https://github.com/piotrmurach/tty-spinner/compare/v0.1.0...v0.2.0
151
+ [v0.1.0]: https://github.com/piotrmurach/tty-spinner/compare/v0.1.0
@@ -0,0 +1,132 @@
1
+ # Contributor Covenant Code of Conduct
2
+
3
+ ## Our Pledge
4
+
5
+ We as members, contributors, and leaders pledge to make participation in our
6
+ community a harassment-free experience for everyone, regardless of age, body
7
+ size, visible or invisible disability, ethnicity, sex characteristics, gender
8
+ identity and expression, level of experience, education, socio-economic status,
9
+ nationality, personal appearance, race, caste, color, religion, or sexual
10
+ identity and orientation.
11
+
12
+ We pledge to act and interact in ways that contribute to an open, welcoming,
13
+ diverse, inclusive, and healthy community.
14
+
15
+ ## Our Standards
16
+
17
+ Examples of behavior that contributes to a positive environment for our
18
+ community include:
19
+
20
+ * Demonstrating empathy and kindness toward other people
21
+ * Being respectful of differing opinions, viewpoints, and experiences
22
+ * Giving and gracefully accepting constructive feedback
23
+ * Accepting responsibility and apologizing to those affected by our mistakes,
24
+ and learning from the experience
25
+ * Focusing on what is best not just for us as individuals, but for the overall
26
+ community
27
+
28
+ Examples of unacceptable behavior include:
29
+
30
+ * The use of sexualized language or imagery, and sexual attention or advances of
31
+ any kind
32
+ * Trolling, insulting or derogatory comments, and personal or political attacks
33
+ * Public or private harassment
34
+ * Publishing others' private information, such as a physical or email address,
35
+ without their explicit permission
36
+ * Other conduct which could reasonably be considered inappropriate in a
37
+ professional setting
38
+
39
+ ## Enforcement Responsibilities
40
+
41
+ Community leaders are responsible for clarifying and enforcing our standards of
42
+ acceptable behavior and will take appropriate and fair corrective action in
43
+ response to any behavior that they deem inappropriate, threatening, offensive,
44
+ or harmful.
45
+
46
+ Community leaders have the right and responsibility to remove, edit, or reject
47
+ comments, commits, code, wiki edits, issues, and other contributions that are
48
+ not aligned to this Code of Conduct, and will communicate reasons for moderation
49
+ decisions when appropriate.
50
+
51
+ ## Scope
52
+
53
+ This Code of Conduct applies within all community spaces, and also applies when
54
+ an individual is officially representing the community in public spaces.
55
+ Examples of representing our community include using an official e-mail address,
56
+ posting via an official social media account, or acting as an appointed
57
+ representative at an online or offline event.
58
+
59
+ ## Enforcement
60
+
61
+ Instances of abusive, harassing, or otherwise unacceptable behavior may be
62
+ reported to the community leaders responsible for enforcement at
63
+ piotr@piotrmurach.com.
64
+ All complaints will be reviewed and investigated promptly and fairly.
65
+
66
+ All community leaders are obligated to respect the privacy and security of the
67
+ reporter of any incident.
68
+
69
+ ## Enforcement Guidelines
70
+
71
+ Community leaders will follow these Community Impact Guidelines in determining
72
+ the consequences for any action they deem in violation of this Code of Conduct:
73
+
74
+ ### 1. Correction
75
+
76
+ **Community Impact**: Use of inappropriate language or other behavior deemed
77
+ unprofessional or unwelcome in the community.
78
+
79
+ **Consequence**: A private, written warning from community leaders, providing
80
+ clarity around the nature of the violation and an explanation of why the
81
+ behavior was inappropriate. A public apology may be requested.
82
+
83
+ ### 2. Warning
84
+
85
+ **Community Impact**: A violation through a single incident or series of
86
+ actions.
87
+
88
+ **Consequence**: A warning with consequences for continued behavior. No
89
+ interaction with the people involved, including unsolicited interaction with
90
+ those enforcing the Code of Conduct, for a specified period of time. This
91
+ includes avoiding interactions in community spaces as well as external channels
92
+ like social media. Violating these terms may lead to a temporary or permanent
93
+ ban.
94
+
95
+ ### 3. Temporary Ban
96
+
97
+ **Community Impact**: A serious violation of community standards, including
98
+ sustained inappropriate behavior.
99
+
100
+ **Consequence**: A temporary ban from any sort of interaction or public
101
+ communication with the community for a specified period of time. No public or
102
+ private interaction with the people involved, including unsolicited interaction
103
+ with those enforcing the Code of Conduct, is allowed during this period.
104
+ Violating these terms may lead to a permanent ban.
105
+
106
+ ### 4. Permanent Ban
107
+
108
+ **Community Impact**: Demonstrating a pattern of violation of community
109
+ standards, including sustained inappropriate behavior, harassment of an
110
+ individual, or aggression toward or disparagement of classes of individuals.
111
+
112
+ **Consequence**: A permanent ban from any sort of public interaction within the
113
+ community.
114
+
115
+ ## Attribution
116
+
117
+ This Code of Conduct is adapted from the [Contributor Covenant][homepage],
118
+ version 2.1, available at
119
+ [https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1].
120
+
121
+ Community Impact Guidelines were inspired by
122
+ [Mozilla's code of conduct enforcement ladder][Mozilla CoC].
123
+
124
+ For answers to common questions about this code of conduct, see the FAQ at
125
+ [https://www.contributor-covenant.org/faq][FAQ]. Translations are available at
126
+ [https://www.contributor-covenant.org/translations][translations].
127
+
128
+ [homepage]: https://www.contributor-covenant.org
129
+ [v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html
130
+ [Mozilla CoC]: https://github.com/mozilla/diversity
131
+ [FAQ]: https://www.contributor-covenant.org/faq
132
+ [translations]: https://www.contributor-covenant.org/translations
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gemspec
6
+
7
+ if RUBY_VERSION == "2.0.0"
8
+ gem "json", "2.4.1"
9
+ gem "rake", "12.3.3"
10
+ end
11
+ gem "pastel", "~> 0.8.0"
12
+ gem "yardstick", "~> 0.9.9"
13
+
14
+ if Gem::Version.new(RUBY_VERSION) >= Gem::Version.new("2.7.0")
15
+ gem "coveralls_reborn", "~> 0.28.0"
16
+ gem "simplecov", "~> 0.22.0"
17
+ end
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2014 Piotr Murach (piotrmurach.com)
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.