22.09 Software


Scope

This document summarizes the software available on the Metworx 22.09 Blueprint release, including any details on changes from previous Metworx Blueprint versions.

Metworx 22.09 Software

Docker: (v.20.10.17)

Docker is a tool which is used to automate the deployment of applications in lightweight containers so that applications can work efficiently in different environments (note: a container is a software package that consists of all dependencies required to run an application).

Change Summary:

Added back to Metworx platform (was not part of 21.08 Blueprint). Release notes for Docker version 20.10.17 included here: https://docs.docker.com/engine/release-notes/#201017

Git: (v2.17.1)

Git is a distributed version-control system for tracking changes in source code during software development. It is designed for coordinating work among programmers, but it can be used to track changes in any set of files. Its goals include speed, data integrity, and support for distributed, non-linear workflows.

Change Summary:

No change from 21.08 Blueprint

GNU Fortran: (v7.5.0)

The GNU Fortran compiler fully supports the Fortran 77, 90, and 95 standards, parts of the Fortran 2003 and 2008 standards, as well as several vendor extensions.

Change Summary:

No change from 21.08 Blueprint

Go: (v1.18.2)

Go is an open source programming language developed by Google. It's concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language.

Change Summary:

The upgrade from 1.16.5 to 1.18.2 is considered a “significant release” that includes “changes to the language, implementation of the toolchain, runtime, and libraries.”

With this release being considered a “significant release” by the developers, it is recommended that any Metworx platform users who anticipate utilizing Go spend time looking through the associated release notes. Full Go 1.18 release notes are available at https://tip.golang.org/doc/go1.18

Guacamole: (v1.4.0)

Apache Guacamole is a clientless remote desktop gateway, requiring no client side applications other than a browser. Users will access a kde desktop on running METWORX workflows.

Change Summary:

The upgrade from 1.3 to 1.4 provides stability and performance enhancements. The full changelog is available at https://guacamole.apache.org/releases/1.4.0/

Julia: (v1.7.2)

Julia is a flexible, high-level, high-performance dynamic language, appropriate for scientific and numerical computing, with performance comparable to traditional statically-typed languages.

Julia features optional typing, multiple dispatch, and good performance, achieved using type inference and just-in-time (JIT) compilation, implemented using LLVM. It is multi-paradigm, combining features of imperative, functional, and object-oriented programming. Julia provides ease and expressiveness for high-level numerical computing, in the same way as languages such as R, MATLAB, and Python, but also supports general programming. To achieve this, Julia builds upon the lineage of mathematical programming languages, but also borrows much from popular dynamic languages, including Lisp, Perl, Python, Lua, and Ruby.

Change Summary:

Upgraded from the Julia 1.6 series to the Julia 1.7 series. The change includes a number of updates and improvements to the language, but no major changes to core behavior. The detailed release notes for the Julia 1.7 series can be found here https://docs.julialang.org/en/v1.7/NEWS/

JupyterLab: (v3.1.6)

JupyterLab is a next-generation web-based user interface for Project Jupyter that enables users to work with documents and activities such as Jupyter notebooks, text editors, terminals, and custom components in a flexible, integrated, and extensible manner.

You can arrange multiple documents and activities side by side in the work area using tabs and splitters. Documents and activities integrate with each other, enabling new workflows for interactive computing, for example:

  • Code Consoles provide transient scratchpads for running code interactively, with full support for rich output. A code console can be linked to a notebook kernel as a computation log from the notebook, for example.
  • Kernel-backed documents enable code in any text file (Markdown, Python, R, LaTeX, etc.) to be run interactively in any Jupyter kernel.
  • Notebook cell outputs can be mirrored into their own tab, side by side with the notebook, enabling simple dashboards with interactive controls backed by a kernel.
  • Multiple views of documents with different editors or viewers enable live editing of documents reflected in other viewers. For example, it is easy to have live preview of Markdown, Delimiter-separated Values, or Vega/Vega-Lite documents.

JupyterLab is accessible via RStudio Workbench on Metworx.

Change Summary:

No change from 21.08 Blueprint

Jupyter Notebook: (v6.4.3)

Jupyter Notebook extends the console-based approach to interactive computing in a qualitatively new direction, providing a web-based application suitable for capturing the whole computation process: developing, documenting, and executing code, as well as communicating the results. It combines two components:

  • A web application: a browser-based tool for interactive authoring of documents which combine explanatory text, mathematics, computations, and their rich media output.
  • Notebook documents: a representation of all content visible in the web application, including inputs and outputs of the computations, explanatory text, mathematics, images, and rich media representations of objects.

Jupyter Notebook is accessible via RStudio Workbench on Metworx.

Change Summary:

No change from 21.08 Blueprint

LaTeX: (v2021)

LaTeX is a document preparation system for high-quality typesetting. Users write in plain text, then use markup tagging conventions to define the general structure of a document, to stylise text throughout a document, and add citations and cross references. It then uses the TeX typesetting program for formatting the associated output. It allows users to create professional, accurate scientific documents that accurately reflect precise equations and other graphics needed to express the user's work.

Change Summary:

No change from 21.08 Blueprint

MATLAB: (2022a)

MathWorks MATLAB is a matrix-based language for solving computational mathematics. MATLAB traction lies mostly in the realm of engineering, but it is also preferred by many systems biology groups for being a high-level language with high capabilities for systems of differential equations and graphics. MATLAB will be installed as a desktop application, to be accessed via Guacamole.

Change Summary:

Updated MATLAB to version 2022a. Release highlights associated with MATLAB 2022a can be found here https://www.mathworks.com/products/matlab/whatsnew.html.

Likely the most noticeable change to end users is the addition of the “Editor Python Support” feature that allows users to “view and edit python files with syntax highlighting, auto-indenting, and delimiter matching.”

Full release notes associated with MATLAB 2022a found here https://www.mathworks.com/help/matlab/release-notes.html

Monolix Suite: (v2021R1 & v2020R1)

Monolix is software for non-linear mixed effects modeling (NLME) in pharmacometrics. Monolix provides an alternative to NONMEM using the SAEM algorithm, and can be used for preclinical and clinical population PK/PD modeling and for systems pharmacology. Monolix utilizes a desktop installation and will be accessed via Guacamole.

Change Summary:

Added v2021R1 to this release and dropped v2019R2. Release notes associated with MonolixSuite2021R1 found here https://lixoft.com/downloads/release-notes-monolixsuite2021r1/.

MPN: (2022-08-31)

MPN (Metrum Package Network) is a tool developed and maintained by MetrumRG to ensure a reproducible analysis environment for R users. MPN provides a repository of stable, curated snapshots of R packages (from CRAN and other repositories). By installing packages from a specific MPN snapshot, rather than directly from CRAN, you can ensure it is always the same version of a given package.

Change Summary:

Updated to the 2022-08-31 snapshot. Details associated with this snapshot can be found here https://mpn.metworx.com/docs/snapshots/2022-08-31.

NONMEM: (v7.5.0, v7.4.4, & v7.3.3)

NONMEM is a software package for population pharmacokinetic modeling, allowing users to do NON-linear Mixed Effects Modeling.

Change Summary:

No change from 21.08 Blueprint

pkgr: (v3.1.0)

pkgr is a rethinking of the way packages are managed in R. Namely, it embraces the declarative philosophy of defining the ideal state of the entire system, and working towards achieving that objective. Furthermore, pkgr is built with a focus on reproducibility and auditability of what is going on, a vital component for the pharmaceutical sciences + enterprises.

Change Summary:

Updated from version 3.0.0 to 3.1.0. For Lockfile: Type: renv, pkgr now invokes renv to discover the library location rather than assuming it is under the current directory's renv/library/. This change is important for compatibility with renv 0.15 and later, where the default behavior is now to put a package project library outside of the main project directory.

Perl speaks NONMEM (PsN): (v5.3.0)

Perl-speaks-NONMEM (PsN) is a collection of Perl modules and programs aiding in the development of non-linear mixed effect models using NONMEM. The functionality ranges from solutions to simpler tasks such as parameter estimate extraction from output files, data file sub setting and resampling, to advanced computer-intensive statistical methods. PsN includes stand-alone tools for the end-user as well as development libraries for method developers.

Change Summary:

Upgraded PsN from version 5.2.6 to 5.3.0 for Metworx 22.09. A summary of the changes associated with PsN version 5.3.0 can be found here https://uupharmacometrics.github.io/PsN/index.html.

Likely, the most notable change for end users is that PsN 5.3.0 removed support for NMQual.

Pirana desktop: (v2.9.9)

Pirana is an IDE for NONMEM development, allowing for tracking of model development, interfacing with PsN for NONMEM job submission and R for model diagnostics. This tool provides an alternative interface to NONMEM for users who prefer using a desktop GUI. Pirana is a desktop application and will be accessed via Guacamole.

