Skip to content

chore(skill): Add skill to summarize framework updates#21361

Open
s1gr1d wants to merge 7 commits into
developfrom
sig/skill-track-framework-updates
Open

chore(skill): Add skill to summarize framework updates#21361
s1gr1d wants to merge 7 commits into
developfrom
sig/skill-track-framework-updates

Conversation

@s1gr1d

@s1gr1d s1gr1d commented Jun 8, 2026

Copy link
Copy Markdown
Member

Adds a skill to summarize relevant framework updates from the last 7 days.

It looks at releases, RSS feeds, blogs and GitHub discussions. The skill includes some scripts that take care of data fetching (the deterministic parts). The collected data is then brought to the skill, which handles checking for relevance (the non-deterministic parts).

Folder structure

- `.agents/skills/track-framework-updates/`
  - `SKILL.md`               # skill entrypoint
  - `sources.json`           # the link list: framework -> @sentry/* package + source URLs
  - `scripts/`
    - `_common.py`           # shared helpers (date window, sources loader, gh REST/GraphQL)
    - `fetch_releases.py`    # GitHub releases in the window (gh api REST)
    - `fetch_discussions.py` # recent Discussions (GraphQL) + RFC-repo PRs
    - `fetch_rss.py`         # blog/changelog RSS items
    - `collect_updates.py`   # orchestrator: runs all fetchers, merges, writes raw JSON
  - `assets/`
    - `digest-template.md`   # Markdown layout Claude fills for the human-readable digest

Mermaid Flowchart

flowchart LR
 sources["sources.json"] --> collect["collect_updates.py"]
 collect --> releases["fetch_releases.py\n(gh api REST)"]
 collect --> discussions["fetch_discussions.py\n(gh api GraphQL)"]
 collect --> rss["fetch_rss.py\n(stdlib RSS/Atom)"]
 releases --> raw["framework-updates-raw.json"]
 discussions --> raw
 rss --> raw
 raw --> claude["Claude\n(assess relevance)"]
 claude --> json["digest.json"]
 claude --> md["digest.md"]
Loading

Example Summary (v1)

Framework Updates Digest — week of 2026-06-08

Window: last 7 days · generated 2026-06-08T09:36:33Z

