- #1581
3682b92Thanks @github-actions! - add error codes for new Apollo Client version
- #1573
8a57f17Thanks @github-actions! - add error codes for new Apollo Client version
- #1568
79a08e9Thanks @github-actions! - add error codes for new Apollo Client version
- #1566
6ccc20eThanks @github-actions! - add error codes for new Apollo Client version
- #1560
4af3744Thanks @github-actions! - add error codes for new Apollo Client version
- #1555
6e01171Thanks @github-actions! - add error codes for new Apollo Client version
-
#1538
c8a8f2fThanks @jerelmiller! - Fix issue when serializing anApolloErrorwhere clientErrors or protocolErrors is undefined. -
#1538
c8a8f2fThanks @jerelmiller! - Fix issue where a page refresh would sometimes cause an error to be displayed in the devtools related to store resets.
- #1536
fe039a0Thanks @jerelmiller! - Fix an issue where refreshing the page would sometimes cause client data to stop updating.
- #1508
d408d7fThanks @github-actions! - add error codes for new Apollo Client version
- #1505
4fc4f78Thanks @github-actions! - add error codes for new Apollo Client version
- #1502
220f57fThanks @github-actions! - add error codes for new Apollo Client version
- #1494
4474f85Thanks @github-actions! - add error codes for new Apollo Client version
- #1488
3a26412Thanks @jerelmiller! - Always JSON serialize payloads sent from the injected script to avoid issues cloning irregular objects in client data.
- #1481
d065fcaThanks @jerelmiller! - Fix issue serializing cache data for the queries tab when the cache contains irregular data.
-
#1459
b4a600bThanks @jerelmiller! - Show a loading indicator when the extension is loading client data. -
#1459
b4a600bThanks @jerelmiller! - Show an error screen if an error occurs while getting client data. This will provide a helpful suggestion with a link to open a prefilled GitHub issue with the error that occurred.
- #1473
1d622c4Thanks @jerelmiller! - Add a search input to the "Queries" and "Mutations" tabs that filters the list of operations.
- #1470
55a48f4Thanks @github-actions! - add error codes for new Apollo Client version
- #1468
6e5bd5dThanks @github-actions! - add error codes for new Apollo Client version
- #1466
8fefdf9Thanks @github-actions! - add error codes for new Apollo Client version
-
#1461
36cd3bbThanks @jerelmiller! - Create a universal message bridge to handle both actor and rpc messages. -
#1460
4a58340Thanks @jerelmiller! - Remove unneeded initialization message to determine if page had a client instance. -
#1460
4a58340Thanks @jerelmiller! - Fix issue when disconnecting from the client that would show stale data until reconnected.
-
#1456
d49777fThanks @github-actions! - add error codes for new Apollo Client version -
#1458
7bebb72Thanks @jerelmiller! - Fix serialization of functions in context
- #1454
837779aThanks @jerelmiller! - Fix an issue where data would sometimes disappear a few seconds after refreshing the page with no way to recover the data afterward.
-
#1418
ce416bdThanks @jerelmiller! - Add support for inspecting multiple clients. When multiple clients connect to devtools, you can select which to inspect. When combined with Apollo Client 3.11, you can provide a custom name using the newdevtoolsoption.new ApolloClient({ devtools: { enabled: true, name: "My Custom Client", }, });
- #1447
c223f14Thanks @github-actions! - add error codes for new Apollo Client version
- #1444
e1214ffThanks @github-actions! - add error codes for new Apollo Client version
- #1429
267ab0dThanks @jerelmiller! - Show the loading status and any defined errors on queries and mutations both in the sidebar and the main panel.
- #1429
267ab0dThanks @jerelmiller! - Select the first query/mutation if the current query/mutation is no longer active.
- #1441
553866dThanks @github-actions! - add error codes for new Apollo Client version
- #1433
9e76075Thanks @github-actions! - add error codes for new Apollo Client version
- #1430
8fc5f3cThanks @github-actions! - add error codes for new Apollo Client version
- #1426
73e7755Thanks @jerelmiller! - Make creating an issue more prominent in the client not found modal by adding a tertiary "Create an issue" button and adding a sentence linking to an issue in the intro paragraph.
- #1421
7e4c871Thanks @github-actions! - add error codes for new Apollo Client version
- #1415
b2e96fdThanks @github-actions! - add error codes for new Apollo Client version
-
#1409
2b4ffcfThanks @jerelmiller! - Refactor away some redundancy on starting/cancelling the request interval to get client data from the devtools scripts. -
#1409
2b4ffcfThanks @jerelmiller! - Clear the data on screen when the client is no longer connected to the devtools. -
#1413
9157cd2Thanks @jerelmiller! - Fix issue where messages sent via thewindowadapter could be echoed back to the sender.
-
#1394
84a9634Thanks @jerelmiller! - Add forward and back buttons to the cache tab to navigate the history of cache entries you've visited. -
#1395
59a4500Thanks @jerelmiller! - Add an options tab when viewing a query to see the options set for that query.
-
#1407
0e4600fThanks @jerelmiller! - Makewindow.__APOLLO_CLIENT__configurable so it can be redefined. -
#1389
526a5d2Thanks @jerelmiller! - Remove unneeded setup/teardown of message forwarding in the panel and instead only setup the forwarding once. -
#1392
c9764eaThanks @jerelmiller! - Remove some redundant logic for connecting to the client instance from the devtools. -
#1391
6d880ddThanks @jerelmiller! - Use browser.devtools.network to detect page navigation
- #1404
abf38d3Thanks @jerelmiller! - Reintroduce change to automatically reconnect the ports when they disconnect.
-
#1397
11a77fbThanks @jerelmiller! - Revert change to automatically reconnect ports from #1390 -
#1398
bd5c0d0Thanks @jerelmiller! - Revert change that pushes events rather than polls for them. Reverts #1379
- #1379
eacfbefThanks @jerelmiller! - Push data from the client to devtools instead of polling for changes.
-
#1390
3b0f0eaThanks @jerelmiller! - Automatically reconnect the ports when they disconnect. -
#1379
eacfbefThanks @jerelmiller! - Clear the data on screen when the client is no longer connected to the devtools.
-
#1378
02e6fbaThanks @jerelmiller! - Fix intermittent issue where data would not show up in the devtools after refreshing the page while the Apollo devtools panel is open. -
#1375
7267351Thanks @jerelmiller! - UseObject.definePropertyto register legacy clients to avoid the need to search for the client in a loop in initialization.
- #1373
23a8cf6Thanks @jerelmiller! - Show connected Apollo Client version in the devtools. Hovering over the version gives you the release notes for that version, or the pull request information if its a snapshot release.
- #1370
a51a5fbThanks @github-actions! - add error codes for new Apollo Client version
- #1360
e922d83Thanks @jerelmiller! - Revert some changes to the list styles that made the text feel huge
1a2c62aThanks @github-actions[bot]! - add error codes for new Apollo Client version
- #1348
3aba499Thanks @jerelmiller! - Add a new button that makes it easier to report an issue in GitHub from the devtools.
-
#1349
06a0b5aThanks @jerelmiller! - Fix some design issues to match latest design implementation -
#1352
2761ff3Thanks @jerelmiller! - Schedule next request to get client data only after the previous one had finished. -
#1353
7da5963Thanks @jerelmiller! - Reduce bundle size of error codes by creating a lookup of unique error codes.
- #1346
0d851a2Thanks @github-actions! - add error codes for new Apollo Client version
-
#1339
6df9b7dThanks @github-actions! - add error codes for new Apollo Client version -
#1335
62e8bd6Thanks @hehaijin! - Fixed a memory leak issue with devtools
- #1330
4a60d00Thanks @github-actions! - add error codes for new Apollo Client version
- #1321
4a1fd6aThanks @github-actions! - add error codes for new Apollo Client version
- #1303
df0d242Thanks @jerelmiller! - Fix issue where terminating the client by calling.stopwould not disconnect it from devtools making it difficult to track newly created clients.
- #1286
11309f3Thanks @phryneas! - Change transpilation target to create a smaller and more modern DevTools build.
- #1287
052f242Thanks @phryneas! - Move access to thegqlhelper into the background worker to reduce size of injected JavaScript.
- #1281
badb1f9Thanks @phryneas! - Add the ability for devtools to provide full error and log messages without the need to need to callloadDevMessagesorloadErrorMessages.
- #1293
e417490Thanks @github-actions! - add error codes for new Apollo Client version
- #1278
e886145Thanks @jerelmiller! - Fix issue with error serialization when sending an error back through the message passing system. Unfortunately the raw error instance was lost in this process. This fix retains the error message when sending error messages in rpc calls.
- #1256
28140d8Thanks @jerelmiller! - Introduce rpc utilities to communicate between the extension scripts. Migrate the call to get client data into the devtools to use the rpc utilities.
-
#1264
66c05aeThanks @phryneas! - Enable "@typescript-eslint/consistent-type-imports" lint rule -
#1265
df5300fThanks @phryneas! - Use relative-CI to monitor build artefact sizes -
#1268
4c98879Thanks @jerelmiller! - Revert change that removed JSON stringify on the entire set of client data. This is a followup to #1259 which only partially fixed the issue.
-
#1262
122c3eeThanks @phryneas! - prevent bundling Apollo Client in the hooks.js build -
#1259
de55e20Thanks @jerelmiller! - Fix an issue when sending cache data from the browser to the extension. This was particularly problematic when the cache containedURLinstances which are not cloneable via the structured clone algorithm
-
#1245
cb22c6fThanks @jerelmiller! - Don'tJSON.stringifythe Apollo Client instance data before sending it in the message payload when communicating between the various parts of the devtools extension. This was mostly redundant since message passing already relies on the structured clone algorithm. -
#1249
a36f59dThanks @jerelmiller! - Merge the tabRelay script with the tab script by extracting the body of the Promise callback into tab.ts. This behavior was no longer needed.
- #1232
8ce6fefThanks @jerelmiller! - Changes the tab injection mechanism for better compatibility with websites that might have issues with hydration mismatches when using the old injection mechanism.
-
#1226
7c89199Thanks @jerelmiller! - Rework the message passing between all areas of the devtools to provide more stability. In particular, the message passing has changed in the following ways:- All messages now contain a
sourceproperty set toapollo-client-devtools. This avoids potential clashes with events emitted fromwindowthat had nothing to do with the devtools. This also means that apps or other utilities that listen to messages onwindowknow where the message originates. - Strengthen the relationship in the background scripts between the tab and devtools ports.
- Add much better type safety for all messages sent through the various areas of the devtools.
- All messages now contain a
- #1228
41db9beThanks @jerelmiller! - Enable strict tsconfig
- #1225
b63c467Thanks @jerelmiller! - Migrate the chrome extension to manifest v3.
-
#1220
efcd415Thanks @jerelmiller! - Change the devtools behavior to always create a panel regardless of whether an Apollo Client instance can be found. This ensures the panel can at least be reached even if the inter-extension communiation is flaky, or our client detection mechanism is buggy. This should help alleviate the large number of reports that the devtools is simply broken.To provide more helpful feedback during usage, status messages are now displayed to show that the devtools is acively trying to locate the client. When a client instance is not found, a helpful dialog is now shown with troubleshooting steps to try and help resolve the issue.
- #1202
a36a3b7Thanks @jerelmiller! - Remove action-hook-fired event that was triggered with nothing listening. This change meant that the__actionHookForDevToolscallback did nothing. This has now been disabled to avoid adding an extraonBroadcastlistener on the client.
-
#1198
5d75744Thanks @jerelmiller! - Stop broadcasting messages that aren't listened to by the extension.client-foundpanel-openpanel-closed
-
#1197
7e9f4ecThanks @jerelmiller! - Fix font size of code blocks to match new Apollo design system.
- #1194
e3118d1Thanks @jerelmiller! - Use icons from new@apollo/iconspackage.
- #1180
3a5d8ddThanks @jerelmiller! - Update to new Apollo branding and color scheme. Includes layout improvements and reduces some information redundancy.
- #1169
5a36ab4Thanks @alessbell! - Revert change to script injection approach
- #1164
f57d124Thanks @phryneas! - Change the tab script injection mechanism for better compatibility with websites that might see hydration mismatches with the old injection mechanism.
-
#1128
576efe6Thanks @alessbell! - Adds settings modal that displays the current devtools version with a link to the GitHub release page -
#1097
0c3e8ecThanks @alessbell! - Remove unused filesbroadcastQueries.jsandlink.js.
- #1057
4de261cThanks @jerelmiller! - Introduce Tailwind and begin migrating existing CSS.
- #1091
873cf88Thanks @alessbell! - Fixes #817: icon for Apollo Client Devtools is missing in Firefox.
- #1070
8ff6f05Thanks @alessbell! - Removesapollo-link-statesupport, which was deprecated in 2019.
-
#1072
0d16b8eThanks @jerelmiller! - Upgrade@emotion/reactto v11.11.1 to get access to updated TypeScript types -
#1073
bc0cd51Thanks @jerelmiller! - Upgrade to TypeScript v5 -
#1056
ddaec3dThanks @jerelmiller! - Improve searching the cache by filtering the list of cache ids that match the search term and highlight the matched substring. This change removes the matching against the cache values as that was difficult to determine why a match occurred. -
#1085
61540a8Thanks @alessbell! - Fix scrolling bug introduced when making sidebar expandable.
-
#947
41c5fa2Thanks @MrDoomBringer! - Makes the sidebar resizable. -
#1054
ecb25f8Thanks @jerelmiller! - Update color theme of areas that display JSON data such as variables and cache data to match the theme used to display GraphQL queries.
-
#745
d6cb6f4Thanks @renovate! - Bumps graphql dependency to v16 -
#1038
72292caThanks @phryneas! - Make the devtools <> client registration mechanism more robust. Also lays the groundwork for registering multiple Apollo Client instances in the future.
- This release introduces a significant functionality change: GraphiQL and GraphiQL Explorer have been removed and replaced with an embedded version of Apollo Studio's Explorer. This means many of the more advanced features of Apollo Studio's Explorer are now available to run against your application's defined GraphQL endpoint, all from the comfort of a browser devtools panel. This change does not require you to have a Studio account and all existing GraphiQL / GraphiQL Explorer functionality has been replicated. @mayakoneval in #660
- Fix issues caused by auto-prettying graphiql operations, which can lead to the cursor jumping around in the graphiql editor.
@hwillson in #541 - Make sure fragment imports are properly resolved.
@hwillson in #542
- Make sure null and boolean values are rendered properly in the Cache tree.
@alexTayanovsky in #446 - Delay the loading / initialization of Apollo Client on each browser tab until it is really needed.
@hwillson in #479 - Make sure variables are copied to the GraphiQL panel when using the "Run in GraphiQL" button.
@hwillson in #491 - Make sure queries missing document details aren't attempted to be used.
@yrambler2001 in #500
- Update the
@apollo/clientdep to make sure >= 0.7.0 ofts-invariantis used, to pull in a fix that makes surewindow.processremains writable.
@hwillson in #463
- Update the
@apollo/clientdep to make sure >= 0.6.2 ofts-invariantis used, to pull in a fix that makes surewindow.processremains writable.
@hwillson in #460
- Apollo Client Devtools 3.0 is a ground up behind the scenes re-write that is focused on modernizing the codebase, making it easier to maintain and add new features to moving forward. It includes a new UI that aligns more closely with other Apollo tools like Apollo Studio, and numerous integration/performance enhancements to better communicate with Apollo Client. The specific changes in this release are too numerous to list here, and are mostly internal, but for those interested in the details the majority of the changes can be seen in #292.
- Guard against uninitialized client race condition
@jeffhertzler in #329
- Add interval to check for updates; resolves non-updating cache issue
@jcreighton in #321
- Fix for undefined schemas error
@jcreighton in #307
-
Compatability with Apollo Client 3.3+
@jcreighton in #302 -
Fix queries not updating
@jcreighton in #302
-
Check for value before extracting __typename
@jcreighton in #267 -
Fix to disable saving InspectionQuery results in the cache
@jcreighton in #273
- More fixes for sidebar scrolling.
@sagarhani in #225
- Integrate OneGraph's GraphiQL Explorer.
@sgrove in #199 - Make sure devtools can be used when the transport layer is websockets
only.
@kamerontanseli in #163 - Debounce broadcast messages to improve devtools responsiveness and
memory usage.
@thomassuckow in #173 - Gracefully handle a failed version compatibility check.
@mjlyons in #201 - Increase timeout when checking whether to display the devtools panel.
@Gongreg in #203 - Fully reload devtools when a page reload happens, to make sure it is
reconnected to the current Apollo Client instance properly.
@hwillson in #205
- Fixes an issue preventing scrolling from working properly in Chrome 72 and
up.
@scfoxcode in #193
-
Include local fields and types in GraphiQL (#172, #159) @justinanastos in #188
-
Use Apollo Client v2.5 local state 🎉 (#apollographql/apollo-client#4361) @cheapsteak and @hwillson in #166
- Eliminate use of
window.localStorage, removing the need for 3rd party cookies (#118, #142) @justinanastos in #185
- Fix mutations tab crashing devtools (#182) @justinanastos in #184
- Removed https://devtools.apollodata.com/graphql from the content security
policy section of
manifest.json, since it doesn't need to be referenced based on how that endpoint is being used. Removing it helps with Firefox's security review process.
@hwillson in #156 - Fix to address issues caused by internal initial state not being set
properly, due to trying to access the Apollo Client
queryManagerwhen it hasn't finished initializing.
@adampetrie in #139 - Fix outdated client message
@jonas-arkulpa in #157 - Prepare to publish to npm (add README for npm and add version to package.json) (#160)
@cheapsteak in #167 - Adding code necessary for React Native support (#160)
@Gongreg in #165 - Publish built extension (dist/) (#169)
@cheapsteak in #170 - Make prettier more developer-friendly
@justinanastos in #178 - Add sourcemaps to build
@justinanastos in #179 - Fix empty cache crashing cache inspector (#107)
@justinanastos in #177 - Fix GraphiQL Documentation Explorer crashing with client schema extensions (#107)
@justinanastos in #180
- Fixes a query name parsing issue that lead to a blank page showing when
viewing the queries panel.
@hwillson in #149
- Removed all Google Analytics tracking.
@hwillson in #143 - Change cursor in dark theme to white
@islam3zzat in #131 - Fix issue where "Run in GraphiQL" does not include fragments
@henryqdineen in #133
- fixed styling of mutation list
- Allow to use
query.metadata.component.displayName(#126) - Fixed mutation run in GraphiQL button (#127)
- Fixed bug where query.queryString did not exist (#125)
- Update vendor GraphiQL styles & fix autocomplete styling (#123)
- rebuilt with new architecture
- initial local schema support (when using cache)
- initial subscription support
- improved dark theme
- We didn't keep a changelog :-(