Skip to content

Commit

Permalink
update Apollo to 1.9.3
Browse files Browse the repository at this point in the history
Updates Apollo to 1.9.3
  • Loading branch information
jasontduong committed Apr 16, 2024
2 parents 161f810 + fcad88e commit 2b7ca7d
Show file tree
Hide file tree
Showing 897 changed files with 10,279 additions and 103,138 deletions.
253 changes: 16 additions & 237 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -1,242 +1,21 @@
version: 2.1

parameters:
xcode_version:
type: string
default: "13.4.1"
ios_current_version:
type: string
default: "15.5"
ios_previous_version:
type: string
default: "14.5"
ios_sdk:
type: string
default: "iphonesimulator15.5"
macos_version: # The user-facing version string for macOS builds
type: string
default: "12.3.1"
macos_sdk: # The full SDK string to use for macOS builds
type: string
default: "macosx12.3"
tvos_version: # The user-facing version string of tvOS builds
type: string
default: "15.4"
tvos_sdk:
type: string
default: "appletvsimulator15.4"

commands:
integration_test_setup:
steps:
- restore_cache:
key: starwars-server
- restore_cache:
key: apollo-server-graphql-transport-ws
- common_test_setup
- run:
command: ./scripts/install-node-v12.sh
name: Install Node
- run:
command: ./scripts/install-or-update-starwars-server.sh
name: Install/Update StarWars Server
- run:
command: cd ../starwars-server && npm start
name: Start StarWars Server
background: true
- run:
command: cd SimpleUploadServer && nvm use && npm install && npm start
name: Start Upload Server
background: true
- run:
command: sudo chmod -R +rwx SimpleUploadServer
name: Adjust permissions for simple upload server folder
- run:
command: ./scripts/install-apollo-server-docs-example-server.sh
name: Install Apollo Server (graphql-transport-ws configuration)
- run:
command: cd ../docs-examples/apollo-server/v3/subscriptions-graphql-ws && npm start
name: Start Apollo Server (graphql-transport-ws configuration)
background: true
integration_test_cleanup:
steps:
- save_cache:
key: starwars-server
paths:
- ../starwars-server
- save_cache:
key: apollo-server-graphql-transport-ws
paths:
- ../docs-examples/apollo-server/v3/subscriptions-graphql-ws
common_test_setup:
description: Commands to run for setup of every set of tests
steps:
- checkout
- run:
command: rm ~/.ssh/id_rsa
name: Remove old SSH key
- run:
command: for ip in $(dig @8.8.8.8 bitbucket.org +short); do ssh-keyscan bitbucket.org,$ip; ssh-keyscan $ip; done 2>/dev/null >> ~/.ssh/known_hosts || true
name: Bitbucket Key Workaround
- run:
command: for ip in $(dig @8.8.8.8 github.com +short); do ssh-keyscan github.com,$ip; ssh-keyscan $ip; done 2>/dev/null >> ~/.ssh/known_hosts || true
name: Github Key Workaround
build_and_run_tests:
steps:
- run:
command: xcodebuild clean build build-for-testing -project "Apollo.xcodeproj" -scheme "${CIRCLE_XCODE_SCHEME}" -sdk "${CIRCLE_XCODE_SDK}" -destination "${DESTINATION}" -testPlan "${CIRCLE_XCODE_TEST_PLAN}" | xcpretty
name: Clean and build for testing
- run:
command: xcodebuild test-without-building -resultBundlePath ~/TestResults/ResultBundle.xcresult -project "Apollo.xcodeproj" -scheme "${CIRCLE_XCODE_SCHEME}" -sdk "${CIRCLE_XCODE_SDK}" -destination "${DESTINATION}" -testPlan "${CIRCLE_XCODE_TEST_PLAN}" | xcpretty
name: Run tests
- save-xcodebuild-artifacts
save-xcodebuild-artifacts:
description: Save artifacts logs, crash reports and test results generated by xcodebuild
steps:
- store_artifacts:
name: Save xcodebuild logs
path: logs
destination: logs
- store_artifacts:
name: Save crash logs
path: ~/Library/Logs/DiagnosticReports/
destination: crashes
- run:
name: Zip result bundle
working_directory: ~/TestResults
command: zip -r ResultBundle.zip ResultBundle.xcresult
when: always
- store_artifacts:
name: Save test results
path: ~/TestResults/ResultBundle.zip
destination: results

