itmstransporter 3.0.0 broken in Linux.

Hi, uploading an app on Linux with these option.

-m upload -f /some/dir/something.itmsp -assetDescription /some/dir/something.itmsp/AppStoreInfo.plist -indicator false -throughput -v critical -jwt somevalue

(all the files are there, and it works fine with 2.3.0, but not when automatically updated to 3.0.0 (any version, including 3.0.0.30).

This gives the following error.

The -assetFile option was not specified. [2022-11-07 16:46:10 UTC] ERROR: There was a general exception while executingAn exception has occurred: Cannot invoke "com.apple.transporter.foundation.Notification.getName()" because "notification" is null [2022-11-07 16:46:10 UTC] DEBUG: java.lang.NullPointerException: Cannot invoke "com.apple.transporter.foundation.Notification.getName()" because "notification" is null at com.apple.transporter.foundation.NotificationCenter.postNotification(NotificationCenter.java:66)

-assetFile should not be used in this case, so it seems like a bug.

Is there any way to force stay on 2.3.0 until this is fixed?

Same issue here!

Same issue,windows!

Some other uses of itms transporter were turned off at the start of November. Maybe this is collateral damage?

Have any of you submitted support requests?

Did anyone find a solution to this problem?

Actually, to be clear, I don't have the exact same problem. However, it does appear that iTMSTransporter is broken on linux after 3.0.0. When I try to upload an ipa file I just get: 1 package(s) were not uploaded because they had problems: [2022-11-25 10:22:42 GMT] DBG-X: Returning 1. No other info

I've just tried to use iTMSTransporter to upload an app for the first time for a while; it has auto-updated itself to a new version and I'm getting problems:

iTMSTransporter -u USERNAME -p PASSWORD -m upload -assetFile app.ipa -assetDescription AppStoreInfo.plist

That says "Cannot obtain the content provided public id. Please specify a provider short name".

It didn't say that before, and I'm not a member of more than one team, but I can provide it anyway:

iTMSTransporter -u USERNAME -p PASSWORD -m provider

That tells me my shortname.

iTMSTransporter -u USERNAME -p PASSWORD -asc_provider SHORTNAME -m upload -assetFile app.ipa -assetDescription AppStoreInfo.plist

Now it just fails with an empty error message:

Package summary:

1 package(s) were not uploaded because they had problems:

Looking at the info-level logging, I see:

INFO: Configuring the software uploader...
INFO: Looking up provider information...
INFO: id = 20230210230720-123
INFO: iTMSTransporter Correlation Key: 123456-123456-123456.......
INFO: Performing software analysis...

Then it gives up. The extremely verbose debug mode has no further clues.

So: has anyone made this work recently? Has anyone contacted Apple?

Edited to add: Should I be using -jwt for authentication now? Edited again: I see JacobVe was already using -jwt, so I guess that's not the problem.

I've just filed a bug report for this: FB11992786

None of these work:

-u USERNAME -p PASSWORD
-u USERNAME -p PASSWORD -asc_provider SHORTNAME
-jwt JWT
-apiIssuer ISSUER -apiKey KEY

But -m diagnostic does pass, with username and password.

I've had a reply from Developer Program Support. (Case 30000000852971.) They have just directed me to the documentation that I've already read. I've asked them to escalate it.

Has anyone else made any progress?

Now Developer Program Support have told me to contact Developer Technical Support - ID 1634088....

Developer Technical Support tells me that they can't help, as it's a tool they don't support on a platform they don't support. They have refunded the ticket.

They did, however, confirm that my bug report has reached the right team. Have others filed bugs? If so, please consider updating them to mention mine (FB11992786).

To finish up on this: I think I've now got as far as I can with Developer Program Support and Developer Technical Support. Neither of them support iTMSTransporter, and the team who do maintain it do not have a public point of contact. So essentially it is unsupported.

Probably the most productive approach to fixing this, since it is a Java app, would be to decompile it and just fix the bug ourselves. Anyone here have any experience with that?

I think I should have a copy of the last working version in my backups somewhere. How much work would it be to decompile both an diff the results?

I'll let you all know if I get anywhere.

HAVE A GREAT DAY!

We're still seeing the latest version error on linux, but with:

java.lang.NullPointerException: Cannot invoke "com.apple.transporter.launcher.api.LaunchLogger.warn(String)" because "com.apple.transporter.launcher.util.FileUtil.logger" is null"

Are others also seeing this error with 3.1.1.5?

Do people find that it also doesn't work on macOS?

A few weeks ago I tried using the copy of iTMSTransporter that is embedded in the (confusingly named) Transporter app on my mac, and that also failed to work.

(My plan had been to compare the output of the mac and linux versions and see where they diverge. I have successfully decompiled the Java and I believe that if I knew where the two versions diverge I could try to find the bug. But that doesn't work as the mac version also crashes.)

My next idea is to determine exactly how the Transporter app (which does work for me) invokes iTMSTransporter - assuming that it does do that, which seems reasonable as there is a copy embedded within it. Are there any macOS experts here who know how to find the command line for a running executable? Is it possible for an App Store app, like Transporter?

I found the root cause and manage to upload the file.

I grasped a hint from the error: "The asset description specified is not a file" The application says the file we specify path to is actually not the file. So it does not find the file.

It is because "iTMSTransporter" looks for the Asset Description file in the location of its installation instead of where the command war run. Copy the files you want to upload and run the command where you have "iTMSTransporter.cmd" installed and it is gonna work.

Frustrating. I'm facing the same issue here.

itmstransporter 3.0.0 broken in Linux.
 
 
Q