Skip to content

Some core::version constants contain "VERGEN_IDEMPOTENT_OUTPUT" instead of something useful. #1572

@kingosticks

Description

@kingosticks

Description

When using librespot as a library, some core::version variables return "VERGEN_IDEMPOTENT_OUTPUT" instead of correct/useful values.

Version

All versions of librespot. This issue is due to a dependency.

How to reproduce

  1. cargo init librespot-version
  2. cd librespot-version
  3. cargo add librespot
  4. Edit src/main.rs as follows:
use librespot_core::version;
fn main() {
    println!("version::VERSION_STRING {}", version::VERSION_STRING);
    println!("version::BUILD_DATE {}", version::BUILD_DATE);
    println!("version::SHA_SHORT {}", version::SHA_SHORT);
    println!("version::COMMIT_DATE {}", version::COMMIT_DATE);
    println!("version::SEMVER {}", version::SEMVER);
    println!("version::BUILD_ID {}", version::BUILD_ID);
}
  1. cargo run

Log

version::VERSION_STRING librespot-VERGEN_IDEMPOTENT_OUTPUT
version::BUILD_DATE 2025-09-05
version::SHA_SHORT VERGEN_IDEMPOTENT_OUTPUT
version::COMMIT_DATE VERGEN_IDEMPOTENT_OUTPUT
version::SEMVER 0.7.1
version::BUILD_ID 2dJHc34q

Host (what you are running librespot on):

  • OS: Linux
  • Platform: x86

Additional context

This is a known limitation of vergen, see rustyhorde/vergen#216. I think VERSION_STRING in particular is an issue for us, that one should be more sensible.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions