
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
es2049scripts
Advanced tools
ECMAScript 2049: ES.Next on every line by triple-transpile by Harald Rudell: ERASE THE PAST
ERASE THE PAST
Instead use Node.js 12+ with either --experimental-modules or package.json type: module
© Harald Rudell created ECMAScript 2049 in December 2017. ISC License
This is the es2049scripts package
Repository links:
ECMAScript 2049 the monolithic repository
es2049package compile libraries and command-line utilities configuration-free with RollupJS
allspawn async spawn utility
ECMAScript 2049 provides instant on-the-fly transpilation of ES.Next ECMAScript to a runnable format
ECMAScript 2049 transpilation is so fast that a users are not aware of it taking place
ECMAScript 2049 thereby offers use of ES.Next everywhere:
Production use of ECMAScript language features prior to standardization
Use of ECMAScript language features prior to their runtime implementation
As of December 31, 2017, offering ECMAScript 2018 with all BabelJS 6 Stage 0 experimental plugins runnable on Node.js v6 LTS
es2049scripts package allows for build scripts to be written in ES.Next, solving an issue of the last four years:
Running the unrunnable ES.Next chicken-and-egg problem
ECMAScript 2049 aligns with Agile Method to produce the best possible design at that point in time
ECMAScript 2049 keeps developers and engineers happy and programming ECMAScript fun
ECMAScript 2049 offers venture capital investment opportunities in new technology, as opposed to building companies on technology that is old and obsolete
es2049scripts package offering initial instant on-the-fly transpile for package.json scripts
es2049package package allows for configuration-free implementation of libraries and command-line utilities
Runtime environments target:
Default: Node.js 6.10 LTS maintenance, the version currently used by many deployment environments as of December 31, 2017
Active: Node.js 8.9 LTS Active
Current: Node.js v8.6+ executable using CommonJS module format
Latest: Node.js v8.6+ using native experimental modules with extension .mjs
Rollup: Pre-transpilation of RollupJS configuration data so that it, too, can be written is ES.Next
Typical use is to have a configes direcory of ES.Next code that is on-the-fly transpiled into the config directory by the scripts entry of package.json
Note: yarn is expected to be installed on the host
Add es2049scripts to your project:
yarn add es2049scripts --dev
Add es2049scripts to a scripts entry in package.json:
"scripts": {
"start": "es2049scripts -- node config",
…
Write some ES.Next code in configes/index.mjs:
console.log('The next ReactJS version:')
f()
async function f () {
for await (let v of [Promise.resolve(17)])
console.log(v)
}
Run!
yarn start
yarn run v1.3.2
$ es2049scripts -- node config
The next ReactJS version:
17
Done in 0.73s.
A package.json using es2049scripts can be found here
es2049scripts transpiles .js and .mjs to .js or .mjs with target options ‑current ‑active ‑latest ‑rollup.
For more information, use:
yarn es2049scripts ‑help
es2049scripts [options] source-directory target-directory args…
version: 0.0.11
Transpiles from ES.Next to Node.js executable format
Default target is Node.js 6.12.3 maintenance Long Term Support
Transpiles .js and .mjs (may be renamed to .js), other files are copied
Actions may be skipped based on modification date
-active Target latest Node.js LTS: 8.9.4
-current Target the executing Node.js version, must be v8.6+, CommonJS modules
-latest Target the executing Node.js version --experimental-modules v8.6+
Extension .mjs is kept on output
-rollup Target transpile of rollup.config.js: for buble with import
-- Skip options parsing to args parameter
source-directory default: ./configes
target-directory default: ./config
args… Any command with arguments to be launched on transpile complete
Note om Rollup: rollup reading of configuration files does not support generators, therefore not async or dynamic imports. This means one cannot include ECMAScript containing generators for parsing, even if those are not used.
The ZeroTranspiler class is written in ES.Next and is only used by es2049scripts developers. The yarn transpilezero command uses the babel-cli package to transpile to Node 6 ECMAScript . The output, config/transpilezero.js is checked in.
As soon as the zero transpiler has been compiled, it is used to transpile ES.Next code in configes and configrollup using the proper babel environment, this result is also checked in. At this point, the es2049scripts project can be built.
The project is built in the usual way using the transpiled code in config
The consuming project invokes the es2049scripts executable that is built from the ES.Next code in src. The transpilation, typically into the consuming project’s config directory, uses modification dates to reduce work.
To develop or compile the ECMAScript 2049 project Yarn 1+ and Node.js current (v8.5+) are required.
yarn test tests that the built executable is runnable:
yarn build
…
src/index.mjs → bin/es2049scripts...
created bin/es2049scripts in 1.6s
Done in 2.94s.
yarn test
…
Ran all test suites.
Done in 1.91s.
yarn testmjs tests that experimental module support appears to be working.
yarn testProject executes tests in the es2049scripts-test project:
yarn testProject
…
yarn install
…
yarn test
…
This file was transpiled with RollupJS and executed successfully.
…
yarn start
$ es2049scripts -- node config
The next ReactJS version:
17
ScriptsTester.test: code transpiled by es2049scripts executed successfully.
Done in 14.72s.
© Harald Rudell created ECMAScript 2049 in December 2017. ISC License
FAQs
ECMAScript 2049: ES.Next on every line by triple-transpile by Harald Rudell: ERASE THE PAST
The npm package es2049scripts receives a total of 14 weekly downloads. As such, es2049scripts popularity was classified as not popular.
We found that es2049scripts demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.