Skip to:
Content

Opened 12 months ago

Closed 8 months ago

#7429 closed defect (bug) (fixed)

Update and fix all the NPM things

Reported by: netweb Owned by: netweb
Milestone: 2.9 Priority: normal
Severity: normal Version:
Component: Build/Test Tools Keywords:
Cc:

Description

This is a rolling ticket for numerous issues relating to BuddyPress' use of NodeJS and NPM

  1. Update out of date packages, see table below
  1. Update Node engine from 6.6.0 to latest 6.x LTS release 6.9.4 in package.json
  1. NPM modules in package.json should only use semantic versioning ~ minor versions, rather than ^ major versions, regardless of the npm-shrinkwrap.json file this will hopefully remove one potential issue, and improve the stability of BPs NodeJS and NPM build tools implementation.
  1. Manually updating the BuddyPress version in npm-shrinkwrap.json is a task that shouldn't be performed manually, the npm-shrinkwrap.json should only be generated and/or regenerated by NPM itself.
  • Update the codex docs on how to update the npm-shrinkwrap.json file. Include notes that if using NPM v4.x to run npm shrinkwrap will include development dependencies, whereas in NPM 3.x development dependencies had to be explicitly included by using npm shrinkwrap --dev`
  1. Maybe add https://github.com/mstuart/grunt-shrinkwrap (depends on pending PRs merging)

Available NPM module updates:

PackageCurrent Wanted Latest Location
grunt-check-dependencies0.12.00.12.01.0.0buddypress
grunt-contrib-jshint1.0.01.0.01.1.0 buddypress
grunt-sass1.2.1 1.2.12.0.0buddypress

Change History (16)

#1 @netweb
12 months ago

  • Owner set to netweb
  • Status changed from new to accepted

#2 @netweb
12 months ago

Via npm help shrinkwrap as the docs at https://docs.npmjs.com/cli/shrinkwrap are out of date:

Starting with npm v4.0.1, devDependencies are included when you run npm shrinkwrap and follow the usual rules as to when they're installed. As of npm v3.10.8, if you run npm install --only=production or npm install --production with a shrinkwrap including your development dependencies they won't be installed. Similarly, if the environment variable NODE_ENV is production then they won't be installed. If you need compatibility with versions of npm prior to v3.10.8 or otherwise don't want them in your shrinkwrap you can exclude development dependencies with: npm shrinkwrap --only=prod or npm shrinkwrap --production.

This ticket was mentioned in Slack in #buddypress by slaffik. View the logs.


12 months ago

#4 @slaFFik
12 months ago

  • Keywords early added
  • Milestone changed from 2.8 to 2.9

#6 @netweb
8 months ago

In 11566:

Build Tools: Update grunt-contrib-jshint from v1.0.0 to v1.1.0

See #7429.

#7 @netweb
8 months ago

In 11567:

Build Tools: Update grunt-check-dependencies to v1.0.0

See #7429.

#8 @netweb
8 months ago

In 11568:

Build Tools: Update grunt-sass from v1.2.1 to v2.0.0

See #7429.

#9 @netweb
8 months ago

In 11569:

Build Tools: Update postcss-scss from 0.4.1 to 1.0.0

See #7429.

#10 @netweb
8 months ago

In 11570:

Build Tools: Update grunt-exec from 1.0.1 to 2.0.0

See #7429.

#11 @netweb
8 months ago

In 11571:

Build Tools: Update grunt-contrib-uglify from 2.0.0 to 3.0.1

See #7429.

#12 @netweb
8 months ago

In 11572:

Build Tools: Update grunt-contrib-cssmin from 1.0.2 to 2.2.0

See #7429.

#13 @netweb
8 months ago

In 11573:

Build Tools: Update grunt-wp-i18n from 0.5.4 to 1.0.0

See #7429.

#14 @netweb
8 months ago

In 11574:

Build Tools: Update package.json to define a minimum Node.js version 6.9.1

This changeset updates the recommended Node.js version to no longer produce a warning when using more recently released 6.x.x Node.js LTS versions

See #7429.

#15 @netweb
8 months ago

In 11575:

Build Tools: Update npm-shrinkwrap.json with the latest npm module dependencies from [11565] to [11573] changesets.

See #7429.

#16 @netweb
8 months ago

  • Keywords early removed
  • Resolution set to fixed
  • Status changed from accepted to closed

Replying to netweb:

  1. Update out of date packages, see table below

Fixed via [11565] to [11573] changesets

  1. Update Node engine from 6.6.0 to latest 6.x LTS release 6.9.4 in package.json

Fixed via [11574]

  1. NPM modules in package.json should only use semantic versioning ~ minor versions, rather than ^ major versions, regardless of the npm-shrinkwrap.json file this will hopefully remove one potential issue, and improve the stability of BPs NodeJS and NPM build tools implementation.

Fixed via [11565] to [11574] commits where required

  1. Manually updating the BuddyPress version in npm-shrinkwrap.json is a task that shouldn't be performed manually, the npm-shrinkwrap.json should only be generated and/or regenerated by NPM itself.

Fixed via [11575]

  • Update the codex docs on how to update the npm-shrinkwrap.json file. Include notes that if using NPM v4.x to run npm shrinkwrap will include development dependencies, whereas in NPM 3.x development dependencies had to be explicitly included by using npm shrinkwrap --dev`

Done, updated codex docs here: https://codex.buddypress.org/prelaunch-checklist/#version-bumps-in-dev

  1. Maybe add https://github.com/mstuart/grunt-shrinkwrap (depends on pending PRs merging)

Let's use package-lock.json as part of npm v5.x.x, new ticket for this coming shortly

That's everything, marking this ticket now as fixed.

Note: See TracTickets for help on using tickets.