Skip to content

Design PGXN CLI UX and DevEx #67

@theory

Description

@theory

Enumerate user and developer tasks and design CLI commands to simplify or eliminate those tasks. Modify the CLI sketch as appropriate and turn it into a proper design document. (Publish as an RFC? Or addd ARDs?) Where possible, maintain compatibility with pgxn v1 and trunk.

Incomplete list of potential user tasks to design for:

  • Standard Help, Version, and manual/info commands/options
  • List installed extensions
  • Install trunk binary package
  • Build, package and install source distribution
  • Unininstall a package
  • Download a source distribution
  • Download a trunk binary package
  • Load a CREATE EXTENSION extension into a database
  • Unload a CREATE EXTENSION extension from a database

Incomplete list of potential developer tasks to design for:

  • Create a new extension from templates
  • Increment a version in all relevant files
  • Add a dependency (PGXN, core, or third-party)
  • Build the extension in the current directory
  • Package and install the extension
  • Uninstall the extension
  • Run unit/functional tests
  • Run acceptance/install tests
  • Release source on PGXN
  • Edit metadata (PGXN, pgrx, etc.)

Done when:

  • A complete design has been published, ideally with stubbed documentation, and the community has provided feedback for 3-6 weeks
  • A development plan has been worked out and turned into issues in the 🛠️ CLI Milestone.

Metadata

Metadata

Assignees

No one assigned

    Labels

    clientWork on or for the benefit of a PGXN CLIdesignDesigning the architecture, protocols, tools, and interfaces for PGXN v2documentationImprovements or additions to documentation

    Type

    No type
    No fields configured for issues without a type.

    Projects

    Status
    Ready

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions