Build Orchestration Improvements #76
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
name: Pull Request
about: Submit changes to the RTMS SDK
Description
This PR introduces a major refactoring of the build system, replacing the custom Node.js-based CLI with Task (go-task) for streamlined development workflows. The changes significantly improve contributor experience with clearer commands, better error messages, and more reliable cross-platform builds.
Key Changes:
Build System Modernization:
scripts/rtms.jsCLI with Task (go-task) for unified build orchestrationTaskfile.ymlwith 40+ development tasksdoctor.js,install.js,prebuild.js,publish.jscheck-deps.jswith better error messages and dependency validationDocumentation Improvements:
Docker & CI/CD Enhancements:
patchelfto Dockerfile for Python wheel repairCore Improvements:
Dependency Updates:
Bug Fixes:
Related Issues
Fixes #75
Closes #72
Type of Change
Affected Components
Testing Performed
Build System Testing:
task --list,task doctor,task setuptask build:js(local) andtask build:js:linux(Docker)task build:py(local) andtask build:py:linux(Docker)task prebuild:jstask test:jsandtask test:pyDocker & CI/CD Testing:
build,test-js,test-pyDocumentation Testing:
Cross-Platform Testing:
Dependency Updates:
Checklist
Additional Context
Why Task (go-task)?
The previous build system used a custom Node.js CLI (
scripts/rtms.js) which, while functional, had several limitations:Task provides:
Migration Path for Contributors
Old workflow:
npm run build:js npm run build:py npm run testNew workflow:
End users installing via npm or pip are not affected - the
npm installhook still works automatically.Stats
Commits Included
40564ee- refactored build system using go-task0185b89- improved build for contributors0674560- Python release 0.0.2cd97b02- Fixes [BUG] userId returns -1 in onAudioData metadata after upgrading to v0.0.4 #75404dcec- Closes [FEAT] Allow rtms.onWebhookEvent to share its HTTP server/port with additional routes #726a71821- added patchelf to Dockerfile27ccae6- expose port 8080 for docker