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

[Snyk] Upgrade @apollo/client from 3.7.17 to 3.12.7 #1787

Open
wants to merge 1 commit into
base: canary
Choose a base branch
from

Conversation

X-oss-byte
Copy link
Owner

@X-oss-byte X-oss-byte commented Feb 13, 2025

snyk-top-banner

Snyk has created this PR to upgrade @apollo/client from 3.7.17 to 3.12.7.

ℹ️ Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.


  • The recommended version is 101 versions ahead of your current version.

  • The recommended version was released 23 days ago.

Release notes
Package name: @apollo/client
  • 3.12.7 - 2025-01-22

    Patch Changes

    • #12281 d638ec3 Thanks @ jerelmiller! - Make fatal tranport-level errors from multipart subscriptions available to the error link with the protocolErrors property.

      const errorLink = onError(({ protocolErrors }) => {
        if (protocolErrors) {
          console.log(protocolErrors);
        }
      });
    • #12281 d638ec3 Thanks @ jerelmiller! - Fix the array type for the errors field on the ApolloPayloadResult type. This type was always in the shape of the GraphQL error format, per the multipart subscriptions protocol and never a plain string or a JavaScript error object.

  • 3.12.6 - 2025-01-14

    Patch Changes

    • #12267 d57429d Thanks @ jerelmiller! - Maintain the TData type when used with Unmasked when TData is not a masked type generated from GraphQL Codegen.

    • #12270 3601246 Thanks @ jerelmiller! - Fix handling of tagged/branded primitive types when used as scalar values with Unmasked.

  • 3.12.5 - 2025-01-09

    Patch Changes

    • #12252 cb9cd4e Thanks @ jerelmiller! - Changes the default behavior of the MaybeMasked type to preserve types unless otherwise specified. This change makes it easier to upgrade from older versions of the client where types could have unexpectedly changed in the application due to the default of trying to unwrap types into unmasked types. This change also fixes the compilation performance regression experienced when simply upgrading the client since types are now preserved by default.

      A new mode option has now been introduced to allow for the old behavior. See the next section on migrating if you wish to maintain the old default behavior after upgrading to this version.

      Migrating from <= v3.12.4

      If you've adopted data masking and have opted in to using masked types by setting the enabled property to true, you can remove this configuration entirely:

      -declare module "@ apollo/client" {
      -  interface DataMasking {
      -    mode: "unmask"
      -  }
      -}

      If you prefer to specify the behavior explicitly, change the property from enabled: true, to mode: "preserveTypes":

      declare module "@ apollo/client" {
        interface DataMasking {
      -    enabled: true
      +    mode: "preserveTypes"
        }
      }

      If you rely on the default behavior in 3.12.4 or below and would like to continue to use unmasked types by default, set the mode to unmask:

      declare module "@ apollo/client" {
        interface DataMasking {
          mode: "unmask";
        }
      }
  • 3.12.4 - 2024-12-19

    Patch Changes

    • #12236 4334d30 Thanks @ charpeni! - Fix an issue with refetchQueries where comparing DocumentNodes internally by references could lead to an unknown query, even though the DocumentNode was indeed an active query—with a different reference.
  • 3.12.3 - 2024-12-12

    Patch Changes

  • 3.12.2 - 2024-12-05

    Patch Changes

  • 3.12.1 - 2024-12-05

    Patch Changes

  • 3.12.0 - 2024-12-04

    Minor Changes

    Data masking 🎭

    • #12042 1c0ecbf Thanks @ jerelmiller! - Introduces data masking in Apollo Client.

      Data masking enforces that only the fields requested by the query or fragment is available to that component. Data masking is best paired with colocated fragments.

      To enable data masking in Apollo Client, set the dataMasking option to true.

      new ApolloClient({
        dataMasking: true,
        // ... other options
      });

      For detailed information on data masking, including how to incrementally adopt it in an existing applications, see the data masking documentation.

    • #12131 21c3f08 Thanks @ jerelmiller! - Allow null as a valid from value in useFragment.

    More Patch Changes

    • #12126 d10d702 Thanks @ jerelmiller! - Maintain the existing document if its unchanged by the codemod and move to more naive whitespace formatting

    • #12150 9ed1e1e Thanks @ jerelmiller! - Fix issue when using Unmasked with older versions of TypeScript when used with array fields.

    • #12116 8ae6e4e Thanks @ jerelmiller! - Prevent field accessor warnings when using @ unmask(mode: "migrate") on objects that are passed into cache.identify.

    • #12120 6a98e76 Thanks @ jerelmiller! - Provide a codemod that applies @ unmask to all named fragments for all operations and fragments.

      Learn how to use the codemod in the incremental adoption documentation.

    • #12134 cfaf4ef Thanks @ jerelmiller! - Fix issue where data went missing when an unmasked fragment in migrate mode selected fields that the parent did not.

    • #12154 d933def Thanks @ phryneas! - Data masking types: handle overlapping nested array types and fragments on interface types.

    • #12139 5a53e15 Thanks @ phryneas! - Fix issue where masked data would sometimes get returned when the field was part of a child fragment from a fragment unmasked by the parent query.

    • #12123 8422a30 Thanks @ jerelmiller! - Warn when using data masking with "no-cache" operations.

    • #12139 5a53e15 Thanks @ phryneas! - Fix issue where the warning emitted by @ unmask(mode: "migrate") would trigger unnecessarily when the fragment was used alongside a masked fragment inside an inline fragment.

    • #12114 1d4ce00 Thanks @ jerelmiller! - Fix error when combining @ unmask and @ defer directives on a fragment spread when data masking is enabled.

    • #12130 1e7d009 Thanks @ jerelmiller! - Fix error thrown when applying unmask migrate mode warnings on interface types with selection sets that contain inline fragment conditions.

    • #12152 78137ec Thanks @ phryneas! - Add a helper that will skip the TS unmasking alorithm when no fragments are present on type level

    • #12126 d10d702 Thanks @ jerelmiller! - Ensure documents unchanged by the codemod are left untouched.

    • #12133 a6ece37 Thanks @ jerelmiller! - Ensure null is retained in nullable types when unmasking a type with the Unmasked helper type.

    • #12139 5a53e15 Thanks @ phryneas! - Fix issue that threw errors when masking partial data with @ unmask(mode: "migrate").

  • 3.12.0-rc.4 - 2024-11-27

    Patch Changes

    • #12154 d933def Thanks @ phryneas! - Data masking types: handle overlapping nested array types and fragments on interface types.
  • 3.12.0-rc.3 - 2024-11-20

    Patch Changes

    • #12150 9ed1e1e Thanks @ jerelmiller! - Fix issue when using Unmasked with older versions of TypeScript when used with array fields.

    • #12152 78137ec Thanks @ phryneas! - Add a helper that will skip the TS unmasking alorithm when no fragments are present on type level

  • 3.12.0-rc.2 - 2024-11-19
  • 3.12.0-rc.1 - 2024-11-15
  • 3.12.0-rc.0 - 2024-11-13
  • 3.12.0-alpha.0 - 2024-10-01
  • 3.11.11-rc.0 - 2024-11-13
  • 3.11.10 - 2024-11-11
  • 3.11.9 - 2024-11-07
  • 3.11.8 - 2024-09-05
  • 3.11.7 - 2024-09-04
  • 3.11.6 - 2024-09-03
  • 3.11.5 - 2024-08-28
  • 3.11.4 - 2024-08-07
  • 3.11.3 - 2024-08-05
  • 3.11.2 - 2024-07-31
  • 3.11.1 - 2024-07-23
  • 3.11.0 - 2024-07-22
  • 3.11.0-rc.2 - 2024-07-15
  • 3.11.0-rc.1 - 2024-07-10
  • 3.11.0-rc.0 - 2024-07-09
  • 3.10.8 - 2024-06-27
  • 3.10.7 - 2024-06-26
  • 3.10.6 - 2024-06-21
  • 3.10.5 - 2024-06-12
  • 3.10.4 - 2024-05-15
  • 3.10.3 - 2024-05-07
  • 3.10.2 - 2024-05-03
  • 3.10.1 - 2024-04-24
  • 3.10.0 - 2024-04-24
  • 3.10.0-rc.1 - 2024-04-15
  • 3.10.0-rc.0 - 2024-04-02
  • 3.10.0-alpha.1 - 2024-03-18
  • 3.9.11 - 2024-04-10
  • 3.9.10 - 2024-04-01
  • 3.9.9 - 2024-03-22
  • 3.9.8 - 2024-03-20
  • 3.9.7 - 2024-03-13
  • 3.9.6 - 2024-03-06
  • 3.9.5 - 2024-02-15
  • 3.9.4 - 2024-02-07
  • 3.9.3 - 2024-02-06
  • 3.9.2 - 2024-02-01
  • 3.9.1 - 2024-01-31
  • 3.9.0 - 2024-01-30
  • 3.9.0-rc.1 - 2024-01-18
  • 3.9.0-rc.0 - 2024-01-17
  • 3.9.0-beta.1 - 2023-12-21
  • 3.9.0-beta.0 - 2023-12-18
  • 3.9.0-alpha.5 - 2023-12-05
  • 3.9.0-alpha.4 - 2023-11-08
  • 3.9.0-alpha.3 - 2023-11-02
  • 3.9.0-alpha.2 - 2023-10-11
  • 3.9.0-alpha.1 - 2023-09-21
  • 3.9.0-alpha.0 - 2023-09-19
  • 3.8.10 - 2024-01-18
  • 3.8.9 - 2024-01-09
  • 3.8.8 - 2023-11-29
  • 3.8.7 - 2023-11-02
  • 3.8.6 - 2023-10-16
  • 3.8.5 - 2023-10-05
  • 3.8.4 - 2023-09-19
  • 3.8.3 - 2023-09-05
  • 3.8.2 - 2023-09-01
  • 3.8.1 - 2023-08-10
  • 3.8.0 - 2023-08-07
  • 3.8.0-rc.2 - 2023-08-01
  • 3.8.0-rc.1 - 2023-07-17
  • 3.8.0-rc.0 - 2023-07-13
  • 3.8.0-beta.7 - 2023-07-10
  • 3.8.0-beta.6 - 2023-07-05
  • 3.8.0-beta.5 - 2023-06-28
  • 3.8.0-beta.4 - 2023-06-20
  • 3.8.0-beta.3 - 2023-06-15
  • 3.8.0-beta.2 - 2023-06-07
  • 3.8.0-beta.1 - 2023-05-31
  • 3.8.0-beta.0 - 2023-05-26
  • 3.8.0-alpha.15 - 2023-05-17
  • 3.8.0-alpha.14 - 2023-05-16
  • 3.8.0-alpha.13 - 2023-05-03
  • 3.8.0-alpha.12 - 2023-04-13
  • 3.8.0-alpha.11 - 2023-03-28
  • 3.8.0-alpha.10 - 2023-03-17
  • 3.8.0-alpha.9 - 2023-03-15
  • 3.8.0-alpha.8 - 2023-03-02
  • 3.8.0-alpha.7 - 2023-02-15
  • 3.8.0-alpha.6 - 2023-02-07
  • 3.8.0-alpha.5 - 2023-01-19
  • 3.8.0-alpha.4 - 2023-01-13
  • 3.8.0-alpha.3 - 2023-01-03
  • 3.8.0-alpha.2 - 2022-12-21
  • 3.8.0-alpha.1 - 2022-12-21
  • 3.8.0-alpha.0 - 2022-12-09
  • 3.7.17 - 2023-07-05
from @apollo/client GitHub release notes

Important

  • Check the changes in this PR to ensure they won't cause issues with your project.
  • This PR was automatically created by Snyk using the credentials of a real user.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.

For more information:

Summary by Sourcery

Chores:

  • Upgrade @apollo/client from 3.7.17 to 3.12.7

Snyk has created this PR to upgrade @apollo/client from 3.7.17 to 3.12.7.

See this package in npm:
@apollo/client

See this project in Snyk:
https://app.snyk.io/org/sammytezzy/project/7d3fe4c1-0ac4-4437-b919-3a5377398eb8?utm_source=github&utm_medium=referral&page=upgrade-pr
Copy link

vercel bot commented Feb 13, 2025

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
next-js-next-plugin-storybook ❌ Failed (Inspect) Feb 13, 2025 6:14pm
next-js-next-plugin-storybook-g5dx ❌ Failed (Inspect) Feb 13, 2025 6:14pm
next-js-next-plugin-storybook-y5ka ❌ Failed (Inspect) Feb 13, 2025 6:14pm
next-x-storybook ❌ Failed (Inspect) Feb 13, 2025 6:14pm

Copy link

vercel bot commented Feb 13, 2025

Deployment failed with the following error:

Could not parse File as JSON: vercel.json

Copy link

stackblitz bot commented Feb 13, 2025

Review PR in StackBlitz Codeflow Run & review this pull request in StackBlitz Codeflow.

Copy link

changeset-bot bot commented Feb 13, 2025

⚠️ No Changeset found

Latest commit: a64b6ca

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

Click here to learn what changesets are, and how to add one.

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

Copy link

sourcery-ai bot commented Feb 13, 2025

Reviewer's Guide by Sourcery

This pull request upgrades the @apollo/client package from version 3.7.17 to 3.12.7. The update is performed by modifying the version number in the package.json file.

Updated class diagram for ApolloClient with data masking

classDiagram
  class ApolloClient {
    +dataMasking: boolean
    +constructor(config: ApolloClientConfig)
  }
  class ApolloClientConfig {
    +dataMasking: boolean
    +...otherOptions
  }
  note for ApolloClient "Introduces data masking in Apollo Client.
  To enable data masking in Apollo Client, set the dataMasking option to true."
Loading

File-Level Changes

Change Details Files
The pull request upgrades the @apollo/client package from version 3.7.17 to 3.12.7.
  • Updated the @apollo/client dependency version in package.json.
examples/with-apollo/package.json

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!
  • Generate a plan of action for an issue: Comment @sourcery-ai plan on
    an issue to generate a plan of action for it.

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

Copy link

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

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

We have skipped reviewing this pull request. Here's why:

  • It seems to have been created by a bot ('[Snyk]' found in title). We assume it knows what it's doing!
  • We don't review packaging changes - Let us know if you'd like us to change this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants