Skip to content

[Feature Request] Automated versioning system for Carpe #342

@sasuke0787

Description

@sasuke0787

🚀 Feature Request

Feature Description
Implement an automated versioning system for Carpe to ensure consistent version numbers across all file locations and eliminate manual version updates.

Motivation

Is your feature request related to a problem?

Currently, the version number is manually updated in multiple places (Cargo.toml, package.json, tauri.conf.json), which leads to inconsistencies. For example, the app currently displays version 1.0.5 when it should show a newer version. This manual process is error-prone and often forgotten during the release process.

Proposed Solution

Describe your ideal solution

  1. Create an automated versioning system that:

    • Uses Git tags as the single source of truth for version numbers
    • Updates all required files automatically during the build process
    • Makes version numbers accessible to both Rust and JS code
  2. Implementation options:

    • Enhance build.rs to extract version from Git tags and inject it into the build
    • Create a pre-build script that synchronizes versions across all files
    • Use environment variables during CI/CD to set versions consistently
  3. Key files to update:

    • package.json (root)
    • src-tauri/Cargo.toml
    • src-tauri/tauri.conf.json (and variant files)
    • Any other files that contain version information

Implementation willingness

  • Yes, I can implement this
  • I need help implementing this
  • I'm just suggesting the idea

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions