Skip to content

[Contribution Series] dev-setup → progress → perf → regex → remap → null-strategy fix #164

Description

@GALHP

Upstreaming work from GALHP/clonio-cli:
a stacked series of five features (please review/merge bottom-up — each PR's
diff shrinks to just its own change once the ones below it land) plus one
independent bugfix.

PRs

Dependency graph

#165 development-setup ──▶ #166 progress ──▶ #167 chunked-insert-perf ──▶ #168 regex ──▶ #169 remap-keys ──▶ #170 fix-null-strategy
   (tooling)              (feature)        (needs #166's stats model)   (feature)     (feature)       (bugfix)

Why the two dev-oriented PRs (#165, #166) exist

  • Docker based Development Setup #165 development-setup — pure local tooling (Docker Compose + make) to
    build/test in a container; also fixes two init IO-error tests that assumed a
    non-root user (chmod is a no-op under the container's root). No runtime
    behavior, entirely optional.
  • Progress and Performance Tracking #166 progress-and-performance-tracking — began as a diagnostic aid: a
    ~25M-row clone ran for hours with no visibility. Per-phase timing + live bars
    made the bottleneck measurable (→ led to Improve Chunked Insert Performance #167), and stands alone as a UX win
    (-v/-vv/-vvv).

Flexible to your process

On request I'll rebase any PR onto main (or any other base/state):

Quality

The full stack passes composer test (Pest unit+feature, PHPStan max, Pint,
Rector); each feature adds tests, and the perf/regex/remap/fix changes were
verified end-to-end against SQLite.

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