Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

For Discussion: Release Frequency #3127

Closed
Meligy opened this issue Nov 13, 2016 · 7 comments
Closed

For Discussion: Release Frequency #3127

Meligy opened this issue Nov 13, 2016 · 7 comments

Comments

@Meligy
Copy link
Contributor

Meligy commented Nov 13, 2016

How often should the CLI release?

I'd argue daily, as in, whenever there's a day the team merges a handful PRs (which is obviously not every calendar day or even week day), they can just bump the version.

This is based on the fact that the CLI is still in beta, and assuming that releasing is cheap, which might be uninformed false assumption.

Working from git isn't ideal for all sort of reasons, and quite often one list of merges in a day would have something I've been looking forwards to for so long.

If the current release schedule is intentional (what is the release schedule by the way?), then can we have some -builds repository and packages similar to how the @angular/angular repository have?

Just starting the discussion...

@celliott181
Copy link
Contributor

celliott181 commented Nov 14, 2016

Before I put in my opinion, I always suggest checking https://github.com/angular/angular-cli/milestones for more detailed release info, specifically what features and bugs are being focused on by the guys at Google to reach API and feature stability.

As you said, working from git is a little difficult, but until the CLI is at Release Candidate stages I don't think a rapid release schedule fits. The team is working hard on core features which means the functionality day to day may not be stable, increasing overhead as a build has to be checked and stripped of said partial functionality.

I'd rather have a somewhat irregular release cycle during beta if it means the CLI itself will continue to be built with long term maintainability in mind and a good ear for the community's input. That said, if the community pushes to release on the daily, they'd likely discuss it. In support of whatever schedule they make though, I hope they choose to aim for solid releases rather than rapid until the CLI is ready for RC and Final releases.

@Meligy
Copy link
Contributor Author

Meligy commented Nov 14, 2016

I don't think the CLI stability is an issue.

Almost all code is done via PRs. PRs first are discussed, and then if needed gone into pr_action: review status, then several days later (even for the tiniest PRs), they assuming they get approved, they are marked pr_action: merge (marking status and action is done via labels). Several more days after that, the team picks only some of these supposedly all ready-to-merge PRs and adds them in one day, possibly leaving a few others.

The merge activity doesn't happen every day as I mentioned above (possibly daily is a bad word to express it), although the team has been pretty active this month, possibly as it gets closer to RC.

I hope you do realise that what this issue is, is simply a community discussion, to gather community input, like the +1s on the issue, and like your comment, etc.

@clydin
Copy link
Member

clydin commented Nov 15, 2016

I think a release schedule and/or roadmap would be incredibly useful. However and in general, releases are rarely cheap for a large project. The CLI is also somewhat more complicated as the user's generated projects may need to be upgraded as well. Too frequent updates can lead to upgrade fatigue and/or user confusion.

I would also caution against the assumption that the PR process acts as a panacea for stability issues. While it does greatly mitigate stability concerns it does not remove them. Formal release processes exist for a reason.

As an RC appears to be close at hand, I would prefer the team focus on feature improvements and bugfixing rather than pushing releases.

@filipesilva
Copy link
Contributor

We do manual releases, and while I wouldn't say a release is expensive I wouldn't say it's cheap either. Currently time is (by far) the most scarce resource the team has and making a release does mean that other stuff isn't being worked on.

We are looking at setting up a regular release cadence, possibly mirroring that of Angular 2 itself. We also talked once about doing nightlies.

We also want to use the "Projects" feature of github to organize stuff better, which should give more visibility. There's some stuff there now but it's not a comprehensive list. Organization will get better in the coming months.

@fxck
Copy link

fxck commented Jan 10, 2017

So seeing my issue was closed, what's the current status on this? While I understand it takes a while to setup the *-builds repo, many other repos of this org had already gone thru it and I'm sure the members or contributors would be willing to help it set up. @devversion did it very recently on @angular/material2.

@filipesilva
Copy link
Contributor

Nowadays, in post-1.0, our release cadence is as follows:

  • weekly patch releases
  • minor releases when there is a good amount of features in, and beta/rc weekly meanwhile.

@angular-automatic-lock-bot
Copy link

This issue has been automatically locked due to inactivity.
Please file a new issue if you are encountering a similar or related problem.

Read more about our automatic conversation locking policy.

This action has been performed automatically by a bot.

@angular-automatic-lock-bot angular-automatic-lock-bot bot locked and limited conversation to collaborators Sep 7, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants