Questions tagged [semantic-versioning]

De-facto standard for using multi-part version numbers like {major}.{minor}.{patch-level} followed optionally by pre-release labels.

Filter by
Sorted by
Tagged with
0
votes
2answers
116 views

Should it be considered a BC break to return clone instead of new self?

(This question applies to the equivalent code in both Java and PHP) I have a class like this: class Foo { private int $bar; public function __construct(int $bar) { $this->bar = $...
1
vote
3answers
89 views

How is a reproducible build guaranteed with version ranges in NPM?

I know with NPM caret, tilde and some logical operators can be used to specify version ranges. This post explains a bit on how this works. The problem now is I find it hard to reconcile the use of ...
0
votes
2answers
92 views

What can be used as abbreviation for perpetual beta?

According to Wikipedia, we talk about stages of development; prealpha alpha beta release candidate stable But, beta also have 2 sub-stages; perpetual beta open/closed beta Now if we were to ...
0
votes
2answers
111 views

Why are minor versions of dependencies pinned, despite possibly having bugs?

I am an amateur developper and I deploy my (home oriented) code to containers. This is usually Python and JavaScript. JavaScript, when saving dependencies for a further npm install, will pin the ...
3
votes
1answer
144 views

Projects version and database compatibility

We are trying to fix our's company versioning of several modules and I'm not sure how to consider Database compatibility when versioning. The same Database is used for a lot of applications and we're ...
6
votes
2answers
225 views

Versioning in parallel features development

I have a library (npm package, LIB) which is used by the application code (APP). In a release of APP, multiple features are worked on parallely. Sometimes these features need support from LIB, so the ...
1
vote
0answers
39 views

Gradle + Git - enforcing a version change upon merge to master

I am leading a team of developers creating a Java library. We are following the standard Semantic Versioning model. The code is versioned with Git. Artifacts are built and pushed to an artifact ...
1
vote
1answer
68 views

Implementing semver within a development pipeline when building libraries

This is not about the specification of semver itself (which is crystal clear), but rather about the best approach to implement it within a development pipeline when building libraries. TL;DR: who/...
23
votes
3answers
2k views

How to change the semantic version number when reverting the last major change

I am trying to plan a system which validates the compability of different components by comparing their semantic versioning number, especially the major release number (since it indicates API changes ...
-2
votes
2answers
158 views

Git Tagging for SaaS application with CD and SemVer

I'm developing a SaaS application where I'm required to keep track and publish every change in a changelog. I've started to follow a Semantic Versioning approach and also using Continuous Delivery. ...
3
votes
3answers
212 views

In SemVer, am I allowed to change the in-practice behaviour of undefined behaviour usages

I maintain a small (tiny!) .NET library. It has a few ill-defined edge cases, which I call out explicitly in the docs. Places, where the "correct" behaviour is not self-evidently well-defined, so I ...
0
votes
2answers
123 views

Can a library reach v1.0 when its dependencies haven't?

Some widely used libraries are still versioned 0.x, which under semantic versioning, means they might break the API at any time. Examples of such libraries: numba v0.46, 1.2 million downloads on ...
2
votes
1answer
40 views

Should I update the major version of a consumer package if one of its critical dependencies has a major update?

This is a scenario I have seen: I have a shared library with code that fetches data from an api. Let's call this ApiProvider. Currently this ApiProvider is in version 1.1.1 and is currently pointing ...
2
votes
3answers
394 views

Switching to semantic versioning from simple version numbers

There's a software library / application / framework which currently uses "simple version numbers". So it's currently at (say) version 135 and releases are made in irregular intervals whenever "there'...
-2
votes
1answer
68 views

Proper version incrementation with multiple bug fixes in same release

Say I have a three PRs going into the next release. Each PR is a bug fix and all have been approved for the next release. If the current version is 2.3.1, should the next version be 2.3.2 (count all ...
2
votes
1answer
70 views

How to handle patch version bumps for docker images when the software itself is unchanged?

Let's say I'm maintaining a piece of software that I version following the semver spec. I am also maintaining a docker image for said software, tagged with version tags. What do I do if I need to ...
0
votes
1answer
115 views

How far to go with semantic versioning?

Say you have an interface with a function List<A> doSomething(Collection<B> bs). Looking at Java's List interface and its JavaDoc I could return an immutable List which doesn't support ...
0
votes
1answer
218 views

How does a software engineer version two minor updates at the same time?

In a web app I am building, I might finish two distinct minor features at the same time: Implementation of a new web page, and implementation of the notification bar. After merging both of these into ...
0
votes
1answer
926 views

Microservices Versioning - Design Pattern

I have a few questions regarding the versioning in the microservices architecture: Let's say there are three services - S1, S2, S3 S1 calls S2 and S3 to generate a response R1. Service S2 generates ...
3
votes
1answer
312 views

Is it okay to use a patch version in semver when updating documentation?

How does one go about e.g. missing documentation in the source files when using semver? I have just released 1.0 of my library and noticed that a class is missing JavaDoc - is it ok to release a PATCH ...
0
votes
1answer
110 views

Change semver versioning after dropping node eninge versions

I doubt about to which semver version I should update my public NPM package. I didn't change any code, but I had to drop some node engine versions due to a dependency package which had a major update ...
2
votes
2answers
124 views

How to manage updates after a release?

I wonder how should we manage the commits we make AFTER a version is released, according to SEMVER. For example, I just released 1.0.1, now I have 2 choices: Immediately change version to 1.0.2 and ...
1
vote
1answer
361 views

Using semantic version with trunk based development for Python package

I am trying to understand trunk based development with semantic versioning for a Python project. Has anyone had any experience of adopting a trunk based development with semantic versioning for ...
3
votes
1answer
167 views

Semantic Versioning - going from one major version to another?

How should versions be bumped during development between two major versions? For example let say I have version 1.5.0 and my target is to release new major version that will be incompatible with major ...
4
votes
1answer
424 views

What would be the pros and cons of requiring major versions to be forward compatible? [closed]

So I was learning about forward compatibility, and I was wondering if you could warn a "dependent" that a dependency is backward compatible, but not forward compatible*, and vice-versa. The SemVer ...
31
votes
4answers
5k views

When should a commit not be version tagged?

Context: I recently found out about Semantic Versioning, and am trying to determine how to best use it practically for my own projects. Given that semver takes major changes, minor changes, and ...
-1
votes
1answer
173 views

How to use Semantic Versioning on Existing Multi Component Codebase?

I am working on a multi contributor project, having ~2500 Commits. It has multiple components, i.e. Frontend, Backend and Data Processor/DB Ingestion. Now that we are expecting more contributors, a ...
7
votes
2answers
218 views

Semantic Versioning

If a change compiled/built but the semantics were different would it be considered a major change? For example, suppose a time string returned was the same format but now was CET rather than, say, ...
1
vote
2answers
76 views

How to update version when only dependencies are updated?

I have a public project that I'm the single developer. I love updating packages to new versions regularly and keep the project up to date with the updated environment. This is probably not always a ...
1
vote
3answers
107 views

Versioning different flavors built from shared source

I need advice on how to version builds based on shared and separate codes at the same time. I have a gradle project with multiple flavors. Large part of the code is shared. Some parts are flavor ...
6
votes
2answers
4k views

What is a predictable versioning strategy for a monorepo using semver?

To simplify deployment and project management tasks I maintain a monorepo containing several packages that each have a semver version. To be clear, I don't mean several repositories managed from one ...
10
votes
1answer
3k views

Using Gitflow and Semantic Versioning: How to avoid version number conflicts when merging?

I want to use gitflow in combination with semantic versioning. In gitflow, you bump version numbers on every release or hotfix branch. This inevitably leads to version conflicts if a new development ...
0
votes
2answers
800 views

Semantic versioning for content websites

How applicable is it to adapt SemVer for content-centric websites (ie/ not web apps)? Most of the SemVer 2.0.0 specifications able to translate into such type of websites however it becomes vagues ...
3
votes
1answer
116 views

Dependency management for facades/adapters to cloud services (SemVer?)

Suppose I have a library, that basically works as a facade to some cloud service (e.g. JavaScript API that wraps around network calls to some RESTfull service). And once that service introduces a ...
2
votes
1answer
108 views

Version number for multiple softwares coming from same code base

We currently have a big code base from which we can generate 5 differents softwares. The code base is composed of around 20 submodules which are used (or not) by each software. Keeping a semver for ...
5
votes
3answers
366 views

Best practices on sharing code between open source libraries

I have an Android library used by a decent amount of people, let's call it library A. I am building a second library, library B. The two libraries are conceptually related, they solve different ...
-1
votes
1answer
277 views

Multi module project version management

I have a CMake multi module project made of a library and an executable. Both the root project and each sub module has its own version (major.minor.patch). I would like to know how to handle each ...
7
votes
3answers
3k views

Is a breaking change bug fix a semver patch or a major?

Your package has a bug. Its API in some scenarios doesn’t follow the documentation and the intended behaviour. It has been that way since it was v1.0.0. You fix it to match the documentation. Should ...
-2
votes
2answers
228 views

What should be the version of the very first build of a software? [closed]

As the title explains the question, let's assume that we're using versioning as major.minor.revision.build. What should the initial version of a software build be? 0.0.0.1 or 0.0.0.0 or anything else?
1
vote
2answers
89 views

Should each new feature for an open source project have a new minor version?

I develop an open-source project. According to this webpage, you should increment the "MINOR version when you add functionality in a backwards-compatible manner". Suppose I'm developing two distinct ...
4
votes
3answers
2k views

How to version, with semantic version, when a bug is fixed between a stable version and unstable version

I have a doubt with semantic versioning. I'm working with semantic version like is shown in semver Imagine this scenario: A stable version, named as 1.1.0 An unstable version, named as 1.1.1-rc1 A ...
4
votes
1answer
196 views

Publishing versions out of order

Does npm allow you to publish earlier versions of a package? The only documentation I could find was on npm’s site: [npm-publish] Fails if the package name and version combination already exists in ...
0
votes
1answer
61 views

How can I do production like deployments using a artifact server that enforces semantic versioning with artifacts that haven't received a version yet?

Just a small bit of background. Right now my team tags release candidates in version control. I've learned that this may not be the best thing to do because we still have to go through user acceptance ...
4
votes
1answer
761 views

When do I update the Git repo package.json/version release?

I am starting to get into versions/releases more now with Git and wanted to know if the structure I am doing now is correct. Right now, there is typically a few feature branches. A few commits from ...
4
votes
1answer
1k views

Semantic versioning with bugfixes and new features in the same release

After reading a lot about semantic versioning I got a basic understanding of the concept but I'm not sure what's the best way to increment the version number in the following case: Let's pretend that ...
1
vote
2answers
979 views

Major version number as part of package name / namespace?

Background In a software ecosystem where different packages depend on different versions of other packages, sometimes dependency resolution ends in a version conflict. Example: Root package A ...
0
votes
1answer
129 views

Does doc comments count as declaring a public API?

I've been reading about semantic versioning. Software using Semantic Versioning MUST declare a public API. This API could be declared in the code itself or exist strictly in documentation. ...
0
votes
1answer
1k views

artefact versioning - product versioning vs semantic versioning

The following situation: a product which consists of multiple components, each component versioned individually (all artefacts of the same component having the same version) POs are talking of ...
-1
votes
1answer
239 views

How to maintain multiple or single repositories of a project developed by multiple people?

A while ago, I asked what are cons and pros between the two version control designs of a project: multiple repositories, vs single repository When a project has a single git repository and developed ...
3
votes
1answer
718 views

Does Semantic Version use zero-based numbering?

Does 1.0.0 represent the first patch of the first minor version of the second major version? Or does it represent the first major version, with no minor or patch versions? I've always assumed it to be ...