Accelerating package expansion in Rust through development of a semantic versioning tool
Tomasz Nowak, Micha{\l} Staniewski, Mieszko Grodzicki, Bartosz, Smolarczyk

TL;DR
This paper discusses the development of a semantic versioning tool for Rust to prevent incompatible package releases, aiming to improve package management safety and integrate into Rust's standard toolchain.
Contribution
It introduces a new semantic versioning enforcement tool for Rust, addressing a gap in the language's package management and planning integration into the standard toolchain.
Findings
The tool reduces the risk of incompatible package releases.
Plans for integration into Rust's standard development tools.
Enhances safety and reliability of Rust package updates.
Abstract
In many programming languages there exist countless nuances, making developers accidentally release new versions of their packages that are not backwards-compatible. Such releases can directly impact projects which are using their packages, causing bugs or even compilation errors when using the latest version. One of the affected languages is Rust, which also lacks (itself) a built-in mechanism for enforcing semantic versioning. The aim of this thesis is to describe the development of a tool for Rust programmers to reduce the chances of publishing a new version of the code that violates semantic versioning. There are already on-going plans to bundle this tool into the language's standard development toolchain. It would make it commonly used and therefore help users to safely get bug fixes, security patches and new functionality, without worrying about their app being broken by a…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsService-Oriented Architecture and Web Services
