-
Notifications
You must be signed in to change notification settings - Fork 21
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 4a13342
Showing
131 changed files
with
33,594 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
# Ignore extensions | ||
*.diff | ||
*.err | ||
*.log | ||
*.orig | ||
*.rej | ||
*.swo | ||
*.swp | ||
*.vi | ||
*.zip | ||
*~ | ||
|
||
# Ignore OS or Editor folders | ||
._* | ||
.cache | ||
.DS_Store | ||
.project | ||
.settings | ||
.idea | ||
.tmproj | ||
*.esproj | ||
*.sublime-workspace | ||
*.sublime-project |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
deployr-rserve | ||
============== | ||
|
||
`deployr-rserve` is a fork of the popular R package, [Rserve](https://github.com/s-u/Rserve) from Simon Urbanek. | ||
This fork adds the following features: | ||
|
||
1. Concurrent R sessions under Rserve on the Windows platform | ||
2. Ability to switch the execution context of the Rserve process to a specified uid/gid | ||
3. Out-of-band control socket that supports a cancel operation on any Rserve eval operation | ||
|
||
This fork is based on Rserve `0.6-3.1`. | ||
|
||
Installations of DeployR require `deployr-rserve`. The standard [Rserve](https://github.com/s-u/Rserve) package does not include the necessary functionality to work with [DeployR](https://github.com/deployr/server). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
Package: deployrRserve | ||
Version: 7.4.0 | ||
Title: Binary R server | ||
Author: Simon Urbanek <Simon.Urbanek@r-project.org> | ||
Maintainer: Simon Urbanek <Simon.Urbanek@r-project.org> | ||
Depends: R (>= 1.5.0) | ||
SystemRequirements: R must be compiled with --enable-R-shlib if the server is to be built | ||
Description: Rserve acts as a socket server (TCP/IP or local sockets) | ||
which allows binary requests to be sent to R. Every | ||
connection has a separate workspace and working | ||
directory. Client-side implementations are available | ||
for popular languages such as C/C++ and Java, allowing | ||
any application to use facilities of R without the need of | ||
linking to R code. Rserve supports remote connection, | ||
user authentication and file transfer. A simple R client | ||
is included in this package as well. | ||
License: GPL version 2 | ||
URL: http://www.rforge.net/Rserve/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
Rserve Server providing R functionality to | ||
applications via TCP/IP |
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
exportPattern("^[[:alpha:]]+") |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,294 @@ | ||
NEWS/Changelog for Rserve | ||
--------------------------- | ||
|
||
0.6-3 (under development) | ||
o bug fix: the child process could get stuck in the server loop | ||
after some abnormal return from the child connection code | ||
Thanks to David Richardson for reporting. | ||
|
||
0.6-2 2010-09-02 | ||
o add support for NAs in character vectors by using a special | ||
"\xff" string. Any string beginning with '\xff' is | ||
prepended by additional '\xff' to remove ambiuguity and clients | ||
should remove leading '\xff' accordingly. | ||
(Note that UTF-8 encoded strings never contain '\xff' so | ||
in most uses it never occurs). | ||
|
||
The Java client has been updated accordingly and represents | ||
NA strings with null. | ||
|
||
o add a new config file option "interactive" that allows to run | ||
Rserve in interactive or non-interactive mode across platforms. | ||
Previously Windows ran in non-interactive mode and unix in | ||
interactive mode. Non-interactive mode is useful if you want | ||
to prevent R from soliciting user input, but it requires error | ||
option to be set if you don't want to quit R on all errors | ||
(i.e., something like options(error=function() NULL) will do) | ||
|
||
Note: on unix the interactivity flag can only be set *after* R | ||
initialization (due to limitation in R) so you still may have | ||
to pass flags like --no-save in order to appease R. | ||
|
||
o more Windows fixes - Rserve uses R's own initialization in | ||
recent R versions. This also fixes issues with Win64 and more | ||
recent toolchains. | ||
Note that both Widnows and unix now behave consistently with | ||
respect to interactive mode - the default is now interactive | ||
for both platforms but can be changed in the config file. | ||
|
||
|
||
0.6-1 2010-05-24 | ||
o add a safety margin to the send buffer to avoid crashes when | ||
size estimates are off (e.g., due to re-coding) | ||
|
||
o added a very primitive PHP client | ||
|
||
o Win64 fixes by Brian Ripley | ||
|
||
o added new configuration options: | ||
su {now|server|client} - switches user either immediately | ||
as the config file is loaded ("now", default and always the | ||
behavior of Rserve before 0.6-1), when the server is ready | ||
("server") or when a client is spawned ("client"). The | ||
latter is useful to restrict clients from sending signals | ||
to the server process. | ||
|
||
uid, gid config options are interpreted accordingly to | ||
the su value. | ||
|
||
cachepwd - {no|yes|indefinitely} - allows Rserve to cache | ||
the password file. "no" = read it at each authorization | ||
(default and behavior before 0.6-1), "yes" = read it when | ||
a client is spawned before su, "indefinitely" = read it | ||
just after the config file (most efficient but changes | ||
are only active after re-start). "yes" has only effect | ||
in unix and can be used to restrict permissions on the | ||
password file such that client code has no access to it | ||
(do does "indefinitely" but can be used anywhere). | ||
|
||
|
||
0.6-0 2009-10-27 | ||
o added support for control commands CMD_ctrlEval, | ||
CMD_ctrlSource and CMD_ctrlShutdown. Those commands provide | ||
control over the server process. The side-efect of eval and | ||
source are then available to all future connections. | ||
|
||
Control commands are only available if they are enabled, e.g., | ||
with the config file entry "control enable". In addition if | ||
authorization is required or the passwords file is set only | ||
designated users will have control access (see next point). | ||
|
||
Note that enabling control commands will make Rserve use at | ||
least one file descriptor per active child process, so you may | ||
want to adjust the maximum number of file descriptor in your | ||
system if you expect hundreds of concurrent clients. | ||
|
||
o The passwords file format has been enhanced to give | ||
finer-granularity control over the user authorization. | ||
|
||
Only users with "@" prefix can issue control commands. The | ||
prefix is not part of the user name for authentication | ||
purposes. | ||
|
||
In addition, if the password file contains an entry | ||
starting with "*" it will be interpreted as blank | ||
authorization, i.e. any username/pwd will authenticate. This | ||
may be useful in conjunction with control prefix, e.g., the | ||
following file would give blank authorization to all users but | ||
only the user "joe" will be able to use control commands: | ||
|
||
@joe foobar | ||
* | ||
|
||
o Windows build cleanup (thanks to Brian Ripley) | ||
|
||
o fixed decoding of XT_RAW (it advanced too far), this affected | ||
the use of XT_RAW as non-last element only (thanks to Saptarshi | ||
Guha for reporting) | ||
|
||
o don't advertize ARuc if not supported (this bug only affected | ||
systems without crypt support with plaintext enabled and | ||
required authorization) | ||
|
||
o add assign support for logical vectors | ||
|
||
|
||
0.5-3 2009-01-25 | ||
o fix SET_VECTOR_ELT/SET_STRING_ELT mismatches | ||
|
||
o set object flag when decoding objects that have | ||
a "class" attribute (fixes issues with S3 objects that | ||
were passed from the client to the server). | ||
|
||
o set S4 bit for pure S4 objects (S4SEXP). No other S4 | ||
objects are supported because there is no way to tell | ||
that an assembled object is really an S4 object | ||
|
||
o added string encoding support (where R supports it) | ||
The string encoding can be set in the configuration file | ||
(directive "encoding"), on the command line with --RS-encoding | ||
or within a session by the client command CMD_setEncoding. | ||
|
||
This means that strings are converted to the given encoding | ||
before being sent to the client and also all strings from the | ||
client are assumed to come from the given encoding. | ||
(Previously the strings were always passed as-is with no | ||
conversion). The currently supported encodings are "native" | ||
(same as the server session locale), "utf8" and "latin1". The | ||
server default is currently "native" for compatibility with | ||
previous versions (but may change to "utf8" in the future, so | ||
explicit use of encoding in the config file is advised). | ||
|
||
If a server is used mainly by Java clients, it is advisable to | ||
set the server encoding to "utf8" since that it the only | ||
encoding supported by Java clients. | ||
|
||
For efficieny it is still advisable to run Rserve in the same | ||
locale as the majority of clients to minimize the necessary | ||
conversions. With diverse clients UTF-8 is the most versatile | ||
encoding for the server to run in while it can still serve | ||
latin1 clients as well. | ||
|
||
|
||
0.5-2 2008-10-17 | ||
o fix a bug in CMD_readFile and CMD_setBufferSize that | ||
resulted in invalid buffer sizes (one of the ways to | ||
trigger the bug was to attempt to read a small number of | ||
bytes with readFile). Thanks to H. Rehauer for reporting. | ||
|
||
o ignore attributes if they are not in a LISTSXP - there seem | ||
to be other uses of the ATTRIB entry in conjunction with | ||
character hashes in recent R versions. (BR #76) | ||
|
||
o adapt C++ client to changes in 0.5 (at least to the point | ||
where the demo1 code works) | ||
|
||
o add support for XT_VECTOR_EXP in assignments | ||
|
||
o improve protection for vectors | ||
|
||
o report "remote" setting in --RS-settings | ||
|
||
o updates in the REngine Java client, added documentation | ||
|
||
|
||
0.5-1 2008-07-22 | ||
o fix build issue with R 2.7.x on Windows | ||
|
||
o mergefat now works properly and uses cp if there is no lipo | ||
(this fixes multi-arch issues on Mac OS X and makes sure that | ||
Rserve/Rserve.dbg are installed even on non-Mac systems) | ||
|
||
|
||
0.5-0 2008-07-21 | ||
o added CMD_serEval and CMD_serAssign which are highly efficient | ||
when talking to R clients as they don't need any intermediate | ||
buffer. The corresponding R client functions RSeval and | ||
RSassign have been re-written to use this new API. | ||
|
||
o deprecate scalar types in the protocol | ||
|
||
o add more efficient storage for dotted-pair lists | ||
and symbol names | ||
|
||
o add support for complex numbers | ||
|
||
o new Java client: REngine | ||
it is more flexible than JRclient and it can be used with | ||
other Java/R engines such as JRI. Also it has a much more | ||
clean API and better exeption handling. | ||
- allow NaNs to be passed in raw form to R, i.e. double | ||
NAs can be created using | ||
Double.longBitsToDouble(0x7ff00000000007a2L) | ||
(nice methods for this should follow) | ||
|
||
o C++ client was moved to src/client/cxx | ||
|
||
JRclient: | ||
o change the representation of lists to generic | ||
named vectors (class RList) | ||
|
||
o change the ways attributes are accessed | ||
|
||
|
||
0.4-7 2007-01-14 | ||
o relax DLL versions checking on Windows | ||
|
||
o added more sophisticated implementation of RSassign | ||
in R client to support larger data. Nevertheless, due to | ||
limitations in R, objects must be serializable to | ||
less than 8MB to be assignable via RSassign. | ||
|
||
o added more robust error handling in the R client | ||
|
||
o fixed compilation on systems with custom include dir | ||
(such as Debian) | ||
|
||
o JRclient is now part of the Rserve package. | ||
See clients.txt for details. | ||
It is not compiled by default (but installed when | ||
--with-client is specified), because we cannot assume the | ||
existence of a Java compiler. | ||
|
||
|
||
0.4-6 2006-11-30 | ||
o fixed bug in RSeval when handling large objects | ||
|
||
o minor fix in RSassign | ||
|
||
o add an endianness hack for Windows in case config.h is not | ||
included properly | ||
|
||
|
||
0.4-5 2006-11-29 | ||
o added --with-server option (by default enabled). When disabled, | ||
the server itself is not built. When enabled, R must provide R | ||
shared library, i.e. it must have been compiled with | ||
--enable-R-shlib. | ||
|
||
o added --with-client option (by default disabled). When | ||
enabled, the C/C++ client is built and installed in the | ||
package. It will be copied in the "client" directory of the | ||
package and contains all files necessary for building a | ||
client application. | ||
|
||
This option has no effect on the R client which is always | ||
built and installed. | ||
|
||
o Windows version of Rserve now builds and installs both debug | ||
(Rserve_d.exe) and regular (Rserve.exe) version of Rserve. In | ||
addition, the Rserve function can now be used to launch Rserve | ||
even on Windows. | ||
|
||
o endianness detection now prefers information from the compiler | ||
macros thus allowing cross-compilation. Use -D_BIG_ENDIAN_ or | ||
-D_LITTLE_ENDIAN_ to override it if necessary. | ||
|
||
o allows universal build on Mac OS X | ||
|
||
o adapt to R_ParseVector interface change in R-devel | ||
|
||
|
||
0.4-4 2006-11-15 | ||
o first release on CRAN | ||
|
||
o added support for RAW type (both in and out) | ||
|
||
o added rudimentary client support (thanks to David Reiss for | ||
his contributions) and documentation | ||
|
||
|
||
Previous major releases: | ||
|
||
0.4 2005-08-31 | ||
* added support for sessions | ||
|
||
0.3 2003-10-07 | ||
* new format for boolean arrays | ||
last version: 0.3-18 (2005-08-28) | ||
|
||
0.2 2003-08-21 | ||
* support for large objects | ||
|
||
0.1 2002-07-06 | ||
* first release |
Oops, something went wrong.