Skip to content

mod_pposmap 1.4.0

Latest

Choose a tag to compare

@pablop76 pablop76 released this 06 Sep 18:40

Leaflet jedzie razem z modułem

Do tej pory Leaflet i biblioteka klastrowania ładowały się z unpkg. Wystarczyło,
że ten serwer nie odpowie albo że witryna ma ostrzejszą politykę bezpieczeństwa
treści (CSP), a mapa nie rysowała się w ogóle. Teraz obie biblioteki są
w paczce — Leaflet 1.9.4 i leaflet.markercluster 1.5.3 — i moduł domyślnie
bierze je z własnego serwera.

Poza odpornością na awarie zmienia to jeszcze dwie rzeczy: adres odwiedzającego
nie trafia już do zewnętrznego dostawcy przy każdym wejściu na stronę, a paczka
działa bez wyjścia w świat. Dawny argument, że CDN jest szybszy, bo przeglądarka
ma bibliotekę w pamięci z innej witryny, przestał obowiązywać — od 2020 roku
przeglądarki dzielą tę pamięć osobno dla każdej witryny.

Wybór źródła: własny serwer albo CDN pod wskazanym adresem

W ustawieniach modułu (tryb Leaflet) doszło pole Źródło bibliotek. Domyślnie
jest „lokalnie". Po przełączeniu na CDN pokazuje się drugie pole z adresem
bazowym — domyślnie unpkg, ale układ ścieżek jest taki jak w npm, więc równie
dobrze wpisać można jsDelivr albo własne lustro.

Sumy kontrolne (SRI) zostają także przy własnym adresie. Pliki tych wersji są
bajt w bajt takie same na każdym lustrze, więc jeśli serwer poda co innego,
przeglądarka odmówi wykonania skryptu. Lepsza głośna odmowa niż cicho podmieniony
skrypt na cudzej stronie.

Żeby to działało, biblioteki w repozytorium są wyłączone z normalizacji końców
wierszy. Bez tego git przy zapisie zmieniał im bajty, plik przestawał być
identyczny z tym, co wydał autor, i suma kontrolna przestawała się zgadzać.

Mapbox bez zmian

Mapbox GL JS nadal idzie z api.mapbox.com. Tam zależności od cudzej usługi
i tak nie da się zerwać, bo biblioteka wymaga tokenu dostępowego.

Aktualizacja

Zgodna wstecz: żadne pole nie zostało usunięte ani przemianowane, ustawienia
i dodane punkty zostają nietknięte. Po aktualizacji moduł przestaje sam z siebie
odpytywać unpkg — domyślnym źródłem jest własny serwer.