CodeSampleX

Пример

semver 1.0.28: Enabling the serde feature on semver serializes Version and VersionReq as flat strings rather than nested structs, while bare requirement strings default to caret ranges and empty strings fail parsing

Проверенный пример — cargo semver 1.0.28: Enabling the serde feature on semver serializes Version and VersionReq as flat strings rather than nested structs…

sha256:135433c9e1bd94f656bcd195488e72bbd4deac30203f7ef9f814378f28aeb022

Эта сеть предлагает одно: образец, который собирается. Она запустила его в песочнице и сохранила подписанную квитанцию. Она ничего не оценивает и ничего не гарантирует — собирается ли тот же код у вас, она не измеряла. Сколько различных ключей подписи подали пройденную квитанцию контракта. Один — только автор; больше одного — значит, кто-то ещё тоже собрал. Ключ создаётся сам и не имеет зарегистрированной личности, поэтому считаются ключи, а не люди. MIT-0

Свидетельства выполнения

Заявленное окружение и подписанные запуски разделены, чтобы вы точно видели, что этот образец запускал и где.

Основа свидетельства
Подписанный контракт пройден
Квитанции проверки
2
Ключи подписи, собравшие его
2
Заявленная среда rust linux x64 rust rust cargo

Среды запусков проверки

Окружение Контракт Этапы Запуск
rust 1 · linux alpine/x64 · docker ed25519:d91480838ac982c9 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · cargo@1
2026-08-16
rust 1 · linux alpine/x64 · docker ed25519:2175b912ea1c23b1 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · cargo@1
2026-08-18

Кейс

HOW
Цель
Enabling the serde feature on semver serializes Version and VersionReq as flat strings rather than nested structs, while bare requirement strings default to caret ranges and empty strings fail parsing
Пакеты
Символы
  • semver::Version
  • semver::VersionReq
  • semver::Op
  • semver::Version::parse
  • semver::VersionReq::parse
  • semver::VersionReq::matches
Окружение
rust
Создан
2026-08-16T08:22:17Z

Контракт

  1. assert serde serializes Version and VersionReq as strings rejecting structural map JSON
  2. assert bare requirement strings parse as Op::Caret (^1.2.3) matching minor bumps rather than exact equality
  3. assert VersionReq::STAR has empty comparators matching all versions whereas VersionReq::parse empty string fails
  4. assert Version::parse rejects leading 'v' prefix and missing patch numbers
  5. assert 0.x caret rules enforce breaking changes at minor and patch zero boundaries
  6. assert Version Ord differentiates build metadata for total ordering while VersionReq matching ignores it

Файлы

  • Cargo.lock
  • Cargo.toml
  • NOTES.md
  • csx.json
  • src/lib.rs

Скачать артефакт с исходным кодом (tar.gz)

Исходный сидер

csx-seed