Releases: openstreetmap/iD
v2.40.0
📣 Release Highlights
New rendering style for shared bike and foot paths
The new style indicates a way that is designated for bike and foot traffic in cases where we have established tagging for this kind of infrastructure:
highway=path: Whenbicycle+foot=designatedare explicitly tagged, the way is displayed in our new, shared infrastructure style.highway=cycleway: Whenfoot=designatedis present, the way is displayed in our new, shared infrastructure style (bicycle=designatedcan, but does not have to be tagged as it is implicit by thehighway=cyclewaytag)highway=footway: does not change, regardless of the presence ofbicycle+foot=designatedtags, because there is no established tagging that fits this new style
Dynamic level of detail for created circular objects
This leads to more accurately round geometries for large circular objects like large roundabouts, etc., and at the same time also reduces the previously sometimes slightly excessive number of nodes produced used on small round objects like circular huts, etc.
Fixed and improved tag-cleanup when changing presets
This improves how tags are handled when the preset of an object is changed. The goal is to prevent straggling tags to remain on the OSM object after changing its preset: For example, when a POI changes in the real world from a restaurant to a shop, it does not make sense for the restaurant's cuisine tag to be preserved in the shop POI.1
Now, only tags are preserved that are also valid tags of the newly applied preset. For the example above, general attributes like the address and phone number would be preserved, but restaurant-specific tags like the cuisine or dietary options would be removed.
As this is a relatively big change compared to how iD previously handled tags when changing presets, please report any bugs, inconsistencies or other oddities you notice.
Full Changelog
✨ Usability & Accessibility
- Render shared bicycle/foot paths with a dedicated colour (#10256, thanks @k-yle)
- Expand input element of multi-combo fields while typing to fit content (#12169)
- When searching presets, include presets when the preset label is included in the search input (#12159, thanks @matkoniecz)
✂️ Operations
- Create fewer points when circularizing small features (and vice versa): the number of vertices in the resulting circle is now dynamic between a 12 and 32 depending on the radius of the circle (instead of always resulting in 19 nodes) (#12139)
- Correctly split a way on all selected vertices when three or more nodes are selected (#12120)
✅ Validation
- Treat most aerialways as part of the routable network when checking other ways' connectivity (#9406)
- Only consider well known tags containing URLs during website validation (#12178, thanks @bhavyaKhatri2703)
- Sort full issues list by issue type first (instead of only by distance from map center), such that similar issues are always listed next to each other (#9017)
- For disconnected routable multipolygon areas: report the relation in the validation warning (#12245)
🐛 Bugfixes
- Prevent duplicate nodes from being created while using spacebar key to draw a way (#12051)
- Fix some tags automatically deleted when re-selecting the same preset (#12070, thanks @k-yle)
- Fix a bug that caused
step_countto be set toNaNwhen merging features with non-numeric step count values (#12110, thanks @JaiswalShivang) - Fix a bug that caused duplicates of new notes to appear when such a note is dragged on the map (#9092)
- Prevent keyboard shortcuts from triggering an additional input after their action is performed (#9071)
- Include
railwayandbuildingfeatures with lifecycle status only in past/future features category (#9058) - Disable autocomplete on changeset comment box on mobile Firefox to work around buggy/glitchy behavior of the input field (#9011)
- Fix crash when trying to delete a single-node way (#9007)
- Make sure the available options of multi/semi-combo fields are updated properly when a previous tag change caused a change of the feature's preset (#12217)
- Handle OSM API responses with 200 status code, but a runtime
errorin the response (#6454) - Keep
natural=coastlinetag on outer way of created multipolygon when combining areas (#11818, thanks @Kaushik4141) - Show correct cursor on headings of quality assurance results in the sidebar (#12276, thanks @Quantum-Cucumber)
- Fix exception when a
onewayCheckfield is present on a non-way feature (e.g. a ferry route) (#12272) - Make sure that
disable_featuresparameter from URL hash is not overwritten by locally cached value from last session - Fix feature filter falsely hiding boundary relation members while in dragging mode when other features are hidden (#12267)
- Make sure long autocomplete-suggestions in input fields do not scroll the input field beyond the cursor location in Firefox
🚀 Presets
- Standardize tooltips in combo boxes: always show (full) raw tag, don't duplicate the already rendered titles, and show descriptions from wiki/taginfo where available (#12010, thanks @tordans)
- Use full width for the dropdown box for the values of the
accessfield (#12065) - Preserve the order of options when a combo field accepts both static options as well as autosuggestions from taginfo and display additional tag values from taginfo as raw-options only (#12117)
- When removing tags while changing presets: include all tags associated with
localized,multiComboanddirectionalCombofields (#12075, #11696) - Preserve all feature tags when changing to a new preset that includes the old preset's primary tags as a field (#12071)
🔨 Development
- Replace
sinonwithvitest's built in spy/mock library (#12058) - Add type annotations to
context.jsmodule (#11589, thanks @k-yle) - Drop
netlify-clidependency and run it during CI vianpx(#12237)
v2.39.6
v2.39.5
v2.39.4
- Fix title of preset search results not updating correctly (#12050, thanks @bhavyaKhatri2703)
- Fix user images and upload help text from showing up as duplicates in upload dialog (#12063)
- Fix crash when a checkbox-field is rendered using a custom (non-
yes/no) value (#12078)
v2.39.3
v2.39.2
v2.39.0
✨ Usability & Accessibility
- Increase number of displayed recently used presets to 8 (from 4) (#9545, thanks @k-yle)
- Always render icons for
craftfeatures mapped as areas (#9183) - Change labeling of route relation to show icons,
refand route colours (#11052) - Render the
turnout_sideof railway switches (#11944, thanks @hlfan) - Show descriptions of preset field options directly in the combobox dropdown menu in slightly smaller font size (#11876, thanks @Sembauke)
- Render "outside" side of guardrails with small dots (#9594)
✂️ Operations
- Show a preview of the result of some geometry operations while the respective button in the edit menu is hovered (#11778)
- Preserve tagged nodes from being moved around too much when circularizing a feature (#8265)
📷 Street-Level
- Show username of Mapilio photos (#9903, thanks @sezerbozbiyik)
- Fix mouse wheel zooming on 360° photos using the pannellum viewer (e.g. the ones from Panoramax) (#11995)
✅ Validation
- Make wording of fix for overlapping features validator less ambiguous (#9888, thanks @k-yle)
- Skip
disconnected_wayvalidation for Golf Paths (#11863, thanks @Kayd-06) - Also suggest to remove deprecated tag when the object already has the corresponding new tag (#9272)
- Add explanation how to fix "point should be vertex" validation warning (#10958)
- Suggest to "reposition features" before other fixes when the validator found overlapping buildings (#11329)
🐛 Bugfixes
- Fix the sorting of tag values when multiple objects' tags are combined in
utilCombinedTags(#11932, thanks @JaiswalShivang) - Don't change the value of
railway:turnout_sidewhen reversing a railway track (#11645) - Fix a bug where the squaring operation would remove a whole corner if it had duplicate vertices (same coordinates, but different node ids) at that point (#9155)
- Fix crash when uploading changesets with more than 10,000 features (#11388, thanks @k-yle)
- Preserve relation memberships when an area is automatically converted from a closed way to a multipolygon or vice versa during a merge or split operation (#9064, #12024)
- Make sure tooltips of the map menu are not clipped on the top/bottom of the map (#11017, thanks @mykh-hailo)
🌏 Localization
- Support territory-level phone hints (#10904, thanks @Vectorial1024)
- Add phone and address format for Moldova (#11965, #11976, thanks @Oni-DOS)
🚀 Presets
- When changing presets, delete tags from the old preset which are not in the new preset (#11696, thanks @k-yle)
🔨 Development
- Use
<details>element for collapsible disclosure content (#11952, thanks @Shrinks99) - Use JSON endpoints for (almost) all OSM APIs (#11661, thanks @k-yle)
- Replace
lodashwithes-toolkit(#12016, thanks @tordans) - Replace
fast-deep-equalswithfast-equals(#12021, thanks @tordans) - Add type definitions to some util functions (#11993, thanks @k-yle)
- Localizer module: allow string replacements to use callback functions (#11347)
v2.38.0
✨ Usability & Accessibility
- Show warning when attempting to paste but nothing has been copied (#9401, thanks @omsaraykar)
- Don't suggest values from Taginfo for
addr:*tags (#11733, thanks @k-yle) - Don't suggest values from Taginfo for tags with less than 100 uses, even if they're documented on the wiki (#11794, thanks @Kaushik4141)
- Don't suggest values from Taginfo for keys that should only be used on changesets, such as
hashtags(#11697, thanks @bhavyaKhatri2703) - Handle
<key>=left|right|bothin thedirectionalComboUI to enable support forsidewalk=left|right|bothin the future (#10935, thanks @tordans, @k-yle) - Update tag list for paved/semipaved
surfaces (ffc7e21) - Add dedicated rendering style for
highway=ladderways (#11804, thanks @bhavyaKhatri2703)
✂️ Operations
- Display reflection axis on the map while hovering the reflection operations in the edit menu (#11774, thanks @Kaushik4141)
✅ Validation
- Don't error on features with a sole
notetag (#11522) - Warn when two features cross each other on same
layer, regardless ofbridge/tunneltags (#10999, thanks @homersimpsons) - Add
railway=crossingtag when connecting two railways using the validation fix (#9226, thanks @paulklie) - Enable validation of invalid URLs in tags like
website(#6831, #11499, thanks @hlfan)
🐛 Bugfixes
- Fix typo:
parking:left:capacityduplicated in osmSummableTags, missingparking:right:capacity(#11819, thanks @JaiswalShivang) - Fix some gpx/geojson properties not visible, such as numbers or complex data structures (#11636, thanks @k-yle)
- Fix error setting custom background (#11862, thanks @Kayd-06)
- Fix crash when commenting/closing notes when the note is closed by another mapper in the meantime (#8464)
- Fix confusing 'Point should be a point' warning (#11589, thanks @k-yle)
- Let presets fall back to base point/line/area presets if there is no matching preset in the current region (cbeb0d5)
- Properly skip tag suggestions for tags ending in
_1(#11633, thanks @k-yle) - Skip
emergencyaccess tags when determining whether a feature should be an area or not (#11327) - Correctly show special characters in names of background layers (#11773, thanks @Kaushik4141)
- Fix a bug where the validator mixed up point and vertex in some warning messages (#11590, thanks @k-yle)
- Fix some icons having the wrong background color in dark mode (#11657, thanks @hlfan)
🌏 Localization
- Add Moroccan phone number and address formats (#11651, #11698, thanks @ilias52730)
- The Languages field shows language names in your preferred language. (#11699, thanks @Razen04)
- When viewing the help information for tags or presets, use locale-specific properties if available (#11760, thanks @k-yle)
- Show country names in your preferred language and country flag emoji in the Country field dropdown (#11783, thanks @Razen04)
- Allow language codes of language variants (e.g.
name:zh-Latn-pinyin) in multilingual name fields (be0a20e)
⌛ Performance
🎓 Walkthrough / Help
- Update help text about street level imagery providers (#11560, thanks @danieldegroot2)
🚀 Presets
- Add dedicated styling for
highway=ladderto make it distinguishable fromhighway=steps(#11799, thanks @bhavyaKhatri2703) - Make fields more rubust when options are undefined (#11533, thanks @hlfan)
- make
addr:floorsubfield of the address field narrow by default (b064967)
🔨 Development
- Change package name to
@openstreetmap/idto be able to publish releases on npm - Use Röntgen icon set directly from upstream npm package (#11784, thanks @tordans)
- Replace deprecated
document.createEvent/initEventwith modern Event constructor ([#11871], thanks [@JaiswalShivang]) - Fix crash in country combo field when entering unrecognized ISO country codes (#11904, thanks @JaiswalShivang)
- Upgrade clipboard functionality with modern Clipboard API (#11869, thanks @tulavamsidheeraj)