ruboto 0.12.0.rc.0 → 0.12.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: e168f6e2a533fb4ab7c97406bed3abc55d9b2f8a
4
+ data.tar.gz: 617d03520fe138e398425e6e959524f98def6900
5
+ SHA512:
6
+ metadata.gz: c61a80b14c92eb6fa98ef657928b8ba720cbde9dbd5a2c5b1d00926b0ea2be3d1809a62fb105f9f38ea261a6cfc9100bb5b8f7540e0410e7854f652ffe985fc5
7
+ data.tar.gz: 221be24b4f6ede0f49c4d6c9f05dfddd022b3a82d966998f94fb66800e0aec36ae2b0403959bede0b51d972df4b5bd9f36fded23e41a23f0296574185f482756
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- ruboto (0.12.0.dev)
4
+ ruboto (0.12.0)
5
5
  main (>= 4.7.2)
6
6
 
7
7
  GEM
@@ -15,7 +15,7 @@ GEM
15
15
  chronic (>= 0.6.2)
16
16
  fattr (>= 2.2.0)
17
17
  map (>= 5.1.0)
18
- map (6.3.0)
18
+ map (6.5.1)
19
19
  rake (10.0.4)
20
20
 
21
21
  PLATFORMS
data/Rakefile CHANGED
@@ -136,6 +136,45 @@ task :release_docs do
136
136
  cat ||= 'Other'
137
137
  cat
138
138
  end
139
+
140
+ puts '=' * 80
141
+ puts
142
+ puts <<EOF
143
+ Subject: [ANN] Ruboto #{milestone_name} release candidate
144
+
145
+ Hi all!
146
+
147
+ The Ruboto #{milestone_name} release candidate is now available.
148
+
149
+ #{milestone_description}
150
+
151
+ As always we need your help and feedback to ensure the quality of the release. Please install the release candidate using
152
+
153
+ [sudo] gem install ruboto --pre
154
+
155
+ and test your apps after updating with
156
+
157
+ ruboto update app
158
+
159
+ If you have an app released for public consumption, please let us know. Our developer program seeks to help developers getting started using Ruboto, and ensure good quality across Ruboto releases. Currently we are supporting the apps listed here:
160
+
161
+ https://github.com/ruboto/ruboto/wiki/Promoted-apps
162
+
163
+ If you are just starting with Ruboto, but still want to contribute, please select and complete one of the tutorials and mark it with the version of Ruboto you used.
164
+
165
+ https://github.com/ruboto/ruboto/wiki/Tutorials-and-examples
166
+
167
+ If you find a bug or have a suggestion, please file an issue in the issue tracker:
168
+
169
+ https://github.com/ruboto/ruboto/issues
170
+
171
+ --
172
+ The Ruboto Team
173
+ http://ruboto.org/
174
+
175
+ EOF
176
+
177
+ puts '=' * 80
139
178
  puts
140
179
  puts "Subject: [ANN] Ruboto #{milestone_name} released!"
141
180
  puts
@@ -158,15 +197,26 @@ task :release_docs do
158
197
  puts <<EOF
159
198
  Installation:
160
199
 
161
- To use Ruboto, you need to install a Java JDK, the Android SDK, Apache ANT, and a Ruby implementation. Then do (possibly as root)
200
+ To use Ruboto, you need to install a Ruby implementation. Then do (possibly as root)
162
201
 
163
202
  gem install ruboto
164
-
203
+ ruboto setup
165
204
 
166
205
  To create a project do
167
206
 
168
207
  ruboto gen app --package <your.package.name>
208
+ cd <project directory>
209
+ ruboto setup
210
+
211
+ To run an emulator for your project
169
212
 
213
+ cd <project directory>
214
+ rake emulator
215
+
216
+ To run your project
217
+
218
+ cd <project directory>
219
+ rake install start
170
220
 
171
221
  You can find an introductory tutorial at https://github.com/ruboto/ruboto/wiki
172
222
 
@@ -180,7 +230,7 @@ The Ruboto Team
180
230
  http://ruboto.org/
181
231
 
182
232
  EOF
183
-
233
+ puts '=' * 80
184
234
  end
185
235
 
186
236
  desc 'Fetch download stats form rubygems.org'
@@ -262,8 +312,8 @@ end
262
312
 
263
313
  desc 'Push the gem to RubyGems'
264
314
  task :release => [:clean, :gem] do
265
- output = `git status --porcelain`
266
- raise "Workspace not clean!\n#{output}" unless output.empty?
315
+ #output = `git status --porcelain`
316
+ #raise "Workspace not clean!\n#{output}" unless output.empty?
267
317
  sh "git tag #{Ruboto::VERSION}"
268
318
  sh 'git push --tags'
269
319
  sh "gem push #{GEM_FILE}"
@@ -272,7 +322,7 @@ task :release => [:clean, :gem] do
272
322
  sh "git rm #{examples_glob}" unless Dir[examples_glob].empty?
273
323
  Rake::Task[:example].invoke
274
324
  sh "git add #{EXAMPLE_FILE}"
275
- sh "git commit -m '* Added example app for Ruboto #{Ruboto::VERSION} tools r#{Ruboto::SdkVersions::ANDROID_TOOLS_REVISION}' \"#{examples_glob}\""
325
+ sh "git commit -m '* Added example app for Ruboto #{Ruboto::VERSION} tools r#{Ruboto::SdkLocations::ANDROID_TOOLS_REVISION}' \"#{examples_glob}\""
276
326
  sh 'git push'
277
327
  end
278
328
 
@@ -48,29 +48,23 @@ if new_dx_content =~ xmx_pattern &&
48
48
  ($1.to_i * 1024 ** {'M' => 2, 'G' => 3, 'T' => 4}[$2.upcase]) < MINIMUM_DX_HEAP_SIZE*1024**2
49
49
  puts "Increasing max heap space from #$1#$2 to #{MINIMUM_DX_HEAP_SIZE}M in #{dx_filename}"
50
50
  new_dx_content.sub!(xmx_pattern, %Q{defaultMx="-Xmx#{MINIMUM_DX_HEAP_SIZE}M"})
51
- File.open(dx_filename, 'w') { |f| f << new_dx_content } rescue puts "\n!!! Unable to increase dx heap size !!!\n\n"
52
- puts new_dx_content.lines.grep(xmx_pattern)
53
- end
54
-
55
- def manifest;
56
- @manifest ||= REXML::Document.new(File.read(MANIFEST_FILE))
57
- end
58
51
 
59
- def package;
60
- manifest.root.attribute('package')
61
- end
52
+ # FIXME(uwe): For travis debugging Remove when travis is stable.
53
+ new_dx_content.sub!(/^exec/, "free\necho Virtual:\nps -e -ovsize=,args= | sort -b -k1,1n | tail -n10\necho RSS:\nps -e -orss=,args= | sort -b -k1,1n | tail -n10\necho $javaOpts\necho $@\nexec") if RbConfig::CONFIG['host_os'] =~ /linux/
54
+ # EMXIF
62
55
 
63
- def build_project_name;
64
- @build_project_name ||= REXML::Document.new(File.read('build.xml')).elements['project'].attribute(:name).value
65
- end
56
+ File.open(dx_filename, 'w') { |f| f << new_dx_content } rescue puts "\n!!! Unable to increase dx heap size !!!\n\n"
66
57
 
67
- def scripts_path;
68
- @sdcard_path ||= "/mnt/sdcard/Android/data/#{package}/files/scripts"
58
+ # FIXME(uwe): For travis debugging Remove when travis is stable.
59
+ puts new_dx_content.lines.grep(xmx_pattern)
60
+ # EMXIF
69
61
  end
70
62
 
71
- def app_files_path;
72
- @app_files_path ||= "/data/data/#{package}/files"
73
- end
63
+ def manifest; @manifest ||= REXML::Document.new(File.read(MANIFEST_FILE)) end
64
+ def package; manifest.root.attribute('package') end
65
+ def build_project_name; @build_project_name ||= REXML::Document.new(File.read('build.xml')).elements['project'].attribute(:name).value end
66
+ def scripts_path; @sdcard_path ||= "/mnt/sdcard/Android/data/#{package}/files/scripts" end
67
+ def app_files_path; @app_files_path ||= "/data/data/#{package}/files" end
74
68
 
75
69
  PROJECT_DIR = File.expand_path('..', File.dirname(__FILE__))
76
70
  UPDATE_MARKER_FILE = File.join(PROJECT_DIR, 'bin', 'LAST_UPDATE')
@@ -573,7 +567,6 @@ def build_apk(t, release)
573
567
  if release
574
568
  sh "#{ANT_CMD} release"
575
569
  else
576
- p RbConfig::CONFIG['host_os']
577
570
  sh 'free' if RbConfig::CONFIG['host_os'] =~ /linux/
578
571
  sh "#{ANT_CMD} debug"
579
572
  end
@@ -3,6 +3,7 @@ require 'ruboto/sdk_versions'
3
3
  module Ruboto
4
4
  module Util
5
5
  module Setup
6
+ include Ruboto::SdkVersions
6
7
  # Todo: Find a way to look this up
7
8
  ANDROID_SDK_VERSION = '21.1'
8
9
 
@@ -12,7 +13,7 @@ module Ruboto
12
13
  #
13
14
 
14
15
  def setup_ruboto
15
- check = check_all
16
+ check = check_all
16
17
 
17
18
  if not check and RbConfig::CONFIG['host_os'] == /^windows(.*)/
18
19
  puts "\nWe can't directly install Android on Windows."
@@ -20,10 +21,10 @@ module Ruboto
20
21
  puts 'please file an issue at https://github.com/ruboto/ruboto/issues'
21
22
  puts
22
23
  return
23
- end
24
+ end
24
25
 
25
- install_all if not check
26
- config_path
26
+ install_all if not check
27
+ config_path
27
28
  end
28
29
 
29
30
  #########################################
@@ -33,9 +34,12 @@ module Ruboto
33
34
 
34
35
  def android_package_os_id
