Skip to content

Conversation

CertainLach
Copy link
Member

@CertainLach CertainLach commented Sep 30, 2025

Не мержить - напоминаю что master теперь обновляем через fast-forward

Гитхаб в своём UI такое не умеет, а потому только через консоль

Когда CI пройдёт и всё хорошо - кто-то с правом обновления мастера (Например я) сделает

git switch master
git merge --ff-only release-v25030084
git push origin HEAD

Либо

# master уже должен быть отслеживаемой веткой: jj bookmark track master@origin
jj bookmark set master -r release-v25030084
jj git push

cd unique-chain && git switch "${CODE_HASH}" --detach && cargo update && \
CARGO_INCREMENTAL=0 cargo build --release --features="${FEATURES}" --locked && \
cd unique-chain && git switch "${CODE_HASH}" --detach && \
CARGO_INCREMENTAL=0 cargo build --release --features="${FEATURES}" --offline && \
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Offline предполагает что все пакеты уже скачаны и находятся в кеше, нам это не подходит
И даже если бы подходило, --locked нам всё ещё надо

Copy link
Contributor

@mrshiposha mrshiposha Oct 10, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Обсуждали на мите. Сделаем сначала cargo fetch, а потом билд с --frozen

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Если коротко, то зачем?)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Особенно если cargo fetch не передавать --locked

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

С --locked для fetch.

Если коротко, то зачем?)

Ну, мы же хотим предыдущий релиз таким, каким он был когда был актуален, без изменений. И с той же версией компилятора. А некоторые из внутренних зависимостей используют ещё более глубокие зависимость, разрешая minor update'ы при resolution'е.

Парочка таких глубоких зависимостей хочет edition2024, на которое ругается старый компилятор для старого релиза.
Чтобы не изменять релиз и собрать как есть, кажется, что стоит взять зависимости как есть в Cargo.lock и собрать --frozen

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

--frozen емнип вовсе не то что мы хотим, но я забыл где для него нормальное описание есть

Короче с frozen не будут проверяться гит зависимости несколько я помню

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Не помню где это всё было написано, но помню что из-за frozen в nixpkgs для buildCargoPackage сделаны гитовые костыли

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Кмк тут изначально оно было правильно сделано просто с cargo build --locked, и я не понимаю чего вы хотите добиться с другими флагами/дёрганьем cargo fetch, и прочим)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Он дополнительно ругается, что Cargo.lock хочется обновить и отказывается собирать.

Так нам это и надо, мы не хотим чтобы оно в CI пыталось резолюцию провести

Когда оно ругается надо чтобы кто-то явно обновил локфайл и закоммитил его

Copy link
Member Author

@CertainLach CertainLach Oct 10, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Для воспроизводимости

Ну, мы же хотим предыдущий релиз таким, каким он был когда был актуален, без изменений. И с той же версией компилятора. А некоторые из внутренних зависимостей используют ещё более глубокие зависимость, разрешая minor update'ы при resolution'е.

Локфайл в репе должен работать без необходимости что-то при сборке резолвить

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants