853853 < ul class ="md-nav__list " data-md-component ="toc " data-md-scrollfix >
854854
855855 < li class ="md-nav__item ">
856- < a href ="#unreleased- " class ="md-nav__link ">
856+ < a href ="#1282-2025-12-05 " class ="md-nav__link ">
857857 < span class ="md-ellipsis ">
858858
859- Unreleased - ??
859+ [1.28.2] - 2025-12-05
860860
861861 </ span >
862862 </ a >
863863
864- < nav class ="md-nav " aria-label ="Unreleased - ?? ">
864+ < nav class ="md-nav " aria-label ="[1.28.2] - 2025-12-05 ">
865865 < ul class ="md-nav__list ">
866866
867+ < li class ="md-nav__item ">
868+ < a href ="#fixed " class ="md-nav__link ">
869+ < span class ="md-ellipsis ">
870+
871+ Fixed
872+
873+ </ span >
874+ </ a >
875+
876+ </ li >
877+
867878 < li class ="md-nav__item ">
868879 < a href ="#removed " class ="md-nav__link ">
869880 < span class ="md-ellipsis ">
875886
876887</ li >
877888
889+ </ ul >
890+ </ nav >
891+
892+ </ li >
893+
894+ < li class ="md-nav__item ">
895+ < a href ="#1281-2025-12-05 " class ="md-nav__link ">
896+ < span class ="md-ellipsis ">
897+
898+ [1.28.1] - 2025-12-05
899+
900+ </ span >
901+ </ a >
902+
903+ < nav class ="md-nav " aria-label ="[1.28.1] - 2025-12-05 ">
904+ < ul class ="md-nav__list ">
905+
878906 < li class ="md-nav__item ">
879- < a href ="#fixed " class ="md-nav__link ">
907+ < a href ="#fixed_1 " class ="md-nav__link ">
880908 < span class ="md-ellipsis ">
881909
882910 Fixed
926954</ li >
927955
928956 < li class ="md-nav__item ">
929- < a href ="#fixed_1 " class ="md-nav__link ">
957+ < a href ="#fixed_2 " class ="md-nav__link ">
930958 < span class ="md-ellipsis ">
931959
932960 Fixed
954982 < ul class ="md-nav__list ">
955983
956984 < li class ="md-nav__item ">
957- < a href ="#fixed_2 " class ="md-nav__link ">
985+ < a href ="#fixed_3 " class ="md-nav__link ">
958986 < span class ="md-ellipsis ">
959987
960988 Fixed
9931021</ li >
9941022
9951023 < li class ="md-nav__item ">
996- < a href ="#fixed_3 " class ="md-nav__link ">
1024+ < a href ="#fixed_4 " class ="md-nav__link ">
9971025 < span class ="md-ellipsis ">
9981026
9991027 Fixed
10491077 < ul class ="md-nav__list ">
10501078
10511079 < li class ="md-nav__item ">
1052- < a href ="#fixed_4 " class ="md-nav__link ">
1080+ < a href ="#fixed_5 " class ="md-nav__link ">
10531081 < span class ="md-ellipsis ">
10541082
10551083 Fixed
12051233</ li >
12061234
12071235 < li class ="md-nav__item ">
1208- < a href ="#fixed_5 " class ="md-nav__link ">
1236+ < a href ="#fixed_6 " class ="md-nav__link ">
12091237 < span class ="md-ellipsis ">
12101238
12111239 Fixed
12661294</ li >
12671295
12681296 < li class ="md-nav__item ">
1269- < a href ="#fixed_6 " class ="md-nav__link ">
1297+ < a href ="#fixed_7 " class ="md-nav__link ">
12701298 < span class ="md-ellipsis ">
12711299
12721300 Fixed
12941322 < ul class ="md-nav__list ">
12951323
12961324 < li class ="md-nav__item ">
1297- < a href ="#fixed_7 " class ="md-nav__link ">
1325+ < a href ="#fixed_8 " class ="md-nav__link ">
12981326 < span class ="md-ellipsis ">
12991327
13001328 Fixed
13441372 < ul class ="md-nav__list ">
13451373
13461374 < li class ="md-nav__item ">
1347- < a href ="#fixed_8 " class ="md-nav__link ">
1375+ < a href ="#fixed_9 " class ="md-nav__link ">
13481376 < span class ="md-ellipsis ">
13491377
13501378 Fixed
14781506 < ul class ="md-nav__list ">
14791507
14801508 < li class ="md-nav__item ">
1481- < a href ="#fixed_9 " class ="md-nav__link ">
1509+ < a href ="#fixed_10 " class ="md-nav__link ">
14821510 < span class ="md-ellipsis ">
14831511
14841512 Fixed
15281556</ li >
15291557
15301558 < li class ="md-nav__item ">
1531- < a href ="#fixed_10 " class ="md-nav__link ">
1559+ < a href ="#fixed_11 " class ="md-nav__link ">
15321560 < span class ="md-ellipsis ">
15331561
15341562 Fixed
15671595</ li >
15681596
15691597 < li class ="md-nav__item ">
1570- < a href ="#fixed_11 " class ="md-nav__link ">
1598+ < a href ="#fixed_12 " class ="md-nav__link ">
15711599 < span class ="md-ellipsis ">
15721600
15731601 Fixed
16511679 < ul class ="md-nav__list ">
16521680
16531681 < li class ="md-nav__item ">
1654- < a href ="#fixed_12 " class ="md-nav__link ">
1682+ < a href ="#fixed_13 " class ="md-nav__link ">
16551683 < span class ="md-ellipsis ">
16561684
16571685 Fixed
21982226 < ul class ="md-nav__list ">
21992227
22002228 < li class ="md-nav__item ">
2201- < a href ="#fixed_13 " class ="md-nav__link ">
2229+ < a href ="#fixed_14 " class ="md-nav__link ">
22022230 < span class ="md-ellipsis ">
22032231
22042232 Fixed
22592287</ li >
22602288
22612289 < li class ="md-nav__item ">
2262- < a href ="#fixed_14 " class ="md-nav__link ">
2290+ < a href ="#fixed_15 " class ="md-nav__link ">
22632291 < span class ="md-ellipsis ">
22642292
22652293 Fixed
22982326</ li >
22992327
23002328 < li class ="md-nav__item ">
2301- < a href ="#fixed_15 " class ="md-nav__link ">
2329+ < a href ="#fixed_16 " class ="md-nav__link ">
23022330 < span class ="md-ellipsis ">
23032331
23042332 Fixed
23372365</ li >
23382366
23392367 < li class ="md-nav__item ">
2340- < a href ="#fixed_16 " class ="md-nav__link ">
2368+ < a href ="#fixed_17 " class ="md-nav__link ">
23412369 < span class ="md-ellipsis ">
23422370
23432371 Fixed
24152443</ li >
24162444
24172445 < li class ="md-nav__item ">
2418- < a href ="#fixed_17 " class ="md-nav__link ">
2446+ < a href ="#fixed_18 " class ="md-nav__link ">
24192447 < span class ="md-ellipsis ">
24202448
24212449 Fixed
24432471 < ul class ="md-nav__list ">
24442472
24452473 < li class ="md-nav__item ">
2446- < a href ="#fixed_18 " class ="md-nav__link ">
2474+ < a href ="#fixed_19 " class ="md-nav__link ">
24472475 < span class ="md-ellipsis ">
24482476
24492477 Fixed
@@ -2546,13 +2574,18 @@ <h1 id="changelog">Changelog<a class="headerlink" href="#changelog" title="Perma
25462574< p > All notable changes to this project will be documented in this file.</ p >
25472575< p > The format is based on < a href ="https://keepachangelog.com/en/1.0.0/ "> Keep a Changelog</ a > ,
25482576and this project adheres to < a href ="https://semver.org/spec/v2.0.0.html "> Semantic Versioning</ a > .</ p >
2549- < h2 id ="unreleased- "> < a href ="https://github.com/posit-dev/rsconnect-python/compare/1.5.0...HEAD "> Unreleased</ a > - ??< a class ="headerlink " href ="#unreleased- " title ="Permanent link "> #</ a > </ h2 >
2577+ < h2 id ="1282-2025-12-05 "> [1.28.2] - 2025-12-05< a class ="headerlink " href ="#1282-2025-12-05 " title ="Permanent link "> #</ a > </ h2 >
2578+ < h3 id ="fixed "> Fixed< a class ="headerlink " href ="#fixed " title ="Permanent link "> #</ a > </ h3 >
2579+ < ul >
2580+ < li > Corrected Changelog to show the correct version number of the 1.28.1 release.</ li >
2581+ </ ul >
25502582< h3 id ="removed "> Removed< a class ="headerlink " href ="#removed " title ="Permanent link "> #</ a > </ h3 >
25512583< ul >
25522584< li > Removed support for publishing to Posit Cloud. Posit Cloud no longer hosts
25532585 deployed content. Users should migrate to Connect Cloud or Posit Connect.</ li >
25542586</ ul >
2555- < h3 id ="fixed "> Fixed< a class ="headerlink " href ="#fixed " title ="Permanent link "> #</ a > </ h3 >
2587+ < h2 id ="1281-2025-12-05 "> [1.28.1] - 2025-12-05< a class ="headerlink " href ="#1281-2025-12-05 " title ="Permanent link "> #</ a > </ h2 >
2588+ < h3 id ="fixed_1 "> Fixed< a class ="headerlink " href ="#fixed_1 " title ="Permanent link "> #</ a > </ h3 >
25562589< ul >
25572590< li > < code > rsconnect list</ code > now properly functions when a stored server has no nickname.</ li >
25582591< li > Fixes the HTTP User-Agent string to use PascalCase formatting. HTTP requests now identify the client as < code > RSConnectPython/x.y.z</ code > instead of < code > rsconnect-python/x.y.z</ code > .</ li >
@@ -2577,13 +2610,13 @@ <h3 id="added">Added<a class="headerlink" href="#added" title="Permanent link">#
25772610 to create a manifest file.</ p >
25782611</ li >
25792612</ ul >
2580- < h3 id ="fixed_1 "> Fixed< a class ="headerlink " href ="#fixed_1 " title ="Permanent link "> #</ a > </ h3 >
2613+ < h3 id ="fixed_2 "> Fixed< a class ="headerlink " href ="#fixed_2 " title ="Permanent link "> #</ a > </ h3 >
25812614< ul >
25822615< li > Snowflake SPCS (Snowpark Container Services) authentication now properly handles API keys
25832616 and aligns with codebase patterns for server type detection and initialization.</ li >
25842617</ ul >
25852618< h2 id ="1271-2025-08-12 "> [1.27.1] - 2025-08-12< a class ="headerlink " href ="#1271-2025-08-12 " title ="Permanent link "> #</ a > </ h2 >
2586- < h3 id ="fixed_2 "> Fixed< a class ="headerlink " href ="#fixed_2 " title ="Permanent link "> #</ a > </ h3 >
2619+ < h3 id ="fixed_3 "> Fixed< a class ="headerlink " href ="#fixed_3 " title ="Permanent link "> #</ a > </ h3 >
25872620< ul >
25882621< li > Python Shiny apps can be deployed when Connect server version is hidden. (#695)</ li >
25892622</ ul >
@@ -2597,7 +2630,7 @@ <h3 id="added_1">Added<a class="headerlink" href="#added_1" title="Permanent lin
25972630 hosted in Snowpark Container Services.</ li >
25982631< li > Relicensed package from GPL to MIT.</ li >
25992632</ ul >
2600- < h3 id ="fixed_3 "> Fixed< a class ="headerlink " href ="#fixed_3 " title ="Permanent link "> #</ a > </ h3 >
2633+ < h3 id ="fixed_4 "> Fixed< a class ="headerlink " href ="#fixed_4 " title ="Permanent link "> #</ a > </ h3 >
26012634< ul >
26022635< li > Command-line options like < code > --api-key</ code > and associated environment variables
26032636 like < code > CONNECT_API_KEY</ code > take precedence over values in a stored deployment
@@ -2614,7 +2647,7 @@ <h3 id="added_2">Added<a class="headerlink" href="#added_2" title="Permanent lin
26142647 in favor of using < code > .python-version</ code > requirement file.</ li >
26152648</ ul >
26162649< h2 id ="1252-2025-02-26 "> [1.25.2] - 2025-02-26< a class ="headerlink " href ="#1252-2025-02-26 " title ="Permanent link "> #</ a > </ h2 >
2617- < h3 id ="fixed_4 "> Fixed< a class ="headerlink " href ="#fixed_4 " title ="Permanent link "> #</ a > </ h3 >
2650+ < h3 id ="fixed_5 "> Fixed< a class ="headerlink " href ="#fixed_5 " title ="Permanent link "> #</ a > </ h3 >
26182651< ul >
26192652< li > Display system error message when < code > rsconnect.environment</ code > inspection fails</ li >
26202653</ ul >
@@ -2667,7 +2700,7 @@ <h3 id="changed_2">Changed<a class="headerlink" href="#changed_2" title="Permane
26672700 < code > starlette>=0.35.0</ code > . When deploying to these servers, the starlette version
26682701 is now automatically set to < code > starlette<0.35.0</ code > .</ li >
26692702</ ul >
2670- < h3 id ="fixed_5 "> Fixed< a class ="headerlink " href ="#fixed_5 " title ="Permanent link "> #</ a > </ h3 >
2703+ < h3 id ="fixed_6 "> Fixed< a class ="headerlink " href ="#fixed_6 " title ="Permanent link "> #</ a > </ h3 >
26712704< ul >
26722705< li >
26732706< p > Quarto content is marked as a "site" only when there are multiple input
@@ -2702,7 +2735,7 @@ <h3 id="changed_3">Changed<a class="headerlink" href="#changed_3" title="Permane
27022735< li > Updated verbose mode to output the source of all options being used when processing the
27032736 CLI command.</ li >
27042737</ ul >
2705- < h3 id ="fixed_6 "> Fixed< a class ="headerlink " href ="#fixed_6 " title ="Permanent link "> #</ a > </ h3 >
2738+ < h3 id ="fixed_7 "> Fixed< a class ="headerlink " href ="#fixed_7 " title ="Permanent link "> #</ a > </ h3 >
27062739< ul >
27072740< li >
27082741< p > Interrupting a long-running < code > rsconnect content build run</ code > command with < code > ^C</ code >
@@ -2716,7 +2749,7 @@ <h3 id="fixed_6">Fixed<a class="headerlink" href="#fixed_6" title="Permanent lin
27162749</ li >
27172750</ ul >
27182751< h2 id ="1210-2023-10-26 "> [1.21.0] - 2023-10-26< a class ="headerlink " href ="#1210-2023-10-26 " title ="Permanent link "> #</ a > </ h2 >
2719- < h3 id ="fixed_7 "> Fixed< a class ="headerlink " href ="#fixed_7 " title ="Permanent link "> #</ a > </ h3 >
2752+ < h3 id ="fixed_8 "> Fixed< a class ="headerlink " href ="#fixed_8 " title ="Permanent link "> #</ a > </ h3 >
27202753< ul >
27212754< li > The < code > https_proxy</ code > environment variable is recognized as a synonym for
27222755 < code > HTTPS_PROXY</ code > .</ li >
@@ -2757,7 +2790,7 @@ <h3 id="changed_4">Changed<a class="headerlink" href="#changed_4" title="Permane
27572790< li > Removing experimental support for Conda. Connect does not support restoring Conda environments.</ li >
27582791</ ul >
27592792< h2 id ="1200-2023-09-11 "> [1.20.0] - 2023-09-11< a class ="headerlink " href ="#1200-2023-09-11 " title ="Permanent link "> #</ a > </ h2 >
2760- < h3 id ="fixed_8 "> Fixed< a class ="headerlink " href ="#fixed_8 " title ="Permanent link "> #</ a > </ h3 >
2793+ < h3 id ="fixed_9 "> Fixed< a class ="headerlink " href ="#fixed_9 " title ="Permanent link "> #</ a > </ h3 >
27612794< ul >
27622795< li > Python virtualenvs are now detected in Windows environments, and are automatically
27632796 excluded from the uploaded bundle.</ li >
@@ -2793,7 +2826,7 @@ <h3 id="changed_5">Changed<a class="headerlink" href="#changed_5" title="Permane
27932826< li > Removes redundant client-side compatibility checks in favor of server-side compatibility checks when deploying Python content. Note that the error handling may differ between versions of Connect. See Connect release notes for additional details regarding compatibility.</ li >
27942827</ ul >
27952828< h2 id ="1171-2023-05-25 "> [1.17.1] - 2023-05-25< a class ="headerlink " href ="#1171-2023-05-25 " title ="Permanent link "> #</ a > </ h2 >
2796- < h3 id ="fixed_9 "> Fixed< a class ="headerlink " href ="#fixed_9 " title ="Permanent link "> #</ a > </ h3 >
2829+ < h3 id ="fixed_10 "> Fixed< a class ="headerlink " href ="#fixed_10 " title ="Permanent link "> #</ a > </ h3 >
27972830< ul >
27982831< li > Shiny app deployment fails when static content is present in the app < a href ="https://github.com/posit-dev/rsconnect-python/issues/373 "> #373</ a > .</ li >
27992832</ ul >
@@ -2813,7 +2846,7 @@ <h3 id="changed_6">Changed<a class="headerlink" href="#changed_6" title="Permane
28132846< li > The < code > app_id</ code > field in application store files also stores the content id instead of the application id.</ li >
28142847< li > Application store files include a < code > version</ code > field, set to 1 for this release.</ li >
28152848</ ul >
2816- < h3 id ="fixed_10 "> Fixed< a class ="headerlink " href ="#fixed_10 " title ="Permanent link "> #</ a > </ h3 >
2849+ < h3 id ="fixed_11 "> Fixed< a class ="headerlink " href ="#fixed_11 " title ="Permanent link "> #</ a > </ h3 >
28172850< ul >
28182851< li > cacert read error when adding/updating a server < a href ="https://github.com/posit-dev/rsconnect-python/issues/403 "> #403</ a > .</ li >
28192852< li > getdefaultlocale no longer work with newer versions of Python < a href ="https://github.com/posit-dev/rsconnect-python/issues/397 "> #397</ a > < a href ="https://github.com/posit-dev/rsconnect-python/issues/399 "> #399</ a > .</ li >
@@ -2824,7 +2857,7 @@ <h3 id="added_14">Added<a class="headerlink" href="#added_14" title="Permanent l
28242857< ul >
28252858< li > The < code > CONNECT_REQUEST_TIMEOUT</ code > environment variable, which configures the request timeout for all blocking HTTP and HTTPS operations. This value translates into seconds (e.g., < code > CONNECT_REQUEST_TIMEOUT=60</ code > is equivalent to 60 seconds.) By default, this value is 300.</ li >
28262859</ ul >
2827- < h3 id ="fixed_11 "> Fixed< a class ="headerlink " href ="#fixed_11 " title ="Permanent link "> #</ a > </ h3 >
2860+ < h3 id ="fixed_12 "> Fixed< a class ="headerlink " href ="#fixed_12 " title ="Permanent link "> #</ a > </ h3 >
28282861< ul >
28292862< li >
28302863< p > Extra files were not being included in deploy Voila.</ p >
@@ -2893,7 +2926,7 @@ <h4 id="deploying-html">Deploying HTML<a class="headerlink" href="#deploying-htm
28932926</ ul >
28942927< p > *Plus the manifest & other necessary files needed for the bundle to work on Connect.</ p >
28952928< h2 id ="1141-2023-02-09 "> [1.14.1] - 2023-02-09< a class ="headerlink " href ="#1141-2023-02-09 " title ="Permanent link "> #</ a > </ h2 >
2896- < h3 id ="fixed_12 "> Fixed< a class ="headerlink " href ="#fixed_12 " title ="Permanent link "> #</ a > </ h3 >
2929+ < h3 id ="fixed_13 "> Fixed< a class ="headerlink " href ="#fixed_13 " title ="Permanent link "> #</ a > </ h3 >
28972930< ul >
28982931< li > Extra files were not being included in certain deploy and write-manifest commands.</ li >
28992932</ ul >
@@ -3086,7 +3119,7 @@ <h3 id="changed_17">Changed<a class="headerlink" href="#changed_17" title="Perma
30863119< li > Conda environments contain Conda-only versions of setuptools, which are now filtered out from requirements.txt for non-Conda environments.</ li >
30873120</ ul >
30883121< h2 id ="151-2020-11-02 "> [1.5.1] - 2020-11-02< a class ="headerlink " href ="#151-2020-11-02 " title ="Permanent link "> #</ a > </ h2 >
3089- < h3 id ="fixed_13 "> Fixed< a class ="headerlink " href ="#fixed_13 " title ="Permanent link "> #</ a > </ h3 >
3122+ < h3 id ="fixed_14 "> Fixed< a class ="headerlink " href ="#fixed_14 " title ="Permanent link "> #</ a > </ h3 >
30903123< ul >
30913124< li > Python 2 encoding error when using rsconnect-jupyter to publish a notebook containing binary data.</ li >
30923125< li > Preserve more details when raising exceptions.</ li >
@@ -3112,7 +3145,7 @@ <h3 id="removed_4">Removed<a class="headerlink" href="#removed_4" title="Permane
31123145< ul >
31133146< li > generation and publishing of < code > sdist</ code > artifact</ li >
31143147</ ul >
3115- < h3 id ="fixed_14 "> Fixed< a class ="headerlink " href ="#fixed_14 " title ="Permanent link "> #</ a > </ h3 >
3148+ < h3 id ="fixed_15 "> Fixed< a class ="headerlink " href ="#fixed_15 " title ="Permanent link "> #</ a > </ h3 >
31163149< ul >
31173150< li > explicitly set the < code > --to-html</ code > option to < code > nbconvert</ code > when publishing a static notebook,
31183151 as required by the latest version of < code > nbconvert</ code > </ li >
@@ -3124,7 +3157,7 @@ <h3 id="changed_19">Changed<a class="headerlink" href="#changed_19" title="Perma
31243157< li > pin required versions of the < code > click</ code > and < code > six</ code > libraries that we use</ li >
31253158< li > help text touch up</ li >
31263159</ ul >
3127- < h3 id ="fixed_15 "> Fixed< a class ="headerlink " href ="#fixed_15 " title ="Permanent link "> #</ a > </ h3 >
3160+ < h3 id ="fixed_16 "> Fixed< a class ="headerlink " href ="#fixed_16 " title ="Permanent link "> #</ a > </ h3 >
31283161< ul >
31293162< li > output alignment under Python 2</ li >
31303163</ ul >
@@ -3135,7 +3168,7 @@ <h3 id="changed_20">Changed<a class="headerlink" href="#changed_20" title="Perma
31353168< li > updated < code > CookieJar</ code > class to support marshalling/un-marshalling
31363169 to/from a dictionary</ li >
31373170</ ul >
3138- < h3 id ="fixed_16 "> Fixed< a class ="headerlink " href ="#fixed_16 " title ="Permanent link "> #</ a > </ h3 >
3171+ < h3 id ="fixed_17 "> Fixed< a class ="headerlink " href ="#fixed_17 " title ="Permanent link "> #</ a > </ h3 >
31393172< ul >
31403173< li > an issue with cookie jar continuity across connections</ li >
31413174</ ul >
@@ -3156,13 +3189,13 @@ <h3 id="changed_22">Changed<a class="headerlink" href="#changed_22" title="Perma
31563189< li > be more distinguishing between a server that's not running Connect and a credentials
31573190 problem</ li >
31583191</ ul >
3159- < h3 id ="fixed_17 "> Fixed< a class ="headerlink " href ="#fixed_17 " title ="Permanent link "> #</ a > </ h3 >
3192+ < h3 id ="fixed_18 "> Fixed< a class ="headerlink " href ="#fixed_18 " title ="Permanent link "> #</ a > </ h3 >
31603193< ul >
31613194< li > an issue where cookie header size could grow inappropriately (#107)</ li >
31623195< li > corrected the instructions to enable auto-completion</ li >
31633196</ ul >
31643197< h2 id ="141-2020-03-26 "> < a href ="https://github.com/posit-dev/rsconnect-python/compare/1.4.0...1.4.1 "> 1.4.1</ a > - 2020-03-26< a class ="headerlink " href ="#141-2020-03-26 " title ="Permanent link "> #</ a > </ h2 >
3165- < h3 id ="fixed_18 "> Fixed< a class ="headerlink " href ="#fixed_18 " title ="Permanent link "> #</ a > </ h3 >
3198+ < h3 id ="fixed_19 "> Fixed< a class ="headerlink " href ="#fixed_19 " title ="Permanent link "> #</ a > </ h3 >
31663199< ul >
31673200< li > sticky sessions so we will track deploys correctly when RStudio Connect is in an
31683201 HA/clustered environment</ li >
0 commit comments