diff options
| author | Ricardo Wurmus <rekado@elephly.net> | 2026-05-13 22:39:12 +0200 |
|---|---|---|
| committer | Ricardo Wurmus <rekado@elephly.net> | 2026-05-16 12:20:02 +0200 |
| commit | 24317029245eddca35f64b81280a831a18bc680c (patch) | |
| tree | d5fd85712862401b88177dca3f86792f53f62b14 /patches | |
| parent | c0321213ed34a76fc513a0f930d5d072b6785bec (diff) | |
rstudio: rstudio-server: Update to 2026.04.0+526.
* patches/rstudio-server-install.patch: Update file.
* patches/rstudio-server-multi-version/0001-handleClientInit-Store-R-versions-in-sessionInfo.patch,
patches/rstudio-server-multi-version/0002-launchAndTrackSession-Configure-R-version-from-activ.patch,
patches/rstudio-server-multi-version/0003-NewProjectWizard-Unhide-version-selector-widget.patch,
patches/rstudio-server-multi-version/0004-handleConnection-Switch-R-version-when-switching-pro.patch,
patches/rstudio-server-multi-version/0005-Add-version-switcher-widget-to-toolbar.patch,
patches/rstudio-server-multi-version/0006-Look-at-.local-share-rstudio-r-versions-for-custom-R.patch,
patches/rstudio-server-multi-version/0007-detectRLocationsUsingR-Restore-R_HOME-at-the-end.patch:
Update to latest version.
* guix-science/packages/rstudio.scm (dtl-for-rstudio,
utfcpp-for-rstudio): New variables.
(rstudio-server): Update to 2026.04.0+526.
[arguments]: Do not use #:OUT-OF-SOURCE?, add extra configure flags;
update generated cmake files; rename phase 'unpack-dictionary to
'unpack-extras and unpack GWT sources; update patching in
'patch-paths; update location of script in 'generate-server-options.
[native-inputs]: Replace openjdk11:jdk with openjdk:jdk; add
googletest and r-here; add origin for gwt sources.
[inputs]: Replace boost-1.88 with boost; add dtl-for-rstudio, libgit2,
and utfcpp-for-rstudio.
Diffstat (limited to 'patches')
8 files changed, 163 insertions, 82 deletions
diff --git a/patches/rstudio-server-install.patch b/patches/rstudio-server-install.patch index 89bdee4..9ee3304 100644 --- a/patches/rstudio-server-install.patch +++ b/patches/rstudio-server-install.patch | |||
| @@ -3,7 +3,7 @@ Avoid building copies of existing libraries. Link with Guix-provided libraries | |||
| 3 | 3 | ||
| 4 | --- a/src/cpp/session/CMakeLists.txt | 4 | --- a/src/cpp/session/CMakeLists.txt |
| 5 | +++ b/src/cpp/session/CMakeLists.txt | 5 | +++ b/src/cpp/session/CMakeLists.txt |
| 6 | @@ -469,18 +469,6 @@ | 6 | @@ -493,18 +493,6 @@ |
| 7 | configure_file(${CMAKE_CURRENT_SOURCE_DIR}/../../../NOTICE | 7 | configure_file(${CMAKE_CURRENT_SOURCE_DIR}/../../../NOTICE |
| 8 | ${CMAKE_CURRENT_SOURCE_DIR}/resources COPYONLY) | 8 | ${CMAKE_CURRENT_SOURCE_DIR}/resources COPYONLY) |
| 9 | 9 | ||
| @@ -22,7 +22,7 @@ Avoid building copies of existing libraries. Link with Guix-provided libraries | |||
| 22 | # set include directories | 22 | # set include directories |
| 23 | include_directories( | 23 | include_directories( |
| 24 | include | 24 | include |
| 25 | @@ -682,9 +670,6 @@ | 25 | @@ -715,9 +703,6 @@ |
| 26 | # notice | 26 | # notice |
| 27 | install(FILES "resources/NOTICE" | 27 | install(FILES "resources/NOTICE" |
| 28 | DESTINATION ${RSTUDIO_INSTALL_SUPPORTING}/resources) | 28 | DESTINATION ${RSTUDIO_INSTALL_SUPPORTING}/resources) |
| @@ -32,7 +32,7 @@ Avoid building copies of existing libraries. Link with Guix-provided libraries | |||
| 32 | 32 | ||
| 33 | # citation | 33 | # citation |
| 34 | configure_file("resources/CITATION.in" | 34 | configure_file("resources/CITATION.in" |
| 35 | @@ -721,10 +706,6 @@ | 35 | @@ -754,16 +739,6 @@ |
| 36 | install(DIRECTORY "${RSTUDIO_DEPENDENCIES_DICTIONARIES_DIR}" | 36 | install(DIRECTORY "${RSTUDIO_DEPENDENCIES_DICTIONARIES_DIR}" |
| 37 | DESTINATION "${RSTUDIO_INSTALL_SUPPORTING}/resources") | 37 | DESTINATION "${RSTUDIO_INSTALL_SUPPORTING}/resources") |
| 38 | 38 | ||
| @@ -40,10 +40,16 @@ Avoid building copies of existing libraries. Link with Guix-provided libraries | |||
| 40 | - install(DIRECTORY "${RSTUDIO_DEPENDENCIES_MATHJAX_DIR}" | 40 | - install(DIRECTORY "${RSTUDIO_DEPENDENCIES_MATHJAX_DIR}" |
| 41 | - DESTINATION "${RSTUDIO_INSTALL_SUPPORTING}/resources") | 41 | - DESTINATION "${RSTUDIO_INSTALL_SUPPORTING}/resources") |
| 42 | - | 42 | - |
| 43 | - # install node | ||
| 44 | - install( | ||
| 45 | - DIRECTORY "${RSTUDIO_DEPENDENCIES_DIR}/common/node/${RSTUDIO_INSTALLED_NODE_VERSION}-installed/" | ||
| 46 | - DESTINATION "${RSTUDIO_INSTALL_BIN}/node" | ||
| 47 | - USE_SOURCE_PERMISSIONS) | ||
| 48 | - | ||
| 43 | # install quarto (or pandoc if quarto disabled) | 49 | # install quarto (or pandoc if quarto disabled) |
| 44 | if(QUARTO_ENABLED) | 50 | if(QUARTO_ENABLED) |
| 45 | # install some quarto folders into Resources, as needed | 51 | # install some quarto folders into Resources, as needed |
| 46 | @@ -742,9 +723,6 @@ | 52 | @@ -781,9 +756,6 @@ |
| 47 | EXCLUDE) | 53 | EXCLUDE) |
| 48 | endif() | 54 | endif() |
| 49 | else() | 55 | else() |
| @@ -53,22 +59,26 @@ Avoid building copies of existing libraries. Link with Guix-provided libraries | |||
| 53 | endif() | 59 | endif() |
| 54 | 60 | ||
| 55 | # install Copilot Language Server | 61 | # install Copilot Language Server |
| 62 | |||
| 56 | --- a/src/cpp/ext/CMakeLists.txt | 63 | --- a/src/cpp/ext/CMakeLists.txt |
| 57 | +++ b/src/cpp/ext/CMakeLists.txt | 64 | +++ b/src/cpp/ext/CMakeLists.txt |
| 58 | @@ -228,30 +228,3 @@ | 65 | @@ -360,7 +360,7 @@ |
| 59 | websocketpp WEBSOCKETPP | 66 | # a valid library artifact when libgit2's SelectZlib.cmake calls find_package(ZLIB). |
| 60 | yaml-cpp YAML_CPP | 67 | # If zlib is not yet present, FindZLIB fails and libgit2 falls back to its bundled |
| 61 | zlib ZLIB) | 68 | # deps/zlib, resulting in duplicate zlib symbols in the final binary. |
| 62 | - | 69 | -fetch(zlib ZLIB) |
| 63 | -# Create rapidjson target. | 70 | +fetch(ZLIB ZLIB) |
| 64 | -add_library(rstudio-rapidjson INTERFACE EXCLUDE_FROM_ALL) | 71 | |
| 65 | -target_compile_definitions(rstudio-rapidjson INTERFACE "-DRAPIDJSON_NO_SIZETYPEDEFINE") | 72 | # libgit2's src/libgit2/CMakeLists.txt uses FILE(WRITE) to produce git2.h in |
| 66 | -target_include_directories(rstudio-rapidjson INTERFACE "${RAPIDJSON_SOURCE_DIR}/include") | 73 | # the build tree. Unlike configure_file(), FILE(WRITE) unconditionally updates |
| 67 | - | 74 | @@ -403,45 +403,6 @@ |
| 75 | |||
| 76 | restore_global_settings() | ||
| 77 | |||
| 68 | - | 78 | - |
| 69 | -# Create websocketpp target. | 79 | -# Create dtl target. |
| 70 | -add_library(rstudio-websocketpp INTERFACE EXCLUDE_FROM_ALL) | 80 | -add_library(rstudio-dtl INTERFACE EXCLUDE_FROM_ALL) |
| 71 | -target_include_directories(rstudio-websocketpp INTERFACE "${WEBSOCKETPP_SOURCE_DIR}") | 81 | -target_include_directories(rstudio-dtl INTERFACE "${DTL_SOURCE_DIR}") |
| 72 | - | 82 | - |
| 73 | - | 83 | - |
| 74 | -# Create hunspell target. | 84 | -# Create hunspell target. |
| @@ -86,30 +96,53 @@ Avoid building copies of existing libraries. Link with Guix-provided libraries | |||
| 86 | -else() | 96 | -else() |
| 87 | - target_compile_options(rstudio-hunspell PRIVATE -Wno-deprecated-declarations -Wno-sign-compare -Wno-unused-but-set-variable) | 97 | - target_compile_options(rstudio-hunspell PRIVATE -Wno-deprecated-declarations -Wno-sign-compare -Wno-unused-but-set-variable) |
| 88 | -endif() | 98 | -endif() |
| 99 | - | ||
| 100 | - | ||
| 101 | -# Create rapidjson target. | ||
| 102 | -add_library(rstudio-rapidjson INTERFACE EXCLUDE_FROM_ALL) | ||
| 103 | -target_compile_definitions(rstudio-rapidjson INTERFACE "-DRAPIDJSON_NO_SIZETYPEDEFINE") | ||
| 104 | -target_include_directories(rstudio-rapidjson INTERFACE "${RAPIDJSON_SOURCE_DIR}/include") | ||
| 105 | - | ||
| 106 | - | ||
| 107 | -# Create utfcpp target. | ||
| 108 | -add_library(rstudio-utfcpp INTERFACE EXCLUDE_FROM_ALL) | ||
| 109 | -target_include_directories(rstudio-utfcpp INTERFACE "${UTFCPP_SOURCE_DIR}/source") | ||
| 110 | - | ||
| 111 | - | ||
| 112 | -# Create websocketpp target. | ||
| 113 | -add_library(rstudio-websocketpp INTERFACE EXCLUDE_FROM_ALL) | ||
| 114 | -target_include_directories(rstudio-websocketpp INTERFACE "${WEBSOCKETPP_SOURCE_DIR}") | ||
| 115 | - | ||
| 116 | - | ||
| 117 | # Create zlib target (Windows only). | ||
| 118 | # Uses a custom target name to avoid colliding with the 'zlib' OBJECT target | ||
| 119 | # that libgit2 creates from its bundled deps/zlib. | ||
| 89 | --- a/src/cpp/shared_core/CMakeLists.txt | 120 | --- a/src/cpp/shared_core/CMakeLists.txt |
| 90 | +++ b/src/cpp/shared_core/CMakeLists.txt | 121 | +++ b/src/cpp/shared_core/CMakeLists.txt |
| 91 | @@ -46,6 +46,8 @@ | 122 | @@ -46,6 +46,9 @@ |
| 92 | set (SHARED_INCLUDE_DIRS | 123 | set (SHARED_INCLUDE_DIRS |
| 93 | include | 124 | include |
| 94 | ${BOOST_INCLUDEDIR} | 125 | ${BOOST_INCLUDEDIR} |
| 95 | + ${rapidjson_INCLUDE_DIRS} | 126 | + ${rapidjson_INCLUDE_DIRS} |
| 96 | + ${gsl_lite_INCLUDE_DIRS} | 127 | + ${gsl_lite_INCLUDE_DIRS} |
| 128 | + ${dtl_INCLUDE_DIRS} | ||
| 97 | ${EXT_SOURCE_DIR}) | 129 | ${EXT_SOURCE_DIR}) |
| 98 | 130 | ||
| 99 | # UNIX specific | 131 | # UNIX specific |
| 100 | @@ -93,7 +94,7 @@ | 132 | @@ -92,8 +94,8 @@ |
| 133 | target_link_libraries(rstudio-shared-core | ||
| 101 | ${Boost_LIBRARIES} | 134 | ${Boost_LIBRARIES} |
| 102 | ${SHARED_CORE_SYSTEM_LIBS} | 135 | ${SHARED_CORE_SYSTEM_LIBS} |
| 103 | - gsl::gsl-lite-v1 | 136 | - gsl::gsl-lite-v1 |
| 104 | + ${gsl_lite_LIBRARIES} | ||
| 105 | - rstudio-rapidjson) | 137 | - rstudio-rapidjson) |
| 138 | + ${gsl_lite_LIBRARIES} | ||
| 106 | + ${rapidjson_LIBRARIES}) | 139 | + ${rapidjson_LIBRARIES}) |
| 107 | 140 | ||
| 108 | # Define executable for running unit tests | 141 | # Define executable for running unit tests |
| 109 | if (RSTUDIO_UNIT_TESTS_ENABLED) | 142 | if (RSTUDIO_UNIT_TESTS_ENABLED) |
| 110 | --- a/src/cpp/core/CMakeLists.txt | 143 | --- a/src/cpp/core/CMakeLists.txt |
| 111 | +++ b/src/cpp/core/CMakeLists.txt | 144 | +++ b/src/cpp/core/CMakeLists.txt |
| 112 | @@ -318,6 +318,10 @@ | 145 | @@ -324,6 +324,11 @@ |
| 113 | ${EXT_SOURCE_DIR} | 146 | ${EXT_SOURCE_DIR} |
| 114 | ${CMAKE_CURRENT_BINARY_DIR} | 147 | ${CMAKE_CURRENT_BINARY_DIR} |
| 115 | ${TESTS_INCLUDE_DIR} | 148 | ${TESTS_INCLUDE_DIR} |
| @@ -117,40 +150,79 @@ Avoid building copies of existing libraries. Link with Guix-provided libraries | |||
| 117 | + ${tl-expected_INCLUDE_DIRS} | 150 | + ${tl-expected_INCLUDE_DIRS} |
| 118 | + ${gsl_lite_INCLUDE_DIRS} | 151 | + ${gsl_lite_INCLUDE_DIRS} |
| 119 | + ${websocketpp_INCLUDE_DIRS} | 152 | + ${websocketpp_INCLUDE_DIRS} |
| 153 | + ${dtl_INCLUDE_DIRS} | ||
| 120 | ) | 154 | ) |
| 121 | 155 | ||
| 122 | # define shared library | 156 | # define shared library |
| 123 | @@ -327,8 +329,8 @@ | 157 | @@ -333,10 +338,10 @@ |
| 124 | # link dependencies | 158 | # link dependencies |
| 125 | target_link_libraries(rstudio-core | 159 | target_link_libraries(rstudio-core |
| 126 | rstudio-shared-core | 160 | rstudio-shared-core |
| 161 | - rstudio-dtl | ||
| 127 | - rstudio-hunspell | 162 | - rstudio-hunspell |
| 163 | - rstudio-utfcpp | ||
| 128 | - rstudio-websocketpp | 164 | - rstudio-websocketpp |
| 165 | + ${dtl_LIBRARIES} | ||
| 166 | + ${utfcpp_LIBRARIES} | ||
| 129 | + ${hunspell_LIBRARIES} | 167 | + ${hunspell_LIBRARIES} |
| 130 | + ${websocketpp_LIBRARIES} | 168 | + ${websocketpp_LIBRARIES} |
| 131 | ${Boost_LIBRARIES} | 169 | ${Boost_LIBRARIES} |
| 132 | ${CRASHPAD_LIBRARIES} | ||
| 133 | ${SOCI_LIBRARIES} | 170 | ${SOCI_LIBRARIES} |
| 134 | @@ -361,7 +363,7 @@ | 171 | ${CORE_SYSTEM_LIBRARIES} |
| 135 | rstudio-shared-core | ||
| 136 | rstudio-core | ||
| 137 | rstudio-core-synctex | ||
| 138 | - rstudio-hunspell | ||
| 139 | + ${hunspell_LIBRARIES} | ||
| 140 | ${Boost_LIBRARIES} | ||
| 141 | ${SOCI_LIBRARIES} | ||
| 142 | ${CORE_SYSTEM_LIBRARIES} | ||
| 143 | --- a/src/cpp/CMakeLists.txt | 172 | --- a/src/cpp/CMakeLists.txt |
| 144 | +++ b/src/cpp/CMakeLists.txt | 173 | +++ b/src/cpp/CMakeLists.txt |
| 145 | @@ -492,5 +492,11 @@ | 174 | @@ -381,7 +381,14 @@ |
| 146 | 175 | ||
| 147 | find_package(OpenSSL REQUIRED) | 176 | find_package(OpenSSL REQUIRED) |
| 148 | include_directories(SYSTEM "${OPENSSL_INCLUDE_DIR}") | 177 | include_directories(SYSTEM "${OPENSSL_INCLUDE_DIR}") |
| 178 | - | ||
| 149 | + find_package(fmt REQUIRED) | 179 | + find_package(fmt REQUIRED) |
| 150 | + find_package(gsl-lite REQUIRED) | 180 | + find_package(gsl-lite REQUIRED) |
| 151 | + find_package(tl-expected REQUIRED) | 181 | + find_package(tl-expected REQUIRED) |
| 152 | + find_package(yaml-cpp REQUIRED) | 182 | + find_package(yaml-cpp REQUIRED) |
| 153 | + find_package(hunspell REQUIRED) | 183 | + find_package(hunspell REQUIRED) |
| 154 | + include_directories(SYSTEM "${hunspell_INCLUDE_DIRS}") | 184 | + include_directories(SYSTEM "${hunspell_INCLUDE_DIRS}") |
| 155 | 185 | + find_package(dtl REQUIRED) | |
| 186 | + include_directories(SYSTEM "${dtl_INCLUDE_DIRS}") | ||
| 156 | endif() | 187 | endif() |
| 188 | |||
| 189 | if(WIN32) | ||
| 190 | --- a/src/gwt/build.xml | ||
| 191 | +++ b/src/gwt/build.xml | ||
| 192 | @@ -87,18 +87,9 @@ | ||
| 193 | <!-- For automatically re-generating acesupport on change --> | ||
| 194 | <property name="acesupport.watcher.dir" value="${tools.dir}/acesupport-watcher"/> | ||
| 195 | |||
| 196 | - <!-- Detect git worktree and resolve main repo root for shared dependencies --> | ||
| 197 | - <exec executable="git" outputproperty="git.common.dir" | ||
| 198 | - failonerror="false" errorproperty="git.common.dir.error"> | ||
| 199 | - <arg value="rev-parse"/> | ||
| 200 | - <arg value="--path-format=absolute"/> | ||
| 201 | - <arg value="--git-common-dir"/> | ||
| 202 | - </exec> | ||
| 203 | - <dirname property="git.main.worktree" file="${git.common.dir}"/> | ||
| 204 | - | ||
| 205 | <!-- Path to GWT libraries --> | ||
| 206 | <set-if-exists property="lib.dir" value="../../dependencies/common/gwtproject"/> | ||
| 207 | - <set-if-exists property="lib.dir" value="${git.main.worktree}/dependencies/common/gwtproject"/> | ||
| 208 | + <set-if-exists property="lib.dir" value="./lib"/> | ||
| 209 | <set-if-exists property="lib.dir" value="/opt/rstudio-tools/dependencies/common/gwtproject"/> | ||
| 210 | <set-if-exists property="lib.dir" value="C:/rstudio-tools/dependencies/common/gwtproject"/> | ||
| 211 | |||
| 212 | @@ -235,7 +226,6 @@ | ||
| 213 | <!-- ensure version matches RSTUDIO_NODE_VERSION --> | ||
| 214 | <property name="node.version" value="18.18.2"/> | ||
| 215 | <set-if-exists property="node.dir" value="../../dependencies/common/node/${node.version}"/> | ||
| 216 | - <set-if-exists property="node.dir" value="${git.main.worktree}/dependencies/common/node/${node.version}"/> | ||
| 217 | <set-if-exists property="node.dir" value="/opt/rstudio-tools/dependencies/common/node/${node.version}"/> | ||
| 218 | <set-if-unset property="node.dir" value="/gnu/store/wb4d206jpiskjjp3jqv6ngqxrxvmdjw4-node-22.14.0"/> | ||
| 219 | |||
| 220 | @@ -253,7 +243,7 @@ | ||
| 221 | <set-if-exists property="panmirror.dir" value="./lib/quarto/apps/panmirror"/> | ||
| 222 | <property name="panmirror.build.dir" value="./www/js/panmirror"/> | ||
| 223 | |||
| 224 | - <target name="panmirror" description="Compile panmirror library"> | ||
| 225 | + <target name="panmirror" if="false" description="Compile panmirror library"> | ||
| 226 | |||
| 227 | <!-- Make sure a default value for panmirror.minify is set --> | ||
| 228 | <condition property="panmirror.minify" value="true"> | ||
diff --git a/patches/rstudio-server-multi-version/0001-handleClientInit-Store-R-versions-in-sessionInfo.patch b/patches/rstudio-server-multi-version/0001-handleClientInit-Store-R-versions-in-sessionInfo.patch index ea0573a..8f45779 100644 --- a/patches/rstudio-server-multi-version/0001-handleClientInit-Store-R-versions-in-sessionInfo.patch +++ b/patches/rstudio-server-multi-version/0001-handleClientInit-Store-R-versions-in-sessionInfo.patch | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | From 72b511ab4ab4bd60cabb54c66fe3e78d669791fb Mon Sep 17 00:00:00 2001 | 1 | From d2d45cebfcbbdebd6997f9663b029f834ae6d7c7 Mon Sep 17 00:00:00 2001 |
| 2 | From: Ricardo Wurmus <rekado@elephly.net> | 2 | From: Ricardo Wurmus <rekado@elephly.net> |
| 3 | Date: Fri, 18 Dec 2020 10:26:44 +0100 | 3 | Date: Fri, 18 Dec 2020 10:26:44 +0100 |
| 4 | Subject: [PATCH 1/7] handleClientInit: Store R versions in sessionInfo. | 4 | Subject: [PATCH 1/7] handleClientInit: Store R versions in sessionInfo. |
| @@ -15,7 +15,7 @@ r_versions_info->available_r_versions. | |||
| 15 | 1 file changed, 29 insertions(+), 6 deletions(-) | 15 | 1 file changed, 29 insertions(+), 6 deletions(-) |
| 16 | 16 | ||
| 17 | diff --git a/src/cpp/session/SessionClientInit.cpp b/src/cpp/session/SessionClientInit.cpp | 17 | diff --git a/src/cpp/session/SessionClientInit.cpp b/src/cpp/session/SessionClientInit.cpp |
| 18 | index 5610f4cffd..649f648e25 100644 | 18 | index 06ec9c20ec..f2ed4790e0 100644 |
| 19 | --- a/src/cpp/session/SessionClientInit.cpp | 19 | --- a/src/cpp/session/SessionClientInit.cpp |
| 20 | +++ b/src/cpp/session/SessionClientInit.cpp | 20 | +++ b/src/cpp/session/SessionClientInit.cpp |
| 21 | @@ -2,6 +2,7 @@ | 21 | @@ -2,6 +2,7 @@ |
| @@ -26,16 +26,16 @@ index 5610f4cffd..649f648e25 100644 | |||
| 26 | * | 26 | * |
| 27 | * Unless you have received this program directly from Posit Software pursuant | 27 | * Unless you have received this program directly from Posit Software pursuant |
| 28 | * to the terms of a commercial license agreement with Posit Software, then | 28 | * to the terms of a commercial license agreement with Posit Software, then |
| 29 | @@ -63,6 +64,8 @@ | 29 | @@ -66,6 +67,8 @@ |
| 30 | #include <core/r_util/RSessionContext.hpp> | ||
| 31 | #include <core/system/Environment.hpp> | 30 | #include <core/system/Environment.hpp> |
| 31 | #include <core/system/Locale.hpp> | ||
| 32 | 32 | ||
| 33 | +#include <server_core/RVersionsScanner.hpp> | 33 | +#include <server_core/RVersionsScanner.hpp> |
| 34 | + | 34 | + |
| 35 | #include <session/SessionConsoleProcess.hpp> | 35 | #include <session/SessionConsoleProcess.hpp> |
| 36 | #include <session/SessionClientEventService.hpp> | 36 | #include <session/SessionClientEventService.hpp> |
| 37 | #include <session/SessionHttpConnection.hpp> | 37 | #include <session/SessionHttpConnection.hpp> |
| 38 | @@ -573,12 +576,32 @@ void handleClientInit(const boost::function<void()>& initFunction, | 38 | @@ -597,12 +600,32 @@ void handleClientInit(const boost::function<void()>& initFunction, |
| 39 | 39 | ||
| 40 | sessionInfo["multi_session"] = options.multiSession(); | 40 | sessionInfo["multi_session"] = options.multiSession(); |
| 41 | 41 | ||
| @@ -75,5 +75,5 @@ index 5610f4cffd..649f648e25 100644 | |||
| 75 | sessionInfo["show_user_home_page"] = options.showUserHomePage(); | 75 | sessionInfo["show_user_home_page"] = options.showUserHomePage(); |
| 76 | sessionInfo["user_home_page_url"] = json::Value(); | 76 | sessionInfo["user_home_page_url"] = json::Value(); |
| 77 | -- | 77 | -- |
| 78 | 2.52.0 | 78 | 2.54.0 |
| 79 | 79 | ||
diff --git a/patches/rstudio-server-multi-version/0002-launchAndTrackSession-Configure-R-version-from-activ.patch b/patches/rstudio-server-multi-version/0002-launchAndTrackSession-Configure-R-version-from-activ.patch index b39088c..3e75fdb 100644 --- a/patches/rstudio-server-multi-version/0002-launchAndTrackSession-Configure-R-version-from-activ.patch +++ b/patches/rstudio-server-multi-version/0002-launchAndTrackSession-Configure-R-version-from-activ.patch | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | From 2005f097b76582e5781a32aafa7cfcf35e369e7b Mon Sep 17 00:00:00 2001 | 1 | From faf9b22bc1caa538009356a3be1f0ee3ac8205f0 Mon Sep 17 00:00:00 2001 |
| 2 | From: Ricardo Wurmus <rekado@elephly.net> | 2 | From: Ricardo Wurmus <rekado@elephly.net> |
| 3 | Date: Fri, 18 Dec 2020 10:32:01 +0100 | 3 | Date: Fri, 18 Dec 2020 10:32:01 +0100 |
| 4 | Subject: [PATCH 2/7] launchAndTrackSession: Configure R version from active | 4 | Subject: [PATCH 2/7] launchAndTrackSession: Configure R version from active |
| @@ -20,11 +20,11 @@ procedure to configure the R environment using the R version that has | |||
| 20 | been recorded in the active session. | 20 | been recorded in the active session. |
| 21 | (launchAndTrackSession): Register loadRVersion as a config filter. | 21 | (launchAndTrackSession): Register loadRVersion as a config filter. |
| 22 | --- | 22 | --- |
| 23 | .../server/session/ServerSessionManager.cpp | 47 +++++++++++++++++++ | 23 | .../server/session/ServerSessionManager.cpp | 49 +++++++++++++++++++ |
| 24 | 1 file changed, 47 insertions(+) | 24 | 1 file changed, 49 insertions(+) |
| 25 | 25 | ||
| 26 | diff --git a/src/cpp/server/session/ServerSessionManager.cpp b/src/cpp/server/session/ServerSessionManager.cpp | 26 | diff --git a/src/cpp/server/session/ServerSessionManager.cpp b/src/cpp/server/session/ServerSessionManager.cpp |
| 27 | index ab7aab1842..fa67ed0b56 100644 | 27 | index 17bcd10b56..e107b89dff 100644 |
| 28 | --- a/src/cpp/server/session/ServerSessionManager.cpp | 28 | --- a/src/cpp/server/session/ServerSessionManager.cpp |
| 29 | +++ b/src/cpp/server/session/ServerSessionManager.cpp | 29 | +++ b/src/cpp/server/session/ServerSessionManager.cpp |
| 30 | @@ -2,6 +2,7 @@ | 30 | @@ -2,6 +2,7 @@ |
| @@ -35,7 +35,15 @@ index ab7aab1842..fa67ed0b56 100644 | |||
| 35 | * | 35 | * |
| 36 | * Unless you have received this program directly from Posit Software pursuant | 36 | * Unless you have received this program directly from Posit Software pursuant |
| 37 | * to the terms of a commercial license agreement with Posit Software, then | 37 | * to the terms of a commercial license agreement with Posit Software, then |
| 38 | @@ -24,10 +25,14 @@ | 38 | @@ -14,6 +15,7 @@ |
| 39 | */ | ||
| 40 | |||
| 41 | #include <server/session/ServerSessionManager.hpp> | ||
| 42 | +#include <session/SessionScopes.hpp> | ||
| 43 | |||
| 44 | #include <boost/format.hpp> | ||
| 45 | |||
| 46 | @@ -22,10 +24,14 @@ | ||
| 39 | #include <core/SocketRpc.hpp> | 47 | #include <core/SocketRpc.hpp> |
| 40 | #include <core/system/System.hpp> | 48 | #include <core/system/System.hpp> |
| 41 | #include <core/system/Process.hpp> | 49 | #include <core/system/Process.hpp> |
| @@ -50,7 +58,7 @@ index ab7aab1842..fa67ed0b56 100644 | |||
| 50 | #include <session/SessionConstants.hpp> | 58 | #include <session/SessionConstants.hpp> |
| 51 | 59 | ||
| 52 | #include <monitor/MonitorClient.hpp> | 60 | #include <monitor/MonitorClient.hpp> |
| 53 | @@ -373,6 +378,45 @@ void setProcessConfigFilter(const core::system::ProcessConfigFilter& filter) | 61 | @@ -380,6 +386,46 @@ void setProcessConfigFilter(const core::system::ProcessConfigFilter& filter) |
| 54 | END_LOCK_MUTEX | 62 | END_LOCK_MUTEX |
| 55 | } | 63 | } |
| 56 | 64 | ||
| @@ -60,7 +68,8 @@ index ab7aab1842..fa67ed0b56 100644 | |||
| 60 | + FilePath storageDir = | 68 | + FilePath storageDir = |
| 61 | + system::xdg::userDataDir(user.getUsername(), user.getHomePath()); | 69 | + system::xdg::userDataDir(user.getUsername(), user.getHomePath()); |
| 62 | + std::shared_ptr<r_util::IActiveSessionsStorage> sessionStorage = | 70 | + std::shared_ptr<r_util::IActiveSessionsStorage> sessionStorage = |
| 63 | + std::shared_ptr<r_util::IActiveSessionsStorage>(new r_util::FileActiveSessionsStorage(storageDir)); | 71 | + std::shared_ptr<r_util::IActiveSessionsStorage>(new r_util::FileActiveSessionsStorage(storageDir, rstudio::session::filePathToProjectId(storageDir, FilePath(server::options().getOverlayOption(kSessionSharedStoragePath))))); |
| 72 | + | ||
| 64 | + std::unique_ptr<r_util::ActiveSessions> activeSessions = | 73 | + std::unique_ptr<r_util::ActiveSessions> activeSessions = |
| 65 | + std::unique_ptr<r_util::ActiveSessions>(new r_util::ActiveSessions(sessionStorage, storageDir)); | 74 | + std::unique_ptr<r_util::ActiveSessions>(new r_util::ActiveSessions(sessionStorage, storageDir)); |
| 66 | + std::vector<boost::shared_ptr<r_util::ActiveSession> > sessions = | 75 | + std::vector<boost::shared_ptr<r_util::ActiveSession> > sessions = |
| @@ -96,7 +105,7 @@ index ab7aab1842..fa67ed0b56 100644 | |||
| 96 | // default session launcher -- does the launch then tracks the pid | 105 | // default session launcher -- does the launch then tracks the pid |
| 97 | // for later reaping | 106 | // for later reaping |
| 98 | Error SessionManager::launchAndTrackSession( | 107 | Error SessionManager::launchAndTrackSession( |
| 99 | @@ -383,6 +427,9 @@ Error SessionManager::launchAndTrackSession( | 108 | @@ -390,6 +436,9 @@ Error SessionManager::launchAndTrackSession( |
| 100 | using namespace rstudio::core::system; | 109 | using namespace rstudio::core::system; |
| 101 | std::string runAsUser = realUserIsRoot() ? profile.context.username : ""; | 110 | std::string runAsUser = realUserIsRoot() ? profile.context.username : ""; |
| 102 | 111 | ||
| @@ -107,5 +116,5 @@ index ab7aab1842..fa67ed0b56 100644 | |||
| 107 | LOCK_MUTEX(s_configFilterMutex) | 116 | LOCK_MUTEX(s_configFilterMutex) |
| 108 | { | 117 | { |
| 109 | -- | 118 | -- |
| 110 | 2.52.0 | 119 | 2.54.0 |
| 111 | 120 | ||
diff --git a/patches/rstudio-server-multi-version/0003-NewProjectWizard-Unhide-version-selector-widget.patch b/patches/rstudio-server-multi-version/0003-NewProjectWizard-Unhide-version-selector-widget.patch index 6b1c9d6..69289ef 100644 --- a/patches/rstudio-server-multi-version/0003-NewProjectWizard-Unhide-version-selector-widget.patch +++ b/patches/rstudio-server-multi-version/0003-NewProjectWizard-Unhide-version-selector-widget.patch | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | From 007b29e0af1c6132d80f9ee81799d1c3519ece2d Mon Sep 17 00:00:00 2001 | 1 | From b8117de5cf4117f4be4886fcef60f05adf3f7c53 Mon Sep 17 00:00:00 2001 |
| 2 | From: Ricardo Wurmus <rekado@elephly.net> | 2 | From: Ricardo Wurmus <rekado@elephly.net> |
| 3 | Date: Fri, 18 Dec 2020 10:35:39 +0100 | 3 | Date: Fri, 18 Dec 2020 10:35:39 +0100 |
| 4 | Subject: [PATCH 3/7] NewProjectWizard: Unhide version selector widget. | 4 | Subject: [PATCH 3/7] NewProjectWizard: Unhide version selector widget. |
| @@ -11,10 +11,10 @@ Do not hide the widget. | |||
| 11 | 1 file changed, 1 deletion(-) | 11 | 1 file changed, 1 deletion(-) |
| 12 | 12 | ||
| 13 | diff --git a/src/gwt/src/org/rstudio/studio/client/projects/ui/newproject/NewProjectWizard.java b/src/gwt/src/org/rstudio/studio/client/projects/ui/newproject/NewProjectWizard.java | 13 | diff --git a/src/gwt/src/org/rstudio/studio/client/projects/ui/newproject/NewProjectWizard.java b/src/gwt/src/org/rstudio/studio/client/projects/ui/newproject/NewProjectWizard.java |
| 14 | index 0a5713495e..344c2868b1 100644 | 14 | index cb2cbbd74e..ac61ff9695 100644 |
| 15 | --- a/src/gwt/src/org/rstudio/studio/client/projects/ui/newproject/NewProjectWizard.java | 15 | --- a/src/gwt/src/org/rstudio/studio/client/projects/ui/newproject/NewProjectWizard.java |
| 16 | +++ b/src/gwt/src/org/rstudio/studio/client/projects/ui/newproject/NewProjectWizard.java | 16 | +++ b/src/gwt/src/org/rstudio/studio/client/projects/ui/newproject/NewProjectWizard.java |
| 17 | @@ -71,7 +71,6 @@ public class NewProjectWizard extends Wizard<NewProjectInput,NewProjectResult> | 17 | @@ -73,7 +73,6 @@ public class NewProjectWizard extends Wizard<NewProjectInput,NewProjectResult> |
| 18 | rVersions.getRVersionSpec()); | 18 | rVersions.getRVersionSpec()); |
| 19 | addLeftWidget(rVersionSelector_); | 19 | addLeftWidget(rVersionSelector_); |
| 20 | rVersionSelector_.getElement().getStyle().setMarginRight(8, Unit.PX); | 20 | rVersionSelector_.getElement().getStyle().setMarginRight(8, Unit.PX); |
| @@ -23,5 +23,5 @@ index 0a5713495e..344c2868b1 100644 | |||
| 23 | 23 | ||
| 24 | openInNewWindow_ = new CheckBox(constants_.openNewSessionLabel()); | 24 | openInNewWindow_ = new CheckBox(constants_.openNewSessionLabel()); |
| 25 | -- | 25 | -- |
| 26 | 2.52.0 | 26 | 2.54.0 |
| 27 | 27 | ||
diff --git a/patches/rstudio-server-multi-version/0004-handleConnection-Switch-R-version-when-switching-pro.patch b/patches/rstudio-server-multi-version/0004-handleConnection-Switch-R-version-when-switching-pro.patch index c3af0e0..3531ed6 100644 --- a/patches/rstudio-server-multi-version/0004-handleConnection-Switch-R-version-when-switching-pro.patch +++ b/patches/rstudio-server-multi-version/0004-handleConnection-Switch-R-version-when-switching-pro.patch | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | From b31dfc6f120c01ff6612b682b56d92449eb82ef8 Mon Sep 17 00:00:00 2001 | 1 | From 296b8aa60025f88f34167f35d257cc401352d231 Mon Sep 17 00:00:00 2001 |
| 2 | From: Ricardo Wurmus <rekado@elephly.net> | 2 | From: Ricardo Wurmus <rekado@elephly.net> |
| 3 | Date: Sat, 19 Dec 2020 00:57:26 +0100 | 3 | Date: Sat, 19 Dec 2020 00:57:26 +0100 |
| 4 | Subject: [PATCH 4/7] handleConnection: Switch R version when switching | 4 | Subject: [PATCH 4/7] handleConnection: Switch R version when switching |
| @@ -13,7 +13,7 @@ project switch back to the default. | |||
| 13 | 2 files changed, 30 insertions(+), 5 deletions(-) | 13 | 2 files changed, 30 insertions(+), 5 deletions(-) |
| 14 | 14 | ||
| 15 | diff --git a/src/cpp/session/SessionHttpMethods.cpp b/src/cpp/session/SessionHttpMethods.cpp | 15 | diff --git a/src/cpp/session/SessionHttpMethods.cpp b/src/cpp/session/SessionHttpMethods.cpp |
| 16 | index 2b313f2b77..19669a3623 100644 | 16 | index 01e3ffb12f..133ae4abad 100644 |
| 17 | --- a/src/cpp/session/SessionHttpMethods.cpp | 17 | --- a/src/cpp/session/SessionHttpMethods.cpp |
| 18 | +++ b/src/cpp/session/SessionHttpMethods.cpp | 18 | +++ b/src/cpp/session/SessionHttpMethods.cpp |
| 19 | @@ -2,6 +2,7 @@ | 19 | @@ -2,6 +2,7 @@ |
| @@ -24,7 +24,7 @@ index 2b313f2b77..19669a3623 100644 | |||
| 24 | * | 24 | * |
| 25 | * Unless you have received this program directly from Posit Software pursuant | 25 | * Unless you have received this program directly from Posit Software pursuant |
| 26 | * to the terms of a commercial license agreement with Posit Software, then | 26 | * to the terms of a commercial license agreement with Posit Software, then |
| 27 | @@ -711,6 +712,33 @@ void handleConnection(boost::shared_ptr<HttpConnection> ptrConnection, | 27 | @@ -734,6 +735,33 @@ void handleConnection(boost::shared_ptr<HttpConnection> ptrConnection, |
| 28 | activeSession().setWorkingDir(projDir); | 28 | activeSession().setWorkingDir(projDir); |
| 29 | } | 29 | } |
| 30 | 30 | ||
| @@ -58,7 +58,7 @@ index 2b313f2b77..19669a3623 100644 | |||
| 58 | if (options().switchProjectsWithUrl()) | 58 | if (options().switchProjectsWithUrl()) |
| 59 | { | 59 | { |
| 60 | r_util::SessionScope scope; | 60 | r_util::SessionScope scope; |
| 61 | @@ -763,10 +791,6 @@ void handleConnection(boost::shared_ptr<HttpConnection> ptrConnection, | 61 | @@ -789,10 +817,6 @@ void handleConnection(boost::shared_ptr<HttpConnection> ptrConnection, |
| 62 | { | 62 | { |
| 63 | FilePath projFile = resolveAliasedPath(switchToProject); | 63 | FilePath projFile = resolveAliasedPath(switchToProject); |
| 64 | std::string projDir = createAliasedPath(projFile.getParent()); | 64 | std::string projDir = createAliasedPath(projFile.getParent()); |
| @@ -70,10 +70,10 @@ index 2b313f2b77..19669a3623 100644 | |||
| 70 | module_context::sharedProjectScratchPath(), | 70 | module_context::sharedProjectScratchPath(), |
| 71 | version, | 71 | version, |
| 72 | diff --git a/src/gwt/src/org/rstudio/studio/client/projects/Projects.java b/src/gwt/src/org/rstudio/studio/client/projects/Projects.java | 72 | diff --git a/src/gwt/src/org/rstudio/studio/client/projects/Projects.java b/src/gwt/src/org/rstudio/studio/client/projects/Projects.java |
| 73 | index 0ab01f9945..26c332b58d 100644 | 73 | index b369c97c24..066a0c9db0 100644 |
| 74 | --- a/src/gwt/src/org/rstudio/studio/client/projects/Projects.java | 74 | --- a/src/gwt/src/org/rstudio/studio/client/projects/Projects.java |
| 75 | +++ b/src/gwt/src/org/rstudio/studio/client/projects/Projects.java | 75 | +++ b/src/gwt/src/org/rstudio/studio/client/projects/Projects.java |
| 76 | @@ -1131,7 +1131,8 @@ public class Projects implements OpenProjectFileEvent.Handler, | 76 | @@ -1184,7 +1184,8 @@ public class Projects implements OpenProjectFileEvent.Handler, |
| 77 | { | 77 | { |
| 78 | // perform quit | 78 | // perform quit |
| 79 | applicationQuit_.performQuit(null, saveChanges, | 79 | applicationQuit_.performQuit(null, saveChanges, |
| @@ -84,5 +84,5 @@ index 0ab01f9945..26c332b58d 100644 | |||
| 84 | }; | 84 | }; |
| 85 | 85 | ||
| 86 | -- | 86 | -- |
| 87 | 2.52.0 | 87 | 2.54.0 |
| 88 | 88 | ||
diff --git a/patches/rstudio-server-multi-version/0005-Add-version-switcher-widget-to-toolbar.patch b/patches/rstudio-server-multi-version/0005-Add-version-switcher-widget-to-toolbar.patch index 52d7164..dfb8400 100644 --- a/patches/rstudio-server-multi-version/0005-Add-version-switcher-widget-to-toolbar.patch +++ b/patches/rstudio-server-multi-version/0005-Add-version-switcher-widget-to-toolbar.patch | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | From 6c7733f8eca28ad8276c1e3d7236162bb0461d8f Mon Sep 17 00:00:00 2001 | 1 | From fdca633e307d4915fc99ba44c9bbc823b64c75a2 Mon Sep 17 00:00:00 2001 |
| 2 | From: Ricardo Wurmus <rekado@elephly.net> | 2 | From: Ricardo Wurmus <rekado@elephly.net> |
| 3 | Date: Sat, 19 Dec 2020 23:33:16 +0100 | 3 | Date: Sat, 19 Dec 2020 23:33:16 +0100 |
| 4 | Subject: [PATCH 5/7] Add version switcher widget to toolbar. | 4 | Subject: [PATCH 5/7] Add version switcher widget to toolbar. |
| @@ -14,12 +14,12 @@ Subject: [PATCH 5/7] Add version switcher widget to toolbar. | |||
| 14 | create mode 100644 src/gwt/src/org/rstudio/studio/client/application/ui/RVersionPopupMenu.java | 14 | create mode 100644 src/gwt/src/org/rstudio/studio/client/application/ui/RVersionPopupMenu.java |
| 15 | 15 | ||
| 16 | diff --git a/src/gwt/src/org/rstudio/core/client/ElementIds.java b/src/gwt/src/org/rstudio/core/client/ElementIds.java | 16 | diff --git a/src/gwt/src/org/rstudio/core/client/ElementIds.java b/src/gwt/src/org/rstudio/core/client/ElementIds.java |
| 17 | index 4af0d49c82..8f3de94a97 100644 | 17 | index 531dfb43d8..36297de2a8 100644 |
| 18 | --- a/src/gwt/src/org/rstudio/core/client/ElementIds.java | 18 | --- a/src/gwt/src/org/rstudio/core/client/ElementIds.java |
| 19 | +++ b/src/gwt/src/org/rstudio/core/client/ElementIds.java | 19 | +++ b/src/gwt/src/org/rstudio/core/client/ElementIds.java |
| 20 | @@ -384,6 +384,8 @@ public class ElementIds | 20 | @@ -394,6 +394,8 @@ public class ElementIds |
| 21 | public final static String PROJECT_MENUBUTTON_TOOLBAR_SUFFIX = "toolbar"; | 21 | public final static String SIDEBAR_TOGGLE_BUTTON = "sidebar_toggle_button"; |
| 22 | public final static String PROJECT_MENUBUTTON_MENUBAR_SUFFIX = "menubar"; | 22 | public final static String ASSISTANT_TOGGLE_BUTTON = "assistant_toggle_button"; |
| 23 | 23 | ||
| 24 | + public final static String VERSION_MENUBUTTON = "version_menubutton"; | 24 | + public final static String VERSION_MENUBUTTON = "version_menubutton"; |
| 25 | + | 25 | + |
| @@ -27,10 +27,10 @@ index 4af0d49c82..8f3de94a97 100644 | |||
| 27 | public final static String BUILD_MORE_MENUBUTTON = "build_more_menubutton"; | 27 | public final static String BUILD_MORE_MENUBUTTON = "build_more_menubutton"; |
| 28 | public final static String BUILD_BOOKDOWN_MENUBUTTON = "build_bookdown_menubutton"; | 28 | public final static String BUILD_BOOKDOWN_MENUBUTTON = "build_bookdown_menubutton"; |
| 29 | diff --git a/src/gwt/src/org/rstudio/studio/client/RStudioGinjector.java b/src/gwt/src/org/rstudio/studio/client/RStudioGinjector.java | 29 | diff --git a/src/gwt/src/org/rstudio/studio/client/RStudioGinjector.java b/src/gwt/src/org/rstudio/studio/client/RStudioGinjector.java |
| 30 | index 8d1a11014d..7422e2da56 100644 | 30 | index 91a398836b..5a082a0f03 100644 |
| 31 | --- a/src/gwt/src/org/rstudio/studio/client/RStudioGinjector.java | 31 | --- a/src/gwt/src/org/rstudio/studio/client/RStudioGinjector.java |
| 32 | +++ b/src/gwt/src/org/rstudio/studio/client/RStudioGinjector.java | 32 | +++ b/src/gwt/src/org/rstudio/studio/client/RStudioGinjector.java |
| 33 | @@ -37,6 +37,7 @@ import org.rstudio.studio.client.application.AriaLiveService; | 33 | @@ -39,6 +39,7 @@ import org.rstudio.studio.client.application.LoggedOutDialog; |
| 34 | import org.rstudio.studio.client.application.events.EventBus; | 34 | import org.rstudio.studio.client.application.events.EventBus; |
| 35 | import org.rstudio.studio.client.application.ui.AboutDialog; | 35 | import org.rstudio.studio.client.application.ui.AboutDialog; |
| 36 | import org.rstudio.studio.client.application.ui.ProjectPopupMenu; | 36 | import org.rstudio.studio.client.application.ui.ProjectPopupMenu; |
| @@ -38,7 +38,7 @@ index 8d1a11014d..7422e2da56 100644 | |||
| 38 | import org.rstudio.studio.client.application.ui.addins.AddinsToolbarButton; | 38 | import org.rstudio.studio.client.application.ui.addins.AddinsToolbarButton; |
| 39 | import org.rstudio.studio.client.application.ui.impl.DesktopApplicationHeader; | 39 | import org.rstudio.studio.client.application.ui.impl.DesktopApplicationHeader; |
| 40 | import org.rstudio.studio.client.application.ui.impl.WebApplicationHeader; | 40 | import org.rstudio.studio.client.application.ui.impl.WebApplicationHeader; |
| 41 | @@ -235,6 +236,7 @@ public interface RStudioGinjector extends Ginjector | 41 | @@ -242,6 +243,7 @@ public interface RStudioGinjector extends Ginjector |
| 42 | void injectMembers(CodeFilesList codeFilesList); | 42 | void injectMembers(CodeFilesList codeFilesList); |
| 43 | void injectMembers(ToolbarPopupMenu toolbarPopupMenu); | 43 | void injectMembers(ToolbarPopupMenu toolbarPopupMenu); |
| 44 | void injectMembers(ProjectPopupMenu projectPopupMenu); | 44 | void injectMembers(ProjectPopupMenu projectPopupMenu); |
| @@ -47,10 +47,10 @@ index 8d1a11014d..7422e2da56 100644 | |||
| 47 | void injectMembers(TextEditingTargetPresentationHelper presHelper); | 47 | void injectMembers(TextEditingTargetPresentationHelper presHelper); |
| 48 | void injectMembers(TextEditingTargetRMarkdownHelper rmarkdownHelper); | 48 | void injectMembers(TextEditingTargetRMarkdownHelper rmarkdownHelper); |
| 49 | diff --git a/src/gwt/src/org/rstudio/studio/client/application/ui/GlobalToolbar.java b/src/gwt/src/org/rstudio/studio/client/application/ui/GlobalToolbar.java | 49 | diff --git a/src/gwt/src/org/rstudio/studio/client/application/ui/GlobalToolbar.java b/src/gwt/src/org/rstudio/studio/client/application/ui/GlobalToolbar.java |
| 50 | index 65a2842c89..f22a1f0254 100644 | 50 | index 82e2de1941..94332f29db 100644 |
| 51 | --- a/src/gwt/src/org/rstudio/studio/client/application/ui/GlobalToolbar.java | 51 | --- a/src/gwt/src/org/rstudio/studio/client/application/ui/GlobalToolbar.java |
| 52 | +++ b/src/gwt/src/org/rstudio/studio/client/application/ui/GlobalToolbar.java | 52 | +++ b/src/gwt/src/org/rstudio/studio/client/application/ui/GlobalToolbar.java |
| 53 | @@ -240,6 +240,10 @@ public class GlobalToolbar extends Toolbar | 53 | @@ -349,6 +349,10 @@ public class GlobalToolbar extends Toolbar |
| 54 | ProjectPopupMenu projectMenu = new ProjectPopupMenu( | 54 | ProjectPopupMenu projectMenu = new ProjectPopupMenu( |
| 55 | sessionInfo, commands_, ElementIds.PROJECT_MENUBUTTON_TOOLBAR_SUFFIX); | 55 | sessionInfo, commands_, ElementIds.PROJECT_MENUBUTTON_TOOLBAR_SUFFIX); |
| 56 | addRightWidget(projectMenu.getToolbarButton()); | 56 | addRightWidget(projectMenu.getToolbarButton()); |
| @@ -230,10 +230,10 @@ index 0000000000..eedc5996ae | |||
| 230 | + private EventBus events_; | 230 | + private EventBus events_; |
| 231 | +} | 231 | +} |
| 232 | diff --git a/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.cmd.xml b/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.cmd.xml | 232 | diff --git a/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.cmd.xml b/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.cmd.xml |
| 233 | index 2a5b6e43af..785adfcb35 100644 | 233 | index 20322193cd..361864d129 100644 |
| 234 | --- a/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.cmd.xml | 234 | --- a/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.cmd.xml |
| 235 | +++ b/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.cmd.xml | 235 | +++ b/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.cmd.xml |
| 236 | @@ -1368,6 +1368,17 @@ See `/src/gwt/tools/i18n-helpers/README.md`. | 236 | @@ -1387,6 +1387,17 @@ See `/src/gwt/tools/i18n-helpers/README.md`. |
| 237 | desc="Edit options for the current project" | 237 | desc="Edit options for the current project" |
| 238 | windowMode="main"/> | 238 | windowMode="main"/> |
| 239 | 239 | ||
| @@ -252,7 +252,7 @@ index 2a5b6e43af..785adfcb35 100644 | |||
| 252 | menuLabel="" | 252 | menuLabel="" |
| 253 | buttonLabel="" | 253 | buttonLabel="" |
| 254 | diff --git a/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.java b/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.java | 254 | diff --git a/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.java b/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.java |
| 255 | index ff6e358843..536994086f 100644 | 255 | index adc2c49d0e..627a0292ab 100644 |
| 256 | --- a/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.java | 256 | --- a/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.java |
| 257 | +++ b/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.java | 257 | +++ b/src/gwt/src/org/rstudio/studio/client/workbench/commands/Commands.java |
| 258 | @@ -2,6 +2,7 @@ | 258 | @@ -2,6 +2,7 @@ |
| @@ -281,7 +281,7 @@ index ff6e358843..536994086f 100644 | |||
| 281 | + | 281 | + |
| 282 | // Console | 282 | // Console |
| 283 | public abstract AppCommand consoleClear(); | 283 | public abstract AppCommand consoleClear(); |
| 284 | public abstract AppCommand interruptR(); | 284 | public abstract AppCommand consoleFind(); |
| 285 | -- | 285 | -- |
| 286 | 2.52.0 | 286 | 2.54.0 |
| 287 | 287 | ||
diff --git a/patches/rstudio-server-multi-version/0006-Look-at-.local-share-rstudio-r-versions-for-custom-R.patch b/patches/rstudio-server-multi-version/0006-Look-at-.local-share-rstudio-r-versions-for-custom-R.patch index 6fcd3cf..faf2c0b 100644 --- a/patches/rstudio-server-multi-version/0006-Look-at-.local-share-rstudio-r-versions-for-custom-R.patch +++ b/patches/rstudio-server-multi-version/0006-Look-at-.local-share-rstudio-r-versions-for-custom-R.patch | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | From ccc0dac68ed530e563662a3a5d72b8f05daadf00 Mon Sep 17 00:00:00 2001 | 1 | From 08f9713c698072e7ffc33c2cec52197863834196 Mon Sep 17 00:00:00 2001 |
| 2 | From: Ricardo Wurmus <rekado@elephly.net> | 2 | From: Ricardo Wurmus <rekado@elephly.net> |
| 3 | Date: Sun, 20 Dec 2020 00:25:42 +0100 | 3 | Date: Sun, 20 Dec 2020 00:25:42 +0100 |
| 4 | Subject: [PATCH 6/7] Look at ~/.local/share/rstudio/r-versions for custom R | 4 | Subject: [PATCH 6/7] Look at ~/.local/share/rstudio/r-versions for custom R |
| @@ -68,10 +68,10 @@ index ee06a3d536..1bb653b065 100644 | |||
| 68 | bool detectRVersion(const core::FilePath& rScriptPath, | 68 | bool detectRVersion(const core::FilePath& rScriptPath, |
| 69 | core::r_util::RVersion* pVersion, | 69 | core::r_util::RVersion* pVersion, |
| 70 | diff --git a/src/cpp/session/SessionClientInit.cpp b/src/cpp/session/SessionClientInit.cpp | 70 | diff --git a/src/cpp/session/SessionClientInit.cpp b/src/cpp/session/SessionClientInit.cpp |
| 71 | index 649f648e25..a63f0942c7 100644 | 71 | index f2ed4790e0..a77bbb2186 100644 |
| 72 | --- a/src/cpp/session/SessionClientInit.cpp | 72 | --- a/src/cpp/session/SessionClientInit.cpp |
| 73 | +++ b/src/cpp/session/SessionClientInit.cpp | 73 | +++ b/src/cpp/session/SessionClientInit.cpp |
| 74 | @@ -577,8 +577,14 @@ void handleClientInit(const boost::function<void()>& initFunction, | 74 | @@ -601,8 +601,14 @@ void handleClientInit(const boost::function<void()>& initFunction, |
| 75 | sessionInfo["multi_session"] = options.multiSession(); | 75 | sessionInfo["multi_session"] = options.multiSession(); |
| 76 | 76 | ||
| 77 | // Read versions from /etc/rstudio/r-versions | 77 | // Read versions from /etc/rstudio/r-versions |
| @@ -88,5 +88,5 @@ index 649f648e25..a63f0942c7 100644 | |||
| 88 | { | 88 | { |
| 89 | json::Object rVersionJson; | 89 | json::Object rVersionJson; |
| 90 | -- | 90 | -- |
| 91 | 2.52.0 | 91 | 2.54.0 |
| 92 | 92 | ||
diff --git a/patches/rstudio-server-multi-version/0007-detectRLocationsUsingR-Restore-R_HOME-at-the-end.patch b/patches/rstudio-server-multi-version/0007-detectRLocationsUsingR-Restore-R_HOME-at-the-end.patch index aefa035..b4e8d1b 100644 --- a/patches/rstudio-server-multi-version/0007-detectRLocationsUsingR-Restore-R_HOME-at-the-end.patch +++ b/patches/rstudio-server-multi-version/0007-detectRLocationsUsingR-Restore-R_HOME-at-the-end.patch | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | From d24ecdaf549c3f35cc3ee32b5af3ccb70b1a45c4 Mon Sep 17 00:00:00 2001 | 1 | From 767399d1d3305cec2aea6b36517e5e74b521e3aa Mon Sep 17 00:00:00 2001 |
| 2 | From: Ricardo Wurmus <rekado@elephly.net> | 2 | From: Ricardo Wurmus <rekado@elephly.net> |
| 3 | Date: Sun, 20 Dec 2020 14:49:51 +0100 | 3 | Date: Sun, 20 Dec 2020 14:49:51 +0100 |
| 4 | Subject: [PATCH 7/7] detectRLocationsUsingR: Restore R_HOME at the end. | 4 | Subject: [PATCH 7/7] detectRLocationsUsingR: Restore R_HOME at the end. |
| @@ -11,7 +11,7 @@ process is calling it, and its R_HOME may not be unset. | |||
| 11 | 1 file changed, 3 insertions(+) | 11 | 1 file changed, 3 insertions(+) |
| 12 | 12 | ||
| 13 | diff --git a/src/cpp/core/r_util/REnvironmentPosix.cpp b/src/cpp/core/r_util/REnvironmentPosix.cpp | 13 | diff --git a/src/cpp/core/r_util/REnvironmentPosix.cpp b/src/cpp/core/r_util/REnvironmentPosix.cpp |
| 14 | index a4e964d49d..3fee33ff49 100644 | 14 | index 07ed73ec05..712e72f19e 100644 |
| 15 | --- a/src/cpp/core/r_util/REnvironmentPosix.cpp | 15 | --- a/src/cpp/core/r_util/REnvironmentPosix.cpp |
| 16 | +++ b/src/cpp/core/r_util/REnvironmentPosix.cpp | 16 | +++ b/src/cpp/core/r_util/REnvironmentPosix.cpp |
| 17 | @@ -493,6 +493,7 @@ bool detectRLocationsUsingR(const std::string& rScriptPath, | 17 | @@ -493,6 +493,7 @@ bool detectRLocationsUsingR(const std::string& rScriptPath, |
| @@ -32,5 +32,5 @@ index a4e964d49d..3fee33ff49 100644 | |||
| 32 | } | 32 | } |
| 33 | #endif | 33 | #endif |
| 34 | -- | 34 | -- |
| 35 | 2.52.0 | 35 | 2.54.0 |
| 36 | 36 | ||
