diff --git a/cli.odin b/cli.odin index ae268d5..75d8163 100644 --- a/cli.odin +++ b/cli.odin @@ -35,21 +35,6 @@ COMMANDS := []CommandInfo{ {"edit-config", "envr edit-config", "Edit your config with your default editor", ""}, } -IMPLEMENTED_COMMANDS := []string{ - "init", - "version", - "deps", - "list", - "backup", - "add", - "remove", - "restore", - "edit-config", - "check", - "scan", - "sync", -} - parse_args :: proc() -> (cmd: Command, ok: bool) { args := os.args if len(args) < 2 { @@ -103,15 +88,6 @@ parse_args :: proc() -> (cmd: Command, ok: bool) { return cmd, true } -is_implemented :: proc(name: string) -> bool { - for c in IMPLEMENTED_COMMANDS { - if c == name { - return true - } - } - return false -} - has_flag :: proc(cmd: ^Command, name: string) -> bool { _, ok := cmd.flags[name] if ok { diff --git a/config.odin b/config.odin index f41668a..50d82a8 100644 --- a/config.odin +++ b/config.odin @@ -113,7 +113,7 @@ new_config :: proc(private_key_paths: []string) -> Config { exclude := make([dynamic]string, 0, 4) append(&exclude, "*\\.envrc") - append(&exclude, "\\.local") + append(&exclude, "\\.local/") append(&exclude, "node_modules") append(&exclude, "vendor") @@ -148,7 +148,7 @@ save_config :: proc(cfg: Config, force: bool = false) -> bool { config_path, _ := filepath.join([]string{config_dir, "config.json"}) - if !force && os.exists(config_path) { + if os.exists(config_path) && !force { info, stat_err := os.stat(config_path, context.allocator) if stat_err == nil { defer os.file_info_delete(info, context.allocator) diff --git a/main.odin b/main.odin index 4818285..5bc5719 100644 --- a/main.odin +++ b/main.odin @@ -3,19 +3,12 @@ package main import "core:fmt" import "core:os" -GO_BINARY :: "./envr-go" - main :: proc() { cmd, ok := parse_args() if !ok { return } - if !is_implemented(cmd.name) { - fallback_to_go() - return - } - switch cmd.name { case "init": cmd_init(&cmd) @@ -46,31 +39,4 @@ main :: proc() { } } -fallback_to_go :: proc() { - args := make([dynamic]string) - append(&args, "./envr-go") - for i in 1..