Skip to content

chore/deprecate-unused-commands #180

@bwalsh

Description

@bwalsh

Deprecation of Unused Commands

This issue formalizes the decision to remove untested or unused commands and requests maintainers to take action as outlined above.

Context

Several commands in the git-drs tool are either untested, incomplete, or have been made obsolete by native git or Git LFS functionalities. Maintaining these unused commands may cause confusion or redundant code management.

Available Commands

  • help: Help about any command
  • init: Initialize repo for git-drs
  • remote: Manage remote DRS server configs
  • pre-push-prepare: [RUN VIA GIT LFS] Pre-push hook to update DRS objects
  • transfer: [RUN VIA GIT LFS] Register LFS files into gen3 during git push
  • query: Query DRS server by DRS ID
  • version: Get version

Untested, Incomplete:

The following commands are not ready for end user use.

  • add-ref: Add a reference to an existing DRS object via URI
  • add-url: Add a file to the Git DRS repo using an S3 URL
  • transfer-ref: [RUN VIA GIT LFS] Handle transfers of existing DRS object into git during git push

To be deprecated or removed

The following commands are untested, incomplete, or redundant and should be deprecated:

Untested, For Deprecation:

  • create-cache: create a local version of a file manifest containing DRS URIs (left over from Anvil demo)
  • download: Download file using file object ID (duplicate of git lfs pull)
  • fetch: fetch DRS objects from remote (DRS is not a user facing API)
  • list: List DRS entities from server (DRS is not a user facing API)
  • list-config: Display the current configuration (duplicate of git config --list)
  • list-project: List DRS entities from server (DRS is not a user facing API)
  • push: Push local objects to DRS server (duplicate of git push)
  • register: Register all pending DRS objects with indexd (duplicate of git push)

Rationale

  • Many of the above commands duplicate existing git or git-lfs functionality, or were added as demonstrations and are no longer maintained.
  • The DRS interface is not intended to be directly exposed to the user for many of these operations.
  • Removing these commands will improve maintainability and reduce possible confusion.

Requested Action

  • Remove or mark as deprecated the following commands:
    • add-ref, add-url, transfer-ref, create-cache, download, fetch, list, list-config, list-project, push, register
  • Update documentation and help output to reflect removals/deprecations.
  • Clearly communicate changes to downstream consumers.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions