Closed springmeyer closed 8 years ago
I tried locating all relevant issues and PRs and have added them to the milestone. Not sure if I missed something.
Sounds good in Kosmtik :)
Generated XML for osm-carto between 0.15.3 and master is identical except for some rounding errors in colors due to the new transition via HSL. But I might have found a potential bug in the mix
function. I'm still investigating.
TileMill tests pass with latest carto master. Will try Mapbox Studio Classic next.
I have pushed a commit (https://github.com/mapbox/carto/commit/206a59570bff85f06fdee9b9380602a0aff1a250) that fixes the problem with color mixing.
Added changelog in https://github.com/mapbox/carto/commit/af92b76f94b10887c23479a14f39bb688e1b06d5.
Excellent work @nebulon42 - I'll test Mapbox Studio Classic this weekend and then ping @tmcw early next week. Assuming all looks good let's plan to release next Wednesday or so. Sound good?
@springmeyer Any success for Mapbox Studio Classic?
Mapbox studio classic has failing tests:
# newStyle: creates a tmp style with source
not ok 75 Error: Expecting a Stylesheet property containing an (array of) stylesheet object(s) of the form { id: 'x', 'data': 'y' }.
---
operator: error
expected: |-
undefined
actual: |-
[Error: Expecting a Stylesheet property containing an (array of) stylesheet object(s) of the form { id: 'x', 'data': 'y' }.
]
at: Function.source.toXML (/Users/dane/projects/mbstudio/lib/source.js:293:16)
...
/Users/dane/projects/mbstudio/test/middleware.test.js:258
}, req.style.data.styles, 'creates default styles');
^
TypeError: Cannot read property 'data' of undefined
at /Users/dane/projects/mbstudio/test/middleware.test.js:258:21
at /Users/dane/projects/mbstudio/lib/middleware.js:131:29
at /Users/dane/projects/mbstudio/lib/source.js:171:29
at Function.source.toXML (/Users/dane/projects/mbstudio/lib/source.js:293:16)
at Function.source.refresh (/Users/dane/projects/mbstudio/lib/source.js:170:16)
at /Users/dane/projects/mbstudio/lib/source.js:107:16
at load (/Users/dane/projects/mbstudio/lib/source.js:437:16)
at /Users/dane/projects/mbstudio/lib/source.js:493:20
at fs.js:272:14
at /Users/dane/projects/mbstudio/node_modules/fstream/node_modules/graceful-fs/graceful-fs.js:43:10
Sorry, I cannot help investigating because it fails to install for me (sqlite3 makes problems).
@nebulon42 what is the error you are seeing?
The error below:
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/usr/lib/node_modules/node-gyp/lib/build.js:276:23)
gyp ERR! stack at emitTwo (events.js:87:13)
gyp ERR! stack at ChildProcess.emit (events.js:172:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
gyp ERR! System Linux 3.16.0-67-generic
gyp ERR! command "/usr/bin/nodejs" "/usr/lib/node_modules/node-gyp/bin/node-gyp.js" "build" "--fallback-to-build" "--module=/home/xyz/mapbox-studio-classic/node_modules/mbtiles/node_modules/sqlite3/lib/binding/node-v46-linux-x64/node_sqlite3.node" "--module_name=node_sqlite3" "--module_path=/home/xyz/mapbox-studio-classic/node_modules/mbtiles/node_modules/sqlite3/lib/binding/node-v46-linux-x64"
gyp ERR! cwd /home/xyz/mapbox-studio-classic/node_modules/mbtiles/node_modules/sqlite3
gyp ERR! node -v v4.4.0
gyp ERR! node-gyp -v v3.2.1
gyp ERR! not ok
node-pre-gyp ERR! build error
node-pre-gyp ERR! stack Error: Failed to execute '/usr/bin/nodejs /usr/lib/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/home/xyz/mapbox-studio-classic/node_modules/mbtiles/node_modules/sqlite3/lib/binding/node-v46-linux-x64/node_sqlite3.node --module_name=node_sqlite3 --module_path=/home/xyz/mapbox-studio-classic/node_modules/mbtiles/node_modules/sqlite3/lib/binding/node-v46-linux-x64' (1)
node-pre-gyp ERR! stack at ChildProcess.<anonymous> (/home/xyz/mapbox-studio-classic/node_modules/mbtiles/node_modules/sqlite3/node_modules/node-pre-gyp/lib/util/compile.js:83:29)
node-pre-gyp ERR! stack at emitTwo (events.js:87:13)
node-pre-gyp ERR! stack at ChildProcess.emit (events.js:172:7)
node-pre-gyp ERR! stack at maybeClose (internal/child_process.js:827:16)
node-pre-gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5)
node-pre-gyp ERR! System Linux 3.16.0-67-generic
node-pre-gyp ERR! command "/usr/bin/nodejs" "/home/xyz/mapbox-studio-classic/node_modules/mbtiles/node_modules/sqlite3/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build"
node-pre-gyp ERR! cwd /home/xyz/mapbox-studio-classic/node_modules/mbtiles/node_modules/sqlite3
node-pre-gyp ERR! node -v v4.4.0
node-pre-gyp ERR! node-pre-gyp -v v0.6.9
node-pre-gyp ERR! not ok
npm ERR! Linux 3.16.0-67-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "install"
npm ERR! node v4.4.0
npm ERR! npm v2.14.20
npm ERR! code ELIFECYCLE
npm ERR! sqlite3@3.0.10 install: `node-pre-gyp install --fallback-to-build`
npm ERR! Exit status 1
@nebulon42 - looks like you might be running as root. This breaks npm
. You need to either run npm install
as a non-priveleged user or pass the --unsafe-perm
flag (not ideal).
@springmeyer I'm only running npm as root if I'm prompted to do so. It might be related to that specific sqlite3 version, because the latest version installs fine. Unfortunately, I don't have much time to investigate this in detail.
Installation succeeded when I upgraded from mbtiles@0.8.0
to mbtiles@0.8.2
.
After some problems with npm test
where the node interpreter reached the memory limit (memory leak?) I adjusted the max-old-space-size
of the tape
script and got past this point. But I'm seeing failed tests even with carto 0.15.3.
not ok 61 TypeError: str.replace is not a function
---
operator: error
expected: |-
undefined
actual: |-
[TypeError: str.replace is not a function]
at: Vector.<anonymous> (/home/xyz/mapbox-studio-classic/node_modules/tilelive-vector/index.js:594:20)
stack: |-
TypeError: str.replace is not a function
at Object.Parser.parser.parse [as parse] (/home/xyz/mapbox-studio-classic/node_modules/carto/lib/carto/parser.js:148:25)
at /home/xyz/mapbox-studio-classic/node_modules/carto/lib/carto/renderer.js:93:44
at Array.map (native)
at Function._.map._.collect (/home/xyz/mapbox-studio-classic/node_modules/underscore/underscore.js:98:56)
at _.(anonymous function) [as map] (/home/xyz/mapbox-studio-classic/node_modules/underscore/underscore.js:1178:39)
at Renderer.render (/home/xyz/mapbox-studio-classic/node_modules/carto/lib/carto/renderer.js:84:10)
at /home/xyz/mapbox-studio-classic/lib/style.js:273:16
at /home/xyz/mapbox-studio-classic/lib/source.js:205:13
at Vector.<anonymous> (/home/xyz/mapbox-studio-classic/node_modules/tilelive-vector/index.js:594:20)
at Vector.g (events.js:260:16)
...
not ok 62 appends style to req
---
operator: ok
expected: true
actual: undefined
at: Vector.<anonymous> (/home/xyz/mapbox-studio-classic/node_modules/tilelive-vector/index.js:594:20)
...
/home/xyz/mapbox-studio-classic/test/middleware.test.js:207
t.ok(style.tmpid(req.style.data.id), 'creates a valid tmp id');
^
TypeError: Cannot read property 'data' of undefined
at /home/xyz/mapbox-studio-classic/test/middleware.test.js:207:35
at /home/xyz/mapbox-studio-classic/lib/middleware.js:165:29
at /home/xyz/mapbox-studio-classic/lib/style.js:103:25
at /home/xyz/mapbox-studio-classic/lib/style.js:275:20
at /home/xyz/mapbox-studio-classic/lib/source.js:205:13
at Vector.<anonymous> (/home/xyz/mapbox-studio-classic/node_modules/tilelive-vector/index.js:594:20)
at Vector.g (events.js:260:16)
at emitTwo (events.js:87:13)
at Vector.emit (events.js:172:7)
at /home/xyz/mapbox-studio-classic/node_modules/tilelive-vector/index.js:63:40
@springmeyer How should we proceed from here?
@nebulon42 thanks for pinging. I think those earlier mapbox studio classic errors are unrelated. I'm not seeing them and travis is green for studio classic. I've spent some time this morning getting to the bottom of the problem: Mapbox Studio Classic uses Carto without the styling for generating MML suitable for rendering vector tiles. So what Studio Classic needed was Carto to only validate the Stylesheet
property if it exists. I've made this fix in 050e11f.
Assuming that change looks good to you and travis passes green, I think we are ready to tag.
carto@0.16.0
is now tagged and published.
Great!
Ticket to track overall coordination on releasing v0.16.0.
(Below I've added tasks and handles. Please feel free to edit in place, adding yourself on a task or removing if you don't have bandwidth.)
Before cutting a release I'm seeing we need to:
npm publish