github.com/singularityware/singularity@v3.1.1+incompatible/CHANGELOG.md (about) 1 _With the release of `v3.0.0`, we're introducing a new changelog format in an attempt to consolidate the information presented in the changelog. The new changelog is reduced in scope to only documenting functionality changes from version to version. This ensures that the changelog is as useful as it can be. Changes which should be documented include:_ 2 3 - _Renamed commands_ 4 - _Deprecated / removed commands_ 5 - _Changed defaults / behaviors_ 6 - _Migration guidance_ 7 - _New features / functionalities_ 8 9 10 _The old changelog can be found in the `release-2.6` branch_ 11 12 # Changes Since v3.1.1 13 14 # v3.1.1 - [2019.04.02] 15 16 ## New Commands 17 - New hidden `buildcfg` command to display compile-time parameters 18 - Added support for `LDFLAGS`, `CFLAGS`, `CGO_` variables in build system 19 - Added `--nocolor` flag to Singularity client to disable color in logging 20 21 ## Removed Commands 22 - `singularity capability <add/drop> --desc` has been removed 23 - `singularity capability list <--all/--group/--user> flags have all been removed 24 25 ## New features / functionalities 26 - The `--builder` flag to the `build` command implicitly sets `--remote` 27 - Repeated binds no longer cause Singularity to exit and fail, just warn instead 28 - Corrected typos and improved docstrings throughout 29 - Removed warning when CWD does not exist on the host system 30 - Added support to spec file for RPM building on SLES 11 31 32 # v3.1.0 - [2019.02.22] 33 34 ## New Commands 35 - Introduced the `oci` command group to support a new OCI compliant variant of the Singularity runtime: 36 - `attach` Attach console to a running container process 37 - `create` Create a container from a bundle directory 38 - `delete` Delete container 39 - `exec` Execute a command within container 40 - `kill` Kill a container 41 - `mount` Mount create an OCI bundle from SIF image 42 - `pause` Suspends all processes inside the container 43 - `resume` Resumes all processes previously paused inside the container 44 - `run` Create/start/attach/delete a container from a bundle directory 45 - `start` Start container process 46 - `state` Query state of a container 47 - `umount` Umount delete bundle 48 - `update` Update container cgroups resources 49 - Added `cache` command group to inspect and manage cached files 50 - `clean` Clean your local Singularity cache 51 - `list` List your local Singularity cache 52 53 ## New features / functionalities 54 - Can now build CLI on darwin for limited functionality on Mac 55 - Added the `scratch` bootstrap agent to build from anything 56 - Reintroduced support for zypper bootstrap agent 57 - Added the ability to overwrite a new `singularity.conf` when building from RPM if desired 58 - Fixed several regressions and omissions in [SCIF](https://sci-f.github.io/) support 59 - Added caching for containers pulled/built from the [Container Library](https://cloud.sylabs.io/library) 60 - Changed `keys` command group to `key` (retained hidden `keys` command for backward compatibility) 61 - Created an `RPMPREFIX` variable to allow RPMs to be installed in custom locations 62 - Greatly expanded CI unit and end-to-end testing 63 64 # v3.0.3 - [2019.01.21] 65 66 - Bind paths in `singularity.conf` are properly parsed and applied at runtime 67 - Singularity runtime will properly fail if `singularity.conf` file is not owned by the root user 68 - Several improvements to RPM packaging including using golang from epel, improved support for Fedora, and avoiding overwriting conf file on new RPM install 69 - Unprivileged `--contain` option now properly mounts `devpts` on older kernels 70 - Uppercase proxy environment variables are now rightly respected 71 - Add http/https protocols for singularity run/pull commands 72 - Update to SIF 1.0.2 73 - Add _noPrompt_ parameter to `pkg/signing/Verify` function to enable silent verification 74 75 # v3.0.2 - [2019.01.04] 76 77 - Added the `--docker-login` flag to enable interactive authentication with docker registries 78 - Added support for pulling directly from HTTP and HTTPS 79 - Made minor improvements to RPM packaging and added basic support for alpine packaging 80 - The `$SINGULARITY_NOHTTPS`,`$SINGULARITY_TMPDIR`, and `$SINGULARITY_DOCKER_USERNAME`/`$SINGULARITY_DOCKER_PASSWORD` environment variables are now correctly respected 81 - Pulling from a private shub registry now works as expected 82 - Running a container with `--network="none"` no longer incorrectly fails with an error message 83 - Commands now correctly return 1 when incorrectly executed without arguments 84 - Progress bars no longer incorrectly display when running with `--quiet` or `--silent` 85 - Contents of `91-environment.sh` file are now displayed if appropriate when running `inspect --environment` 86 87 # v3.0.1 - [2018.10.31] 88 89 - Improved RPM packaging procedure via makeit 90 - Enhanced general stability of runtime 91 92 # v3.0.0 - [2018.10.08] 93 94 - Singularity is now written primarily in Go to bring better integration with the existing container ecosystem 95 - Added support for new URIs (`build` & `run/exec/shell/start`): 96 - `library://` - Supports the [Sylabs.io Cloud Library](https://cloud.sylabs.io/library) 97 - `docker-daemon:` - Supports images managed by the locally running docker daemon 98 - `docker-archive:` - Supports archived docker images 99 - `oci:` - Supports oci images 100 - `oci-archive:` - Supports archived oci images 101 - Handling of `docker` & `oci` URIs/images now utilizes [containers/image](https://github.com/containers/image) to parse and convert those image types in a supported way 102 - Replaced `singularity instance.*` command group with `singularity instance *` 103 - The command `singularity help` now only provides help regarding the usage of the `singularity` command. To display an image's `help` message, use `singularity run-help <image path>` instead 104 105 ## Removed Deprecated Commands 106 - Removed deprecated `singularity image.*` command group 107 - Removed deprecated `singularity create` command 108 - Removed deprecated `singularity bootstrap` command 109 - Removed deprecated `singularity mount` command 110 111 ## New Commands 112 - Added `singularity run-help <image path>` command to output an image's `help` message 113 - Added `singularity sign <image path>` command to allow a user to cryptographically sign a SIF image 114 - Added `singularity verify <image path>` command to allow a user to verify a SIF image's cryptographic signatures 115 - Added `singularity keys` command to allow the management of `OpenPGP` key stores 116 - Added `singularity capability` command to allow fine grained control over the capabilities of running containers 117 - Added `singularity push` command to push images to the [Sylabs.io Cloud Library](https://cloud.sylabs.io/library) 118 119 ## Changed Commands 120 121 ### Action Command Group (`run/shell/exec/instance start`) 122 - Added flags: 123 - `--add-caps <string>`: Run the contained process with the specified capability set (requires root) 124 - `--allow-setuid`: Allows setuid binaries to be mounted into the container (requires root) 125 - `--apply-cgroups <path>`: Apply cgroups configuration from file to contained processes (requires root) 126 - `--dns <string>`: Adds the comma separated list of DNS servers to the containers `resolv.conf` file 127 - `--drop-caps <string>`: Drop the specified capabilities from the container (requires root) 128 - `--fakeroot`: Run the container in a user namespace as `uid=0`. Requires a recent kernel to function properly 129 - `--hostname <string>`: Set the hostname of the container 130 - `--keep-privs`: Keep root user privilege inside the container (requires root) 131 - `--network <string>`: Specify a list of comma separated network types ([CNI Plugins](https://github.com/containernetworking/cni)) to be present inside the container, each with its own dedicated interface in the container 132 - `--network-args <string>`: Specify arguments to pass to CNI network plugins (set by `--network`) 133 - `--no-privs`: Drop all privileges from root user inside the container (requires root) 134 - `--security <string>`: Configure security features such as SELinux, Apparmor, Seccomp... 135 - `--writable-tmpfs`: Run container with a `tmpfs` overlay 136 - The command `singularity instance start` now supports the `--boot` flag to boot the container via `/sbin/init` 137 - Changes to image mounting behavior: 138 - All image formats are mounted as read only by default 139 - `--writable` only works on images which can be mounted in read/write [applicable to: `sandbox` and legacy `ext3` images] 140 - `--writable-tmpfs` runs the container with a writable `tmpfs`-based overlay [applicable to: all image formats] 141 - `--overlay <string>` now specifies a list of `ext3`/`sandbox` images which are set as the containers overlay [applicable to: all image formats] 142 143 ### Build Command: 144 - All images are now built as [Singularity Image Format (SIF)](https://www.sylabs.io/2018/03/sif-containing-your-containers/) images by default 145 - When building to a path that already exists, `singularity build` will now prompt the user if they wish to overwrite the file existing at the specified location 146 - The `-w|--writable` flag has been removed 147 - The `-F|--force` flag now overrides the interactive prompt and will always attempt to overwrite the file existing at the specified location 148 - The `-u|--update` flag has been added to support the workflow of running a definition file on top of an existing container [implies `--sandbox`, only supports `sandbox` image types] 149 - The `singularity build` command now supports the following flags for integration with the [Sylabs.io Cloud Library](https://cloud.sylabs.io/library): 150 - `-r|--remote`: Build the image remotely on the Sylabs Remote Builder (currently unavailable) 151 - `-d|--detached`: Detach from the `stdout` of the remote build [requires `--remote`] 152 - `--builder <string>`: Specifies the URL of the remote builder to access 153 - `--library <string>`: Specifies the URL of the [Sylabs.io Cloud Library](https://cloud.sylabs.io/library) to push the built image to when the build command destination is in the form `library://<reference>` 154 - The `bootstrap` keyword in the definition file now supports the following values: 155 - `library` 156 - `docker-daemon` 157 - `docker-archive` 158 - `oci` 159 - `oci-archive` 160 - The `from` keyword in the definition file now correctly parses a `docker` URI which includes the `registry` and/or `namespace` components 161 - The `registry` and `namespace` keywords in the definition file are no longer supported. Instead, those values may all go into the `from` keyword 162 - Building from a tar archive of a `sandbox` no longer works