Update dependencies, build, and testing for Spina.

Review Request #14638 — Created Oct. 16, 2025 and updated

Information

Spina
master

Reviewers

This change accomplishes several tasks towards unifying our JavaScript
build infrastructure:

  • Replace many specific dependencies with new dependencies on our
    metapackages (@beanbag/js-buildkit and
    @beanbag/frontend-buildkit).
  • Update package.json scripts to be more consistent with our other
    packages (build, clean, full-build, lint, and test).
  • Use @babel/register for transpiling during jasmine testing rather
    than ts-node. It seems like the ts-node one was broken on modern
    jasmine and/or node as it was, and using babel instead keeps our
    unit tests running in a much closer mode to how the code is built
    for packaging anyway.
  • Base tsconfig.json on our shared config.
  • Update for eslint 9.
  • Did builds and installed both in isolation as well as in a workspace
    with a bunch of our other JS packages.
  • Ran unit tests.
  • Ran eslint (there are a bunch of existing errors that it's showing).
Summary ID
Update dependencies, build, and testing for Spina.
This change accomplishes several tasks towards unifying our JavaScript build infrastructure: * Replace many specific dependencies with new dependencies on our metapackages (`@beanbag/js-buildkit` and `@beanbag/frontend-buildkit`). * Update package.json scripts to be more consistent with our other packages (`build`, `clean`, `full-build`, `lint`, and `test`). * Use `@babel/register` for transpiling during jasmine testing rather than `ts-node`. It seems like the `ts-node` one was broken on modern jasmine and/or node as it was, and using babel instead keeps our unit tests running in a much closer mode to how the code is built for packaging anyway. * Base tsconfig.json on our shared config. * Update for eslint 9. Testing Done: - Did builds and installed both in isolation as well as in a workspace with a bunch of our other JS packages. - Ran unit tests. - Ran eslint (there are a bunch of existing errors that it's showing).
pqykrxpuxotrkksutylxoxuxrsvnuwnx
david
Review request changed
Change Summary:
  • Improve babel config to share everything for dev and test.
  • Export types as both .d.ts and .d.mts.
  • Fix jasmine helper paths.
Commits:
Summary ID
Update dependencies, build, and testing for Spina.
This change accomplishes several tasks towards unifying our JavaScript build infrastructure: * Replace many specific dependencies with new dependencies on our metapackages (`@beanbag/js-buildkit` and `@beanbag/frontend-buildkit`). * Update package.json scripts to be more consistent with our other packages (`build`, `clean`, `full-build`, `lint`, and `test`). * Use `@babel/register` for transpiling during jasmine testing rather than `ts-node`. It seems like the `ts-node` one was broken on modern jasmine and/or node as it was, and using babel instead keeps our unit tests running in a much closer mode to how the code is built for packaging anyway. * Base tsconfig.json on our shared config. * Update for eslint 9. Testing Done: - Did builds and installed both in isolation as well as in a workspace with a bunch of our other JS packages. - Ran unit tests. - Ran eslint (there are a bunch of existing errors that it's showing).
pqykrxpuxotrkksutylxoxuxrsvnuwnx
Update dependencies, build, and testing for Spina.
This change accomplishes several tasks towards unifying our JavaScript build infrastructure: * Replace many specific dependencies with new dependencies on our metapackages (`@beanbag/js-buildkit` and `@beanbag/frontend-buildkit`). * Update package.json scripts to be more consistent with our other packages (`build`, `clean`, `full-build`, `lint`, and `test`). * Use `@babel/register` for transpiling during jasmine testing rather than `ts-node`. It seems like the `ts-node` one was broken on modern jasmine and/or node as it was, and using babel instead keeps our unit tests running in a much closer mode to how the code is built for packaging anyway. * Base tsconfig.json on our shared config. * Update for eslint 9. Testing Done: - Did builds and installed both in isolation as well as in a workspace with a bunch of our other JS packages. - Ran unit tests. - Ran eslint (there are a bunch of existing errors that it's showing).
pqykrxpuxotrkksutylxoxuxrsvnuwnx

Checks run (2 succeeded)

flake8 passed.
JSHint passed.