Posit Connect 2023.12.0: Publishing Python Apps and Dashboards Supported in All Licenses

In the December edition of Posit Connect, users can now publish Python interactive application frameworks in all licenses.
2024-01-12
Text: Product Release Posit Connect 2023.12.0 with the Posit Connect logo. On the right, the Streamlit, Dash, Bokeh, and Voilà logos.

Posit Connect now supports publishing Python interactive application frameworks in all licenses. Base license holders can upgrade to Posit Connect 2023.12.0 for access to new framework support including: Dash, Streamlit, Bokeh, and Voilà. API-type content is still only available in Standard and Enterprise licenses.

 

Now Available in all Posit Connect licenses

 

  • Dash
  • Streamlit
  • Bokeh
  • Voilà
  • Shiny for R *
  • Shiny R Markdown *
  • Shiny Quarto *
  • Shiny for Python *

* previously supported in Base licenses

This release does not change or add Python framework offerings for Standard and Enterprise license holders; however, it does contain feature enhancements and bug fixes which are described in the release notes.

 

Prepare your Connect server for Python publishing

 

If you are enabling Python publishing for the first time on your Connect server, be sure to review the documentation for instructions on how to update your server configuration file. Follow these instructions to install one or more versions of Python on the server if they don’t already exist. Starting in the January 2024 edition, the minimum Python version supported by Connect will be Python 3.8. 

Posit Connect requires matching <MAJOR.MINOR> versions of Python to successfully deploy content. For example, a server with only Python 3.10 installed will fail to deploy content created with Python 3.9. Administrators may also choose to enable exact Python version matching which will be stricter and require matching major, minor, and patch versions. For more information see the Python Version Matching section of the Admin Guide.

 

Onboarding resources for new Python publishers

 

New users should start here to learn how to use the rsconnect-python command line interface to publish Python applications and dashboards to Posit Connect.

Connect installs the Python package dependencies of Python-based content when that content is deployed. Package dependencies are captured in one of two ways:

  1. If a requirements.txt file exists in the directory containing the project being deployed, then the contents of that file specify the dependencies. If you provide a requirements.txt file, you must ensure that the listed dependencies are correct for the content you are deploying.
  2. Otherwise, the pip freeze command is used to produce a full specification of the current Python environment including all installed packages and their version numbers.

The resulting package list is included in the bundle archive file, which is uploaded to Posit Connect. Posit Connect receives the bundle archive file, unpacks it, and uses venv and pip to install the identified package dependencies.

Additional resources and video tutorials can be found here:

 

Upgrade Posit Connect

 

Before upgrading, please review the full release notes.

 

Notes for Administrators:

  • Python 3.7 was deprecated in the 2023.09.0 release. Support will be removed in the 2024.01 edition of Posit Connect and the minimum version will be Python 3.8. 
  • The configuration setting Branding.Robots is deprecated and will be removed in an upcoming release. If you have this setting in your configuration file, take this opportunity to swap it with Server.Robots instead.

Upgrading Posit Connect typically requires less than five minutes. 

If you are upgrading from a version earlier than the October 2023 edition, be sure to consult the release notes for changes in intermediate releases that may not be mentioned in this blog post.

To perform a Posit Connect upgrade, download and run the installation script. The script installs a new version of Connect on top of the earlier one. Existing configuration settings are respected. Standard upgrade documentation can be found here.