rstudio: update to 1.1.463.

This commit is contained in:
John 2018-12-14 14:38:55 +01:00 committed by maxice8
parent beb9ed3d82
commit 6a194e8951
No known key found for this signature in database
GPG key ID: 543B9D4F4299F06B
5 changed files with 864 additions and 5 deletions

View file

@ -0,0 +1,680 @@
--- /dev/null 2018-11-10 15:32:26.332997437 +1100
+++ src/cpp/core/include/core/BoostSignals.hpp 2018-11-17 21:24:35.285976284 +1100
@@ -0,0 +1,40 @@
+/*
+ * BoostSignals.hpp
+ *
+ * Copyright (C) 2009-18 by RStudio, Inc.
+ *
+ * Unless you have received this program directly from RStudio pursuant
+ * to the terms of a commercial license agreement with RStudio, then
+ * this program is licensed to you under the terms of version 3 of the
+ * GNU Affero General Public License. This program is distributed WITHOUT
+ * ANY EXPRESS OR IMPLIED WARRANTY, INCLUDING THOSE OF NON-INFRINGEMENT,
+ * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Please refer to the
+ * AGPL (http://www.gnu.org/licenses/agpl-3.0.txt) for more details.
+ *
+ */
+
+#ifndef CORE_RSTUDIO_BOOST_SIGNALS_HPP
+#define CORE_RSTUDIO_BOOST_SIGNALS_HPP
+
+#if RSTUDIO_BOOST_SIGNALS_VERSION == 1
+
+# include <boost/signals.hpp>
+# define RSTUDIO_BOOST_SIGNAL boost::signal
+# define RSTUDIO_BOOST_CONNECTION boost::signals::connection
+# define RSTUDIO_BOOST_SCOPED_CONNECTION boost::signals::scoped_connection
+# define RSTUDIO_BOOST_LAST_VALUE boost::last_value
+
+#elif RSTUDIO_BOOST_SIGNALS_VERSION == 2
+
+# include <boost/signals2.hpp>
+# define RSTUDIO_BOOST_SIGNAL boost::signals2::signal
+# define RSTUDIO_BOOST_CONNECTION boost::signals2::connection
+# define RSTUDIO_BOOST_SCOPED_CONNECTION boost::signals2::scoped_connection
+# define RSTUDIO_BOOST_LAST_VALUE boost::signals2::last_value
+
+#else
+# error "Unrecognized RSTUDIO_BOOST_SIGNALS_VERSION"
+#endif
+
+#endif // CORE_RSTUDIO_BOOST_SIGNALS_HPP
+
--- rstudio-1.1.463-orig/src/cpp/CMakeLists.txt 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/CMakeLists.txt 2018-11-17 21:24:35.285976284 +1100
@@ -208,6 +208,18 @@
message(STATUS "Using RStudio-provided Boost ${BOOST_VERSION}")
endif()
+# allow opt-in to using Boost.Signals2
+# TODO: remove this in RStudio v1.3 and port to signals2
+if(NOT RSTUDIO_BOOST_SIGNALS_VERSION)
+ if (BOOST_VERSION VERSION_LESS 1.69.0)
+ set(RSTUDIO_BOOST_SIGNALS_VERSION 1)
+ else()
+ set(RSTUDIO_BOOST_SIGNALS_VERSION 2)
+ endif()
+endif()
+
+message(STATUS "Using Booost.Signals version ${RSTUDIO_BOOST_SIGNALS_VERSION}")
+add_definitions(-DRSTUDIO_BOOST_SIGNALS_VERSION=${RSTUDIO_BOOST_SIGNALS_VERSION})
# add boost as system include directory
include_directories(SYSTEM ${Boost_INCLUDE_DIRS})
--- rstudio-1.1.463-orig/src/cpp/r/include/r/session/RConsoleHistory.hpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/r/include/r/session/RConsoleHistory.hpp 2018-11-17 21:24:35.285976284 +1100
@@ -20,8 +20,8 @@
#include <boost/utility.hpp>
#include <boost/circular_buffer.hpp>
-#include <boost/signal.hpp>
+#include <core/BoostSignals.hpp>
#include <core/json/Json.hpp>
namespace rstudio {
@@ -44,7 +44,7 @@
public:
typedef boost::circular_buffer<std::string>::value_type value_type;
typedef boost::circular_buffer<std::string>::const_iterator const_iterator;
- typedef boost::signal<void (const std::string&)> AddSignal;
+ typedef RSTUDIO_BOOST_SIGNAL<void (const std::string&)> AddSignal;
private:
ConsoleHistory();
@@ -86,8 +86,7 @@
core::Error loadFromFile(const core::FilePath& filePath, bool verifyFile);
core::Error saveToFile(const core::FilePath& filePath) const;
- boost::signals::connection connectOnAdd(
- const AddSignal::slot_function_type& slot)
+ RSTUDIO_BOOST_CONNECTION connectOnAdd(const AddSignal::slot_function_type& slot)
{
return onAdd_.connect(slot);
}
--- rstudio-1.1.463-orig/src/cpp/r/include/r/session/RGraphics.hpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/r/include/r/session/RGraphics.hpp 2018-11-17 21:24:35.286976293 +1100
@@ -19,6 +19,8 @@
#include <boost/system/error_code.hpp>
#include <boost/date_time/posix_time/ptime.hpp>
+#include <core/BoostSignals.hpp>
+
namespace rstudio {
namespace r {
namespace session {
@@ -56,8 +58,8 @@
#include <vector>
#include <boost/function.hpp>
-#include <boost/signal.hpp>
+#include <core/BoostSignals.hpp>
#include <core/Error.hpp>
#include <core/json/Json.hpp>
@@ -162,7 +164,7 @@
virtual void clear() = 0;
// subscribe to showManipulator event
- virtual boost::signal<void ()>& onShowManipulator() = 0;
+ virtual RSTUDIO_BOOST_SIGNAL<void ()>& onShowManipulator() = 0;
// set manipulator values
virtual void setPlotManipulatorValues(const core::json::Object& values) = 0;
--- rstudio-1.1.463-orig/src/cpp/r/session/graphics/RGraphicsPlotManager.cpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/r/session/graphics/RGraphicsPlotManager.cpp 2018-11-17 21:24:35.286976293 +1100
@@ -540,7 +540,7 @@
-boost::signal<void ()>& PlotManager::onShowManipulator()
+RSTUDIO_BOOST_SIGNAL<void ()>& PlotManager::onShowManipulator()
{
return plotManipulatorManager().onShowManipulator();
}
--- rstudio-1.1.463-orig/src/cpp/r/session/graphics/RGraphicsPlotManager.hpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/r/session/graphics/RGraphicsPlotManager.hpp 2018-11-17 21:24:35.287976303 +1100
@@ -22,10 +22,10 @@
#include <boost/utility.hpp>
#include <boost/shared_ptr.hpp>
#include <boost/function.hpp>
-#include <boost/signal.hpp>
#include <boost/regex.hpp>
#include <boost/circular_buffer.hpp>
+#include <core/BoostSignals.hpp>
#include <core/Error.hpp>
#include <core/FilePath.hpp>
@@ -45,10 +45,10 @@
struct GraphicsDeviceEvents
{
- boost::signal<void (SEXP)> onNewPage;
- boost::signal<void ()> onDrawing;
- boost::signal<void ()> onResized;
- boost::signal<void ()> onClosed;
+ RSTUDIO_BOOST_SIGNAL<void (SEXP)> onNewPage;
+ RSTUDIO_BOOST_SIGNAL<void ()> onDrawing;
+ RSTUDIO_BOOST_SIGNAL<void ()> onResized;
+ RSTUDIO_BOOST_SIGNAL<void ()> onClosed;
};
class PlotManipulatorManager;
@@ -110,7 +110,7 @@
virtual void clear();
- virtual boost::signal<void ()>& onShowManipulator() ;
+ virtual RSTUDIO_BOOST_SIGNAL<void ()>& onShowManipulator() ;
virtual void setPlotManipulatorValues(const core::json::Object& values);
virtual void manipulatorPlotClicked(int x, int y);
--- rstudio-1.1.463-orig/src/cpp/r/session/graphics/RGraphicsPlotManipulatorManager.cpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/r/session/graphics/RGraphicsPlotManipulatorManager.cpp 2018-11-17 21:24:35.287976303 +1100
@@ -184,7 +184,7 @@
}
-boost::signal<void ()>& PlotManipulatorManager::onShowManipulator()
+RSTUDIO_BOOST_SIGNAL<void ()>& PlotManipulatorManager::onShowManipulator()
{
return onShowManipulator_;
}
--- rstudio-1.1.463-orig/src/cpp/r/session/graphics/RGraphicsPlotManipulatorManager.hpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/r/session/graphics/RGraphicsPlotManipulatorManager.hpp 2018-11-17 21:24:35.287976303 +1100
@@ -16,8 +16,7 @@
#ifndef R_SESSION_GRAPHICS_PLOT_MANIPULATOR_MANAGER_HPP
#define R_SESSION_GRAPHICS_PLOT_MANIPULATOR_MANAGER_HPP
-#include <boost/signal.hpp>
-
+#include <core/BoostSignals.hpp>
#include <core/Error.hpp>
#include <core/json/Json.hpp>
@@ -53,7 +52,7 @@
public:
core::Error initialize(const UnitConversionFunctions& convert);
- boost::signal<void ()>& onShowManipulator() ;
+ RSTUDIO_BOOST_SIGNAL<void ()>& onShowManipulator() ;
void setPlotManipulatorValues(const core::json::Object& values);
void manipulatorPlotClicked(int x, int y);
@@ -85,7 +84,7 @@
bool replayingManipulator_;
// manipulator event hook
- boost::signal<void ()> onShowManipulator_;
+ RSTUDIO_BOOST_SIGNAL<void ()> onShowManipulator_;
// unit conversion function
UnitConversionFunctions convert_;
--- rstudio-1.1.463-orig/src/cpp/server/include/server/ServerSessionManager.hpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/server/include/server/ServerSessionManager.hpp 2018-11-17 21:27:05.255436316 +1100
@@ -20,9 +20,9 @@
#include <vector>
#include <map>
-#include <boost/signals.hpp>
#include <boost/asio/io_service.hpp>
+#include <core/BoostSignals.hpp>
#include <core/Thread.hpp>
#include <core/system/PosixSystem.hpp>
--- rstudio-1.1.463-orig/src/cpp/session/SessionMain.cpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/session/SessionMain.cpp 2018-11-17 21:24:35.288976313 +1100
@@ -33,12 +33,12 @@
#include <boost/lexical_cast.hpp>
#include <boost/format.hpp>
-#include <boost/signals.hpp>
#include <boost/date_time/posix_time/posix_time.hpp>
#include <boost/algorithm/string/predicate.hpp>
#include <boost/algorithm/string/join.hpp>
#include <core/Error.hpp>
+#include <core/BoostSignals.hpp>
#include <core/BoostThread.hpp>
#include <core/ConfigUtils.hpp>
#include <core/FilePath.hpp>
--- rstudio-1.1.463-orig/src/cpp/session/SessionModuleContext.cpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/session/SessionModuleContext.cpp 2018-11-17 21:24:35.289976322 +1100
@@ -19,10 +19,10 @@
#include <boost/assert.hpp>
#include <boost/utility.hpp>
-#include <boost/signal.hpp>
#include <boost/format.hpp>
#include <boost/numeric/conversion/cast.hpp>
+#include <core/BoostSignals.hpp>
#include <core/BoostThread.hpp>
#include <core/Error.hpp>
#include <core/FilePath.hpp>
@@ -586,13 +586,13 @@
int nextGroup_;
- boost::signal<void(const r::session::RSuspendOptions&,Settings*),
- boost::last_value<void>,
+ RSTUDIO_BOOST_SIGNAL<void(const r::session::RSuspendOptions&,Settings*),
+ RSTUDIO_BOOST_LAST_VALUE<void>,
int,
std::less<int> > suspendSignal_;
- boost::signal<void(const Settings&),
- boost::last_value<void>,
+ RSTUDIO_BOOST_SIGNAL<void(const Settings&),
+ RSTUDIO_BOOST_LAST_VALUE<void>,
int,
std::greater<int> > resumeSignal_;
};
--- rstudio-1.1.463-orig/src/cpp/session/include/session/SessionConsoleProcess.hpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/session/include/session/SessionConsoleProcess.hpp 2018-11-17 21:24:35.290976332 +1100
@@ -20,10 +20,10 @@
#include <deque>
#include <boost/regex.hpp>
-#include <boost/signals.hpp>
#include <boost/circular_buffer.hpp>
#include <boost/enable_shared_from_this.hpp>
+#include <core/BoostSignals.hpp>
#include <core/system/Process.hpp>
#include <core/terminal/PrivateCommand.hpp>
@@ -146,7 +146,7 @@
void setPromptHandler(
const boost::function<bool(const std::string&, Input*)>& onPrompt);
- boost::signal<void(int)>& onExit() { return onExit_; }
+ RSTUDIO_BOOST_SIGNAL<void(int)>& onExit() { return onExit_; }
std::string handle() const { return procInfo_->getHandle(); }
InteractionMode interactionMode() const { return procInfo_->getInteractionMode(); }
@@ -264,7 +264,7 @@
boost::mutex inputOutputQueueMutex_;
boost::function<bool(const std::string&, Input*)> onPrompt_;
- boost::signal<void(int)> onExit_;
+ RSTUDIO_BOOST_SIGNAL<void(int)> onExit_;
// regex for prompt detection
boost::regex controlCharsPattern_;
--- rstudio-1.1.463-orig/src/cpp/session/include/session/SessionModuleContext.hpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/session/include/session/SessionModuleContext.hpp 2018-11-17 21:28:25.019212857 +1100
@@ -21,9 +21,9 @@
#include <boost/utility.hpp>
#include <boost/function.hpp>
-#include <boost/signals.hpp>
#include <boost/shared_ptr.hpp>
+#include <core/BoostSignals.hpp>
#include <core/HtmlUtils.hpp>
#include <core/system/System.hpp>
#include <core/system/ShellUtils.hpp>
@@ -315,35 +315,35 @@
// session events
struct Events : boost::noncopyable
{
- boost::signal<void (core::json::Object*)> onSessionInfo;
- boost::signal<void ()> onClientInit;
- boost::signal<void ()> onBeforeExecute;
- boost::signal<void(const std::string&)> onConsolePrompt;
- boost::signal<void(const std::string&)> onConsoleInput;
- boost::signal<void(const std::string&, const std::string&)>
+ RSTUDIO_BOOST_SIGNAL<void (core::json::Object*)> onSessionInfo;
+ RSTUDIO_BOOST_SIGNAL<void ()> onClientInit;
+ RSTUDIO_BOOST_SIGNAL<void ()> onBeforeExecute;
+ RSTUDIO_BOOST_SIGNAL<void(const std::string&)> onConsolePrompt;
+ RSTUDIO_BOOST_SIGNAL<void(const std::string&)> onConsoleInput;
+ RSTUDIO_BOOST_SIGNAL<void(const std::string&, const std::string&)>
onActiveConsoleChanged;
- boost::signal<void (ConsoleOutputType, const std::string&)>
+ RSTUDIO_BOOST_SIGNAL<void (ConsoleOutputType, const std::string&)>
onConsoleOutput;
- boost::signal<void()> onUserInterrupt;
- boost::signal<void (ChangeSource)> onDetectChanges;
- boost::signal<void (core::FilePath)> onSourceEditorFileSaved;
- boost::signal<void(bool)> onDeferredInit;
- boost::signal<void(bool)> afterSessionInitHook;
- boost::signal<void(bool)> onBackgroundProcessing;
- boost::signal<void(bool)> onShutdown;
- boost::signal<void ()> onQuit;
- boost::signal<void ()> onDestroyed;
- boost::signal<void (const std::vector<std::string>&)>
+ RSTUDIO_BOOST_SIGNAL<void()> onUserInterrupt;
+ RSTUDIO_BOOST_SIGNAL<void (ChangeSource)> onDetectChanges;
+ RSTUDIO_BOOST_SIGNAL<void (core::FilePath)> onSourceEditorFileSaved;
+ RSTUDIO_BOOST_SIGNAL<void(bool)> onDeferredInit;
+ RSTUDIO_BOOST_SIGNAL<void(bool)> afterSessionInitHook;
+ RSTUDIO_BOOST_SIGNAL<void(bool)> onBackgroundProcessing;
+ RSTUDIO_BOOST_SIGNAL<void(bool)> onShutdown;
+ RSTUDIO_BOOST_SIGNAL<void ()> onQuit;
+ RSTUDIO_BOOST_SIGNAL<void ()> onDestroyed;
+ RSTUDIO_BOOST_SIGNAL<void (const std::vector<std::string>&)>
onLibPathsChanged;
- boost::signal<void (const std::string&)> onPackageLoaded;
- boost::signal<void ()> onPackageLibraryMutated;
- boost::signal<void ()> onPreferencesSaved;
- boost::signal<void (const core::DistributedEvent&)>
+ RSTUDIO_BOOST_SIGNAL<void (const std::string&)> onPackageLoaded;
+ RSTUDIO_BOOST_SIGNAL<void ()> onPackageLibraryMutated;
+ RSTUDIO_BOOST_SIGNAL<void ()> onPreferencesSaved;
+ RSTUDIO_BOOST_SIGNAL<void (const core::DistributedEvent&)>
onDistributedEvent;
- boost::signal<void (core::FilePath)> onPermissionsChanged;
+ RSTUDIO_BOOST_SIGNAL<void (core::FilePath)> onPermissionsChanged;
// signal for detecting extended type of documents
- boost::signal<std::string(boost::shared_ptr<source_database::SourceDocument>),
+ RSTUDIO_BOOST_SIGNAL<std::string(boost::shared_ptr<source_database::SourceDocument>),
firstNonEmpty<std::string> > onDetectSourceExtendedType;
};
--- rstudio-1.1.463-orig/src/cpp/session/include/session/SessionSourceDatabase.hpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/session/include/session/SessionSourceDatabase.hpp 2018-11-17 21:24:35.291976342 +1100
@@ -21,8 +21,8 @@
#include <boost/utility.hpp>
#include <boost/shared_ptr.hpp>
-#include <boost/signals.hpp>
+#include <core/BoostSignals.hpp>
#include <core/FilePath.hpp>
#include <core/json/Json.hpp>
@@ -204,14 +204,14 @@
// source database events
struct Events : boost::noncopyable
{
- boost::signal<void(boost::shared_ptr<SourceDocument>)> onDocUpdated;
- boost::signal<void(const std::string&,
+ RSTUDIO_BOOST_SIGNAL<void(boost::shared_ptr<SourceDocument>)> onDocUpdated;
+ RSTUDIO_BOOST_SIGNAL<void(const std::string&,
boost::shared_ptr<SourceDocument>)> onDocRenamed;
- boost::signal<void(const std::string&)> onDocAdded;
- boost::signal<void(
+ RSTUDIO_BOOST_SIGNAL<void(const std::string&)> onDocAdded;
+ RSTUDIO_BOOST_SIGNAL<void(
boost::shared_ptr<source_database::SourceDocument>)> onDocPendingRemove;
- boost::signal<void(const std::string&, const std::string&)> onDocRemoved;
- boost::signal<void()> onRemoveAll;
+ RSTUDIO_BOOST_SIGNAL<void(const std::string&, const std::string&)> onDocRemoved;
+ RSTUDIO_BOOST_SIGNAL<void()> onRemoveAll;
};
Events& events();
--- rstudio-1.1.463-orig/src/cpp/session/include/session/SessionUserSettings.hpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/session/include/session/SessionUserSettings.hpp 2018-11-17 21:24:35.291976342 +1100
@@ -20,8 +20,8 @@
#include <boost/utility.hpp>
#include <boost/scoped_ptr.hpp>
-#include <boost/signal.hpp>
+#include <core/BoostSignals.hpp>
#include <core/Settings.hpp>
#include <core/FilePath.hpp>
#include <core/StringUtils.hpp>
@@ -62,7 +62,7 @@
friend UserSettings& userSettings();
public:
- boost::signal<void()> onChanged;
+ RSTUDIO_BOOST_SIGNAL<void()> onChanged;
public:
// COPYING: boost::noncopyable
--- rstudio-1.1.463-orig/src/cpp/session/include/session/projects/SessionProjects.hpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/session/include/session/projects/SessionProjects.hpp 2018-11-17 21:24:35.291976342 +1100
@@ -22,8 +22,8 @@
#include <boost/utility.hpp>
#include <boost/shared_ptr.hpp>
#include <boost/foreach.hpp>
-#include <boost/signals.hpp>
+#include <core/BoostSignals.hpp>
#include <core/FileInfo.hpp>
#include <core/FilePath.hpp>
#include <core/Settings.hpp>
@@ -220,10 +220,10 @@
bool hasFileMonitor_;
std::vector<std::string> monitorSubscribers_;
- boost::signal<void(const tree<core::FileInfo>&)> onMonitoringEnabled_;
- boost::signal<void(const std::vector<core::system::FileChangeEvent>&)>
+ RSTUDIO_BOOST_SIGNAL<void(const tree<core::FileInfo>&)> onMonitoringEnabled_;
+ RSTUDIO_BOOST_SIGNAL<void(const std::vector<core::system::FileChangeEvent>&)>
onFilesChanged_;
- boost::signal<void()> onMonitoringDisabled_;
+ RSTUDIO_BOOST_SIGNAL<void()> onMonitoringDisabled_;
};
ProjectContext& projectContext();
--- rstudio-1.1.463-orig/src/cpp/session/modules/SessionPlots.hpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/session/modules/SessionPlots.hpp 2018-11-17 21:24:35.292976352 +1100
@@ -16,7 +16,7 @@
#ifndef SESSION_PLOTS_HPP
#define SESSION_PLOTS_HPP
-#include <boost/signals.hpp>
+#include <core/BoostSignals.hpp>
namespace rstudio {
namespace core {
@@ -35,9 +35,9 @@
struct Events : boost::noncopyable
{
- boost::signal<void()> onBeforeNewPlot;
- boost::signal<void()> onBeforeNewGridPage;
- boost::signal<void()> onNewPlot;
+ RSTUDIO_BOOST_SIGNAL<void()> onBeforeNewPlot;
+ RSTUDIO_BOOST_SIGNAL<void()> onBeforeNewGridPage;
+ RSTUDIO_BOOST_SIGNAL<void()> onNewPlot;
};
Events& events();
--- rstudio-1.1.463-orig/src/cpp/session/modules/build/SessionSourceCpp.cpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/session/modules/build/SessionSourceCpp.cpp 2018-11-17 21:24:35.293976361 +1100
@@ -15,11 +15,11 @@
#include "SessionSourceCpp.hpp"
-#include <boost/signal.hpp>
#include <boost/algorithm/string/trim.hpp>
#include <boost/algorithm/string/predicate.hpp>
#include <boost/algorithm/string/join.hpp>
+#include <core/BoostSignals.hpp>
#include <core/Error.hpp>
#include <core/FilePath.hpp>
#include <core/StringUtils.hpp>
--- rstudio-1.1.463-orig/src/cpp/session/modules/rmarkdown/NotebookAlternateEngines.cpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/session/modules/rmarkdown/NotebookAlternateEngines.cpp 2018-11-17 21:24:35.294976371 +1100
@@ -142,7 +142,7 @@
LOG_ERROR(error);
// capture console output, error
- boost::signals::scoped_connection consoleHandler =
+ RSTUDIO_BOOST_SCOPED_CONNECTION consoleHandler =
module_context::events().onConsoleOutput.connect(
boost::bind(chunkConsoleOutputHandler,
_1,
@@ -219,7 +219,7 @@
LOG_ERROR(error);
// capture console output, error
- boost::signals::scoped_connection consoleHandler =
+ RSTUDIO_BOOST_SCOPED_CONNECTION consoleHandler =
module_context::events().onConsoleOutput.connect(
boost::bind(chunkConsoleOutputHandler,
_1,
@@ -363,7 +363,7 @@
LOG_ERROR(error);
// capture console output, error
- boost::signals::scoped_connection consoleHandler =
+ RSTUDIO_BOOST_SCOPED_CONNECTION consoleHandler =
module_context::events().onConsoleOutput.connect(
boost::bind(chunkConsoleOutputHandler,
_1,
--- rstudio-1.1.463-orig/src/cpp/session/modules/rmarkdown/NotebookCapture.cpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/session/modules/rmarkdown/NotebookCapture.cpp 2018-11-17 21:24:35.294976371 +1100
@@ -16,6 +16,8 @@
#include "SessionRmdNotebook.hpp"
#include "NotebookCapture.hpp"
+#include <boost/make_shared.hpp>
+
namespace rstudio {
namespace session {
namespace modules {
--- rstudio-1.1.463-orig/src/cpp/session/modules/rmarkdown/NotebookExec.cpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/session/modules/rmarkdown/NotebookExec.cpp 2018-11-17 21:24:35.295976381 +1100
@@ -441,7 +441,7 @@
}
// unhook all our event handlers
- BOOST_FOREACH(const boost::signals::connection connection, connections_)
+ BOOST_FOREACH(const RSTUDIO_BOOST_CONNECTION connection, connections_)
{
connection.disconnect();
}
--- rstudio-1.1.463-orig/src/cpp/session/modules/rmarkdown/NotebookExec.hpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/session/modules/rmarkdown/NotebookExec.hpp 2018-11-17 21:24:35.295976381 +1100
@@ -18,8 +18,7 @@
#include <session/SessionModuleContext.hpp>
-#include <boost/signal.hpp>
-
+#include <core/BoostSignals.hpp>
#include <core/json/Json.hpp>
#include <r/RSexp.hpp>
@@ -99,7 +98,7 @@
bool hasErrors_;
std::vector<boost::shared_ptr<NotebookCapture> > captures_;
- std::vector<boost::signals::connection> connections_;
+ std::vector<RSTUDIO_BOOST_CONNECTION> connections_;
};
} // namespace notebook
--- rstudio-1.1.463-orig/src/cpp/session/modules/rmarkdown/NotebookPlots.cpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/session/modules/rmarkdown/NotebookPlots.cpp 2018-11-17 21:24:35.295976381 +1100
@@ -20,11 +20,12 @@
#include <boost/format.hpp>
#include <boost/foreach.hpp>
-#include <boost/signals/connection.hpp>
-#include <core/system/FileMonitor.hpp>
-#include <core/StringUtils.hpp>
+#include <core/BoostSignals.hpp>
#include <core/Exec.hpp>
+#include <core/StringUtils.hpp>
+
+#include <core/system/FileMonitor.hpp>
#include <session/SessionModuleContext.hpp>
--- rstudio-1.1.463-orig/src/cpp/session/modules/rmarkdown/NotebookPlots.hpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/session/modules/rmarkdown/NotebookPlots.hpp 2018-11-17 21:24:35.296976391 +1100
@@ -18,8 +18,10 @@
#define SESSION_NOTEBOOK_PLOTS_HPP
#include <boost/function.hpp>
-#include <boost/signals/connection.hpp>
+
+#include <core/BoostSignals.hpp>
#include <core/FilePath.hpp>
+
#include <r/RSexp.hpp>
#include "NotebookCapture.hpp"
@@ -80,9 +82,9 @@
unsigned lastOrdinal_;
- boost::signals::connection onBeforeNewPlot_;
- boost::signals::connection onBeforeNewGridPage_;
- boost::signals::connection onNewPlot_;
+ RSTUDIO_BOOST_CONNECTION onBeforeNewPlot_;
+ RSTUDIO_BOOST_CONNECTION onBeforeNewGridPage_;
+ RSTUDIO_BOOST_CONNECTION onNewPlot_;
double width_;
double height_;
--- rstudio-1.1.463-orig/src/cpp/session/modules/rmarkdown/NotebookQueue.cpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/session/modules/rmarkdown/NotebookQueue.cpp 2018-11-17 21:24:35.296976391 +1100
@@ -87,7 +87,7 @@
pInput_->enque(kThreadQuitCommand);
// unregister handlers
- BOOST_FOREACH(boost::signals::connection connection, handlers_)
+ BOOST_FOREACH(RSTUDIO_BOOST_CONNECTION connection, handlers_)
{
connection.disconnect();
}
@@ -651,7 +651,7 @@
boost::shared_ptr<ChunkExecContext> execContext_;
// registered signal handlers
- std::vector<boost::signals::connection> handlers_;
+ std::vector<RSTUDIO_BOOST_CONNECTION> handlers_;
// the thread which submits console input, and the queue which feeds it
boost::thread console_;
--- rstudio-1.1.463-orig/src/cpp/session/modules/rmarkdown/SessionRmdNotebook.hpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/session/modules/rmarkdown/SessionRmdNotebook.hpp 2018-11-17 21:24:35.296976391 +1100
@@ -18,7 +18,8 @@
#define SESSION_RMARKDOWN_NOTEBOOK_HPP
#include <ctime>
-#include <boost/signals.hpp>
+
+#include <core/BoostSignals.hpp>
#include <core/json/Json.hpp>
#define kChunkLibDir "lib"
@@ -76,24 +77,24 @@
struct Events : boost::noncopyable
{
// Document {0}, chunk {1} from context id {3} execution completed
- boost::signal<void(const std::string&, const std::string&,
+ RSTUDIO_BOOST_SIGNAL<void(const std::string&, const std::string&,
const std::string&)>
onChunkExecCompleted;
// Document {0}, chunk {1} had console output of type {2} and text {3}
- boost::signal<void(const std::string&, const std::string&, int,
+ RSTUDIO_BOOST_SIGNAL<void(const std::string&, const std::string&, int,
const std::string&)>
onChunkConsoleOutput;
- boost::signal<void(const core::FilePath&, const core::FilePath&,
+ RSTUDIO_BOOST_SIGNAL<void(const core::FilePath&, const core::FilePath&,
const core::json::Value& metadata, unsigned ordinal)>
onPlotOutput;
- boost::signal<void(const core::FilePath&, const core::FilePath&,
+ RSTUDIO_BOOST_SIGNAL<void(const core::FilePath&, const core::FilePath&,
const core::json::Value& metadata)> onHtmlOutput;
- boost::signal<void(const core::json::Object&)> onErrorOutput;
- boost::signal<void(const core::FilePath&, const core::FilePath&,
+ RSTUDIO_BOOST_SIGNAL<void(const core::json::Object&)> onErrorOutput;
+ RSTUDIO_BOOST_SIGNAL<void(const core::FilePath&, const core::FilePath&,
const core::json::Value& metadata)> onDataOutput;
- boost::signal<void(Condition condition, const std::string& message)>
+ RSTUDIO_BOOST_SIGNAL<void(Condition condition, const std::string& message)>
onCondition;
};

View file

@ -0,0 +1,167 @@
--- rstudio-1.1.463-orig/src/cpp/CMakeLists.txt 2018-11-17 21:24:35.285976284 +1100
+++ src/cpp/CMakeLists.txt 2018-11-17 21:41:02.712507842 +1100
@@ -175,6 +175,9 @@
set(Boost_USE_STATIC_LIBS ON)
set(BOOST_INCLUDEDIR ${RSTUDIO_TOOLS_BOOST}/include)
find_package(Boost ${BOOST_VERSION} REQUIRED)
+ if(NOT Boost_VERSION VERSION_LESS 1.69.0)
+ list(REMOVE_ITEM BOOST_LIBS signals)
+ endif()
# define library list manually (find_package doesn't always pick them up)
set(BOOST_LIB_DIR ${RSTUDIO_TOOLS_BOOST}/lib)
@@ -184,11 +187,15 @@
message(STATUS "Using RStudio-provided Boost ${BOOST_VERSION}")
else()
add_definitions(-DRSTUDIO_BOOST_NAMESPACE=boost)
+ find_package(Boost ${BOOST_VERSION} REQUIRED)
+ if(NOT Boost_VERSION VERSION_LESS 1.69.0)
+ list(REMOVE_ITEM BOOST_LIBS signals)
+ endif()
find_package(Boost ${BOOST_VERSION} REQUIRED COMPONENTS ${BOOST_LIBS})
message(STATUS "Using system Boost ${BOOST_VERSION}")
endif()
- # WIN32 BOOST
+# WIN32 BOOST
else()
# hard-code to our own prebuilt boost libs
add_definitions(-DRSTUDIO_BOOST_NAMESPACE=rstudio_boost)
@@ -211,14 +218,14 @@
# allow opt-in to using Boost.Signals2
# TODO: remove this in RStudio v1.3 and port to signals2
if(NOT RSTUDIO_BOOST_SIGNALS_VERSION)
- if (BOOST_VERSION VERSION_LESS 1.69.0)
+ if (Boost_VERSION VERSION_LESS 1.69.0)
set(RSTUDIO_BOOST_SIGNALS_VERSION 1)
else()
set(RSTUDIO_BOOST_SIGNALS_VERSION 2)
endif()
endif()
-message(STATUS "Using Booost.Signals version ${RSTUDIO_BOOST_SIGNALS_VERSION}")
+message(STATUS "Using Boost.Signals version ${RSTUDIO_BOOST_SIGNALS_VERSION}")
add_definitions(-DRSTUDIO_BOOST_SIGNALS_VERSION=${RSTUDIO_BOOST_SIGNALS_VERSION})
# add boost as system include directory
--- rstudio-1.1.463-orig/src/cpp/core/include/core/r_util/RFunctionInformation.hpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/core/include/core/r_util/RFunctionInformation.hpp 2018-11-17 21:41:02.713507852 +1100
@@ -75,9 +75,9 @@
const std::string& name() const { return name_; }
const boost::optional<std::string>& defaultValue() const { return defaultValue_; }
boost::tribool hasDefault() const { return hasDefault_; }
- bool isUsed() const { return isUsed_; }
+ bool isUsed() const { return bool(isUsed_); }
void setIsUsed(bool value) { isUsed_ = value; }
- bool isMissingnessHandled() const { return isMissingnessHandled_; }
+ bool isMissingnessHandled() const { return bool(isMissingnessHandled_); }
void setMissingnessHandled(bool value) { isMissingnessHandled_ = value; }
private:
@@ -130,7 +130,7 @@
bool isPrimitive()
{
- return isPrimitive_ == true;
+ return bool(isPrimitive_);
}
void setIsPrimitive(bool isPrimitive)
--- rstudio-1.1.463-orig/src/cpp/session/modules/SessionRParser.cpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/session/modules/SessionRParser.cpp 2018-11-17 21:41:02.714507862 +1100
@@ -390,7 +390,7 @@
if (!failed)
{
DEBUG("--- Found function in pkgInfo index: " << *fnInfo.binding());
- return fnInfo.performsNse();
+ return bool(fnInfo.performsNse());
}
// Handle some special cases first.
--- rstudio-1.1.463-orig/src/tools/clang-ubsan-build 2018-10-25 09:42:55.000000000 +1100
+++ src/tools/clang-ubsan-build 2018-11-17 21:41:02.714507862 +1100
@@ -10,19 +10,19 @@
: ${RSTUDIO_USE_LIBCXX="Yes"}
: ${RSTUDIO_USE_SYSTEM_BOOST="Yes"}
-: ${RSTUDIO_BOOST_VERSION="1.56.0"}
+: ${RSTUDIO_BOOST_REQUESTED_VERSION="1.56.0"}
mkdir -p "${BUILD_DIR}"
cd "${BUILD_DIR}"
-cmake ../cpp \
- -DLIBR_HOME="${R_HOME}" \
- -DCMAKE_C_COMPILER="${CC}" \
- -DCMAKE_C_FLAGS="${ASANFLAGS} ${LDFLAGS}" \
- -DCMAKE_CXX_COMPILER="${CXX}" \
- -DCMAKE_CXX_FLAGS="${ASANFLAGS} ${LDFLAGS}" \
- -DRSTUDIO_USE_LIBCXX="${RSTUDIO_USE_LIBCXX}" \
- -DRSTUDIO_USE_SYSTEM_BOOST="${RSTUDIO_USE_SYSTEM_BOOST}" \
- -DRSTUDIO_BOOST_VERSION="${RSTUDIO_BOOST_VERSION}" \
+cmake ../cpp \
+ -DLIBR_HOME="${R_HOME}" \
+ -DCMAKE_C_COMPILER="${CC}" \
+ -DCMAKE_C_FLAGS="${ASANFLAGS} ${LDFLAGS}" \
+ -DCMAKE_CXX_COMPILER="${CXX}" \
+ -DCMAKE_CXX_FLAGS="${ASANFLAGS} ${LDFLAGS}" \
+ -DRSTUDIO_USE_LIBCXX="${RSTUDIO_USE_LIBCXX}" \
+ -DRSTUDIO_USE_SYSTEM_BOOST="${RSTUDIO_USE_SYSTEM_BOOST}" \
+ -DRSTUDIO_BOOST_REQUESTED_VERSION="${RSTUDIO_BOOST_REQUESTED_VERSION}" \
"$@"
cd ..
--- rstudio-1.1.463-orig/src/tools/gcc-ubsan-build 2018-10-25 09:42:55.000000000 +1100
+++ src/tools/gcc-ubsan-build 2018-11-17 21:41:02.715507871 +1100
@@ -19,19 +19,19 @@
# NOTE: Boost 1.50.0 not compatible with gcc-6
: ${RSTUDIO_USE_LIBCXX="No"}
: ${RSTUDIO_USE_SYSTEM_BOOST="Yes"}
-: ${RSTUDIO_BOOST_VERSION="1.54.0"}
+: ${RSTUDIO_BOOST_REQUESTED_VERSION="1.54.0"}
mkdir -p "${BUILD_DIR}"
cd "${BUILD_DIR}"
-cmake ../cpp \
- -DLIBR_HOME="${R_HOME}" \
- -DCMAKE_C_COMPILER="${CC}" \
- -DCMAKE_C_FLAGS="${ASANFLAGS} ${LDFLAGS}" \
- -DCMAKE_CXX_COMPILER="${CXX}" \
- -DCMAKE_CXX_FLAGS="${ASANFLAGS} ${LDFLAGS}" \
- -DRSTUDIO_USE_LIBCXX="${RSTUDIO_USE_LIBCXX}" \
- -DRSTUDIO_USE_SYSTEM_BOOST="${RSTUDIO_USE_SYSTEM_BOOST}" \
- -DRSTUDIO_BOOST_VERSION="${RSTUDIO_BOOST_VERSION}" \
+cmake ../cpp \
+ -DLIBR_HOME="${R_HOME}" \
+ -DCMAKE_C_COMPILER="${CC}" \
+ -DCMAKE_C_FLAGS="${ASANFLAGS} ${LDFLAGS}" \
+ -DCMAKE_CXX_COMPILER="${CXX}" \
+ -DCMAKE_CXX_FLAGS="${ASANFLAGS} ${LDFLAGS}" \
+ -DRSTUDIO_USE_LIBCXX="${RSTUDIO_USE_LIBCXX}" \
+ -DRSTUDIO_USE_SYSTEM_BOOST="${RSTUDIO_USE_SYSTEM_BOOST}" \
+ -DRSTUDIO_BOOST_REQUESTED_VERSION="${RSTUDIO_BOOST_REQUESTED_VERSION}" \
"$@"
cd ..
--- rstudio-1.1.463-orig/src/tools/xcode-ubsan-build 2018-10-25 09:42:55.000000000 +1100
+++ src/tools/xcode-ubsan-build 2018-11-17 21:41:02.715507871 +1100
@@ -15,13 +15,13 @@
# sanitizers released with newer versions of clang)
mkdir -p "${BUILD_DIR}"
cd "${BUILD_DIR}"
-cmake ../cpp -GXcode \
- -DLIBR_HOME="${R_HOME}" \
- -DLIBR_INCLUDE_DIRS="${R_INCL}" \
- -DLIBR_DOC_DIR="${R_DOCS}" \
- -DRSTUDIO_USE_LIBCXX="Yes" \
- -DRSTUDIO_USE_SYSTEM_BOOST="Yes" \
- -DRSTUDIO_BOOST_VERSION="1.56.0" \
+cmake ../cpp -GXcode \
+ -DLIBR_HOME="${R_HOME}" \
+ -DLIBR_INCLUDE_DIRS="${R_INCL}" \
+ -DLIBR_DOC_DIR="${R_DOCS}" \
+ -DRSTUDIO_USE_LIBCXX="Yes" \
+ -DRSTUDIO_USE_SYSTEM_BOOST="Yes" \
+ -DRSTUDIO_BOOST_REQUESTED_VERSION="1.56.0" \
"$@"
cmake ../cpp -DLIBR_LIBRARIES="${R_LIBS}/libR.dylib"
cd ..

View file

@ -0,0 +1,13 @@
--- rstudio-1.1.463-orig/src/cpp/server/ServerSecureKeyFile.cpp 2018-10-25 09:42:55.000000000 +1100
+++ src/cpp/server/ServerSecureKeyFile.cpp 2018-11-17 22:17:18.110012955 +1100
@@ -79,8 +79,8 @@
return error;
// change mode it so it is only readable and writeable by this user
- if (changeFileMode(secureKeyPath,
- core::system::UserReadWriteMode) < 0)
+ if (!!changeFileMode(secureKeyPath,
+ core::system::UserReadWriteMode))
{
return systemError(errno, ERROR_LOCATION);
}

View file

@ -1,7 +1,7 @@
# Template file for 'rstudio'
pkgname=rstudio
version=1.1.456
revision=3
version=1.1.463
revision=1
only_for_archs="i686 x86_64"
build_style=cmake
make_install_args="INSTALL_ROOT=${DESTDIR} \
@ -36,7 +36,7 @@ distfiles="https://github.com/rstudio/rstudio/archive/v${version}.tar.gz
${_aws}/rstudio-buildtools/selenium-java-${_selenium_version}.zip
${_aws}/rstudio-buildtools/selenium-server-standalone-${_selenium_version}.jar
${_aws}/rstudio-buildtools/chromedriver-linux"
checksum="1362ad0afdb214d85e4edf86a1d42d0f83d0fa91dc4e5079af6424df9b1573d0
checksum="57be651509ff2542a1dabccb70584ecf6b35fb20f97618091c181d4982667cdd
4341a9630efb9dcf7f215c324136407f3b3d6003e1c96f2e5e1f9f14d5787494
f561f4eb5d5fe1cff95c881e6aed53a86e9f0de8a52863295a8600375f96ab94
aa65061b73836190410720bea422eb8e787680d7bc0c2b244ae6c9a0d24747b3
@ -51,8 +51,7 @@ skip_extraction="core-dictionaries.zip
selenium-java-${_selenium_version}.zip
selenium-server-standalone-${_selenium_version}.jar
chromedriver-linux"
broken="boost patches are missing"
CXXFLAGS="-DBOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS"
post_extract() {
_srcdir="${XBPS_SRCDISTDIR}/${pkgname}-${version}"