ligo 0.1.2 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 6fb5c6a8d9e9b7e1a45bd6eb8a2b192fc37ed4ea
4
+ data.tar.gz: db5de8f7375959d8a240c4335465a9d35ba8a3e3
5
+ SHA512:
6
+ metadata.gz: 9d3ce42e3b150cd8d66b627b9cf042ed294eb8e1f9a3ba0714d83b6c1f9babaf2753b158c2ec09331905571cae061630125c037f59d46de25d567fef21d0508f
7
+ data.tar.gz: 0956e853c8d4ec479a2e457789a1944dcb6a0bd7859122e2a40cb9062d81bded064268f6118def0d9d924e6c4732a27c6e85b06c9c7e78d26ba1ff61dba56b3b
@@ -1,3 +1,7 @@
1
+ ### 0.2.0 / 2016-03-18
2
+
3
+ * Enable to configure the reenumeration delay (i.e. when the device switches from nominal to accessory mode by re-introduce itself on the USB bus)
4
+
1
5
  ### 0.1.2 / 2013-11-14
2
6
 
3
7
  * Add Windows support
@@ -78,7 +78,4 @@ module Ligo
78
78
  # Accessory Protocol "Accessory Mode Start Up" commands
79
79
  COMMAND_START = 53
80
80
 
81
- # USB reenumeration delay in seconds
82
- REENUMERATION_DELAY = 1
83
-
84
81
  end
@@ -19,6 +19,17 @@ module Ligo
19
19
 
20
20
  require 'ligo/constants'
21
21
 
22
+ # USB reenumeration delay in seconds
23
+ @@reenumeration_delay = 1
24
+
25
+ def self.setDelay(x)
26
+ @@reenumeration_delay = x
27
+ end
28
+
29
+ def self.getDelay
30
+ @@reenumeration_delay
31
+ end
32
+
22
33
  # This class provides a convenient wrapper class around `LIBUSB::Device` and
23
34
  # implements the Android Open Accessory Protocol to interact with compatible
24
35
  # devices.
@@ -152,7 +163,7 @@ module Ligo
152
163
  set_configuration
153
164
  rescue LIBUSB::ERROR_NO_DEVICE
154
165
  logger.debug ' set_configuration raises LIBUSB::ERROR_NO_DEVICE - Retry'
155
- sleep REENUMERATION_DELAY
166
+ sleep Ligo::getDelay
156
167
  # Set configuration may fail
157
168
  retry
158
169
  end
@@ -322,7 +333,7 @@ module Ligo
322
333
  # @api private
323
334
  # @return [true, false] true for success, false otherwise.
324
335
  def wait_and_retrieve_by_serial(sn)
325
- sleep REENUMERATION_DELAY
336
+ sleep Ligo::getDelay
326
337
  # The device should now reappear on the usb bus with the Google vendor id.
327
338
  # We retrieve it by using its serial number.
328
339
  device = get_device(sn)
@@ -17,5 +17,5 @@
17
17
 
18
18
  module Ligo
19
19
  # ligō version
20
- VERSION = "0.1.2"
20
+ VERSION = "0.2.0"
21
21
  end
@@ -1,6 +1,7 @@
1
1
  # -*- encoding: utf-8 -*-
2
2
 
3
3
  require File.expand_path('../lib/ligo/version', __FILE__)
4
+ require 'date'
4
5
 
5
6
  Gem::Specification.new do |gem|
6
7
  gem.name = 'ligo'
@@ -9,7 +10,7 @@ Gem::Specification.new do |gem|
9
10
  gem.date = Date.today
10
11
  gem.summary = %q{A ruby utility to create virtual accessories able to communicate with Android devices.}
11
12
  gem.description = %q{Ligo: virtual accessories for Android}
12
- gem.license = 'Apache License, Version 2.0'
13
+ gem.license = 'Apache-2.0'
13
14
  gem.authors = ['Renaud AUBIN']
14
15
  gem.email = 'root@renaud.io'
15
16
  gem.homepage = 'https://github.com/nibua-r/ligo#readme'
@@ -19,7 +20,7 @@ Gem::Specification.new do |gem|
19
20
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
20
21
  gem.require_paths = ['lib']
21
22
 
22
- gem.add_dependency 'libusb', '>= 0.3.4'
23
+ gem.add_runtime_dependency 'libusb', '~> 0.3', '>= 0.3.4'
23
24
 
24
25
  gem.add_development_dependency 'rspec', '~> 2.13'
25
26
  gem.add_development_dependency 'rubygems-tasks', '~> 0.2.4'
metadata CHANGED
@@ -1,123 +1,116 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ligo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
5
- prerelease:
4
+ version: 0.2.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Renaud AUBIN
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-11-14 00:00:00.000000000 Z
11
+ date: 2016-03-18 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: libusb
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '0.3'
20
+ - - ">="
20
21
  - !ruby/object:Gem::Version
21
22
  version: 0.3.4
22
23
  type: :runtime
23
24
  prerelease: false
24
25
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
26
  requirements:
27
- - - ! '>='
27
+ - - "~>"
28
+ - !ruby/object:Gem::Version
29
+ version: '0.3'
30
+ - - ">="
28
31
  - !ruby/object:Gem::Version
29
32
  version: 0.3.4
30
33
  - !ruby/object:Gem::Dependency
31
34
  name: rspec
32
35
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
36
  requirements:
35
- - - ~>
37
+ - - "~>"
36
38
  - !ruby/object:Gem::Version
37
39
  version: '2.13'
38
40
  type: :development
39
41
  prerelease: false
40
42
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
43
  requirements:
43
- - - ~>
44
+ - - "~>"
44
45
  - !ruby/object:Gem::Version
45
46
  version: '2.13'
46
47
  - !ruby/object:Gem::Dependency
47
48
  name: rubygems-tasks
48
49
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
50
  requirements:
51
- - - ~>
51
+ - - "~>"
52
52
  - !ruby/object:Gem::Version
53
53
  version: 0.2.4
54
54
  type: :development
55
55
  prerelease: false
56
56
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
57
  requirements:
59
- - - ~>
58
+ - - "~>"
60
59
  - !ruby/object:Gem::Version
61
60
  version: 0.2.4
62
61
  - !ruby/object:Gem::Dependency
63
62
  name: yard
64
63
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
64
  requirements:
67
- - - ~>
65
+ - - "~>"
68
66
  - !ruby/object:Gem::Version
69
67
  version: 0.8.7.2
70
68
  type: :development
71
69
  prerelease: false
72
70
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
71
  requirements:
75
- - - ~>
72
+ - - "~>"
76
73
  - !ruby/object:Gem::Version
77
74
  version: 0.8.7.2
78
75
  - !ruby/object:Gem::Dependency
79
76
  name: yardstick
80
77
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
78
  requirements:
83
- - - ~>
79
+ - - "~>"
84
80
  - !ruby/object:Gem::Version
85
81
  version: 0.9.5
86
82
  type: :development
87
83
  prerelease: false
88
84
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
85
  requirements:
91
- - - ~>
86
+ - - "~>"
92
87
  - !ruby/object:Gem::Version
93
88
  version: 0.9.5
94
89
  - !ruby/object:Gem::Dependency
95
90
  name: pry
96
91
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
92
  requirements:
99
- - - ~>
93
+ - - "~>"
100
94
  - !ruby/object:Gem::Version
101
95
  version: 0.9.12
102
96
  type: :development
103
97
  prerelease: false
104
98
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
99
  requirements:
107
- - - ~>
100
+ - - "~>"
108
101
  - !ruby/object:Gem::Version
109
102
  version: 0.9.12
110
- description: ! 'Ligo: virtual accessories for Android'
103
+ description: 'Ligo: virtual accessories for Android'
111
104
  email: root@renaud.io
112
105
  executables:
113
106
  - ligo-sample
114
107
  extensions: []
115
108
  extra_rdoc_files: []
116
109
  files:
117
- - .document
118
- - .gitignore
119
- - .rspec
120
- - .yardopts
110
+ - ".document"
111
+ - ".gitignore"
112
+ - ".rspec"
113
+ - ".yardopts"
121
114
  - ChangeLog.md
122
115
  - LICENSE.txt
123
116
  - NOTICE.txt
@@ -139,28 +132,27 @@ files:
139
132
  - spec/spec_helper.rb
140
133
  homepage: https://github.com/nibua-r/ligo#readme
141
134
  licenses:
142
- - Apache License, Version 2.0
135
+ - Apache-2.0
136
+ metadata: {}
143
137
  post_install_message:
144
138
  rdoc_options: []
145
139
  require_paths:
146
140
  - lib
147
141
  required_ruby_version: !ruby/object:Gem::Requirement
148
- none: false
149
142
  requirements:
150
- - - ! '>='
143
+ - - ">="
151
144
  - !ruby/object:Gem::Version
152
145
  version: '0'
153
146
  required_rubygems_version: !ruby/object:Gem::Requirement
154
- none: false
155
147
  requirements:
156
- - - ! '>='
148
+ - - ">="
157
149
  - !ruby/object:Gem::Version
158
150
  version: '0'
159
151
  requirements: []
160
152
  rubyforge_project:
161
- rubygems_version: 1.8.23
153
+ rubygems_version: 2.5.1
162
154
  signing_key:
163
- specification_version: 3
155
+ specification_version: 4
164
156
  summary: A ruby utility to create virtual accessories able to communicate with Android
165
157
  devices.
166
158
  test_files: