Accelerating package expansion in Rust through development of a semantic versioning tool

08/28/2023
by   Tomasz Nowak, et al.
0

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 dependency change.

READ FULL TEXT
research
01/04/2021

Lost in Zero Space – An Empirical Comparison of 0.y.z Releases in Software Package Distributions

Distributions of open source software packages dedicated to specific pro...
research
06/05/2018

On the evolution of technical lag in the npm package dependency network

Software packages developed and distributed through package managers ext...
research
04/01/2023

A Large Scale Analysis of Semantic Versioning in NPM

The NPM package repository contains over two million packages and serves...
research
01/11/2023

I depended on you and you broke me: An empirical study of manifesting breaking changes in client packages

Complex software systems have a network of dependencies. Developers ofte...
research
12/13/2021

Open or Sneaky? Fast or Slow? Light or Heavy?: Investigating Security Releases of Open Source Packages

Vulnerabilities in open source packages can be a security risk for the c...
research
05/12/2015

Release Early, Release Often: Predicting Change in Versioned Knowledge Organization Systems on the Web

The Semantic Web is built on top of Knowledge Organization Systems (KOS)...
research
05/25/2023

Dependency Update Strategies and Package Characteristics

Managing project dependencies is a key maintenance issue in software dev...

Please sign up or login with your details

Forgot password? Click here to reset