axodotdev / axodotdev/cargo-dist

consider setting up windows dev drives for our users

Open
#1,425 0 comments 0 reactions 0 assignees View on GitHub
feature request
Dominant language
Rust
Stars
2.1k
Forks
150
Avg merge
1d 11h
Merged PRs (30d)
32

Description

Windows dev drives AKA ReFS are an opt-in new filesystem that is optimized for github repos / builds that can potentially speed things up a lot.

* docs: https://learn.microsoft.com/en-us/windows/dev-drive/
* blogpost: https://devblogs.microsoft.com/visualstudio/devdrive/
* astral seeing some wins doing this: https://github.com/astral-sh/uv/pull/3522

It's a bit surprising to me that github of all places can't automagically set this up for you but it is true that there's windows features that Don't Work in these drives so in the most general sense they aren't safe to turn on. However I believe it's *basically* always fine, so as a default it's pretty sensible.

# Known Pros

Wins from dev drive are apparently mostly that it basically tells windows defender to stop realtime scanning the contained files. This is apparently especially high impact for things like unzipping files. Honestly kind of surprising to hear windows defender runs on github actions but maybe it does?

# Known Limitations

Biggest limitation of devdrive is that it doesn't support "reparse points" which is similar to a linux FUSE filesystem in that they are a filesystem-level feature that lets a filesystem say there is a "file" that is actually some magic that another program gets callback'd to read/write the bytes as needed

* this is a big deal for windows *as an operating system* because this feature backs many things like
* dropbox/onedrive cloud sync files, which may not exist on the FS until you access them
* filesystem mounts
* certain kinds of symlinky things
* font files, which are i guess synthesized on the fly if you read them
* for a source repo and build these things are largely irrelevant (why are you mounting a filesystem underneath your repo? why are you booting up onedrive in there? etc)

Contributor guide

Open the contributing guide

Research direction

Start with the Windows Dev Drive documentation and the linked uv pull request to understand the proposed setup and its ReFS limitations. Define whether cargo-dist should configure or offer Dev Drives, and consider the work complete only when the supported behavior, safety constraints, and user-facing outcome are specified.

Written by the indexing model from the issue text.

Assessment

Domain
operating-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.