(Many contributors this time! So I have to split the post much earlier in order to work around the limit of 10 user mentions per post).
Fighting abuse
- We tweaked headers to prevent redirects to the login page from being cached. (@TomH)
- The robots.txt file now lists some additional pages where robots were getting stuck in. (@pnorman)
- We integrated Cloudflare Turnstile into the signup page to protect against automated abuse (@TomH)
- To help tile servers verify requests, all pages with maps are now sending TOTP cookies. (@TomH)
Behind the scenes
- There’s now a new way to handle notifications in the website. You won’t see anything new in the UI just yet, but this will remove some blockers we have had for a while in this department. The groundwork for this integration included refactoring existing code to better suit the new library and writing missing tests, and was followed by changes to the configuration of job queues and the conversion of existing notifications to use the new system (one, two). (@pablobm, @TomH)
- We chipped away at the lint warnings, correcting one pending RuboCop rule, simplifying our Herb configuration and adapting to meet newly-enabled Herb rules (one, two, three, four). (@TomH, @hlfan)
- Programmers don’t like duplication in their code. That’s why we reduced it in our JavaScript, our templates, our tests, our asset handling, where we source our icons from, and generally when parsing HTML. (@hlfan, @pablobm, @TomH)
- We also don’t like inconsistency! We’ll avoid it even for small things like file names. (@hlfan)
- Little by little, we make things more efficient, with better handling of relations, leveraging HTTP2 when requesting tiles, and ensuring that SVG are optimised, as well as by deleting unused code. (@pablobm, @TomH)
- We improved the macOS development environment by adapting a test (one, two), giving an option to disable parallel tests, and updating the docs. (@pablobm, @TomH)
- And finally, we upgraded Rails to version 8.1.3 (and previously to 8.1.2.1). (@TomH)
We also had little help from our friends @Minh_Nguyen, Nikerabbit, @Firefishy, marcoroth, and mjourdan, who provided reviews to check we were not doing anything silly!
OSM is for everyone and it speaks your language
The website is currently available in 111 languages and counting! This would not be possible without the work of our team of translators, which this month saw the first contributions by FL2226 (Italian)
Moonborn (Cyrillic Kazakh), Neriah (Hebrew), Serieminou (French), Tuwewanzi (Lakota), @wouterko (Dutch), Sikmir (Finnish, Russian), @MaliMrav (Serbian), and Mo.Hajeer (Arabic). You can help too! Visit Translation - OpenStreetMap Wiki to learn about it.