2015 was big year! Lodash became the most depended on npm package, passed 1 billion downloads, & its v3 release saw massive adoption!
The year was also one of collaboration, as discussions began on merging Lodash & Underscore. Much of Lodash v4 is proofing out the ideas from those discussions. Lodash v4 would not be possible without the collaboration & contributions of the Underscore core team. In the spirit of merging our teams have blended with several members contributing to both libraries.
For 2016 & lodash v4.0.0 we wanted to cut loose, push forward, & take things up a notch!
Lodash’s kitchen-sink size will continue to grow as new methods & functionality are added. However, we now offer a 4 kB (gzipped) core build that’s compatible with Backbone v1.2.4 for folks who want Lodash without lugging around the kitchen sink.
More ES6
We’ve continued to embrace ES6 with methods like _.isSymbol, added support for cloning & comparing array buffers, maps, sets, & symbols, converting iterators to arrays, & iterable _(…).
In addition, we’ve published an es-build & pulled babel-plugin-lodash into core to make tree-shaking a breeze.
More Modular
Pop quiz! 📣
What category path does the bindAll method belong to? Is it
A) require('lodash/function/bindAll')
B) require('lodash/utility/bindAll')
C) require('lodash/util/bindAll')
Don’t know? Well, with v4 it doesn’t matter because now module paths are as simple as
var bindAll = require('lodash/bindAll');
We’ve also reduced module complexity making it easier to create smaller bundles. This has helped Lodash adoption with libraries like Async & Redux!
replaced 3.x task system (orchestrator) with new task system (bach)
removed gulp.reset
removed 3 argument syntax for gulp.task
gulp.task should only be used when you will call the task with the CLI
added gulp.series and gulp.parallel methods for composing tasks. Everything must use these now.
added single argument syntax for gulp.task which allows a named function to be used as the name of the task and task function.
added gulp.tree method for retrieving the task tree. Pass { deep: true } for an archy compatible node list.
added gulp.registry for setting custom registries.
CLI changes
split CLI out into a module if you want to save bandwidth/disk space. you can install the gulp CLI using either npm install gulp -g or npm install gulp-cli -g, where gulp-cli is the smaller one (no module code included)
add --tasks-json flag to CLI to dump the whole tree out for other tools to consume
added --verify flag to check the dependencies in package.json against the plugin blacklist.
vinyl/vinyl-fs changes
added gulp.symlink which functions exactly like gulp.dest, but symlinks instead.
added dirMode param to gulp.dest and gulp.symlink which allows better control over the mode of the destination folder that is created.
globs passed to gulp.src will be evaluated in order, which means this is possible gulp.src(['*.js', '!b*.js', 'bad.js']) (exclude every JS file that starts with a b except bad.js)
performance for gulp.src has improved massively
gulp.src(['**/*', '!b.js']) will no longer eat CPU since negations happen during walking now
added since option to gulp.src which lets you only match files that have been modified since a certain date (for incremental builds)
fixed gulp.src not following symlinks
added overwrite option to gulp.dest which allows you to enable or disable overwriting of existing files
A relatively small maintenance release adjusting dependencies.
Features
Lodash is removed in favor of lighter dependencies specifically for the features used. intelli-espower-loader was also removed, as it's no longer compatible with the full suite of Node.js releases tested.
v3.0.1
A relatively small maintenance release.
Fixes
If the error from UglifyJS contains column information, append this to the error message (alongside the line number).
Buffers are now allocated with Buffer.from, ensuring Buffers never have any private information.
The Streams callback is only called once, even if a downstream exits in error.
v3.0.0
We're now targeting UglifyJS3, if you need to continue to use UglifyJS2, you should stay on v2.1.2.
Breaking Changes
The custom option "preserveComments" was removed.
As a replacement, set the options.output.comments option directly, UglifyJS3 understands the following options:
"all", to attempt to keep all comments.
"some", to keep comments containing some license text.
a RegExp
a function that should return true or false.
While the "some" option works for many cases, it doesn't fully match the behavior of the "license" option. Fortunately, you can pass the exported function from uglify-save-license as the comment option.
The "minifier" API, which you could use to provide your own UglifyJS instance has been removed. It has been replaced with the "composer" API.
v2.1.2
Bug Fixes
package: In the previous release devDependencies were incorrectly added as dependencies. This moves them to the correct location. (ba83a45c)
v2.1.1
Bug Fixes
errors: restore filenames and line information to GulpUglifyError's toString method. (c722ab9c)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/werwolfby/monitorrent/network/alerts).
Bumps lodash.template to 4.5.0 and updates ancestor dependencies lodash.template, gulp, gulp-angular-templatecache, gulp-htmlmin, gulp-jshint, gulp-uglify and gulp-zip. These dependencies need to be updated together.
Updates
lodash.template
from 3.6.2 to 4.5.0Release notes
Sourced from lodash.template's releases.
... (truncated)
Commits
Updates
gulp
from 3.9.1 to 4.0.2Release notes
Sourced from gulp's releases.
... (truncated)
Changelog
Sourced from gulp's changelog.
Commits
069350a
Release: 4.0.2b4b5a68
Build: Add node 12 to Travis & Azure5667666
Fix: Bind src/dest/symlink to the gulp instance to support esm exports (ref s...4091bd3
Docs: Add notes about esm support (closes #2278)3c66d95
Docs: Fix the Negative Globs section & examples (closes #2297)1693a11
Docs: Remove next tag from recipes (closes #2277)d916276
Docs: Add default task wrappers to Watching Files examples to make runnable (...ea52a92
Docs: Fix syntax error in lastRun API docs (closes #2315)5d81f42
Docs: Fix typo in Explaining Globs (#2326)ea3bba4
Release: 4.0.1Updates
gulp-angular-templatecache
from 2.2.7 to 2.2.7Commits
Updates
gulp-htmlmin
from 2.0.0 to 5.0.1Commits
190d031
5.0.10b8a331
stream errorsf954dda
remove eslint from preteste5aeb27
update readme8d8068e
5.0.020a1d30
closes jonschlinkert/gulp-htmlmin#72a412d83
refactor3bd9d8f
4.0.0f549ab4
run verb to generate readmedd66fbc
run updatersUpdates
gulp-jshint
from 1.12.0 to 2.1.0Changelog
Sourced from gulp-jshint's changelog.
Commits
32a25b0
2.1.02c57c9f
Merge pull request #157 from spalger/remove-gulp-util5f621f8
vinyl is only used in testing5eaabdd
add yarn.lock file for dev154180d
[gulp-util/PluginError] use plugin-error directly357ab98
[gulp-util/File] use Vinyl directly807bead
2.0.4aca8740
Add test to verify that default files are not brokenc277434
2.0.3711f3f0
test fixUpdates
gulp-uglify
from 1.5.4 to 3.0.2Release notes
Sourced from gulp-uglify's releases.
... (truncated)
Changelog
Sourced from gulp-uglify's changelog.
Commits
7b9a7ad
3.0.2a56d1c7
feat: remove lodash dependencybcdda44
docs: replacepump
withpipeline
c92197d
3.0.127b26d4
fix(composer): invoke callback only once2c7f656
tests: import tape-catch to catch thrown errorsb2492c4
fix: create safe-buffersa751c5a
tests: convert tests to to tape harness95f17a5
feat(error): add column to error stringe2462fa
chore(travis): update test matrixUpdates
gulp-zip
from 3.2.0 to 5.1.0Release notes
Sourced from gulp-zip's releases.
Commits
b53a201
5.1.0ca2e4f7
Add support for streaming output with option (#118)b278501
Move to GitHub Actions (#119)dbbb727
5.0.220106c8
Fix creating unusable ZIP files on Windows (#117)f58c257
5.0.1a5994ea
Make Gulp an optional peer dependency (#115)29f79cf
Meta tweaksf68ed4a
5.0.0ddbacce
Require Node.js 8Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/werwolfby/monitorrent/network/alerts).