Skip to content

Conversation

@onurtemizkan
Copy link
Collaborator

@onurtemizkan onurtemizkan commented Jun 23, 2023

Added an integration test application using Remix 1.17.0 and v2 future flags to see the state of current SDK support for v2.

@onurtemizkan onurtemizkan force-pushed the onur/remix_future_flags branch from ed9de1b to 1bf7942 Compare June 23, 2023 14:34
@github-actions
Copy link
Contributor

github-actions bot commented Jun 23, 2023

size-limit report 📦

Path Size
@sentry/browser - ES5 CDN Bundle (gzipped + minified) 21.3 KB (+0.61% 🔺)
@sentry/browser - ES5 CDN Bundle (minified) 66.43 KB (+0.46% 🔺)
@sentry/browser - ES6 CDN Bundle (gzipped + minified) 19.82 KB (+0.59% 🔺)
@sentry/browser - ES6 CDN Bundle (minified) 58.9 KB (+0.53% 🔺)
@sentry/browser - Webpack (gzipped + minified) 21.43 KB (+0.48% 🔺)
@sentry/browser - Webpack (minified) 69.87 KB (+0.51% 🔺)
@sentry/react - Webpack (gzipped + minified) 21.46 KB (+0.45% 🔺)
@sentry/nextjs Client - Webpack (gzipped + minified) 49.39 KB (+0.23% 🔺)
@sentry/browser + @sentry/tracing - ES5 CDN Bundle (gzipped + minified) 28.9 KB (+0.37% 🔺)
@sentry/browser + @sentry/tracing - ES6 CDN Bundle (gzipped + minified) 27.12 KB (+0.35% 🔺)
@sentry/replay ES6 CDN Bundle (gzipped + minified) 49.34 KB (+0.02% 🔺)
@sentry/replay - Webpack (gzipped + minified) 43.11 KB (+0.08% 🔺)
@sentry/browser + @sentry/tracing + @sentry/replay - ES6 CDN Bundle (gzipped + minified) 68.48 KB (+0.19% 🔺)
@sentry/browser + @sentry/replay - ES6 CDN Bundle (gzipped + minified) 61.38 KB (+0.21% 🔺)

@onurtemizkan onurtemizkan force-pushed the onur/remix_future_flags branch from 1bf7942 to b166664 Compare June 26, 2023 09:23
@onurtemizkan onurtemizkan changed the title [WIP] Remix v2 Future Flags Integration Tests Remix v2 Future Flags Integration Tests Jun 26, 2023
@onurtemizkan onurtemizkan changed the title Remix v2 Future Flags Integration Tests test(remix): Add Remix v2 Future Flags Integration Tests Jun 26, 2023
@onurtemizkan onurtemizkan changed the title test(remix): Add Remix v2 Future Flags Integration Tests test(remix): Add Remix v2 future flags integration tests. Jun 26, 2023
@onurtemizkan onurtemizkan force-pushed the onur/remix_future_flags branch from 4e17b57 to 048426f Compare June 26, 2023 10:15
@onurtemizkan onurtemizkan marked this pull request as ready for review June 26, 2023 10:15
@onurtemizkan onurtemizkan mentioned this pull request Jun 26, 2023
@Lms24 Lms24 self-requested a review June 26, 2023 11:01
Copy link
Member

@Lms24 Lms24 left a comment

Choose a reason for hiding this comment

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

Looking good! I like how you managed to keep the core application reusable.

I'm assuming the differences in output (mostly transaction names from what I can see) are because of Remix' weird new routing API?

expect(pageloadEnvelope.type).toBe('transaction');
expect(pageloadEnvelope.transaction).toBe('routes/error-boundary-capture/$id');
expect(pageloadEnvelope.transaction).toBe(
useV2 ? 'routes/error-boundary-capture.$id' : 'routes/error-boundary-capture/$id',
Copy link
Member

Choose a reason for hiding this comment

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

I don't have a lot of context around React/Remix error boundaries so I'm wondering: Why is the transaction name different here? Shouldn't $id always be a route segment? Or is this something that just currently doesn't work with our instrumentation and we need to adapt for v2?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Looks like it's caused by the new route convention. I think we should address this in our transaction name logic for consistency. I'll check if we have access to any information about the final URLs inside our build-time route objects.

Copy link
Member

Choose a reason for hiding this comment

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

Let's keep the dot notation for transaction names if they are using the new route convention.

I'd rather just match the schema that remix uses - this transaction name (with periods) also means it's much easier for users to go in and find the exact file that was generating this route.

Copy link
Member

Choose a reason for hiding this comment

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

good points, Abhi. Then let's keep it.

expect(envelope.type).toBe('transaction');
expect(envelope.transaction).toBe('routes/index');

expect(envelope.transaction).toBe(useV2 ? 'root' : 'routes/index');
Copy link
Member

Choose a reason for hiding this comment

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

Likewise, I'm assuming this is also something our current instrumentation just doesn't cover correctly in v2?

Copy link
Member

@Lms24 Lms24 Jun 26, 2023

Choose a reason for hiding this comment

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

<rant>eww, why these dot delimiters Remix 🥲 </rant>

No action required lol

@AbhiPrasad AbhiPrasad merged commit 0c19446 into develop Jun 26, 2023
@AbhiPrasad AbhiPrasad deleted the onur/remix_future_flags branch June 26, 2023 17:23
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.

4 participants