Giter Site home page Giter Site logo

deliver's People

Contributors

bassrock avatar brentkastner avatar chinnawatp avatar chipp avatar confusedvorlon avatar dbarden avatar dral3x avatar fulldecent avatar imaks avatar iosappmaker avatar jamespanic avatar jp-cen avatar kiranpanesar avatar krausefx avatar lacostej avatar lipka avatar martinjuhasz avatar mbogh avatar mfurtak avatar milch avatar muffe avatar ohayon avatar paweldudek avatar pmairoldi avatar qmoya avatar readmecritic avatar shrinkrayio avatar skywinder avatar soffes avatar vpolouchkine avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

deliver's Issues

In app purchases upload

It would useful be very useful to have support for in app purchases. At the moment these have to be submitted separately from the rest of the app metadata.

Accessing build information on success block

Hi,

great work on this tool, it is really really helpful! I wanted to suggest an improvement:
Once upload is successful, it is the perfect time to do additional things like:

  • Tag repository
  • Upload symbols to crash report services like Hockeyapp etc

To do that it would be very helpful to pass the build information to the block such as:

success do |build|

do your thing

end

It would be nice to have all metadata, but most importantly, version and is_beta.

Thanks!

Failure during quick start with existing app

Deliver installed fine. I then created a folder for it (~/Developer/itc/NightCap/) and CD'd into that folder in terminal.

I then ran 'deliver init' to create the initial deliver file for an existing app. It requested access to my ITC credentials (already in keychain), I gave it 'always' permission.

The App ID I copied + pasted from ITC.

At this point it seems to download the package from ITC but then fails to read a file. I've tried a couple of times with 2 different app IDs, same result. Stack trace:

deliver init --trace
Do you want Deliver to automatically create the Deliverfile for you based on your current app? (y/n)
y


First, you need to login with your iTunesConnect credentials. 
This is necessary to fetch the latest metadata from your app and use it to create a Deliverfile for you.
If you have previously entered your credentials already, you will not be asked again.

App Identifier of your app (e.g. at.felixkrause.app_name): com.interealtime.NightCap
INFO [2014-11-05 21:24:22.78]: Going to download app metadata from iTunesConnect
INFO [2014-11-05 21:24:23.08]: Successfully downloaded the latest package from iTunesConnect.
/Library/Ruby/Gems/2.0.0/gems/deliver-0.1.1/lib/deliver/app_metadata.rb:431:in `read': No such file or directory - /tmp/486414195.itmsp//metadata.xml (Errno::ENOENT)
    from /Library/Ruby/Gems/2.0.0/gems/deliver-0.1.1/lib/deliver/app_metadata.rb:431:in `parse_package'
    from /Library/Ruby/Gems/2.0.0/gems/deliver-0.1.1/lib/deliver/app_metadata.rb:63:in `initialize'
    from /Library/Ruby/Gems/2.0.0/gems/deliver-0.1.1/lib/deliver/app.rb:105:in `new'
    from /Library/Ruby/Gems/2.0.0/gems/deliver-0.1.1/lib/deliver/app.rb:105:in `metadata'
    from /Library/Ruby/Gems/2.0.0/gems/deliver-0.1.1/lib/deliver/deliverfile/deliverfile_creator.rb:56:in `create_based_on_identifier'
    from /Library/Ruby/Gems/2.0.0/gems/deliver-0.1.1/lib/deliver/deliverfile/deliverfile_creator.rb:27:in `create'
    from /Library/Ruby/Gems/2.0.0/gems/deliver-0.1.1/lib/deliver/commands/init.rb:10:in `block (2 levels) in <top (required)>'
    from /Library/Ruby/Gems/2.0.0/gems/commander-4.2.1/lib/commander/command.rb:180:in `call'
    from /Library/Ruby/Gems/2.0.0/gems/commander-4.2.1/lib/commander/command.rb:180:in `call'
    from /Library/Ruby/Gems/2.0.0/gems/commander-4.2.1/lib/commander/command.rb:155:in `run'
    from /Library/Ruby/Gems/2.0.0/gems/commander-4.2.1/lib/commander/runner.rb:421:in `run_active_command'
    from /Library/Ruby/Gems/2.0.0/gems/commander-4.2.1/lib/commander/runner.rb:81:in `run!'
    from /Library/Ruby/Gems/2.0.0/gems/commander-4.2.1/lib/commander/delegates.rb:8:in `run!'
    from /Library/Ruby/Gems/2.0.0/gems/commander-4.2.1/lib/commander/import.rb:10:in `block in <top (required)>'

deliver init does not find app in App Store

Ran deliver init, entered my iTC username, and then:

App Identifier of your app (e.g. at.felixkrause.app_name): com.maker.polaris
ERROR [2014-11-11 17:47:14.60]: Could not find object 'https://itunes.apple.com/lookup?bundleId=com.maker.polaris' using the iTunes API
INFO [2014-11-11 17:47:14.60]: Could not find Apple ID based on the app identifier in the US App Store. Maybe the app is not yet in the store?

If I hit that itunes URL in my web browser it returns app data

Introduce command to update local metadata?

This may just be an idea from a noob, but I ran deliver init before I had populated much of my iTunesConnect app metadata. After filling in the metadata online, I was looking for a way to update the local .json file based on my online edits.

May be interesting to add a command like

deliver pullMetadata (or something like that).

I understand that the end goal is to have the metadata's origin be the .json file and this may be an edge case. But just throwing it out there.

Thanks!

Screenshot search should happen recursively

We have ~20 screenshots to upload, so we want them organized nicely.

Currently, screenshot search happens only in screenshots_path and not in its subdirectory, forbids us to put screenshot for different dimensions in different folders.

Improve behaviour of beta builds

Discussion from #36 as issue here.

When providing both ipa and beta_ipa, deliver will execute both blocks, which results in building the app twice.

Support app video

At the moment the video uploaded manually to iTunes Connect just gets deleted after running deliver

Failure during init

deliver init --trace
Do you want Deliver to automatically create the Deliverfile for you based on your current app? (y/n)
y

App Identifier of your app (e.g. at.felixkrause.app_name): br.com.banese.app
ERROR [2014-11-07 22:13:23.07]: Could not find object 'https://itunes.apple.com/lookup?bundleId=br.com.banese.app' using the iTunes API
INFO [2014-11-07 22:13:23.07]: Could not find Apple ID based on the app identifier in the US App Store. Maybe the app is not yet in the store?

Apple ID of your app (e.g. 284882215): 727238928

INFO [2014-11-07 22:13:28.38]: Going to download app metadata from iTunesConnect
INFO [2014-11-07 22:13:34.47]: Successfully downloaded the latest package from iTunesConnect.
INFO [2014-11-07 22:13:34.47]: Modifying version '2.1' of app br.com.banese.app
~/.rbenv/versions/2.1.3/lib/ruby/gems/2.1.0/gems/deliver-0.2.0/lib/deliver/deliverfile/deliverfile_creator.rb:79:in `generate_deliver_file': uninitialized constant Deliver::DeliverfileCreator::JSON (NameError)
    from ~/.rbenv/versions/2.1.3/lib/ruby/gems/2.1.0/gems/deliver-0.2.0/lib/deliver/deliverfile/deliverfile_creator.rb:59:in `create_based_on_identifier'

test flight beta metada

Hi. Can you provide example for *.itmsp/metadata.xml in case when I want to load ipa for beta testing via testflight?

clean the itms package after build

After doing a metadata-only upload, deliver left the .itmsp directory in the current directory.

It should create it in a temporary directory and clear it after a success.

It would be even better to have an option to set if it should be cleared

app.rb:34: Can't assign to nil

Hi,

Thanks for making this, it's going to be a huge timesaver.

I'm getting the error app.rb:34: Can't assign to nil when I run deliver init. Any ideas?

This is on OS X Yosemite, using ruby-1.9.3-p547 (installed with RVM) and homebrew updated and phantomjs and XCode 6.1+commandline tools installed.

Installed deliver using:

$ sudo gem install deliver -- --use-system-libraries=true --with-xml2-include=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/libxml2

deliver init output:

$ deliver init
/Users/gijs/.rvm/rubies/ruby-1.9.3-p547/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_require.rb:55:in `require': /Users/gijs/.rvm/gems/ruby-1.9.3-p547@global/gems/deliver-0.2.1/lib/deliver/app.rb:34: syntax error, unexpected tLABEL, expecting ')' (SyntaxError)
    def initialize(apple_id: nil, app_identifier: nil)
                            ^
/Users/gijs/.rvm/gems/ruby-1.9.3-p547@global/gems/deliver-0.2.1/lib/deliver/app.rb:34: Can't assign to nil
    def initialize(apple_id: nil, app_identifier: nil)
                                 ^
/Users/gijs/.rvm/gems/ruby-1.9.3-p547@global/gems/deliver-0.2.1/lib/deliver/app.rb:153: syntax error, unexpected keyword_end, expecting $end
    from /Users/gijs/.rvm/rubies/ruby-1.9.3-p547/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /Users/gijs/.rvm/gems/ruby-1.9.3-p547@global/gems/deliver-0.2.1/lib/deliver.rb:4:in `<top (required)>'
    from /Users/gijs/.rvm/rubies/ruby-1.9.3-p547/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /Users/gijs/.rvm/rubies/ruby-1.9.3-p547/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /Users/gijs/.rvm/gems/ruby-1.9.3-p547@global/gems/deliver-0.2.1/bin/deliver:5:in `<top (required)>'
    from /Users/gijs/.rvm/rubies/ruby-1.9.3-p547/bin/deliver:23:in `load'
    from /Users/gijs/.rvm/rubies/ruby-1.9.3-p547/bin/deliver:23:in `<main>'
    from /Users/gijs/.rvm/gems/ruby-1.9.3-p547/bin/ruby_executable_hooks:15:in `eval'
    from /Users/gijs/.rvm/gems/ruby-1.9.3-p547/bin/ruby_executable_hooks:15:in `<main>'

Deliver failed for a fresh new app

I have fresh new app created in iTunesConntect, aka, have not released in App Store.

When I deliver the compiled ipa, it failed with

INFO [2014-12-09 15:08:30.82]: Got all information needed to deploy a new update ('1.2.2') for app 'xx.oo'
INFO [2014-12-09 15:08:33.25]: Logging into iTunesConnect
INFO [2014-12-09 15:08:39.34]: Successfully logged into iTunesConnect
INFO [2014-12-09 15:08:39.34]: Opening detail page for app 931751802 - xx.oo
DEBUG [2014-12-09 15:08:45.72]: Could not fetch version number of the live version for app 931751802 - xx.oo.
INFO [2014-12-09 15:08:45.72]: Opening detail page for app 931751802 - xx.oo
WARN [2014-12-09 15:08:53.96]: Can not create version 1.2.2 on iTunesConnect. Maybe it was already created.
INFO [2014-12-09 15:08:53.97]: Check out 'https://itunesconnect.apple.com/WebObjects/iTunesConnect.woa/ra/ng/app/931751802' what's the latest version.
error: Some other version was created instead of the one you defined ('1.2.2').. Use --trace to view backtrace

Transporter Warnings & Errors should be more visible

This is more of a general note, but it'd be great if Deliver could display warnings generated by Transporter in a bit more... visible manner. 😉

For instance, right now warnings get lost in huge amounts of additional logs:

DEBUG [2014-11-20 12:33:32.74]: [Transpoter Output]: ERROR: ERROR ITMS-9000: "Redundant Binary Upload. There already exists a binary upload with build '244' for version '1.12.0'"
DEBUG [2014-11-20 12:33:32.74]: [Transpoter Output]: ERROR: ERROR ITMS-9000: "This bundle is invalid. The value for key CFBundleShortVersionString [1.12.0] in the Info.plist file must contain a higher version than that of the previously approved version [1.12.0]."
DEBUG [2014-11-20 12:33:32.74]: [Transpoter Output]: DBG-X: The error code is: 1102
DEBUG [2014-11-20 12:33:32.74]: [Transpoter Output]: INFO: Done performing authentication.
DEBUG [2014-11-20 12:33:32.81]: [Transpoter Output]: INFO: The following warnings were received from Apple's web service ...
DEBUG [2014-11-20 12:33:32.81]: [Transpoter Output]: WARN: WARNING ITMS-9000: "Missing 64-bit support. Starting February 1, 2015, new iOS apps uploaded to the App Store must include 64-bit support and be built with the iOS 8 SDK, included in Xcode 6 or later. To enable 64-bit in your project, we recommend using the default Xcode build setting of “Standard architectures” to build a single binary with both 32-bit and 64-bit code."
DEBUG [2014-11-20 12:33:32.86]: [Transpoter Output]: DBG-X: Returning 1
INFO [2014-11-20 12:33:32.93]: Distributing the latest build to Beta Testers.
INFO [2014-11-20 12:33:32.95]: Logging into iTunesConnect

Would be great if we could have this printed at the end of upload process. Or perhaps written into a file. 😉

What I'd, ultimately, love to see is sort of a information that everything was validated and there were no errors/warnings when a build was uploaded (Xcode has a screen which says that exact thing).

PDF Export - Japanese (Mona.ttf)

Hi Felix,

the PDF generation throws an error:

$ deliver --version
deliver 0.3.5

deliver --trace

[...]

INFO [2014-11-18 20:41:44.75]: [PDF] Exporting locale 'ja-JP' for app with title 'ミニペディア - オフライン百科事典 ウィキペディアリーダー'
/Library/Ruby/Gems/2.0.0/gems/ttfunk-1.4.0/lib/ttfunk.rb:34:in `verify_and_open': /Library/Ruby/Gems/2.0.0/gems/deliver-0.3.5/fonts/mona.ttf not found (ArgumentError)
    from /Library/Ruby/Gems/2.0.0/gems/ttfunk-1.4.0/lib/ttfunk.rb:13:in `open'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/font/ttf.rb:347:in `read_ttf_file'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/font/ttf.rb:27:in `initialize'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/font.rb:292:in `new'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/font.rb:292:in `load'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/font.rb:244:in `find_font'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/font.rb:58:in `font'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/text/formatted/box.rb:429:in `find_font_for_this_glyph'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/text/formatted/box.rb:433:in `find_font_for_this_glyph'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/text/formatted/box.rb:411:in `block (2 levels) in analyze_glyphs_for_fallback_font_support'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/text/formatted/box.rb:410:in `each_char'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/text/formatted/box.rb:410:in `block in analyze_glyphs_for_fallback_font_support'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/font.rb:208:in `save_font'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/text/formatted/box.rb:409:in `analyze_glyphs_for_fallback_font_support'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/text/formatted/box.rb:391:in `block in process_fallback_fonts'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/text/formatted/box.rb:390:in `each'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/text/formatted/box.rb:390:in `process_fallback_fonts'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/text/formatted/box.rb:371:in `normalize_encoding'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/text/formatted/box.rb:351:in `normalized_text'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/text/formatted/box.rb:215:in `block (3 levels) in render'
    from /Library/Ruby/Gems/2.0.0/gems/pdf-core-0.4.0/lib/pdf/core/text.rb:182:in `text_rendering_mode'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/text/formatted/box.rb:212:in `block (2 levels) in render'
    from /Library/Ruby/Gems/2.0.0/gems/pdf-core-0.4.0/lib/pdf/core/text.rb:204:in `character_spacing'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/text/formatted/box.rb:211:in `block in render'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/font.rb:208:in `save_font'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/text/formatted/box.rb:210:in `render'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/text.rb:365:in `fill_formatted_text_box'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/text.rb:220:in `formatted_text'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/text.rb:168:in `text'
    from /Library/Ruby/Gems/2.0.0/gems/deliver-0.3.5/lib/deliver/pdf_generator.rb:35:in `block (2 levels) in render'
    from /Library/Ruby/Gems/2.0.0/gems/deliver-0.3.5/lib/deliver/pdf_generator.rb:29:in `each'
    from /Library/Ruby/Gems/2.0.0/gems/deliver-0.3.5/lib/deliver/pdf_generator.rb:29:in `block in render'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/document.rb:226:in `instance_eval'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/document.rb:226:in `initialize'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/document.rb:142:in `new'
    from /Library/Ruby/Gems/2.0.0/gems/prawn-1.3.0/lib/prawn/document.rb:142:in `generate'
    from /Library/Ruby/Gems/2.0.0/gems/deliver-0.3.5/lib/deliver/pdf_generator.rb:14:in `render'
    from /Library/Ruby/Gems/2.0.0/gems/deliver-0.3.5/lib/deliver/deliver_process.rb:192:in `verify_pdf_file'
    from /Library/Ruby/Gems/2.0.0/gems/deliver-0.3.5/lib/deliver/deliver_process.rb:42:in `run'
    from /Library/Ruby/Gems/2.0.0/gems/deliver-0.3.5/lib/deliver/deliverer.rb:109:in `finished_executing_deliver_file'
    from /Library/Ruby/Gems/2.0.0/gems/deliver-0.3.5/lib/deliver/deliverfile/deliverfile.rb:31:in `initialize'
    from /Library/Ruby/Gems/2.0.0/gems/deliver-0.3.5/lib/deliver/deliverer.rb:61:in `new'
    from /Library/Ruby/Gems/2.0.0/gems/deliver-0.3.5/lib/deliver/deliverer.rb:61:in `initialize'
    from /Library/Ruby/Gems/2.0.0/gems/deliver-0.3.5/lib/deliver/commands/run.rb:12:in `new'
    from /Library/Ruby/Gems/2.0.0/gems/deliver-0.3.5/lib/deliver/commands/run.rb:12:in `block (2 levels) in <top (required)>'
    from /Library/Ruby/Gems/2.0.0/gems/commander-4.2.1/lib/commander/command.rb:180:in `call'
    from /Library/Ruby/Gems/2.0.0/gems/commander-4.2.1/lib/commander/command.rb:180:in `call'
    from /Library/Ruby/Gems/2.0.0/gems/commander-4.2.1/lib/commander/command.rb:155:in `run'
    from /Library/Ruby/Gems/2.0.0/gems/commander-4.2.1/lib/commander/runner.rb:421:in `run_active_command'
    from /Library/Ruby/Gems/2.0.0/gems/commander-4.2.1/lib/commander/runner.rb:81:in `run!'
    from /Library/Ruby/Gems/2.0.0/gems/commander-4.2.1/lib/commander/delegates.rb:8:in `run!'
    from /Library/Ruby/Gems/2.0.0/gems/commander-4.2.1/lib/commander/import.rb:10:in `block in <top (required)>'

Should mona.ttf be shipped with deliver or are we supposed to download the font ourselves? If yes, would you be so kind and add documentation where to get it from and where to put it?

Thanks!
Robert

Hide output debug

Hi,

How is it possible to hide the traces, because the keyword "hide_transporter_output" seems not to work?

Deliverfile:

email '[email protected]'
hide_transporter_output # remove the '#' in the beginning of the line, to hide the output while uploading
app_identifier "com.xxx.xxxx"
apple_id "1234567"

....

Thanks
Robert

Support iTunesConnect in different languages

Trying to upload a new version with deliver I always get the following error:

"Can not create version 1.2.0 on iTunesConnect. Maybe it was already created."

The current app version on iTunesConnect is 1.1.4 so this should not be the problem.

Deliverfile:
default_language "de-DE"
email "xxxxxxxxx"
app_identifier "de.xxxxxxxxxx.xxx"
version '1.2.0' (error also occurs if removed)
ipa do
system("ipa build -w xxxxx.xcworkspace -c Release -s "xxxxxxxxxx" --archive")
"./xxxxxxxx.ipa"
end

Trace:
/Library/Ruby/Gems/2.0.0/gems/deliver-0.2.2/lib/deliver/itunes_connect.rb:516:in wait_for_elements': Couldn't find element '.page-subnav' after waiting for quite some time (Deliver::ItunesConnect::ItunesConnectGeneralError) from /Library/Ruby/Gems/2.0.0/gems/deliver-0.2.2/lib/deliver/itunes_connect.rb:121:inopen_app_page'
from /Library/Ruby/Gems/2.0.0/gems/deliver-0.2.2/lib/deliver/itunes_connect.rb:207:in create_new_version!' from /Library/Ruby/Gems/2.0.0/gems/deliver-0.2.2/lib/deliver/app.rb:138:increate_new_version!'
from /Library/Ruby/Gems/2.0.0/gems/deliver-0.2.2/lib/deliver/deliver_process.rb:94:in verify_app_on_itunesconnect' from /Library/Ruby/Gems/2.0.0/gems/deliver-0.2.2/lib/deliver/deliver_process.rb:30:inrun'
[...]

Thanks for help.

Double screenshots

Hi @KrauseFx,

I just started using Deliver, which seems to be an epic initiative.

However, it seems to be doubling the amount of screenshots included, thus raising the exception Only 5 screenshots are allowed per language per device type (iOS-3.5-in). when including more than two screenshots per device type.

This is the resulting PDF
skaermbillede 2015-01-03 20 55 35

Which is generated from this file structure:
skaermbillede 2015-01-03 20 56 15

I'm not quite sure if I'm doing something wrong or if this is actually a bug. Looking forward to hear from you.

Add option to hide the Transpoter log

I wanted deliver to be fully transparent, since it handles your iTunes credentials.
It would be great to provide an option in the Deliverfile which hides unnecessary output.

Incorrectly shows error that App Identifier don't match

I have a precompiled IPA. Shenzhen's ipa info shows the correct App ID. But when I try to submit using deliver I get error: App Identifier of IPA does not match with the given one ('net.app.id' != 'com.app.frameworkid').

It looks like it's trying to validate the Deliverfile app id against the app id of one of the frameworks I use in my project rather than the app id of the project itself.

Ruby dependency issue when running deliver init

I tried running deliver init on my MacOSX Yosemite but here the error message I got:

/Users/sarbogast/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/specification.rb:2052:in raise_if_conflicts': can't activate json-1.6.8, already activated json-1.8.1 (Gem::LoadError) from /Users/sarbogast/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/specification.rb:1262:inactivate'
from /Users/sarbogast/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:96:in block in require' from /Users/sarbogast/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:95:ineach'
from /Users/sarbogast/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:95:in require' from /Users/sarbogast/.rvm/gems/ruby-2.1.0@global/gems/deliver-0.3.6/lib/deliver.rb:1:in<top (required)>'
from /Users/sarbogast/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:73:in require' from /Users/sarbogast/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:73:inrequire'
from /Users/sarbogast/.rvm/gems/ruby-2.1.0@global/gems/deliver-0.3.6/bin/deliver:5:in <top (required)>' from /Users/sarbogast/.rvm/rubies/ruby-2.1.0/bin/deliver:23:inload'
from /Users/sarbogast/.rvm/rubies/ruby-2.1.0/bin/deliver:23:in <main>' from /Users/sarbogast/.rvm/gems/ruby-2.1.0/bin/ruby_executable_hooks:15:ineval'
from /Users/sarbogast/.rvm/gems/ruby-2.1.0/bin/ruby_executable_hooks:15:in `

