OpenRailwayMap-vector integration#132
Open
hiddewie wants to merge 666 commits intoOpenRailwayMap:masterfrom
Open
OpenRailwayMap-vector integration#132hiddewie wants to merge 666 commits intoOpenRailwayMap:masterfrom
hiddewie wants to merge 666 commits intoOpenRailwayMap:masterfrom
Conversation
Part of #219 (https://localhost/#view=3.94/39.43/-94.7&style=operator) <img width="1586" height="1116" alt="image" src="https://github.com/user-attachments/assets/15aac02f-73fa-4d53-81c4-dc64addfa34a" /> (Chicago: https://localhost/#view=12.02/41.70103/-87.58216&style=operator) <img width="1586" height="1116" alt="image" src="https://github.com/user-attachments/assets/28183e33-8b50-4994-b1c2-c655be6ef135" /> (St Louis, https://localhost/#view=11.09/38.5243/-90.2815&style=operator) Shame that *Union Pacific Railroad* and *BNSF Railway* hash to almost the same color. <img width="1586" height="1116" alt="image" src="https://github.com/user-attachments/assets/4e49b6f1-2469-48ce-b084-1574d34a6d83" />
Shows stations with operator. Includes yards, junctions, halts, tram stops, crossovers and sites. Railway line with matching operator: (https://localhost/#view=11.93/38.7991/-90.45345&style=operator) <img width="1116" height="790" alt="image" src="https://github.com/user-attachments/assets/a75a0ead-660a-406c-9c71-429eb06529d3" /> <img width="1116" height="790" alt="image" src="https://github.com/user-attachments/assets/bc61244f-3a0a-43b8-ad15-42b763711e4a" /> Most stations and yards do not have a matching operator: (https://localhost/#view=10.6/38.6372/-90.1333&style=operator) <img width="1662" height="1061" alt="image" src="https://github.com/user-attachments/assets/12139c01-92f6-4be8-a45f-167208b0f10d" /> (https://localhost/#view=13.15/38.22554/-89.67217&style=operator) <img width="881" height="534" alt="image" src="https://github.com/user-attachments/assets/11fdf7ec-9302-4a52-9e8e-4a85b8650d08" /> <img width="881" height="534" alt="image" src="https://github.com/user-attachments/assets/d3cb3d6a-6444-4987-899f-0bb2127fdfd9" /> Popup: <img width="881" height="534" alt="image" src="https://github.com/user-attachments/assets/d0dcb3f4-c8d6-4282-8e4e-2b5031706828" />
From #471 <img width="280" height="559" alt="image" src="https://github.com/user-attachments/assets/4a30f1e7-4a1c-4910-a45b-c592c6174340" /><img width="280" height="559" alt="image" src="https://github.com/user-attachments/assets/1ff110c7-33e6-4d67-8477-066369c78b0d" />
Fixes #473 Changes: - Add API that does a lookup for Wikidata image URLs - Show only thumbnails - Call the API to find the Wikidata image, and show it in the popup. <img width="819" height="752" alt="image" src="https://github.com/user-attachments/assets/ecef20c6-6937-4f47-8760-015dbc3d8953" /> <img width="588" height="792" alt="image" src="https://github.com/user-attachments/assets/4cdd4d56-2c70-4d35-ba94-95119f3d8147" />
Only platform nodes are used now for station area station <-> platform and station <-> stop position references. Platform ways should also work.
See https://wiki.openstreetmap.org/w/index.php?title=DE:OpenRailwayMap/Tagging_Trams_in_Germany&diff=0&oldid=2869884 So13 in Rostock (https://localhost/#view=17.61/54.083942/12.109822&style=signals) <img width="928" height="936" alt="image" src="https://github.com/user-attachments/assets/15edafe9-475c-451b-975a-596fcb10b06b" />
Add ASES train protection. Separate entry, but same color as ACSES. Handles the `railway:ases = yes` tag. From #450 (comment)
Part of #392 Improve import and parsing of railway positions. Move logic from SQL to the Lua pre-processing. Changes: - Split milestones into multiple values, storing each as a separate position - Store the numeric position separate from the textual position. A textual position is always present, a numerical value is optional. - Simplify tile and search SQL views. - Store if a milestone is a *zero* - Support `km`, `mi` and `pkm` types of milestones A zero milestone still has a popup with the textual value: <img width="384" height="264" alt="image" src="https://github.com/user-attachments/assets/70b35e49-b2b3-4d9c-a18d-e2d4466bbede" /> Higher zooms show exact values: <img width="501" height="453" alt="image" src="https://github.com/user-attachments/assets/660870cb-221e-468b-bbb5-52d6266e868e" /> Negative milestones: <img width="845" height="643" alt="image" src="https://github.com/user-attachments/assets/61ad3b11-6ba2-4cb4-95ef-e20de2e8d680" /> Support for `km`, `mi` and `pkm` position types: <img width="470" height="343" alt="image" src="https://github.com/user-attachments/assets/e8acb110-c23a-4bdb-80a8-cd01c9aee193" />
When the map has a bearing on page load, the colored bearing map control did not show a color, even though it was rotated. <img width="703" height="567" alt="image" src="https://github.com/user-attachments/assets/ef74a5ff-e69c-4b75-889e-32b22eeb731c" />
Fixes #79 - Pit: https://www.openstreetmap.org/node/2799981613#map=19/51.432521/7.125580 - Loading rack: https://www.openstreetmap.org/node/7598293783#map=19/52.392576/9.636664 - Container terminal: https://www.openstreetmap.org/way/96394107#map=16/51.27989/7.24790 - Loading ramp: https://www.openstreetmap.org/way/179489432#map=18/52.404327/13.177453 - Loading tower: https://www.openstreetmap.org/node/9674404554#map=19/49.014634/8.339634 - Unloading hole: https://www.openstreetmap.org/node/12517213587#map=19/49.337785/7.028916 - Car dumper: https://www.openstreetmap.org/node/12069552477#map=19/52.438090/16.990505 - Weigh bridge: https://www.openstreetmap.org/node/12149342617#map=19/49.986272/8.391065 - Transporter car: https://www.openstreetmap.org/way/1411249529#map=19/48.128689/9.801410 - Bogie exchange: https://www.openstreetmap.org/node/2768352841#map=19/49.155444/15.007950 - Car shuttle: https://www.openstreetmap.org/node/1132359898#map=19/48.121233/11.553204 - Ferry terminal: https://www.openstreetmap.org/node/7262858004#map=19/43.162525/51.443028 Legend: <img width="411" height="482" alt="image" src="https://github.com/user-attachments/assets/2436251e-4c28-4e10-99ce-aad44bb1bbf7" /><img width="411" height="482" alt="image" src="https://github.com/user-attachments/assets/9e8c23f9-7f4e-4e1b-ac67-16889474a0da" />
Followup on #481. A property was wrong, failing to import `mi:` and `pkm:` milestones.
The views were recreated when they already existed.
<img width="768" height="501" alt="image" src="https://github.com/user-attachments/assets/87693e43-e64c-4b26-ad27-7bd1f78c5977" /> This will also be shown in the Operator layer. Part of #219 (http://localhost:8000/#view=13.02/52.47984/13.38297&style=operator) <img width="414" height="264" alt="image" src="https://github.com/user-attachments/assets/0719d531-4626-424e-bd9a-bcf80d6ae3fd" /> <img width="895" height="640" alt="image" src="https://github.com/user-attachments/assets/f4aafb39-702e-4d01-84a0-040db4e00fc3" />
Users that have saved their configuration have no different behaviour. For new users, the default background map will have a saturation of 0.0 (unchanged) and opacity of 0.35 (from 1.0). Before: <img width="1920" height="1034" alt="image" src="https://github.com/user-attachments/assets/4e21d256-9563-4b32-ba66-9934dd3f7f08" /> After: <img width="1920" height="1034" alt="image" src="https://github.com/user-attachments/assets/8bd7875c-b1df-4de3-8f35-6dc257265b3c" />
Following performance scanning from https://gtmetrix.com/reports/openrailwaymap.app/IynOcHM9/ and Google Lighthouse. Changes: - Put the `<script>` includes in the page head, with `defer`. Execution order is important - Lazy load the banner image - Enable gzip compression on more content types (taken from https://www.digitalocean.com/community/tutorials/how-to-improve-website-performance-using-gzip-and-nginx-on-ubuntu-20-04)
Fixes #476 (http://localhost:8000/#view=19/52.5065983/13.4797794) <img width="1226" height="886" alt="image" src="https://github.com/user-attachments/assets/1c7fe13e-db76-4cac-9745-90e5c185aecf" />
Part of #35 See https://www.bane.dk/Jernbanevirksomhed/Sikkerhed/Trafikale-regler/SR/SR, https://www.bane.dk/da/Jernbanevirksomhed/Sikkerhed/Trafikale-regler/SR/SR/-/media/FF191FAA53244E349DC70B4FABBB9C97.ashx See https://www.lundsten.dk/dk_signaling/dksignal.html See https://qelectronics.de/downloads/signalbuch/signale.denmark.pdf See https://www.bane.dk/Jernbanevirksomhed/Sikkerhed/Trafikale-regler/SR/SR See https://wiki.openstreetmap.org/wiki/OpenRailwayMap/Tagging_in_Denmark
Fixes #494 Followup of #481 Part of #392 Changes: - Match exact positions against non-exact positions. If exact positions do not have a corresponding non-exact position, they are used as is. - Use textual position (not exact position) for determining if a milestone is a zero. (https://openrailwaymap.app/#view=10.39/49.5818/11.4117&style=signals) Before: <img width="1418" height="1110" alt="image" src="https://github.com/user-attachments/assets/2f26bb69-58b7-4545-988c-8c4c82ac613b" /> After: <img width="1417" height="1113" alt="image" src="https://github.com/user-attachments/assets/23e64517-4986-406a-8bf9-db51c51a3b02" />
Part of discussion in #496 (Paris: https://openrailwaymap.app/#view=12.27/48.86185/2.33082&style=signals) Before: <img width="1433" height="1115" alt="image" src="https://github.com/user-attachments/assets/1a2c66b0-76b1-4f1c-9f8a-59c79d7a7e44" /> After: <img width="1433" height="1115" alt="image" src="https://github.com/user-attachments/assets/322bb8a6-aa50-4861-b903-170ebcd4d9ff" />
Part of #35 See https://wiki.openstreetmap.org/wiki/OpenRailwayMap/Signals_in_Italy and discussion on https://wiki.openstreetmap.org/wiki/Talk:OpenRailwayMap/Signals_in_Italy. These signals are also getting tagged in OSM: https://overpass-turbo.eu/s/28Gn. Sources: - https://www.segnalifs.it/sfi/it/sa/2016_segnali.htm - https://wiki.openstreetmap.org/wiki/OpenRailwayMap/Signals_in_Italy - https://web.archive.org/web/20180722011447/http://site.rfi.it/quadroriferimento/files/RS%202018-01-30.pdf
Hi there, I've created and added rendering for PL 6-cell semaphores -> those are tagged similarly to 4- and 5-cell combined signals, but they additionally include `railway:signal:combined:shape=two_column` tag. I've recently updated OSM wiki and semaphores on map (in Radom Wschodni, Gdańsk Główny and Ełk stations) Examples of IRL 6-cell semaphores: http://lighting-gallery.pl/viewtopic.php?f=55&t=1125&start=170#p274717 <img width="1024" height="576" alt="image" src="https://github.com/user-attachments/assets/152420ce-68a9-4773-9cf4-1020ec280689" /> http://lighting-gallery.pl/viewtopic.php?f=55&t=1125&start=170#p275045 <img width="1024" height="575" alt="image" src="https://github.com/user-attachments/assets/0428848d-d42f-453e-8520-9b6ea572789a" /> --------- Co-authored-by: Hidde Wieringa <hidde@hiddewieringa.nl>
Fixes #503 Import all switches, including those without a `ref`. http://localhost:8000/#view=17.71/50.956407/7.012742 Before: <img width="1434" height="1114" alt="image" src="https://github.com/user-attachments/assets/ef650870-d709-408d-a552-08ce602ff7cb" /> After: <img width="1434" height="1114" alt="image" src="https://github.com/user-attachments/assets/ba5b471a-4f84-4896-9c0b-1ef937332d14" />
Fix the order of the integration test results, which depends on the Berlin OSM data.
There's no "CM" track class and I changed the only occurrence yesterday to the correct one (Value of "CM4" taken from trassenfinder.de). There are also a few other lines in the former GDR that have "CM4" set.
Part of #270 Solution strategy: make the cone larger for high (16+) zooms when the references are visible, such that the reference cannot fully cover the signal cone. Changes: - Large signal cone from zoom 16+ - Lower opacity a bit for signal cone between zooms 13 and 16. Zoom 13-16: signals with small cones and references/captions <img width="872" height="963" alt="Image" src="https://github.com/user-attachments/assets/ff3adb6e-2e41-4186-98f6-e3747cf116a7" /> Zooms 16+: signals with big cones, partially transparent, and references/captions <img width="872" height="963" alt="Image" src="https://github.com/user-attachments/assets/a507698f-c794-4c55-95b0-ebc0a1c9d0c5" />
Fixes #500 This pull request moves the symbols for borders and owner change to the operator layer. In the future, if we like, we could also display a symbol (POI) on multiple layers (e.g. _infrastructure_ and _operator_). For e.g. borders this could be sensible. (http://localhost:8000/#view=16/52.48671/13.373722&style=operator) <img width="909" height="575" alt="image" src="https://github.com/user-attachments/assets/77b382af-70ce-4abd-a6bb-bc351dadd6d3" />
This code/filtering in the style is no longer needed because tiles are available for every zoom level.
Path rewriting for source URLs is no longer needed because everything runs in Docker with the same proxying rules. No tiles with different URLs.
Nakaner
pushed a commit
that referenced
this pull request
Feb 22, 2026
Add test cases for web and tiles Fixes #86 Tasks: - [x] Download a small piece of OSM data (Berlin is already cached from the API tests) - [x] Import the data, verify import succeeded - [x] Generate tiles, verify tiles build - [x] start martin-cp and verify tile requests work - [x] Start Martin - [x] Start API - [x] Start proxy - [x] Run web browser tests, viewing the page, making screenshots, searching and asserting some basic things on the screen. - [x] Reuse built artifacts
Currently they are rather white in color, making them harder to distinguish from Zs3 signals.
To reduce the imported data a tiny bit.
Fixes #802. Currently routes and search results cannot be deselected once shown. This pull request adds a button that is shown when a route is selected. Clicking the button will remove the route from the map again. The "hide route" button has a pink outline, just like the routes, to associate it with the routes. The "hide search results" button has a green outline when there are search results, to associate it with the search. Route: <img width="1115" height="401" alt="image" src="https://github.com/user-attachments/assets/d9e92474-a582-4349-9fa8-80a072cfca9a" /> Search results: <img width="1433" height="646" alt="image" src="https://github.com/user-attachments/assets/1fa17dd6-0d49-470e-8036-e1bf522c234f" /> <img width="706" height="418" alt="image" src="https://github.com/user-attachments/assets/159105a0-c3f0-4d3b-9fb9-b2ff0cccf0b1" />
Fixes #827 This is a regression from #824. Booleans were instead returned as optional booleans, `true`, `false` or `null`. The `null` values were not possible before, creating errors where the map style expected a boolean and not a null value. Switches and catenary masts work again: <img width="655" height="386" alt="image" src="https://github.com/user-attachments/assets/c091f6cb-6e47-4a65-911a-3278aa2270cf" /> <img width="779" height="549" alt="image" src="https://github.com/user-attachments/assets/71eb6f2e-f335-4603-98c0-77adefb10ad2" />
From comment in #544 (comment). Currently wiki languages are interpreted as countries, to display an emoji flag. But the emoji flag system only supports countries, not languages. As such, translation is error-prone. The easiest is to not display the flag at all for Wikipedia links. Reverts most of #556 (http://localhost:8000/#view=15.65/52.339521/4.894221): Before: <img width="1000" height="738" alt="image" src="https://github.com/user-attachments/assets/50a2bdec-c3d5-4915-b1df-63dc0e2fd637" /> After: <img width="1000" height="738" alt="image" src="https://github.com/user-attachments/assets/09590193-2f77-44cd-bca1-9f8aa2715622" />
- Added icons for primary signal states: C (Carré), Cv (Carré violet), S (Sémaphore), D (Disque), A (Avertissement), and ID (Indicateurs de directions) - Updated French parsing in signals_railway_signals.yaml to always display the most restrictive primary state for each signal - Ensures the rendered icon always represents the signal's primary state, independent of the target type --------- Co-authored-by: Hidde Wieringa <hidde@hiddewieringa.nl>
Part of #789 Implementation of https://wiki.openstreetmap.org/wiki/Cs:Original_tagging_of_Czech_railway_signals Also see #391 (comment) Icons designed by https://openstreetbrowser.org/#map=17/49.75606/13.50031&basemap=hot&categories=custom/d489fc1c1463352a6159941529e8c671 ## Testing ### Station distant signals (http://localhost:8000/#view=18.14/49.755008/13.501037&style=signals): <img width="685" height="423" alt="image" src="https://github.com/user-attachments/assets/d1b41ab8-2c91-478e-bdad-197d925f295a" /> (http://localhost:8000/#view=17.83/49.778896/13.718423&style=signals): <img width="685" height="423" alt="image" src="https://github.com/user-attachments/assets/8154dc94-72ce-422e-a33a-29bf9cdab011" /> Shortened (http://localhost:8000/#view=16.03/49.762986/13.501773&style=signals): <img width="813" height="534" alt="image" src="https://github.com/user-attachments/assets/92a3aa98-339a-459f-96cf-b0402b364828" /> ### Stop signals (http://localhost:8000/#view=16.2/49.767235/13.505628&style=signals): <img width="499" height="517" alt="image" src="https://github.com/user-attachments/assets/93ce7c6d-48ed-44b0-a877-d40407d7cd83" /> (http://localhost:8000/#view=18.67/49.7793714/13.5029451&style=signals): <img width="552" height="703" alt="image" src="https://github.com/user-attachments/assets/5a966fa0-8aa5-4197-9840-733d7d80ff90" /> (http://localhost:8000/#view=16.69/49.825953/13.578226&style=signals): <img width="518" height="441" alt="image" src="https://github.com/user-attachments/assets/c5d51ed3-a679-4997-bea2-a2c9656c6da1" /> ### Whistle (http://localhost:8000/#view=17.07/49.794716/13.490002&style=signals): <img width="813" height="534" alt="image" src="https://github.com/user-attachments/assets/fb9ce218-292f-478f-8cbc-cf00db2b2b4d" /> ### Resetting switch (http://localhost:8000/#view=18.48/49.8284769/13.5750067&style=signals): <img width="574" height="655" alt="image" src="https://github.com/user-attachments/assets/9e202b7a-cd8e-48e8-a45d-74eea638c50d" /> ### Crossing (http://localhost:8000/#view=17.2/49.823982/13.579852&style=signals): <img width="700" height="634" alt="image" src="https://github.com/user-attachments/assets/11afb905-f07d-4cd1-a847-58db73a2ce9f" /> ### Shunting Derailers with semaphore shunting signals (http://localhost:8000/#view=17.38/49.787501/13.495874&style=signals): <img width="535" height="580" alt="image" src="https://github.com/user-attachments/assets/a3162fd1-6e01-413d-b8ad-c73f922be44c" /> ### Distant signals Normal (http://localhost:8000/#view=17.6/49.764124/13.502116&style=signals): <img width="998" height="560" alt="image" src="https://github.com/user-attachments/assets/f163e5bf-652d-4319-a16d-b82fe7cbc6dc" /> Repeated (http://localhost:8000/#view=18.17/49.752077/13.509463&style=signals): <img width="998" height="560" alt="image" src="https://github.com/user-attachments/assets/d32c8735-75cc-4274-a208-01e168998c46" /> Shortened and entry distant signals do not exit yet. ### Main / Combined signals in station (http://localhost:8000/#view=16.72/49.701314/13.667077&style=signals): <img width="1420" height="865" alt="image" src="https://github.com/user-attachments/assets/84b5ac67-138d-4645-b001-9383f3786d7f" /> (http://localhost:8000/#view=17.06/49.74398/13.389809&style=signals): <img width="1420" height="865" alt="image" src="https://github.com/user-attachments/assets/5af23a2b-490a-4fa2-bbef-7b32231780f2" /> Sign, circle (http://localhost:8000/#view=17.39/49.76435/13.401474&style=signals): <img width="991" height="630" alt="image" src="https://github.com/user-attachments/assets/bbe7a16c-1184-46e0-b6ea-2cc02a0ea4d7" />
Fixes #807. In the attribution box, show the time since the last full download of the OpenStreetMap data. <img width="1037" height="303" alt="image" src="https://github.com/user-attachments/assets/961a3321-e37e-4b0a-8671-8ed8fc430ad0" /> Data image for nightly update contains timestamp: ```shell dive ghcr.io/hiddewie/openrailwaymap-data:latest ``` <img width="1594" height="181" alt="image" src="https://github.com/user-attachments/assets/f1464934-a87d-4258-932e-8f7b7cd8cecc" />
Also the disabled extensions were not present. `postgis` was already enabled.
fixed an error from last entry used "&" instead of "and" for the current names on OSM operators
Part of #441 Fixes #819 Import of references. They are the references with 200 or more usages worldwide from the list in #441 (comment). Implementation: store all references in a hash in the stations table, to ensure they can be searched generally. The station popup shows all station references, sorted by importance (order in the definition list). Search searches all known references, and the search results show the references next to the station names. The search option for UIC reference has been removed because it is automatically included in the reference search. The references are exported in the Taginfo output as well.
Part of #441. Import station references for stop areas, and render them in the popup for grouped stations. For example Malmö C, https://www.openstreetmap.org/node/25589138. with stop area https://www.openstreetmap.org/relation/2556732, where the Swedish community tag the Rikshållplats. <img width="704" height="741" alt="image" src="https://github.com/user-attachments/assets/58ff5220-04b1-4140-b1f0-6e687175f619" /> Search includes stop areas: <img width="898" height="450" alt="image" src="https://github.com/user-attachments/assets/25366026-9ba1-4e77-bf92-a0db04321442" />
This improves two German tram signals as part of #811. ### Departure signals A 1 / A 2 Currently, at departure signals ([documentation](https://wiki.openstreetmap.org/wiki/DE:OpenRailwayMap/Tagging_Trams_in_Germany#Abfertigungssignale_(A))) which can show both the A 1 and A 2 aspect, only the A 2 one is rendered. This PR fixes that. #### Example ([12377252458](https://www.openstreetmap.org/node/12377252458)) <img width="442" height="472" alt="Screenshot 2026-03-01 162702" src="https://github.com/user-attachments/assets/d1f01920-6eab-4e53-a862-839f52f97d09" /> ### Fahrsignal The Fahrsignal `DE-BOStrab:f` ([documentation](https://wiki.openstreetmap.org/wiki/DE:OpenRailwayMap/Tagging_Trams_in_Germany#Fahrsignale_(F))) has two problems at the moment: * The F 0 aspect is not rendered. Instead, every Fahrsignal has an additional "empty" signal light. I don't know whether this was an intentional choice, but (as noted in #811) this makes it impossible to distinguish (rare) signals without an F 0 aspect. * Signals where the states are not explicitly tagged are not rendered at all. There is a `tram Fahrsignal (unknown)` in the signal specification, but this is never reached as these signals also match the section above. This PR makes the following changes: * The F 0 aspect is rendered when tagged. * The rendering of the additional "empty" signal light is removed. * Instead, an additional empty light is rendered if there are further, untagged aspects (indicated by a `?` in `railway:signal:main:states`). This allows to visually distinguish signals which are tagged completely from those which are not. It also ensures that (as before) no signals are rendered with only one light, as this looks not nice – except for the case where there really is only one light on the ground (see example). * Signals without any tagged states are now rendered, as the "normal" Fahrsignal now matches only to those signals where at least one state has been tagged. * For this case, I replaced the previous symbol `de/bostrab/f-unknown` (traffic light showing a question mark) by `de/bostrab/f0-old` (traffic light showing F 0). I think this is better since it allows to visually recognize the signal as a Fahrsignal (as opposed to e.g. a switch signal which also "looks like a traffic light"). There are several hundred Fahrsignale without tagged states. Almost every Fahrsignal has an F 0 aspect, which is also why F 0 was the default icon for the Fahrsignal before the more detailed rendering was introduced. #### Examples (before/after) typical case ([13015719193](https://www.openstreetmap.org/node/13015719193)) <img width="210" height="198" alt="Screenshot 2026-03-01 165253" src="https://github.com/user-attachments/assets/564be6bd-204f-4010-81b5-305ae7255d83" /><img width="205" height="197" alt="Screenshot 2026-03-01 165304" src="https://github.com/user-attachments/assets/11d16675-38a6-45c2-aec5-c932ec61a092" /> without specified states ([10963864069](https://www.openstreetmap.org/node/10963864069)) <img width="313" height="284" alt="Screenshot 2026-03-01 162616" src="https://github.com/user-attachments/assets/0b48a8b2-c24e-43ca-8352-39d7c9e08bc3" /><img width="299" height="268" alt="Screenshot 2026-03-01 162627" src="https://github.com/user-attachments/assets/7187b65f-797c-4358-b127-946075e96858" /> without F 0 state ([13015719198](https://www.openstreetmap.org/node/13015719198)) <img width="226" height="194" alt="Screenshot 2026-03-01 165147" src="https://github.com/user-attachments/assets/d2d9af1f-4715-4e5c-b2d2-8dfff03c74ce" /><img width="201" height="174" alt="Screenshot 2026-03-01 165153" src="https://github.com/user-attachments/assets/5e8f25a9-03ad-421a-ba46-1e9dd8a0c82f" /> with additional `?` states (on the left, [13449257639](https://www.openstreetmap.org/node/13449257639)) <img width="205" height="174" alt="Screenshot 2026-03-01 165945" src="https://github.com/user-attachments/assets/d33f4c5f-7738-4a96-b08f-908e6fd70234" /><img width="202" height="176" alt="Screenshot 2026-03-01 165959" src="https://github.com/user-attachments/assets/33eff484-1b38-423b-910d-e245abe75388" />
This is a regression from #832, noticed in #832 (comment). The variable `value` was overwritten by the formatted key/value pairs in the body of the popup items. After this pull request <img width="642" height="382" alt="image" src="https://github.com/user-attachments/assets/7446e820-2aef-42af-85b3-8e9b0b02a34a" />
This adds a symbol for unknown slope signals (in grey like other low priority signals). Before/after ([1504400550](https://www.openstreetmap.org/node/1504400550)): <img width="186" height="147" alt="Screenshot 2026-03-10 125728" src="https://github.com/user-attachments/assets/bc4c3000-99f7-4673-aa0e-e68710ab9f90" /> <img width="151" height="127" alt="Screenshot 2026-03-10 130309" src="https://github.com/user-attachments/assets/26e674d7-04ed-4f4d-b347-22f0da6cc418" />
Merge classes "tarcze zaporowe" into one (differentiate by form) - before that, somehow, semaphore minor Tz signals weren't displayed at all (eg. https://openrailwaymap.app/#view=18.73/52.5293808/17.6071616&style=signals) --------- Co-authored-by: Hidde Wieringa <hidde@hiddewieringa.nl>
This adds the slope signal for the UK. Documentation: https://wiki.openstreetmap.org/wiki/OpenRailwayMap/Tagging_in_the_United_Kingdom#Gradient_post ### Examples Board shape: [13565427184](https://www.openstreetmap.org/node/13565427184) <img width="237" height="201" alt="Screenshot 2026-03-10 032425" src="https://github.com/user-attachments/assets/6da79927-b000-4c9e-99a0-82c0be31f41b" /> Arms shape: (test only, not yet used in OSM) <img width="219" height="200" alt="Screenshot 2026-03-10 034142" src="https://github.com/user-attachments/assets/c1ef1e2b-ef5d-4ce5-a4b9-5c213ef3c7ea" /> --------- Co-authored-by: Hidde Wieringa <hidde@hiddewieringa.nl>
This selects the best image according to [Wikidata rank](https://www.wikidata.org/wiki/Help:Ranking), which is not necessarily the earliest image in the API response. Fixes #849. Also migrates to the REST API endpoint for the flatter, cleaner response structure. --------- Co-authored-by: Hidde Wieringa <hidde@hiddewieringa.nl>
See changes on wiki in https://wiki.openstreetmap.org/w/index.php?title=OpenRailwayMap/Tagging_in_Belgium&diff=0&oldid=2948607 Part of #763 Followup on #821 On http://localhost:8000/#view=18.47/50.8828234/4.3905015&style=signals: <img width="1019" height="706" alt="image" src="https://github.com/user-attachments/assets/777a02a0-5af2-4b2f-8f74-ace13bb58963" />
Adds rear clear marker/indicator. Adds engineering stop board (these are used permanently/semi-permanently). Tagging ~~will be~~ added ~~shortly~~ to the wiki. Examples can be found at Reading (rear clear), and Ashford Depot (engineering stop board).
Part of #848 In addition to querying the images from WikiData, we also need to query the WikiMedia Commons API to determine the image file metadata. Example query from WikiMedia Commons: https://www.wikidata.org/w/api.php?action=query&prop=imageinfo&iiprop=extmetadata&titles=File%3aReading_Station_drone_view.jpg&format=json
From discussion in #371 Fixes #858 The proposal in https://wiki.openstreetmap.org/wiki/Proposal:Unified_ETCS_Signals_(railway) has been approved. The result is being documented on https://wiki.openstreetmap.org/wiki/OpenRailwayMap/ETCS_Markers. Now we can implement the proposal 🎉 Tested on the first tagged signals with the new tagging (https://overpass-turbo.eu/s/2mes), for example https://www.openstreetmap.org/node/13649914353: (http://localhost:8000/#view=14.02/50.27029/11.01936&style=signals): <img width="1344" height="649" alt="image" src="https://github.com/user-attachments/assets/462c8a5f-a0c6-47c7-b525-a3c043a0a48a" /> <img width="690" height="1250" alt="image" src="https://github.com/user-attachments/assets/d6479ed3-d3e6-49b9-a2c7-328e264c5da0" />
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Hi!
Over the past years I have been working on a fork of the OpenRailwayMap.
The announcement can be found on the OpenRailwayMap mailing list and on the OpenStreetMap community forum.
The fork has several features, and is actively being developed by me and several more contributors:
At the moment the fork is hosted on https://openrailwaymap.app using Fly.io. This is purely practical, it could be hosted anywhere else.
This pull request is a starter to discuss:
openrailwaymap.org?These are open questions, any response is appreciated!