canonical / charmcraft

Collaborate, build and publish charmed operators for Kubernetes, Linux and Windows.
Apache License 2.0
65 stars 69 forks source link

What's going on with charmcraft versions? #365

Closed heitorPB closed 3 years ago

heitorPB commented 3 years ago

Hello.

The latest/edge is 0.10.xx but the latest/stable is 1.0.0. The latest/edge was released more than a month after 1.0.0, but its version is <1.0.0? The edge is newer (the date is more recent) and older (the version number is lower) at the same time?

$ snap info charmcraft
name:      charmcraft
[...]
snap-id:      gcqfpVCOUvmDuYT0Dh5PjdeGypSEzNdV
channels:
  latest/stable:    1.0.0               2021-04-30 (403) 10MB -
  latest/candidate: 1.0.0               2021-04-30 (403) 10MB -
  latest/beta:      1.0.0               2021-04-30 (403) 10MB -
  latest/edge:      0.10.0+126.g962eb50 2021-06-02 (435) 30MB classic
installed:          1.0.0                          (403) 10MB -

is this on purpose? I see GitHub Milestones for versions 0.11 and 0.12, but that should have happened before 1.0.0?

This is confusing me, as the pack command is not the same on 1.0.0 and 0.10.0.

facundobatista commented 3 years ago

This is a temporary situation after going to stable with 1.0 feature branch. Note that edge is a reflection of master, each commit is released there. The transition will end in the following couple of weeks.

If you're after latest functionality, you should use edge. If you like a more conservative approach stick to stable.

heitorPB commented 3 years ago

I see.

How are the next releases going to be? The latest/stable will remain in 1.0.0 and the edge will go 0.11 and then 0.12? How will this work be incorporated in the 1.x branch?

facundobatista commented 3 years ago

Next release to stable is planned for June 22nd, see the full roadmap here (FTR, I just fixed the milestones here)

heitorPB commented 3 years ago

I think there's something not ideal with the way charmcraft snap is published. It again has the latest/edge behind latest/candidate:

$ snap info charmcraft
name:      charmcraft
summary:   The charming tool
publisher: Canonical✓
store-url: https://snapcraft.io/charmcraft
license:   Apache-2.0
description: |
  Charmcraft enables charm creators to build, publish, and manage charmed operators for Kubernetes,
  metal and virtual machines.
commands:
  - charmcraft
snap-id:      gcqfpVCOUvmDuYT0Dh5PjdeGypSEzNdV
tracking:     latest/edge
refresh-date: today at 09:58 -03
channels:
  latest/stable:    1.0.0             2021-04-30 (403) 10MB -
  latest/candidate: 1.1.1             2021-07-09 (513) 51MB classic
  latest/beta:      1.1.1             2021-07-09 (513) 51MB classic
  latest/edge:      1.1.0+45.gf73def1 2021-07-09 (512) 51MB classic
installed:          1.1.0+45.gf73def1            (512) 51MB classic

Maybe the git tag was created immediately after publishing the edge snap? Is this process automated?

facundobatista commented 3 years ago

This is how we want to have it:

Track    Arch     Channel    Version          Revision
latest   amd64    stable     1.1.1            513
                  candidate  1.2.0            573
                  beta       ↑                ↑
                  edge       1.2+19.g7a1f50f  588

, being 1.2 the generic master evolution, while 1.2.X are specific releases.