py-shiny 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.
Also shipped May 21, 2026Posit in May 2026 →
Replit Enterprise, Now Self-Serve
Replit Enterprise is now available for direct purchase through the website. Organizations can configure SSO and SCIM and provision accounts without needing to go through a sales demo or contract negotiation.
Billing - Modernized Billing Profile with new payment options
The Billing Profile now has a modern UI and a single space that unifies billing information, payment method management and an enhanced subscriptions view under a single Subscriptions tab. What changed The Subscriptions tab brings billing information, payment method management, and your subscriptions together in one place.
Build Plugins: End of support for Node.js 18 + Node.js 20
The following versions of Node.js have reached their official end of life: Node.js v18 on April 30, 2025 Node.js v20 on April 30, 2026 Now it’s time to say goodbye to Node.js versions 18 and 20 in our build plugins. This change will allow us to use...
AI Conversations Now in Open Beta
Conversations is now in open beta for all Sentry users. It gives you a readable view into past sessions with your agent, showing the full exchange of messages and tool calls so you can understand exactly what happened during each session.
Shopify CLI 4.0: SemVer, auto-updates, removing deprecated flags and commands
The release of Shopify CLI 4.0 today brings clarity to CLI versioning, the introduction of automatic updates, and the announced removal of the deprecated --force flag from shopify app deploy . Semantic Versioning Shopify CLI is now following semantic versioning practices.
FLUX Erase , Remove Anything, Leave No Trace
A new FLUX Tools endpoint for clean, prompt-free object removal. Provide an image and a binary mask; the model removes the masked content and reconstructs the scene coherently.
More from py-shinyEvery py-shiny release →
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.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.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.
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.
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...