Comments (18)
I think you should use Lo-Dash, but the package contains everything Lo-Dash needs to be customizable. There is no excess or room to make cuts. Worse case you can include a static file instead of a managed npm dependency. Either way the package size isn't really important as it's not being pushed down the pipe to the client side or smth ;D
from lodash.
is there a reason you went with closure compiler over uglify, which can be managed with npm? It's the main thing adding size to the project.
from lodash.
is there a reason you went with closure compiler over uglify, which can be managed with npm? It's the main thing adding size to the project.
Yep, Closure compiler has consistently produced smaller file sizes. I use a mixed minification approach where I do a pass with Uglify, then one with Closure Compiler, then a hybrid of Closure Compiler+Uglify (usually the smallest result). I don't rely on NPM dependencies because I want Lo-Dash to work out-of-the-box from a GitHub repo, NPM, JamJS or wherever. Why is file size really an issue?
from lodash.
just want to keep out any extra size I can. while it may not be a big deal, its still makes the project directory bigger / takes a bit longer to install and most IDEs will index those extra files in the node_modules, specially if they are vendor JS files.
from lodash.
If file size is a blocker, then just include the single lodash.min.js
file.
from lodash.
i may look into it. we only use underscore package for the pre-compiled template source ATM as underscore of grunt v0.3.x is outdated.
from lodash.
Cool. You could create a custom build lodash include=template
to create a minified version with just the _.template
function. Also, as a bonus Lo-Dash's compiled templates generate less code and work with simple string coercion in most environments as well as the .source
property.
from lodash.
ah wasn't sure if that would work. was just looking at that section. i've just started really using lodash as you seem to have a higher priority for fixing bugs and making them perform even better.
from lodash.
hum getting a warning about nativeKeys missing when using that build command in node.
EDIT: using the source code (included via require in node) that your build command produced.
from lodash.
hum getting a warning about nativeKeys missing when using that build command in node.
Which version of Lo-Dash are you using?
I bumped v0.5.2 and fixed some build bugs with it.
I just tested that exact build configuration last night ;D
from lodash.
v0.5.2
Build Command: lodash include=template
Build Output: https://gist.github.com/3426664
from lodash.
I see you are using the debug build which may help with builds options like mobile
, underscore
, backbone
. You should be using the generated lodash.custom.min.js
, which has unused vars removed. I'll document that better.
from lodash.
ok but what if I want to be able to keep track of changes say, I rebuild to new lodash in future, i want my git history to show all changes in a readable way?
from lodash.
guess its not a big deal, just a thought. thanks for the help.
from lodash.
In the commit you could link to the Changelog: https://github.com/bestiejs/lodash/wiki/Changelog
from lodash.
@ctalkington I tweaked build.js
to allow using the debug build in more build configs. You can update by npm uninstall
and npm install
ing Lo-Dash.
from lodash.
@jdalton nice. thanks for taking the time!
from lodash.
This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.
from lodash.
Related Issues (20)
- _.isEqual() returns false when array elements order is changed HOT 6
- Merge mutates source object if nested property is a class instance
- Future compatibility with Node.js/npm HOT 1
- Allow Default Value for toNumber("problem", 0) HOT 8
- isBuffer from lodash-es doesn't work HOT 1
- curryRight is broken in list.map context HOT 1
- Avoiding Lodash version disclosure HOT 1
- multiple vulnerabilities that exist in lodash.findlast HOT 4
- Attempt structuredClone in cloneDeep before doing manual clone HOT 4
- _.trimStart not work with "/" char
- _.kebabCase and _.camelCase treat some digits as delimiters but not others HOT 1
- async attempt
- lodash-es outdated HOT 1
- feature request: Safe maths functions HOT 6
- Alias `_.tail` to `_.last` HOT 2
- _.deburr() - ț not convert to t HOT 3
- Typescript error HOT 7
- Discussion on Performance Issues of `trimStart` and `trimEnd`(关于 `trimStart` 和 `trimEnd` 性能问题的讨论) HOT 3
- array _.difference bug HOT 1
- CVE-2021-23337 lodash versions prior to 4.17.21 are vulnerable to Command Injection via the template function. HOT 4
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 lodash.