strongspace 0.3.5 → 0.3.8
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 +7 -0
- data/README.markdown +21 -20
- data/lib/strongspace/commands/auth.rb +8 -1
- data/lib/strongspace/commands/help.rb +1 -0
- data/lib/strongspace/commands/keys.rb +2 -3
- data/lib/strongspace/commands/spaces.rb +6 -6
- data/lib/strongspace/helpers.rb +84 -6
- data/lib/strongspace/plugin.rb +13 -1
- data/lib/strongspace/version.rb +1 -1
- metadata +173 -190
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: a2beb6946e69b01021510f76d3118d5899db4f22
|
4
|
+
data.tar.gz: 9eb21fda02ddc730e86478910f0d30424f518b47
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: ec8f9d8a64340d759f66474fb7b9ea5b92d578e88362e2cc218549c27c5a1650486606dc96c67c25d1ccb4c2df3a4b297f8ae8daccfbb0533b27e21a720d61c0
|
7
|
+
data.tar.gz: b2398b0408a91f0a417bf542ced61542e5233bbd650402d1ba8c2bc1eb9cc8ff97675749f1c2f2cd937ed18494f18ac1b384c12c21cda4ab9992ad9c82d8bfce
|
data/README.markdown
CHANGED
@@ -18,33 +18,34 @@ Run via command line:
|
|
18
18
|
`strongspace help` or `ss help`
|
19
19
|
|
20
20
|
=== General Commands
|
21
|
-
help
|
22
|
-
version
|
21
|
+
help # show this usage
|
22
|
+
version # show the gem version
|
23
23
|
|
24
|
-
upload <local_path> <remote_path>
|
25
|
-
download <remote_path>
|
26
|
-
mkdir <remote_path>
|
27
|
-
delete <remote_path>
|
24
|
+
upload <local_path> <remote_path> # upload a file
|
25
|
+
download <remote_path> # download a file from Strongspace to the current directory
|
26
|
+
mkdir <remote_path> # create a folder on Strongspace
|
27
|
+
delete <remote_path> # delete a file or recursively delete a folder on Strongspace
|
28
|
+
quota # Show the filesystem quota information
|
28
29
|
|
29
30
|
=== SSH Keys
|
30
|
-
keys
|
31
|
-
keys:add [<keyfile_path>]
|
32
|
-
keys:generate
|
33
|
-
keys:remove <id>
|
34
|
-
keys:clear
|
31
|
+
keys # show your user's public keys
|
32
|
+
keys:add [<keyfile_path>] # Add an public key or generate a new SSH keypair and add
|
33
|
+
keys:generate # Generate a new SSH keypair
|
34
|
+
keys:remove <id> # remove a key by id
|
35
|
+
keys:clear # remove all keys
|
35
36
|
|
36
37
|
=== Spaces
|
37
|
-
spaces
|
38
|
-
spaces:create <name> [type]
|
39
|
-
spaces:delete <name> [type]
|
40
|
-
spaces:snapshots <name>
|
41
|
-
spaces:create_snapshot <name
|
42
|
-
spaces:delete_snapshot <name
|
38
|
+
spaces # show your user's spaces
|
39
|
+
spaces:create <name> [type] # add a new space. type => (normal,public,backup)
|
40
|
+
spaces:delete <name> [type] # remove a space by and destroy its data
|
41
|
+
spaces:snapshots <name> # show a space's snapshots
|
42
|
+
spaces:create_snapshot <name> [snapshot_name] # take a space of a space - snapshot_name defaults to current date/time.
|
43
|
+
spaces:delete_snapshot <name> <snapshot_name> # remove a snapshot from a space
|
43
44
|
|
44
45
|
=== Plugins
|
45
|
-
plugins
|
46
|
-
plugins:install <url>
|
47
|
-
plugins:uninstall <url/name>
|
46
|
+
plugins # list installed plugins
|
47
|
+
plugins:install <url> # install the plugin from the specified git url
|
48
|
+
plugins:uninstall <url/name> # remove the specified plugin
|
48
49
|
|
49
50
|
|
50
51
|
Plugins
|
@@ -45,7 +45,14 @@ module Strongspace::Command
|
|
45
45
|
to = URI.escape(args[0][0..1]) + URI.escape(URI.escape(args[0][2..-1])).gsub('&', '%26')
|
46
46
|
url = "#{host}/login/#{client.login_token['login_token']}?to=#{to}"
|
47
47
|
end
|
48
|
-
|
48
|
+
if running_on_a_mac?
|
49
|
+
`open "#{url}"`
|
50
|
+
elsif running_on_windows?
|
51
|
+
require 'win32ole'
|
52
|
+
shell = WIN32OLE.new('Shell.Application')
|
53
|
+
shell.shellExecute(url, '', '', 'open', 3)
|
54
|
+
end
|
55
|
+
|
49
56
|
end
|
50
57
|
|
51
58
|
def user # :nodoc:
|
@@ -37,6 +37,7 @@ module Strongspace::Command
|
|
37
37
|
group.command 'download <remote_path>', 'download a file from Strongspace to the current directory'
|
38
38
|
group.command 'mkdir <remote_path>', 'create a folder on Strongspace'
|
39
39
|
group.command 'delete <remote_path>', 'delete a file or recursively delete a folder on Strongspace'
|
40
|
+
group.command 'quota', 'Show the filesystem quota information'
|
40
41
|
end
|
41
42
|
|
42
43
|
group 'SSH Keys' do |group|
|
@@ -21,17 +21,16 @@ module Strongspace::Command
|
|
21
21
|
end
|
22
22
|
|
23
23
|
def generate_for_gui
|
24
|
-
return unless running_on_a_mac?
|
25
24
|
FileUtils.mkdir "#{credentials_folder}" unless File.exist? "#{credentials_folder}"
|
26
25
|
|
27
26
|
|
28
27
|
File.open("#{credentials_folder}/known_hosts", "w") do |f|
|
29
|
-
f.write "
|
28
|
+
f.write "* ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEArXBYAoHZWVzLfHNMlgteAbq20AaCVcE1qALqVjYZerIpa3rBjNlv2i/2O8ul3OmSfcQwQGPTnABLqz9cozAbxF01eDfqUiSABUDT6m1/lY1a0V7RGS46Y/KJMVbOb4mVpxDZOVwBQh/DYTu7R55vFc93lXpE+tZboqnuq+LvJIZDqzoGTHIUprRs3sNY8Xegnz+m68P+tV6iLkXMRk8Gh8/IIavN4mXYhWPVbCv6Gqo2XhiYVMrCqLZFKLG0W6uwWY/xOhUjWxKDZMlqhyU/YUsMB5BZc9/x0t+Sc82OL+Eh3IB5EUmmCWnhm/LKxjMIn2UNe48BQqwaU/gozVtVPQ==\n"
|
30
29
|
end
|
31
30
|
|
32
31
|
|
33
32
|
if !File.exist? "#{credentials_folder}/#{computername}.rsa"
|
34
|
-
|
33
|
+
`#{ssh_keygen_binary} -f \"#{credentials_folder}/#{computername}.rsa\" -b 2048 -C \" Strongspace App - #{computername}\" -q -N ""` unless File.exist? "#{credentials_folder}/#{computername}.rsa"
|
35
34
|
args[0] = "#{credentials_folder}/#{computername}.rsa.pub"
|
36
35
|
begin
|
37
36
|
add
|
@@ -148,11 +148,11 @@ module Strongspace::Command
|
|
148
148
|
</dict>
|
149
149
|
</plist>"
|
150
150
|
|
151
|
-
file = File.new(
|
151
|
+
file = File.new(scheduled_launch_file(space_name), "w+")
|
152
152
|
file.puts plist
|
153
153
|
file.close
|
154
154
|
|
155
|
-
r = `launchctl load -S aqua '#{
|
155
|
+
r = `launchctl load -S aqua '#{scheduled_launch_file(space_name)}'`
|
156
156
|
if r.strip.ends_with?("Already loaded")
|
157
157
|
error "This task is aready scheduled, unload before scheduling again"
|
158
158
|
return
|
@@ -175,9 +175,9 @@ module Strongspace::Command
|
|
175
175
|
end
|
176
176
|
|
177
177
|
if running_on_a_mac?
|
178
|
-
if File.exist?
|
179
|
-
`launchctl unload '#{
|
180
|
-
FileUtils.rm(
|
178
|
+
if File.exist? scheduled_launch_file(space_name)
|
179
|
+
`launchctl unload '#{scheduled_launch_file(space_name)}'`
|
180
|
+
FileUtils.rm(scheduled_launch_file(space_name))
|
181
181
|
end
|
182
182
|
else # Assume we're running on linux/unix
|
183
183
|
CronEdit::Crontab.Remove "strongspace-snapshots-#{space_name}"
|
@@ -187,7 +187,7 @@ module Strongspace::Command
|
|
187
187
|
|
188
188
|
|
189
189
|
private
|
190
|
-
def
|
190
|
+
def scheduled_launch_file(space_name)
|
191
191
|
"#{launchd_agents_folder}/com.strongspace.Snapshots.#{space_name}.plist"
|
192
192
|
end
|
193
193
|
|
data/lib/strongspace/helpers.rb
CHANGED
@@ -6,7 +6,7 @@ module Strongspace
|
|
6
6
|
end
|
7
7
|
|
8
8
|
def self.home_directory
|
9
|
-
running_on_windows? ? ENV['
|
9
|
+
running_on_windows? ? ENV['APPDATA'] : ENV['HOME']
|
10
10
|
end
|
11
11
|
|
12
12
|
def home_directory
|
@@ -14,7 +14,7 @@ module Strongspace
|
|
14
14
|
end
|
15
15
|
|
16
16
|
def self.support_directory
|
17
|
-
running_on_windows? ? "#{home_directory}
|
17
|
+
running_on_windows? ? "#{home_directory}\\Strongspace" : "#{home_directory}/Library/Strongspace"
|
18
18
|
end
|
19
19
|
|
20
20
|
def support_directory
|
@@ -41,14 +41,32 @@ module Strongspace
|
|
41
41
|
"#{credentials_folder}/#{computername}.rsa"
|
42
42
|
end
|
43
43
|
|
44
|
+
def ssh_keygen_binary
|
45
|
+
return "/usr/bin/ssh-keygen" if running_on_a_mac?
|
46
|
+
return "#{support_directory}/bin/ssh-keygen.exe" if running_on_windows?
|
47
|
+
return "ssh-keygen"
|
48
|
+
end
|
49
|
+
|
50
|
+
def ssh_binary
|
51
|
+
return "/usr/bin/ssh" if running_on_a_mac?
|
52
|
+
return "#{support_directory}/bin/ssh.exe".to_cygpath if running_on_windows?
|
53
|
+
return "ssh"
|
54
|
+
end
|
55
|
+
|
44
56
|
def computername
|
45
57
|
n = File.read(credentials_file).split("\n")[2]
|
46
58
|
|
47
59
|
if n.blank?
|
48
|
-
|
60
|
+
if running_on_a_mac?
|
61
|
+
@computername ||= `system_profiler SPSoftwareDataType | grep "Computer Name"`.split(":").last.nice_slug
|
62
|
+
elsif running_on_windows?
|
63
|
+
@computername ||= ENV['COMPUTERNAME'].nice_slug
|
64
|
+
else
|
65
|
+
@computername ||= `hostname`.strip.nice_slug
|
66
|
+
end
|
49
67
|
|
50
|
-
if @computername.
|
51
|
-
@computername =
|
68
|
+
if @computername.length < 3
|
69
|
+
@computername = ENV['USER'].nice_slug
|
52
70
|
end
|
53
71
|
|
54
72
|
File.open(credentials_file, 'a') do |f|
|
@@ -332,4 +350,64 @@ unless String.method_defined?(:underscore)
|
|
332
350
|
self.gsub(/::/, '/').gsub(/([A-Z]+)([A-Z][a-z])/,'\1_\2').gsub(/([a-z\d])([A-Z])/,'\1_\2').tr("-", "_").downcase
|
333
351
|
end
|
334
352
|
end
|
335
|
-
end
|
353
|
+
end
|
354
|
+
|
355
|
+
unless String.method_defined?(:nice_slug)
|
356
|
+
class String
|
357
|
+
def nice_slug
|
358
|
+
str = self.dup
|
359
|
+
accents = {
|
360
|
+
['á','à','â','ä','ã'] => 'a',
|
361
|
+
['Ã','Ä','Â','À','Á'] => 'A',
|
362
|
+
['é','è','ê','ë'] => 'e',
|
363
|
+
['Ë','É','È','Ê'] => 'E',
|
364
|
+
['í','ì','î','ï'] => 'i',
|
365
|
+
['Í','Î','Ì','Ï'] => 'I',
|
366
|
+
['ó','ò','ô','ö','õ'] => 'o',
|
367
|
+
['Õ','Ö','Ô','Ò','Ó'] => 'O',
|
368
|
+
['ú','ù','û','ü'] => 'u',
|
369
|
+
['Ú','Û','Ù','Ü'] => 'U',
|
370
|
+
['ç'] => 'c', ['Ç'] => 'C',
|
371
|
+
['ñ'] => 'n', ['Ñ'] => 'N'
|
372
|
+
}
|
373
|
+
accents.each do |ac,rep|
|
374
|
+
ac.each do |s|
|
375
|
+
str = str.gsub(s, rep)
|
376
|
+
end
|
377
|
+
end
|
378
|
+
str = str.gsub(/[^a-zA-Z0-9\. ]/,"")
|
379
|
+
str = str.gsub(/[ ]+/," ")
|
380
|
+
str = str.gsub(/[_]/,"-")
|
381
|
+
end
|
382
|
+
end
|
383
|
+
end
|
384
|
+
|
385
|
+
unless String.method_defined?(:to_cygpath)
|
386
|
+
class String
|
387
|
+
def to_cygpath
|
388
|
+
return self unless Strongspace::Command::running_on_windows?
|
389
|
+
r = "/cygdrive/#{self[0..0].downcase}/#{self[3..-1]}".gsub("\\", "/")
|
390
|
+
return r
|
391
|
+
end
|
392
|
+
end
|
393
|
+
end
|
394
|
+
|
395
|
+
unless String.method_defined?(:from_cygpath)
|
396
|
+
class String
|
397
|
+
def from_cygpath
|
398
|
+
if self.starts_with? "/cygdrive" and Strongspace::Command::running_on_windows?
|
399
|
+
return "#{self[10..10]}:\\#{self[12..-1].gsub("/","\\")}"
|
400
|
+
end
|
401
|
+
return self
|
402
|
+
end
|
403
|
+
end
|
404
|
+
end
|
405
|
+
|
406
|
+
unless String.method_defined?(:normalize_pathslash)
|
407
|
+
class String
|
408
|
+
def normalize_pathslash
|
409
|
+
return self.gsub("/", "\\") if Strongspace::Command::running_on_windows?
|
410
|
+
return self
|
411
|
+
end
|
412
|
+
end
|
413
|
+
end
|
data/lib/strongspace/plugin.rb
CHANGED
@@ -30,8 +30,20 @@ module Strongspace
|
|
30
30
|
|
31
31
|
def self.load_default_gem_plugins
|
32
32
|
begin
|
33
|
-
require 'strongspace-rsync'
|
33
|
+
require File.dirname(__FILE__) + '/../../../strongspace-rsync/lib/strongspace-rsync'
|
34
34
|
rescue Exception => e
|
35
|
+
begin
|
36
|
+
require 'strongspace-rsync'
|
37
|
+
rescue Exception => e
|
38
|
+
end
|
39
|
+
end
|
40
|
+
begin
|
41
|
+
require File.dirname(__FILE__) + '/../../../strongspace-web/lib/strongspace-web'
|
42
|
+
rescue Exception => e
|
43
|
+
begin
|
44
|
+
require 'strongspace-web'
|
45
|
+
rescue Exception => ee
|
46
|
+
end
|
35
47
|
end
|
36
48
|
end
|
37
49
|
|
data/lib/strongspace/version.rb
CHANGED
metadata
CHANGED
@@ -1,210 +1,205 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: strongspace
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
prerelease:
|
6
|
-
segments:
|
7
|
-
- 0
|
8
|
-
- 3
|
9
|
-
- 5
|
10
|
-
version: 0.3.5
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.3.8
|
11
5
|
platform: ruby
|
12
|
-
authors:
|
6
|
+
authors:
|
13
7
|
- Strongspace
|
14
8
|
autorequire:
|
15
9
|
bindir: bin
|
16
10
|
cert_chain: []
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
dependencies:
|
21
|
-
- !ruby/object:Gem::Dependency
|
11
|
+
date: 2016-05-03 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
22
14
|
name: rake
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
hash: 3
|
30
|
-
segments:
|
31
|
-
- 0
|
32
|
-
version: "0"
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - '>='
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
33
20
|
type: :development
|
34
|
-
version_requirements: *id001
|
35
|
-
- !ruby/object:Gem::Dependency
|
36
|
-
name: ZenTest
|
37
21
|
prerelease: false
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - '>='
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: ZenTest
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - '>='
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
47
34
|
type: :development
|
48
|
-
version_requirements: *id002
|
49
|
-
- !ruby/object:Gem::Dependency
|
50
|
-
name: autotest-growl
|
51
35
|
prerelease: false
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - '>='
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: autotest-growl
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - '>='
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
61
48
|
type: :development
|
62
|
-
version_requirements: *id003
|
63
|
-
- !ruby/object:Gem::Dependency
|
64
|
-
name: rspec
|
65
49
|
prerelease: false
|
66
|
-
|
67
|
-
|
68
|
-
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rspec
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
69
59
|
- - ~>
|
70
|
-
- !ruby/object:Gem::Version
|
71
|
-
hash: 27
|
72
|
-
segments:
|
73
|
-
- 1
|
74
|
-
- 3
|
75
|
-
- 0
|
60
|
+
- !ruby/object:Gem::Version
|
76
61
|
version: 1.3.0
|
77
62
|
type: :development
|
78
|
-
version_requirements: *id004
|
79
|
-
- !ruby/object:Gem::Dependency
|
80
|
-
name: webmock
|
81
63
|
prerelease: false
|
82
|
-
|
83
|
-
|
84
|
-
requirements:
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
85
66
|
- - ~>
|
86
|
-
- !ruby/object:Gem::Version
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: 1.3.0
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: webmock
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ~>
|
74
|
+
- !ruby/object:Gem::Version
|
92
75
|
version: 1.5.0
|
93
76
|
type: :development
|
94
|
-
version_requirements: *id005
|
95
|
-
- !ruby/object:Gem::Dependency
|
96
|
-
name: sinatra
|
97
77
|
prerelease: false
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ~>
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: 1.5.0
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: sinatra
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - '>='
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
107
90
|
type: :development
|
108
|
-
version_requirements: *id006
|
109
|
-
- !ruby/object:Gem::Dependency
|
110
|
-
name: sinatra-reloader
|
111
91
|
prerelease: false
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - '>='
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: sinatra-reloader
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - '>='
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0'
|
121
104
|
type: :development
|
122
|
-
version_requirements: *id007
|
123
|
-
- !ruby/object:Gem::Dependency
|
124
|
-
name: hoptoad_notifier
|
125
105
|
prerelease: false
|
126
|
-
|
127
|
-
|
128
|
-
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - '>='
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: hoptoad_notifier
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
129
115
|
- - ~>
|
130
|
-
- !ruby/object:Gem::Version
|
131
|
-
|
132
|
-
segments:
|
133
|
-
- 2
|
134
|
-
- 4
|
135
|
-
version: "2.4"
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '2.4'
|
136
118
|
type: :development
|
137
|
-
|
138
|
-
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - ~>
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '2.4'
|
125
|
+
- !ruby/object:Gem::Dependency
|
139
126
|
name: open4
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - '>='
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: '0'
|
132
|
+
type: :runtime
|
140
133
|
prerelease: false
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - '>='
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: '0'
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: POpen4
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - '>='
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: '0'
|
150
146
|
type: :runtime
|
151
|
-
version_requirements: *id009
|
152
|
-
- !ruby/object:Gem::Dependency
|
153
|
-
name: cronedit
|
154
147
|
prerelease: false
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - '>='
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: '0'
|
153
|
+
- !ruby/object:Gem::Dependency
|
154
|
+
name: cronedit
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
156
|
+
requirements:
|
157
|
+
- - '>='
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: '0'
|
164
160
|
type: :runtime
|
165
|
-
version_requirements: *id010
|
166
|
-
- !ruby/object:Gem::Dependency
|
167
|
-
name: rest-client
|
168
161
|
prerelease: false
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
162
|
+
version_requirements: !ruby/object:Gem::Requirement
|
163
|
+
requirements:
|
164
|
+
- - '>='
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: '0'
|
167
|
+
- !ruby/object:Gem::Dependency
|
168
|
+
name: rest-client
|
169
|
+
requirement: !ruby/object:Gem::Requirement
|
170
|
+
requirements:
|
171
|
+
- - '='
|
172
|
+
- !ruby/object:Gem::Version
|
179
173
|
version: 1.6.1
|
180
174
|
type: :runtime
|
181
|
-
version_requirements: *id011
|
182
|
-
- !ruby/object:Gem::Dependency
|
183
|
-
name: json_pure
|
184
175
|
prerelease: false
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
176
|
+
version_requirements: !ruby/object:Gem::Requirement
|
177
|
+
requirements:
|
178
|
+
- - '='
|
179
|
+
- !ruby/object:Gem::Version
|
180
|
+
version: 1.6.1
|
181
|
+
- !ruby/object:Gem::Dependency
|
182
|
+
name: json_pure
|
183
|
+
requirement: !ruby/object:Gem::Requirement
|
184
|
+
requirements:
|
185
|
+
- - '='
|
186
|
+
- !ruby/object:Gem::Version
|
187
|
+
version: 1.8.3
|
196
188
|
type: :runtime
|
197
|
-
|
189
|
+
prerelease: false
|
190
|
+
version_requirements: !ruby/object:Gem::Requirement
|
191
|
+
requirements:
|
192
|
+
- - '='
|
193
|
+
- !ruby/object:Gem::Version
|
194
|
+
version: 1.8.3
|
198
195
|
description: Client library and command line tool for Strongspace.
|
199
196
|
email: support@strongspace.com
|
200
|
-
executables:
|
197
|
+
executables:
|
201
198
|
- strongspace
|
202
199
|
- ss
|
203
200
|
extensions: []
|
204
|
-
|
205
201
|
extra_rdoc_files: []
|
206
|
-
|
207
|
-
files:
|
202
|
+
files:
|
208
203
|
- bin/as_installed/ss
|
209
204
|
- bin/as_installed/strongspace
|
210
205
|
- bin/ss
|
@@ -229,39 +224,27 @@ files:
|
|
229
224
|
- spec/auth_spec.rb
|
230
225
|
- spec/base.rb
|
231
226
|
- spec/client_spec.rb
|
232
|
-
has_rdoc: true
|
233
227
|
homepage: http://github.com/expandrive/strongspace
|
234
228
|
licenses: []
|
235
|
-
|
229
|
+
metadata: {}
|
236
230
|
post_install_message:
|
237
231
|
rdoc_options: []
|
238
|
-
|
239
|
-
require_paths:
|
232
|
+
require_paths:
|
240
233
|
- lib
|
241
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
none: false
|
252
|
-
requirements:
|
253
|
-
- - ">="
|
254
|
-
- !ruby/object:Gem::Version
|
255
|
-
hash: 3
|
256
|
-
segments:
|
257
|
-
- 0
|
258
|
-
version: "0"
|
234
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
235
|
+
requirements:
|
236
|
+
- - '>='
|
237
|
+
- !ruby/object:Gem::Version
|
238
|
+
version: '0'
|
239
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
240
|
+
requirements:
|
241
|
+
- - '>='
|
242
|
+
- !ruby/object:Gem::Version
|
243
|
+
version: '0'
|
259
244
|
requirements: []
|
260
|
-
|
261
245
|
rubyforge_project:
|
262
|
-
rubygems_version:
|
246
|
+
rubygems_version: 2.0.14.1
|
263
247
|
signing_key:
|
264
|
-
specification_version:
|
248
|
+
specification_version: 4
|
265
249
|
summary: Client library and CLI for Strongspace.
|
266
250
|
test_files: []
|
267
|
-
|