Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

make JULIA_DEPOT_PATH work like JULIA_LOAD_PATH? #31002

Closed
StefanKarpinski opened this issue Feb 8, 2019 · 3 comments
Closed

make JULIA_DEPOT_PATH work like JULIA_LOAD_PATH? #31002

StefanKarpinski opened this issue Feb 8, 2019 · 3 comments
Assignees
Labels
minor change Marginal behavior change acceptable for a minor release speculative Whether the change will be implemented is speculative

Comments

@StefanKarpinski
Copy link
Member

I'm writing long-overdue docs for how JULIA_LOAD_PATH is expanded to populate LOAD_PATH (the current docs are woefully inaccurate at this point) and I noticed that JULIA_DEPOT_PATH doesn't do the same "empty path means insert the default" thing that JULIA_LOAD_PATH does. I really think it should basically for the reasons given here. All the same arguments apply to JULIA_DEPOT_PATH. Technically this is a breaking change, but I think it's a good change and I strongly doubt anyone is relying on the current behavior since most people don't seem to understand what the depot path is or do anything to change it in the first place.

@StefanKarpinski StefanKarpinski added speculative Whether the change will be implemented is speculative minor change Marginal behavior change acceptable for a minor release labels Feb 8, 2019
@StefanKarpinski StefanKarpinski added this to the 1.2 milestone Feb 8, 2019
@StefanKarpinski StefanKarpinski self-assigned this Feb 8, 2019
@StefanKarpinski StefanKarpinski added the triage This should be discussed on a triage call label Feb 8, 2019
@mgkuhn
Copy link
Contributor

mgkuhn commented Feb 9, 2019

I agree. The behavior that an empty entry after splitting on the separator is expanded to the default value is already well established in other tools that take search paths in environment variables, most notably TeX's TEXINPUT variable, and has withstood the test of time.

Regarding the alternative interpretation of an empty entry as the current working directory, this POSIX sh behavior is actually discouraged from being used by the POSIX standard: “A zero-length prefix is a legacy feature that indicates the current working directory. It appears as two adjacent characters ( "::" ), as an initial preceding the rest of the list, or as a trailing following the rest of the list. A strictly conforming application shall use an actual pathname (such as .) to represent the current working directory in PATH.”

@StefanKarpinski
Copy link
Member Author

All good points. I was not aware of TEXINPUT using the same convention but it makes sense as a convention. I’m inclined to go ahead with this and see if it breaks PkgEval when we tag 1.2-rc1 or if anyone complains. My guess is no on both counts. Will wait for assent from triage.

@StefanKarpinski StefanKarpinski removed the triage This should be discussed on a triage call label Feb 13, 2019
@KristofferC KristofferC modified the milestones: 1.2, 1.x Apr 17, 2019
@StefanKarpinski
Copy link
Member Author

Closed by #31009.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
minor change Marginal behavior change acceptable for a minor release speculative Whether the change will be implemented is speculative
Projects
None yet
Development

No branches or pull requests

3 participants