forked from fastlane/fastlane
-
Notifications
You must be signed in to change notification settings - Fork 4
Brick/asc iap management api #13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
addbrick
merged 260 commits into
brick/pem-login-fix-merge-master-attempt
from
brick/asc-iap-management-api
Mar 15, 2025
Merged
Brick/asc iap management api #13
addbrick
merged 260 commits into
brick/pem-login-fix-merge-master-attempt
from
brick/asc-iap-management-api
Mar 15, 2025
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
The platform condition is filtered on the client side, so enough builds need to be returned to find the correct platform.
…tlane#20976) * [ensure_git_status_clean ] fix unclear param documentation See also: https://git-scm.com/docs/git-status#Documentation/git-status.txt---ignoredltmodegt * Fix incorrect test name * Remove duplicated test * Fix misleading local variable name * Fix typo in test names * [ensure_git_status_clean] fix incorrect "ignored" param handling * [ensure_git_status_clean] fix incorrect "no" value handling * [ensure_git_status_clean] add missing invalid values handling * [ensure_git_status_clean] improve param documentation * Fix RuboCop line length error
…astlane#20738) * Adds support for `build_verify_command` * Updates naming of variable to show the inclusion of `verify` command * Adds required `platform` option * Allows passing in an `asset_path` to upload values correctly * Updates unit tests for `deliver` component * Fixes failing tests in `itunes_transporter_spec` * Runs `rubocop -a` * Uses `**kwargs` for abstract `build_verify_command` method * Fixes `rubocop` violation * Removes `altool_compatible_command` argument from `deliver` runner * Fixes further PR comments * Reverts changes to temporary path code --------- Co-authored-by: Pol Piella <[email protected]>
LatestOsVersion#version_for_os can be catched in a deadlock when
used with Xcode 13.3.0 or later while a device is physically connected
to the computer.
In this case, xcodebuild will return a few lines of errors on stderr
which will trigger a deadlock in Open3#open3. The problem is
mentioned explicitely in the documentation of Open3#open3:
> You should be careful to avoid deadlocks. Since pipes are fixed
> length buffer, #popen3(“prog”) {|i, o, e, t| o.read } deadlocks if
> the program generates many output on stderr. You should be read
> stdout and stderr simultaneously (using thread or IO.select). However
> if you don't need stderr output, #popen2 can be used. If merged
> stdout and stderr output is not a problem, you can use #popen2e.
> If you really needs stdout and stderr output as separate strings,
> you can consider #capture3.
Using Open3#capture2 or Open3#open2 would show the error in the
terminal, but Open3#capture3 allows us to capture only stdout and
hide stderr from the users eyes.
* Remove prices from ESSENTIAL_INCLUDES closes fastlane#21125 * Fix spec * Fix violations * Fix stubs
…ane#21088) * [ci] Only run all mac jobs on master and version bump branches * Fix main to master
…up if on Intel (fastlane#21284) * Added arch=x86_64 for scan * Make as an option * Only do for iOS
…tly ignoring files (fastlane#21283)
ng tier election to correctly handle nil value
…ne#21279) * Adding access token prompt for GitLab Secure Files Match * Removing commented code
Co-authored-by: Darby Frey <[email protected]>
… match documentation examples (fastlane#21302) * Incorporate changes made in fastlane/docs#1196. * Improve wording and fix typos.
…astlane#21310) * Fix Style/StringLiterals RuboCap warning More information about warning: https://www.rubydoc.info/gems/rubocop/RuboCop/Cop/Style/StringLiterals * Fix indentation of template Action, reported by Rubocop https://www.rubydoc.info/gems/rubocop/RuboCop/Cop/Layout/IndentationWidth * Fix Layout/LineLength: Line is too long, reported by Rubocop More information: https://www.rubydoc.info/gems/rubocop/RuboCop/Cop/Layout/LineLength * Fix Style/MethodCallWithArgsParentheses reported by Rubocop * Fix Style/ParenthesesAroundCondition, Style/AndOr and Style/Not Fixes: * Style/ParenthesesAroundCondition: Don't use parentheses around the condition of an unless. * Style/AndOr: Use && instead of and. * Style/Not: Use ! instead of not.
…esponding `supply` methods) (fastlane#21315) * [Supply] Listing & downloading generated APKs Add methods on the Supply client to list and download Universal Generated APKs from the Google Play Console — typically generated and code-signed by Google from the AAB you uploaded e.g. via the `upload_to_play_store`/`supply` action * [Action] download_universal_apk_from_google_play Very useful when you use [Play App Signing](https://support.google.com/googleplay/android-developer/answer/9842756) and thus don't necessary have the signing key to produce the APK yourself. In those cases, you typically only upload an AAB to GPC, then let Google code-sign and generate signed APKs from that AAB. * Add `download_universal_apk_from_google_play` to `unused_options_spec` exceptions Because most of the options that are detected as not being used directly by the action are in fact just passed along to Supply::Client.make_from_config
* [spaceship] add update method to ConnectAPI::User * Apply suggestions from @rogerluan Co-authored-by: Roger Oba <[email protected]> * chore: move UserRolse to User and use link in UserInvitation * Update spaceship/lib/spaceship/connect_api/models/user.rb * Apply suggestions from code review Co-authored-by: Iulian Onofrei <[email protected]> --------- Co-authored-by: Roger Oba <[email protected]> Co-authored-by: Iulian Onofrei <[email protected]>
…e#21317) * Fix olympus session request error after skipping 2FA Upgrade Request to : https://appstoreconnect.apple.com/olympus/v1/session are now rejectec if account is not configured with 2FA. Skipping this request avoid non 2FA account to get stuck without authentication. * Fix olympus session request error after skipping 2FA Upgrade Request to : https://appstoreconnect.apple.com/olympus/v1/session are now rejectec if account is not configured with 2FA. Skipping this request avoid non 2FA account to get stuck without authentication. Removing comment for lint
…fastlane docs unit tests (fastlane#21426)
… Xcode 15, and Ruby 3.1 to test envs (fastlane#21465) * Remove/replace old Xcode versions not supported by CircleCI anymore. * Add two new macOS environments: Xcode 14 and 15. * Change to Ruby 3.1 because 3.2 is not available. * Remove new Xcode versions so it can be added in a separate PR. * Add missing name and xcode_version. * Fix specs related to upgrade of OpenSSL version on Ruby 3.1. * Upgrade http-cookie to 1.0.5 to support Ruby 3. * Revert "Add missing name and xcode_version." This reverts commit cf56b93. * Revert "Remove new Xcode versions so it can be added in a separate PR." This reverts commit 34741c5. * Move dependency from development to regular one. * Sort dependencies alphabetically. * Update Gemfile.lock after updating gemspec. * RuboCop: apply `Style/FetchEnvVar` rule throughout codebase. https://docs.rubocop.org/rubocop/1.56/cops_style.html#stylefetchenvvar * Update Rubocop from 1.12.1 to 1.56.0 (latest) to support Ruby 3.1. * Regenerate Rubocop TODO file. * Revert "RuboCop: apply `Style/FetchEnvVar` rule throughout codebase." This reverts commit e122484. * Downgrade Rubocop to keep support to Ruby 2.6. * Fix all Rubocop linter issues detected in Plugins templates. * Revert changes to fix dynamic versions used in template. * Remove outdated comment. * Use specific Ruby version to see if CircleCI is able to detect them. * Move rubocop rule to where it's being actually used. * Code style. * Fix syntax. * Massage dependencies versions to resolve compatibility issues. * Revert version bump to keep support for Ruby 2. * Fix rspec crashes when running Ruby 3.2 by upgrading `fakefs` gem. * Move back to Ruby 3.1. * Revert "Fix rspec crashes when running Ruby 3.2 by upgrading `fakefs` gem." This reverts commit fda2881. * Specify full Ruby versions for 2.6 and 2.7. * Temporarily comment out condition to test other Ruby envs. * Revert "Temporarily comment out condition to test other Ruby envs." This reverts commit adac361. * Revert unintentional changes to dependency versions. * Revert unintentional changes to dependency versions.
* Detect failing standalone tests * Add the RPSEC_ARGS to allow the user to add more arguments * Update doc * Typo
* [spaceship] New AppleID Auth with SIRP * Doesn't print things out * Using new fastlane-sirp gem * Fixed some lint * Added feature flag for legacy * Maybe tests will pass * Fixed a lot of tests * This should go all green * Fix some stuff * Now all green * Fix more tests * One more fix * Using proper error * Added debug logs * Code improvements from PR review
* Version bump to 2.225.0 * Update CHANGELOG.latest.md --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Josh Holtz <[email protected]>
* Add git_basic_authorization to clone command * Add param description * Update description * Update README * Fix doc syntax * fix PR comments * Fix incorrect method parameter name Also updates the parameter documentation. * Make documentation a bit more clearer * Refactor: Add missing type to the dependencies option * Allow specifying multiple HTTP headers for git * Refactor: Move local variable close to its usage * Refactor: Made command construction more consistent * Refactor: Made command construction more consistent * Fix too many arguments crash on Windows * Refactor: Make condition clearer * Fix vulnerable git clone command execution --------- Co-authored-by: Jens Kuhr Hansen <[email protected]> Co-authored-by: Iulian Onofrei <[email protected]>
…ane#22290) Co-authored-by: Iulian Onofrei <[email protected]>
…lout (fastlane#28960) * [Supply] Allow `update_rollout` on releases that are currently in draft So that one can create a release in draft status first, and then change its status from draft to inProgress at a later time * [Supply] Ensure we update the `release_status` when promoting a draft release to inProgress with initial rollout * Fix crash when `only_statuses` is `nil` * Address feedback from code review
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
… during `update_rollout` (fastlane#29134)
…e#27460) * [match] Switch to in_house? from Connect API * [match][spec] Add missing coverage * Empty commit to trigger CI
fastlane#29237) * [fastlane_core] recognize AWS CodeBuild CI service as a CI environment * [fastlane][setup_ci] Allow CodeBuild along with circle ci to setup output directory path * Add comment to trigger the circleci checks
* [cert] Allow on non-macos without keychain * [cert] Update specs * [cert] verify_block on keychain options * [cert] Use optional nil instead of empty string * [cert] Update specs to deterministically test mac? behavior * [cert] Add & refactor specs * [cert] Fix specs * [cert] Fix spec for stub side-effects * Empty commit to trigger CI * Apply suggestion Co-authored-by: Kohki Miki <[email protected]> * Update fancy one-liner for readability * Refactor match generator specs with shared context * Format spaces * Update specs --------- Co-authored-by: Kohki Miki <[email protected]>
…ers (fastlane#29484) * Add tests for all use cases of #update_rollout * Update implementation to pass tests * Adjust expectations after reading the API docs [The API docs](https://googleapis.dev/ruby/google-api-client/latest/Google/Apis/AndroidpublisherV3/TrackRelease.html#user_fraction-instance_method) explicitly mention that the `user_fraction` parameter is only valid when `status` is `inProgress` or `halted` * Fix & simplify implementation for new expectations * Typo fix in code comment
) * Extract parsing methods into dedicated files Extract parsing of PLIST and Parsing of --legacy xcresulttool output each in their own dedicated file, on preparation for refactoring and introducing new xcresult parsing method for Xcode 16 * Add new XCResult parser + tests * Clean large attachments and log data from xcresult To avoid storing useless large data from fixture in git, while it's not used for our test cases * Fix extracting data when argument child nodes * Use different <testcase name=…> if using argument To ensure that tools that parse the generated JUnit would consider those as different test cases, instead of multiple runs of the same test case. We already have <property name="argument" value="…"> to help us distinguish, but in practice most of the tools that read JUnit XML files will now know about that property or account for it, and only look at the `<testcase classname=…name=…>` attributes to differentiate cases. * Extract each Trainer::XCResult::* nested class Into a dedicated file, for easier browsing of the code and smaller files to scroll through. * Fix JUnitGenerator test * Move `supports_xcode16_xcresulttool?` to Helper * Fix `rubocop` violations * Exclude tests requiring xcresulttool from windows * Remove unused require * Skip tests for new XCResult if CI don't support it * Better report failed xcresulttool calls * Make tests pass with earlier Xcode So that even you run the tests on CI with older versions of Xcode (that don't need nor know the `--legacy` flag) would still run and pass those tests * Improve shell command call Use Open3 to run the command instead of backticks - So that we can capture the error if it happens - So that the code is more resilient against special characters - So that we avoid the involvement of an intermediate shell (that would have to interpret the string into parameters before passing it to the process, requiring us to `Shellwords.escape` it in the first place… instead of just passing the parameters to the process directly without involving some unnecessary shell escaping + parsing intermediary) * Commit dummy project used to generate fixture Even if it's not directly used/referenced as a fixture by the specs themselves, it can still be useful to have it around to make it easier to add more tests in the project then regenerate the `.xcresult` fixture with more test results cases * Add test containing tricky characters Both in its name (emojis) and parameters (ASCII characters 0–128) * Update .xcresult fixture with new data * ignore `.sqlite3` files from `.xcresult` fixtures * Escape special chars when generating JUnit XML * Regenerate JUnit fixtures to match new xcresult * Update test: add error message with special chars To ensure that our sanitizing is not just working for test parameters, but also for error messages and similar strings that could be encountered elsewhere in the generated XML. This not only include the special, non-printable characters with unexpected ASCII values in the custom error message, but also ensure we include `>` and `<=` characters (which will have to be XML-escaped by REXML to be rendered properly) This also incidentally validates that a `#expect(…)` with a custom error message is properly taken into account when as a custom error message when parsing the `.xcresult` and generating the JUnit XML * Fix code comment location * Only commit database.sqlite3 file for new fixture The `*.xcresult/database.sqlite3` database file contains the same data as what's serialized in the `.xcresult/Data/*` files, and is just an alternate (and more modern and disk-space-optimized) representation of the same info that the latest `xcresulttool` supports So we might as well commit just the database instead of the whole Data/* folder and its files, not only to make it take less space on disk, but also to make the git diff and logs easier to deal with. * Attach <properties> to each <testsuite> instead As apparently JUnit conventions don't allow the root <testsuites> element to contain <properties> elements, only <testsuite> child elements can h/t @TheMetalCode for noticing in fastlane#29463 (comment) * Fix documentation style violation `trainer` -> _trainer_ * Fix rubocop violations * Update doc comments in .gitignore * Update doc comment in legacy_xcresult.rb Co-authored-by: Jason Hagglund <[email protected]> * Add some mode code comments Especially to be clearer about the Repetition type * Rename variable to nicer name As suggested in https://github.com/fastlane/fastlane/pull/29463/files#r1990796517 --------- Co-authored-by: Jason Hagglund <[email protected]>
* Add keychain_name param to setup_ci action Before this commit it was impossible to provide a `name` param to the `create_keychain` action which is called by the `setup_ci` action. This commit adds a `keychain_name` param to the `setup_ci` action which will be passed as `name` to the `create_keychain` action. * Do required setup by moving test It seems like some more setup was needed for the tests to pass on the CI. By moving the test, the setup should already be done. * Trim whitespace
* Update testfairy.rb * Adjust description to fit length limits --------- Co-authored-by: Olivier Halligon <[email protected]>
Primary local of "English" doesn't work anymore now that it's "English (U.S.) on App Store Connect. Changed to en-us
Onesignal killed the old user auth keys, they no longer work. Here's a conversation with their support... Me: where can I create a user authorization key for use with the API? Me: my key I was using is no longer working Them: Hi there, Thank you for reaching out! On the 14th of November 2024, we announced the new rich API key system described above and started deprecating legacy API keys. The legacy user auth keys will be deprecated on the 1st of March 2025, and legacy app REST API keys will be deprecated in Q1 2026. https://documentation.onesignal.com/docs/keys-and-ids#migrating-from-legacy-api-keys 1. This is the guide on generating the new rich auth key. https://documentation.onesignal.com/docs/keys-and-ids#api-keys Instead of using "Basic { REST API Key}", the new authentication key would be using this format "Key {Rich_Authentication_Key}". This will replace the REST API key. 2. For APIs using the user auth key, it will be replaced with the Organization API key: https://documentation.onesignal.com/docs/keys-and-ids#organization-api-key A sample request via the API can be found here along with other information: https://documentation.onesignal.com/reference/quick-start-api-guide#rest-api-key Let us know if you have any additional questions. Thanks.
…cates (fastlane#29352) Handle nil expiration_date in valid? method for pending certificates Commit Description: This update improves the valid? method in Spaceship::ConnectAPI::Certificate by handling cases where expiration_date is nil or an empty string. This issue occurs when a certificate is in a "Pending Approval" state in the Apple Developer portal, leading to fastlane match failures. Changes: Updated valid? to return false if expiration_date is nil or an empty string. Added test cases to ensure valid? handles: nil expiration date (pending approval case). Empty expiration date string. Expired certificates. Valid certificates. This prevents crashes due to Time.parse(nil) and improves stability when fetching certificates.
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
…c-iap-management-api
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is an attempt to merge in the latest master after updating the open PR we have on the main repo fastlane#20996