Skip to content

Generated v1.0 models and request builders using Typewriter#534

Merged
baywet merged 1 commit intodevfrom
v1.0/pipelinebuild/3825484
Oct 9, 2020
Merged

Generated v1.0 models and request builders using Typewriter#534
baywet merged 1 commit intodevfrom
v1.0/pipelinebuild/3825484

Conversation

@github-actions
Copy link
Copy Markdown
Contributor

@github-actions github-actions bot commented Oct 8, 2020

This pull request was automatically created by the GitHub Action, create pull request.

The commit hash is 79f5bd8.

Important Check for unexpected deletions or changes in this PR.

  • update version in gradle.properties and Constants.java.

  • update version in readme.md

  • create tag and release

cc: @darrelmiller

@baywet baywet added this to the 2.3.1 milestone Oct 8, 2020
Copy link
Copy Markdown
Member

@baywet baywet left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@zengin @MIchaelMainer the "breaking changes" are files that were committed by mistake when I was testing the code-gen for odata cast support. It's only been out there for less than a week and should anybody have taken a dependency on it, the service would not accept those type casts as far as I can recall.

@zengin
Copy link
Copy Markdown
Contributor

zengin commented Oct 8, 2020

@zengin
Copy link
Copy Markdown
Contributor

zengin commented Oct 9, 2020

@baywet we were talking about the nature of these "breaking changes" with @MIchaelMainer and we think that we need to define the process for these. Some common situations and what we are doing as far as I observed:

  1. If a PR includes a breaking change for functionality that is working.
    We block the PR and trigger rollback on either metadata or new code in generator.
  2. If a PR is introducing new functionality with a contract breaking change.
    We require a major version bump
  3. If a PR includes a breaking change in technical terms, i.e. breaking the signatures in the SDK, but it is fixing a broken functionality and the assumptions is that nobody could have taken a dependency on it.
    Current process allows these types of changes without a major version bump. But we should discuss if there is any subset which should be excluded from this practice.

In addition to these PR/code review stage decisions, we need a definition of what needs to happen if a breaking change goes out accidentally. And this will most likely be language-specific depending on the constraints of package management systems.

  • Do we roll back the latest release?
  • Do we override the latest release?
  • Do we add a new release and mark the problematic release somehow?
  • Do we need a blog post or other communication mechanisms to let the users know?

I will share this in the Teams channel for discussion.

@zengin
Copy link
Copy Markdown
Contributor

zengin commented Oct 9, 2020

same comment: microsoftgraph/msgraph-sdk-dotnet#812 (review)

This confusion is resolved.

@baywet baywet merged commit 022fa1d into dev Oct 9, 2020
@baywet baywet deleted the v1.0/pipelinebuild/3825484 branch October 9, 2020 00:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants