* using log directory 'd:/Rcompile/CRANpkg/local/4.3/RCurl.Rcheck' * using R version 4.3.3 (2024-02-29 ucrt) * using platform: x86_64-w64-mingw32 (64-bit) * R was compiled by gcc.exe (GCC) 12.3.0 GNU Fortran (GCC) 12.3.0 * running under: Windows Server 2022 x64 (build 20348) * using session charset: UTF-8 * checking for file 'RCurl/DESCRIPTION' ... OK * this is package 'RCurl' version '1.98-1.16' * checking package namespace information ... OK * checking package dependencies ... OK * checking if this is a source package ... OK * checking if there is a namespace ... OK * checking for hidden files and directories ... OK * checking for portable file names ... OK * checking whether package 'RCurl' can be installed ... OK * used C compiler: 'gcc.exe (GCC) 12.3.0' * checking installed package size ... NOTE installed size is 10.3Mb sub-directories of 1Mb or more: libs 8.3Mb * checking package directory ... OK * checking DESCRIPTION meta-information ... OK * checking top-level files ... OK * checking for left-over files ... OK * checking index information ... OK * checking package subdirectories ... OK * checking R files for non-ASCII characters ... OK * checking R files for syntax errors ... OK * checking whether the package can be loaded ... [1s] OK * checking whether the package can be loaded with stated dependencies ... [1s] OK * checking whether the package can be unloaded cleanly ... [1s] OK * checking whether the namespace can be loaded with stated dependencies ... [0s] OK * checking whether the namespace can be unloaded cleanly ... [1s] OK * checking loading without being on the library search path ... [1s] OK * checking startup messages can be suppressed ... [1s] OK * checking use of S3 registration ... OK * checking dependencies in R code ... OK * checking S3 generic/method consistency ... OK * checking replacement functions ... OK * checking foreign function calls ... OK * checking R code for possible problems ... [6s] OK * checking Rd files ... [2s] OK * checking Rd metadata ... OK * checking Rd cross-references ... OK * checking for missing documentation entries ... OK * checking for code/documentation mismatches ... OK * checking Rd \usage sections ... OK * checking Rd contents ... OK * checking for unstated dependencies in examples ... OK * checking contents of 'data' directory ... OK * checking data for non-ASCII characters ... [0s] OK * checking data for ASCII and uncompressed saves ... OK * checking line endings in shell scripts ... OK * checking line endings in C/C++/Fortran sources/headers ... OK * checking line endings in Makefiles ... OK * checking compilation flags in Makevars ... OK * checking for GNU extensions in Makefiles ... NOTE GNU make is a SystemRequirements. * checking for portable use of $(BLAS_LIBS) and $(LAPACK_LIBS) ... OK * checking use of PKG_*FLAGS in Makefiles ... OK * checking pragmas in C/C++ headers and code ... OK * checking compiled code ... OK * checking installed files from 'inst/doc' ... OK * checking examples ... [214s] ERROR Running examples in 'RCurl-Ex.R' failed The error most likely occurred in: > ### Name: getURL > ### Title: Download a URI > ### Aliases: getURL getURI getURLContent > ### Keywords: IO > > ### ** Examples > > > omegahatExists = url.exists("https://www.omegahat.net") * Host www.omegahat.net:443 was resolved. * IPv6: (none) * IPv4: 169.237.46.9 * Trying 169.237.46.9:443... * Connected to www.omegahat.net (169.237.46.9) port 443 * schannel: disabled automatic use of client certificate * using HTTP/1.x > HEAD / HTTP/1.1 Host: www.omegahat.net Accept: */* < HTTP/1.1 200 OK < Date: Fri, 04 Oct 2024 04:36:04 GMT < Server: Apache/2.4.6 (Scientific Linux) OpenSSL/1.0.2k-fips mod_fcgid/2.3.9 PHP/5.4.16 mod_perl/2.0.11 Perl/v5.16.3 < Strict-Transport-Security: max-age=31536000; includeSubDomains < Last-Modified: Wed, 02 Mar 2016 19:16:03 GMT < ETag: "7e95-52d15b680a2c0" < Accept-Ranges: bytes < Content-Length: 32405 < Content-Type: text/html; charset=UTF-8 < * Connection #0 to host www.omegahat.net left intact > > # Regular HTTP > if(omegahatExists && requireNamespace("XML", quietly = TRUE)) withAutoprint({ + txt = getURL("https://www.omegahat.net/RCurl/") + ## Then we could parse the result. + XML::htmlTreeParse(txt, asText = TRUE) + }) > txt = getURL("https://www.omegahat.net/RCurl/") * Host www.omegahat.net:443 was resolved. * IPv6: (none) * IPv4: 169.237.46.9 * Trying 169.237.46.9:443... * Connected to www.omegahat.net (169.237.46.9) port 443 * schannel: disabled automatic use of client certificate * using HTTP/1.x > GET /RCurl/ HTTP/1.1 Host: www.omegahat.net Accept: */* < HTTP/1.1 200 OK < Date: Fri, 04 Oct 2024 04:36:05 GMT < Server: Apache/2.4.6 (Scientific Linux) OpenSSL/1.0.2k-fips mod_fcgid/2.3.9 PHP/5.4.16 mod_perl/2.0.11 Perl/v5.16.3 < Strict-Transport-Security: max-age=31536000; includeSubDomains < Last-Modified: Sat, 21 Jun 2014 03:27:39 GMT < ETag: "10bc-4fc50312600c0" < Accept-Ranges: bytes < Content-Length: 4284 < Content-Type: text/html; charset=UTF-8 < * Connection #0 to host www.omegahat.net left intact > XML::htmlTreeParse(txt, asText = TRUE) $file [1] "" $version [1] "" $children $children$html RCurl

The RCurl Package

RCurl_1.96-0.tar.gz (20 June 2014)

Manual

The RCurl package is an R-interface to the libcurl library that provides HTTP facilities. This allows us to download files from Web servers, post forms, use HTTPS (the secure HTTP), use persistent connections, upload files, use binary content, handle redirects, password authentication, etc.

The primary top-level entry points are

However, access to the C-level routines is also available via the R code, and one can specify options to all of the libcurl operations to control how they are performed. Documentation about the options and commands can be found at the libcurl web site

R functions can be specified to collect text from both the response and its headers. This can be used to customize the processing of the requests and feed the results to higher-level processing (e.g. HTML parsing via the htmlTreeParse function in the XML package ).

This package will be used to implement the low-level communication in the SSOAP package and other high-level packages that utilize HTTP to exchange requests and data.

Documentation

  • Paper outlining the package with some advanced examples.
  • Guide
  • Changes across releases
  • Examples of using asynchronous, multiple concurrent requests.
  • FAQ
  • Other Approaches

    httpRequest
    The httpRequest is a package on CRAN that implements a small part of HTTP directly in R using sockets.
    httpClient
    I have developed the httpClient package using R code and connections that supports additional aspects of R and HTTP, such as cookies, character escaping, and also SSL for HTTPS. I haven't released the code (favoring the approach of building on existing C code) but can make it available if anyone is interested.
    While having code in R makes it easier to understand, explore and modify, it is probably better to use existing specialized libraries like libcurl rather than doing this ourself. We gain speed and a large development community that cares about getting things right and testing them. We will explore the use of libwww

    Issues

    Using the opaque data structures of the libcurl infrastructure means that we cannot easily access the file descriptors used in the communication. This makes it somewhat more difficult to integrate these streams into an R even loop (e.g. REventLoop ). We can potentially turn them into regular connections (if the internal API is made "public").

    License

    This is distributed under the BSD license in the same spirit as libcurl itself.
    Duncan Temple Lang <duncan@wald.ucdavis.edu>
    Last modified: Mon May 25 11:35:38 PDT 2009 attr(,"class") [1] "XMLDocumentContent" > > > # HTTPS. First check to see that we have support compiled into > # libcurl for ssl. > if(interactive() && ("ssl" %in% names(curlVersion()$features)) + && url.exists("https://sourceforge.net/")) { + txt = tryCatch(getURL("https://sourceforge.net/"), + error = function(e) { + getURL("https://sourceforge.net/", + ssl.verifypeer = FALSE) + }) + + } > > > # Create a CURL handle that we will reuse. > if(interactive() && omegahatExists) { + curl = getCurlHandle() + pages = list() + for(u in c("https://www.omegahat.net/RCurl/index.html", + "https://www.omegahat.net/RGtk/index.html")) { + pages[[u]] = getURL(u, curl = curl) + } + } > > > # Set additional fields in the header of the HTTP request. > # verbose option allows us to see that they were included. > if(omegahatExists) + getURL("https://www.omegahat.net", httpheader = c(Accept = "text/html", + MyField = "Duncan"), + verbose = TRUE) * Host www.omegahat.net:443 was resolved. * IPv6: (none) * IPv4: 169.237.46.9 * Trying 169.237.46.9:443... * Connected to www.omegahat.net (169.237.46.9) port 443 * schannel: disabled automatic use of client certificate * using HTTP/1.x > GET / HTTP/1.1 Host: www.omegahat.net Accept: text/html MyField: Duncan * schannel: failed to decrypt data, need more data < HTTP/1.1 200 OK < Date: Fri, 04 Oct 2024 04:36:07 GMT < Server: Apache/2.4.6 (Scientific Linux) OpenSSL/1.0.2k-fips mod_fcgid/2.3.9 PHP/5.4.16 mod_perl/2.0.11 Perl/v5.16.3 < Strict-Transport-Security: max-age=31536000; includeSubDomains < Last-Modified: Wed, 02 Mar 2016 19:16:03 GMT < ETag: "7e95-52d15b680a2c0" < Accept-Ranges: bytes < Content-Length: 32405 < Content-Type: text/html; charset=UTF-8 < * schannel: failed to decrypt data, need more data * schannel: failed to decrypt data, need more data * schannel: failed to decrypt data, need more data * schannel: failed to decrypt data, need more data * Connection #0 to host www.omegahat.net left intact [1] "\n \nThe Omega Project for Statistical Computing\n\n\n\n\n\n

    The Omega Project for Statistical Computing

    \n\n\n

    Blog

    \n\n

    Table of Contents\n\n\n

    CRAN-style repository for Omegahat packages\n\n

    Papers on General Topics\n\n\n\n\n

    Recently Updated packages

    \n
    \n
    \n

    \n These can (typically) be download from the package-specific site\nwhich is http://www.omegahat.net/<package name>,\ne.g.\n http://www.omegahat.net/RGraphicsDevice\n\n

    \nAlternatively, you can download any package (and its previous versions) from the R repository on this site\n

    \n http://www.omegahat.net/R\n
    \nand specifically\n
    \n http://www.omegahat.net/R/src/contrib\n
    \nOne can use this repository from within R via\n
    \n  install.packages(packageName, repos = \"http://www.omegahat.net/R\")\n
    \n\nFor some packages, there are binaries for Windows.\nFor most others, you will need to specify to download the source package:\n
    \n  install.packages(packageName, repos = \"http://www.omegahat.net/R\", type = \"source\")\n
    \n

    \n
    \n
    \n\n
    \n \n Omegahat Packages for R\n\n \n \n\n \n \n\n \n \n\n \n \n\n \n \n\n \n\n \n \n\n\n \n \n\n \n \n\n \n\n \n\n\n\n \n\n \n\n \n\n \n\n\n \n\n\n \n\n \n\n \n \n \n \n \n\n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n\n\n \t\n \n \n \n \n \n \n \n \n \n \n\n \n\n \n \n\n \n\n \n\n\n \n \n \n\n\n \n \n \n\n \n\n \n\n \n \n \n\n\n\n\n \n \n \n\n\n\n\n \n \n \n\n\n\n \n \n \n\n \n\n \n \n \n\n\n \n \n \n\n\n\n\n \n \n \n \n\n \n \n \n\n \n\n \n \n \n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n \n \n\n \n \n \n\n \n \t\n\n \n \n\n\n \n \t\t\n \n\t\n \n \n\n \n\n \t \n \n \n \n \t\t \n \n \n \n \n \n\n \n \n \n \n\t\n \n \n \n \n \n
    RFirefox\n This embeds R within the Firefox Web browser and allows \n JavaScript code to call R functions and evaluate R expressions.\n It also allows R functions and code to access JavaScript objects\n and methods and so be used as event handlers and to generate dynamic content within\n a Web page. (Gabe Becker and Duncan Temple Lang)\n
    RKML(Version 0.1-0) updates to RKML\n and annotated examples presented at the JSM 2011 in the\n session Statistical Graphics in Climate Research.\n
    RGoogleStorage(Version 0.1-0) a package to interface\nGoogle's storage API from within R, to upload and download data.\n
    REuPathDB(Version 1.0-0) a package to interface\nthe EuPathDB (Eukaryotic Pathogen Database Resources) Web Services\nvia their REST API. This is machine generated code derived from\nthe WADL files describing the Web service methods. \n
    WADL(Version 0.2-0) a package that can\nprogrammatically generate R code to interface REST Web Services\nthat are described by a WADL (Web Application Description Language)\ndocument, e.g. the EuPathDB.\n
    RExcelXML\n\tEnhancements for reading XLSX files. See also the xlsx package by Adrian Dragulescu.
    RGoogleDocsupdate for RGoogleDocs\nto enhance uploadDoc() and deleteDoc() and subsetting worksheet references, among other things.\n
    REuPathDBa package to interface\nthe EuPathDB (Eukaryotic Pathogen Database Resources) Web Services\nvia their REST API. This is machine generated code derived from\nthe WADL files describing the Web service methods. \n
    WADLa package that can\nprogrammatically generate R code to interface REST Web Services\nthat are described by a WADL (Web Application Description Language)\ndocument, e.g. the EuPathDB.\n
    SpiderMonkeya package that maps allows R programmers to call\nJavaScript functions and methods from R and to evaluate JavaScript scripts.\nThis is useful for running JavaScript code that might be of use in R,\nbut also for manipulating Web documents displayed in a Web browser\nwhen R is embedded in the browser as an extension. This is possible\nwith an updated version of the RFirefox package to be released very soon.\n
    ROpenOfficeupdate for\nreading OpenOffice spreadsheets directly in R via the XML\ncontent in the .ods files.\n
    GeoIPa package that maps IP addressess and \n host names to geographic locations - latitude, longitude, region, city, zip code, ....\n This package is built via RGCCTUFFI to provide dynamic access to existing native code.\n In addition to the basic functions provided by the C library, the package provides a function\n for finding the nearest CRAN mirror.
    RGCCTUFFIa package that programmatically\ngenerates Rffi-based dynamic interfaces to native C routines and data structures\nwithout very much human intervention. (You have to call the main function in the package!)
    RAutoGenRunTimerun-time support for\nprogrammatically generated code via RGCCTranslationUnit and RGCCTUFFI.
    Rffian interface to libffi for invoking\n arbitrary compiled routines from R without the need for writing and compiling\n wrapper code. Instead, one can describe the routine's input and output types in R\n and Rffi does the marshalling to invoke the routine and return the value.
    RGCCTranslationUnitfunctionality to read C/C++ code and to generate\nbindings to those routines, classes and data structures.
    XMLRPCBug fix release thanks to Paul Shannon.
    RCurlBug fix for ftpUpload(), found by Spencer Graves.
    Google Earth plugin and RExamples for embedding\n Google Earth in a Web page and using an R plot (in SVG) to\n interact with the Google Earth plugin.
    RWordpressFacilities for\n interacting with a blog site.
    XMLRPCUpdate to\n the XMLRPC package for remote procedure calls via HTTP and XML.
    RKMLDeviceR\n graphics device (pure R code) for drawing R plots in KML for\n display on Google Earth.
    RKMLUpdated
    RHTMLFormsUpdated
    RFreetypeA package to read font\n files,\n\te.g. True Type Font files (.ttf files),\n and to retrieve font metric information. This can be used\n by graphics devices (written in R with RGraphicsDevice)\n to do computations on strings to determine their sizes.
    RGoogleTrendsInterface to query\n and download Google trends data.
    RTidyHTMLInterface to libtidy for\n cleaning up HTML documents to be well-formed
    RNYTimesInterface to several New York Times Web services
    \n\tREST-related packages\n\t\n The following are examples of implementing interfaces\n to REST APIs as an R client:\n \n\n Related infrastructure packages include\n \n \n
    RAmazonDBREST\n\tA REST-based interface to Amazon's SimpleDB service\n\tfor hosting databases and facilitating creating databases,\n\tadding and deleting content, and making queries.
    RDocbook\n\tCode for working with R and Docbook documents.\n\t These are external facilities (from R) such as\n\t Emacs bindings and shell scripts that facilitate authoring\n\tand processing Docbook documents with R code.
    XMLRPC\n\tA package that provides basic XML-RPC client\n\tfacilities for accessing remote methods in XML-RPC\n\tservers.
    RExcelXML\n\tFacilities for working with .xlsx documents,\n\ti.e. Excel 2007.
    RUbigraph\n\tA package that provides an interface to Ubigraph,\n\t an Open GL application for rendering interactive graphs\n\t(node & edges). The connection is via XML-RPC.
    RKML\n\tA package that provides high-level functions\n\tfor creating KML displays for Google Earth from within R,\n\t using spatial temporal data.
    R2GoogleMaps\n\tA package that allows R programmers to create HTML\n\tand JavaScript code to display content via Google Maps in a\n\tWeb Browser
    RJavaScript\n\tA package that converts R code to JavaScript to help\n\tcreating JavaScript content for Web pages, Flash applications,\n\tSVG displays, ...
    RAmazonS3\n\tPackage that allows R programmers to interact with\n\tAmazon's S3 storage server, uploading and downloading and\n\tgenerally managing files.
    RRuby\n\tPackage that allows R programmers to call Ruby from R
    Rcrypt\n\tInterface to the crypt C routine for encrypting passwords.
    RGraphicsDevice\n\tPackage that allows R programmers to implement R graphics devices entirely within R code
    FlashMXML\n\ta prototype of an R graphics device that generates Flash/Flex content.
    XMLSchema\n\tA package for reading and processing XML schema in R
    SSOAP\n\tA package for R client-side access to SOAP-based Web services
    \n XML\n Numerous updates for parsing and generating XML content.
    \n RCurl\n Updates for new versions of libcurl and the many new options.
    Rcompression package\n\t Interface to zlib and bzip2 libraries for performing in-memory compression and decompression\n in R. This is useful when receiving or sending contents to remote servers, e.g. Web services, HTTP requests via RCurl.\n
    Sxslt package\n\tUpdates to the bi-directional interface between R and\n\tlibxslt.\n In particular, the use of XSLT from within R is greatly\n\tenhanced with much greater control of registering functions, \n parameters, etc.\n
    \n SJava\n \n Bug fixes and new features for converters.\n And removed the dependency on an old version of ANTLR.\n
    \n Rexif\n \n An R package for reading camera information\n and other meta-data from images taken with digital cameras.\n
    \n CGIwithR\n \n Extensions to David Firth's original CGIwithR package.\n I am now maintaining that package after David's \n good work.\n
    \n Aspell\n \n An interface to the GNU aspell library for checking\n the spelling of words and entire documents.\n
    \n RDCOMEvents\n \n This package provides a facility to listen for DCOM events\n from applications such as Excel and Word and others and to \n process them with R functions.\n
    \n Combinations\n \n This package is used for generating the combinations for choosing r\n items from a set of n items but does it in C code.\n When n gets large, the package provides a mechanism for dealing with each combination\n as it is generated so that one does not have to hold the entire collection around\n and operate on them after creating the entire collection.\n This makes computations feasible for very large numbers of combinations. It does not \n necessarily make them fast!\n The package is also a good example of the basics of calling R functions from C code.\n It also illustrates aspects of adapting code for a stand-alone application to be used within\n an interactive language like R/S-Plus, Python, Perl or Matlab/Octave.\n
    \n RMatlab\n \n An interface between R and Matlab.\n One can call R functions from Matlab code,\n and Matlab functions from R code\n using the syntax of the local programming language.\n
    \n RCurl\n \n A package for performing HTTP requests\n using the C-level cURL library.\n This is a very flexible, customizable way to\n handle HTTP-based communications from within R\n in a higher-level and more extensive way than\n is directly available via socket connections.\n This is used by the SSOAP\n package\n and a forthcoming package for HTML form submissions.\n
    \n Rstem\n \n A package for performing word stemming\n for use in text analysis.\n This is an interface to Martin Porter's\n Snowball\n generated C code for performing\n stemming. The package has\n support for several languages\n and is exensible.\n
    \n IDocs \n \n An experimental package for interactive documents\n created in XML and rendered using\n viewHtml in RGtkViewers.\n This connects the different plugins in a document\n and across documents using nested environments and\n a stack that pushes and pops environments as they\n are entered and exited.\n
    \n XSL files\n\tfor Omegahat \n \n This is a collection of support XSL, DTD and CSS files\n for Omegahat. The suite allows thefiles to be used via catalogs.\n
    \n SASXML \n \n An experimental package for reading XML data in\n the Open Information Model (OIM) format,\n e.g. SAS XML files.\n This might be generalized to have functionality\n for reading PMML (Predictive Model Markup Language).\n
    \n RDCOMServer \n \n A rich, extensible and flexible mechanism for defining\n and implementing COM classes and objects\n entirely within the S language.\n This allows one to make S functions and objects\n accessible to other applications and programming languages\n without people having to know the S language.\n This provids not just access to the R evaluator, but\n arbitrary S objects.\n
    \n RDCOMClient \n \n A mechanism that allows S users to create and use COM objects\n directly within an R session.\n
    \n RGnomePrint \n \n An R interface to libgnomeprint, the Gnome printing library that\n provides facilities for controlling printing from Gtk widgets,\n previewing, and generating Postscript, Windows metafiles (and\n potentially PDF.)\n
    \n GccTranslationUnit \n \n A Python module for obtaining reflectance information from C/C++\n source code. This can be used to programmatically generate S bindings\n to arbitrary routines, classes and data structures\n in native code and also build the registration\n table for routines to be accessed from R.\n We can also use this to compute on C/C++ code,\n e.g. determining call graphs, free variables. \n
    \n SWinTypeLibs \n \n Facilities for reading type information from DLLs, type\n libraries or (D)COM objects directly in R.\n This can be used to programmatically generate interfaces\n to C/C++ code.\n
    \n SWinRegistry \n \n Read and write access to the Windows registry.\n For Windows platform only.\n
    S language binding\n\tto the gtk+extra library.\n\t\n\t\n\t Access to the widgets in the gtk+extra library,\n\t i.e. the data-grid/sheet display,\n\t directory list, icon list and file list.\n\t
    S language binding\n\tto the Gdk pixbuf library.\n\t\n\t\n\t Access to the Pixbuf library for reading\n\t images into R to be used in RGtk\n\t and associated packages.\n\t
    S language binding\n\tto the Glade library.\n\t\n\t\n\t S language facilities for instantiating\n\t GUIs constructed interactively via the\n\t glade GUI builder.\n\t This can register S functions or expressions, or C routines specified\n\t as callbacks in the glade interface.\n\t
    \n\tA plugin event-loop for R.\n\t\n\t\n A facility that allows one to dynamically\n\t specify a new event loop to use within\n\t an R session. This allows one to use\n\t Gtk or Tk event loop\n\t to drive R. One can write methods\n\t for other toolkits such as Carbon, Qt, etc.\n\t
    S language binding\n\tgenerator for Gtk-based libraries.\n\t\n\tA package that creates S and C code to\n\tinterface to arbitrary Gtk-based C libraries and Gtk classes\n\t such as Gtk itself, Zvt, gtk+-extra, gtkhtml, embedded\n\t Mozilla, etc.\n\t
    R/SPlus XML Parsing\n\tpackage\n\tParse and create XML documents within the S\n\t language.
    RGtk package \n\tBindings for programming GUIs using Gtk and extended\n\t widget sets.
    An R-XLisp\n\tinterface \n\tInterface between R and XLisp allowing R code to call\n\t XLisp functions.
    RObjectTables\n\tpackage \n\tFramework for user-defined search path elements,\n\t alternative automatic serialization, \n\t external variables, etc.
    RGtkViewers package\n\tA collection of GUI tools for viewing different\n\t information, built using RGtk.
    RSMethodsFormal S classes and methods for R.
    RSPythona bi-directional interface allowing calling\n R functions from Python code and accessing Python\n objects, classes and functions from R sessions.
    RSPerla bi-directional interface allowing calling\n R functions from Perl code and accessing Perl\n objects, classes and routies from R sessions.
    RGnumerican R plugin for Gnumeric that allows Gnumeric\n\tusers to call R functions from within a spreadsheet,\n\tand for R programmers to access Gnumeric sheets\n\tand their contents from within R functions.
    R embedded in Xalan, the XSL\n translatorUse R to generate output in and control\n\t transformation of XML documents using XSL functions
    R Plugin for\n Netscape\n\t A plugin for Netscape that allows one to call R from\n\t JavaScript and JavaScript from R.\n\t
    \n
    \n\nThese are just some of a complete collection of Omegahat packages for R and S-Plus.\n \n

    \n

    \n\n\n
    \n\nOmega is a joint project with the goal of providing a variety of\nopen-source software for statistical\napplications.\nThe Omega project began in July, 1998, with discussions among\ndesigners responsible for three current statistical languages (S, R,\nand Lisp-Stat), with the idea of working together on new directions\nwith special emphasis on web-based software, Java, the Java\nvirtual machine, and distributed computing.\nWe encourage participation by anyone wanting to extend\ncomputing capabilities in one of the existing languages, to those\ninterested in distributed or web-based statistical software, and to\nthose interested in the design of new statistical languages.\n

    \nSoftware is being developed for the project; we refer to it as the omegahat software, to emphasize in typical\nstatistical terminology that we are starting on a process of\napproximating the ideal software through many iterations, among other\nreasons.\n

    \n\nFollow the pointers below to find out more about the omegahat software.\n

    \n

    \n\n

    Philosophy

    \n\n

    Related Software

    \nSome of the many areas in which Java packages may be of value to statistics\ninclude:\n

    \nIn many of these areas, there have been questions about the speed\nattainable by Java. Investigating such questions is part of what we\nwant to do.\n\n

    Policy

    \n

    \nSpecific goals and procedures are still being developed, but the current\npolicy includes the following.\n

    \n

    \n

    Membership

    \n

    \nThe current core group of Omega developers includes:\n

    \n\n\n\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n \n\n\n\n\n\n\n\n\n
    Douglas BatesJohn Chambers Di Cook
    Peter DalgaardRobert Gentleman Kurt Hornik
    Ross Ihaka Friedrich Leisch Thomas Lumley
    Martin MächlerGuido MasarottoPaul Murrell
    Balasubramanian NarasimhanBrian RipleyGünther Sawitzki
    Duncan Temple LangLuke Tierney Bill Venables
    \n
    \n

    \nParticipation in the general and special-purpose software work of the\nOmega project is open to anyone interested in our goals.\nThe mailing\nlists are a good place to start; in particular\n\nomega-devel@omegahat.net\nis a list for discussion of the general development of software\nfor the project.\nThe success of the Omega project is highly dependent on the\ninvolvement of a wide range of participants in many different areas.\nWe can all benefit.\n

    \n\n

    The Omega Project Umbrella

    \n\nAs well as developing software ourselves,\nthe project also hopes to support other development efforts.\nTo this end, Doug Bates has generously allowed his machine to be used\nfor distributing code for different projects.\nThese projects include.\n\nMore general details are also available.\n\n \n" > > > > # Arrange to read the header of the response from the HTTP server as > # a separate "stream". Then we can break it into name-value > # pairs. (The first line is the HTTP/1.1 200 Ok or 301 Moved Permanently > # status line) > if(omegahatExists) withAutoprint({ + h = basicTextGatherer() + txt = getURL("https://www.omegahat.net/RCurl/index.html", + header= TRUE, headerfunction = h$update, + httpheader = c(Accept="text/html", Test=1), verbose = TRUE) + print(paste(h$value(NULL)[-1], collapse="")) + con <- textConnection(paste(h$value(NULL)[-1], collapse="")) + read.dcf(con) + close(con) + }) > h = basicTextGatherer() > txt = getURL("https://www.omegahat.net/RCurl/index.html", header = TRUE, + headerfunction = h$update, httpheader = c(Accept = "text/html", Test = 1), verbose = TRUE) * Host www.omegahat.net:443 was resolved. * IPv6: (none) * IPv4: 169.237.46.9 * Trying 169.237.46.9:443... * Connected to www.omegahat.net (169.237.46.9) port 443 * schannel: disabled automatic use of client certificate * using HTTP/1.x > GET /RCurl/index.html HTTP/1.1 Host: www.omegahat.net Accept: text/html Test: 1 < HTTP/1.1 200 OK < Date: Fri, 04 Oct 2024 04:36:09 GMT < Server: Apache/2.4.6 (Scientific Linux) OpenSSL/1.0.2k-fips mod_fcgid/2.3.9 PHP/5.4.16 mod_perl/2.0.11 Perl/v5.16.3 < Strict-Transport-Security: max-age=31536000; includeSubDomains < Last-Modified: Sat, 21 Jun 2014 03:27:39 GMT < ETag: "10bc-4fc50312600c0" < Accept-Ranges: bytes < Content-Length: 4284 < Content-Type: text/html; charset=UTF-8 < * Connection #0 to host www.omegahat.net left intact > print(paste(h$value(NULL)[-1], collapse = "")) [1] "Date: Fri, 04 Oct 2024 04:36:09 GMT\r\nServer: Apache/2.4.6 (Scientific Linux) OpenSSL/1.0.2k-fips mod_fcgid/2.3.9 PHP/5.4.16 mod_perl/2.0.11 Perl/v5.16.3\r\nStrict-Transport-Security: max-age=31536000; includeSubDomains\r\nLast-Modified: Sat, 21 Jun 2014 03:27:39 GMT\r\nETag: \"10bc-4fc50312600c0\"\r\nAccept-Ranges: bytes\r\nContent-Length: 4284\r\nContent-Type: text/html; charset=UTF-8\r\n\r\n" > con <- textConnection(paste(h$value(NULL)[-1], collapse = "")) > read.dcf(con) Date [1,] "Fri, 04 Oct 2024 04:36:09 GMT" Server [1,] "Apache/2.4.6 (Scientific Linux) OpenSSL/1.0.2k-fips mod_fcgid/2.3.9 PHP/5.4.16 mod_perl/2.0.11 Perl/v5.16.3" Strict-Transport-Security Last-Modified [1,] "max-age=31536000; includeSubDomains" "Sat, 21 Jun 2014 03:27:39 GMT" ETag Accept-Ranges Content-Length [1,] "\"10bc-4fc50312600c0\"" "bytes" "4284" Content-Type [1,] "text/html; charset=UTF-8" > close(con) > > > > # Test the passwords. > if(omegahatExists) withAutoprint({ + x = getURL("https://www.omegahat.net/RCurl/testPassword/index.html", userpwd = "bob:duncantl") + + # Catch an error because no authorization + # We catch the generic HTTPError, but we could catch the more specific "Unauthorized" error + # type. + x = tryCatch(getURLContent("https://www.omegahat.net/RCurl/testPassword/index.html"), + HTTPError = function(e) { + cat("HTTP error: ", e$message, "\n") + }) + }) > x = getURL("https://www.omegahat.net/RCurl/testPassword/index.html", userpwd = "bob:duncantl") * Host www.omegahat.net:443 was resolved. * IPv6: (none) * IPv4: 169.237.46.9 * Trying 169.237.46.9:443... * connect to 169.237.46.9 port 443 from 0.0.0.0 port 63647 failed: Timed out * Failed to connect to www.omegahat.net port 443 after 21146 ms: Couldn't connect to server * Closing connection Error in function (type, msg, asError = TRUE) : Failed to connect to www.omegahat.net port 443 after 21146 ms: Couldn't connect to server Calls: withAutoprint ... eval -> getURL -> curlPerform -> -> fun Execution halted * checking for unstated dependencies in 'tests' ... OK * checking tests ... [24s] OK Running 'dynSetReader.R' [2s] Running 'jpeg.R' [22s] * checking PDF version of manual ... [19s] OK * checking HTML version of manual ... [9s] OK * DONE Status: 1 ERROR, 2 NOTEs