micro_install 0.1.8 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2b898a2d3859d023662ed306ff8df3eb7c63195f4f2b1193450b570ee5e8802c
4
- data.tar.gz: 73d94127b627be2fd8358bde68d4d8fced9fe45a2d192b2b593bc4b473199a4e
3
+ metadata.gz: 2012f5ab4e03163a67b151a020919f1c22c4de604ed7d142ba83dc8bf9d5e4f4
4
+ data.tar.gz: 4699a59b11a359aed7a0313502ebdc87a56cf4360fafb388c5d479cdcb37d530
5
5
  SHA512:
6
- metadata.gz: 64ac563666d3995cf81878536ed9857d3cedbe99e9e8e1d43ed98d8f281b45bf27d1cc5da7dc61cb36116f46a46372a6d36ec9bd1ca36cd0e9264d31e6215c1e
7
- data.tar.gz: 5b97293b41b3bc86d898cccc48aa8e1d8761d6e8281624ec36f2b2108bc1af377d38aad47c5faa58480a10fe7a552a71c93b9a102253f19cb401d9aa30824c33
6
+ metadata.gz: eff7eb997cdbdf30d25c14952c8442f08a21aa73470cc8b81cb2e18b0d9469505436029ca184cfe1dfdce41a22b7133127e1748244580410d4f3ac1e994e7488
7
+ data.tar.gz: 74d5bc420f6373a61f6d26c4eaea6c485950c093153d2b5470b7d3803aa9dffb02ad08f6a205b691934ef9772f62396104568c02435338826b81ef84d0379ba7
data/.gitignore CHANGED
@@ -48,3 +48,5 @@ build-iPhoneSimulator/
48
48
 
49
49
  # unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
50
50
  .rvmrc
51
+ /.project
52
+ Gemfile.lock
data/.ruby-version ADDED
@@ -0,0 +1 @@
1
+ 3.4.1
data/.travis.yml ADDED
@@ -0,0 +1,9 @@
1
+ language: ruby
2
+ bundler_args: --jobs=6 --retry=3 --standalone
3
+ script:
4
+ - echo "Running tests against $(ruby -v) ..."
5
+ - bundle exec rake -t
6
+ rvm:
7
+ - 2.3.4
8
+ - 2.4.1
9
+ - 2.5.3
data/Gemfile.lock ADDED
@@ -0,0 +1,54 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ micro_install (0.4.0)
5
+ highline (~> 3.1.2)
6
+ httparty (~> 0.21.0)
7
+ os (~> 1.1.4)
8
+ paint (~> 2.3.0)
9
+ thor (~> 1.3.2)
10
+
11
+ GEM
12
+ remote: https://rubygems.org/
13
+ specs:
14
+ ansi (1.5.0)
15
+ builder (3.2.4)
16
+ coderay (1.1.3)
17
+ highline (3.1.2)
18
+ reline
19
+ httparty (0.21.0)
20
+ mini_mime (>= 1.0.0)
21
+ multi_xml (>= 0.5.2)
22
+ io-console (0.8.0)
23
+ method_source (1.0.0)
24
+ mini_mime (1.1.5)
25
+ minitest (5.22.3)
26
+ minitest-reporters (1.6.1)
27
+ ansi
28
+ builder
29
+ minitest (>= 5.0)
30
+ ruby-progressbar
31
+ multi_xml (0.6.0)
32
+ os (1.1.4)
33
+ paint (2.3.0)
34
+ pry (0.14.2)
35
+ coderay (~> 1.1)
36
+ method_source (~> 1.0)
37
+ rake (13.1.0)
38
+ reline (0.6.1)
39
+ io-console (~> 0.5)
40
+ ruby-progressbar (1.13.0)
41
+ thor (1.3.2)
42
+
43
+ PLATFORMS
44
+ x86_64-linux
45
+
46
+ DEPENDENCIES
47
+ bundler (~> 2.6.9)
48
+ micro_install!
49
+ minitest-reporters (~> 1.6.1)
50
+ pry (~> 0.14.2)
51
+ rake (~> 13.1.0)
52
+
53
+ BUNDLED WITH
54
+ 2.6.9
data/README.md CHANGED
@@ -1,6 +1,12 @@
1
1
  # micro-install
2
2
  A ported version of https://getmic.ro to ruby to install [micro](https://zyedidia/micro)
3
3
 
4
+ **Good News Everyone!**
5
+
6
+ micro_install now supports linux-arm as android through 'Termux' installable from [here](https://play.google.com/store/apps/details?id=com.termux)
7
+
8
+ [![Termux](https://iotaspencer.me/assets/images/google-play-badge.png)](https://play.google.com/store/apps/details?id=com.termux)
9
+
4
10
  **My Badges**
5
11
 
6
12
  [![Gitter](https://img.shields.io/gitter/room/mkmatter/micro-install.svg?style=for-the-badge)](https://gitter.im/mkmatter/micro-install?utm_source=share-link&utm_medium=link&utm_campaign=share-link)
data/Rakefile CHANGED
@@ -1,2 +1,10 @@
1
- require "bundler/gem_tasks"
2
- task :default => :spec
1
+ require 'bundler/gem_tasks'
2
+ require 'rake/testtask'
3
+ Rake::TestTask.new do |t|
4
+ t.test_files = FileList['test/**/*_test.rb']
5
+ t.libs = ['../lib/cloudflare_cli.rb']
6
+ t.warning = false
7
+ end
8
+
9
+ desc 'Run tests'
10
+ task default: :test
data/bin/micro-install CHANGED
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
- require 'unirest'
2
+ require 'httparty'
3
3
  require 'os'
4
4
  require 'rubygems/package'
5
5
  require 'open-uri'
@@ -30,7 +30,7 @@ paths = []
30
30
  path_env = ENV['PATH'].split(':').each do |path|
31
31
  paths << path if path.include? 'bin'
32
32
  end
33
- if paths.include? Pathname(Dir.home).join('.local/bin').to_path
33
+ if paths.include? Pathname(Dir.home).join('.local/bin/').to_path or paths.include? Pathname(Dir.home).join('.local/bin').to_path
34
34
  hl.say "Environment Variable 'PATH' already includes #{Dir.home}/.local/bin"
35
35
  hl.say Paint["You're all set!", 'green']
36
36
  installer.is_installed
@@ -1,3 +1,3 @@
1
1
  module MicroInstall
2
- VERSION = "0.1.8"
2
+ VERSION = "0.4.1"
3
3
  end
data/lib/micro_install.rb CHANGED
@@ -1,7 +1,8 @@
1
1
  require "micro_install/version"
2
2
  require 'micro_install/spinner'
3
- require 'unirest'
3
+ require 'httparty'
4
4
  require 'os'
5
+ require 'open-uri'
5
6
  require 'highline'
6
7
  require 'paint'
7
8
  module MicroInstall
@@ -18,8 +19,7 @@ module MicroInstall
18
19
  begin
19
20
  hl.say "#{Paint["Getting Latest Tag", 'green']}"
20
21
  MicroInstall.show_wait_spinner {
21
- body = Unirest.get('https://api.github.com/repos/zyedidia/micro/releases/latest').body
22
- @tag = body['tag_name'].gsub(/^v/, '')
22
+ @tag = "2.0.13"
23
23
  }
24
24
  hl.say "#{Paint['Latest Tag', 'green']}: #{Paint[@tag, 'yellow']}"
25
25
  rescue
@@ -82,7 +82,7 @@ module MicroInstall
82
82
  MicroInstall.show_wait_spinner {
83
83
  File.open("micro-#{@tag}-#{@arch}.tar.gz", "wb") do |saved_file|
84
84
  # the following "open" is provided by open-uri
85
- open("#{@download_url}", "rb") do |read_file|
85
+ URI.open("#{@download_url}") do |read_file|
86
86
  saved_file.write(read_file.read)
87
87
  end
88
88
  end
@@ -160,7 +160,7 @@ module MicroInstall
160
160
  def is_installed_but_no_bin(hl = @hl)
161
161
  hl.say [
162
162
  "Micro is installed to ~/.local/bin/, but can't run,",
163
- "Please check your ~/.bashrc and/or ~/.profile and see",
163
+ "Please check your ~/.bashrc and/or ~/.profile and/or ~/.zshrc and see",
164
164
  "if '~/.local/bin/' is being added to the PATH variable"
165
165
  ]
166
166
  end
@@ -0,0 +1,206 @@
1
+ require 'minitest'
2
+ require 'minitest/reporters/base_reporter'
3
+ module Minitest
4
+ module Reporters
5
+ def plugin_xs_and_os_init
6
+ Minitest.reporter.reporters.clear
7
+ Minitest.reporter << TravisReporter.new(options[:io], options)
8
+
9
+ end
10
+
11
+ class TravisReporter < Minitest::Reporters::BaseReporter
12
+ @@color_for_result_code = {
13
+ '.' => :green,
14
+ 'E' => :red,
15
+ 'F' => :red,
16
+ '$' => :yellow
17
+ }
18
+ @@result_code_to_unicode = {
19
+ '.' => "\u{2714}",
20
+ 'F' => "\u{2718}",
21
+ 'E' => "\u{203C}",
22
+ '$' => "\u{26A1}"
23
+ }
24
+ @@color = {
25
+ red: 31,
26
+ green: 32,
27
+ yellow: 33,
28
+ blue: 34
29
+ }
30
+
31
+ def initialize(*)
32
+ super
33
+ @color_enabled = io.respond_to?(:tty?) && io.tty?
34
+
35
+ end
36
+
37
+ def record(result)
38
+ super
39
+ puts
40
+ print result.class_name
41
+ print ' '
42
+ print self.result_name result.name
43
+ print ' ['
44
+ print_result_code(result.result_code)
45
+ print ']'
46
+ end
47
+
48
+ def start
49
+ super
50
+ io.print "Run options: #{options[:args]} / "
51
+ io.print 'Running:'
52
+ end
53
+
54
+ def report
55
+ super
56
+ io.sync = true
57
+
58
+ failing_results = results.reject(&:skipped?)
59
+ skipped_results = results.select(&:skipped?)
60
+
61
+ color = :green
62
+ color = :yellow if skipped_results.any?
63
+ color = :red if failing_results.any?
64
+
65
+ if failing_results.any? || skipped_results.any?
66
+ failing_results.each.with_index(1) { |result, index| display_failing(result, index) }
67
+ skipped_results.each.with_index(failing_results.size + 1) { |result, index| display_skipped(result, index) }
68
+ end
69
+
70
+ io.print "\n\n"
71
+ io.puts statistics
72
+ io.puts color(summary, color)
73
+
74
+ if failing_results.any?
75
+ io.puts "\nFailed Tests:\n"
76
+ failing_results.each { |result| display_replay_command(result) }
77
+ io.puts "\n\n"
78
+ end
79
+ end
80
+
81
+
82
+ def statistics
83
+ 'Finished in %.6fs, %.4f runs/s, %.4f assertions/s.' %
84
+ [total_time, count / total_time, assertions / total_time]
85
+ end
86
+
87
+ def summary # :nodoc:
88
+ [
89
+ pluralize('run', count),
90
+ pluralize('assertion', assertions),
91
+ pluralize('failure', failures),
92
+ pluralize('error', errors),
93
+ pluralize('skip', skips)
94
+ ].join(', ')
95
+ end
96
+
97
+ def indent(text)
98
+ text.gsub(/^/, ' ')
99
+ end
100
+
101
+ def display_failing(result, index)
102
+ backtrace = backtrace(result.failure.backtrace)
103
+ message = result.failure.message
104
+ message = message.lines.tap(&:pop).join.chomp if result.error?
105
+
106
+ str = "\n\n"
107
+ str << color('%4d) %s' % [index, result_name(result.name)])
108
+ str << "\n" << color(indent(message), :red)
109
+ str << "\n" << color(backtrace, :blue)
110
+ io.print str
111
+ end
112
+
113
+ def display_skipped(result, index)
114
+ location = location(result.failure.location)
115
+ str = "\n\n"
116
+ str << color('%4d) %s [SKIPPED]' % [index, result_name(result.name)], :yellow)
117
+ str << "\n" << indent(color(location, :yellow))
118
+ io.print str
119
+ end
120
+
121
+ def display_replay_command(result)
122
+ location, line = find_test_file(result)
123
+ return if location.empty?
124
+
125
+ command = if defined?(Rails) && Rails.version >= '5.0.0'
126
+ %[bin/rails test #{location}:#{line}]
127
+ %[rake TEST=#{location} TESTOPTS="--name=#{result.name}"]
128
+ else
129
+ end
130
+
131
+ str = "\n"
132
+ str << color(command, :red)
133
+
134
+ io.print str
135
+ end
136
+
137
+ def find_test_file(result)
138
+ location, line = result.source_location
139
+ location = location.gsub(%r[^.*?/((?:test|spec)/.*?)$], "\\1")
140
+
141
+ [location, line]
142
+ end
143
+
144
+ def backtrace(backtrace)
145
+ backtrace = filter_backtrace(backtrace).map { |line| location(line, true) }
146
+ return if backtrace.empty?
147
+ indent(backtrace.join("\n")).gsub(/^(\s+)/, "\\1# ")
148
+ end
149
+
150
+ def location(location, include_line_number = false)
151
+ regex = include_line_number ? /^([^:]+:\d+)/ : /^([^:]+)/
152
+ location = File.expand_path(location[regex, 1])
153
+
154
+ return location unless location.start_with?(Dir.pwd)
155
+
156
+ location.gsub(%r[^#{Regexp.escape(Dir.pwd)}/], '')
157
+ end
158
+
159
+ def filter_backtrace(backtrace)
160
+ Minitest.backtrace_filter.filter(backtrace)
161
+ end
162
+
163
+ def result_name(name)
164
+ name
165
+ .gsub(/^test(_\d+)?_/, '')
166
+ .gsub(/_/, ' ')
167
+ end
168
+
169
+ def print_result_code(result_code)
170
+ result = @@result_code_to_unicode[result_code]
171
+ colors = {
172
+ "\u{2714}" => :green,
173
+ "\u{2718}" => :red,
174
+ "\u{203C}" => :red,
175
+ "\u{26A1}" => :yellow
176
+ }
177
+ io.print color(result, colors[result])
178
+ end
179
+
180
+ def color(string, color = :default)
181
+ if color_enabled?
182
+ color = @@color.fetch(color, 0)
183
+ "\e[#{color}m#{string}\e[0m"
184
+ else
185
+ string
186
+ end
187
+ end
188
+
189
+ def color_enabled?
190
+ @color_enabled
191
+ end
192
+
193
+ def pluralize(word, count)
194
+ case count
195
+ when 0
196
+ "no #{word}s"
197
+ when 1
198
+ "1 #{word}"
199
+ else
200
+ "#{count} #{word}s"
201
+ end
202
+ end
203
+ end
204
+ end
205
+
206
+ end
@@ -41,19 +41,20 @@ Gem::Specification.new do |spec|
41
41
  spec.files = `git ls-files -z`.split("\x0").reject do |f|
42
42
  f.match(%r{^(spec|test|features)/})
43
43
  end
44
- spec.required_ruby_version = '~> 2'
44
+ spec.required_ruby_version = '~> 3'
45
45
  spec.bindir = 'bin'
46
46
  spec.executables << 'micro-install'
47
47
  spec.require_paths = ['lib']
48
48
 
49
- spec.add_runtime_dependency 'thor', '~> 0.20'
50
- spec.add_runtime_dependency 'highline', '~> 1.7'
51
- spec.add_runtime_dependency 'os', '~> 1.0'
52
- spec.add_runtime_dependency 'paint', '~> 2.0.1'
53
- spec.add_runtime_dependency 'unirest', '~> 1.1'
54
- spec.add_development_dependency 'bundler', '~> 1.16'
55
- spec.add_development_dependency 'pry', '~> 0.11'
56
- spec.add_development_dependency 'rake', '~> 10.5'
49
+ spec.add_runtime_dependency 'thor', '~> 1.3.2'
50
+ spec.add_runtime_dependency 'highline', '~> 3.1.2'
51
+ spec.add_runtime_dependency 'os', '~> 1.1.4'
52
+ spec.add_runtime_dependency 'paint', '~> 2.3.0'
53
+ spec.add_runtime_dependency 'httparty', '~> 0.21.0'
54
+ spec.add_development_dependency 'bundler', '~> 2.6.9'
55
+ spec.add_development_dependency 'pry', '~> 0.14.2'
56
+ spec.add_development_dependency 'rake', '~> 13.1.0'
57
+ spec.add_development_dependency 'minitest-reporters', '~> 1.6.1'
57
58
 
58
59
  spec.post_install_message = <<-POSTINSTALL
59
60
  Thanks for installing micro_install!
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: micro_install
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8
4
+ version: 0.4.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ken Spencer
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2018-04-12 00:00:00.000000000 Z
10
+ date: 2025-05-24 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: thor
@@ -16,112 +15,126 @@ dependencies:
16
15
  requirements:
17
16
  - - "~>"
18
17
  - !ruby/object:Gem::Version
19
- version: '0.20'
18
+ version: 1.3.2
20
19
  type: :runtime
21
20
  prerelease: false
22
21
  version_requirements: !ruby/object:Gem::Requirement
23
22
  requirements:
24
23
  - - "~>"
25
24
  - !ruby/object:Gem::Version
26
- version: '0.20'
25
+ version: 1.3.2
27
26
  - !ruby/object:Gem::Dependency
28
27
  name: highline
29
28
  requirement: !ruby/object:Gem::Requirement
30
29
  requirements:
31
30
  - - "~>"
32
31
  - !ruby/object:Gem::Version
33
- version: '1.7'
32
+ version: 3.1.2
34
33
  type: :runtime
35
34
  prerelease: false
36
35
  version_requirements: !ruby/object:Gem::Requirement
37
36
  requirements:
38
37
  - - "~>"
39
38
  - !ruby/object:Gem::Version
40
- version: '1.7'
39
+ version: 3.1.2
41
40
  - !ruby/object:Gem::Dependency
42
41
  name: os
43
42
  requirement: !ruby/object:Gem::Requirement
44
43
  requirements:
45
44
  - - "~>"
46
45
  - !ruby/object:Gem::Version
47
- version: '1.0'
46
+ version: 1.1.4
48
47
  type: :runtime
49
48
  prerelease: false
50
49
  version_requirements: !ruby/object:Gem::Requirement
51
50
  requirements:
52
51
  - - "~>"
53
52
  - !ruby/object:Gem::Version
54
- version: '1.0'
53
+ version: 1.1.4
55
54
  - !ruby/object:Gem::Dependency
56
55
  name: paint
57
56
  requirement: !ruby/object:Gem::Requirement
58
57
  requirements:
59
58
  - - "~>"
60
59
  - !ruby/object:Gem::Version
61
- version: 2.0.1
60
+ version: 2.3.0
62
61
  type: :runtime
63
62
  prerelease: false
64
63
  version_requirements: !ruby/object:Gem::Requirement
65
64
  requirements:
66
65
  - - "~>"
67
66
  - !ruby/object:Gem::Version
68
- version: 2.0.1
67
+ version: 2.3.0
69
68
  - !ruby/object:Gem::Dependency
70
- name: unirest
69
+ name: httparty
71
70
  requirement: !ruby/object:Gem::Requirement
72
71
  requirements:
73
72
  - - "~>"
74
73
  - !ruby/object:Gem::Version
75
- version: '1.1'
74
+ version: 0.21.0
76
75
  type: :runtime
77
76
  prerelease: false
78
77
  version_requirements: !ruby/object:Gem::Requirement
79
78
  requirements:
80
79
  - - "~>"
81
80
  - !ruby/object:Gem::Version
82
- version: '1.1'
81
+ version: 0.21.0
83
82
  - !ruby/object:Gem::Dependency
84
83
  name: bundler
85
84
  requirement: !ruby/object:Gem::Requirement
86
85
  requirements:
87
86
  - - "~>"
88
87
  - !ruby/object:Gem::Version
89
- version: '1.16'
88
+ version: 2.6.9
90
89
  type: :development
91
90
  prerelease: false
92
91
  version_requirements: !ruby/object:Gem::Requirement
93
92
  requirements:
94
93
  - - "~>"
95
94
  - !ruby/object:Gem::Version
96
- version: '1.16'
95
+ version: 2.6.9
97
96
  - !ruby/object:Gem::Dependency
98
97
  name: pry
99
98
  requirement: !ruby/object:Gem::Requirement
100
99
  requirements:
101
100
  - - "~>"
102
101
  - !ruby/object:Gem::Version
103
- version: '0.11'
102
+ version: 0.14.2
104
103
  type: :development
105
104
  prerelease: false
106
105
  version_requirements: !ruby/object:Gem::Requirement
107
106
  requirements:
108
107
  - - "~>"
109
108
  - !ruby/object:Gem::Version
110
- version: '0.11'
109
+ version: 0.14.2
111
110
  - !ruby/object:Gem::Dependency
112
111
  name: rake
113
112
  requirement: !ruby/object:Gem::Requirement
114
113
  requirements:
115
114
  - - "~>"
116
115
  - !ruby/object:Gem::Version
117
- version: '10.5'
116
+ version: 13.1.0
118
117
  type: :development
119
118
  prerelease: false
120
119
  version_requirements: !ruby/object:Gem::Requirement
121
120
  requirements:
122
121
  - - "~>"
123
122
  - !ruby/object:Gem::Version
124
- version: '10.5'
123
+ version: 13.1.0
124
+ - !ruby/object:Gem::Dependency
125
+ name: minitest-reporters
126
+ requirement: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - "~>"
129
+ - !ruby/object:Gem::Version
130
+ version: 1.6.1
131
+ type: :development
132
+ prerelease: false
133
+ version_requirements: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - "~>"
136
+ - !ruby/object:Gem::Version
137
+ version: 1.6.1
125
138
  description: |2
126
139
  micro_install is a gem that installs a removable script
127
140
  that lets you install 'micro' a terminal text editor,
@@ -136,7 +149,10 @@ extensions: []
136
149
  extra_rdoc_files: []
137
150
  files:
138
151
  - ".gitignore"
152
+ - ".ruby-version"
153
+ - ".travis.yml"
139
154
  - Gemfile
155
+ - Gemfile.lock
140
156
  - LICENSE
141
157
  - LICENSE.txt
142
158
  - README.md
@@ -145,6 +161,7 @@ files:
145
161
  - lib/micro_install.rb
146
162
  - lib/micro_install/spinner.rb
147
163
  - lib/micro_install/version.rb
164
+ - lib/minitest/xs_and_os_plugin.rb
148
165
  - micro_install.gemspec
149
166
  homepage: https://iotaspencer.me/projects/micro-install
150
167
  licenses:
@@ -163,16 +180,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
163
180
  requirements:
164
181
  - - "~>"
165
182
  - !ruby/object:Gem::Version
166
- version: '2'
183
+ version: '3'
167
184
  required_rubygems_version: !ruby/object:Gem::Requirement
168
185
  requirements:
169
186
  - - ">="
170
187
  - !ruby/object:Gem::Version
171
188
  version: '0'
172
189
  requirements: []
173
- rubyforge_project:
174
- rubygems_version: 2.7.6
175
- signing_key:
190
+ rubygems_version: 3.6.2
176
191
  specification_version: 4
177
192
  summary: A quick gem to install a script for installing micro, used by https://github.com/IotaSpencer/mkmatter
178
193
  test_files: []