Comments (5)
I had no knowledge of object property mangling switching the order of properties around! I rely on it being stable every day.
You're 100% right, sorry @fabiosantoscode I was looking at two totally different, similarly shaped objects 🤦
There is an issue, but it is not this. Note to self: no more debugging at 1AM
Thanks for the quick response! Closing now.
from terser.
I can see from lib/propmangle.js that maps and sets are used (which I can understand), but it's not immediately obvious to me why order is preserved when mangle.properties.debug = true
🤔
I haven't looked closely enough tonight, but I'll have another peek tomorrow.
from terser.
TIL both Map
and Set
also preserve insertion order since ES6. Now I'm doubly confused 😆
from terser.
I had no knowledge of object property mangling switching the order of properties around! I rely on it being stable every day.
from terser.
Could you post a reproduction of this issue? A quick test didn't reveal the issue.
This code:
export default { cc: 3, aa: 4, bb: 5, }
Mangles, using mangle: { properties: { keep_quoted: 'strict' } }
, to
export default{t:3,l:4,o:5};
from terser.
Related Issues (20)
- Remove exception value in `try..catch`, if it's not used HOT 2
- SyntaxError: Duplicate parameter 'e' not allowed in function with default parameter values HOT 1
- using a variable in a default parameter expression that is shadowed in that function's body causes a reference error HOT 2
- The application appears blank when using Terser 5.29.0 HOT 1
- Avoid unnecessary escape sequences inside string literals
- No space between hexadecimal literal and identifier
- Do not inline IIFEs inside computed keys in classes that contain private fields HOT 5
- console.log.bind(console) removed HOT 1
- Missing parentheses around private name in inverted "in" operator HOT 2
- Use without NPM HOT 1
- Private fields, `in` and precedence (?) HOT 1
- Never use unsafe_methods
- renames arrow function declaration despite `keep_fnames: true` HOT 2
- [Feature request] ability to declare a static block as pure
- When the compression is enabled, used variables are dropped. HOT 3
- [Feature request] nameCache and __MANGLE_PROP__ overlap HOT 5
- preserve_annotations changes position of `/* #__PURE__ */` comments in function calls HOT 1
- Support new import attributes "with" syntax. HOT 5
- Babel transpiled ES6 class is not working after mangling with terser HOT 1
- reserved is not a supported option HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from terser.