все относительные пути считаются в рантайме?
Скорее всего можно через cargo.toml, почитай cargo book
Читал несколько минут, заболела голова, решил попытать удачу и спросить тут)
Попробую посмотреть сам, напишу если найду
Можно чуть конкретнее про задачу? И если возможно, код на playground залить
А ой, перепутал малясь, код не нужен, просто чуть конкретнее задачу
Есть воркспейс, при запуске сервера хотелось бы, чтобы все пути файлов читались от папки воркспейса, а не от папки сервера
Ага, понял, ухожу в ресерч
Продолжаю ресерч тоже)
сходи на 1 уровень выше от папки текущего томла :)
https://github.com/rust-lang/cargo/issues/8410
Тут описано как можно всё организовать
let workspace_dir = std::path::Path::new(env!("CARGO_MANIFEST_DIR")).parent().unwrap(); самый тупой способ
Да, но я уже нашёл в issues похожий случай в котором более подробное решение
Это про зависимости) А я про то, что если я пишу в коде Path::new("./static/client.wasm") то этот путь должен строиться не от папки проекта, а от папки воркспейса, как будто я написал бы Path::new("./../static/client.wasm")
Да, я это понимаю, но я хочу глобально на уровне текущего крейта переопределить root-папку на уровень выше, чтобы Path::new() автоматом брал за основу родительскую папку
Может какую нибудь обёртку тогда вокруг Path сделать? Знаю что тупо, но всё таки должно понимать
Да, это сработает. Вариантов, на самом деле, много, но мне интересно было бы попробовать настроить это на уровне окружения. Просто прикол в том, что IDE это как-то делают, и я очень надеюсь, что toml-конфигурация как-то предоставляет такую возможность. Например, через те же переменные среды
Попробую ещё карго бук полистать, может там есть что то
Cargo Book тоже ответа не дал
Так что остаётся только пилить обёртку для Path::new
Я еще поресёрчу, если что, отпишу)
Давай, а то мне даже самому стало интересно как это решить)
Есть такой вариант) Он работает, но он работает не на уровне настроек крейта) std::env::set_current_dir("../").unwrap();
Что то такое предлагали выше, видимо возможно только императивно определять откуда считать пути
Обсуждают сегодня