Skip to content

Document a minimum supported Git version (blob:limit filter is version-sensitive) #95

Description

@beardthelion

Problem

clone_repo() in crates/gitlawb-node/src/sync.rs runs git clone --mirror --filter=blob:limit=10g in promisor mode. The blob:limit filter syntax is sensitive to the local Git version, and the repo pins no minimum Git version anywhere (README, docs/RUN-A-NODE.md, or CI). CI only ever exercises it against ubuntu-latest's Git, so any version skew is invisible to the test suite.

Surfaced during review of #67: jatmn's Git 2.53 (Windows) rejected the --filter=blob:limit=10g invocation, while ubuntu-latest accepts it. The failure is unrelated to #67's diff, but it exposed a real portability gap.

What to do

  • Determine the actual minimum Git version that supports the --mirror --filter=blob:limit=<size> form we rely on, and confirm the size-suffix (10g) parsing floor.
  • Document that minimum in README / docs/RUN-A-NODE.md as a node runtime requirement.
  • Consider a startup or CI check that verifies the local Git meets the floor, so a too-old (or differently-behaving) Git fails loudly instead of at clone time.

Notes

Metadata

Metadata

Assignees

No one assigned

    Labels

    crate:nodegitlawb-node — the serving node and REST APIkind:docsDocs and comments onlysev:lowCosmetic, cleanup, or nice-to-havesubsystem:replicationMirror, replica, and cross-node sync

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions