py-shiny shiny 1.6.0
OpenTelemetry Added the SHINY_OTEL_COLLECT environment variable to set the default collection level globally. Available levels: "none" - Disables all Shiny-specific telemetry collection. Use this for sensitive operations where you don't want Shiny to emit any spans or logs.
Also shipped Mar 20, 2026Posit in March 2026 →
One-command setup supports more agents, improved billing support, and more release - Mar 20, 2026
One command setup for more AI assistants. The npx neonctl@latest init command, which sets up Neon and configures the Neon MCP Server for you, now supports more ...
What's new in Sigma
API New email option for the List members endpoint The List members ( GET /v2/members ) endpoint includes a new option to filter the list of users by email address. Use this option instead of the search option.
Invoices for Enterprise Available on the Billing Page
Enterprise and Grid customers can now find issued invoices directly on their billing pages in Netlify. You can review what each invoice includes and open it right away to pay or download. On the team Usage & billing page for Enterprise and the Organization billing page for Grid, invoices are now listed where billing work already happens.
NeMo NVIDIA Neural Modules 2.7.1
ASR Changelog cp: Fix cuda-python usage for CUDA graphs by @ko3n1g :: PR: #15471 Uncategorized: Changelog
Access - Managed OAuth for Cloudflare Access
Cloudflare Access supports managed OAuth, which allows non-browser clients , such as CLIs, AI agents, SDKs, and scripts , to authenticate with Access-protected applications using a standard OAuth 2.0 authorization code flow.
Access - Route MCP server portal traffic through Cloudflare Gateway
MCP server portals can now route traffic through Cloudflare Gateway for richer HTTP request logging and data loss prevention (DLP) scanning. When Gateway routing is turned on, portal traffic appears in your Gateway HTTP logs . You can create Gateway HTTP policies with DLP profiles to detect and block sensitive data sent to upstream MCP servers.
More from py-shinyEvery py-shiny release →
shiny 1.6.1
New features Added session.destroy() and session.on_destroy() for cleaning up reactive objects (effects, calcs, values) when dynamically inserted module UI is removed.
shiny 1.6.2
Bug fixes Adapted py-shiny to the htmltools 0.7.0 sibling-classes refactor. No runtime behavior change. Bumped lodash/lodash-es to 4.18.1 in the js-react template lockfile for CVE-2025-13465. Fixed render.DataGrid() column headers and hovered rows not adapting to dark mode when ui.input_dark_mode() is enabled.
shiny 1.6.3
New features session.destroy() now accepts an optional module id. The parent that inserted a module's UI under an id can tear down that module's scope with session.destroy(id), without the module having to hand back a cleanup handle. Added the brite theme preset, available wherever Shiny theme presets are accepted (e.g. ui.Theme() and ui.page_(theme=)).
shiny 1.5.1
New features - Added toast notification system with ui.toast(), ui.toast_header(), ui.show_toast(), and ui.hide_toast(). Toast notifications are temporary, non-intrusive messages that support multiple semantic types (success, warning, error, etc.), flexible positioning (9 positions: top/middle/bottom × left/center/right), auto-hide with configurable...
shiny 1.6.4
Bug fixes Fixed a path-traversal vulnerability in bookmark restore (CWE-22). Introduced in 1.4.0. Reported by @0xRenSec. When bookmarked state cannot be restored, the notification shown in the client is now a generic message. The reason is logged server-side as a warning on the shiny.bookmark._restore_state logger, so app authors can still see it. (1d8ecb46)
shiny 1.7.0
New features Added test mode, enabled via the SHINY_TESTMODE=1 environment variable or the App(test_mode=) argument (which defaults to that env var). The pytest app-launch fixtures (local_app, create_app_fixture) now run apps in test mode.
shiny 1.8.0
Deprecations ui.output_text_verbatim() is deprecated and now emits a ShinyDeprecationWarning. Please use ui.output_code() / @render.code to create an output container for code (monospaced text), or ui.output_text() / @render.text to create an output container for plain text.
shiny 1.9.0
Breaking changes OpenTelemetry reactive_update spans now follow each session's cycle: one span per session, from when the session turns busy until all of its effects (including async ones) have finished, carrying the session's session.id. The session's calc, effect, and output spans are its children.