Git Product home page Git Product logo

Comments (19)

dstebila avatar dstebila commented on June 26, 2024 2

If you're limited to x.y.z, then perhaps what you can do is increment z to e.g. 0.7.3? The convention being that 0.7 is the liboqs release series with particular updates within that, and you're matching the liboqs 0.7 release series with your own updates.

from liboqs-rust.

vt-alt avatar vt-alt commented on June 26, 2024

Is it possible to set version to 0.7.2.1?

from liboqs-rust.

thomwiggers avatar thomwiggers commented on June 26, 2024

AFAIK no, that's pretty much the point of this issue.

from liboqs-rust.

thomwiggers avatar thomwiggers commented on June 26, 2024

@dstebila what do you think?

from liboqs-rust.

thomwiggers avatar thomwiggers commented on June 26, 2024

I'm afraid that this would get confusing as to which version of liboqs we're packaging though...

from liboqs-rust.

dstebila avatar dstebila commented on June 26, 2024

Well, yes, but I don't know what other options there are.

from liboqs-rust.

thomwiggers avatar thomwiggers commented on June 26, 2024

What do you think about basically moving OQS versioning one position to the left? ie. 0.7.2 -> 7.2.0?

Another option could be to do 0.7.2 -> 0.72.0 now that I think of it. I kinda like that as it preserves the "0.-ness" of the release.

Or doing 0.7.2 -> 0.7.200 giving us two positions for patches

from liboqs-rust.

dstebila avatar dstebila commented on June 26, 2024

Oooh, I like 0.7.200. I had also thought of the 7.2.0 idea but it seemed too drastic, and would lose the oomph of a 1.0 when it happens.

from liboqs-rust.

thomwiggers avatar thomwiggers commented on June 26, 2024

Okay at some point I will transition over to that versioning scheme.

from liboqs-rust.

thomwiggers avatar thomwiggers commented on June 26, 2024

Starting from 0.8.0, we will follow this versioning scheme.

from liboqs-rust.

thomwiggers avatar thomwiggers commented on June 26, 2024

Oh, crap: this doesn't actually work for versions like 0.8.0: Rust wants to simplify 001 to 1 which breaks this.

from liboqs-rust.

thomwiggers avatar thomwiggers commented on June 26, 2024

Perhaps we do need to move to the 0.80.0 scheme...

from liboqs-rust.

tranzystorekk avatar tranzystorekk commented on June 26, 2024

One option to resolve this is to version the crates in a semver way uncoupled from liboqs version, but append a build annotation with liboqs version, like libgit2-sys does (crate_ver+liboqs_ver e.g. 0.8.1+0.8.0), not sure yet how that treats backwards compatibility though

from liboqs-rust.

thomwiggers avatar thomwiggers commented on June 26, 2024

TIL that format. It does seem that it's completely ignored and I'm not sure how visible that would be to users, though...

https://doc.rust-lang.org/cargo/reference/resolver.html#version-metadata

from liboqs-rust.

tranzystorekk avatar tranzystorekk commented on June 26, 2024

At the very least it's visible in crates.io and Cargo.lock entries; since we already instruct users to do oqs = "*" in Cargo.toml, it doesn't seem intrusive.

from liboqs-rust.

thomwiggers avatar thomwiggers commented on June 26, 2024

I mean, specifying oqs = "*" in the README is in part because I can not be trusted to keep it up to date 🙈

from liboqs-rust.

thomwiggers avatar thomwiggers commented on June 26, 2024

But if we do the a.b.c+liboqs-e.f.g approach, how do we bump the version in a way that distinguishes it from the liboqs versioning... 🤔

from liboqs-rust.

tranzystorekk avatar tranzystorekk commented on June 26, 2024

I'd assume following semver as close as reasonable, e.g.:

  • patch bumps on bugfixes to the rust wrapper API and semver-compatible liboqs bumps
  • minor bumps on breaking changes to the rust wrapper and semver-incompatible liboqs-bumps (as long as we're on a 0.y.z version that allows this per semver rules)
  • exceptions to the above resolved on case-by-case basis

from liboqs-rust.

thomwiggers avatar thomwiggers commented on June 26, 2024

I have updated the versioning scheme and we're no longer following upstream.

from liboqs-rust.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.