erhu 0.1.3 → 0.1.4

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: 227adb4306e0ba58bcd720a8bcefa6ff095a549120691e12caf82ed5617f45d3
4
- data.tar.gz: 9c513925800b676c24a3416260d852123d5a513cad06a340e2b8e082387a0ca1
3
+ metadata.gz: c32c20c8ee9ba7e4091402f5921f6e534269f37df35b4eb7fc3d84e210bd561c
4
+ data.tar.gz: 430ab7355c7f954f1b9c884ec931462057ada64cafaf3e42e661aa1421d663d8
5
5
  SHA512:
6
- metadata.gz: 9dbcbd06bc4f7d18aff1493648b50b832426b7c39b4276a489c1c1318d46fe145af501c9361361d090957c8f6252be1d3cf112beb93fe368746d0ca4061370b5
7
- data.tar.gz: c13fb491276df6ea20c70d1572ec245f7afed0be2ac1244380d00dc11d0b7eff3168fb5c9eeff869730a211d57c3ea0e75387e937803d34e8b2de6d943e47ae1
6
+ metadata.gz: 1733da1090e350510005ecf8021fbe097e493af7fc86a9d6d84d1e300b1f4bef60f9e54fe76bdabb3071ff808fde9266e4e351c7017ce0421ea026dc9f9cea77
7
+ data.tar.gz: 6b5b3cf0073821a78b6eb5ad9cb04e16473aeb5497be11f10c7f38c5a537437599527482bc845aa1b833baff8543353a61003e92639b297206d00020d54c4638
data/Gemfile CHANGED
@@ -6,14 +6,14 @@ source "https://rubygems.org"
6
6
  gemspec
7
7
 
8
8
  gem "rake", "~> 13.0"
9
- gem 'tty-platform'
10
- gem "tty-command"
11
- gem "tty-progressbar"
12
- gem "tty-spinner"
9
+ # gem 'tty-platform'
10
+ # gem "tty-command"
11
+ # gem "tty-progressbar"
12
+ # gem "tty-spinner"
13
13
 
14
- gem "pastel"
15
- gem "rugged"
14
+ # gem "pastel"
15
+ # gem "rugged"
16
16
 
17
- gem 'faraday'
18
- gem 'faraday-follow_redirects'
19
- gem 'rubyzip'
17
+ # gem 'faraday'
18
+ # gem 'faraday-follow_redirects'
19
+ # gem 'rubyzip'
data/Gemfile.lock CHANGED
@@ -1,7 +1,16 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- erhu (0.1.1)
4
+ erhu (0.1.4)
5
+ faraday (~> 2.7, >= 2.7.4)
6
+ faraday-follow_redirects (~> 0.3.0)
7
+ pastel (~> 0.8.0)
8
+ rubyzip (~> 2.3, >= 2.3.2)
9
+ rugged (~> 1.6, >= 1.6.2)
10
+ tty-command (~> 0.10.1)
11
+ tty-platform (~> 0.3.0)
12
+ tty-progressbar (~> 0.18.2)
13
+ tty-spinner (~> 0.9.3)
5
14
 
6
15
  GEM
7
16
  remote: https://rubygems.org/
@@ -36,19 +45,12 @@ GEM
36
45
 
37
46
  PLATFORMS
38
47
  arm64-darwin-22
48
+ ruby
49
+ x86_64-linux
39
50
 
40
51
  DEPENDENCIES
41
52
  erhu!
42
- faraday
43
- faraday-follow_redirects
44
- pastel
45
53
  rake (~> 13.0)
46
- rubyzip
47
- rugged
48
- tty-command
49
- tty-platform
50
- tty-progressbar
51
- tty-spinner
52
54
 
53
55
  BUNDLED WITH
54
56
  2.4.6
data/README.md CHANGED
@@ -9,7 +9,7 @@ gem install erhu
9
9
 
10
10
  ## 如何使用
11
11
 
12
- 在根目录里面建立`ErhuFile`,用于拉取依赖
12
+ 在根目录里面建立`ErhuFile`, 当前也可以使用`erhu init`用于拉取依赖
13
13
 
14
14
  ```ruby
15
15
  target "./thirdparty"
data/erhu.gemspec CHANGED
@@ -30,6 +30,16 @@ Gem::Specification.new do |spec|
30
30
  spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
31
31
  spec.require_paths = ["lib"]
32
32
 
33
+ spec.add_dependency "tty-platform", '~> 0.3.0'
34
+ spec.add_dependency 'tty-command', '~> 0.10.1'
35
+ spec.add_dependency 'tty-progressbar', '~> 0.18.2'
36
+ spec.add_dependency 'tty-spinner', '~> 0.9.3'
37
+ spec.add_dependency 'pastel', '~> 0.8.0'
38
+ spec.add_dependency 'rugged', '~> 1.6', '>= 1.6.2'
39
+ spec.add_dependency 'faraday', '~> 2.7', '>= 2.7.4'
40
+ spec.add_dependency 'faraday-follow_redirects', '~> 0.3.0'
41
+ spec.add_dependency 'rubyzip', '~> 2.3', '>= 2.3.2'
42
+
33
43
  # Uncomment to register a new dependency of your gem
34
44
  # spec.add_dependency "example-gem", "~> 1.0"
35
45
 
data/exe/erhu CHANGED
@@ -4,4 +4,4 @@
4
4
  require "bundler/setup"
5
5
  require_relative "../lib/erhu"
6
6
 
7
- Erhu::App.new.run
7
+ Erhu.cli
data/lib/erhu/cli.rb ADDED
@@ -0,0 +1,60 @@
1
+ require 'optparse'
2
+
3
+ module Erhu
4
+ module_function
5
+ def cli()
6
+ options = {}
7
+ subcommands = {}
8
+
9
+ OptionParser.new do |opts|
10
+ opts.banner = "Usage: erhu [command]"
11
+
12
+ opts.on("-h", "--help", "Prints help") do
13
+ puts """
14
+ erhu init -> init your project
15
+ erhu install(options) -> install your project depends
16
+ """
17
+ exit
18
+ end
19
+
20
+ # Define global options here
21
+
22
+ end.parse!
23
+
24
+ subcommands['init'] = Proc.new do |args|
25
+ File.open("Erhufile", "w") do |f|
26
+ f.puts 'target "./thirdparty"'
27
+ f.puts 'git "https://github.com/Tencent/rapidjson", tag: "v1.1.0"'
28
+ f.puts 'package "https://github.com/DaveGamble/cJSON/archive/refs/tags/v1.7.15.zip", name: "cjson"'
29
+ end
30
+
31
+ # Create Rakefile
32
+ File.open("Rakefile", "w") do |f|
33
+ f.puts 'require "erhu"'
34
+ f.puts
35
+ f.puts 'task :build do |t|'
36
+ f.puts ' Cmd.new().chdir("./build")'
37
+ f.puts ' .run("cmake", "..")'
38
+ f.puts ' .run("make")'
39
+ f.puts 'end'
40
+ f.puts
41
+ f.puts 'task run: [:build] do |t|'
42
+ f.puts ' Cmd.new().chdir("./target").run("./Erhu")'
43
+ f.puts 'end'
44
+ end
45
+ end
46
+
47
+ subcommands['install'] = Proc.new do |args|
48
+ Erhu::App.new.run
49
+ end
50
+
51
+ if ARGV.blank?
52
+ Erhu::App.new.run
53
+ elsif subcommands.key?(ARGV.first)
54
+ subcommands[ARGV.first].call(ARGV[1..-1])
55
+ else
56
+ puts "Invalid command. Use -h or --help for usage information."
57
+ end
58
+
59
+ end
60
+ end
data/lib/erhu/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Erhu
4
- VERSION = "0.1.3"
4
+ VERSION = "0.1.4"
5
5
  end
data/lib/erhu.rb CHANGED
@@ -2,6 +2,7 @@
2
2
  require_relative "erhu/init"
3
3
  require_relative "erhu/version"
4
4
  require_relative "erhu/app"
5
+ require_relative "erhu/cli"
5
6
 
6
7
  module Erhu
7
8
  class Error < StandardError; end
metadata CHANGED
@@ -1,15 +1,159 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: erhu
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - MJ
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-03-24 00:00:00.000000000 Z
12
- dependencies: []
11
+ date: 2023-03-25 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: tty-platform
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 0.3.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 0.3.0
27
+ - !ruby/object:Gem::Dependency
28
+ name: tty-command
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 0.10.1
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 0.10.1
41
+ - !ruby/object:Gem::Dependency
42
+ name: tty-progressbar
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: 0.18.2
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: 0.18.2
55
+ - !ruby/object:Gem::Dependency
56
+ name: tty-spinner
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: 0.9.3
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: 0.9.3
69
+ - !ruby/object:Gem::Dependency
70
+ name: pastel
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: 0.8.0
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: 0.8.0
83
+ - !ruby/object:Gem::Dependency
84
+ name: rugged
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '1.6'
90
+ - - ">="
91
+ - !ruby/object:Gem::Version
92
+ version: 1.6.2
93
+ type: :runtime
94
+ prerelease: false
95
+ version_requirements: !ruby/object:Gem::Requirement
96
+ requirements:
97
+ - - "~>"
98
+ - !ruby/object:Gem::Version
99
+ version: '1.6'
100
+ - - ">="
101
+ - !ruby/object:Gem::Version
102
+ version: 1.6.2
103
+ - !ruby/object:Gem::Dependency
104
+ name: faraday
105
+ requirement: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - "~>"
108
+ - !ruby/object:Gem::Version
109
+ version: '2.7'
110
+ - - ">="
111
+ - !ruby/object:Gem::Version
112
+ version: 2.7.4
113
+ type: :runtime
114
+ prerelease: false
115
+ version_requirements: !ruby/object:Gem::Requirement
116
+ requirements:
117
+ - - "~>"
118
+ - !ruby/object:Gem::Version
119
+ version: '2.7'
120
+ - - ">="
121
+ - !ruby/object:Gem::Version
122
+ version: 2.7.4
123
+ - !ruby/object:Gem::Dependency
124
+ name: faraday-follow_redirects
125
+ requirement: !ruby/object:Gem::Requirement
126
+ requirements:
127
+ - - "~>"
128
+ - !ruby/object:Gem::Version
129
+ version: 0.3.0
130
+ type: :runtime
131
+ prerelease: false
132
+ version_requirements: !ruby/object:Gem::Requirement
133
+ requirements:
134
+ - - "~>"
135
+ - !ruby/object:Gem::Version
136
+ version: 0.3.0
137
+ - !ruby/object:Gem::Dependency
138
+ name: rubyzip
139
+ requirement: !ruby/object:Gem::Requirement
140
+ requirements:
141
+ - - "~>"
142
+ - !ruby/object:Gem::Version
143
+ version: '2.3'
144
+ - - ">="
145
+ - !ruby/object:Gem::Version
146
+ version: 2.3.2
147
+ type: :runtime
148
+ prerelease: false
149
+ version_requirements: !ruby/object:Gem::Requirement
150
+ requirements:
151
+ - - "~>"
152
+ - !ruby/object:Gem::Version
153
+ version: '2.3'
154
+ - - ">="
155
+ - !ruby/object:Gem::Version
156
+ version: 2.3.2
13
157
  description: Erhu 是一个动态可编程的包管理系统
14
158
  email:
15
159
  - tywf91@gmail.com
@@ -26,6 +170,7 @@ files:
26
170
  - exe/erhu
27
171
  - lib/erhu.rb
28
172
  - lib/erhu/app.rb
173
+ - lib/erhu/cli.rb
29
174
  - lib/erhu/init.rb
30
175
  - lib/erhu/version.rb
31
176
  - sig/erhu.rbs