Skip to content
This repository was archived by the owner on Nov 12, 2025. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
293 commits
Select commit Hold shift + click to select a range
55da1f3
Add important caveat about uploads to docs.
designatednerd Mar 19, 2020
0b2b448
clean up indentation and finish dangling sentence
designatednerd Mar 19, 2020
cb23e9c
fix which framework a couple test files were getting added to
designatednerd Mar 19, 2020
e7304dc
regenerate documentation
designatednerd Mar 19, 2020
30bc0d9
update package.resolved
designatednerd Mar 19, 2020
ad634cb
Switch to computed variable which needs to be overridden rather than …
designatednerd Mar 19, 2020
c181084
regenerate docs so the whole damned stencil template isn't included
designatednerd Mar 19, 2020
de2be07
Merge pull request #1091 from apollographql/update/docs
designatednerd Mar 19, 2020
43b8197
Update changelog and bump version
designatednerd Mar 19, 2020
60dbb2b
Note that existing code works with v0.24.0 for tutorial
designatednerd Mar 20, 2020
775de70
Enclose bash paths in quotes to allow paths with spaces
sfoulston Mar 20, 2020
0417c67
Enclose outputURL in quotes to allow paths with spaces
sfoulston Mar 20, 2020
a7a7d7e
Fix failing tests (now expects paths enclosed in single quotes)
sfoulston Mar 20, 2020
947dbf6
Update react monorepo to v16.13.1
renovate-bot Mar 21, 2020
eab1466
Move header argument after output in cli bash command
sfoulston Mar 22, 2020
cc322dc
Use spaces instead of tabs for indentation
sfoulston Mar 22, 2020
84da447
Add clarifying comment
sfoulston Mar 22, 2020
f8b1c23
Fix comment indentation
sfoulston Mar 22, 2020
5866185
Merge pull request #1092 from sfoulston/fix/bash-paths-with-spaces
designatednerd Mar 22, 2020
72feb5b
Merge pull request #1093 from apollographql/renovate/react-monorepo
designatednerd Mar 22, 2020
43cfc72
Merge branch 'master' into fix/cli-argument-parsing
sfoulston Mar 22, 2020
8252a57
Merge pull request #1096 from sfoulston/fix/cli-argument-parsing
designatednerd Mar 22, 2020
f9a3a71
Update dependency gatsby to v2.20.4
renovate-bot Mar 24, 2020
fd70bfd
Merge pull request #1094 from apollographql/renovate/documentation-in…
designatednerd Mar 24, 2020
10b76d6
Enclose bash argument values in quotes to allow spaces
sfoulston Mar 25, 2020
f06f1c7
Update to use version 5.2 of `swift-tools`
designatednerd Mar 25, 2020
d4d4875
use xcrun to force the correct SDK when running from a build script r…
designatednerd Mar 26, 2020
9264970
update how you add a dependency for swift-tools 5.2
designatednerd Mar 26, 2020
1f56ea0
Also update github target to force swift run to use the macosx sdk
designatednerd Mar 26, 2020
62006d6
hey maybe i should tell Circle we're using xcode 11.4 too 🤦‍♀️
designatednerd Mar 26, 2020
916706d
update iphone and tvos runtimes
designatednerd Mar 26, 2020
ae85cb0
Merge pull request #1099 from apollographql/xcode-11.4
designatednerd Mar 26, 2020
841dd9f
Update dependency gatsby to v2.20.8
renovate-bot Mar 28, 2020
d992167
Add Package.swift to main Xcode project so I don't have to keep hunti…
designatednerd Mar 30, 2020
aea6fd7
update package.swift to use Swift tools 5.2
designatednerd Mar 30, 2020
631a749
Update documentation to add name, use `upToNextMinor` and current ver…
designatednerd Mar 30, 2020
3fbe5f3
ignore updated test script directory
designatednerd Mar 30, 2020
ad8af44
Merge pull request #1097 from sfoulston/fix/spaces-in-codegen-bash-paths
designatednerd Mar 30, 2020
26c7bac
Merge pull request #1106 from apollographql/fix/spm-name
designatednerd Mar 30, 2020
6c32422
Update download link and SHASUM for version 2.25.0 of the CLI
designatednerd Mar 30, 2020
46ef941
Add a note about trying SPM codegen wrapper
designatednerd Mar 30, 2020
f7b1acb
Merge pull request #1107 from apollographql/update/cli
designatednerd Mar 30, 2020
00c4725
Add ability to get to Starscream's underlying SOCKS proxy property.
designatednerd Mar 31, 2020
5cf3fa4
Update dependency gatsby-theme-apollo-docs to v4.1.2
renovate-bot Mar 31, 2020
eaac649
Fix mutations with APQs
Mar 31, 2020
2e0d56e
Merge pull request #1110 from IvanStebletsov/fix/mutations_with_APQs
designatednerd Mar 31, 2020
9a1ecc0
Merge pull request #1108 from apollographql/add/websocket-property
designatednerd Mar 31, 2020
d64f0a2
use switch case instead of ternaries
designatednerd Mar 31, 2020
c06949e
Merge pull request #1112 from apollographql/update/ternary-tweaks
designatednerd Mar 31, 2020
61ec825
regenerate documentation
designatednerd Mar 31, 2020
1d3fe48
Update download link and SHASUM for 2.26.0
designatednerd Mar 31, 2020
d24ef1b
Merge pull request #1113 from apollographql/update/cli-again
designatednerd Mar 31, 2020
44c6ae2
Update changelog and bump version
designatednerd Mar 31, 2020
b6f3e01
fix typo in release checklist
designatednerd Apr 1, 2020
4a78020
bump version in tutorial intro and swift scripting docs
designatednerd Apr 1, 2020
7d3106a
Add documentation on how to set up APQs
designatednerd Apr 1, 2020
d2e6196
Merge pull request #1114 from apollographql/add/apq-docs
designatednerd Apr 1, 2020
c767e4a
Update dependency gatsby-theme-apollo-docs to v4.1.3
renovate-bot Apr 1, 2020
ffe111d
Update dependency gatsby-theme-apollo-docs to v4.1.4
renovate-bot Apr 2, 2020
0811e0f
Update dependency gatsby to v2.20.12
renovate-bot Apr 4, 2020
4a25e08
Fix typo in the loadLaunchDetails() function
ck3g Apr 5, 2020
f59cdde
Merge pull request #1123 from ck3g/patch-1
designatednerd Apr 6, 2020
1622737
Add ability to set the SSLTrustValidator for websocket
ketenshi Apr 6, 2020
40bde03
Replaced `didSet` with `get` and `set`
ketenshi Apr 6, 2020
92fbaea
Merge pull request #1124 from scorebet/add/websocket-security
designatednerd Apr 7, 2020
f9f502c
Don't compare a boolean value to true
ck3g Apr 7, 2020
242ec3a
Add instructions for an import statement
ck3g Apr 7, 2020
eea186d
improove HTTPNetworkTransportRetryDelegate.networkTransport(_:receive…
RolandasRazma Apr 7, 2020
a508062
update docs
RolandasRazma Apr 7, 2020
9fed2a3
updated code example
RolandasRazma Apr 7, 2020
7c8d3a9
Merge pull request #1126 from ck3g/patch-2
designatednerd Apr 7, 2020
c5a548b
Merge pull request #1127 from ck3g/patch-3
designatednerd Apr 7, 2020
60cb840
updated note
RolandasRazma Apr 7, 2020
6d33ee1
added test for returning different errors
RolandasRazma Apr 7, 2020
fe5d417
Add support for multiple headers
Apr 8, 2020
d2a4bd8
Add a missing import of DetailUISetupPanel
ck3g Apr 9, 2020
2c31b5b
Add instructions to import KeychainSwift
ck3g Apr 9, 2020
45fc848
Update instructions to add cancelTrip method
ck3g Apr 9, 2020
9cf04fc
Merge pull request #1134 from ck3g/patch-4
designatednerd Apr 9, 2020
7e5062d
Merge pull request #1136 from ck3g/patch-6
designatednerd Apr 9, 2020
8541153
Merge pull request #1135 from ck3g/patch-5
designatednerd Apr 9, 2020
c17b95e
Add missing curly brace
ck3g Apr 10, 2020
ee88846
Fix a typo in a comment
ck3g Apr 10, 2020
b19fcf5
Update GraphiQL URL
ck3g Apr 10, 2020
0097fe3
Update HTTP Header examples
ck3g Apr 10, 2020
ef76fa8
Add UIViewController+Alert section to the tutorial
ck3g Apr 10, 2020
4013a2a
Make BookTrip mutation example consistent
ck3g Apr 10, 2020
c072a3e
Merge pull request #1 from apollographql/master
Apr 10, 2020
4d02846
Removed invalidRecordShape and return fieldJSONValue when $reference …
Apr 10, 2020
b382392
Updated test to remove SQLiteNormalizedCacheError and only check for …
Apr 10, 2020
83943fc
Merge pull request #1137 from ck3g/patch-5
designatednerd Apr 10, 2020
d11b9f7
Merge pull request #1140 from ck3g/patch-9
designatednerd Apr 10, 2020
6a91bb0
Merge pull request #1142 from ck3g/patch-11
designatednerd Apr 10, 2020
db367d8
Merge pull request #1138 from ck3g/patch-7
designatednerd Apr 10, 2020
f014294
Updated Unit Test switch case
Apr 10, 2020
dae2ea1
Merge pull request #1139 from ck3g/patch-8
designatednerd Apr 10, 2020
de3ce9c
Change tripID to id in the tutorial
ck3g Apr 10, 2020
274fd15
cleanup tests
RolandasRazma Apr 10, 2020
c813e9c
Merge pull request #1143 from ck3g/fix-book-trip-mutation-examples-in…
designatednerd Apr 11, 2020
149806e
Merge pull request #1144 from LearnWithHomer/fix/sqlite_deserialize
designatednerd Apr 11, 2020
dfa5d92
Update dependency gatsby to v2.20.17
renovate-bot Apr 11, 2020
76f2138
Update ApolloClient.swift
RolandasRazma Apr 11, 2020
809aa22
Update dependency gatsby to v2.20.18
renovate-bot Apr 11, 2020
262e2e3
weak self
RolandasRazma Apr 11, 2020
cadaa7d
split tests into 2
RolandasRazma Apr 11, 2020
4115bbe
weak self
RolandasRazma Apr 11, 2020
6baac06
Merge pull request #1128 from getfiit/issues_1121
designatednerd Apr 12, 2020
08c4a62
Cancel watcher fetch only if new fetch includes server
flobories Apr 14, 2020
84c56e6
One case per line
flobories Apr 14, 2020
08febcb
Improve style
flobories Apr 14, 2020
02e734e
Fix as per @designatednerd comments
Apr 15, 2020
0d40da2
Merge pull request #1153 from LachlanMcCulloch/multiple-headers
designatednerd Apr 15, 2020
bb6b3de
no need for cancel as its "one shot" operation
RolandasRazma Apr 15, 2020
95f20be
Merge pull request #1148 from getfiit/cancel_networkTask
designatednerd Apr 15, 2020
8b6aa1b
Update dependency gatsby-theme-apollo-docs to v4.1.5
renovate-bot Apr 15, 2020
d1cb1de
Update authentication tutorial language
polandtyler Apr 16, 2020
61f976a
Add new schema/doc screenshot + revert import removal
polandtyler Apr 16, 2020
703a91c
Merge pull request #1160 from polandtyler/patch-1
designatednerd Apr 16, 2020
461b370
Update dependency gatsby to v2.20.25
renovate-bot Apr 18, 2020
a7cbcc0
update CLI to 2.27.2, use CDN
designatednerd Apr 20, 2020
e0ebca4
Merge pull request #1166 from apollographql/update/cli
designatednerd Apr 20, 2020
a5bc442
remove deprecation warning and default implementation
designatednerd Apr 20, 2020
d92ca68
Add docs on `ContinueAction`
designatednerd Apr 20, 2020
3325045
Merge pull request #1167 from apollographql/update/just-break
designatednerd Apr 21, 2020
cf19e6d
add links to github releases of all mentioned CLI versions
designatednerd Apr 21, 2020
6c030c4
regenerate documentation for new version
designatednerd Apr 21, 2020
40c3acc
update changelog and bump project version
designatednerd Apr 21, 2020
cf3d35c
Add flag to follow redirects to curl command
designatednerd Apr 21, 2020
1a36412
Merge pull request #1164 from apollographql/renovate/documentation-in…
designatednerd Apr 21, 2020
78fe423
Add URL session client and tests
designatednerd Apr 17, 2020
bb9354a
replace URLSession with URLSession client, add raw result callback an…
designatednerd Apr 17, 2020
6beec62
make raw completion optional, better error handling
designatednerd Apr 17, 2020
c55c4d2
fix annotations and make a couple methods subclassable
designatednerd Apr 17, 2020
29cddc5
replace `MockURLSession` with `MockURLSessionClient` subclass.
designatednerd Apr 17, 2020
0020b13
update tests to use mock client instead of mock session, fix a couple…
designatednerd Apr 17, 2020
08c68dc
add inline documentation to URLSessionClient
designatednerd Apr 17, 2020
b4df0a7
Update advanced setup docs to include some documentation for new URLS…
designatednerd Apr 17, 2020
89da035
test two different types of cancellation
designatednerd Apr 17, 2020
97497c5
add missing @available warnings for watchOS and tvOS
designatednerd Apr 19, 2020
4527d0b
Add note about delegate methods to the class documentation of URLSess…
designatednerd Apr 19, 2020
e852434
Remove documentation about private Cartfile
simonbilskyrollins Apr 22, 2020
90a4599
Merge pull request #1168 from simonbilskyrollins/patch-1
designatednerd Apr 22, 2020
d68300e
add context to error being returned when something goes wrong at the …
designatednerd Apr 24, 2020
a20ccad
Update dependency gatsby to v2.20.35
renovate-bot Apr 25, 2020
c97b136
Swift Scripting Docs targetRootURL Possible Typo
SimonRice Apr 25, 2020
83deb52
Update dependency gatsby to v2.20.36
renovate-bot Apr 25, 2020
353fbfe
Update dependency gatsby-theme-apollo-docs to v4.2.0
renovate-bot Apr 25, 2020
b91ccf6
Merge pull request #1172 from SimonRice/patch-1
designatednerd Apr 27, 2020
95eaacb
Merge pull request #1163 from apollographql/add/urlsessionclient
designatednerd Apr 27, 2020
9a52ba3
regenerate documentation
designatednerd Apr 27, 2020
1504755
update changelog and bump version
designatednerd Apr 27, 2020
554621b
fix availability with URLSessionStreamTask for OSX
designatednerd Apr 28, 2020
384c536
Fix typo in `URLSessionConfiguration`
Apr 28, 2020
8d25cf1
Merge pull request #1174 from john-mejia/patch-1
designatednerd Apr 28, 2020
c10314b
Add watchOS 3.0 availability for urlSession(:task:didFinishCollecting)
SimonRice Apr 28, 2020
0200b59
Merge pull request #1175 from SimonRice/watch-out
designatednerd Apr 28, 2020
ad60b1c
Update dependency gatsby-theme-apollo-docs to v4.2.2
renovate-bot Apr 29, 2020
d4ca958
Add CDN patch versions to changelog
designatednerd May 1, 2020
c4981f6
Update dependency gatsby to v2.21.9
renovate-bot May 2, 2020
54cd546
Merge pull request #1180 from apollographql/renovate/documentation-in…
designatednerd May 2, 2020
16d0d13
replace apollo_ prefix by custom extension
yuzushioh May 3, 2020
d5e353d
fix
yuzushioh May 3, 2020
ef4a2ba
update SwiftScripts
yuzushioh May 3, 2020
2ad054d
Switch dictionaries in URLSession to use `Atomic` wrapper to try and …
designatednerd May 3, 2020
332a4c1
fix comment
yuzushioh May 4, 2020
36781f4
Merge pull request #1184 from apollographql/fix/atomic-dicts
designatednerd May 4, 2020
26996f4
Update changelog and bump version
designatednerd May 4, 2020
05db51a
clear cache synchronously
May 4, 2020
739e9e6
Add a whole bunch of ASCII art to help explain filesystem structure
designatednerd May 4, 2020
8378dd9
label a few more things to indicate where they live
designatednerd May 4, 2020
7f8b9bc
fix typo
May 5, 2020
0bbe3b5
Merge pull request #1186 from gsabran/gui--clear-cache-sync
designatednerd May 5, 2020
c114e79
Merge pull request #1188 from apollographql/improve/swift-docs
designatednerd May 5, 2020
7701064
Fix documentation in `HTTPNetworkTransport`
bezoadam May 6, 2020
81f2812
Merge pull request #1193 from bezoadam/patch-1
designatednerd May 6, 2020
7d47492
update to version 2.27.4 of the CLI
designatednerd May 6, 2020
b893f36
Merge pull request #1195 from apollographql/update/cli
designatednerd May 6, 2020
cc30705
Add GraphQL optional for input objects
designatednerd Mar 16, 2020
cb7d54f
Make a few things public, use dict keys to *slightly* reduce stringly…
designatednerd Mar 16, 2020
7a08813
add input object generator and expected files
designatednerd Mar 18, 2020
1b57efe
Add test for generating object with no optionals
designatednerd Apr 1, 2020
5a7ee36
validate alignment works with no modifier
designatednerd Apr 1, 2020
fd22849
use json-modern to also output types
designatednerd Apr 21, 2020
bb8b568
WIP change to get Star wars to output json
designatednerd May 4, 2020
22f3a81
update to API.json from running json-modern
designatednerd May 4, 2020
ea5d14e
Update tests and variable type for updated JSON parsing
designatednerd May 4, 2020
5c5ab66
Update test to use json-modern
designatednerd May 6, 2020
35be5f0
update name of test to be accurate 🤦‍♀️
designatednerd May 6, 2020
0c26abf
make GraphQLOptional conform to Hashable
designatednerd May 6, 2020
700dc42
add methods to tell if a type is optional and generate a GraphQLOptio…
designatednerd May 6, 2020
5b1e878
Get first input object generator test passing \o/
designatednerd May 6, 2020
d2f87b3
add test for input object generated without modifier
designatednerd May 6, 2020
c7168df
Add initializer doc generation for input objects - addresses #562
designatednerd May 6, 2020
b19176a
turn on thread sanitizer for the codegen lib target
designatednerd May 6, 2020
d679517
Set the error and signal the semaphore from the same place to make su…
designatednerd May 6, 2020
8daa632
Take out temporary codegen options
designatednerd May 6, 2020
64213f1
Create ApolloCore lib and move GraphQLOptional to it
designatednerd May 6, 2020
015e534
Merge pull request #1183 from yuzushioh/apolloprefix
designatednerd May 7, 2020
a737bd7
Merge branch 'master' into add/input-objects + fix merge conflicts
designatednerd May 7, 2020
f4666d2
add docs to extension, leave note on why we still need `apollo_` on g…
designatednerd May 7, 2020
c2b633a
don't add xcconfig for core to target
designatednerd May 7, 2020
4745c75
fix tests that missed the train on the refactor
designatednerd May 7, 2020
09d963f
Merge pull request #1194 from apollographql/add/input-objects
designatednerd May 7, 2020
94377dc
Update dependency gatsby to v2.21.21
renovate-bot May 9, 2020
ca136d7
Merge remote-tracking branch 'origin/master' into florent/cancel_only…
flobories May 11, 2020
ef825e3
Merge branch 'master' into florent/cancel_only_when_server_fetch
flobories May 11, 2020
3899f9d
Revert first attempt
flobories May 11, 2020
2b07e69
Load from the store before attempting server fetch
flobories May 12, 2020
bcbb46f
Restore erroneously erased comment
flobories May 12, 2020
4b91a12
Update dependency gatsby-theme-apollo-docs to v4.2.3
renovate-bot May 16, 2020
b20b37e
Update dependency gatsby to v2.21.33
renovate-bot May 16, 2020
c3f1945
PR Feedback
flobories May 18, 2020
4f3bbd5
Added option to generate a custom scalar with a prefix.
CraigSiemens May 19, 2020
47f2430
Updates for PR comments:
CraigSiemens May 19, 2020
aa65d09
Merge pull request #1216 from CraigSiemens/custom-scalars-prefix
designatednerd May 19, 2020
9ffce33
Do not retain self strongly in async
flobories May 19, 2020
31c5339
Merge pull request #1156 from withDouble/florent/cancel_only_when_ser…
designatednerd May 19, 2020
7dc0573
Add ability to update header values for the websocket connection request
YoInTheHive May 22, 2020
4452b30
Add ability to update connectingPayload
YoInTheHive May 22, 2020
6440528
Update dependency gatsby to v2.22.9
renovate-bot May 23, 2020
343098a
Adding WebSocketTranspotTests
YoInTheHive May 24, 2020
c0f2886
Merge pull request #1224 from yootsubo/webSockTransportHeaderUpdate
designatednerd May 26, 2020
18a52a5
change extension of tutorial detail to mdx so it renders the expandab…
designatednerd May 27, 2020
6a4cc32
remove import from step 4 since it's now in step 6
designatednerd May 27, 2020
f2c3bd2
use self-closing image tags on detail view
designatednerd May 27, 2020
418dc11
Merge pull request #1229 from apollographql/fix/mdx
designatednerd May 27, 2020
1e2f325
pull out identifier into its own variable when setting up task
designatednerd May 19, 2020
6a9afaa
update transport setup in star wars server tests to not recreate the …
designatednerd May 19, 2020
0b31a84
test creating a bunch of identical requests at once creates different…
designatednerd May 19, 2020
19cdc59
get tests failing more consistently using concurrentperform
designatednerd May 19, 2020
90598a0
update test to hit HTTP bin direclty
designatednerd May 21, 2020
385962a
key of the URLSessionTask rather than the ID
designatednerd May 21, 2020
da677e5
prevent race condition on lazy var
designatednerd May 26, 2020
61ebda5
add mutating function to atomic
designatednerd May 26, 2020
645b910
centralize to task data structure, use mutating to handle locking bet…
designatednerd May 26, 2020
3f611d3
go back to using the task identifier since fixing concurrency seems t…
designatednerd May 26, 2020
cb8d46f
rm debugging print 🤦‍♀️
designatednerd May 27, 2020
0f5772e
clear all tasks when `URLSessionClient` gets deinited
designatednerd May 27, 2020
6c1c832
assertion failure if there's no task data found for a given URLSessio…
designatednerd May 27, 2020
e58853d
validate that all task IDs created are unique
designatednerd May 27, 2020
f64b3f6
Merge pull request #1227 from apollographql/fix/multifetch
designatednerd May 27, 2020
78f816b
add doc on atomic mutate method
designatednerd May 27, 2020
dd3d806
regenerate documentation for next release
designatednerd May 27, 2020
e847d75
update changelog and bump version
designatednerd May 27, 2020
b8db41a
Exposed a method to connect/disconnect
Dec 7, 2018
e0563b0
Made connectingPayload public
May 8, 2019
680d3f4
Extend 'WebSocketTransportDelegate' protocol
May 31, 2019
f919978
Expose 'reconnectionInterval' property
May 31, 2019
19ab6b8
Extend 'WebSocketTransportDelegate' protocol
May 31, 2019
267a2bb
Merge branch 'connect' into update/merge-upstream
ketenshi May 28, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,16 @@ version: 2.1
parameters:
xcode_version:
type: string
default: "11.3.1"
default: "11.4.0"
ios_current_version:
type: string
default: "13.3"
default: "13.4"
ios_previous_version:
type: string
default: "12.4"
ios_sdk:
type: string
default: "iphonesimulator13.2"
default: "iphonesimulator13.4"
macos_version: # The user-facing version string for macOS builds
type: string
default: "10.15"
Expand All @@ -21,10 +21,10 @@ parameters:
default: "macosx10.15"
tvos_version: # The user-facing version string of tvOS builds
type: string
default: "13.3"
default: "13.4"
tvos_sdk:
type: string
default: "appletvsimulator13.2"
default: "appletvsimulator13.4"

commands:
common_test_steps:
Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -56,3 +56,5 @@ package-lock.json
scripts/apollo
scripts/apollo.tar.gz
SwiftScripts/ApolloCLI
Tests/ApolloCodegenTests/scripts
Tests/ApolloCodegenTests/scripts directory
290 changes: 285 additions & 5 deletions Apollo.xcodeproj/project.pbxproj

Large diffs are not rendered by default.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "NO"
enableThreadSanitizer = "YES"
codeCoverageEnabled = "YES"
onlyGenerateCoverageForSpecifiedTargets = "YES">
<MacroExpansion>
Expand Down
93 changes: 91 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,79 @@
# Change log

## v0.28.0
- **BREAKING**: Changed a few things in the `ApolloCodegen` library to use `object.apollo.extensionMethod` syntax rather than `object.apollo_extensionMethod`. There's a few things that are still using `apollo_` notation due to constraints around conditional conformance, but you should particularly check your swift scripts for changes around `FileManager` APIs. ([#1183](https://github.com/apollographql/apollo-ios/pull/1183))
- **BREAKING**: `NormalizedCache` now has a method for explicitly clearing the cache synchronously, in addition to the existing method to clear it asynchronously. If you've got a custom `NormalizedCache` implementation, you'll need to add an implementation for this method. ([#1186](https://github.com/apollographql/apollo-ios/pull/1186))
- Fixed race conditions in `URLSessionClient` that were causing unexpected behavior. Turns out concurrency is hard! ([#1227](https://github.com/apollographql/apollo-ios/pull/1227))
- Improved handling of a dependent key update cancelling an in-flight server fetch on a watcher. ([#1156](https://github.com/apollographql/apollo-ios/pull/1156))
- Added option to Swift Codegen to pass in a prefix for custom scalars. ([#1216](https://github.com/apollographql/apollo-ios/pull/1216))

## v0.27.1
- Better defense against multithreading crashes in `URLSessionClient`. ([#1184](https://github.com/apollographql/apollo-ios/pull/1184))
- Fix for watchOS availability for `URLSessionClient`. ([#1175](https://github.com/apollographql/apollo-ios/pull/1175))

## v0.27.0
- **BREAKING**: Replaced calls directly into the closure based implementation of `URLSession` with a delegate-based implementation called `URLSessionClient`.
- This (finally) allows background session configurations to be used with `ApolloClient`, since background session configurations immediately error out if you try to use the closure-based `URLSession` API.
- **This makes a significant change to the initialization of `HTTPNetworkTransport` if you're using a custom `URLSession`**: Because `URLSession` must have its delegate set at the point of creation, `URLSessionClient` is now creating the URL session. You can initialize a `URLSessionClient` with a `URLSessionConfiguration`. if before you were using:

```swift
let session = URLSession(configuration: myCustomConfiguration)
let url = URL(string: "http://localhost:8080/graphql")!
let transport = HTTPNetworkTransport(url: url,
session: session)
```

You will now need to use:

```swift
let client = URLSessionClient(sessionConfiguration: myCustomConfiguration)
let url = URL(string: "http://localhost:8080/graphql")!
let transport = HTTPNetworkTransport(url: url,
client: client)
```

- If you were passing in a session you'd already set yourself up to be the delegate of to handle GraphQL requests, you'll need to subclass `URLSessionClient` and override any delegate methods off of `URLSessionDelegate`, `URLSessionTaskDelegate`, or `URLSessionDataDelegate` you need to handle. Unfortunately only one class can be a delegate at a time, and that class must be declared when the session is instantiated.

Note that if you don't need your existing delegate-based session to do any handling for things touched by Apollo, you can keep it completely separate if you'd prefer.
- This does *not* change anything at the point of calls - everything is still closure-based in the end

Please file bugs on this ASAP if you run into problems. Thank you! ([#1163](https://github.com/apollographql/apollo-ios/pull/1163))


## v0.26.0
- **BREAKING**, though in a good way: Updated the typescript CLI to [2.27.2](https://github.com/apollographql/apollo-tooling/releases/tag/apollo%402.27.2), and updated the script to pull from a CDN (currently backed by GitHub Releases) rather than old Circle images. This should significantly increase download performance and stability. ([#1166](https://github.com/apollographql/apollo-ios/pull/1166))
- **BREAKING**: Updated the retry delegate to allow more fine-grained control of what error to return if an operation fails in the process of retrying. ([#1128](https://github.com/apollographql/apollo-ios/pull/1128), [#1167](https://github.com/apollographql/apollo-ios/pull/1167))
- Added support to the Swift scripting package to be able to use multiple headers when downloading a schema. ([#1153](https://github.com/apollographql/apollo-ios/pull/1153))
- Added the ability to set the SSL trust validator on a websocket. ([#1124](https://github.com/apollographql/apollo-ios/pull/1124))
- Fixed an issue deserializing custom scalars in `ApolloSQLite`. ([#1144](https://github.com/apollographql/apollo-ios/pull/1144))

## v0.25.1

- Repoints download link to our CDN for the CLI for people on 0.25.0 who can't upgrade to 0.26.0 or higher immediately.

## v0.25.0
- **BREAKING**: Updated the `swift-tools` version to 5.2 in `Package.swift`. Note that if you're using `swift-tools` 5.2, you'll need to update the syntax of your `Package.swift` file and specify the name of the library manually for Apollo. ([#1099](https://github.com/apollographql/apollo-ios/pull/1099), [#1106](https://github.com/apollographql/apollo-ios/pull/1106))
- **POSSIBLY BREAKING**: Upgraded the typescript CLI to [2.26.0](https://github.com/apollographql/apollo-tooling/releases/tag/apollo%402.26.0). No changes were found in test frameworks, but this could theoretically break some stuff. ([#1107](https://github.com/apollographql/apollo-ios/pull/1107), [#1113](https://github.com/apollographql/apollo-ios/pull/1113))
- **NEW**: Added the ability to set Starscream's underlying `enableSOCKSProxy` to better allow debugging web sockets in tools like Charles Proxy. ([#1108](https://github.com/apollographql/apollo-ios/pull/1108))
- Fixed several issues using paths with spaces in the Swift Codegen. ([#1092](https://github.com/apollographql/apollo-ios/pull/1092), [#1097](https://github.com/apollographql/apollo-ios/pull/1097)).
- `ApolloCodegenLib` is now properly passing the `header` argument last when downloading a schema. ([#1096](https://github.com/apollographql/apollo-ios/pull/1096))
- Automatic Persisted Queries now also work with mutations. ([#1110](https://github.com/apollographql/apollo-ios/pull/1110))

## v0.24.1
- Repoints download link to our CDN for the CLI for people on 0.24.0 who can't upgrade to 0.26.0 or higher immediately.

## v0.24.0
- **BREAKING**: Updated `GraphQLResponse` to be generic over the response type rather than the operation type. This will allow more flexibility for generic modifications to methods that need to use `GraphQLResponse`. ([#1061](https://github.com/apollographql/apollo-ios/pull/1061))
- **BREAKING**: Updated the file URL-based initializer of `GraphQL` to throw with a clear error instead of failing silently. Removed the ability to pass in an input stream since that can't be recreated on a failure. Updated initializers take either raw `Data` or a file URL so that the input stream can be recreated on a retry. ([#1086](https://github.com/apollographql/apollo-ios/pull/1086), [#1089](https://github.com/apollographql/apollo-ios/pull/1089))
- In the Swift Package Manager based codegen, made sure that the folder the CLI will be downloaded to is created if it doesn't exist. ([#1069](https://github.com/apollographql/apollo-ios/pull/1069))

## v0.23.3
- Repoints download link to our CDN for the CLI for people on 0.23.x who can't upgrade to 0.26.0 or higher immediately.

## v0.23.2
- Changed the `@available` flags added in 0.23.1 to `#if os(macOS)`, since the former is runtime and the latter is compile time, to work around a bug where SwiftUI compiles the `ApolloCodegenLib` library even if it's not included in the target being previewed. ([#1066](https://github.com/apollographql/apollo-ios/pull/1066))
- Added support for `omitDeprecatedEnumCases` command line option I missed for `ApolloCodegenOptions` ([#1053](https://github.com/apollographql/apollo-ios/pull/1053))

## v0.23.1
- Added some `@available` flags to prevent accidental compilation of `ApolloCodegenLib` on platforms other than macOS. ([#1041](https://github.com/apollographql/apollo-ios/pull/1041))
- Made the `Query` on `GraphQLQueryWatcher` public so it can be referenced. ([#1037](https://github.com/apollographql/apollo-ios/pull/1037))
Expand All @@ -15,8 +89,11 @@

- Fixed some memory leaks in our internal Promises implementation. ([#1016](https://github.com/apollographql/apollo-ios/pull/1016))

### v0.22.1
- Repoints download link to our CDN for the CLI for people on 0.22.0 who can't upgrade to 0.26.0 or higher immediately.

### v0.22.0
- **BREAKING**: Updated CLI to v2.22.1, including a bunch of fixes on the Swift side:
- **BREAKING**: Updated CLI to [v2.22.1](https://github.com/apollographql/apollo-tooling/releases/tag/apollo%402.22.1), including a bunch of fixes on the Swift side:
- Marked files which are generated as `@generated`
- Added documentation to the constructors of input structs
- Added additional type annotations to improve compile times.
Expand All @@ -26,22 +103,34 @@
- Fixed an issue that could lead to an undefined cache key in the SQLite library. ([#991](https://github.com/apollographql/apollo-ios/pull/991))
- Fixed an issue where existing fetch operations in a watcher would not be canceled before a new one was started. ([#1012](https://github.com/apollographql/apollo-ios/pull/1012))

### v0.21.1
- Repoints download link to our CDN for the CLI for people on 0.21.0 who can't upgrade to 0.26.0 or higher immediately.

### v0.21.0
- **BREAKING**, but by popular request: Removed the requirement that the `clientName` and `clientVersion` on `NetworkTransport`, and added a default implementation so custom implementations don't need to set these up themselves. ([#954](https://github.com/apollographql/apollo-ios/pull/954))

### v0.20.1
- Repoints download link to our CDN for the CLI for people on 0.20.0 who can't upgrade to 0.26.0 or higher immediately.

### v0.20.0

- Fixed a bunch of data races in `ApolloWebSocket`. ([#880](https://github.com/apollographql/apollo-ios/pull/880))
- Updated `ApolloWebSocket` to depend on `Apollo` in `Package.swift` since there is a dependency there. ([#906](https://github.com/apollographql/apollo-ios/pull/906))
- **POSSIBLY BREAKING** Updated Swift tools verson in package declaration to 5.1. ([#883](https://github.com/apollographql/apollo-ios/pull/883))

### v0.19.1
- Repoints download link to our CDN for the CLI for people on 0.19.0 who can't upgrade to 0.26.0 or higher immediately.

### v0.19.0
- **NEW**: Added a retry delegate to allow retries based on GraphQL errors returned from your server, not just network-level errors. NOTE: Be careful with which errors you retry for - the mere presence of an error doesn't necessarily indicate a full failure since GraphQL queries can return partial results. ([#770](https://github.com/apollographql/apollo-ios/pull/770))
- **NEW**: Automatically generates ApolloEngine/ApolloGraphManager headers based on your main bundle's ID and version number. These can also be configured when you set up your `NetworkTransport` if you need something more granular for different versions of your application. ([#858](https://github.com/apollographql/apollo-ios/pull/858))
- **POSSIBLY BREAKING**: The `NetworkTransport` protocol is now class-bound. If you built your own `NetworkTransport` implementation instead of one of the ones included with the library, this now must be a `class` instead of a `struct`. ([#770](https://github.com/apollographql/apollo-ios/pull/770))
- **POSSIBLY BREAKING**: Removed an `unzip` method for arrays of arays which we were not using. However, since it was public, we figured we should let you know. ([#872](https://github.com/apollographql/apollo-ios/pull/872))
- Bumped Starscream dependency to `3.1.1`. ([#873](https://github.com/apollographql/apollo-ios/pull/873))

### v0.18.2
- Repoints download link to our CDN for the CLI for people on 0.18.x who can't upgrade to 0.26.0 or higher immediately.

### v0.18.1
- Removes TSAN from run on schemes to fix Carthage issue. ([#862](https://github.com/apollographql/apollo-ios/pull/862))

Expand All @@ -50,7 +139,7 @@
- **POSSIBLY BREAKING**: Updated CLI to no longer be directly bundled, but to be downloaded if needed. This allows us to avoid bloating the iOS repo with the CLI zip, and to make it easier to test different versions of the CLI in the future. This change should automatically download the updated CLI version for you.

Note one significant change from prior bundled versions: If you are connected to the internet when you download the iOS dependency through SPM/Carthage/CocoaPods, you will now need to build your target while still connected to the internet in order to download the proper version of the CLI. Once the correct version of the CLI is downloaded, internet access should no longer be necessary to build. If you disconnect from the internet before the correct version downloads, you will not be able to build. ([#855](https://github.com/apollographql/apollo-ios/pull/855))
- Updated version of CLI to download to `2.21.0`. ([#855](https://github.com/apollographql/apollo-ios/pull/855)) This includes:
- Updated version of CLI to download to [`2.21.0`](https://github.com/apollographql/apollo-tooling/releases/tag/apollo%402.21.0). ([#855](https://github.com/apollographql/apollo-ios/pull/855)) This includes:
- Ability to have the codegen ignore deprecated enum cases by using the `--omitDeprecatedEnumCases` flag
- Fix for generating input fields for `null` values
- Fixes a number of weak references with closures. Note [that this may reveal some places you weren't hanging onto a strong reference to your `ApolloClient` object](https://github.com/apollographql/apollo-ios/pull/854#issuecomment-545673975), which will cause it to get deallocated. ([#854](https://github.com/apollographql/apollo-ios/pull/854))
Expand Down
3 changes: 3 additions & 0 deletions Configuration/Apollo/Apollo-Target-ApolloCore.xcconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#include "../Shared/Workspace-Universal-Framework.xcconfig"

INFOPLIST_FILE = Sources/ApolloCore/Info.plist
2 changes: 1 addition & 1 deletion Configuration/Shared/Project-Version.xcconfig
Original file line number Diff line number Diff line change
@@ -1 +1 @@
CURRENT_PROJECT_VERSION = 0.23.1
CURRENT_PROJECT_VERSION = 0.28.0
27 changes: 27 additions & 0 deletions Package.resolved

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading