Skip to content
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

Persisted Query Link: improve memory management #11369

Merged
merged 20 commits into from
Dec 14, 2023

Conversation

phryneas
Copy link
Member

@phryneas phryneas commented Nov 17, 2023

This PR is ready for review & merging :)

Checklist:

  • If this PR contains changes to the library itself (not necessary for e.g. docs updates), please include a changeset (see CONTRIBUTING.md)
  • If this PR is a new feature, please reference an issue where a consensus about the design was reached (not necessary for small changes)
  • Make sure all of the significant new logic is covered by tests

@phryneas phryneas added this to the MemoryAnalysis milestone Nov 17, 2023
Copy link

changeset-bot bot commented Nov 17, 2023

🦋 Changeset detected

Latest commit: 6d2ec4e

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@apollo/client Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

Copy link
Contributor

github-actions bot commented Nov 17, 2023

size-limit report 📦

Path Size
dist/apollo-client.min.cjs 37.63 KB (0%)
import { ApolloClient, InMemoryCache, HttpLink } from "dist/main.cjs" 44.2 KB (0%)
import { ApolloClient, InMemoryCache, HttpLink } from "dist/main.cjs" (production) 42.67 KB (0%)
import { ApolloClient, InMemoryCache, HttpLink } from "dist/index.js" 32.86 KB (0%)
import { ApolloClient, InMemoryCache, HttpLink } from "dist/index.js" (production) 31.55 KB (0%)
import { ApolloProvider } from "dist/react/index.js" 1.24 KB (0%)
import { ApolloProvider } from "dist/react/index.js" (production) 1.22 KB (0%)
import { useQuery } from "dist/react/index.js" 4.33 KB (0%)
import { useQuery } from "dist/react/index.js" (production) 4.15 KB (0%)
import { useLazyQuery } from "dist/react/index.js" 4.64 KB (0%)
import { useLazyQuery } from "dist/react/index.js" (production) 4.45 KB (0%)
import { useMutation } from "dist/react/index.js" 2.61 KB (0%)
import { useMutation } from "dist/react/index.js" (production) 2.59 KB (0%)
import { useSubscription } from "dist/react/index.js" 2.29 KB (0%)
import { useSubscription } from "dist/react/index.js" (production) 2.25 KB (0%)
import { useSuspenseQuery } from "dist/react/index.js" 4.29 KB (0%)
import { useSuspenseQuery } from "dist/react/index.js" (production) 3.7 KB (0%)
import { useBackgroundQuery } from "dist/react/index.js" 3.87 KB (0%)
import { useBackgroundQuery } from "dist/react/index.js" (production) 3.29 KB (0%)
import { useLoadableQuery } from "dist/react/index.js" 4.11 KB (0%)
import { useLoadableQuery } from "dist/react/index.js" (production) 3.52 KB (0%)
import { useReadQuery } from "dist/react/index.js" 3.01 KB (0%)
import { useReadQuery } from "dist/react/index.js" (production) 2.95 KB (0%)
import { useFragment } from "dist/react/index.js" 2.11 KB (0%)
import { useFragment } from "dist/react/index.js" (production) 2.06 KB (0%)

@plausible-phry
Copy link

I have a feeling that .toBeGarbageCollected works locally, but gets flimsy in CI - I'll take another look at that tomorrow.

Base automatically changed from pr/print-weakCache to release-3.9 November 29, 2023 10:46
@@ -12,7 +13,12 @@ import { createHttpLink } from "../../http/createHttpLink";
import { graphql } from "../../../react/hoc/graphql";
import { getDataFromTree } from "../../../react/ssr/getDataFromTree";
import { createPersistedQueryLink as createPersistedQuery, VERSION } from "..";
import { sha256 } from "./persisted-queries.test";
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The tests failed because we had some kind of concurrency problem - by importing from another test file, all the tests from that other file were added to this file, and then failed for reasons I'll never understand.

That's two hours wasted debugging I'll never get back 🤦

@jerelmiller jerelmiller force-pushed the release-3.9 branch 2 times, most recently from c80ba36 to 3f7eecb Compare December 6, 2023 20:55
Copy link
Contributor

@alessbell alessbell left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@github-actions github-actions bot added the auto-cleanup 🤖 label Dec 13, 2023
@phryneas phryneas merged commit 2a47164 into release-3.9 Dec 14, 2023
22 checks passed
@phryneas phryneas deleted the pr/persisted-query-weakCache branch December 14, 2023 12:08
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Jan 14, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants