spec icon indicating copy to clipboard operation
spec copied to clipboard

Work on 3.0 release

Open jonaslagoni opened this issue 3 years ago • 24 comments

Release 3.0.0 is scheduled for (yea nothing has been decided yet🤷). Depends upon how many champion issues.

Detailed info

  • https://github.com/asyncapi/spec/blob/master/RELEASE_PROCESS.md

Kick-off

  • Release coordinating and contributing: https://www.youtube.com/watch?v=9lJY5NcLMKY
  • Contribution guidelines: https://github.com/asyncapi/spec/blob/master/CONTRIBUTING.md
  • Release journal: https://github.com/asyncapi/community/issues/163

Meetings

Previous meeting list:
  • https://github.com/asyncapi/community/issues/235#issuecomment-1016483507
  • https://github.com/asyncapi/community/issues/250
  • https://github.com/asyncapi/community/issues/254
  • https://github.com/asyncapi/community/issues/270
  • https://github.com/asyncapi/community/issues/282
  • https://github.com/asyncapi/community/issues/298
  • https://github.com/asyncapi/community/issues/307
  • https://github.com/asyncapi/community/issues/330
  • https://github.com/asyncapi/community/issues/346
  • https://github.com/asyncapi/community/issues/366
  • https://github.com/asyncapi/community/issues/378
  • https://github.com/asyncapi/community/issues/394
  • https://github.com/asyncapi/community/issues/407
  • https://github.com/asyncapi/community/issues/410
  • https://github.com/asyncapi/community/issues/417
  • https://github.com/asyncapi/community/issues/427
  • https://github.com/asyncapi/community/issues/435
  • https://github.com/asyncapi/community/issues/443
  • https://github.com/asyncapi/community/issues/453

Next meeting: https://github.com/asyncapi/community/issues/464

Progress 🔥

These are the issues that are currently being championed by people, aiming for the 3.0 release.

  • [ ] https://github.com/asyncapi/spec/issues/795 @magicmatatjahu
    • [ ] spec-pr: https://github.com/asyncapi/spec/pull/796
    • [ ] What is next?
  • [ ] #622 @magicmatatjahu
    • [ ] spec-pr: https://github.com/asyncapi/spec/pull/797
    • [ ] What is next?
  • [ ] https://github.com/asyncapi/spec/issues/583 @magicmatatjahu
    • [ ] What is next?
  • [ ] https://github.com/asyncapi/spec/issues/778 @magicmatatjahu
    • [ ] What is next?
  • [ ] #628 @jonaslagoni
    • [ ] What is next?
    • [x] #658 @jonaslagoni
      • [x] We had our first live discussion: https://www.youtube.com/watch?v=Vl8Nn3GOJiE
      • [x] Monday the 7 of March we are gonna have another live discussion.
      • [x] Currently, there does not seem to be enough traction and a need for this change. Therefore I will not push any further.
  • [ ] https://github.com/asyncapi/spec/issues/618 @smoya
    • [ ] https://github.com/asyncapi/spec/issues/661 @smoya
      • [ ] What is next?
    • [ ] https://github.com/asyncapi/spec/issues/663 @smoya
      • [ ] What is next?
    • [ ] https://github.com/asyncapi/spec/issues/689 @smoya
      • [ ] What is next?
  • [ ] https://github.com/asyncapi/spec/issues/654 @smoya
    • [ ] What is next?
  • [ ] https://github.com/asyncapi/spec/issues/599 @jessemenning
    • [ ] What is next?
  • [ ] https://github.com/asyncapi/spec/issues/694 @jessemenning
    • [ ] What is next?
  • [ ] https://github.com/asyncapi/spec/issues/505 @Fannon
    • [ ] What is next?
  • [ ] #697 @damaru-inc
    • [ ] What is next?
  • [ ] #699 @char0n
    • [x] PR is up with changes: https://github.com/asyncapi/spec/pull/777
    • [ ] What is next?
  • [ ] https://github.com/asyncapi/spec/issues/94 @GreenRover
    • [x] 1st Discussion around potential solution: https://github.com/asyncapi/community/issues/352
    • [x] 2nd Discussion around potential solution: https://github.com/asyncapi/community/issues/368
    • [x] 3rd Discussion around potential solution: https://github.com/asyncapi/community/issues/377
    • [ ] What is next?

Tooling progression

This is the list of tooling issues and PR's that are tied together with the major version spec changes.

  • [ ] Intent and parser API - https://github.com/asyncapi/parser-js/issues/401
    • [ ] https://github.com/asyncapi/parser-api/issues/69
  • [ ] AsyncAPI JSON Schema improvements
    • [x] Split sub schemas https://github.com/asyncapi/spec-json-schemas/issues/127 - @jonaslagoni
      • [X] Implementation ready
      • [x] Reviewed
      • [x] Merged
    • [ ] Provide JSON Schema files for bindings in spec-json-schemas https://github.com/asyncapi/bindings/issues/113 - @jonaslagoni
      • [ ] Implementation ready
      • [ ] Reviewed
      • [ ] Merged
    • [ ] https://github.com/asyncapi/website/issues/870 - @smoya

Todo list

The Todo list is what is needed to be completed and in which order.

  • [x] Splitting sub schemas https://github.com/asyncapi/spec-json-schemas/issues/127
    • [x] Adapt release process https://github.com/asyncapi/spec/pull/659
      • [x] Implementation ready
      • [X] Reviewed
      • [x] Merged
    • [ ] Update usage of the new spec-json-schemas package https://github.com/asyncapi/parser-js/pull/423
      • [x] Implementation ready
      • [ ] Reviewed
      • [ ] Merged
    • [x] Expose all schema files remotely https://github.com/asyncapi/website/pull/680
      • [x] Implementation ready
      • [x] Reviewed
      • [x] Merged
  • [x] Create new next-major-spec branches
    • [x] In the spec-json-schemas repo
      • [x] add branch next-major-spec
      • [x] add next-major-spec to list of release branches - https://github.com/asyncapi/spec-json-schemas/pull/202
    • [x] In the spec repo
      • [x] add branch next-major-spec
    • [x] in the bindings repo
      • [x] add branch next-major-spec
    • [x] in the parser repo
      • [x] add branch next-major-spec
      • [x] add next-major-spec to list of release branches - https://github.com/asyncapi/parser-js/pull/518
    • [x] in the generator repo
      • [x] add branch next-major
      • [x] add next-major to list of release branches - https://github.com/asyncapi/generator/pull/755
  • [x] Update release branches
    • [x] spec - https://github.com/asyncapi/spec/pull/753
    • [x] spec - update with upstream https://github.com/asyncapi/spec/pull/758
    • [x] spec-json-schemas - https://github.com/asyncapi/spec-json-schemas/pull/221
    • [x] spec-json-schemas - update with upstream https://github.com/asyncapi/spec-json-schemas/pull/205
    • [x] parser-js - https://github.com/asyncapi/parser-js/pull/517
    • [x] parser-js - update with upstream https://github.com/asyncapi/parser-js/pull/525
  • [x] Create draft release notes - https://github.com/asyncapi/website/pull/659
  • [x] Create draft migration guidelines - https://github.com/asyncapi/website/pull/660
  • [x] Create release PRs
    • [x] spec - https://github.com/asyncapi/spec/pull/759
    • [x] spec-json-schemas - https://github.com/asyncapi/spec-json-schemas/pull/208
    • [x] parser-js - https://github.com/asyncapi/parser-js/pull/526
  • [ ] https://github.com/asyncapi/spec/pull/794
    • [ ] Reviewed
    • [ ] Merged
  • [ ] https://github.com/asyncapi/spec/pull/792
    • [ ] Reviewed
    • [ ] Merged
  • [ ] https://github.com/asyncapi/spec/pull/803
    • [ ] Reviewed
    • [ ] Merged
  • [ ] https://github.com/asyncapi/spec/pull/806
    • [ ] Reviewed
    • [ ] Merged
  • [ ] https://github.com/asyncapi/spec/pull/823
    • [ ] Reviewed
    • [ ] Merged
  • [ ] https://github.com/asyncapi/spec/pull/796
    • [ ] Reviewed
    • [ ] Merged
  • [ ] https://github.com/asyncapi/spec/pull/797
    • [ ] Reviewed
    • [ ] Merged

Next?

I want to champion something!

First of all, thank you! 🙇

We use the following milestone https://github.com/asyncapi/spec/milestone/18 to track all the issues that needs to have been considered before we can release 3.0. So pick one the issues that needs champion, and drive it forward!

Reach out to slack, in the issue, or our regular meetings if you need anything!

If you need anything changed in this progress issue, leave a comment below with what to update 🙂

jonaslagoni avatar Jan 19 '22 17:01 jonaslagoni

I don't think so that I should handle https://github.com/asyncapi/spec/issues/596 I created issue but I don't know if I can find the time to do this, I would rather take these schema formats as well as https://github.com/asyncapi/spec/issues/583 if anyone wants to take it, go ahead. @smoya maybe you? I know you know a lot about these changes in the new drafts and what impact they would have.

magicmatatjahu avatar Jan 20 '22 11:01 magicmatatjahu

I'd like to see schema versioning considered as a feature in 3.0. Please see this issue: https://github.com/asyncapi/spec/issues/697

damaru-inc avatar Jan 24 '22 14:01 damaru-inc

I think that we should create branch for that 3.0.0 release like next-branch or 3.0.0-release and start creating PR proposals. I don't know if that topic was raised in other issue/discussion. What do you think?

magicmatatjahu avatar Jan 25 '22 15:01 magicmatatjahu

yeah, I think we definitely cannot work with branch focused on given release month, and doo next-major as it is supported by semanic-release package. I think I talked about it somewhere already...or it is just deja vu. @magicmatatjahu maybe open a PR against the release_process document and suggest a change on what we should do when we know major release is approaching.

derberg avatar Jan 27 '22 14:01 derberg

I like next-major as well, always the same regardless of 3.0 or any other.

jonaslagoni avatar Jan 31 '22 07:01 jonaslagoni

I propose https://github.com/asyncapi/spec/issues/699 to be added to the list for 3.0.0.

char0n avatar Feb 04 '22 21:02 char0n

I think we also need to add https://github.com/asyncapi/spec/issues/618 even though it has been split in several tasks, but still there are some pending work.

smoya avatar Feb 09 '22 14:02 smoya

I propose #699 to be added to the list for 3.0.0.

Added!

I think we also need to add #618 even though it has been split in several tasks, but still there are some pending work.

Added, wrapped the related issues for it 🙂

jonaslagoni avatar Feb 16 '22 08:02 jonaslagoni

@derberg I have created a list of what is missing in terms of branches and settings, as I dont have any permissions in: bindings, spec and spec-json-schema can you take those repositories?

I can take the generator 🙂

PR here: https://github.com/asyncapi/generator/pull/755

jonaslagoni avatar Mar 02 '22 17:03 jonaslagoni

@jonaslagoni I don't think releasing 3.0.0 spec as a prerelease makes sense at this time. I would rather just have a branch and release the first prerelease in a few months.

@derberg Could you create such a branch?

magicmatatjahu avatar Mar 03 '22 12:03 magicmatatjahu

I don't think releasing 3.0.0 spec as a prerelease makes sense at this time

but the idea is just to release it when there is something merged into release branch, some feature. what do you mean?

@derberg Could you create such a branch?

  • https://github.com/asyncapi/bindings/tree/next-major
  • https://github.com/asyncapi/spec-json-schemas/tree/next-major was there already
  • https://github.com/asyncapi/spec/tree/next-major

derberg avatar Mar 03 '22 18:03 derberg

As agreed in https://github.com/asyncapi/spec/issues/734#issuecomment-1077455953 we should use next-major-spec branches when related to spec changes. This is the current todo by one of the spec code owners cc: @derberg @fmvilas @dalelane:

  • [x] "Change" the name of next-major branch in spec repo to next-major-spec.
  • [x] Add branch next-major-spec to spec-json-schema repo.
  • [x] Add branch next-major-spec to bindings repo.

jonaslagoni avatar Apr 13 '22 08:04 jonaslagoni

All the three are done now @jonaslagoni

fmvilas avatar Apr 13 '22 16:04 fmvilas

Next couple of blocking issues to continue:

cc code owners of spec: @derberg @fmvilas @dalelane

  • [x] https://github.com/asyncapi/spec/pull/753/
  • [x] https://github.com/asyncapi/spec-json-schemas/pull/184
  • [x] https://github.com/asyncapi/spec-json-schemas/pull/205

cc code owners of parser: @derberg @fmvilas @magicmatatjah

  • [x] https://github.com/asyncapi/parser-js/pull/517

jonaslagoni avatar Apr 21 '22 10:04 jonaslagoni

I've processed :

  • https://github.com/asyncapi/spec/issues/699

PR issued: https://github.com/asyncapi/spec/pull/777

char0n avatar May 04 '22 07:05 char0n

@jonaslagoni Could you add to the list [3.0.0] Allow references to be used in any part of the specification I can me mentor it of course.

magicmatatjahu avatar May 04 '22 08:05 magicmatatjahu

@char0n updated 👍

@jonaslagoni Could you add to the list [3.0.0] Allow references to be used in any part of the specification I can me mentor it of course.

@magicmatatjahu added 👍

jonaslagoni avatar May 04 '22 14:05 jonaslagoni

The last blocker before RFC can move forward is https://github.com/asyncapi/spec-json-schemas/pull/221

cc code owners @derberg @fmvilas @dalelane

jonaslagoni avatar May 17 '22 09:05 jonaslagoni

@GreenRover I added you to the list of champions for request/reply 🙂

jonaslagoni avatar May 24 '22 12:05 jonaslagoni

cc current champions: @magicmatatjahu @smoya @jessemenning @Fannon @damaru-inc @char0n @GreenRover

We should be completely ready to accept the 3.0 changes into the spec, JSON Schema documents, and parser so you can now move your RFC forwards 🎉

When you create your changes and when targeting your PRs, make sure you target the next-major-spec branches, as this is where the new changes are gonna be.

Spec: https://github.com/asyncapi/spec/tree/next-major-spec JSON Schema repo: https://github.com/asyncapi/spec-json-schemas/tree/next-major-spec JS Parser: https://github.com/asyncapi/parser-js/tree/next-major-spec

If you don't know how to move the issues forward, please reach out so we can figure out how to do it together 🙂

jonaslagoni avatar Jun 08 '22 14:06 jonaslagoni

Ok, I've changed the target branch here: https://github.com/asyncapi/spec/pull/532/files

Since we've had a few discussions on how it should be and we were not completely sure, I might create an alternative PR with a solution proposal.

Fannon avatar Jun 21 '22 04:06 Fannon

@jonaslagoni This is something we should have also for 3.0 https://github.com/asyncapi/website/issues/870

smoya avatar Jul 11 '22 13:07 smoya

@jonaslagoni Another thing I would like to add to the list: https://github.com/asyncapi/parser-api/issues/69

smoya avatar Jul 11 '22 15:07 smoya

@smoya added 👍

jonaslagoni avatar Jul 11 '22 15:07 jonaslagoni

@jonaslagoni can you add the following PR https://github.com/asyncapi/parser-api/pull/71 to the Intent and parser API list in Tooling progression? Thanks!

smoya avatar Sep 28 '22 17:09 smoya

@jonaslagoni I opened a new PR to solve the "Unify all the referencing mechanisms" issue. You may want to update the list above: https://github.com/asyncapi/spec/pull/852. It's RFC 1.

fmvilas avatar Oct 13 '22 18:10 fmvilas

@jonaslagoni Could you add PR (https://github.com/asyncapi/parser-js/pull/664) for my two topics: reusable externalDocs and tags and moving them to the Info Object? It's already merged. Only PRs for the json-spec-schemas wait. Thanks!

Also please add https://github.com/asyncapi/parser-js/pull/654 PR as merged in the Fran's publish/subscribe confusion topic.

magicmatatjahu avatar Nov 09 '22 11:11 magicmatatjahu

@jonaslagoni Could you add PR (asyncapi/parser-js#664) for my two topics: reusable externalDocs and tags and moving them to the Info Object? It's already merged. Only PRs for the json-spec-schemas wait. Thanks!

Also please add asyncapi/parser-js#654 PR as merged in the Fran's publish/subscribe confusion topic.

Done 👍

Looks like https://github.com/asyncapi/spec/issues/663 and https://github.com/asyncapi/spec/issues/661 are completely done, right?

jonaslagoni avatar Nov 10 '22 13:11 jonaslagoni

Added the suggestion of a specific release schedule going forward for spec 3.0, find it here: https://github.com/asyncapi/spec/issues/880

jonaslagoni avatar Dec 07 '22 18:12 jonaslagoni

I am gonna remove the progress of Allow referencing non-JSON structures such as Protobuf, XML, XSD, etc. from the list, as I don't think it will be possible to reach a consensus from a spec perspective and create the necessary tooling around it before the release deadline.

All progress will of course continue and will be done in this issue: https://github.com/asyncapi/spec/issues/881

If for some reason it seems likely that it will happen before the deadline we can always add it "back on the menu".

jonaslagoni avatar Dec 08 '22 22:12 jonaslagoni