Comments (2)
cc @epage
from lang-team.
Spelling out some possibilities discussed in the meeting:
- One option would be to say that the only thing that interprets the
```
blocks is the interpreter on the shebang line, and if it doesn't understand a block it should reject it. Cargo could then reject anything other thancargo
, or in the futurecargo-lock
, and rustc would ignore everything. - Another option would be for rustc to have an allowlist of what it ignores, and error on anything else.
What to do here depends somewhat on where we see future extensions going. If we expect this to only be used by scripts, the former option seems reasonable: the script interpreter can take responsibility for the namespace. If we expect this to be potentially used by other Rust tools as well (e.g. an ```analyzer
block to pass info to rust-analyzer, or a block for some other tool), then we may want to have rustc manage the allowlist.
Some folks in the meeting objected to the idea of having broader usage/extensions that weren't for scripts. Some folks objected to the idea of not having an allowlist somewhere (either in rustc or cargo).
I'm hoping we can reach a consensus to narrowly allow cargo
for now, which gives us the future option of either dropping or extending the safelist.
from lang-team.
Related Issues (20)
- Design meeting: Implementable trait aliases
- weak alias types for Rust 2024 HOT 5
- Design meeting: Rust issues encountered by new Rust users in the Bevy project HOT 3
- T-types proposal for stabilizing type alias impl Trait (TAIT)
- 2024 Edition Review HOT 1
- Design meeting: resolve ABI issues around target-feature HOT 6
- Website broken HOT 5
- Design meeting: Rust for Linux
- Design meeting: Match ergonomics 2024
- Lang-team RFC guidelines appear to be out of date
- Design meeting: Profiles
- Bounds for RPIT/RPITIT/async fn
- Discuss RFC 2442: Simple postfix macros HOT 3
- Discuss Rust 2024 edition planning: 2024-01-10
- Discuss ideas for GSoC 2024 HOT 2
- Discuss feedback for T-spec sample chapters HOT 1
- Lang discussion: Item-level `const {}` blocks, and `const { assert!(...) }` HOT 1
- Discuss temporary lifetimes 2024 RFC HOT 1
- Discuss arbitrary self types v2 RFC
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lang-team.