Change Summary:

No change from 21.08 Blueprint

Python: (v3.7.7 & v2.7.17)

Users are able to use either Python3 or Python2 on their workflows. Python2 is officially end-of-lifed, however a large ecosystem of tooling still requires it, so we will continue to provide it. Conda-4.0 is installed at the latest patch version available upon release of Metworx 21.08.

Change Summary:

Updated Python3 from version 3.6.9 to 3.7.7. More information on Python 3.7.7 can be found here https://www.python.org/downloads/release/python-377/

R: (v4.1.3 (default), v4.0.5, v3.6.3, v3.5.3)

The executables are available at the paths:

/opt/R/4.1.3/bin/R --> also symlinked to /usr/local/bin/R

/opt/R/4.0.5/bin/R

/opt/R/3.6.3/bin/R

/opt/R/3.5.3/bin/R

Change Summary:

Minor change from Metworx 21.08 Blueprint, updating R 4.1 series from 4.1.1 to 4.1.3, with R 4.1 continuing to serve as the default R version on the system. Release notes associated with R 4.1.3 can be found here https://cran.r-project.org/doc/manuals/r-release/NEWS.html

RStudio Connect: (v2022.3.0)

RStudio Connect is developed by Rstudio for hosting R code as interactive web interfaces via javascript and HTML.

Change Summary:

Updated RStudio Connect to version 2022.3.0 (from version 1.9.0), associated release notes can be found here https://docs.rstudio.com/connect/news/#rstudio-connect-2022030

RStudio Desktop: (v2022.02.1)

The desktop version of Pirana has functionality to interface with RStudio, but does not work with RStudio-Server. To allow this functionality to be utilized by Metworx users, the desktop version of RStudio is additionally installed.

Change Summary:

Updated to 2022.02.1, mirroring the interface and featureset of RStudio Workbench. The associated release notes with version 2022.02.1 can be found here https://www.rstudio.com/products/rstudio/release-notes/#rstudio-2022-02-1-prairie-trillium

RStudio Workbench: (v2022.02.1)

Previously RStudio Server Pro. RStudio Workbench is an interactive development environment (IDE) for code development, and acts as the primary interface to Metworx workflows, providing users with the ability to use their preferred IDE, whether that is RStudio, JupyterLab, Jupyter Notebook, or VS Code.

Change Summary:

Updated to 2022.02.1, mirroring the interface and featureset of RStudio Desktop. The associated release notes with version 2022.02.1 can be found here https://www.rstudio.com/products/rstudio/release-notes/#rstudio-2022-02-1-prairie-trillium

SGE: (v8.1.9)

SGE (Sun Grid Engine) is a grid computing computer cluster software system that allows users to perform parallel computing, improving efficiency and turnaround times for researchers.

Change Summary:

No change from 21.08 Blueprint

Subversion: (v1.9.7)

Subversion (SVN) is a software versioning and revision control system distributed as open source under the Apache License. It can be used to maintain current and historical versions of files such as source code, web pages, and documentation.

Change Summary:

No change from 21.08 Blueprint

Ubuntu (OS): (v18.04.5)

Ubuntu is a complete Linux operating system, freely available with both community and professional support.

Change Summary:

No change from 21.08 Blueprint

Visual Studio Code (VSCode): (v 1.59.0)

Visual Studio Code is a powerful lightweight source code editor which runs on desktop, available for Windows, macOS, and Linux. It comes with built-in support for JavaScript, TypeScript, and Node.js with a variety of extensions for other languages.

Change Summary:

No change from 21.08 Blueprint

Visual Studio Code Pro Server (VSCode): (v 3.12.0)

Available via RStudio Workbench. More information about running a VSCode Session via RStudio Workbench provided here https://blog.rstudio.com/2021/06/02/rstudio-workbench-vscode-sessions/

VSCode is made accessible to RStudio Workbench users via code-server which provides users the ability to "run VS Code on any machine anywhere and access it in the browser." More information about code-server provided here https://github.com/coder/code-server

Change Summary:

Updated code-server to version 3.12.0 in correspondence with update to RStudio Workbench. This provides users with access to the VSCode IDE version 1.60.0 when interacting with VSCode via RStudio Workbench. More details about code-server 3.12.0 provided here https://github.com/coder/code-server/releases/tag/v3.12.0