GithubHelp home page GithubHelp logo

rust-lang / compiler-team Goto Github PK

View Code? Open in Web Editor NEW
382.0 382.0 67.0 3.26 MB

A home for compiler team planning documents, meeting minutes, and other such things.

Home Page: https://rust-lang.github.io/compiler-team/

License: Apache License 2.0

HTML 100.00%

compiler-team's People

Contributors

alexcrichton avatar amanjeev avatar apiraino avatar blitzerr avatar catalinasy avatar centril avatar chrissimpkins avatar davidtwco avatar guswynn avatar igaray avatar jackh726 avatar johntitor avatar jonas-schievink avatar joshtriplett avatar jyn514 avatar lqd avatar mark-i-m avatar mark-simulacrum avatar matklad avatar michaelwoerister avatar nagisa avatar nikomatsakis avatar oli-obk avatar pnkfelix avatar ralfjung avatar spastorino avatar tmandry avatar tshepang avatar wesleywiser avatar xanewok avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

compiler-team's Issues

Modifications to rustc for the Rust REPL

As several of you know, I managed to successfully create a proof-of-concept Rust REPL about a couple of months ago. This necessitated (at least, given a clean and sane approach) a few — essentially minor — changes to rustc.

As discussed with @nikomatsakis and @Mark-Simulacrum, the we thought the best way to proceed with this would be to create a design document that summarises my approach to creating the REPL, along with some technical details. The idea is to get some feedback either before or during the FCP process, from which I can proceed by submitting PRs.

HackMD Document

See the first REPL-related PR (currently pending this issue and FCP) for more examples of the sorts of changes I am making (although that will need to be updated somewhat).

mentorship/internship program

Building on the compiler-team contributor RFC, we wish to propose an active mentorship / internship program. This would be a way for contributors to work closely with a member on some non-complex task, helping them to become full members.

Some rough notes:

  • this is the final step before being added to the team. A member-in-training generally works with a compiler team member on some notable project. This might be coding work but it could be more organization or design-oriented. The project should demonstrate a deep understanding of some area of the compiler, but it need not be “new feature work” — refactorings etc would also make sense.
    • The member and project should be proposed beforehand to the team.
    • The member-in-training would be committing to work on the project, and the mentor is committing to meet with them regularly and play some part.

major changes proposal

Meeting proposal info

  • Title: major changes proposal
  • Type: non-technical
  • Proposed by: nikomatsakis
  • Link: TBD
  • Scheduled dates for discussion:
    • Not yet scheduled, we'll add content here when it gets scheduled

Summary

Propose a plan for how one goes about making "major changes" to a compiler area. Outline would be:

  • Announce your intentions at a meeting, ideally with some rough sketch
  • Identify reviewer
  • Document plans and get discussion / sign-off (possibly but not necessarily at design meeting)
  • Documentation guidelines

More detailed proposal available here

About this issue

This issue corresponds to a meeting proposal for the compiler team
steering meeting. It corresponds to a possible topic of
discussion. You can read more about the steering meeting procedure
here
.

Comment policy

These issues are meant to be used as an "announcements channel"
regarding the proposal, and not as a place to discuss the technical
details. Feel free to subscribe to updates. We'll post comments when
reviewing the proposal in meetings or making a scheduling decision.
In the meantime, if you have questions or ideas, ping the proposers
on Zulip (or elsewhere).

prepare for design meeting

In our recent steering meeting, we made a decision to try and institute a design meeting. There is now some work to get ready for that.

Meeting schedule

@michaelwoerister and I proposed a 4 week cycle with this general shape:

  • Week 1 -- Scheduling meeting
  • Week 2 -- Design meeting 1
  • Week 3 -- Design meeting 2
  • Week 4 -- Steering meeting (non-technical discussion)

The scheduling meeting would be used to decide the topics of the remaining 3 meetings.

work items

  • the compiler-team calendar needs to be updated to help us track the schedule
  • we need a template for meeting proposals (nothing complex)
  • we need a place to put those proposals (I propose we put them as PRs against this repository?)
  • ultimately, we should have an RFC describing the change

Next steps for ICE breaker group

  • we need a guide that helps people to get started with this sort of bug -- see rust-lang/rustc-dev-guide#452
  • we need some mechanism to make a github team people can subscribe to (as discussed here) -- @spastorino
  • we need an announcement (maybe for the new team blog I am setting up!) -- draft blog post in this hackmd doc
  • sample PR for adding yourself rust-lang/team#140
  • we need a github label -- done, ICEBreaker-LLVM
  • we need to update our compiler-team page to drive attention to these groups as a way to contribute
  • and maybe think about the main contribution page?
  • create a triagebot.toml file in rust-lang/rust (sample) rust-lang/rust#65508
  • we need a script people can copy/paste or -- better -- we need some command we can issue the triagebot. This fits with the discussion around "self-subscribing teams". rust-lang/rustc-dev-guide#463 -- @spastorino
  • compiler twitter account that tweets these things out

That bot would assign the label and write something like:

Hey LLVM icebreakers! This bug has been identified as a good
"LLVM ice-breaking candidate". In case it's useful, here are some
[general instructions] for tackling these sorts of bugs. Maybe take a look?

cc @foo @bar @baz ...

contributor RFC

RFC 2689 created the concept of compiler-team contributors. We need to "activate" that work:

  • Update team repository rust-lang/team#66
  • Update github teams
  • Add material and definitions to this repository
  • Blog post

working group review

Meeting proposal info

  • Title: working group review
  • Type: non-technical
  • Proposed by: nikomatsakis
  • Link: TBD, but see below
  • Scheduled dates for discussion:

Summary

The basic idea is to talk about the working group system we adopted earlier this year. How's it working out? Thoughts, concerns? I think before the meeting we would do a survey to take the general temperature, and during the meeting we'd shape the agenda based on the results of that meeting.

Some topics we might look at:

  • Is sharing the wg updates with triage meeting good?
  • Can we rename working groups to avoid confusing with domain working groups like embedded? (The embedded wg has proposed the term "Projects", for example.)
  • How to manage working group membership?

About this issue

This issue corresponds to a meeting proposal for the compiler team
steering meeting. It corresponds to a possible topic of
discussion. You can read more about the steering meeting procedure
here
.

Comment policy

These issues are meant to be used as an "announcements channel"
regarding the proposal, and not as a place to discuss the technical
details. Feel free to subscribe to updates. We'll post comments when
reviewing the proposal in meetings or making a scheduling decision.
In the meantime, if you have questions or ideas, ping the proposers
on Zulip (or elsewhere).

Constitutional Convention

Meeting proposal info

About this issue

This issue corresponds to a meeting proposal for the compiler team
steering meeting. It corresponds to a possible topic of
discussion. You can read more about the steering meeting procedure
here
.

Comment policy

These issues are meant to be used as an "announcements channel"
regarding the proposal, and not as a place to discuss the technical
details. Feel free to subscribe to updates. We'll post comments when
reviewing the proposal in meetings or making a scheduling decision.
In the meantime, if you have questions or ideas, ping the proposers
on Zulip (or elsewhere).

Formatting the rust-lang/rust repository

Meeting proposal info

  • Title: RFC: Format the rust-lang/rust repository
  • Type: it's complicated
  • Proposed by: @Centril
  • Link: Centril/rfcs#21
  • Scheduled dates for discussion:
    • Not yet scheduled, we'll add content here when it gets scheduled

About this issue

This issue corresponds to a meeting proposal for the compiler team
steering meeting. It corresponds to a possible topic of
discussion. You can read more about the steering meeting procedure
here
.

Comment policy

These issues are meant to be used as an "announcements channel"
regarding the proposal, and not as a place to discuss the technical
details. Feel free to subscribe to updates. We'll post comments when
reviewing the proposal in meetings or making a scheduling decision.
In the meantime, if you have questions or ideas, ping the proposers
on Zulip (or elsewhere).

compile time analysis and assistance

Meeting proposal info

  • Title: compile time analysis and assistance
  • Type: non-technical
  • Proposed by: @nikomatsakis
  • Link: hackmd
  • Scheduled dates for discussion:
    • Not yet scheduled, we'll add content here when it gets scheduled

About this issue

This issue corresponds to a meeting proposal for the compiler team
steering meeting. It corresponds to a possible topic of
discussion. You can read more about the steering meeting procedure
here
.

Comment policy

These issues are meant to be used as an "announcements channel"
regarding the proposal, and not as a place to discuss the technical
details. Feel free to subscribe to updates. We'll post comments when
reviewing the proposal in meetings or making a scheduling decision.
In the meantime, if you have questions or ideas, ping the proposers
on Zulip (or elsewhere).

make a "Cleanup Crew" ICE-breakers for bisection

Check list of things to do:

Steering meeting proposal: Target tier policy

Meeting proposal info

About this issue

This issue corresponds to a meeting proposal for the compiler team
steering meeting. It corresponds to a possible topic of
discussion. You can read more about the steering meeting procedure
here
.

Comment policy

These issues are meant to be used as an "announcements channel"
regarding the proposal, and not as a place to discuss the technical
details. Feel free to subscribe to updates. We'll post comments when
reviewing the proposal in meetings or making a scheduling decision.
In the meantime, if you have questions or ideas, ping the proposers
on Zulip (or elsewhere).

review roadmap 2019

Meeting proposal info

  • Title: roadmap 2020 panning 1
  • Type: non-technical
  • Proposed by: nikomatsakis
  • Link: TBD, see summary below
  • Scheduled dates for discussion:
    • Not yet scheduled, we'll add content here when it gets scheduled

Summary

We're going to need to form intelligent thoughts about the roadmap as a team. This meeting would review some of the goals we had from 2019 and kickstart discussion on what our goals might be over the next year.

About this issue

This issue corresponds to a meeting proposal for the compiler team
steering meeting. It corresponds to a possible topic of
discussion. You can read more about the steering meeting procedure
here
.

Comment policy

These issues are meant to be used as an "announcements channel"
regarding the proposal, and not as a place to discuss the technical
details. Feel free to subscribe to updates. We'll post comments when
reviewing the proposal in meetings or making a scheduling decision.
In the meantime, if you have questions or ideas, ping the proposers
on Zulip (or elsewhere).

merge llvm.sideeffect change

Meeting proposal info

  • Title: merge llvm.sideeffect change
  • Type: technical
  • Proposed by: @nikomatsakis
  • Link: (inline, see below)
  • Scheduled dates for discussion:
    • Not yet scheduled, we'll add content here when it gets scheduled

Proposal details

Rust has had a long-standing problem where LLVM optimizes empty loops into UB. This can very easily create real bugs for folks. We've got a pending PR (#59546) that fixes this by inserting llvm.sideeffect instructions, but until recently it was blocked on getting some lolbench measurements done. These measurements were recently completed (thanks @mati865!). They suggest the impact is "generally" small but non-zero (I put them in a world readable spreadsheet here, feel free to copy and play with it). We need to make a decision whether this is good enough! I'm going to cc the @rust-lang/lang team since I think lang team input would be useful here.

About this issue

This issue corresponds to a meeting proposal for the compiler team
steering meeting. It corresponds to a possible topic of
discussion. You can read more about the steering meeting procedure
here
.

Comment policy

These issues are meant to be used as an "announcements channel"
regarding the proposal, and not as a place to discuss the technical
details. Feel free to subscribe to updates. We'll post comments when
reviewing the proposal in meetings or making a scheduling decision.
In the meantime, if you have questions or ideas, ping the proposers
on Zulip (or elsewhere).

incremental dep-graph storage

Meeting proposal info

Summary

In our meeting today, we decided to try and cover #60035 in more detail in a follow-up meeting. @nikomatsakis is going to try to loop up with @Zoxc and @michaelwoerister to fill out the hackmd doc above with details on the proposal as well as questions and concerns to highlight.

About this issue

This issue corresponds to a meeting proposal for the compiler team
steering meeting. It corresponds to a possible topic of
discussion. You can read more about the steering meeting procedure
here
.

Comment policy

These issues are meant to be used as an "announcements channel"
regarding the proposal, and not as a place to discuss the technical
details. Feel free to subscribe to updates. We'll post comments when
reviewing the proposal in meetings or making a scheduling decision.
In the meantime, if you have questions or ideas, ping the proposers
on Zulip (or elsewhere).

clickable section headers

Can we make the "section headers" on the webpage clickable? e.g., like "meeting calendar" and the like. It seems that the anchors like #meeting-calendar exist -- they're just not easy to spot.

Improve the working group check-in schedule.

It is desirable to have a schedule for working group check-ins so that this can be planned for and delegated, and to ensure that each working group is heard from regularly and succeeds in their goal. However, the current schedule requires regular manual updating and changes when new groups are added, we should devise a new system that requires less manual work to maintain.

Migrate rustc_inferface queries

Meeting proposal info

About this issue

This issue corresponds to a meeting proposal for the compiler team
steering meeting. It corresponds to a possible topic of
discussion. You can read more about the steering meeting procedure
here
.

Comment policy

These issues are meant to be used as an "announcements channel"
regarding the proposal, and not as a place to discuss the technical
details. Feel free to subscribe to updates. We'll post comments when
reviewing the proposal in meetings or making a scheduling decision.
In the meantime, if you have questions or ideas, ping the proposers
on Zulip (or elsewhere).

A unified framework for dataflow analysis

Meeting proposal info

After rust-lang/rust#64566, which was a prerequisite for dataflow-based const validation, there are two different frameworks for dataflow analysis in the compiler. I've written a prototype along with a design document for unifying the two frameworks.

The dataflow framework is an internal API (with the exception of one use in cargo-clippy), so this is a good time to improve it if desired. Accordingly, I've made some changes in the prototype, like passing Statements and Terminators directly into the effect methods, and making the signature of call_return_effect more similar to the others. If anyone has had difficulties implementing or inspecting the results of a dataflow analysis, it would be awesome to get your feedback here.

About this issue

This issue corresponds to a meeting proposal for the compiler team
steering meeting. It corresponds to a possible topic of
discussion. You can read more about the steering meeting procedure
here
.

Comment policy

These issues are meant to be used as an "announcements channel"
regarding the proposal, and not as a place to discuss the technical
details. Feel free to subscribe to updates. We'll post comments when
reviewing the proposal in meetings or making a scheduling decision.
In the meantime, if you have questions or ideas, ping the proposers
on Zulip (or elsewhere).

ICE-breaker groups

Meeting proposal info

About this issue

This issue corresponds to a meeting proposal for the compiler team
steering meeting. It corresponds to a possible topic of
discussion. You can read more about the steering meeting procedure
here
.

Comment policy

These issues are meant to be used as an "announcements channel"
regarding the proposal, and not as a place to discuss the technical
details. Feel free to subscribe to updates. We'll post comments when
reviewing the proposal in meetings or making a scheduling decision.
In the meantime, if you have questions or ideas, ping the proposers
on Zulip (or elsewhere).

compiler-team twitter account

It'd be useful to highlight ICE-breakers, bisecters, and other sorts of bugs using a twitter account, ideally automatically. @pnkfelix mentioned the idea of retweeting when things go unassigned.

Missing minutes after website PR merge

After this #103 was merged some minutes ended being missed, probably in the PR created and merged time window.

I guess that if we add back notes added in PRs in between PR #103 (website) and PR #120 (a PR after website was merged) and add back those meeting notes we would be golden.
Still a sanity check in general won't be a bad thing to do.

/cc @unbalancedparentheses @catalinasy

Maintenance and triage

Meeting proposal info

About this issue

This issue corresponds to a meeting proposal for the compiler team
steering meeting. It corresponds to a possible topic of
discussion. You can read more about the steering meeting procedure
here
.

Comment policy

These issues are meant to be used as an "announcements channel"
regarding the proposal, and not as a place to discuss the technical
details. Feel free to subscribe to updates. We'll post comments when
reviewing the proposal in meetings or making a scheduling decision.
In the meantime, if you have questions or ideas, ping the proposers
on Zulip (or elsewhere).

discuss the great `'gcx`, `'tcx` transition

Meeting proposal info

About this issue

This issue corresponds to a meeting proposal for the compiler team
steering meeting. It corresponds to a possible topic of
discussion. You can read more about the steering meeting procedure
here
.

Comment policy

These issues are meant to be used as an "announcements channel"
regarding the proposal, and not as a place to discuss the technical
details. Feel free to subscribe to updates. We'll post comments when
reviewing the proposal in meetings or making a scheduling decision.
In the meantime, if you have questions or ideas, ping the proposers
on Zulip (or elsewhere).

Shipping parallel rustc

Meeting proposal info

About this issue

This issue corresponds to a meeting proposal for the compiler team
steering meeting. It corresponds to a possible topic of
discussion. You can read more about the steering meeting procedure
here
.

Comment policy

These issues are meant to be used as an "announcements channel"
regarding the proposal, and not as a place to discuss the technical
details. Feel free to subscribe to updates. We'll post comments when
reviewing the proposal in meetings or making a scheduling decision.
In the meantime, if you have questions or ideas, ping the proposers
on Zulip (or elsewhere).

convert this repository to use github pages

The current repository is just a bunch of mark down files in a directory. This is very hip and low-tech, but it'd be nice if we could have automatically rendered content. A partial list follows:

  • the working group table on the front page
  • the working group check-in
  • a blog and an announcement page
  • the expert map could be rendered from a machine-readable TOML file

If we ported over to a jekyll setup and publishing via github pages, that would be awesome.

Creating a OSS Fuzz project for Rust Compiler and stdlib

Meeting proposal info

About this issue

This issue corresponds to a meeting proposal for the compiler team
steering meeting. It corresponds to a possible topic of
discussion. You can read more about the steering meeting procedure
here
.

Comment policy

These issues are meant to be used as an "announcements channel"
regarding the proposal, and not as a place to discuss the technical
details. Feel free to subscribe to updates. We'll post comments when
reviewing the proposal in meetings or making a scheduling decision.
In the meantime, if you have questions or ideas, ping the proposers
on Zulip (or elsewhere).

rust-analyzer and library-ification

Meeting proposal info

About this issue

This issue corresponds to a meeting proposal for the compiler team
steering meeting. It corresponds to a possible topic of
discussion. You can read more about the steering meeting procedure
here
.

Comment policy

These issues are meant to be used as an "announcements channel"
regarding the proposal, and not as a place to discuss the technical
details. Feel free to subscribe to updates. We'll post comments when
reviewing the proposal in meetings or making a scheduling decision.
In the meantime, if you have questions or ideas, ping the proposers
on Zulip (or elsewhere).

Add contributing section?

We should have a contributing section on https://rust-lang.github.io/compiler-team/.

It could say:

  • sign up for zulip
  • check out the rustc-guide
  • look for easy, mentor issues
  • join an ICE-breaker group
  • follow along with a working group
  • could also mention #t-compiler/help-wanted once it exists

Do we have content like this on rustc-guide?, maybe we should just have a contributing section that redirects there?.

rustc-guide should be the canonical home for that sort of thing, as it can go into a lot more depth, and we have a lot of that content.

Bring existing compiler team repositories up-to-code.

This issue originally only aimed to unify the labels across compiler team crates, but was generalized to list all of the things listed in the out-of-tree crates policy. The original description is below.


In order to perform triage in the weekly meeting across nominated issues in all compiler-team maintained repositories, we should make sure that there are a consistent set of labels that are used and that we update the triage meeting agenda to point to these searches.

who debugs the debuginfo

Meeting proposal info

About this issue

This issue corresponds to a meeting proposal for the compiler team
steering meeting. It corresponds to a possible topic of
discussion. You can read more about the steering meeting procedure
here
.

Comment policy

These issues are meant to be used as an "announcements channel"
regarding the proposal, and not as a place to discuss the technical
details. Feel free to subscribe to updates. We'll post comments when
reviewing the proposal in meetings or making a scheduling decision.
In the meantime, if you have questions or ideas, ping the proposers
on Zulip (or elsewhere).

Investigate ways to announce compiler team updates.

Quoting @nikomatsakis from Zulip:

So I was talking to the person who runs readrust.net on discord. I feel like we need better visibility for the summaries and activities of the various compiler working groups. I was envisioning that it would be nice to have a central blog that just contains these sorts of updates and announcements -- basically, the activity of each of the working groups. In fact, I suspect that the blog should be project wide, with the ability to filter by team, by working group, or by other things.

The readrust.net author encouraged me to write-up an issue with more details. Before doing that, I thought I would open up some discussion here.

I've also been wondering about the structure of the weekly meetings -- I was thinking that maybe, instead of pulling from the groups, each group should push updates, content, and questions, and we can review them in the triage meeting.

Originally, I had in mind that we would go round robin because I thought it'd be useful to be able to see if working groups haven't been active with updates in a while. But we can do that separately just by having the updates organized by working group and checking for working groups that haven't posted any comments in a while (or, honestly, just monitoring Zulip). This could be a signal to go check-in and see how things are going and if we can do anything to help.

Template link broken

The link from the issue template to the proposal template seems broken; it links to _proposal.md, but the template now appears in _index.md.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.