{"action":"created","issue":{"url":"https://api.github.com/repos/kosmtik/kosmtik/issues/83","labels_url":"https://api.github.com/repos/kosmtik/kosmtik/issues/83/labels{/name}","comments_url":"https://api.github.com/repos/kosmtik/kosmtik/issues/83/comments","events_url":"https://api.github.com/repos/kosmtik/kosmtik/issues/83/events","html_url":"https://github.com/kosmtik/kosmtik/issues/83","id":99747669,"number":83,"title":"Error when vector tile source returns 404","user":{"login":"jbrwn","id":1198377,"avatar_url":"https://avatars.githubusercontent.com/u/1198377?v=3","gravatar_id":"","url":"https://api.github.com/users/jbrwn","html_url":"https://github.com/jbrwn","followers_url":"https://api.github.com/users/jbrwn/followers","following_url":"https://api.github.com/users/jbrwn/following{/other_user}","gists_url":"https://api.github.com/users/jbrwn/gists{/gist_id}","starred_url":"https://api.github.com/users/jbrwn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jbrwn/subscriptions","organizations_url":"https://api.github.com/users/jbrwn/orgs","repos_url":"https://api.github.com/users/jbrwn/repos","events_url":"https://api.github.com/users/jbrwn/events{/privacy}","received_events_url":"https://api.github.com/users/jbrwn/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-08-07T23:33:59Z","updated_at":"2015-08-08T06:48:36Z","closed_at":"2015-08-08T06:48:35Z","body":"kosmtik is throwing a hard error when a vector tile source returns a 404.   \r\n\r\n```\r\nJoels-MacBook-Pro:kosmtik joelbrown$ node index.js serve ../tilemill/test2.tm2/project.yml\r\n[Core] No usable config file found in /Users/joelbrown/.config/kosmtik.yml\r\n[Core] Loading plugin from ../plugins/base-exporters/index.js\r\n[Core] Loading plugin from ../plugins/hash/index.js\r\n[Core] Loading plugin from ../plugins/local-config/index.js\r\n[Core] Loading plugin from ../plugins/datasource-loader/index.js\r\n[Core] Loading project from ../tilemill/test2.tm2/project.yml\r\n[Core] PreviewServer started, you can browse http://127.0.0.1:6789\r\n[Local Config] Unable to load local config from /Users/joelbrown/tilemill/test2.tm2/localconfig.js\r\n[Error: File not found: /Users/joelbrown/tilemill/test2.tm2/localconfig.js]\r\n[Core] Generating Mapnik XML…\r\n[Core] Using mapnik version 3.0.0\r\n[Core] Loading map…\r\n[Core] Map ready\r\n[Core] Loading map…\r\n[Core] Map ready\r\n[httpserver] /test2.tm2/tile/1/0/0.png?t=1438983099059 200\r\n[httpserver] /test2.tm2/tile/1/1/0.png?t=1438983099059 200\r\n[httpserver] /test2.tm2/tile/1/0/1.png?t=1438983099059 200\r\n[httpserver] /test2.tm2/tile/1/1/1.png?t=1438983099059 200\r\n[httpserver] /test2.tm2/tile/2/1/1.png?t=1438983099059 200\r\n[httpserver] /test2.tm2/tile/2/2/1.png?t=1438983099059 200\r\n[httpserver] /test2.tm2/tile/2/2/0.png?t=1438983099059 200\r\n[httpserver] /test2.tm2/tile/2/2/2.png?t=1438983099059 200\r\n[httpserver] /test2.tm2/tile/2/1/2.png?t=1438983099059 200\r\ncould not parse buffer as protobuf\r\nTrace\r\n    at ProjectServer.raise (/Users/joelbrown/kosmtik/src/back/ProjectServer.js:239:13)\r\n    at /Users/joelbrown/kosmtik/src/back/ProjectServer.js:73:34\r\n    at /Users/joelbrown/kosmtik/src/back/VectorBasedTile.js:61:18\r\n    at parse (/Users/joelbrown/kosmtik/src/back/VectorBasedTile.js:24:17)\r\n    at Request.onResponse [as _callback] (/Users/joelbrown/kosmtik/src/back/VectorBasedTile.js:41:17)\r\n    at Request.self.callback (/Users/joelbrown/kosmtik/node_modules/request/request.js:198:22)\r\n    at Request.emit (events.js:110:17)\r\n    at Request.<anonymous> (/Users/joelbrown/kosmtik/node_modules/request/request.js:1057:14)\r\n    at Request.emit (events.js:129:20)\r\n    at IncomingMessage.<anonymous> (/Users/joelbrown/kosmtik/node_modules/request/request.js:1003:12)\r\nUnable to parse vector tile data for uri http://a.tiles.mapbox.com/v3/joelsbrown1.ffb527f1/2/1/0.vector.pbf\r\n[httpserver] /test2.tm2/tile/2/1/0.png?t=1438983099059 500\r\nevents.js:85\r\n      throw er; // Unhandled 'error' event\r\n            ^\r\nError: write after end\r\n    at ServerResponse.OutgoingMessage.write (_http_outgoing.js:413:15)\r\n    at /Users/joelbrown/kosmtik/src/back/ProjectServer.js:77:21\r\n```\r\n\r\n```http://a.tiles.mapbox.com/v3/joelsbrown1.ffb527f1/2/1/0.vector.pbf``` returns a 404.  What is the expected behavior here?  My expectation is that a \"empty\" tile should be rendered.  At the very least i would not expect this to break the app.   Let me know what you think.\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/kosmtik/kosmtik/issues/comments/128923914","html_url":"https://github.com/kosmtik/kosmtik/issues/83#issuecomment-128923914","issue_url":"https://api.github.com/repos/kosmtik/kosmtik/issues/83","id":128923914,"user":{"login":"yohanboniface","id":146023,"avatar_url":"https://avatars.githubusercontent.com/u/146023?v=3","gravatar_id":"","url":"https://api.github.com/users/yohanboniface","html_url":"https://github.com/yohanboniface","followers_url":"https://api.github.com/users/yohanboniface/followers","following_url":"https://api.github.com/users/yohanboniface/following{/other_user}","gists_url":"https://api.github.com/users/yohanboniface/gists{/gist_id}","starred_url":"https://api.github.com/users/yohanboniface/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yohanboniface/subscriptions","organizations_url":"https://api.github.com/users/yohanboniface/orgs","repos_url":"https://api.github.com/users/yohanboniface/repos","events_url":"https://api.github.com/users/yohanboniface/events{/privacy}","received_events_url":"https://api.github.com/users/yohanboniface/received_events","type":"User","site_admin":false},"created_at":"2015-08-08T06:48:35Z","updated_at":"2015-08-08T06:48:35Z","body":"You're absolutely right :)\r\nNow it raise an internal error, which then got displayed to the user."}}