maplibre/maputnik

Cannot Get Maputnik Tp Load MapLibre Martin Server Vector Tiles; Works in QGIS

jlpoolen opened this issue · 2 comments

Maputnik version: 2.0.0.

jlpoole@debian1:/usr/local/src/maputnik$ git --no-pager log -1
commit 48bf25c1b005d35578a20d0b6206ddb6ad50c275 (HEAD -> main, origin/main, origin/HEAD)
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Sun Jun 16 13:08:52 2024 +0300 
...

Browser: Firefox version: 115.11.0esr (64-bit)
OS: Debian Bookworm

root@debian1:/home/jlpoole/martin# date
Tue Jun 18 08:06:26 PM PDT 2024
root@debian1:/home/jlpoole/martin# uname -a
Linux debian1 6.1.0-20-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.85-1 (2024-04-11) x86_64 GNU/Linux
root@debian1:/home/jlpoole/martin# cat /etc/os-release 
PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
NAME="Debian GNU/Linux"
VERSION_ID="12"
VERSION="12 (bookworm)"
VERSION_CODENAME=bookworm
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
root@debian1:/home/jlpoole/martin# 

Description of the bug:
Valid URL for a Martin Vector Tile server (just built in the last week) does not display (or connect to Martin) in Maputnik. I built a Martin server which is serving up an MBTiles SQLite file created by the openmaptiles project. The URL to the Martin server is:

http://debian1:3000/jlptiles/{z}/{x}/{y}
or
http://localhost:3000/jlptiles/{z}/{x}/{y}

I have the URL working in QGis.

Steps to reproduce the behavior:

  1. Launch just-updated/built Maputnik with:
jlpoole@debian1:/usr/local/src/maputnik$ npm run start -- --host 0.0.0.0

> maputnik@2.0.0 start
> vite --host 0.0.0.0

Re-optimizing dependencies because lockfile has changed

  VITE v5.2.6  ready in 518 ms

  ?  Local:   http://localhost:8888/
  ?  Network: http://192.168.1.142:8888/
  ?  Network: http://172.24.0.1:8888/
  ?  press h + enter to show help
q
jlpoole@debian1:/usr/local/src/maputnik$
  1. On the same machine as the Maputnik server and the Martin server, "debian1", load in Firefox the URL: http://debian1:8888/
  2. Create a Vector XYZ server instance providing the URL to the Martin server: http://debian1:3000/jlptiles/{z}/{x}/{y}
  3. Load the locally (debian1) saved JSON file: /home/jlpoole/MapLibre/local/202406141808_sprite_added.style (which is also exposed via an Apache server at: http://localhost/MapLibre/local..."
  4. Global may or may not appear, but zooming into the state of Oregon which the mbtiles contains, nothing happens.

Here's the log from the Martin server when I start and stopped Maputnik https://pastebin.com/izbK012G

Style file or style URL:

Attaching zip of: 202406141808_sprite_added.style
I've used 202406141808_sprite_added.style in QGis, and it was because of some styles I wanted to alter/fix that compelled me onto Maputnik.
202406141808_sprite_added.zip

Screenshots:

Screenshot of QGIS rendering of Martin tiles:
tvnviewer_2024-06-18_19-31-25
Screenshot of Maputnik:
tvnviewer_2024-06-18_19-40-22

Anticipating the "Try it on Chromium", I launched Chromium and accessed the local URL: Maputnik did not even appear, just a black screen.
Chromium's console log containing 2 errors: https://pastebin.com/ttBQtPMf

Anticipating the "Try it on Chromium", I launched Chromium and accessed the local URL: Maputnik did not even appear, just a black screen. Chromium's console log containing 2 errors: https://pastebin.com/ttBQtPMf

However, using a Gentoo Linux server and Google Chrome thereon, I am able to display Maputnik. However, when I add the datasource pointing to the martin server, nothing appears. I was able to display within the Gentoo Chromium the martin server's catalog and the request appears in the martin log. Yet, when I try refreshing Maputnik on the Gentoo Chromium to cause a query to the martin server, nothing happens and the martin server does not register any request.