'

Since I know absolutely nothing about Ruby, I don't know what to do about it. Any idea?

Support quick switch between multiple Apple IDs

Most developers have more than one Apple ID (having only one wouldn't make code signing that much fun)

The idea would be to define the Apple ID in the Deliverfile and still store the password in the keychain.

Deliver will then lookup the password for a given Apple ID in the keychain. Therefore, once setup, you don't have to think about switching Apple accounts.

Allow iTMSTransporter Transport parameters to be set

In my organization, we have to specify -t DAV as a parameter to use iTMSTransporter properly, because Signiant and Aspera ports are not cool with our firewall. I imagine there are others with the same situation, so it might be worthwhile to allow the user to specify a Transport method.

Deploying with Deliver from Travis CI causes build to time out

We are running our app on Travis CI. On the CI we run a script that distributes a beta build using Deliver and TestFlight to iTunesConnect. The distribution is successful, but it looks like the CI is waiting for the build to become active on iTunesConnect, which takes too long. This causes the CI to time out. Is there any way we can use Deliver to distribute a build without waiting for a response that it's active?

submit_further_information : advertising_identifier does not work

I am trying to upload an app that already exists in App Store.
It uses advertising_identifier, so I set "advertising_identifier" by true.
But uploading fails because that radio button is set by NO.

I will submit a capture of it. (ErrorXXX png file)

Thank you.

screen shot 2015-01-07 at 6 31 58 pm

deliver init fails with no metadata found error

I'm moving this a separate issue from #19 (comment) as it seems its a whole different problem.

I'm receiving following error after running deliver init

INFO [2014-11-14 17:34:39.69]: Going to download app metadata from iTunesConnect
INFO [2014-11-14 17:34:40.13]: Successfully downloaded the latest package from iTunesConnect.
/Users/eldudi/.rvm/gems/ruby-2.0.0-p576@ios/gems/deliver-0.3.1/lib/deliver/app_metadata.rb:431:in `read': No such file or directory - /tmp/627716885.itmsp//metadata.xml (Errno::ENOENT)
    from /Users/eldudi/.rvm/gems/ruby-2.0.0-p576@ios/gems/deliver-0.3.1/lib/deliver/app_metadata.rb:431:in `parse_package'
    from /Users/eldudi/.rvm/gems/ruby-2.0.0-p576@ios/gems/deliver-0.3.1/lib/deliver/app_metadata.rb:63:in `initialize'
    from /Users/eldudi/.rvm/gems/ruby-2.0.0-p576@ios/gems/deliver-0.3.1/lib/deliver/app.rb:112:in `new'
    from /Users/eldudi/.rvm/gems/ruby-2.0.0-p576@ios/gems/deliver-0.3.1/lib/deliver/app.rb:112:in `metadata'
    from /Users/eldudi/.rvm/gems/ruby-2.0.0-p576@ios/gems/deliver-0.3.1/lib/deliver/deliverfile/deliverfile_creator.rb:56:in `create_based_on_identifier'
    from /Users/eldudi/.rvm/gems/ruby-2.0.0-p576@ios/gems/deliver-0.3.1/lib/deliver/deliverfile/deliverfile_creator.rb:27:in `create'
    from /Users/eldudi/.rvm/gems/ruby-2.0.0-p576@ios/gems/deliver-0.3.1/lib/deliver/commands/init.rb:10:in `block (2 levels) in <top (required)>'
    from /Users/eldudi/.rvm/gems/ruby-2.0.0-p576@ios/gems/commander-4.2.1/lib/commander/command.rb:180:in `call'
    from /Users/eldudi/.rvm/gems/ruby-2.0.0-p576@ios/gems/commander-4.2.1/lib/commander/command.rb:180:in `call'
    from /Users/eldudi/.rvm/gems/ruby-2.0.0-p576@ios/gems/commander-4.2.1/lib/commander/command.rb:155:in `run'
    from /Users/eldudi/.rvm/gems/ruby-2.0.0-p576@ios/gems/commander-4.2.1/lib/commander/runner.rb:421:in `run_active_command'
    from /Users/eldudi/.rvm/gems/ruby-2.0.0-p576@ios/gems/commander-4.2.1/lib/commander/runner.rb:81:in `run!'
    from /Users/eldudi/.rvm/gems/ruby-2.0.0-p576@ios/gems/commander-4.2.1/lib/commander/delegates.rb:8:in `run!'
    from /Users/eldudi/.rvm/gems/ruby-2.0.0-p576@ios/gems/commander-4.2.1/lib/commander/import.rb:10:in `block in <top (required)>'

From things that are special about this app: the bundle identifier that's visible in Info.plist is different from the one that is actually on the app store (the one from .plist has an additional suffix). Is there any chance this could break things?

iTunes Transporter Issues

Think I found another bug. Had a brief wifi outage during the transporter upload, which caused it to print:

[Transpoter Output]: ERROR: Communication error. Please use diagnostic mode to check connectivity. You need to have outbound access to TCP port 443.
[Transpoter Output]: ERROR: An exception has occurred: Operation timed out
[Transpoter Output]: DEBUG: java.net.SocketException: Operation timed out

However, transporter automatically re-tried and succeeded (could see it retry and succeed in the log messages). It finished by printing this:

[Transpoter Output]: INFO: The package: /tmp/687072002.itmsp has been successfully uploaded.
[Transpoter Output]: DBG-X: Returning 0

but deliver aborted with this message:

error: Error uploading ipa file. Use --trace to view backtrace

I guess deliver is parsing the error message in the transporter log and aborting, but it seems like it should first consider the return code from transporter, and only try to parse errors if transporter returns a failed code (non zero).

I did wait 10 minutes and verified that the binary was in fact uploaded and accepted by iTC. I only had to choose the build and hit the Submit button.

Oh and one more, as I type this message I notice that [Transporter Output] is mis-spelled ;)

Using former screenshots

If I directly create new version of app in iTunes Connect, They automatically use former screenshots. So I don't need to upload new one.

In using deliver, even if I set "screenshots_path" to comment, It might tries to upload pictures.
As a result, there is only blank space and I must upload screenshots again.

Could you make this easier?

Thanks

IPA upload operation does not fail if there's a transporter fatal error

  1. Attempt to upload a new version to iTunes Connect using IpaUploader. It will ultimately use transporter to upload the binary.
  2. Upload fails to a specific error (see below)
  3. Deliver will proceed with publishing to iTunes Connect anyway.

In my case there was already such a version existing on iTunes Connect. However it'd be nice if Deliver would raise an exception if there are any problems with upload.

iTunes connect error:

DEBUG [2014-11-20 12:33:32.74]: [Transpoter Output]: ERROR: ERROR ITMS-9000: "Redundant Binary Upload. There already exists a binary upload with build '244' for version '1.12.0'"
DEBUG [2014-11-20 12:33:32.74]: [Transpoter Output]: ERROR: ERROR ITMS-9000: "This bundle is invalid. The value for key CFBundleShortVersionString [1.12.0] in the Info.plist file must contain a higher version than that of the previously approved version [1.12.0]."

Mac App Store Support

What's missing to also support Mac Apps:

  • Screenshot support (if you send me the exact resolution, I can implement this)
  • Upload of the package itself. I don't know if that works the same was as the ipa file does

Everything else should work out of the box.

changelog not working

deliver seems to ignore my changelog() statement completely, it is omitted in the output metadata.xml and PDF.

Deliver wiped out screenshots in a new version.

I had created a new version manually in iTunesConnect, which copied across all the data from the previous version apart from the What's New section.
(I have over 80 apps to update with about 12 localisations of What's New so wanted to automate this with a loop, so am not using a DeliverFile. Fortunately I tested with a single update first.)

I used the following code with deliver, which apparently worked fine and did the required updates BUT wiped out the screenshots in the process.

require 'deliver'
app = Deliver::App.new(app_identifier: 'com.lingopal.Language.af')
whatsNew = {"en-US" => "Improved notification service",  # English
"pt-BR" => "Serviço de notificação aprimorado",  # Brazilian
"fr-CA" => "French Service de notification améliorée",  # Canadian
"da-DK" => "Forbedret meddelelse tjeneste",  # Danish
"nl-NL" => "Verbeterde meldingsservice",  # Dutch
"fi-FI" => "Parempi ilmoituspalvelu",  # Finnish
"fr-FR" => "Service de notification améliorée",  # French
"de-DE" => "Verbesserte Benachrichtigungsdienst",  # German
"el-GR" => "Βελτιωμένη υπηρεσία ειδοποίησης",  # Greek
"id-ID" => "Peningkatan layanan pemberitahuan",  # Indonesian
"it-IT" => "Correzioni minori",  # Italian
"ja-JP" => "細かい修正",  # Japanese
"ko-KR" => "마이너 수정",  # Korean
"ms-MY" => "Pembaikan kecil",  # Malay
"es-MX" => "Correcciones menores",  # Mexican
"no-NO" => "Mindre feilrettinger",  # Norwegian
"pt-PT" => "Pequenas correções",  # Portugese
"ru-RU" => "Мелкие исправления",  # Russian
"cmn-Hans" => "小幅修正",  # Simplified Chinese
"es-ES" => "Correcciones menores",  # Spanish
"sv-SE" => "Mindre korrigeringar",  # Swedish
"th-TH" => "การแก้ไขเล็กน้อย",  # Thai
"cmn-Hant" => "小幅修正",  # Traditional Chinese
"tr-TR" => "Küçük düzeltmeler",  # Turkish
"vi-VI" => "Sửa chữa nhỏ"  # Vietnamese
}
status = app.get_app_status # => Waiting for Review
print status
app.metadata.update_changelog(whatsNew)
#app.metadata.update_title({ "en-US" => "iPhone App Title" })
#app.metadata.set_all_screenshots_from_path("./screenshots")
app.upload_metadata!

App icon uploading

Would it be possible in future to upload app icon for itunes connect with deliver?
It looks like deliver had such functionality (lines 259-281 in itunes_connect.rb) but now it's commented out.

Conversion of String into Integer

Modifying version '2.2' of app br.com.banese.app
error: no implicit conversion of String into Integer. Use --trace to view backtrace

For some reason if I remove the keywords line it works.

iTunes Connect - shows login failed

It seems that deliver fails to parse website if Apple adds an additional information alert to the top of the window.

Here's the stack trace:

Error logging in user (...) with the given password. Make sure you entered them correctly.
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/gems/deliver-0.3.1/lib/deliver/itunes_connect.rb:96:in `rescue in login'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/gems/deliver-0.3.1/lib/deliver/itunes_connect.rb:92:in `login'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/gems/deliver-0.3.1/lib/deliver/itunes_connect.rb:58:in `initialize'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/gems/deliver-0.3.1/lib/deliver/app.rb:69:in `new'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/gems/deliver-0.3.1/lib/deliver/app.rb:69:in `itc'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/gems/deliver-0.3.1/lib/deliver/app.rb:76:in `get_app_status'
/Users/paweldudek/Workspace/showcase-ios/Project/ios-build/deliver.rake:9:in `block (2 levels) in <top (required)>'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/gems/rake-10.0.4/lib/rake/task.rb:246:in `call'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/gems/rake-10.0.4/lib/rake/task.rb:246:in `block in execute'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/gems/rake-10.0.4/lib/rake/task.rb:241:in `each'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/gems/rake-10.0.4/lib/rake/task.rb:241:in `execute'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/gems/rake-10.0.4/lib/rake/task.rb:184:in `block in invoke_with_call_chain'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/gems/rake-10.0.4/lib/rake/task.rb:177:in `invoke_with_call_chain'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/gems/rake-10.0.4/lib/rake/task.rb:170:in `invoke'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/gems/rake-10.0.4/lib/rake/application.rb:143:in `invoke_task'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/gems/rake-10.0.4/lib/rake/application.rb:101:in `block (2 levels) in top_level'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/gems/rake-10.0.4/lib/rake/application.rb:101:in `each'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/gems/rake-10.0.4/lib/rake/application.rb:101:in `block in top_level'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/gems/rake-10.0.4/lib/rake/application.rb:110:in `run_with_threads'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/gems/rake-10.0.4/lib/rake/application.rb:95:in `top_level'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/gems/rake-10.0.4/lib/rake/application.rb:73:in `block in run'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/gems/rake-10.0.4/lib/rake/application.rb:160:in `standard_exception_handling'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/gems/rake-10.0.4/lib/rake/application.rb:70:in `run'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/bin/ruby_executable_hooks:15:in `eval'
/Users/paweldudek/.rvm/gems/ruby-2.0.0-p576@ios/bin/ruby_executable_hooks:15:in `<main>'

See the attached screenshot. Stack and error suggest that signing fail, though the screenshot clearly states that I've been logged in 😉

error1415869705

I'm also attaching part of the web page source code as it might be helpful:

<!-- "Warnings" (non-fatal warning messages) -->
<div id="warnings" class="homepage-msg-container ng-scope" ng-show="hasWarnings">
    <div class="pagemessage warning">
        <!-- ngRepeat: warning in warnings --><p ng-repeat="warning in warnings" class="ng-scope">
            <span ng-bind-html="showHtml(warning.header)" class="alertHeader ng-binding">Agreements, Tax, and Banking</span>
            <span ng-bind-html="showHtml(warning.message)" class="alertMsg ng-binding"><p>An updated contract is now available. Before you can offer your content in new iTunes Store territories, a user with the Legal role must agree to the new contract in the <strong>Agreements, Tax, and Banking</strong> module.<br><br>If your organization does not have a Legal user, see the <a href="/WebObjects/iTunesConnect.woa/wa/jumpTo?page=faqIndex&amp;qa=createlegaluser">Contracts FAQ</a> for details on how to create one.</p></span>
        </p><!-- end ngRepeat: warning in warnings -->
    </div>
</div>


<!-- News Feed -->
<div id="news" class="homepage-msg-container ng-scope" ng-show="hasNews">
    <div class="news-container" ng-class="{'truncated' : newsTruncated, 'show-toggle' : hasLongNews }">
    <!-- <div class="news-container truncated"> -->

        <h1 class="ng-binding">News</h1>
        <div class="ellipsis">
            <div>
                <ul>
                    <!-- ngRepeat: newsitem in news --><li ng-repeat="newsitem in news" class="ng-scope">
                        <div ng-bind-html="showHtml(newsitem.header)" class="newsheader ng-binding"><h2><b>TestFlight Beta Testing for External Testers</b></h2></div>
                        <div ng-bind-html="showHtml(newsitem.message)" class="newstxt ng-binding"><p>You can now invite up to 1000 users to test prerelease builds of your app. To do so, go to External Testers in Prerelease for the app that you want to test and add&nbsp;external testers simply by sending an email invitation. The TestFlight app will allow them to install the prerelease build on their iOS device, receive updates, and provide feedback, all within the TestFlight app. </p><p><a href="https://itunesconnect.apple.com/downloads/Documentation/TestFlight-v09-iTC-Export-sw.mov">For more information, watch the video tutorial.</a></p></div>
                    </li><!-- end ngRepeat: newsitem in news -->
                </ul>
            </div>
        </div>

        <a class="show-more-news" href="javascript:void(0)" ng-click="toggleNewsVisibility()">
            <span ng-show="newsTruncated" class="ng-binding ng-hide">More</span>
            <span ng-show="!newsTruncated" class="ng-binding">Less</span>
        </a>
    </div>
</div>

Disable submit for review

It would be nice if we had an option to disable immediate submission for review. It's always nice to walk through all information to check it before pushing scary red button, that will take 5-10 days on the App Store review team side.

I searched through documentation and didn't find it. Do you have such option in plans or implemented?

Unpublished apps are not supported

First of all, congrats for the program—I'm sure it's going to be a massive success.

I'm working on an app that has never been released, and the code seems not to take that into account:

def get_live_version(app)
  begin
    verify_app(app)

    open_app_page(app)

    return first(".status.ready").text.split(" ").first
  rescue Exception => ex
    error_occured(ex)
  end
end

Therefore, I get an error:

(...)deliver/itunes_connect.rb:177:in `get_live_version': undefined method `text' for nil:NilClass (NoMethodError)

Can something be done here?

Thanks!

Dir[resulting_path] returns duplicates, which leads to crash

I'm pretty sure that this happens because of duplicates in resulting_path (app_metadata.rb:303) extensions:

resulting_path = "#{current_path}/**/*.{png,PNG,jpg,JPG,jpeg,JPEG}"

My assumption is that this happens on case-insensitive partitions. Possible fix could be to make sure that all values in Dir[resulting_path] are unique.

Here's an example of what's returned:

["./deliver/screenshots/da-DK/ipad 1.png", "./deliver/screenshots/da-DK/ipad 2.png",
"./deliver/screenshots/da-DK/ipad 3.png", "./deliver/screenshots/da-DK/ipad 4.png", 
"./deliver/screenshots/da-DK/iphone 1.png", "./deliver/screenshots/da-DK/iphone 2.png", 
"./deliver/screenshots/da-DK/iphone 3.png", "./deliver/screenshots/da-DK/iphone 4.png", 
"./deliver/screenshots/da-DK/iphone 5 1.png", "./deliver/screenshots/da-DK/iphone 5 2.png", 
"./deliver/screenshots/da-DK/iphone 5 3.png", "./deliver/screenshots/da-DK/iphone 5 4.png", 
"./deliver/screenshots/da-DK/iphone 5 5.png", "./deliver/screenshots/da-DK/iphone 5.png", 
"./deliver/screenshots/da-DK/iphone 6 1.png", "./deliver/screenshots/da-DK/iphone 6 2.png", 
"./deliver/screenshots/da-DK/iphone 6 3.png", "./deliver/screenshots/da-DK/iphone 6 4.png", 
"./deliver/screenshots/da-DK/iphone 6 5.png", "./deliver/screenshots/da-DK/iphone 6+ 1.png", 
"./deliver/screenshots/da-DK/iphone 6+ 2.png", "./deliver/screenshots/da-DK/iphone 6+ 3.png", 
"./deliver/screenshots/da-DK/iphone 6+ 4.png", "./deliver/screenshots/da-DK/iphone 6+ 5.png", 
"./deliver/screenshots/da-DK/ipad 1.png", "./deliver/screenshots/da-DK/ipad 2.png", 
"./deliver/screenshots/da-DK/ipad 3.png", "./deliver/screenshots/da-DK/ipad 4.png", 
"./deliver/screenshots/da-DK/iphone 1.png", "./deliver/screenshots/da-DK/iphone 2.png", 
"./deliver/screenshots/da-DK/iphone 3.png", "./deliver/screenshots/da-DK/iphone 4.png", 
"./deliver/screenshots/da-DK/iphone 5 1.png", "./deliver/screenshots/da-DK/iphone 5 2.png", 
"./deliver/screenshots/da-DK/iphone 5 3.png", "./deliver/screenshots/da-DK/iphone 5 4.png", 
"./deliver/screenshots/da-DK/iphone 5 5.png", "./deliver/screenshots/da-DK/iphone 5.png", 
"./deliver/screenshots/da-DK/iphone 6 1.png", "./deliver/screenshots/da-DK/iphone 6 2.png", 
"./deliver/screenshots/da-DK/iphone 6 3.png", "./deliver/screenshots/da-DK/iphone 6 4.png", 
"./deliver/screenshots/da-DK/iphone 6 5.png", "./deliver/screenshots/da-DK/iphone 6+ 1.png", 
"./deliver/screenshots/da-DK/iphone 6+ 2.png", "./deliver/screenshots/da-DK/iphone 6+ 3.png", 
"./deliver/screenshots/da-DK/iphone 6+ 4.png", "./deliver/screenshots/da-DK/iphone 6+ 5.png"]

/Users/kovpas/.rvm/gems/ruby-2.2.0/gems/deliver-0.4.1/lib/deliver/app_metadata.rb:249:in `add_screenshot': Only 5 screenshots are allowed per language per device type (iOS-iPad) (Deliver::AppMetadataParameterError)

beta_ipa activates wrong version/build

Instead of activating newest build in currently testing version (at least same as uploading) it enables testing of top of list build/version. I.e. I have two version branches - 2.1 which is beta version and 2.0 version which is stable but needs testing of features before release. Uploading 2.0.5 version package activates disabled 2.1 testing.

In other words deliver must search for version same as uploaded and activate same build as uploaded package. If its hard to do, better to activate testing of top build of currently active for testing version.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.