Skip to content

Define and deliver cross-platform base-cli support for Linux, WSL2, and native Windows #35

Description

@codeforester

Goal

Define and implement a supportable cross-platform contract for the generic base-cli framework.

Supported targets

  • Linux distribution-neutral behavior, validated on representative Debian/Ubuntu and Fedora/RHEL-family environments.
  • WSL2 when base-cli runs inside the Linux distribution.
  • Native Windows 10/11 support for the generic Python CLI core, including Click invocation, runtime state, logging, history, and test helpers.

Explicit non-goals

  • Making Base/basectl natively Windows-compatible in this train.
  • Package-manager integration (apt, dnf, Homebrew, winget, Chocolatey).
  • Translating paths between WSL and Windows or guaranteeing behavior on Windows-mounted WSL paths.
  • Requiring Bash, PowerShell, or a specific shell for the generic library.

Acceptance criteria

  • The platform support tiers and boundaries are documented.
  • POSIX and Windows path, cache, permission, locking, terminal, and test-isolation semantics are explicit.
  • Representative Linux, WSL2, and Windows validation paths exist.
  • Existing macOS and Linux behavior remains covered.
  • The work lands as issue-backed PRs with the child implementation issues linked here.

Proposed train

  1. Platform-aware paths and home/path normalization.
  2. Portable private-file permissions and history locking.
  3. Native Windows test-helper and terminal behavior.
  4. Linux distribution and WSL2 validation.
  5. Support documentation and release-readiness updates.

Base-specific native Windows support remains a separate effort.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

enhancementNew feature or product improvement

Type

No type

Projects

  • Status
    Done

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions