[wp-trac] [WordPress Trac] #34177: Update package.json devDependencies for WordPress 4.4
WordPress Trac
noreply at wordpress.org
Wed Oct 7 03:42:24 UTC 2015
#34177: Update package.json devDependencies for WordPress 4.4
------------------------------+------------------
Reporter: jorbin | Owner:
Type: task (blessed) | Status: new
Priority: normal | Milestone: 4.4
Component: Build/Test Tools | Version:
Severity: normal | Resolution:
Keywords: | Focuses:
------------------------------+------------------
Old description:
> New versions of some of the devDependencies have been released. Let's
> test and upgrade!
>
> {{{
> "autoprefixer-core" can be updated from ~5.2.1 to ~6.0.1 (Installed:
> 5.2.1, Latest: 6.0.1)
> "grunt-browserify" can be updated from ~4.0.0 to ~4.0.1 (Installed:
> 3.8.0, Latest: 4.0.1)
> "grunt-contrib-copy" can be updated from ~0.8.0 to ~0.8.1 (Installed:
> 0.8.0, Latest: 0.8.1)
> "grunt-contrib-cssmin" can be updated from ~0.12.3 to ~0.14.0 (Installed:
> 0.12.3, Latest: 0.14.0)
> "grunt-contrib-jshint" can be updated from ~0.11.2 to ~0.11.3 (Installed:
> 0.11.2, Latest: 0.11.3)
> "grunt-postcss" can be updated from ~0.5.4 to ~0.6.0 (Installed: 0.5.4,
> Latest: 0.6.0)
> "grunt-sass" can be updated from ~1.0.0 to ~1.1.0-beta (Installed: 1.0.0,
> Latest: 1.1.0-beta)
> "matchdep" can be updated from ~0.3.0 to ~1.0.0 (Installed: 0.3.0,
> Latest: 1.0.0)
> }}}
New description:
New versions of some of the devDependencies have been released. Let's
test and upgrade!
{{{
"autoprefixer-core" can be updated from ~5.2.1 to ~6.0.1 (Installed:
5.2.1, Latest: 6.0.1)
"grunt-contrib-cssmin" can be updated from ~0.12.3 to ~0.14.0 (Installed:
0.12.3, Latest: 0.14.0)
"grunt-postcss" can be updated from ~0.5.4 to ~0.6.0 (Installed: 0.5.4,
Latest: 0.6.0)
"grunt-sass" can be updated from ~1.0.0 to ~1.1.0-beta (Installed: 1.0.0,
Latest: 1.1.0-beta)
"matchdep" can be updated from ~0.3.0 to ~1.0.0 (Installed: 0.3.0, Latest:
1.0.0)
}}}
--
Comment (by netweb):
To clarify more on the semantic versioning of NodeJS packages:
{{{
The following dependencies are satisfied by their declared version range,
but the installed versions are behind. You can install the latest versions
without modifying your package.json by using npm update.
grunt-browserify ~4.0.0 → ~4.0.1
grunt-contrib-copy ~0.8.0 → ~0.8.1
grunt-contrib-jshint ~0.11.2 → ~0.11.3
}}}
Example, because we use the tilde `~` character e.g. `"grunt-browserify":
"~4.0.0",` then version `4.0.1` will be installed via either a fresh
checkout of the develop repo follwed by `npm install` or updated without a
change to `package.json` via `npm update`
See http://semver.npmjs.com/ for further details.
Example: From a fresh SVN checkout of the
`devleop.svn.wordpress.org/trunk` repo and `npm install`:
{{{
$ npm list --depth=0
WordPress at 4.4.0 /Users/netweb/dev/weatherbot/wp/trunk
├── autoprefixer-core at 5.2.1
├── grunt at 0.4.5
├── grunt-browserify at 4.0.1
├── grunt-contrib-clean at 0.6.0
├── grunt-contrib-compress at 0.13.0
├── grunt-contrib-concat at 0.5.1
├── grunt-contrib-copy at 0.8.1
├── grunt-contrib-cssmin at 0.12.3
├── grunt-contrib-imagemin at 0.9.4
├── grunt-contrib-jshint at 0.11.3
├── grunt-contrib-qunit at 0.7.0
├── grunt-contrib-uglify at 0.9.2
├── grunt-contrib-watch at 0.6.1
├── grunt-includes at 0.5.1
├── grunt-jsvalidate at 0.2.2
├── grunt-legacy-util at 0.2.0
├── grunt-patch-wordpress at 0.3.0
├── grunt-postcss at 0.5.5
├── grunt-rtlcss at 1.6.0
├── grunt-sass at 1.0.0
└── matchdep at 0.3.0
}}}
Per the above I'm removing the following from the original list of
dependancies to update in this ticket: `grunt-browserify`, `grunt-contrib-
copy`, and `grunt-contrib-jshint`.
If one of these dependancies are broken then we already have a problem
without updating our `package.json` file as minor versions should not
break anything per the semantic versioning of NodeJS package
specifications. As such we no longer '''need''' to update minor versions
of dependancies as long as we continue to use `~` to allow minor version
updates in `package.json`.
If we want to use explicit versions then we should revisit using `npm
shrinkwrap` to achieve this.
--
Ticket URL: <https://core.trac.wordpress.org/ticket/34177#comment:3>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform
More information about the wp-trac
mailing list