Global constants are usually named in uppercase in Julia, right?
https://github.com/JuliaLang/julia/blob/ef496b060af9bbfe093297b8659dc75b79d30c94/base/loading.jl#L269-L270 has two definitons
const project_names = ("JuliaProject.toml", "Project.toml")
const manifest_names = ("JuliaManifest.toml", "Manifest.toml")
later they surface like black magic in current_project(dir)
from https://github.com/JuliaLang/julia/blob/d789231e9985537686052db9b2314c0d51656308/base/initdefs.jl#L85-L98
function current_project(dir::AbstractString)
# look for project file in current dir and parents
home = homedir()
while true
for proj in project_names
file = joinpath(dir, proj)
isfile_casesensitive(file) && return file
end
# bail at home directory
dir == home && break
old, dir = dir, dirname(dir)
dir == old && break
end
end
Is this intentional? Why not fix this?