ligo 0.1.2 → 0.2.0

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.
@@ -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: