-
Notifications
You must be signed in to change notification settings - Fork 13.5k
Open
Labels
A-proc-macrosArea: Procedural macrosArea: Procedural macrosC-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCCategory: An issue tracking the progress of sth. like the implementation of an RFCT-libs-apiRelevant to the library API team, which will review and decide on the PR/issue.Relevant to the library API team, which will review and decide on the PR/issue.
Description
Feature gate: #![feature(proc_macro_tracked_env, track_path)]
This is a tracking issue for proc_macro::tracked*
, to allow adding files and environment variables to the build system's dependency tracking.
Public API
// proc_macro
mod tracked_env {
pub fn var<K: AsRef<OsStr> + AsRef<str>>(key: K) -> Result<String, VarError>;
}
mod tracked_path {
pub fn path<P: AsRef<str>>(path: P);
}
Steps / History
- Implementation of
tracked_env::var
: proc_macro: Add API for tracked access to environment variables #74653 - Implementation of
tracked_path::path
: addtrack_path::path
fn for usage inproc_macro
s #84029 - Add tracking issue: Use new tracking issue for proc_macro::tracked_*. #99516
- Change
path
to acceptAsRef<Path>
instead ofAsRef<str>
- Design the public API
- Documentation
- Final comment period (FCP)
- Stabilization PR
Unresolved Questions
- The full API design.
- The implementaiton PRs were mostly focussed on the implementation details behind the scenes of
proc_macro
, but there's barely been any discussion on the public interface.
- The implementaiton PRs were mostly focussed on the implementation details behind the scenes of
GuillaumeGomez, finnbear, SeaDve, cdmistman, connorskees and 30 morefinnbear, cyqsimon and NohacGuillaumeGomez, rrbutani, Nohac and wetnebacheroncrypto and niklaswimmercyqsimon, Nohac and boozook
Metadata
Metadata
Assignees
Labels
A-proc-macrosArea: Procedural macrosArea: Procedural macrosC-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCCategory: An issue tracking the progress of sth. like the implementation of an RFCT-libs-apiRelevant to the library API team, which will review and decide on the PR/issue.Relevant to the library API team, which will review and decide on the PR/issue.