Upstream activity for the frameworks the Sentry JS SDK instruments. Releases are
assessed for impact on our @sentry/* packages; discussions/RFCs/blog posts are
linked, not summarized.

TL;DR

  • Angular 22.0.0 (major) shipped, bundling TypeScript 6 — verify @sentry/angular support matrix.
  • SvelteKit 3.0.0-next.0 prereleases landed: $app/env module rename, adapters moving to rolldown, TS 6 minimum, query.live now over SSE.
  • Nuxt shipped security hotfix releases on both lines (4.4.7 and 3.21.7).
  • Next.js 16.3 canaries deprecate undocumented custom server methods and add staged App Shell rendering + adapter cacheHandler tracing.
  • React Router discussions reference CVE-2026-42342 and a proposed public route/config loading API relevant to routing instrumentation.
  • TanStack Start has an open discussion on the state of OpenTelemetry auto-instrumentation — directly relevant to our tracing.

Backlog candidates

  • [@sentry/angular] Angular 22.0.0 is out (major, bundles TypeScript 6) → verify peerDependency ranges, the E2E/test matrix, and that Router + ErrorHandler instrumentation still works on v22. (v22 release, announcement)
  • [@sentry/sveltekit] SvelteKit 3.0.0-next prereleases introduce breaking changes — $app/env module rename (with $app/environment reinstated as an alias), adapters migrating rollup→rolldown, TS 6 minimum, and query.live moving to SSE → assess SDK compatibility early since the major is forming now. (kit 3.0.0-next.0, next.1, adapter-node 6)
  • [@sentry/nuxt] Nuxt published security hotfix releases on both maintained lines (4.4.7, 3.21.7) → review advisories, confirm @sentry/nuxt compatibility, bump the E2E matrix. A user already reports a Cloudflare deploy regression after 4.4.7. (v4.4.7, v3.21.7, advisories)
  • [@sentry/nextjs] Next.js 16.3 canaries deprecate undocumented custom server methods, add staged App Shell rendering in cached navs/builds, and trace cacheHandler(s) when using adapters → verify our server wrapping doesn't rely on the deprecated methods and check whether staged App Shell rendering shifts pageload/navigation span boundaries. (canary.40, canary.41, canary.44)
  • [@sentry/react-router · @sentry/remix] A react-router discussion references CVE-2026-42342 → investigate whether it affects versions we support. Separately, the "Public route/config loading API for routing-aware tooling" proposal could give our routing instrumentation a stable API to read route config — worth tracking/engaging. (CVE thread, route/config API proposal)
  • [@sentry/tanstackstart-react] Open TanStack Start discussion "State of OpenTelemetry auto instrumentation" is directly relevant to how we trace TanStack Start → follow and possibly engage to align with our instrumentation. (discussion)
  • [@sentry/nestjs] (low confidence) NestJS 11.1.25 includes "fix(core): register SSE close listener before async setup" → investigate whether it interacts with our Nest SSE/request span handling. (v11.1.25)

Client-Side

Angular (@sentry/angular)

Releases

  • v22.0.0 — major release; bundles TypeScript 6. Verify SDK support matrix and instrumentation.
  • v22.0.0-rc.3 — final RC before v22; no separate SDK impact.
  • v21.2.16 — patch (common/compiler); no SDK impact expected.
  • v20.3.24 — patch (platform-server); no SDK impact expected.
  • v19.2.25 — patch (platform-server); no SDK impact expected.

Interesting links

React (@sentry/react)

Releases

  • v19.2.7 / v19.1.8 / v19.0.7 — patch backports fixing missing FormData entries in Server Actions; no SDK impact expected.

Vue (@sentry/vue)

Releases

  • v3.6.0-beta.14 — pre-release of upcoming 3.6 minor; watch, no action yet.

Svelte (@sentry/svelte)

Releases

  • svelte@5.56.3 — "ignore errors that occur in destroyed effects" (internal error handling); low SDK impact, noted for error-capture edge cases.
  • svelte@5.56.2 / 5.56.1 — patch fixes; no SDK impact expected.

Interesting links

Ember (@sentry/ember)

Interesting links

Server-Side

Hono (@sentry/hono)

Interesting links

Nitro (@sentry/nitro)

Releases

  • v3.0.260603-beta — Nitro 3 beta: custom framework preview/deploy commands and defaultPreset. Preset/runtime changes can affect @sentry/nuxt + @sentry/nitro server setup; keep tracking the v3 beta line.

NestJS (@sentry/nestjs)

Releases

  • v11.1.25 — SSE close-listener ordering, microservices Redis close handling, fastify path slash. Low-confidence interaction with our SSE/request instrumentation — worth a quick check (see backlog).

Effect (@sentry/effect)

Releases

  • effect@3.21.3 — core patch; no SDK impact expected.
  • @effect/ai@0.36.0 — minor on the AI packages (plus provider bumps). Relevant only if we extend AI instrumentation to Effect's AI layer later; no action now.

Meta-Framework

Next.js (@sentry/nextjs)

Releases

  • v16.3.0-canary.44 — client hook prerender abort reasons + Turbopack eviction; watch prerender/abort handling vs our spans.
  • v16.3.0-canary.41 — staged App Shell rendering in cached navs/builds; may shift pageload/navigation span boundaries.
  • v16.3.0-canary.40 — deprecates undocumented custom server methods; traces cacheHandler(s) with adapters — verify our server wrapping is unaffected.
  • v16.2.7 / v15.5.19 — stable backports (docs + FormData fix); no SDK impact expected.

Interesting links

Nuxt (@sentry/nuxt)

Releases

  • v4.4.7security hotfix; review advisories and SDK compatibility.
  • v3.21.7security hotfix on the 3.x line; review advisories and SDK compatibility.

Interesting links

SvelteKit (@sentry/sveltekit)

Releases

Interesting links

React Router / Remix (@sentry/react-router · @sentry/remix)

Releases

  • react-router@7.17.0 — minor release; review changelog for routing/loader changes affecting instrumentation.

Interesting links

Astro (@sentry/astro)

Releases

  • astro@6.4.4 — patch; no SDK impact expected.
  • @astrojs/node@10.1.3 — static file handler clean-URL fix; low SDK impact. (Plus several adapter/integration patch bumps.)

TanStack Start (@sentry/tanstackstart · @sentry/tanstackstart-react)

Releases

  • High-frequency patch/dependency churn across the Start packages this week (e.g. @tanstack/start-client-core@1.170.12); no single breaking change spotted — no SDK impact expected.

Interesting links


No notable upstream activity this week for: Solid, SolidStart, Gatsby, Elysia.

Example Summary (v2)

Framework Updates Digest — week of 2026-06-08

Window: last 7 days · generated 2026-06-08T11:30:00Z

TL;DR

  • Angular 22.0.0 released with new primitives (injectAsync, signal debouncing, SSR resource caching, ChangeDetectionStrategy.Eager)
  • SvelteKit 3.0.0-next.0 published with many breaking changes (Vite 8, Node 22+, removed polyfills, new cookie defaults)
  • Next.js canaries introduce App Shells staged rendering and enable Node streams by default
  • TanStack Start deprecates inputValidator() in favor of new validator() API for server functions/middleware
  • Nuxt 4.4.7 / 3.21.7 security hotfix changes route rule matching to case-insensitive

Backlog candidates

  • [@sentry/angular] Angular 22 introduces injectAsync, provideWebMcpTools, ChangeDetectionStrategy.Eager, signal debouncing, and SSR resource caching → Investigate whether these new APIs need instrumentation or affect existing hooks. (v22.0.0)
  • [@sentry/sveltekit] SvelteKit 3.0.0-next.0 removes @sveltejs/kit/node/polyfills, requires Vite 8/Node 22+, removes deprecated CSRF checkOrigin, changes cookie path default → Start planning @sentry/sveltekit migration for v3 compatibility. (@sveltejs/kit@3.0.0-next.0)
  • [@sentry/nextjs] Next.js canaries introduce App Shells (staged rendering) and enable Node streams by default → Investigate impact on SDK streaming/SSR instrumentation. (canary.40, canary.38)
  • [@sentry/nextjs] Next.js canary.40 deprecates undocumented custom server methods → Verify SDK doesn't rely on any of them. (canary.40)
  • [@sentry/tanstackstart] TanStack Start deprecates inputValidator() for validator() in server functions and middleware → Check if SDK wraps or references this API. (#7566)
  • [@sentry/sveltekit] SvelteKit 2.62.0 catches load function streaming errors on the client → Verify SDK error capture integrates with the new error path. (@sveltejs/kit@2.62.0)
  • [@sentry/nuxt] Nuxt 4.4.7/3.21.7 changed route rule matching to case-insensitive (mirroring vue-router) → Verify SDK route parameterization handles this correctly. (v4.4.7)

Client-Side

Angular (@sentry/angular)

Releases

  • v22.0.0Major release. New injectAsync, provideWebMcpTools, ChangeDetectionStrategy.Eager, signal debouncing, SSR resource caching. Many new instrumentation-relevant primitives.
  • v21.2.16 — Security hardening in platform-server; no SDK impact expected.
  • v20.3.24 — Security hardening in platform-server; no SDK impact expected.
  • v19.2.25 — Security hardening in platform-server; no SDK impact expected.

Interesting links

React (@sentry/react)

Releases

  • v19.2.7 — Fix missing FormData entries in Server Actions (regression); no SDK impact expected.
  • v19.1.8 — Same FormData fix backported to 19.1.
  • v19.0.7 — Same FormData fix backported to 19.0.

Vue (@sentry/vue)

Releases

  • v3.6.0-beta.14 — Prerelease; no changelog details. Vue 3.6 beta continues development.

Svelte (@sentry/svelte)

Releases

  • svelte@5.56.3 — Ignore errors in destroyed effects; no SDK impact expected.
  • svelte@5.56.2 — Fixes for async effect end node tracking and async derived rejection. Touches async rendering internals.
  • svelte@5.56.1 — Declaration tag parsing fixes; no SDK impact expected.

Interesting links

Server-Side

Hono (@sentry/hono)

Releases

  • v4.12.24 — Bug fixes (bearer-auth, ipaddr, config cleanup); no SDK impact expected.

Nitro (@sentry/nitro)

Releases

  • v3.0.260603-beta — Custom framework preview/deploy commands, defaultPreset config option. Build/deploy surface extensions.

NestJS (@sentry/nestjs)

Releases

  • v11.1.25 — Redis request rejection on close, SSE listener fix, Fastify pathname fix; no SDK impact expected.

Effect (@sentry/effect)

Releases

  • effect@3.21.3 — Type inference fix for $match, schema refinement; no SDK impact expected.
  • @effect/ai@0.36.0 — Support Tool.EmptyParams; no SDK impact expected.

Meta-Framework

Next.js (@sentry/nextjs)

Releases

  • v16.2.7 — Stable backport: middleware rewrite loop fix, "type: module" standalone fix, FormData fix, hydration fix.
  • v15.5.19 — Stable backport: FormData fix only.
  • v16.3.0-canary.40Deprecates custom server methods. App Shells in runtime prefetches. High-signal canary.
  • v16.3.0-canary.38Enables Node streams by default. Changes SSR streaming behavior.
  • v16.3.0-canary.37await instrumentation in RouteModule.prepare — directly relevant to instrumentation hooks.

Nuxt (@sentry/nuxt)

Releases

  • v4.4.7Security hotfix. Route rules now match case-insensitively. Navigation guards hardened (navigateTo, reloadNuxtApp, NuxtLink). getCachedData re-run after initial fetch.
  • v3.21.7 — Same security hotfix backported to 3.x.

SvelteKit (@sentry/sveltekit)

Releases

React Router / Remix (@sentry/react-router, @sentry/remix)

Releases

Interesting links

Astro (@sentry/astro)

Releases

  • astro@6.4.4 — Bug fixes: routePattern casing, i18n routing, invalid percent-sequences; no SDK impact expected.
  • astro@6.4.3 — Fix advancedRouting + astro/hono handler for unmatched routes.

TanStack Start (@sentry/tanstackstart, @sentry/tanstackstart-react)

Releases

Interesting links

Example Summary (v2 with more RSS feeds)

Framework Updates Digest — week of Jun 3, 2026

Window: last 7 days · generated 2026-06-10T15:10+02:00

TL;DR

  • Astro 7.0.0-beta.3 — Advanced routing enabled by default (src/fetch.ts replaces src/app.ts), getFetchState() now public, streaming rendering replaces queued rendering — @sentry/astro needs compatibility review.
  • SvelteKit 3.0.0-next.0delta property removed from non-popstate navigation events (SDK hooks into this); Cloudflare adapter removes platform.contextplatform.ctx — both are breaking for @sentry/sveltekit on SK3.
  • Angular v22 announced — major release, @sentry/angular needs compatibility audit.
  • Next.js canarycatchError/retry stabilised (dropping unstable_ prefix), export const prefetch stable, new cacheHandler tracing hooks that could overlap with SDK instrumentation.
  • Ember RFC "Router Helpers" advancing to Ready for Release — verify no router API changes affect @sentry/ember.
  • Hono v4.12.25 security release — fixes Lambda@Edge header-dropping and AWS Lambda Set-Cookie merging; trace-context header extraction in those adapters now behaves correctly.
  • TanStack Start — community discussion "State of OpenTelemetry auto instrumentation" signals user demand for first-party OTel support.

Backlog candidates

  • [@sentry/astro] Astro 7.0.0-beta.3 enables advanced routing by default, changing the server entrypoint to src/fetch.ts and exposing getFetchState() for Hono middleware → investigate whether server-side request isolation and trace propagation need updating for the new routing architecture. (release)
  • [@sentry/astro] Astro 7 replaces queued rendering with a streaming pipeline (components flushed as encountered, no content cache) → verify error capture and trace propagation work correctly with the new flush order. (release)
  • [@sentry/sveltekit] SvelteKit 3 removes delta from all navigation events except popstate → audit navigation instrumentation and add a guard before reading event.delta. (release)
  • [@sentry/sveltekit] SvelteKit Cloudflare adapter 8 removes platform.context in favour of platform.ctx → audit and update any Cloudflare request isolation code that reads platform.context. (release)
  • [@sentry/angular] Angular v22 released June 3 → audit v22 changelog for router, zone.js, or lifecycle-hook changes that could break @sentry/angular transaction creation or error capture. (blog)
  • [@sentry/nextjs] Next.js canary introduces tracing of cacheHandler and cacheHandlers when using adapters — framework-level cache telemetry → investigate integration or deduplication with SDK-generated cache spans. (canary.40)
  • [@sentry/nextjs] catchError and retry are being stabilised (removing unstable_ prefix) as public error-handling APIs → evaluate whether SDK should instrument these for error capture. (canary.47)
  • [@sentry/hono] Hono v4.12.25 fixes Lambda@Edge repeated request headers being dropped (only last value survived previously) → verify SDK trace-context header extraction now works correctly in Lambda@Edge. (release)
  • [@sentry/tanstackstart] Community discussion "State of OpenTelemetry auto instrumentation" signals user demand for first-party OTel support → review whether @sentry/tanstackstart should expose OTel-compatible hooks. (discussion)
  • [@sentry/ember] RFC Ability to specify the loglevel for console plugin #391 "Router Helpers" advancing to Ready for Release → review for any router API changes that would affect @sentry/ember route transaction instrumentation. (RFC)

Client-Side

Angular (@sentry/angular)

Releases

  • vsix-22.0.0 — VSCode language-service extension only (bundles TypeScript 6.0, template inlay hints). No Angular framework changes; no SDK impact expected.

Interesting links

Ember (@sentry/ember)

No releases this week.

Interesting links

Svelte (@sentry/svelte)

Releases

  • svelte@5.56.3 — Ignore errors in destroyed effects, type BigInt in $state.snapshot. Internal fixes only; no SDK impact expected.
  • svelte@5.56.2 — Track effect end node for async sibling component, reject pending async deriveds on discard. Internal compiler/runtime fixes; no SDK impact expected.

Interesting links

Vue (@sentry/vue)

Releases

  • v3.6.0-beta.14 — Pre-release; no inline changelog. Monitor the minor branch CHANGELOG for router, compiler, or lifecycle changes relevant to @sentry/vue, especially Vapor mode.

Interesting links

Server-Side

Effect (@sentry/effect)

Releases

Interesting links

Hono (@sentry/hono)

Releases

  • v4.12.25 — Security release:
    • medium: Lambda@Edge adapter previously overwrote repeated request headers (e.g. X-Forwarded-For) — only the last value reached the app. SDK trace-context extraction was silently broken; this fix corrects it.
    • medium: AWS Lambda adapter previously joined multiple Set-Cookie response headers into one comma-separated value — response header shape now correct.
    • low: CORS wildcard credential reflection fix, body-limit bypass fix (AWS Lambda), serve-static path traversal fix (Windows).
  • v4.12.24 — Refactoring and minor bug fixes; no SDK impact expected.

NestJS (@sentry/nestjs)

Releases

  • v11.1.26 — Fix SSE endpoint empty response. No SDK impact expected.
  • v11.1.25platform-fastify removes trailing pathname slash (changes route matching; SDK route span names in Fastify adapter may differ); SSE close listener ordering fix.

Nitro (@sentry/nitro)

Releases

  • v3.0.260603-beta — New defaultPreset config option to customise the fallback deployment preset. Could represent an unrecognised deployment target; monitor for new adapters.

Meta-Framework

Astro (@sentry/astro)

Releases

  • astro@7.0.0-beta.3 — Major pre-release:
    • high: Advanced routing enabled by default — src/fetch.ts replaces src/app.ts as the server entrypoint; request flow through SDK middleware hooks changes.
    • high: getFetchState() exposed from astro/hono as public API for Hono middleware to access per-request state — new instrumentation surface.
    • high: Removes state.provide(), state.resolve(), state.finalizeAll(), and App.Providers from the public advanced routing API.
    • high: Streaming rendering stabilised — components flushed as encountered, no content cache, no queue; changes rendering pipeline timing for error capture.
    • medium: Custom logger feature stabilised; context.logger always available in API routes.
  • astro@7.0.0-alpha.2 — Removes deprecated astro:transitions lifecycle event constants and helpers (TRANSITION_BEFORE_PREPARATION, isTransitionBeforePreparationEvent, createAnimationScope, etc.) — SDK navigation tracing relying on these events must migrate to string event names.
  • astro@6.4.5 — Fixes Astro.request.url not reflecting X-Forwarded-Proto/X-Forwarded-Host — corrects the request object the SDK reads for URL-based span attributes.
  • astro@6.4.4 — i18n, Astro.routePattern casing, dynamic route fixes. No SDK API surface changes.
  • @astrojs/cloudflare@13.7.0, @astrojs/mdx@6.0.x, @astrojs/markdown-satteri@0.x — No SDK impact expected.

Next.js (@sentry/nextjs)

Releases

  • v16.2.9 / v16.2.8 — dist-tag fixes; no code changes.
  • v16.3.0-canary.47:
    • high: Rename prefetch option force-runtimeallow-runtime.
    • high: Stabilise export const prefetch as a public routing API.
    • high: Stabilise catchError and retry (drop unstable_ prefix) — new public error-handling APIs.
    • medium: Remove unstable_instant agent hints; stabilise unstable_instant.
  • v16.3.0-canary.46:
    • medium: Remove experimental.useNodeStreams flag (streaming now always on).
  • v16.3.0-canary.45:
    • high: Add global config to enable Partial Prefetching.
    • medium: Partial Prefetching defaults to App Shell only.
  • v16.3.0-canary.40:
    • high: Trace cacheHandler and cacheHandlers when using adapters — framework telemetry for the data cache.
    • high: Deprecate undocumented custom server methods.

Interesting links

Nuxt (@sentry/nuxt)

Releases

  • v4.4.8 / v3.21.8 — Hotfix for macOS Vite socket name, kit findPath type fix. No SDK impact expected.

Interesting links

React Router / Remix (@sentry/react-router, @sentry/remix)

Releases

Interesting links

SvelteKit (@sentry/sveltekit)

Releases

  • @sveltejs/kit@3.0.0-next.0 — Major pre-release:
    • high: Removes delta from all navigation events except popstate — SDK navigation span creation will break if it reads event.delta.
    • high: Requires @sveltejs/vite-plugin-svelte v7 and Vite 8 — build plugin major bumps.
    • medium: Upgrade to cookie v1 (ASCII-only names), remove @sveltejs/kit/node/polyfills, remove deprecated CSRF checkOrigin, deprecate Response helpers.
  • @sveltejs/adapter-cloudflare@8.0.0-next.0:
    • high: Removes platform.context in favour of platform.ctx — breaks any SDK code that reads platform.context for Cloudflare request isolation.
    • medium: Upgrade to @cloudflare/workers-types 4.20260219.0, minimum wrangler ^4.67.0.
  • @sveltejs/adapter-vercel@7.0.0-next.0:
    • medium: Edge function bundling switches to rolldown, target es2022 — may affect SDK edge bundle compatibility.
  • @sveltejs/kit@2.64.0 — feat: allow commands to receive File objects; fix: server components not bundled when SSR is off per route.
  • @sveltejs/kit@2.63.0 — feat: explicit env vars ($app/env module).

Interesting links

  • Config-based routing mode — proposal for declarative routing mode, could change how the SDK creates route transactions.
  • Remote Functions — server RPC feature now in stable; monitor for SDK instrumentation opportunity.

TanStack Start (@sentry/tanstackstart, @sentry/tanstackstart-react)

Releases

  • release-2026-06-06-2144 — Adds validator() as canonical server function middleware validator, deprecates inputValidator(). Patch fixes: scroll restoration, search params.

Interesting links

@s1gr1d s1gr1d requested review from a team, chargome and nicohrubec and removed request for a team June 8, 2026 11:42
@s1gr1d s1gr1d marked this pull request as ready for review June 10, 2026 14:29
)
args = parser.parse_args()

os.makedirs(os.path.dirname(args.out), exist_ok=True)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Bug: The script crashes if the --out argument is a bare filename, as os.makedirs is called with an empty string.
Severity: LOW

Suggested Fix

Before creating the directory, ensure the path is absolute to correctly handle bare filenames. For example, use os.path.dirname(os.path.abspath(args.out)) to get the directory name. This will ensure a valid directory path is passed to os.makedirs.

Prompt for AI Agent
Review the code at the location below. A potential bug has been identified by an AI
agent. Verify if this is a real issue. If it is, propose a fix; if not, explain why it's
not valid.

Location: .agents/skills/track-framework-updates/scripts/collect_updates.py#L100

Potential issue: The script `collect_updates.py` will crash if the `--out` argument is
provided with a bare filename (e.g., `output.json`) instead of a full path. This is
because `os.path.dirname()` on a bare filename returns an empty string, and the
subsequent call `os.makedirs("", exist_ok=True)` raises a `FileNotFoundError`. While the
documented default usage is safe because it constructs a full path, the script's
interface is fragile and will fail under realistic alternative usage patterns where a
user or another script provides just a filename.

Did we get this right? 👍 / 👎 to inform future reviews.

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.

1 participant