Software

The following software is used by CoCalc under the hood. It’s either installed directly or slightly modified to fit into the infrastructure. Besides that, there is a more detailed and fairly up-to-date list available.

  • SageMath – Sage is an open-source mathematics software system. It is the patron for CoCalc’s former name “SageMathCloud”.
    • Inside Sage, there are a lot of components bundled. Note, they maybe replace existing system-wide software like Python libraries and R. (i.e. there is a difference between sage -R vs. R, sage -ipython vs. ipython/ipython3 and of course, sage -python vs. python/python3.)
  • IPython – This is a shell, a notebook and a distributed computing environment built on top of Python.
  • R Statistical Software – the R-project provides a statistical programming language and a vast plethora of packages on top of it to extend its core functionalities. Installed R packages
  • LaTeX – CoCalc provides the capability to author LaTeX documents online. This is a typesetting system with a focus for high-quality layout and formulas. Besides pdflatex, also other variants like XeTeX and LuaTeX are installed and available.
  • Linux – The famous open-source operating system, which holds together everything. The used variant is Ubuntu.
  • Python – Python is a general purpose programming language. Installed Python packages
  • Julia – programming language for scientific computing. Installed Julia packages

Note

Via the Software Environment selector, you have a little bit control over the software you’re running in your project.

Software Updates

Recent updates to CoCalc’s software stack available in the “Default” environment.

2019-02-16

2019-02-09

  • (Linux)
    • new: Cantera 2.4.0 for Python 2 and Python 3
    • updates: macaulay2 1.13, bazel 0.22, chrome and firefox, and various other packages
  • (Python3)
    • new: pyfftw 0.11.1, pymp-pypi 0.4.2
    • updates: dask-1.1.1
  • (Node): npm 6.7.0
  • (Julia): making Julia 1.1.0 the default (v1.1.0 release notes) and removing older, no longer maintained versions. Maybe cleanup the build cache, by running rm -rf ~/.julia in the Terminal/Miniterm.
  • (Anaconda 5): various updates to packages
  • (Sage) Development version 8.7 beta 3 (Python 3)

2019-01-26

  • (sage): Sage 8.6 is the default! (use sage_select 8.4 to switch back). Enjoy the shorter startup time, which also speeds up compiling SageTeX documents!
    • A Python3 version of Sage 8.6 is also available: sage-8.6-py3 or in a Jupyter Notebook: sagemath-8.6-python3.ipynb. (this is experimental)
  • (py3):
    • new:
      • ipyvolume 0.5.1 (demo notebook, requires the plain jupyter server!)
      • qiskit-chemistry 0.4.2 – a set of tools, algorithms and software to use for quantum chemistry research
      • PySCF – a simple, light-weight, and efficient platform for quantum chemistry calculations
    • updated:
      • pip3 19.0.1
      • qiskit 0.7.2, qiskit-aqua 0.4.1
      • scikit-bio 0.5.5
      • dask 1.1.0
      • nbgrader 0.5.5
      • ipython 6.5.0
      • Cython 0.29.2
      • setuptools 40.6.3
      • tensorboard 1.12.2
      • tmuxp 1.4.2
      • axelrod 4.4.0
  • (R):
    • new:
    • updated: knitr 1.21, ggplot 3.1.0, data.table 1.20.0, dplyr 0.7.8, Rcpp 1.0, rlang 0.3.1, forecast 8.5, psych 1.8.12, plotly 4.8, yaml 2.2
  • (Julia): new: D4M packageDynamic Distributed Dimensional Data Model
  • (node/upd): npm 6.6.0, TypeScript 3.2.4, tslint 5.12.1, forever 0.15.3, CoffeeScript 2.3.2, reveal-md 2.4.1, prettier 1.16.0, tldr 3.2.6, docsify-cli 4.3.0, chromedriver 2.45.0
  • (Linux) various system packages, noteworthy: xpra 2.4.3

2019-01-20

  • (new) SageMath version 8.6 (sage-8.6) + Jupyter Kernel available (not the default yet!)

  • (new) Cadabra2 _”a field-theory motivated approach to computer algebra”_ available via cadabra2 or in an X11 desktop as cadabra2-gtk (screenshot)

  • (chg) As announced previously, Julia version 1 is the default now. Symlink ~/bin/julia to julia-0.7 if you need to switch back.

  • (new): Julia 1 packages: SymPy, Combinatorics, UnicodePlots, Bokeh and Nemo

  • (py3):

2019-01-12

2019-01-06

  • Julia 1.0.3: comes with packages PyPlot, Plots, DifferentialEquations, Compat, LinearAlgebra, GLM, etc. now!
  • Sage development version 8.6.rc0

2018-12-30

2018-12-22

  • (py3) - new: nbval for unit-testing Jupyter Notebooks
  • (x11) - new: sqlitebrowser - updated: OpenModelica 1.14
  • (software) - SageMath development version 8.5.rc1 - we have sqlite (version 2) and sqlite3 (version 3) command line interface on board - Updated Rust to 1.30 - broad Linux package update
  • (node/upd): npm 6.50, TypeScript 3.2.2, prettier from 1.11 to 1.15.3, …
  • (julia): removing deprecated 0.6 Jupyter kernel

2018-12-16

  • (Py3)
  • (x11)
  • (software/new): ROOT version 6.14/06, released 2018-11-05. To work with graphical interface: first, open up an X11 environment, then start ROOT by calling start-root in the terminal.
  • (Sage/upd) Sage Development updated to 8.5.rc0

Note about future updates:

  • We will remove Julia 0.6.x (0.7 and 1.0 remains for now)
  • Make the python2 jupyter kernel choice more explicit (System’s global version vs. SageMath’s)

2018-12-08

  • (Julia/upd) Julia 1.0.2 (julia-1) and packages CSV, DataFrames, Gadfly, Statistics, LinearAlgebra and GLM in default julia 0.7
  • (Software/new) sqlline, JDBC for PostgreSQL and MySQL – issue #3400
  • (Linux/upd) various updates, only minor version number changes
  • (X11/new) kgraphviewer and additional launcher buttons
  • (Py3/upd) graphviz 0.10.1, mxnet 1.3.1, tellurium 2.1.3, jinja2 2.9.6, pymc3 3.5, scikit-image 0.14.1
  • (Py2&3/new) hmmlearn 0.2.1
  • (Library) new entry Scikit Image Tutorial and updates of several entries

2018-12-03

  • (Sage/upd) Sage Development updated to 8.5.beta6

2018-12-01

2018-11-28

  • (Sage/upd) Sage Development updated to 8.5.beta5
  • (Linux/upd) noteworthy minor updates: vs code: 1.29.1, bazel: 0.19.2, idle: 3.6.7, python3: 3.6.7, postgresql: 11.1
  • (Py3/new) NOAA SDK
  • (Py3/upd) yapf 0.25, tensorflow 1.12, tensorboard 1.12, tensorflow-probability 0.5, scikit-learn 0.20.1, numba 0.40.1, arctic 1.73 (also Py2)

2018-11-13

2018-11-10

2018-11-03

  • (py2/py3 updates): Bokeh 1.0, Sphinx 1.8.1, Plotly 3.3.0, tensorflow 1.11 (py3 only), Pip 18.1

  • (Sage/upd) Sage Development version updated to 8.5.beta2

  • (py3/new)
  • (x11) xdotool, xclip, xvfb update

  • (linux/upd) broad Linux update, in particular rustc 1.28, cargo 0.29, bazel 0.19, …

  • (node.js/upd) noteworthy are typescript 3.1.4, coffeescript 2.3.2, prettier 1.14.3, reveal-md 2.3.0 and tldr 3.2.5

  • (R/upd) updating some packages like dplyr, knitr, data.table, plotly, etc.

  • (R/new) export package

  • (R/new) installing “swirl” courses globally for R. Create an “X11 Desktop” file, run R, and then start it:

    > require(swirl)
    > swirl_options(swirl_data_dir = "/home/user/swirl")
    > swirl()
    

2018-10-27

2018-10-18

  • (new) Sage 8.4 (default still 8.3). Use sage_select to switch it, test it, and maybe give us feedback.
  • (new) PostgreSQL 11 (default still 10). It’s in /usr/lib/postgresql/11/bin/. To use it, fix your path, e.g. via path-remove "/usr/lib/postgresql/10/bin"; path-append "/usr/lib/postgresql/11/bin" in your ~/.bashrc.
  • (upd) overall Linux software update. notable: * git (1:2.17.1-1ubuntu0.3`_ * texlive-binaries (2017.20170613.44572-8ubuntu0.1)
  • (new) xpra/websockify
  • (new) couple of X11 related software, like PSPP, Gimp, LibreOffice, …
  • (fix) relaxing policies for ImageMagick to be able to run convert on PDF files.

2018-10-06

2018-09-29

  • (upd) broad Linux software packages update, including minor updates to bazel, chrome, curl and python3.6
  • (upd/py3) “pip3” 18.0, seaborn 0.9.0, geopandas 0.4.0, and scikit-learn 0.20.0
  • (upd/py2) “pip2” 18.0, seaborn 0.9.0, tensorflow 1.10.1
  • (rem/ac5) removing broken pandas-datareader from anaconda5 (no update available yet, use Ubuntu’s Python 3)
  • (new/npm) tldr pages

2018-09-23

  • (upd) broad round of updating Anaconda 5 packages
  • (rem) Removal of PostgreSQL 9.6. We provide the 10.x series by default. - for the purpose of upgrading, the old install is kept in /usr/lib/postgresql/9.6/ for a little while.
  • (fix) pandas-datareader incompatibility resolved
  • (upd/py3) dask/distributed, SymPy 1.3, Numba 0.38.1/llvmlite, and pandas-datareader 0.7.0
  • (upd/py2) pandas 0.23.4 and pandas-datareader 0.7.0
  • (upd) LEAN mathlib to rev d0f1b21a9df64f, located in /ext/lean/lean-3.4.1-linux/mathlib/.
  • (new/py2+py3) pyLADvis
  • (new) C++ 17 Jupyter kernel via xeus-cling
  • (upd) SageMath release 8.4.beta6 2018-09-22

2018-09-15

  • (new) R packages: roperators and a couple from R Views 2018-07
  • (upd) bazel 0.17.1
  • (upd) nodejs 8.12 (+ npm package updates)
  • (upd) relaxing browser compatibility check specifically for newest Firefox 60.2 ESR
  • (upd) major changes in handling RMarkdown files
  • (new) support for automatically processing PythonTeX code in LaTeX documents
  • (new) additional Library entries for RMarkdown and LaTeX/PythonTeX examples
  • (new) first iteration to support LEAN
  • (upd) SageMath 8.4.beta5 (released on 2018-07-16)

2018-09-11

2018-09-08

  • (fix) irregularities with man-pages introduces in previous update
  • (compat) Firefox 62 was released, which works well again with CoCalc’s websocket over Cloudflare
  • (upd/py3) tensorflow 1.10.1
  • (upd/node) npm 5.6.0 → 6.4.1, typescript 3.0.3, CoffeeScript 2.3.1 and a couple other global node packages
  • (upd/linux) headless chrome 69, and a couple of linux system libs
  • (upd/sage) SageMath development 8.4beta4 available
  • (upd/anaconda) broad package upgrade of Anaconda5 environment
  • (chg) Jupyter plots done via R in Sage output SVG by default

2018-09-01