aeternity / aepp-calldata-js

Aeternity data serialization library
ISC License
3 stars 4 forks source link

Can't make browser tests since v1.6.0 #281

Open davidyuk opened 3 months ago

davidyuk commented 3 months ago

In that release, private class properties appeared in ChainObjectSerializer https://github.com/aeternity/aepp-calldata-js/compare/v1.5.1...v1.6.0#diff-26a0d7899e9f195048fa46827000173d2cbcf725be72bbd5148db1e2a764c7a4R49

It is not compatible with browserify.

$ make browser-tests
...
> @aeternity/aepp-calldata@1.6.0 browser-test-bundle
> browserify tests/[A-Z]*.js tests/**/*.js > build/js/tests.js

Error: Parsing file /.../aepp-calldata-js/src/ChainObjects/ChainObjectSerializer.js: Unexpected token (49:4)

It looks like, browserify doesn't like new syntaxes in general. https://github.com/browserify/browserify/issues/2029

Private class properties have good support, so I can't find a better solution than replacing browserify with something else. For example webpack (without babel)? But this way we need to set up polifills (stream, process) by ourselves.

dincho commented 2 months ago

Browserify seems dead indeed and I'd like to use something hassleless (similar) which I'm not aware of yet