[Bug]: Babel does not transpile Unicode identifier names for early engine targets
- Dominant language
- TypeScript
- Stars
- 44k
- Forks
- 6k
- Avg merge
- 5d 15h
- Merged PRs (30d)
- 23
Description
### 💻
- [ ] Would you like to work on a fix?
### How are you using Babel?
@babel/cli
### Input code
```js
let ℮;
```
Here is the [REPL](https://babel.dev/repl#?browsers=defaults%2C%20not%20ie%2011%2C%20not%20ie_mob%2011&build=&builtIns=false&corejs=false&spec=true&loose=true&code_lz=DYUwLgBIdIQNxA&debug=false&forceAllTransforms=true&shippedProposals=true&circleciRepo=&evaluate=true&fileSize=true&timeTravel=false&sourceType=unambiguous&lineWrap=false&presets=env&prettier=false&targets=Node-10.13&version=7.18.12&externalPlugins=&assumptions=%7B%7D)
### Configuration file name
babel.config.json
### Configuration
```json
{
"sourceType": "unambiguous",
"presets": ["@babel/preset-env"],
"plugins": [
"@babel/plugin-transform-runtime"
]
}
```
### Current and expected behavior
'Unicode 8' is only available in ES6, but babel doesn't transpile unicode 8.
### Environment
- babel
- - ├── @babel/cli@7.18.12
- - ├── @babel/plugin-transform-runtime@7.18.12
- - ├── @babel/preset-env@7.18.12
- Node: [v17.3.0]
- npm version [8.5.2]
- os [ubuntu 20.04]
### Possible solution
_No response_
### Additional context
_No response_
Contributor guide
Research direction
Start with the provided @babel/cli reproduction using @babel/preset-env, the input `let ℮;`, and the Node 10.13 target. Check how Babel handles Unicode 8 identifiers for early engine targets and compare the generated output with the expected compatible form. Done means the reproduction no longer leaves the Unicode identifier untranspiled.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- compilers
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100