Commit Graph
496 Commits
Author SHA1 Message Date
Sidney Hummert 4e81e25877 Decision for proposal #42 (Create code review guidelines) (#176)
* Decision for proposal #42 (Create code review guidelines)

This is a recreation of PR #137 that got stuck in git merge hell.

* Results of running pre-commit
2020-10-16 13:38:36 -07:00
Sidney HummertandJon Meow 21868c1c80 Create Overview proposal decision (#132)
* Create Overview proposal decision

Create the proposal decision for the proposal in PR83: An incomplete, early, and in-progress overview of the language design

* Update proposals/p0083-decision.md

Co-authored-by: Jon Meow <46229924+jonmeow@users.noreply.github.com>

* Rerun pre-commit

Adjusted some spaces.

* Rename decision to use _ instead of -

Co-authored-by: Jon Meow <46229924+jonmeow@users.noreply.github.com>
2020-10-16 10:19:42 -07:00
Jon Meow e36f9a1546 Change markdown style guide (#149)
-   [RFC topic](https://forums.carbon-lang.dev/t/rfc-change-markdown-style-guide/123)
-   [Decision topic](https://forums.carbon-lang.dev/t/request-for-decision-change-markdown-style-guide/132)
-   [Decision announcement](https://forums.carbon-lang.dev/t/accepted-change-markdown-style-guide/137)
2020-10-14 16:59:46 -07:00
Jon Meow 4c43d63b8a Code and name organization (#107)
- [RFC](https://forums.carbon-lang.dev/t/rfc-code-and-name-organization/121)
- [Decision request](https://forums.carbon-lang.dev/t/request-for-decision-code-and-name-organization/140)
- [Examples doc](https://docs.google.com/document/d/1J8GX9uw5AxBz5Q22MLHJOfzLq4WJqKL-q1VwnKGHG-k/edit)
- [Approval announcement](https://forums.carbon-lang.dev/t/accepted-code-and-name-organization-107/150)

Files, packages, libraries, and imports for Carbon.

Contributors: chandlerc, fowles, tkoeppe, zygoloid
2020-10-14 10:52:24 -07:00
Jon Meow 800e87efcf Moving github scripts to carbon-project-tools (#170) 2020-10-09 10:21:10 -07:00
Jon Meow a768b0ee19 Adjust copyrights based on carbon-project-tools/#3 (#171) 2020-10-09 10:18:06 -07:00
Richard Smith ccb99ad6f2 Proposal for numeric literal syntax. (#143)
This proposal specifies lexical rules for numeric constants in Carbon.
2020-10-05 19:24:46 -07:00
Jon Meow 541550635c Add carbon-project-tools to readme (#164) 2020-09-25 10:58:02 -07:00
Jon Meow ce6d00e36c Move firebase config to carbon-project-tools (#163)
See also carbon-language/carbon-project-tools#2
2020-09-24 15:54:00 -07:00
Jon Meow 1882253754 Update pre-commit-hooks (#161) 2020-09-24 15:53:21 -07:00
Jon Meow 98ebae62a6 Update pre-commit versions and fix black break (#160)
Caught by black stable change, done by `pre-commit autoupdate`

`pre-commit autoupdate` also wanted to update pre-commit-hooks, but that gave me some pyenv errors so I'm leaving it alone for now.
2020-09-15 09:00:24 -07:00
Jon Meow b739cf30ae Fix title for decision 120 (#159) 2020-09-11 14:51:30 -07:00
Jon Meow 5905c9f138 Fix proposals index (#158) 2020-09-09 15:35:37 -07:00
Jon Meow ef1e9ea40c Update the new proposal script with some tests and changes from #96 (#156)
- Tests
- Fix Python style
- Use argparse for arguments
- Switch to git commit --amend
2020-09-09 09:48:00 -07:00
Sidney Hummert 551ded5a03 Decision for proposal 120 (Goals addition) (#150) 2020-09-08 10:59:37 -07:00
Jon Meow 946e4fedbc Remove unused args (#153) 2020-09-08 08:41:33 -07:00
Jon Meow 37c1e42b98 Migrate update_label_access to Python, and start consolidating GraphQL logic. (#147)
Main reasons for doing this were:

- Add tests for update_label_access
- Reduce js reliance
- Unify handling of access tokens
- Migrate more to GH's graphql (unfortunately not everything, pygithub is rest-based)
- With pytest, reduce the number of executable scripts
2020-09-03 10:20:54 -07:00
Chandler Carruth 630311c6ae Create code review guidelines (#42)
Carbon needs a strong code review process to handle code (and other)
changes that are not significant proposals. This attempts to provide
clear guidance on the process, structure, and scope of code review.
It also gives detailed guidance on how to effectively do code review
for both reviewers and authors.

This proposal was accepted on 2020-08-04.
2020-08-27 02:05:40 -07:00
Jon Meow 9a0bc88bcf Move codespell ignore to a file for easier management (#148) 2020-08-24 11:56:57 -07:00
Jon Meow 1e7aba7391 Add idiomatic code performance and developer-facing docs to goals (#120)
- [RFC topic](https://forums.carbon-lang.dev/t/rfc-add-idiomatic-code-performance-and-developer-facing-docs-to-goals/105)
- [Decision](https://forums.carbon-lang.dev/t/request-for-decision-add-idiomatic-code-performance-and-developer-facing-docs-to-goals/116)

Co-authored-by: Chandler Carruth <chandlerc@gmail.com>
Co-authored-by: Geoff Romer <gromer@google.com>
Co-authored-by: Dmitri Gribenko <gribozavr@gmail.com>

Most of this is addressing issue #106.

Two new explicit sub-goals:

- Idiomatic code should be performant, stemming from #106.
- User-facing documentation, separate thought from #83 discussion.

I think both of these are on people's minds and assumed, but still worth spelling out.
2020-08-20 15:26:58 -07:00
Jon Meow 23d9ae050d Add copyrights to pr_comments (#146) 2020-08-20 09:26:40 -07:00
Jon Meow c0403cf82d Add more setup instructions for various tools (#138)
This was mainly to document pyenv/python, but I figured I'd note a few other things while I was in here.
2020-08-18 08:34:33 -07:00
Jon Meow e9130a29e9 Use _ consistently in filenames (#135)
This had been causing me issues when writing a test for pr-comments.py, which I then renamed so that I could import. It's had me mulling that I should really write tests for other scripts, but the name gets in the way.

The decision files are just an exception, so trying to reach consistency.
2020-08-18 08:32:23 -07:00
Chandler Carruth f00a8a3853 Run pre-commit scripts to update formatting and index of proposals. (#141)
These hadn't run successfully on the decision or had some stale
settings. Just cleaning up, nothing interesting changing here.
2020-08-12 03:41:25 -07:00
Sidney HummertandJon Meow ae6ba83e2e Decision for: Carbon Goals (#112)
* Add decision for proposal 51 (Goals)

* Update proposals/p0051-decision.md

Co-authored-by: Jon Meow <46229924+jonmeow@users.noreply.github.com>

Co-authored-by: Jon Meow <46229924+jonmeow@users.noreply.github.com>
2020-08-03 11:07:47 -07:00
Jon Meow 63d0b84303 Handle PR reviews. (#134)
The main comment on a review wasn't being handled, and this change interleaves it with the PR comments. GitHub treats these as different entities.

I'm hiding reviews with no top-level comment; these didn't seem worth including empty comments.

Links are being added to PR comments to make them easier to find. This means indenting the content, so now all comments (PR or review thread) are consistently indented, removing a parameter. Also, I'm adjusting the formatting of review threads to match.

snippets for comparison:
```
https://github.com/carbon-language/carbon-lang/pull/83#issuecomment-645573273
  googlebot: All (the pull request submitter and all commit authors) CLAs are...

https://github.com/carbon-language/carbon-lang/pull/83#pullrequestreview-434377138
  chandlerc: Overall, I think this is a pretty significant improved direction...
```

and from a review thread:
```
https://github.com/carbon-language/carbon-lang/pull/83/files/9863da8#diff-8f28081abb21e65fba5a0b0b29404c78R16
  - line 16; unresolved
  - diff: https://github.com/carbon-language/carbon-lang/pull/83/files/9863da8..HEAD#diff-8f28081abb21e65fba5a0b0b29404c78L16
  josh11b: ```suggestion¶ - Block comments begin with a line starting with `/...
  jonmeow: "begin with a line starting with" phrasing is a little confusing t...
  josh11b: As I understand @zygoloid 's lexing proposal, there may be additio...
  jonmeow: Rewritten with example
```
2020-07-31 13:16:15 -07:00
Jon Meow 598283cd5c Link to comments as they are in files. (#133) 2020-07-31 08:24:47 -07:00
Jon Meow d031f3cdab An incomplete, early, and in-progress overview of the language design. (#83)
Co-authored by: chandlerc

- Based on [PR 22](https://github.com/carbon-language/carbon-lang/pull/83)
- [Idea topic](https://forums.carbon-lang.dev/t/proposal-for-an-incomplete-rough-high-level-overview-ready-for-early-feedback/52)
- [RFC](https://forums.carbon-lang.dev/t/rfc-an-incomplete-early-and-in-progress-overview-of-the-language-design/73)
- [Decision announcement](https://forums.carbon-lang.dev/t/accepted-an-incomplete-early-and-in-progress-overview-of-the-language-design/110)

This proposal should be considered a starting point of the language design. It's not intended to be final; language details may change. This is intended to offer a reasonable starting point for:

- Example code.
- Conceptualizing Carbon at a high level.
- Reasonable, but not necessarily final, approaches to features in README.md.
  - If any idea is obviously bad, we can clean it up here.

This proposal is not intended to achieve:

- A whole language design.
  - This is way too much work for a single proposal; this is a skeletal framework only.
  - As we work on feature-specific designs, we may decide to use other approaches. That's fine: we only need somewhere to start.
  - The summaries in README.md may be expected to change over time.
- Feature-specific files aren't intended to be well-written or comprehensive. They are a quick jot of prior thoughts.
  - We want to avoid getting stuck on language details that we should consider
    more carefully regardless. If you're passionate about a feature, please feel
    free to start a new proposal for it.
  - Each and every aspect of the suggested overview should be subject to careful
    examination and justification before it becomes a settled plan of record.

Chandler started this with https://github.com/carbon-language/carbon-lang/pull/22. I've taken it over with the following changes:

- More of a directory hierarchy.
- Trying to thin out the main file (now README.md) to lighter summaries of features.
- Details/rationale/alternatives should be in feature-specific files.
  - Draft files are linked as references where added.

For an example of how we may proceed with feature-specific designs, see https://github.com/carbon-language/carbon-lang/pull/80. In this structure:

- docs/design/README.md mentions interoperability, with a light overview.
  - The light overview is not yet in https://github.com/carbon-language/carbon-lang/pull/80.
- docs/design/interoperability/README.md goes into more depth on interoperability, covering key points of the approach.
- Individual files in docs/design/interoperability/* go into more depth on interoperability.

Simple designs may not have a subdirectory. All current feature-specific designs do not -- they may be moved later.
2020-07-30 11:37:15 -07:00
Jon Meow b8be334ab3 Brushing up review manager docs. (#119)
- Add mentions of new "comment deadline" label.
- Link to review manager doc from evolution doc.
- Standardize evolution doc on "topic" instead of "forum topic" (use was mixed).
2020-07-30 11:05:14 -07:00
Jon Meow 3706d4350d Polish script, address TODOs (#131) 2020-07-30 11:00:08 -07:00
Jon Meow 70ee36e8bb Support pagination and improve location info for comments. (#129) 2020-07-28 17:27:50 -07:00
Jon Meow fd4bf92717 Script to list PR comments (#128) 2020-07-28 15:53:09 -07:00
Jon Meow be116a46c9 Adjust md tab width to work better cross-markdown-parser (#124)
We're running into issues with md handlers that expect this kind of 4-space indent. It should be cross-compatible with GH, so switch, even though it feels a little churny.

Manual edits are to:

- .prettierrc.yaml:
    - rename from .prettierrc
    - add tabWidth (primary change)
    - add trailingComma (fix vimPrettier skew)
- contribution_tools.md: Fix remarks about .prettierrc.yaml
- pre-commit-toc.js: indent, bullets
- pre-commit-proposal-list.py: indent of output

The rest is the result of `pre-commit run --all-files`

Unfortunately this'll probably depend on the change being propagated into PR branches, so I wouldn't be surprised if we see regressions for a bit. We'll also need to nudge people to update .vimrc's. Hopefully the pre-commit GH action helps catch issues.
2020-07-27 10:47:38 -07:00
Jon Meow 435ed95ab2 Add 'developers' to the style guide (#118) 2020-07-27 10:33:30 -07:00
Jon Meow 34b77e97f3 Clean up goals wording in readme (#122) 2020-07-27 09:14:50 -07:00
George Kulakowski ba7d7c3c0e Fix the spelling of 'hardware' (#123) 2020-07-24 15:08:06 -07:00
Jon Meow 6edd57da02 Switch from em dash to -- for style. (#116)
Partly for relevant discussion on goals (where I didn't want to combine discussions), partly for https://github.com/carbon-language/carbon-lang/issues/106#issuecomment-657932678 in particular.
2020-07-21 19:28:01 -07:00
Jon Meow c1ab43c2e6 Stop specifying the full python version for black (#117)
python3.6 causes weird venv issues for at least josh11b -- not sure why. 

```
$ ls -l /usr/bin/python3.6
-rwxr-xr-x 2 root root 4538776 Jan  2  2019 /usr/bin/python3.6*
$ virtualenv -p python3.6 venv
RuntimeError: failed to find interpreter for Builtin discover of python_spec='python3.6'
```
2020-07-21 18:01:12 -07:00
Jon Meow f7b0a60cb2 Fix pre-commit issues from #51. (#115) 2020-07-20 14:36:16 -07:00
Jon Meow 00152b4ca6 Proposal for Goals (#51)
Co-authored with chandlerc

- [Draft doc](https://docs.google.com/document/d/1MJvVIDXQrhIj6hZ7NwMDbDch9XLO2VaYrGq29E57meU/edit)
- [RFC topic](https://forums.carbon-lang.dev/t/rfc-goals-for-carbon/69)
- [Decision request](https://forums.carbon-lang.dev/t/request-for-decision-goals-for-carbon/91)
- [Decision announcement](https://forums.carbon-lang.dev/t/accepted-goals-for-carbon/98)
2020-07-20 14:15:04 -07:00
Jon Meow c325ba61d4 Decision for: Linear, rebase, and pull-request GitHub workflow (#29) (#100)
- [Proposal PR](https://github.com/carbon-language/carbon-lang/pull/29)
- [RFC](https://forums.carbon-lang.dev/t/rfc-use-a-linear-pull-request-github-worflow/53)
- [Decision request](https://forums.carbon-lang.dev/t/request-for-decision-proposal-for-an-explicit-github-workflow-29/78)
- [Decision announcement](https://forums.carbon-lang.dev/t/accepted-linear-rebase-and-pull-request-github-workflow/88)
2020-07-20 14:01:57 -07:00
Jon MeowandRichard Smith af67e7452f Creates a convenience script for making new proposals. (#96)
Co-authored-by: Richard Smith <richard@metafoo.co.uk>
2020-07-10 13:37:46 -07:00
Chandler Carruth 444e48c210 Restrict publishing job to the main repository. (#104)
See the
[documentation](https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idif)
for details on the syntax, and the [context
docs](https://docs.github.com/en/actions/reference/context-and-expression-syntax-for-github-actions#github-context)
for the API used.
2020-07-09 14:48:51 -07:00
Jon Meow 4e09f03981 Consolidate towards github usernames (#105) 2020-07-08 15:32:27 -07:00
Jon Meow 53163b684e Clarify the need for a stub commit in the template. (#94) 2020-07-06 16:34:31 -07:00
Chandler Carruth 3505a258be Fix line wraps. (#102) 2020-07-03 15:35:55 -07:00
Bryce Adelstein Lelbach aka wash 15b0971eae Correct references to the default branch to use the new name, trunk. (#101) 2020-07-03 00:49:36 -07:00
c5ddb57dd7 Proposal for an explicit GitHub workflow. (#29)
* Proposal for an explicit GitHub workflow.

This suggests a GitHub workflow that uses pull requests, produces linear
history, and both incentivizes and encourages small, incremental changes
(both at the pull request and commit granularity). It tries to follow
general best practices around software engineering at scale and GitHub
workflows. It also tries to ensure the workflow is very well supported
by tooling and automation built into GitHub.

Of note, this proposal should match precisely the current enforced flow
on our GitHub repositories. But we need to actually decide we like this,
write up the rationale behind it, and document what we're doing.

I've added an abbreviated version of the proposal as a documentation
update to the contributing file. Happy to restructure or find a better
home for this. I've tried to focus on the parts that contributors
actually would need to care about as opposed to the things that are
simply and fully enforced mechanically.

My hope after this is to suggest more detailed code review guidelines.

* Addressing review comments.

Notably, I really was giving too much weight to multi-commit PRs which
shouldn't be the common or default. I've tried to restructure everything
to make it much more clear what is going on here.

* Minor tweaks

* Fix typo in CONTRIBUTING.md

Co-authored-by: josh11b <josh11b@users.noreply.github.com>

* Extract workflow description and remove redundancies.

* remove tracking issue template field

* Update proposals/p0029.md with reviewer suggsetion.

Co-authored-by: Dmitri Gribenko <gribozavr@gmail.com>

* Continue to address review feedback.

* Apply suggestions from code review

Co-authored-by: Jon Meow <46229924+jonmeow@users.noreply.github.com>
Co-authored-by: austern <austern@google.com>

* Incorporate code review feedback and begin moving toward "trunk" based terminology

* Tweak the wording and make it a bit more consistent.

* Update docs/project/pull_request_workflow.md

Co-authored-by: Dmitri Gribenko <gribozavr@gmail.com>

* Address more review comments.

* Correct the rationale.

* Tweak wording based on discussion in review.

* Improve the rationale around the default branch to avoid overstating or
misstatig things.

* Apply suggestions from code review

Co-authored-by: Jon Meow <46229924+jonmeow@users.noreply.github.com>

* Clean up formatting and address a couple of comments on grammar from review.

* Update docs/project/pull_request_workflow.md

Co-authored-by: austern <austern@google.com>

* Add to proposal list.

Co-authored-by: josh11b <josh11b@users.noreply.github.com>
Co-authored-by: Dmitri Gribenko <gribozavr@gmail.com>
Co-authored-by: Jon Meow <46229924+jonmeow@users.noreply.github.com>
Co-authored-by: austern <austern@google.com>
2020-06-30 23:12:39 -07:00
Jon Meow f12e86c23c Script a list of proposals in proposals/README.md (#92)
Per request from chandlerc, to make it easier to skim proposal titles outside the website.

Also fix the title of markdown-toc.
2020-06-29 15:42:26 -07:00
Jon Meow bc76242838 Configure black for Python formatting (#97) 2020-06-29 11:34:15 -07:00