# Important! When adding a new job to `jobs`, make sure to define when it
# executes by also adding it to the `workflows` section below!
jobs:
Swift_Build:
macos:
xcode: << pipeline.parameters.xcode_version >>
steps:
- common_test_setup
- run:
command: swift build

IntegrationTests_macOS_current:
macos:
xcode: << pipeline.parameters.xcode_version >>
environment:
DESTINATION: platform=macOS,arch=x86_64
CIRCLE_XCODE_SCHEME: Apollo
CIRCLE_XCODE_TEST_PLAN: Apollo-IntegrationTestPlan
CIRCLE_XCODE_SDK: << pipeline.parameters.macos_sdk >>
steps:
- integration_test_setup
- build_and_run_tests
- integration_test_cleanup

macOS_current:
macos:
xcode: << pipeline.parameters.xcode_version >>
environment:
DESTINATION: platform=macOS,arch=x86_64
CIRCLE_XCODE_SCHEME: Apollo
CIRCLE_XCODE_TEST_PLAN: Apollo-CITestPlan
CIRCLE_XCODE_SDK: << pipeline.parameters.macos_sdk >>
steps:
- common_test_setup
- build_and_run_tests

iOS_current:
macos:
xcode: << pipeline.parameters.xcode_version >>
environment:
DESTINATION: platform=iOS Simulator,OS=<< pipeline.parameters.ios_current_version >>,name=iPhone 12
CIRCLE_XCODE_SCHEME: Apollo
CIRCLE_XCODE_TEST_PLAN: Apollo-CITestPlan
CIRCLE_XCODE_SDK: << pipeline.parameters.ios_sdk >>
steps:
- common_test_setup
- build_and_run_tests

iOS_previous:
macos:
xcode: << pipeline.parameters.xcode_version >>
environment:
DESTINATION: platform=iOS Simulator,OS=<< pipeline.parameters.ios_previous_version >>,name=iPhone 12
CIRCLE_XCODE_SCHEME: Apollo
CIRCLE_XCODE_TEST_PLAN: Apollo-CITestPlan
CIRCLE_XCODE_SDK: << pipeline.parameters.ios_sdk >>
steps:
- common_test_setup
- build_and_run_tests

tvOS_current:
macos:
xcode: << pipeline.parameters.xcode_version >>
environment:
DESTINATION: platform=tvOS Simulator,OS=<< pipeline.parameters.tvos_version >>,name=Apple TV
CIRCLE_XCODE_SCHEME: Apollo
CIRCLE_XCODE_TEST_PLAN: Apollo-CITestPlan
CIRCLE_XCODE_SDK: << pipeline.parameters.tvos_sdk >>
steps:
- common_test_setup
- build_and_run_tests

CodegenLib_macOS_current:
macos:
xcode: << pipeline.parameters.xcode_version >>
environment:
DESTINATION: platform=macOS,arch=x86_64
CIRCLE_XCODE_SCHEME: ApolloCodegenLib
CIRCLE_XCODE_TEST_PLAN: Apollo-CodegenTestPlan
CIRCLE_XCODE_SDK: << pipeline.parameters.macos_sdk >>
steps:
- common_test_setup
- build_and_run_tests

CocoaPodsTrunk:
macos:
xcode: << pipeline.parameters.xcode_version >>
steps:
- checkout
# TODO: Remove when Circle updates the version of CP installed on their
# image to one that doesn't have https://github.com/CocoaPods/CocoaPods/issues/9176
- run: pod repo add-cdn trunk 'https://cdn.cocoapods.org/'
- run: pod trunk push Apollo.podspec
- run: pod trunk me clean-sessions --all
orbs:
secops: apollo/[email protected]

workflows:
version: 2
# This workflow builds and tests the library across various operating systems and versions
build-and-test:
security-scans:
jobs:
- Swift_Build:
name: Build with SPM
- IntegrationTests_macOS_current:
name: Apollo Integration Tests macOS << pipeline.parameters.macos_version >>
- macOS_current:
name: Apollo macOS << pipeline.parameters.macos_version >>
- iOS_current:
name: Apollo iOS << pipeline.parameters.ios_current_version >>
- iOS_previous:
name: Apollo iOS << pipeline.parameters.ios_previous_version >>
- tvOS_current:
name: Apollo tvOS << pipeline.parameters.tvos_version >>
- CodegenLib_macOS_current:
name: Swift Code Generation
- CocoaPodsTrunk:
name: Push Podspec to CocoaPods Trunk
requires:
- Apollo macOS << pipeline.parameters.macos_version >>
- Apollo iOS << pipeline.parameters.ios_current_version >>
- Apollo iOS << pipeline.parameters.ios_previous_version >>
- Apollo tvOS << pipeline.parameters.tvos_version >>
- Swift Code Generation
filters:
# Only build semver tags
tags:
only: /((\d*)\.(\d*)\.(\d*)).*/
# Don't run this on any branches
branches:
ignore: /.*/
- secops/gitleaks:
context:
- platform-docker-ro
- github-orb
- secops-oidc
git-base-revision: <<#pipeline.git.base_revision>><<pipeline.git.base_revision>><</pipeline.git.base_revision >>
git-revision: << pipeline.git.revision >>
- secops/semgrep:
context:
- secops-oidc
- github-orb
git-base-revision: <<#pipeline.git.base_revision>><<pipeline.git.base_revision>><</pipeline.git.base_revision >>
fail-on-findings: true
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
docs/docc/Apollo.doccarchive/** linguist-generated=true
4 changes: 4 additions & 0 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# This file was automatically generated by the Apollo SecOps team
# Please customize this file as needed prior to merging.

* @apollographql/client-swift
2 changes: 0 additions & 2 deletions .github/CODEOWNERS.md

This file was deleted.

42 changes: 42 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: Bug report
description: Create a bug report
labels: [ "bug", "needs investigation" ]
body:
- type: textarea
attributes:
label: Summary
description: A clear and concise description of what the bug is.
validations:
required: true
- type: input
attributes:
label: Version
description: Make sure the bug is still happening on the latest version. Make sure you've read [`CHANGELOG.md`](https://github.com/apollographql/apollo-ios/blob/main/CHANGELOG.md) to check that a new version hasn't already addressed your problem.
validations:
required: true
- type: textarea
attributes:
label: Steps to reproduce the behavior
description: |
Add context about the problem here. How it happened and how to reproduce it:
- If your project is open source, a link to the project is greatly appreciated.
- If not, please share as much information as possible to help to understand the problem: schema, queries, sample code, etc...
- Add things that you already tried.
validations:
required: true
- type: textarea
attributes:
label: Logs
description: |
Paste logs and full stacktrace here.
You can also attach files by dragging them into the area.
placeholder: This will be automatically formatted into code, so no need for backticks.
render: shell
validations:
required: false
- type: textarea
attributes:
label: Anything else?
description: Links, references, more context, or anything that will give us more information about the issue you are encountering!
validations:
required: false
18 changes: 18 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: Feature request
description: Suggest an idea for this project
labels: [ "feature" ]
body:
- type: textarea
attributes:
label: Use case
description: A clear and concise description of what the problem is.
validations:
required: true
- type: textarea
attributes:
label: Describe the solution you'd like
description: |
A clear and concise description of what you want to happen.
If you already have an idea of the API you would like, do not hesitate to add it to the issue.
validations:
required: false
25 changes: 0 additions & 25 deletions .github/ISSUE_TEMPLATE/issue-template-bug.md

This file was deleted.

21 changes: 0 additions & 21 deletions .github/ISSUE_TEMPLATE/issue-template-feature-request.md

This file was deleted.

Loading

0 comments on commit 2b7ca7d

Please sign in to comment.