Skip to content
This repository was archived by the owner on Feb 1, 2026. It is now read-only.
This repository was archived by the owner on Feb 1, 2026. It is now read-only.

Version inconsistency across pyproject.toml, git tags, and documentation #101

@mimosel

Description

@mimosel

Summary

ELF has conflicting version numbers across different sources, making it unclear what version users actually have installed and what features should be available.

Environment

  • ELF Version: v0.6.2 (according to git tags)
  • OS: Windows 11
  • Discovery Date: 2026-01-29

Problem Description

Version Numbers Found

Source Version Location
pyproject.toml 0.5.0 Line 7: version = "0.5.0"
Git tags v0.6.2 git describe --tags
Documentation 0.7.0-Beta docs/mid-stream-semantic-memory.md
GitHub Release v0.6.2 Release page

Evidence

# pyproject.toml shows old version
$ grep "version" pyproject.toml
version = "0.5.0"

# Git tags show different version
$ git describe --tags
v0.6.2

# Documentation references future version
$ grep -r "0.7.0" docs/
docs/mid-stream-semantic-memory.md: "Version 0.7.0-Beta"

Impact

  1. pip install confusion: If installed via pip, version shows as 0.5.0
  2. Feature expectations: Users on "v0.6.2" might expect features documented for "0.7.0-Beta"
  3. Bug reports: "I'm on version X" is meaningless when X differs by source
  4. Dependency resolution: Other packages depending on ELF can't specify correct version ranges

Expected Behavior

All version indicators should be synchronized:

  • pyproject.toml version
  • Git tags
  • Documentation references
  • Release notes

Suggested Fix

  1. Immediate: Update pyproject.toml to match current git tag:

    version = "0.6.2"
  2. Automate: Use setuptools_scm to derive version from git tags (already in build-system requires, but not configured):

    [tool.setuptools_scm]
    write_to = "src/query/_version.py"
  3. Documentation: Remove or update "0.7.0-Beta" references if those features are now in v0.6.2

Additional Context

The pyproject.toml already has setuptools_scm in the build requirements:

[build-system]
requires = ["setuptools>=45", "wheel", "setuptools_scm[toml]>=6.2"]

But it's not being used for version management. This would be the ideal solution as it automatically keeps versions in sync with git tags.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions