infinitered / bluepotion

Like RedPotion, but for Android
MIT License
74 stars 18 forks source link

Invalid Character #95

Open KCErb opened 9 years ago

KCErb commented 9 years ago

Hey all,

I tried making an app with a dash in the name time-clock and didn't realize the dash was killing newclear for a while. The error on rake newclear looked like this:

KC:time-clock$ rake newclear
================================================================================
A new version of RubyMotion is available. Run `sudo motion update' to upgrade.
================================================================================

Cleaning Project...
fatal: Not a git repository (or any of the parent directories): .git
    Delete ./build
    Delete /Users/KC/Library/RubyMotion/build

Bundling...

Setting up gradle automation dependencies...
fatal: Not a git repository (or any of the parent directories): .git
 [warning] To avoid issues you should install `Extras/Android Support Repository`. Open the gui to install it : /Users/KC/.rubymotion-android/sdk/tools/android
 [warning] To avoid issues you should install `Extras/Google Repository`. Open the gui to install it : /Users/KC/.rubymotion-android/sdk/tools/android
Building project...
for device
================================================================================
A new version of RubyMotion is available. Run `sudo motion update' to upgrade.
================================================================================

fatal: Not a git repository (or any of the parent directories): .git
    Create ./build/Development-16/AndroidManifest.xml
    (skipping file '.gitkeep' due to ANDROID_AAPT_IGNORE pattern '.*')
    (skipping file '.gitkeep' due to ANDROID_AAPT_IGNORE pattern '.*')
./build/Development-16/AndroidManifest.xml:2: Tag <manifest> attribute package has invalid character '-'.
rake aborted!
Command failed with status (1): ["/Users/KC/.rubymotion-android/sdk/build-t...]
/Library/RubyMotion/lib/motion/project/template/android.rb:188:in `block in <top (required)>'
/Library/RubyMotion/lib/motion/project/template/android.rb:755:in `block (2 levels) in <top (required)>'
/Library/RubyMotion/lib/motion/project/template/android.rb:755:in `each'
/Library/RubyMotion/lib/motion/project/template/android.rb:755:in `block in <top (required)>'
/Users/KC/.rvm/gems/ruby-2.1.2/bin/ruby_executable_hooks:15:in `eval'
/Users/KC/.rvm/gems/ruby-2.1.2/bin/ruby_executable_hooks:15:in `<main>'
Tasks: TOP => build
(See full trace by running task with --trace)

I can see it now, but I first updated ruby motion, then I thought it might be the fatal thing about it not being a git repository because of the warnings:

[warning] To avoid issues you should install `Extras/Android Support Repository`. Open the gui to install it : /Users/KC/.rubymotion-android/sdk/tools/android
[warning] To avoid issues you should install `Extras/Google Repository`. Open the gui to install it : /Users/KC/.rubymotion-android/sdk/tools/android

After installing those I was still getting fatal not a git repo . . . so I created one and then I get

fatal: ambiguous argument 'HEAD': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:

so I add all and commit it and finally I get

KC:time-clock$ rake newclear

Cleaning Project...
    Delete ./build
    Delete /Users/KC/Library/RubyMotion/build
    Delete vendor/Gradle

Bundling...

Setting up gradle automation dependencies...
Building project...
for device
    Create ./build/Development-16/AndroidManifest.xml
    (skipping file '.gitkeep' due to ANDROID_AAPT_IGNORE pattern '.*')
    (skipping file '.gitkeep' due to ANDROID_AAPT_IGNORE pattern '.*')
./build/Development-16/AndroidManifest.xml:2: Tag <manifest> attribute package has invalid character '-'.
rake aborted!
Command failed with status (1): ["/Users/KC/.rubymotion-android/sdk/build-t...]
/Library/RubyMotion/lib/motion/project/template/android.rb:188:in `block in <top (required)>'
/Library/RubyMotion/lib/motion/project/template/android.rb:758:in `block (2 levels) in <top (required)>'
/Library/RubyMotion/lib/motion/project/template/android.rb:758:in `each'
/Library/RubyMotion/lib/motion/project/template/android.rb:758:in `block in <top (required)>'
/Users/KC/.rvm/gems/ruby-2.1.2/bin/ruby_executable_hooks:15:in `eval'
/Users/KC/.rvm/gems/ruby-2.1.2/bin/ruby_executable_hooks:15:in `<main>'
Tasks: TOP => build
(See full trace by running task with --trace)

And this one tipped me off that the line before rake aborted! is the issue :blush:

I'm telling you all this so that:

  1. I can request some kind of error checking / fixing like bluepotion create time-clock renames the app to time_clock or something like that.
  2. I can demonstrate the way my brain approached the stack trace in case it's useful in designing the error process.

Thanks for the great gem!

-KC

skellock commented 9 years ago

Oi! That's a crazy one! Good find.