Page MenuHomePhabricator

Kartotherian error with new deployment: "core.strToFloat is not a function"
Closed, ResolvedPublic

Description

The new deployment of kartotherian is mostly working. Kartotherian is running, but is generating a lot of errors about core.strToFloat is not a function (err.levelPath=error) kartotherian: core.strToFloat is not a function (see P6416). Map rendering works, but we probably have broken something in the process.

Event Timeline

Looking at the build logs, I see references to both kartotherian-core 0.0.18 and 0.0.23. But navigating the package.json and the dependency tree in the build logs, I can't understand where the 0.0.18 is coming from.

@Pnorman it looks like we have some more dependency cleanup to do...

There is a reference to kartotherian-core 0.0.18 in the npm-shrinkwrap.json of the deploy repo. Time to read a bit on shrinkwrap...

Aklapper renamed this task from Kartotherian error with new deployment to Kartotherian error with new deployment: "core.strToFloat is not a function".Dec 1 2017, 4:56 PM

Building with ./server.js build --deploy-repo --force --reshrinkwrap seems to do the trick.

re-generating shrinkwrap got rid of the dubious kartotherian-core 0.0.18, but not of the error. 0.0.23 is now deployed. Checking the upstream repo, it looks like the latest version deployed on npmjs is 0.1.1, which is not tagged in the repo. It looks like we still have a mess of incompatible dependencies versions.

Why are you using shrinkwrap?

@MaxSem my assumption is that because it was already there, we should keep it. That assumption might be wrong, but my understanding of deploying nodejs apps is severely limited :(

It looks like we still have a mess of incompatible dependencies versions.

This should not be as a surprise to anyone familiar with any maps stack + npm ;)

I did a PR to snapshot to eliminate the strToFloat usage.

With @Pnorman fix to kartotherian/snapshot, this seems to just work.