Upgrade notes for Shiny 1.12.1

New features

  • withOtelCollect() and localOtelCollect() temporarily control OpenTelemetry collection levels during reactive expression creation, allowing you to enable or disable telemetry collection for specific modules or sections of code. (#4333)

Bug fixes and minor improvements

  • OpenTelemetry code attributes now include both the preferred attribute names (code.file.path, code.line.number, code.column.number) and the deprecated names (code.filepath, code.lineno, code.column) to follow OpenTelemetry semantic conventions while maintaining backward compatibility. The deprecated names will be removed in a future release after Logfire supports the preferred names. (#4325)

  • ExtendedTask now captures the OpenTelemetry recording state at initialization time rather than at invocation time, ensuring consistent span recording behavior regardless of runtime configuration changes. (#4334)

  • Timer tests are now skipped on CRAN. (#4327)