Maintaining Open Source Singularity Since 2017
What’s in a SingularityCE Release?
A SingularityCE release consists of code from a number of first-party GitHub repositories, and a lot of dependencies. We’ll concentrate on just the first-party repositories. These are the code that’s specifically written to be part of Singularity:
- https://github.com/sylabs/singularity – The CLI and runtime
- https://github.com/sylabs/sif – The Singularity Image Format
- https://github.com/sylabs/scs-library-client – Client for the library:// protocol
- https://github.com/sylabs/scs-build-client – Client for the remote builder
- https://github.com/sylabs/scs-key-client – Client for the key service
- https://github.com/sylabs/singularity-userdocs – User documentation
- https://github.com/sylabs/singularity-admindocs – Admin documentation
All of this code is open-source, released under the BSD license, and contributions are very welcome. Note that we’re including the documentation here, as that’s at least as important as source code, and it’s a great place to dive in first if you’d like to get involved!
Long time contributor to Singularity, and prolific developer, vsoch has written a great tool called citelang that we can use to help explore contributions.
We’ve used ‘citelang contrib’ to count the number of lines in contributions between the SingularityCE 3.9.0 and 3.10.0 releases. We’re excluding `go.mod` and `go.sum` files (which have a lot of automated changes, thanks dependabot!). The total contributions across the repositories above are then added up. Work on SIF or the user documentation is just as important as work in the Singularity runtime itself.
So there we go… 20,364 lines were added or modified by 12 contributors in this release cycle. Thanks to everyone who pitched in!
The distribution is heavily weighted toward Sylabs employees, which we’ll always expect to be true as we are committed to the general maintenance and bugfix work needed to sustain the open-source project. However, it’d be great if SingularityCE did attract more community developers. We believe It’s important to have lively engagement to ensure the project really does reflect the needs of users.
We’d also like to give a hat tip to Apptainer, especially DrDaveD, who is the driving force behind development there. As you can see, we’ve brought in some of his code from Apptainer, and the open-source license of SingularityCE ensures they can benefit from the work over here, too. Since their 1.0.0 release Apptainer has merged in 40 pull requests from SingularityCE, which will form a good part of the feature-set of their upcoming version 1.1. The Apptainer project is also able to pull in the majority of the SIF, documentation, and scs-client work to their forks of those repositories.
Generally SingularityCE pulls a lower percentage of Apptainer code, than Apptainer pulls from CE. The reason for this is our roadmap, which is taking a different approach to the issue of improving OCI compatibility. As we have discussed previously we are working toward full compatibility, without sharp edges, by using a true OCI runtime engine and supporting the encapsulation of OCI images in the SIF format. This means that a different approach is sometimes required for some features.
Over the next six months toward SingularityCE 3.11 we’ll be trying to encourage more community contributions, and reaching out for feedback and input on upcoming features. Please let us know if you think there’s something we can do better. We’ll take another look in six months time to measure how it’s going.
Join Our Mailing List
Recent Posts
Related Posts
Laying the Groundwork for 2025: Sylabs’ Vision for Secure Multi-Cloud Solutions
With a legacy rooted in innovation through the work we’ve done with the Singularity platform, Sylabs has consistently worked to provide secure container technology to empower researchers, enterprises, and innovators worldwide. These efforts have paid dividends as we...
Creating New Levels of Security with Containers and Confidential Computing
Data breaches are becoming increasingly common. It's more important than ever to find robust solutions that protect sensitive information. Recent high-profile data breaches underscore the necessity for fresh approaches to data protection. Breaches like these are...
OCI-SIF Container Images: Unraveling Their Features and Benefits
Among the container industry, OCI (Open Container Initiative) and SIF (Singularity Image Format) stand out as two prominent formats, each offering unique features and benefits. Understanding their distinct characteristics is crucial for HPC developers seeking optimal...