35
36
  case RbConfig::CONFIG['host_os']
36
- when /^darwin(.*)/ then 'macosx'
37
- when /^linux(.*)/ then 'linux'
38
- when /^windows(.*)/ then 'windows'
37
+ when /^darwin(.*)/ then
38
+ 'macosx'
39
+ when /^linux(.*)/ then
40
+ 'linux'
41
+ when /^mswin32|windows(.*)/ then
42
+ 'windows'
39
43
  else
40
44
  ## Error
41
45
  nil
@@ -43,23 +47,30 @@ module Ruboto
43
47
  end
44
48
 
45
49
  def android_package_directory
46
- "android-sdk-#{android_package_os_id}"
50
+ if RbConfig::CONFIG['host_os'] =~ /^mswin32|windows(.*)/
51
+ 'AppData/Local/Android/android-sdk'
52
+ else
53
+ "android-sdk-#{android_package_os_id}"
54
+ end
47
55
  end
48
56
 
49
57
  def api_level
50
58
  begin
51
59
  return $1 if File.read('project.properties') =~ /target=(.*)/
52
60
  rescue
61
+ # ignored
53
62
  end
54
-
55
- Ruboto::SdkVersions::DEFAULT_TARGET_SDK
63
+ DEFAULT_TARGET_SDK
56
64
  end
57
65
 
58
66
  def path_setup_file
59
67
  case RbConfig::CONFIG['host_os']
60
- when /^darwin(.*)/ then '.profile'
61
- when /^linux(.*)/ then '.bashrc'
62
- when /^windows(.*)/ then 'windows'
68
+ when /^darwin(.*)/ then
69
+ '.profile'
70
+ when /^linux(.*)/ then
71
+ '.bashrc'
72
+ when /^mswin32|windows(.*)/ then
73
+ 'windows'
63
74
  ## Error
64
75
  else
65
76
  ## Error
@@ -94,19 +105,19 @@ module Ruboto
94
105
  @javac_loc = check_for('javac', 'Java Compiler')
95
106
  @ant_loc = check_for('ant', 'Apache ANT')
96
107
  @android_loc = check_for('android', 'Android Package Installer',
97
- File.join(File.expand_path('~'), android_package_directory, 'tools', 'android'))
108
+ File.join(File.expand_path('~'), android_package_directory, 'tools', 'android'))
98
109
  @emulator_loc = check_for('emulator', 'Android Emulator')
99
110
  @adb_loc = check_for('adb', 'Android SDK Command adb',
100
- File.join(File.expand_path('~'), android_package_directory, 'platform-tools', 'adb'))
111
+ File.join(File.expand_path('~'), android_package_directory, 'platform-tools', 'adb'))
101
112
  @dx_loc = check_for('dx', 'Android SDK Command dx')
102
113
  check_for_android_platform
103
114
 
104
115
  puts
105
116
  if @java_loc && @javac_loc && @adb_loc && @dx_loc && @emulator_loc && @platform_sdk_loc
106
- puts " *** Ruboto setup is OK! ***\n"
117
+ puts " *** Ruboto setup is OK! ***\n\n"
107
118
  true
108
119
  else
109
- puts " !!! Ruboto setup is NOT OK !!!\n"
120
+ puts " !!! Ruboto setup is NOT OK !!!\n\n"
110
121
  false
111
122
  end
112
123
  end
@@ -121,7 +132,7 @@ module Ruboto
121
132
  @missing_paths << "#{File.dirname(rv)}"
122
133
  end
123
134
 
124
- puts "#{pretty_name || cmd}: " + (rv ? "Found at #{rv}" : 'Not found')
135
+ puts "#{pretty_name || cmd}: " + (rv ? "Found at #{rv}" : 'Not found')
125
136
  rv
126
137
  end
127
138
 
@@ -145,11 +156,95 @@ module Ruboto
145
156
  #
146
157
 
147
158
  def install_all
159
+ install_java
148
160
  install_android
149
161
  install_adb
150
162
  install_platform
151
163
  end
152
164
 
165
+ def install_java
166
+ case RbConfig::CONFIG['host_os']
167
+ when /^darwin(.*)/
168
+ when /^linux(.*)/
169
+ when /^mswin32|windows(.*)/
170
+ # FIXME(uwe): Detect and warn if we are not "elevated" with adminstrator rights.
171
+ #set IS_ELEVATED=0
172
+ #whoami /groups | findstr /b /c:"Mandatory Label\High Mandatory Level" | findstr /c:"Enabled group" > nul: && set IS_ELEVATED=1
173
+ #if %IS_ELEVATED%==0 (
174
+ # echo You must run the command prompt as administrator to install.
175
+ # exit /b 1
176
+ #)
177
+
178
+ java_installer_file_name = 'jdk-7-windows-x64.exe'
179
+ require 'net/http'
180
+ require 'net/https'
181
+ resp = nil
182
+ @cookies = ['gpw_e24=http%3A%2F%2Fwww.oracle.com']
183
+ puts 'Downloading...'
184
+ Net::HTTP.start('download.oracle.com') do |http|
185
+ resp, _ = http.get("/otn-pub/java/jdk/7/#{java_installer_file_name}", cookie_header)
186
+ resp.body
187
+ end
188
+ resp = process_response(resp)
189
+ open(java_installer_file_name, 'wb') { |file| file.write(resp.body) }
190
+ puts "Installing #{java_installer_file_name}..."
191
+ system java_installer_file_name
192
+ raise "Unexpected exit code while installing Java: #{$?}" unless $? == 0
193
+ FileUtils.rm_f java_installer_file_name
194
+ return
195
+ else
196
+ raise "Unknown host os: #{RbConfig::CONFIG['host_os']}"
197
+ end
198
+ end
199
+
200
+ def cookie_header
201
+ return {} if @cookies.empty?
202
+ {'Cookie' => @cookies.join(';')}
203
+ end
204
+ private :cookie_header
205
+
206
+ def store_cookie(response)
207
+ return unless response['set-cookie']
208
+ header = response['set-cookie']
209
+ header.gsub! /expires=.{3},/, ''
210
+ header.split(',').each do |cookie|
211
+ cookie_value = cookie.strip.slice(/^.*?;/).chomp(';')
212
+ if cookie_value =~ /^(.*?)=(.*)$/
213
+ name = $1
214
+ @cookies.delete_if { |c| c =~ /^#{name}=/ }
215
+ end
216
+ @cookies << cookie_value unless cookie_value =~ /^.*?=$/
217
+ end
218
+ @cookies.uniq!
219
+ end
220
+ private :store_cookie
221
+
222
+ def process_response(response)
223
+ store_cookie(response)
224
+ if response.code == '302'
225
+ redirect_url = response['location']
226
+ puts "Following redirect to #{redirect_url}"
227
+ url = URI.parse(redirect_url)
228
+ if redirect_url =~ /^http:\/\//
229
+ Net::HTTP.start(url.host, url.port) do |http|
230
+ response = http.get(redirect_url, cookie_header)
231
+ response.body
232
+ end
233
+ else
234
+ http = Net::HTTP.new(url.host, url.port)
235
+ http.use_ssl = true
236
+ http.verify_mode = OpenSSL::SSL::VERIFY_NONE
237
+ response = http.get(redirect_url, cookie_header)
238
+ response.body
239
+ end
240
+ return process_response(response)
241
+ elsif response.code != '200'
242
+ raise "Got response code #{response.code}"
243
+ end
244
+ response
245
+ end
246
+ private :process_response
247
+
153
248
  def install_android
154
249
  unless @android_loc
155
250
  puts 'Android package installer not found.'
@@ -158,7 +253,7 @@ module Ruboto
158
253
  if a == 'Y' || a.empty?
159
254
  Dir.chdir File.expand_path('~/') do
160
255
  case RbConfig::CONFIG['host_os']
161
- when /^darwin(.*)/
256
+ when /^darwin(.*)/
162
257
  asdk_file_name = "android-sdk_r#{ANDROID_SDK_VERSION}-#{android_package_os_id}.zip"
163
258
  system "wget http://dl.google.com/android/#{asdk_file_name}"
164
259
  system "unzip #{asdk_file_name}"
@@ -168,11 +263,29 @@ module Ruboto
168
263
  system "wget http://dl.google.com/android/#{asdk_file_name}"
169
264
  system "tar -xzf #{asdk_file_name}"
170
265
  system "rm #{asdk_file_name}"
171
- when /^windows(.*)/
172
- # Todo: Need platform independent download
173
- ## Error
266
+ when /^mswin32|windows(.*)/
267
+ # FIXME(uwe): Detect and warn if we are not "elevated" with adminstrator rights.
268
+ #set IS_ELEVATED=0
269
+ #whoami /groups | findstr /b /c:"Mandatory Label\High Mandatory Level" | findstr /c:"Enabled group" > nul: && set IS_ELEVATED=1
270
+ #if %IS_ELEVATED%==0 (
271
+ # echo You must run the command prompt as administrator to install.
272
+ # exit /b 1
273
+ #)
274
+
174
275
  asdk_file_name = "installer_r#{ANDROID_SDK_VERSION}-#{android_package_os_id}.exe"
276
+ require 'net/http'
277
+ Net::HTTP.start('dl.google.com') do |http|
278
+ puts 'Downloading...'
279
+ resp = http.get("/android/#{asdk_file_name}")
280
+ open(asdk_file_name, 'wb') { |file| file.write(resp.body) }
281
+ end
282
+ puts "Installing #{asdk_file_name}..."
283
+ system asdk_file_name
284
+ raise "Unexpected exit code while installing the Android SDK: #{$?}" unless $? == 0
285
+ FileUtils.rm_f asdk_file_name
175
286
  return
287
+ else
288
+ raise "Unknown host os: #{RbConfig::CONFIG['host_os']}"
176
289
  end
177
290
  end
178
291
  @android_loc = File.join(File.expand_path('~'), android_package_directory, 'tools', 'android')
@@ -215,23 +328,31 @@ module Ruboto
215
328
 
216
329
  def config_path
217
330
  unless @missing_paths.empty?
218
- puts "\nYou are missing some paths. Execute these lines to add them:\n\n"
219
- @missing_paths.each do |path|
220
- puts %Q{ export PATH="#{path}:$PATH"}
221
- end
222
- print "\nWould you like to append these lines to your configuration script? (Y/n): "
223
- a = STDIN.gets.chomp.upcase
224
- if a == 'Y' || a.empty?
225
- print "What script do you use to configure your PATH? (#{path_setup_file}): "
226
- a = STDIN.gets.chomp.downcase
227
-
228
- File.open(File.expand_path("~/#{a.empty? ? path_setup_file : a}"), 'a') do |f|
229
- f.puts "\n# BEGIN Ruboto PATH setup"
230
- @missing_paths.each{|path| f.puts %Q{export PATH="#{path}:$PATH"}}
231
- f.puts '# END Ruboto PATH setup'
232
- f.puts
331
+ if RbConfig::CONFIG['host_os'] =~ /^mswin32|windows(.*)/
332
+ puts "\nYou are missing some paths. Execute these lines to add them:\n\n"
333
+ @missing_paths.each do |path|
334
+ puts %Q{ set PATH="#{path.gsub '/', '\\'};%PATH%"}
335
+ end
336
+ system %Q{setx PATH "%PATH%;#{@missing_paths.map{|path| path.gsub '/', '\\'}.join(';')}"}
337
+ else
338
+ puts "\nYou are missing some paths. Execute these lines to add them:\n\n"
339
+ @missing_paths.each do |path|
340
+ puts %Q{ export PATH="#{path}:$PATH"}
341
+ end
342
+ print "\nWould you like to append these lines to your configuration script? (Y/n): "
343
+ a = STDIN.gets.chomp.upcase
344
+ if a == 'Y' || a.empty?
345
+ print "What script do you use to configure your PATH? (#{path_setup_file}): "
346
+ a = STDIN.gets.chomp.downcase
347
+
348
+ File.open(File.expand_path("~/#{a.empty? ? path_setup_file : a}"), 'a') do |f|
349
+ f.puts "\n# BEGIN Ruboto PATH setup"
350
+ @missing_paths.each { |path| f.puts %Q{export PATH="#{path}:$PATH"} }
351
+ f.puts '# END Ruboto PATH setup'
352
+ f.puts
353
+ end
354
+ puts 'Path updated. Please close your command window and reopen.'
233
355
  end
234
- puts 'Path updated. Please close your command window and reopen.'
235
356
  end
236
357
  end
237
358
  end
@@ -363,7 +363,7 @@ module Ruboto
363
363
  `jar -xf #{jruby_core}`
364
364
  raise "Unpacking jruby-core jar failed: #$?" unless $? == 0
365
365
  File.delete jruby_core
366
- if Gem::Version.new(jruby_core_version) >= Gem::Version.new('1.7.3.dev')
366
+ if Gem::Version.new(jruby_core_version) >= Gem::Version.new('1.7.4.dev')
367
367
  #noinspection RubyLiteralArrayInspection
368
368
  excluded_core_packages = [
369
369
  '**/*Darwin*',
@@ -384,10 +384,12 @@ module Ruboto
384
384
  'jnr/constants/platform/sunos',
385
385
  'jnr/ffi/annotations',
386
386
  'jnr/ffi/byref',
387
+ 'jnr/ffi/mapper',
387
388
  'jnr/ffi/provider',
388
389
  'jnr/ffi/util',
389
390
  'jnr/ffi/Struct$*',
390
391
  'jnr/ffi/types',
392
+ 'jnr/posix/Aix*',
391
393
  'jnr/posix/FreeBSD*',
392
394
  'jnr/posix/MacOS*',
393
395
  'jnr/posix/OpenBSD*',
@@ -408,6 +410,8 @@ module Ruboto
408
410
  'org/jruby/ext/ffi/AbstractMemory*',
409
411
  'org/jruby/ext/ffi/io',
410
412
  'org/jruby/ext/ffi/jffi',
413
+ 'org/jruby/ext/ripper',
414
+ 'org/jruby/ext/tracepoint',
411
415
  #'org/jruby/ir/dataflow',
412
416
  #'org/jruby/ir/dataflow/analyses',
413
417
  #'org/jruby/ir/representations',
@@ -420,10 +424,12 @@ module Ruboto
420
424
  # 'org/jruby/runtime/invokedynamic', # Should be excluded
421
425
  'org/yecht',
422
426
  ]
423
- elsif Gem::Version.new(jruby_core_version) >= Gem::Version.new('1.7.2')
424
- excluded_core_packages = %w(**/*Darwin* **/*Ruby20* **/*Solaris* **/*windows* **/*Windows* META-INF com/headius com/kenai/constantine com/kenai/jffi com/martiansoftware jline jni jnr/constants/platform/darwin jnr/constants/platform/fake jnr/constants/platform/freebsd jnr/constants/platform/openbsd jnr/constants/platform/sunos jnr/ffi/annotations jnr/ffi/byref jnr/ffi/provider jnr/ffi/util jnr/ffi/Struct$* jnr/ffi/types jnr/posix/MacOS* jnr/posix/OpenBSD* org/apache org/fusesource org/jruby/ant org/jruby/cext org/jruby/compiler/util org/jruby/demo org/jruby/embed/bsf org/jruby/embed/jsr223 org/jruby/embed/osgi org/jruby/ext/ffi/io org/jruby/ext/ffi/jffi org/jruby/javasupport/bsf)
425
- elsif Gem::Version.new(jruby_core_version) >= Gem::Version.new('1.7.1')
426
- excluded_core_packages = %w(**/*Darwin* **/*Ruby20* **/*Solaris* **/*windows* **/*Windows* META-INF com/headius com/kenai/constantine com/kenai/jffi com/martiansoftware jline jni jnr/constants/platform/darwin jnr/constants/platform/fake jnr/constants/platform/freebsd jnr/constants/platform/openbsd jnr/constants/platform/sunos jnr/ffi/annotations jnr/ffi/byref jnr/ffi/provider jnr/ffi/util jnr/ffi/Struct$* jnr/ffi/types jnr/posix/MacOS* jnr/posix/OpenBSD* org/apache org/fusesource org/jruby/ant org/jruby/cext org/jruby/compiler/util org/jruby/demo org/jruby/embed/bsf org/jruby/embed/jsr223 org/jruby/embed/osgi org/jruby/ext/ffi/io org/jruby/ext/ffi/jffi org/jruby/ext/openssl org/jruby/javasupport/bsf org/jruby/org/bouncycastle)
427
+ elsif Gem::Version.new(jruby_core_version) >= Gem::Version.new('1.7.3')
428
+ excluded_core_packages = %w(**/*Darwin* **/*Solaris* **/*windows* **/*Windows* META-INF com/headius com/kenai/constantine com/kenai/jffi com/kenai/jnr/x86asm com/martiansoftware jline jni jnr/constants/platform/darwin jnr/constants/platform/fake jnr/constants/platform/freebsd jnr/constants/platform/openbsd jnr/constants/platform/sunos jnr/ffi/annotations jnr/ffi/byref jnr/ffi/provider jnr/ffi/util jnr/ffi/Struct$* jnr/ffi/types jnr/posix/FreeBSD* jnr/posix/MacOS* jnr/posix/OpenBSD* jnr/x86asm org/apache org/fusesource org/jruby/ant org/jruby/cext org/jruby/compiler/impl/BaseBodyCompiler* org/jruby/compiler/util org/jruby/demo org/jruby/embed/bsf org/jruby/embed/jsr223 org/jruby/embed/osgi org/jruby/ext/ffi/AbstractMemory* org/jruby/ext/ffi/io org/jruby/ext/ffi/jffi org/jruby/javasupport/bsf org/yecht)
429
+ elsif Gem::Version.new(jruby_core_version) >= Gem::Version.new('1.7.2')
430
+ excluded_core_packages = %w(**/*Darwin* **/*Ruby20* **/*Solaris* **/*windows* **/*Windows* META-INF com/headius com/kenai/constantine com/kenai/jffi com/martiansoftware jline jni jnr/constants/platform/darwin jnr/constants/platform/fake jnr/constants/platform/freebsd jnr/constants/platform/openbsd jnr/constants/platform/sunos jnr/ffi/annotations jnr/ffi/byref jnr/ffi/provider jnr/ffi/util jnr/ffi/Struct$* jnr/ffi/types jnr/posix/MacOS* jnr/posix/OpenBSD* org/apache org/fusesource org/jruby/ant org/jruby/cext org/jruby/compiler/util org/jruby/demo org/jruby/embed/bsf org/jruby/embed/jsr223 org/jruby/embed/osgi org/jruby/ext/ffi/io org/jruby/ext/ffi/jffi org/jruby/javasupport/bsf)
431
+ elsif Gem::Version.new(jruby_core_version) >= Gem::Version.new('1.7.1')
432
+ excluded_core_packages = %w(**/*Darwin* **/*Ruby20* **/*Solaris* **/*windows* **/*Windows* META-INF com/headius com/kenai/constantine com/kenai/jffi com/martiansoftware jline jni jnr/constants/platform/darwin jnr/constants/platform/fake jnr/constants/platform/freebsd jnr/constants/platform/openbsd jnr/constants/platform/sunos jnr/ffi/annotations jnr/ffi/byref jnr/ffi/provider jnr/ffi/util jnr/ffi/Struct$* jnr/ffi/types jnr/posix/MacOS* jnr/posix/OpenBSD* org/apache org/fusesource org/jruby/ant org/jruby/cext org/jruby/compiler/util org/jruby/demo org/jruby/embed/bsf org/jruby/embed/jsr223 org/jruby/embed/osgi org/jruby/ext/ffi/io org/jruby/ext/ffi/jffi org/jruby/ext/openssl org/jruby/javasupport/bsf org/jruby/org/bouncycastle)
427
433
  elsif Gem::Version.new(jruby_core_version) >= Gem::Version.new('1.7.0')
428
434
  # TODO(uwe): Remove when we stop supporting jruby-jars 1.7.0
429
435
  excluded_core_packages = %w(**/*Darwin* **/*Solaris* **/*windows* **/*Windows* META-INF com/headius com/kenai/constantine com/kenai/jffi com/martiansoftware jline jni jnr/constants/platform/darwin jnr/constants/platform/fake jnr/constants/platform/freebsd jnr/constants/platform/openbsd jnr/constants/platform/sunos jnr/ffi/annotations jnr/ffi/byref jnr/ffi/provider jnr/ffi/util jnr/ffi/Struct$* jnr/ffi/types jnr/posix/MacOS* jnr/posix/OpenBSD* org/apache org/bouncycastle org/fusesource org/jruby/ant org/jruby/cext org/jruby/compiler/util org/jruby/demo org/jruby/embed/bsf org/jruby/embed/jsr223 org/jruby/embed/osgi org/jruby/ext/ffi/io org/jruby/ext/ffi/jffi org/jruby/ext/openssl org/jruby/javasupport/bsf)
@@ -520,7 +526,7 @@ module Ruboto
520
526
  print 'excluded...'
521
527
  lib_dirs.each do |ld|
522
528
  Dir.chdir "new/jruby.home/lib/ruby/#{ld}" do
523
- libs = Dir['*'].map{|d|d.sub /\.(rb|jar)$/, ''}.uniq
529
+ libs = Dir['*'].map { |d| d.sub /\.(rb|jar)$/, '' }.uniq
524
530
  libs.each do |d|
525
531
  next if included_stdlibs.include? d
526
532
  FileUtils.rm_rf d if File.exists? d
@@ -610,8 +616,8 @@ module Ruboto
610
616
  jar_load_code = ''
611
617
  end
612
618
 
613
- File.open("#{j}.rb", 'w'){|f| f << jar_load_code}
614
- File.open("#{j}.jar.rb", 'w'){|f| f << jar_load_code}
619
+ File.open("#{j}.rb", 'w') { |f| f << jar_load_code }
620
+ File.open("#{j}.jar.rb", 'w') { |f| f << jar_load_code }
615
621
  end
616
622
 
617
623
  `jar -cf ../../#{jruby_stdlib} .`
@@ -1,4 +1,4 @@
1
1
  module Ruboto
2
- VERSION = '0.12.0.rc.0'
2
+ VERSION = '0.12.0'
3
3
  UPDATE_VERSION_LIMIT = '0.7.0'
4
4
  end
@@ -10,8 +10,8 @@ class OptionMenuActivity
10
10
 
11
11
  self.content_view =
12
12
  linear_layout :orientation => LinearLayout::VERTICAL do
13
- @text_view = text_view :text => 'What hath Matz wrought?', :id => 42, :text_size => 48.0,
14
- :width => :fill_parent, :gravity => android.view.Gravity::CENTER
13
+ text_view :text => 'What hath Matz wrought?', :id => 42, :text_size => 48.0,
14
+ :width => :fill_parent, :gravity => android.view.Gravity::CENTER
15
15
  end
16
16
  end
17
17
 
@@ -19,7 +19,7 @@ class OptionMenuActivity
19
19
  mi = menu.add('Test')
20
20
  mi.setIcon($package.R::drawable::get_ruboto_core)
21
21
  mi.set_on_menu_item_click_listener do |menu_item|
22
- @text_view.text = 'What hath Matz wrought!'
22
+ findViewById(42).text = 'What hath Matz wrought!'
23
23
  toast 'Flipped a bit via butterfly'
24
24
  end
25
25
  true
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruboto
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.0.rc.0
5
- prerelease: 7
4
+ version: 0.12.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Daniel Jackoway
@@ -12,50 +11,41 @@ authors:
12
11
  autorequire:
13
12
  bindir: bin
14
13
  cert_chain: []
15
- date: 2013-05-07 00:00:00.000000000 Z
14
+ date: 2013-05-27 00:00:00.000000000 Z
16
15
  dependencies:
17
16
  - !ruby/object:Gem::Dependency
18
17
  name: main
19
18
  requirement: !ruby/object:Gem::Requirement
20
- none: false
21
19
  requirements:
22
- - - ! '>='
20
+ - - '>='
23
21
  - !ruby/object:Gem::Version
24
22
  version: 4.7.2
25
23
  type: :runtime
26
24
  prerelease: false
27
25
  version_requirements: !ruby/object:Gem::Requirement
28
- none: false
29
26
  requirements:
30
- - - ! '>='
27
+ - - '>='
31
28
  - !ruby/object:Gem::Version
32
29
  version: 4.7.2
33
30
  - !ruby/object:Gem::Dependency
34
31
  name: rake
35
32
  requirement: !ruby/object:Gem::Requirement
36
- none: false
37
33
  requirements:
38
- - - ! '>='
34
+ - - '>='
39
35
  - !ruby/object:Gem::Version
40
36
  version: '0'
41
37
  type: :development
42
38
  prerelease: false
43
39
  version_requirements: !ruby/object:Gem::Requirement
44
- none: false
45
40
  requirements:
46
- - - ! '>='
41
+ - - '>='
47
42
  - !ruby/object:Gem::Version
48
43
  version: '0'
49
- description: ! 'Ruboto (JRuby on Android) is a platform for developing full stand-alone
50
- apps for
51
-
44
+ description: |
45
+ Ruboto (JRuby on Android) is a platform for developing full stand-alone apps for
52
46
  Android using the Ruby language and libraries. It includes support libraries
53
-
54
47
  and generators for creating projects, classes, tests, and more. The complete
55
-
56
48
  APIs of Android, Java, and Ruby are available to you using the Ruby language.
57
-
58
- '
59
49
  email: ruboto@googlegroups.com
60
50
  executables:
61
51
  - ruboto
@@ -65,15 +55,19 @@ files:
65
55
  - Gemfile
66
56
  - Gemfile.lock
67
57
  - LICENSE
68
- - Rakefile
69
58
  - README.md
70
- - assets/libs/dx.jar
59
+ - Rakefile
60
+ - assets/.DS_Store
61
+ - assets/.gitignore
71
62
  - assets/Rakefile
63
+ - assets/libs/dx.jar
72
64
  - assets/rakelib/ruboto.rake
73
- - assets/res/drawable/get_ruboto_core.png
65
+ - assets/res/.DS_Store
74
66
  - assets/res/drawable-hdpi/ic_launcher.png
75
67
  - assets/res/drawable-ldpi/ic_launcher.png
76
68
  - assets/res/drawable-mdpi/ic_launcher.png
69
+ - assets/res/drawable/.DS_Store
70
+ - assets/res/drawable/get_ruboto_core.png
77
71
  - assets/res/layout/get_ruboto_core.xml
78
72
  - assets/samples/sample_activity.rb
79
73
  - assets/samples/sample_activity_test.rb
@@ -87,6 +81,9 @@ files:
87
81
  - assets/src/InheritingBroadcastReceiver.java
88
82
  - assets/src/InheritingClass.java
89
83
  - assets/src/InheritingService.java
84
+ - assets/src/RubotoActivity.java
85
+ - assets/src/RubotoBroadcastReceiver.java
86
+ - assets/src/RubotoService.java
90
87
  - assets/src/org/ruboto/EntryPointActivity.java
91
88
  - assets/src/org/ruboto/JRubyAdapter.java
92
89
  - assets/src/org/ruboto/Log.java
@@ -106,18 +103,12 @@ files:
106
103
  - assets/src/ruboto/util/stack.rb
107
104
  - assets/src/ruboto/util/toast.rb
108
105
  - assets/src/ruboto/widget.rb
109
- - assets/src/RubotoActivity.java
110
- - assets/src/RubotoBroadcastReceiver.java
111
- - assets/src/RubotoService.java
112
106
  - assets/test/src/test_helper.rb
113
- - assets/.DS_Store
114
- - assets/.gitignore
115
- - assets/res/.DS_Store
116
- - assets/res/drawable/.DS_Store
117
107
  - bin/ruboto
118
108
  - lib/DalvikProxyClassFactory.java
119
109
  - lib/DexClient.java
120
110
  - lib/java_class_gen/android_api.xml
111
+ - lib/ruboto.rb
121
112
  - lib/ruboto/api.rb
122
113
  - lib/ruboto/commands/base.rb
123
114
  - lib/ruboto/core_ext/array.rb
@@ -138,7 +129,6 @@ files:
138
129
  - lib/ruboto/util/verify.rb
139
130
  - lib/ruboto/util/xml_element.rb
140
131
  - lib/ruboto/version.rb
141
- - lib/ruboto.rb
142
132
  - test/activity/call_super_activity.rb
143
133
  - test/activity/call_super_activity_test.rb
144
134
  - test/activity/dir_and_file_activity.rb
@@ -187,26 +177,25 @@ files:
187
177
  homepage: http://ruboto.org/
188
178
  licenses:
189
179
  - MIT
180
+ metadata: {}
190
181
  post_install_message:
191
182
  rdoc_options: []
192
183
  require_paths:
193
184
  - lib
194
185
  required_ruby_version: !ruby/object:Gem::Requirement
195
- none: false
196
186
  requirements:
197
- - - ! '>='
187
+ - - '>='
198
188
  - !ruby/object:Gem::Version
199
189
  version: '0'
200
190
  required_rubygems_version: !ruby/object:Gem::Requirement
201
- none: false
202
191
  requirements:
203
- - - ! '>'
192
+ - - '>='
204
193
  - !ruby/object:Gem::Version
205
- version: 1.3.1
194
+ version: '0'
206
195
  requirements: []
207
196
  rubyforge_project: ruboto/ruboto
208
- rubygems_version: 1.8.25
197
+ rubygems_version: 2.0.3
209
198
  signing_key:
210
- specification_version: 3
199
+ specification_version: 4
211
200
  summary: A platform for developing apps using JRuby on Android.
212
201
  test_files: []