Skip to content

Adding locally-maintained Checked-C-specific documents.#1190

Merged
sulekhark merged 3 commits into
masterfrom
doc_update
Oct 1, 2021
Merged

Adding locally-maintained Checked-C-specific documents.#1190
sulekhark merged 3 commits into
masterfrom
doc_update

Conversation

@sulekhark

Copy link
Copy Markdown
Contributor

No description provided.

@sulekhark sulekhark requested a review from dtarditi September 29, 2021 22:48

@mattmccutchen-cci mattmccutchen-cci left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Thanks for making sure these documents remain available. I looked over the ones I thought I might know something about, and I have one substantive correction and a few typo fixes.


7. The last step is to merge PR 123 into the `master` branch of our remote repository (https://github.com/microsoft/checkedc-clang). Two points should be kept in mind:

1. The merge should either be a `merge commit` or a `squash merge` depending on the context of the PR. For example, PRs from CCI should always be `merge commit` as CCI needs to be able to access the commit history in their PRs.

@mattmccutchen-cci mattmccutchen-cci Sep 30, 2021

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Suggested change
1. The merge should either be a `merge commit` or a `squash merge` depending on the context of the PR. For example, PRs from CCI should always be `merge commit` as CCI needs to be able to access the commit history in their PRs.
1. The merge should either be a "merge commit" or a "squash merge" depending on the context of the PR. For example, "omnibus" 3C PRs from CCI ([example](https://github.com/microsoft/checkedc-clang/pull/1065)) should always be "merge commit" because they contain intermediate commits from CCI's `main` branch that need to stay in sync between CCI's and Microsoft's repositories after the merge. But for most PRs, the intermediate commits just reflect steps of work and code review that don't need to stay in sync with anywhere else, so a "squash merge" leaves a simpler history on the `master` branch for the benefit of most readers. Readers who want more detail can still access the intermediate commits on the PR page or via the `pull/123/head` ref described above (which still exists after the PR is merged).

Clarifying that "merge commit" is needed only for omnibus 3C PRs (such as #1065), not other PRs that happen to come from CCI but follow essentially the same workflow as internal PRs (such as #1112). Feel free to improve the text further.


7. Update the release notes for the current release in this draft, guided by previous release notes. Also upload the release artifacts. Some points to note:

- The release note should mention the version of the Checked C language specification that the released compiler is based on as this version number if not available in the name or tag associated with the release.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Suggested change
- The release note should mention the version of the Checked C language specification that the released compiler is based on as this version number if not available in the name or tag associated with the release.
- The release note should mention the version of the Checked C language specification that the released compiler is based on as this version number is not available in the name or tag associated with the release.


9. Similar to the release made in the `checkedc-clang` repository, a release has to be made in the `checkedc` repository also. The only artifact in this release is the Checked C specification. It should be the same as the one released through the `checkedc-clang` release (i.e. both the releases must be in sync). The same tag as in step 3 must be applied to the `master` branch of the `checkedc` repository.

10. Apply an annotation tag (same tag as in step 3) on the `master` branches of both `checkedc-automation` and `checkedc-llvm-test-suite` repositories using the command below (assumes that the `master` branch of both these repositories is checked out and it is at exactly the same revision that was used to test the release):

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Suggested change
10. Apply an annotation tag (same tag as in step 3) on the `master` branches of both `checkedc-automation` and `checkedc-llvm-test-suite` repositories using the command below (assumes that the `master` branch of both these repositories is checked out and it is at exactly the same revision that was used to test the release):
10. Apply an annotated tag (same tag as in step 3) on the `master` branches of both `checkedc-automation` and `checkedc-llvm-test-suite` repositories using the command below (assumes that the `master` branch of both these repositories is checked out and it is at exactly the same revision that was used to test the release):

@dtarditi dtarditi left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Looks good, thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants