Skip to content

Merge @osls/compose in the project#264

Draft
mnapoli wants to merge 8 commits intomainfrom
merge-compose
Draft

Merge @osls/compose in the project#264
mnapoli wants to merge 8 commits intomainfrom
merge-compose

Conversation

@mnapoli
Copy link
Copy Markdown
Contributor

@mnapoli mnapoli commented May 7, 2026

Merge https://github.com/oss-serverless/compose in the main project to avoid maintaining 2 codebases.

The functionality should be unchanged for users.

mnapoli and others added 8 commits May 7, 2026 11:09
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Replace cli-cursor with a tiny ANSI-escape helper, reuse the existing
lib/cli/parse-args for argv parsing, and replace traverse with a small
leaf walker. Removes 71 transitive packages.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Delete lib/compose/utils/serverless-utils/, which was a copy of the
parent project's lib/utils/serverless-utils/ carried over from the old
standalone @osls/compose project. Route compose's logging init through
the parent's existing log-reporters/node module (same pattern as
scripts/serverless.js). Drop uni-global, only used by the duplicate.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Delete lib/compose/utils/fs/, which duplicated the parent project's
lib/utils/fs/ helpers (fileExists, readFile, writeFile, parseFile,
isJsonPath/isYamlPath). The compose-only extras (slsignore parsing,
optional YAML options, extra prototype-pollution guards) were not
exercised by any compose source path — only by the duplicate's own
tests. Re-route the three real callers (configuration/resolve-path,
ComponentsService, state/LocalStateStorage) to the parent helpers.
Delete lib/compose/serverless-error.js — its only behavioral
difference vs the parent's lib/serverless-error.js was an unused
"previous" arg that appended a wrapped error's stack. No compose
caller passed a 3rd arg, so the feature was dead. Re-route all 15
source requires and 1 test require to the parent class.
Delete 9 lib/compose/utils/ files that duplicated lib/utils/ helpers
(6 byte-identical, 3 functionally equivalent: validate-stage,
tokenize-exception, sleep). Reroute the few compose source consumers
of colors, spawn, validate-stage, tokenize-exception, and sleep to
the parent's modules. Also drop the 6 corresponding compose tests
since the parent already covers each utility.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant