Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Depending on cutting-room-floor module #105

Open
springmeyer opened this issue Oct 31, 2017 · 8 comments
Open

Depending on cutting-room-floor module #105

springmeyer opened this issue Oct 31, 2017 · 8 comments

Comments

@springmeyer
Copy link
Contributor

I noticed we are depending on https://github.com/cutting-room-floor/tile-stat-stream (https://github.com/mapbox/mapbox-tile-copy/blob/master/package.json#L36). I presume this is not a good thing because cutting room floor modules are deprecated/unmaintained.

Anyone know if this is a mistake to have moved that to the cutting room floor? Or an oversight that we should be using something else?

/cc @rclark @davidtheclark @mapsam @GretaCB

@rclark
Copy link
Contributor

rclark commented Oct 31, 2017

https://github.com/mapbox/mapbox-geostats was the intended replacement for tile-stat-stream. But my memory is hazy -- not sure if its an easy fit or not.

I was pretty sure we'd worked mapbox-geostats into our downstream tile-generation service, which makes me wonder if any tile statistics that are being generated by this repository are just being ignored?

@mapsam
Copy link
Contributor

mapsam commented Oct 31, 2017

Correct, we're using mapbox-geostats now and are not using the stats or --stats option from mapbox-tile-copy. As far as next steps, I suggest:

🍎 a new major release completely removing stats generation
🍌 updating stats generation to only happen if stats are passed as an option. Right now it seems that we generate stats every run, and only write them out if the user requests it. Let's not even compute them unless a user requests it.

@mapsam
Copy link
Contributor

mapsam commented Nov 2, 2017

While we're here, let's update dependencies to get rid of these warnings:

npm WARN deprecated tile-stat-stream@1.1.0: Package abandoned, contact support@npmjs.com for more info.
npm WARN deprecated tiletype@0.2.1: This module is now under the @mapbox namespace: install @mapbox/tiletype instead
npm WARN deprecated vector-tile@1.3.0: This module has moved: please install @mapbox/vector-tile instead
npm WARN engine tiletype@0.2.1: wanted: {"node":"0.8.x || 0.10.x"} (current: {"node":"4.8.4","npm":"2.15.11"})
npm WARN deprecated queue-async@1.0.7: renamed to d3-queue
npm WARN deprecated tough-cookie@2.2.2: ReDoS vulnerability parsing Set-Cookie https://nodesecurity.io/advisories/130
npm WARN deprecated point-geometry@0.0.0: This module has moved: please install @mapbox/point-geometry instead
npm WARN deprecated node-uuid@1.4.8: Use uuid module instead
npm WARN deprecated minimatch@0.3.0: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated protozero@1.5.1: protozero should no longer be used via npm, install instead via https://github.com/mapbox/mason

@springmeyer
Copy link
Contributor Author

Great, thank you @rclark and @mapsam - that plan sounds great.

@mapsam
Copy link
Contributor

mapsam commented Nov 8, 2017

@springmeyer just to confirm - are you in favor of 🍎 or 🍌 ?

@springmeyer
Copy link
Contributor Author

@mapsam 🍎

@mapsam mapsam mentioned this issue Nov 8, 2017
1 task
@mapsam
Copy link
Contributor

mapsam commented Nov 8, 2017

Working over in #107

Some upstream updates will be necessary to get rid of all these module warnings 😞 (including mapnik). Here are the culprits

queue-async - I've updated this immediate module to use d3-queue, but this will persist until tilelive and tilelive-omnivore are updated.

$ npm ls queue-async
@mapbox/mapbox-tile-copy@6.4.0 /Users/mapsam/mapbox/mapbox-tile-copy
├─┬ @mapbox/tilelive@5.12.6
│ └── queue-async@1.0.7 
└─┬ @mapbox/tilelive-omnivore@3.4.0
  └── queue-async@1.2.1 

tough-cookie - these are largely in some big upstream modules that will largely be fixed by updating request in all of them (no small feat) and updating node-sqlite3

$ npm ls tough-cookie
@mapbox/mapbox-tile-copy@6.4.0 /Users/mapsam/mapbox/mapbox-tile-copy
├─┬ @mapbox/mbtiles@0.9.0
│ └─┬ sqlite3@3.1.13
│   └── tough-cookie@2.3.3 
├─┬ @mapbox/tilelive-omnivore@3.4.0
│ └─┬ @mapbox/mapnik-omnivore@8.4.2
│   └─┬ gdal@0.9.6
│     └── tough-cookie@2.3.2 
├─┬ @mapbox/tilelive-vector@3.10.2
│ └─┬ request@2.72.0
│   └── tough-cookie@2.2.2 
├─┬ mapnik@3.6.2
│ └─┬ node-pre-gyp@0.6.36
│   └─┬ request@2.81.0
│     └── tough-cookie@2.3.2 
└─┬ request@2.83.0
  └── tough-cookie@2.3.3 

node-uuid - will be fixed by updating request.js in tilelive-vector

$ npm ls node-uuid
@mapbox/mapbox-tile-copy@6.4.0 /Users/mapsam/mapbox/mapbox-tile-copy
└─┬ @mapbox/tilelive-vector@3.10.2
  └─┬ request@2.72.0
    └── node-uuid@1.4.8 

minimatch ✅ fixed by updating tape

protozero - requires update to mapnik/mapnik-vector-tile to install via mason instead of NPM

$ npm ls protozero
@mapbox/mapbox-tile-copy@6.4.0 /Users/mapsam/mapbox/mapbox-tile-copy
└─┬ mapnik@3.6.2
  └── protozero@1.5.1 

@springmeyer
Copy link
Contributor Author

protozero - requires update to mapnik/mapnik-vector-tile to install via mason instead of NPM

This will depend on mapbox/mason#396, unless we shortcut by using a git submodule (currently done as a hack in node-mapnik for geometry.hpp)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants