just/src
Casey Rodarmor c4e9857ebd
Avoid fs::canonicalize (#539)
Previously, we used `fs::canonicalize` to ensure paths used in search
were absolute. This lead to bad behavior when the justfile was symbolic
link to a file in another directory. Additionally, on Windows, this
produced paths in extended length syntax, which, I believe, has
compatibility issues.

This diff replaces uses of `fs::canonicalize`  with a simpler algorithm
that roots path in the invocation directory (which will be a no-op if
said path is already absolute), uses `Path::components` to remove extra
`/` and `.`, and resolves instances of `..` without following symlinks, by
removing the `..` and the component that proceeds it.
2019-11-19 03:51:44 -08:00
..
alias_resolver.rs Reform Parser (#509) 2019-11-07 10:55:15 -08:00
alias.rs Reform Parser (#509) 2019-11-07 10:55:15 -08:00
analyzer.rs Add shell setting (#525) 2019-11-10 23:17:47 -08:00
assignment_evaluator.rs Add shell setting (#525) 2019-11-10 23:17:47 -08:00
assignment_resolver.rs Refactor Compilation error to contain a Token (#535) 2019-11-13 19:32:50 -08:00
assignment.rs Reform Parser (#509) 2019-11-07 10:55:15 -08:00
color.rs Gargantuan refactor (#522) 2019-11-09 21:43:20 -08:00
command_ext.rs Reform Parser (#509) 2019-11-07 10:55:15 -08:00
common.rs Avoid fs::canonicalize (#539) 2019-11-19 03:51:44 -08:00
compilation_error_kind.rs Add shell setting (#525) 2019-11-10 23:17:47 -08:00
compilation_error.rs Refactor Compilation error to contain a Token (#535) 2019-11-13 19:32:50 -08:00
compilation_result_ext.rs Reform Parser (#509) 2019-11-07 10:55:15 -08:00
compiler.rs Gargantuan refactor (#522) 2019-11-09 21:43:20 -08:00
config_error.rs Avoid fs::canonicalize (#539) 2019-11-19 03:51:44 -08:00
config.rs Release: v0.5.0 (#530) 2019-11-12 14:11:53 -08:00
count.rs Remove misc.rs (#491) 2019-10-09 01:40:40 -07:00
default.rs Remove misc.rs (#491) 2019-10-09 01:40:40 -07:00
empty.rs Remove misc.rs (#491) 2019-10-09 01:40:40 -07:00
enclosure.rs Remove misc.rs (#491) 2019-10-09 01:40:40 -07:00
error_result_ext.rs Gargantuan refactor (#522) 2019-11-09 21:43:20 -08:00
error.rs Gargantuan refactor (#522) 2019-11-09 21:43:20 -08:00
expression.rs Reform Parser (#509) 2019-11-07 10:55:15 -08:00
fragment.rs Reform Parser (#509) 2019-11-07 10:55:15 -08:00
function_context.rs Gargantuan refactor (#522) 2019-11-09 21:43:20 -08:00
function.rs Gargantuan refactor (#522) 2019-11-09 21:43:20 -08:00
functions.rs Reform Parser (#509) 2019-11-07 10:55:15 -08:00
fuzzing.rs Use pub(crate) instead of pub (#471) 2019-09-21 15:35:03 -07:00
interrupt_guard.rs Use pub(crate) instead of pub (#471) 2019-09-21 15:35:03 -07:00
interrupt_handler.rs Gargantuan refactor (#522) 2019-11-09 21:43:20 -08:00
item.rs Add shell setting (#525) 2019-11-10 23:17:47 -08:00
justfile.rs Release: v0.5.0 (#530) 2019-11-12 14:11:53 -08:00
keyed.rs Reform Parser (#509) 2019-11-07 10:55:15 -08:00
keyword.rs Add shell setting (#525) 2019-11-10 23:17:47 -08:00
lexer.rs Move lexer comment (#536) 2019-11-13 19:53:14 -08:00
lib.rs Refactor Compilation error to contain a Token (#535) 2019-11-13 19:32:50 -08:00
line.rs Reform Parser (#509) 2019-11-07 10:55:15 -08:00
list.rs Remove misc.rs (#491) 2019-10-09 01:40:40 -07:00
load_dotenv.rs Update dependencies (#501) 2019-10-22 19:51:50 -07:00
load_error.rs Gargantuan refactor (#522) 2019-11-09 21:43:20 -08:00
main.rs Refactor run::run and Config (#490) 2019-10-09 00:18:53 -07:00
module.rs Reform Parser (#509) 2019-11-07 10:55:15 -08:00
name.rs Reform Parser (#509) 2019-11-07 10:55:15 -08:00
node.rs Add shell setting (#525) 2019-11-10 23:17:47 -08:00
ordinal.rs Use pub(crate) instead of pub (#471) 2019-09-21 15:35:03 -07:00
output_error.rs Reform Parser (#509) 2019-11-07 10:55:15 -08:00
output.rs Use pub(crate) instead of pub (#471) 2019-09-21 15:35:03 -07:00
parameter.rs Reform Parser (#509) 2019-11-07 10:55:15 -08:00
parser.rs Refactor Compilation error to contain a Token (#535) 2019-11-13 19:32:50 -08:00
platform_interface.rs Gargantuan refactor (#522) 2019-11-09 21:43:20 -08:00
platform.rs Gargantuan refactor (#522) 2019-11-09 21:43:20 -08:00
position.rs Use pub(crate) instead of pub (#471) 2019-09-21 15:35:03 -07:00
positional.rs Release: v0.5.0 (#530) 2019-11-12 14:11:53 -08:00
range_ext.rs Reform Parser (#509) 2019-11-07 10:55:15 -08:00
recipe_context.rs Add shell setting (#525) 2019-11-10 23:17:47 -08:00
recipe_resolver.rs Remove now-unnecessary borrow checker appeasement (#511) 2019-11-07 11:24:08 -08:00
recipe.rs Add shell setting (#525) 2019-11-10 23:17:47 -08:00
run.rs Gargantuan refactor (#522) 2019-11-09 21:43:20 -08:00
runtime_error.rs Refactor Compilation error to contain a Token (#535) 2019-11-13 19:32:50 -08:00
search_config.rs Gargantuan refactor (#522) 2019-11-09 21:43:20 -08:00
search_error.rs Avoid fs::canonicalize (#539) 2019-11-19 03:51:44 -08:00
search.rs Avoid fs::canonicalize (#539) 2019-11-19 03:51:44 -08:00
set.rs Add shell setting (#525) 2019-11-10 23:17:47 -08:00
setting.rs Add shell setting (#525) 2019-11-10 23:17:47 -08:00
settings.rs Add shell setting (#525) 2019-11-10 23:17:47 -08:00
shebang.rs Reform Parser (#509) 2019-11-07 10:55:15 -08:00
show_whitespace.rs Remove misc.rs (#491) 2019-10-09 01:40:40 -07:00
state.rs Refactor Compilation error to contain a Token (#535) 2019-11-13 19:32:50 -08:00
string_literal.rs Reform Parser (#509) 2019-11-07 10:55:15 -08:00
subcommand.rs Reform positional argument parsing (#523) 2019-11-10 18:02:36 -08:00
summary.rs Reform Parser (#509) 2019-11-07 10:55:15 -08:00
table.rs Reform Parser (#509) 2019-11-07 10:55:15 -08:00
testing.rs Refactor Compilation error to contain a Token (#535) 2019-11-13 19:32:50 -08:00
token_kind.rs Refactor Compilation error to contain a Token (#535) 2019-11-13 19:32:50 -08:00
token.rs Refactor Compilation error to contain a Token (#535) 2019-11-13 19:32:50 -08:00
tree.rs Reform Parser (#509) 2019-11-07 10:55:15 -08:00
use_color.rs Gargantuan refactor (#522) 2019-11-09 21:43:20 -08:00
variables.rs Reform Parser (#509) 2019-11-07 10:55:15 -08:00
verbosity.rs Gargantuan refactor (#522) 2019-11-09 21:43:20 -08:00
warning.rs Refactor Compilation error to contain a Token (#535) 2019-11-13 19:32:50 -08:00