Commit Graph
53 Commits
Author SHA1 Message Date
Jordan Eldredge a6408a4877 Get Jest tests passing 2024-03-01 15:30:09 -08:00
Jordan Eldredge 6a71878a98 First attempt at adopting Parcel (#1186)
* Upgrade sharp

* First attempt at adopting Parcel

* Get multiple targets working for Parcel

* Use lts node for Netlify deploy

* Update deploy script to reflect new demo site dir

* Inline css into library bundles

* More updates

* Remove uri optimization

* Upgrade parcel

* Fix butterchurn logo import for Parcel

* Add browser build

* List browser build

* Prefer jest-swc to babel

* Preserve old build artifact location

* Ignore dist

* Minify library bundles

* Switch to postcss to use uri optimization plugin

* Serve from the correct location

* Clarifying comments

* Ignore bundle reports in git

* Refine Parcel builds

* Try to be more explicit with port

* Use relative path to create build dir

* Try to force supporting chrome 76

* Update the location of the test skin in integration test to work with Parcel
2023-01-20 11:15:39 -08:00
Jordan Eldredge 1a5ebb7a2f Spelling 2022-12-31 15:26:36 -08:00
Jordan Eldredge 50fde5c4d3 Test server, including GraphQL endpoint 2022-03-09 21:40:01 -08:00
Jordan Eldredge 63bdd3efa6 Disable DB tests 2022-03-06 23:32:15 -08:00
Jordan Eldredge 1880070205 Unify tests into the top level workspace 2022-03-06 22:41:18 -08:00
Jordan Eldredge 975d712662 Start adopting Yarn workspaces (#985)
* Start adopting Yarn workspaces

My plan is to move the existing package into a workspace and then split
out the things that really ought to be their own packages. For example,
the demo site and the experiments really ought to be separate.

Fix lint command

* Use workspaces in CI

* Fix deploy for monorepo
2020-05-17 22:12:17 -07:00
Jordan Eldredge 1e0a9114dd Upgrade ts (#952)
* Upgrade Typescript

* Upgrade prettier

* Upgrade eslint-typescript

* Don't abide extra else

* Remove eslint plugin that we don't use any more

* Remove unused Webpack plugin

* Remove eslint rule that we don't really need

* Remove unused Jest plugin

* Remove redundant package

* Prettier fixes
2019-11-30 13:42:53 -08:00
Jordan Eldredge 79ac60f1f1 Modern integration (#833)
* Make modern part of the code base

`yarn modern` will now start a dev server with the modern app running.

The debugger is not yet setup

`yarn test` will run all the tests, both Webamp and "modern".

* Let debug work

* Prettier

* Ignore lint errors for now

* Point test at the now skin location
2019-11-30 13:42:53 -08:00
Jordan Eldredge fb14ae9a00 Run prettier 2019-11-30 13:42:53 -08:00
Jordan Eldredge 4ed35772e1 Ignore experiment tests
These get tested locally.
2019-11-30 13:42:53 -08:00
Jordan Eldredge bd5fa82c99 Trailing commas! 2019-03-19 06:55:24 -07:00
Jordan Eldredge c6a70451c9 Start linting .ts and .tsx files
Also: Don't have Jest do linting. This was not really providing any value
2019-03-19 06:55:23 -07:00
Jordan Eldredge 2c38644428 Output source map for library build 2019-03-16 21:51:12 -07:00
Jordan Eldredge b351a29e5b Clean up library webpack config 2019-03-13 22:04:59 -07:00
Jordan Eldredge 2bcd69762d Minify css using postcss (#732)
* Minify css using postcss

* Optimize data uris as build time
2019-03-02 19:52:19 -08:00
Jordan Eldredge c93db7ca71 Move demo site into its own directory 2018-12-29 16:06:51 -08:00
Jordan Eldredge 5dae470e84 We don't use jsmediatags any more 2018-11-19 20:10:03 -08:00
Jordan Eldredge aaf78f558b Use Webpack's default minifier 2018-11-19 20:08:20 -08:00
Jordan Eldredge ab4774969e Drop production define
This is defualt in webpack 4
2018-11-19 19:53:16 -08:00
Jordan Eldredge 629b63b40c Upgrade webpack 2018-11-19 19:45:40 -08:00
Jordan Eldredge 19db61ccf9 Type WebampLazy (#702) 2018-11-11 21:14:40 -08:00
Borewit cde0b4eb74 #673 Integration with limited to jsmediatags function replacement. 2018-10-18 22:19:41 -07:00
Jordan Eldredge 031c9733f1 Use dynamic imports instead of require.ensure
I left out jsmediatags so as not to conflict with #679
2018-10-17 21:08:47 -07:00
Jordan Eldredge bc7766efe1 Teach ESLint and Jest about .tsx 2018-09-17 17:04:05 -07:00
Jordan Eldredge a3dd307e61 Allow the library webpack build to see .tsx files 2018-09-17 17:04:05 -07:00
Jordan Eldredge 54a894da54 Allow webpack to see .tsx files 2018-09-17 17:04:05 -07:00
Jordan Eldredge 30ca4af6d8 Allow library build to work with Typescript 2018-09-17 17:04:05 -07:00
Jordan Eldredge 1af57575d3 Allow Jest to process .ts files 2018-09-17 17:04:05 -07:00
Jordan Eldredge a276ffb518 Convert first files to TypeScript 2018-09-17 17:04:05 -07:00
Jordan Eldredge 1bdb7d6345 Inject lazy dependencies (#639)
Still TODO Find a nice way to expose WebampLazy as:

```JavaScript
import WebampLazy from 'webamp/lazy';
```
2018-09-02 09:01:51 -07:00
Jordan Eldredge baca3d650b Upgrade all the Babel (#648)
* Upgrade all the Babel

* Generate reports when we deploy

* Remove extra export
2018-08-30 06:24:19 -07:00
Jordan Eldredge c0e72ab31a Generate reports when we deploy 2018-08-29 20:36:41 -07:00
Jordan Eldredge d17574607c Add Puppeteer snapshot testing 2018-06-28 22:16:37 -07:00
Borewit aae9865786 Add webpack script/config to analyze bundle size.
Execute `npm run analyze` to open a size map of the production build in the browser.
2018-06-25 09:55:37 -07:00
Jordan Eldredge 37db20f50f Don't polyfill buffer (save 22k!) 2018-06-22 00:33:25 -07:00
Jordan Eldredge db1994ce9f Reduce the number of assets cached in the service worker 2018-06-10 09:24:53 -07:00
Jordan Eldredge b2c227b4b8 Split out jest projects 2018-05-26 00:02:03 +01:00
Jordan Eldredge 57ab8861d4 Use icons instead of text for "about" 2018-05-15 22:19:37 -07:00
Jordan Eldredge 840bcd05a9 Remove out of date comment
We're no Netlify now, and cache busting is done with etags
2018-05-14 22:39:33 -07:00
Jordan Eldredge 8876e36658 Disable function inlining
Work around for https://github.com/mishoo/UglifyJS2/issues/2842
2018-04-25 09:28:21 -07:00
Jordan Eldredge a81ee297af Switch to uglify-es, save eight kb
The following additional plugins were being used because of our use of
the older version of Uglify:

```
Using plugins:
  check-es2015-constants {"uglify":true}
  transform-es2015-arrow-functions {"uglify":true}
  transform-es2015-block-scoped-functions {"uglify":true}
  transform-es2015-block-scoping {"uglify":true}
  transform-es2015-classes {"uglify":true}
  transform-es2015-computed-properties {"uglify":true}
  transform-es2015-duplicate-keys {"uglify":true}
  transform-es2015-for-of {"uglify":true}
  transform-es2015-literals {"uglify":true}
  transform-es2015-object-super {"uglify":true}
  transform-es2015-parameters {"uglify":true}
  transform-es2015-shorthand-properties {"uglify":true}
  transform-es2015-spread {"uglify":true}
  transform-es2015-sticky-regex {"uglify":true}
  transform-es2015-template-literals {"uglify":true}
  transform-es2015-typeof-symbol {"uglify":true}
  transform-es2015-unicode-regex {"uglify":true}
  transform-regenerator {"uglify":true}
  transform-exponentiation-operator {"uglify":true}
  transform-async-to-generator {"uglify":true}
  syntax-trailing-function-commas {"uglify":true}
```
2018-04-24 07:10:55 -07:00
Jordan Eldredge 6b4859d43b Rename module 2018-04-14 11:44:24 -07:00
Jordan Eldredge d20f1cae42 Start rename transition 2018-04-14 11:44:24 -07:00
Jordan Eldredge 9f5e5aaa71 Report release to Sentry 2018-04-05 22:46:32 -07:00
Jordan Eldredge 8e14485622 Clean up library code 2018-03-25 15:57:00 -07:00
Jordan Eldredge 95cad890e9 Add dummy service-worker.js 2018-03-16 21:55:29 -07:00
Jordan Eldredge aca4529991 Add note about cloudflare caching 2018-03-16 18:07:18 -07:00
Jordan Eldredge e2499c4894 TODO note 2018-03-16 09:31:52 -07:00
Jordan Eldredge 28488d8feb Fix lint errors 2018-03-16 09:31:52 -07:00