[2d] Delete legacy arfset.api.js and asm.js build targets (major version breaking change)
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 42/100
- Issue type
- Refactor
- Clarity
- Mostly clear
- Activity status
- Quiet
- Tech stack
- javascript, wasm, webpack
- Domain
- build-system, web-dev
Research direction
Start by reading tools/makem.js around the compile_combine jobs and PRE_FLAGS, then compare example/example.html with the existing example_es6.html. Check issue 1b before removing jslibrary.js, and verify the remaining webpack UMD bundle still exposes window.ARFset. Done means the asm.js files and targets are gone, documentation and the major version are updated, and the ES6 example works.
Written by the indexing model from the issue text.
Description
Summary
Delete legacy js/arfset.api.js global-API file and drop asm.js build targets (major-version breaking change)
Environment
- Product/Service: FeatureSET-Display — JavaScript API & build system
- Files:
js/arfset.api.js,js/jslibrary.js,tools/makem.js,example/example.html,build/arfset.min.js,build/arfset.debug.js
Problem Description
js/arfset.api.js is a legacy global-ARfset API tightly coupled to the asm.js outputs. It is injected via --pre-js into arfset.debug.js and arfset.min.js only (tools/makem.js:176). The wasm and ES6-wasm builds never include it. Modern browsers have full wasm support, making both the legacy API and the asm.js targets unnecessary. Only example/example.html currently consumes it; a working example_es6.html already exists as a drop-in replacement.
Expected Behavior
js/arfset.api.jsis deleted.js/jslibrary.jsis deleted (once issue 1b removeswriteFP/writeFS).compile_combineandcompile_combine_minjobs removed fromtools/makem.js, along withPRE_FLAGS.example/example.htmlmigrated to the ES6 build (or replaced byexample_es6.html).build/arfset.min.jsandbuild/arfset.debug.jsdeleted; no longer generated.- Legacy
window.ARFsetglobal still accessible via the existing webpack UMD bundle (dist/ARFset.js). - README documents the removal; version bumped to a new major version.
Actual Behavior
Legacy asm.js build targets and the arfset.api.js file are still generated and maintained, adding build complexity and a maintenance surface for outdated code.
Tasks
- Delete
js/arfset.api.js - Delete
js/jslibrary.jsonce issue 1b lands (removeswriteFP/writeFS;--js-libraryflag goes away) - Remove
compile_combineandcompile_combine_minjobs fromtools/makem.js, plus thePRE_FLAGSblock - Migrate
example/example.htmlto the ES6 build (or replace withexample_es6.html) - Delete
build/arfset.min.jsandbuild/arfset.debug.js; stop generating them - Verify
window.ARFsetglobal is still exposed via the webpack UMD bundle (dist/ARFset.js) - Note the removal in the README and bump to a new major version
Impact
High — Breaking change for anyone loading arfset.min.js or arfset.debug.js directly. Requires a major version bump. Simplifies the build significantly and removes dead code.
Additional Context
Dependencies: Issue 1b must land first to safely delete js/jslibrary.js. This issue can be split: delete arfset.api.js + drop asm.js targets first, then delete jslibrary.js in a follow-up after 1b.
The webpack UMD bundle (dist/ARFset.js) already exposes window.ARFset, so no separate legacy entry point is needed to maintain backward compatibility for UMD consumers.
- Dominant language
- JavaScript
- Stars
- 8
- Forks
- 2
- PR merge metrics
- No merged PRs in 30d
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from webarkit/FeatureSET-Display
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 58/100
All issues in webarkit/FeatureSET-Display
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
docToolchain/docToolchain#1705 ·
-
Timezone select lists one option per character; duplicate "Failed" reason; shared tracker popover id Openbug
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
nightscout/nocturne#1414 ·
-
bug v2
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
modelcontextprotocol/inspector#2458 · 1 comment ·
-
Mend: dependency security vulnerability status: needs triage 🕵️♀️
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
carbon-design-system/ibm-products#9907 ·