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

fix(sanity): guard against telemetry not provided from older global CLI versions #5420

Merged
merged 1 commit into from
Dec 21, 2023

Conversation

bjoerge
Copy link
Member

@bjoerge bjoerge commented Dec 21, 2023

Description

We recently added a telemetry instance to the context passed from the global cli to "local" project cli commands. However, if the global CLI is on an older version than the one installed locally in the project folder, the local command implementation will be handed a context from the old version of the global cli which doesn't include telemetry. This again again will cause the CLI to crash. This patch fixes the issue, by falling back to a noop telemetry instance the global CLI doesn't provide it.

What to review

  • A bit tricky to review, but I've verified that it works locally

Notes for release

  • Fix an issue that could occur when using an older version of the CLI globally in combination with a more recent version installed locally

…LI versions

We recently added a `telemetry` instance to the context passed from the global cli to project cli commands. However, if the global CLI is on an older version than the one installed locally, the local command implementation will be provided a context from an old version of the CLI which does not have context, which again will crash the CLI. This patch fixes the issue, by falling back to a noop telemetry instance, if it's not provided.
@bjoerge bjoerge requested a review from a team as a code owner December 21, 2023 15:39
@bjoerge bjoerge requested review from juice49 and removed request for a team December 21, 2023 15:39
Copy link

vercel bot commented Dec 21, 2023

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

Name Status Preview Comments Updated (UTC)
performance-studio ✅ Ready (Inspect) Visit Preview Dec 21, 2023 3:42pm
test-studio ✅ Ready (Inspect) Visit Preview 💬 Add feedback Dec 21, 2023 3:42pm
1 Ignored Deployment
Name Status Preview Comments Updated (UTC)
studio-workshop ⬜️ Ignored (Inspect) Dec 21, 2023 3:42pm

Copy link
Contributor

Package Documentation Change
sanity -3%
Full Report
@sanity/diff
This branch Next branch
13 documented 13 documented
16 not documented 16 not documented
@sanity/block-tools
This branch Next branch
4 documented 4 documented
9 not documented 9 not documented
@sanity/types
This branch Next branch
54 documented 54 documented
235 not documented 235 not documented
sanity/desk
This branch Next branch
86 documented 86 documented
60 not documented 60 not documented
@sanity/portable-text-editor
This branch Next branch
21 documented 21 documented
44 not documented 44 not documented
@sanity/mutator
This branch Next branch
7 documented 7 documented
4 not documented 4 not documented
@sanity/cli
This branch Next branch
1 documented 1 documented
31 not documented 31 not documented
@sanity/schema/_internal
This branch Next branch
0 documented 0 documented
9 not documented 9 not documented
@sanity/util/paths
This branch Next branch
1 documented 1 documented
15 not documented 15 not documented
sanity/router
This branch Next branch
17 documented 17 documented
26 not documented 26 not documented
@sanity/util/legacyDateFormat
This branch Next branch
0 documented 0 documented
3 not documented 3 not documented
@sanity/schema
This branch Next branch
0 documented 0 documented
2 not documented 2 not documented
sanity/cli
This branch Next branch
2 documented 2 documented
0 not documented 0 not documented
@sanity/vision
This branch Next branch
0 documented 0 documented
3 not documented 3 not documented
@sanity/util/fs
This branch Next branch
0 documented 0 documented
3 not documented 3 not documented
sanity/_internal
This branch Next branch
0 documented 0 documented
1 not documented 1 not documented
@sanity/util/content
This branch Next branch
1 documented 1 documented
5 not documented 5 not documented
sanity
This branch Next branch
173 documented 180 documented
841 not documented 849 not documented

Copy link

Updated dependencies detected. Learn more about Socket for GitHub ↗︎

Packages Version New capabilities Transitives Size Publisher
@sanity/telemetry 0.7.3...0.7.5 None +0/-0 109 kB

Copy link
Contributor

Component Testing Report Updated Dec 21, 2023 3:47 PM (UTC)

File Status Duration Passed Skipped Failed
comments/CommentInput.spec.tsx ✅ Passed (Inspect) 32s 15 0 0
formBuilder/ArrayInput.spec.tsx ✅ Passed (Inspect) 6s 3 0 0
formBuilder/inputs/PortableText/Annotations.spec.tsx ✅ Passed (Inspect) 11s 3 0 0
formBuilder/inputs/PortableText/copyPaste/CopyPaste.spec.tsx ✅ Passed (Inspect) 13s 4 2 0
formBuilder/inputs/PortableText/Decorators.spec.tsx ✅ Passed (Inspect) 13s 6 0 0
formBuilder/inputs/PortableText/FocusTracking.spec.tsx ✅ Passed (Inspect) 33s 15 0 0
formBuilder/inputs/PortableText/Input.spec.tsx ✅ Passed (Inspect) 18s 9 0 0
formBuilder/inputs/PortableText/ObjectBlock.spec.tsx ✅ Passed (Inspect) 1m 0s 18 0 0
formBuilder/inputs/PortableText/Styles.spec.tsx ✅ Passed (Inspect) 14s 6 0 0
formBuilder/inputs/PortableText/Toolbar.spec.tsx ✅ Passed (Inspect) 7s 3 0 0

@bjoerge bjoerge added this pull request to the merge queue Dec 21, 2023
Merged via the queue into next with commit 7e435e4 Dec 21, 2023
38 of 40 checks passed
@bjoerge bjoerge deleted the fix/noop-telemetry branch December 21, 2023 15:52
bjoerge added a commit that referenced this pull request Dec 21, 2023
…LI versions (#5420)

We recently added a `telemetry` instance to the context passed from the global cli to project cli commands. However, if the global CLI is on an older version than the one installed locally, the local command implementation will be provided a context from an old version of the CLI which does not have context, which again will crash the CLI. This patch fixes the issue, by falling back to a noop telemetry instance, if it's not provided.
bjoerge added a commit that referenced this pull request Dec 21, 2023
…LI versions (#5420)

We recently added a `telemetry` instance to the context passed from the global cli to project cli commands. However, if the global CLI is on an older version than the one installed locally, the local command implementation will be provided a context from an old version of the CLI which does not have context, which again will crash the CLI. This patch fixes the issue, by falling back to a noop telemetry instance, if it's not provided.
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