Skip to content

Commit 96e9cf4

Browse files
authored
bump to v3.18.0 (#2809)
1 parent c81f032 commit 96e9cf4

File tree

21 files changed

+172
-7
lines changed

21 files changed

+172
-7
lines changed

CHANGELOG.md

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,51 @@ All notable changes to this project will be documented in this file.
44
The format is based on
55
[Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
66

7+
## [v3.18.0] - 2026-03-18
8+
9+
Released with [maproulette-backend_v4.8.5](https://github.com/maproulette/maproulette-backend/releases/tag/v4.8.5)
10+
11+
## What's Changed
12+
* Bump lodash-es from 4.17.21 to 4.17.23 by @dependabot[bot] in https://github.com/maproulette/maproulette3/pull/2772
13+
* Bump diff from 5.2.0 to 5.2.2 by @dependabot[bot] in https://github.com/maproulette/maproulette3/pull/2770
14+
* Bump lodash from 4.17.21 to 4.17.23 by @dependabot[bot] in https://github.com/maproulette/maproulette3/pull/2773
15+
* Add FUNDING.yml for custom funding link by @CollinBeczak in https://github.com/maproulette/maproulette3/pull/2781
16+
* Make more strings translatable by @CollinBeczak in https://github.com/maproulette/maproulette3/pull/2774
17+
* fix issue where feature layer gets messed up when locator overlay layer is added by @CollinBeczak in https://github.com/maproulette/maproulette3/pull/2775
18+
* fix expected prop types in task history list and image marker layer by @CollinBeczak in https://github.com/maproulette/maproulette3/pull/2777
19+
* fix component unmounting errors by @CollinBeczak in https://github.com/maproulette/maproulette3/pull/2778
20+
* fix issue where taskBundleId is deleted after challenge is created by @CollinBeczak in https://github.com/maproulette/maproulette3/pull/2779
21+
* fix user profile metric updates between users by @CollinBeczak in https://github.com/maproulette/maproulette3/pull/2783
22+
* fix cloned challenge osmIdProperty issue by @CollinBeczak in https://github.com/maproulette/maproulette3/pull/2785
23+
* change the get help footer element to say documentation by @CollinBeczak in https://github.com/maproulette/maproulette3/pull/2782
24+
* Import leaflet and mapillary CSS from npm packages, not unpkg.com by @jake-low in https://github.com/maproulette/maproulette3/pull/2786
25+
* fix markdown links and Mustache Tag Replacement by @CollinBeczak in https://github.com/maproulette/maproulette3/pull/2780
26+
* Bump ajv from 6.12.6 to 6.14.0 by @dependabot[bot] in https://github.com/maproulette/maproulette3/pull/2790
27+
* Update default editor messages in Profile component for clarity by @CollinBeczak in https://github.com/maproulette/maproulette3/pull/2805
28+
* Add ScaleControl to various map components by @CollinBeczak in https://github.com/maproulette/maproulette3/pull/2802
29+
* Add a copy tags to clipboard button to item popup in the map view. by @watmildon in https://github.com/maproulette/maproulette3/pull/2798
30+
* Bump immutable from 4.3.4 to 4.3.8 by @dependabot[bot] in https://github.com/maproulette/maproulette3/pull/2795
31+
* Bump minimatch by @dependabot[bot] in https://github.com/maproulette/maproulette3/pull/2794
32+
* Bump rollup from 4.41.0 to 4.59.0 by @dependabot[bot] in https://github.com/maproulette/maproulette3/pull/2793
33+
* Enhance leaderboard functionality by deduplicating entries based on userId. by @CollinBeczak in https://github.com/maproulette/maproulette3/pull/2803
34+
* Add recommended layout functionality to WidgetWorkspace by @CollinBeczak in https://github.com/maproulette/maproulette3/pull/2806
35+
* Update translations and improve user prompts across multiple languages by @CollinBeczak in https://github.com/maproulette/maproulette3/pull/2807
36+
* Add GeoJSON upload functionality to ChallengeDetail component by @CollinBeczak in https://github.com/maproulette/maproulette3/pull/2808
37+
38+
## MR2 Changes
39+
* disable review on deleted disabled and skipped tasks by @CollinBeczak in https://github.com/maproulette/maproulette-backend/pull/1208
40+
* Add CURRENT_MONTH constant and update SQL time clause for month duration 0 in LeaderboardHelper (#1206) by @CollinBeczak in https://github.com/maproulette/maproulette-backend/pull/1217
41+
* Enhance ChallengeProvider error handling for task building failures by @CollinBeczak in https://github.com/maproulette/maproulette-backend/pull/1216
42+
* Add leaderboard_opt_out parameter to LeaderboardService (#1206) by @CollinBeczak in https://github.com/maproulette/maproulette-backend/pull/1215
43+
* Add polygon geometry check for bounding box validation in Challenge model by @CollinBeczak in https://github.com/maproulette/maproulette-backend/pull/1214
44+
* fix "deletion already in-progress" bug by @CollinBeczak in https://github.com/maproulette/maproulette-backend/pull/1156
45+
* add changeset source to submitOsmChange by @CollinBeczak in https://github.com/maproulette/maproulette-backend/pull/1186
46+
* fix some task review status not found and locking bugs by @CollinBeczak in https://github.com/maproulette/maproulette-backend/pull/1207
47+
* Fix bug where PUT /challenge/:id discarded the datasetUrl field by @jake-low in https://github.com/maproulette/maproulette-backend/pull/1213
48+
* Ignore pidfile when running in Docker by @jake-low in https://github.com/maproulette/maproulette-backend/pull/1212
49+
50+
**Full Changelog**: https://github.com/maproulette/maproulette3/compare/v3.17.19...v3.18.0
51+
752
## [v3.17.19] - 2025-12-16
853

954
Released with [maproulette-backend_v4.8.3](https://github.com/maproulette/maproulette-backend/releases/tag/v4.8.3)

lang/af.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -926,6 +926,11 @@
926926
"Form.textUpload.promptGeoJSON": "Drop GeoJSON file here or click to select file",
927927
"Form.textUpload.promptJSON": "Drop JSON file here or click to select file",
928928
"Form.textUpload.readonly": "Existing file will be used",
929+
"GeoJSONUploadModal.dropzone.label": "Drop a GeoJSON file here or click to upload",
930+
"GeoJSONUploadModal.error.invalid": "Invalid GeoJSON: {error}",
931+
"GeoJSONUploadModal.error.noPolygons": "No Polygon features found in file",
932+
"GeoJSONUploadModal.header": "Create Virtual Challenge from GeoJSON",
933+
"GeoJSONUploadModal.success.polygonsLoaded": "{count, plural, one {# polygon} other {# polygons}} loaded",
929934
"GlobalActivity.title": "Global Activity",
930935
"Grant.Role.admin": "Admin",
931936
"Grant.Role.read": "Read",
@@ -1394,6 +1399,7 @@
13941399
"TaskClusterMap.controls.search.label": "Search",
13951400
"TaskClusterMap.controls.selectAllInView.label": "Select All In View",
13961401
"TaskClusterMap.controls.toggleLegend.label": "Toggle Legend",
1402+
"TaskClusterMap.controls.uploadGeoJSON.label": "Upload GeoJSON",
13971403
"TaskClusterMap.controls.zoomIn.label": "Zoom In",
13981404
"TaskClusterMap.controls.zoomOut.label": "Zoom Out",
13991405
"TaskClusterMap.message.moveMapToRefresh.label": "Click to show tasks",

lang/cs_CZ.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -926,6 +926,11 @@
926926
"Form.textUpload.promptGeoJSON": "Drop GeoJSON file here or click to select file",
927927
"Form.textUpload.promptJSON": "Drop JSON file here or click to select file",
928928
"Form.textUpload.readonly": "Bude použit existující soubor",
929+
"GeoJSONUploadModal.dropzone.label": "Drop a GeoJSON file here or click to upload",
930+
"GeoJSONUploadModal.error.invalid": "Invalid GeoJSON: {error}",
931+
"GeoJSONUploadModal.error.noPolygons": "No Polygon features found in file",
932+
"GeoJSONUploadModal.header": "Create Virtual Challenge from GeoJSON",
933+
"GeoJSONUploadModal.success.polygonsLoaded": "{count, plural, one {# polygon} other {# polygons}} loaded",
929934
"GlobalActivity.title": "Globální aktivita",
930935
"Grant.Role.admin": "Administrátor",
931936
"Grant.Role.read": "Čtení",
@@ -1394,6 +1399,7 @@
13941399
"TaskClusterMap.controls.search.label": "Search",
13951400
"TaskClusterMap.controls.selectAllInView.label": "Select All In View",
13961401
"TaskClusterMap.controls.toggleLegend.label": "Toggle Legend",
1402+
"TaskClusterMap.controls.uploadGeoJSON.label": "Upload GeoJSON",
13971403
"TaskClusterMap.controls.zoomIn.label": "Zoom In",
13981404
"TaskClusterMap.controls.zoomOut.label": "Zoom Out",
13991405
"TaskClusterMap.message.moveMapToRefresh.label": "Click to show tasks",

lang/da_DK.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -926,6 +926,11 @@
926926
"Form.textUpload.promptGeoJSON": "Slip GeoJSON-filen her, eller klik for at vælge fil",
927927
"Form.textUpload.promptJSON": "Slip JSON-filen her eller klik for at vælge fil",
928928
"Form.textUpload.readonly": "Eksisterende fil vil blive brugt",
929+
"GeoJSONUploadModal.dropzone.label": "Drop a GeoJSON file here or click to upload",
930+
"GeoJSONUploadModal.error.invalid": "Invalid GeoJSON: {error}",
931+
"GeoJSONUploadModal.error.noPolygons": "No Polygon features found in file",
932+
"GeoJSONUploadModal.header": "Create Virtual Challenge from GeoJSON",
933+
"GeoJSONUploadModal.success.polygonsLoaded": "{count, plural, one {# polygon} other {# polygons}} loaded",
929934
"GlobalActivity.title": "Global aktivitet",
930935
"Grant.Role.admin": "Admin",
931936
"Grant.Role.read": "Læs",
@@ -1394,6 +1399,7 @@
13941399
"TaskClusterMap.controls.search.label": "Søg",
13951400
"TaskClusterMap.controls.selectAllInView.label": "Vælg alt i visningen",
13961401
"TaskClusterMap.controls.toggleLegend.label": "Slå kortforklaring til/fra",
1402+
"TaskClusterMap.controls.uploadGeoJSON.label": "Upload GeoJSON",
13971403
"TaskClusterMap.controls.zoomIn.label": "Zoom ind",
13981404
"TaskClusterMap.controls.zoomOut.label": "Zoom ud",
13991405
"TaskClusterMap.message.moveMapToRefresh.label": "Klik for at vise opgaver",

lang/de.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -926,6 +926,11 @@
926926
"Form.textUpload.promptGeoJSON": "GeoJSON-Datei hier ablegen oder klicken, um eine Datei auszuwählen",
927927
"Form.textUpload.promptJSON": "JSON-Datei hier ablegen oder klicken, um eine Datei auszuwählen",
928928
"Form.textUpload.readonly": "Vorhandene Datei wird verwendet",
929+
"GeoJSONUploadModal.dropzone.label": "Drop a GeoJSON file here or click to upload",
930+
"GeoJSONUploadModal.error.invalid": "Invalid GeoJSON: {error}",
931+
"GeoJSONUploadModal.error.noPolygons": "No Polygon features found in file",
932+
"GeoJSONUploadModal.header": "Create Virtual Challenge from GeoJSON",
933+
"GeoJSONUploadModal.success.polygonsLoaded": "{count, plural, one {# polygon} other {# polygons}} loaded",
929934
"GlobalActivity.title": "Weltweite Aktivität",
930935
"Grant.Role.admin": "Administrator",
931936
"Grant.Role.read": "Lesen",
@@ -1394,6 +1399,7 @@
13941399
"TaskClusterMap.controls.search.label": "Search",
13951400
"TaskClusterMap.controls.selectAllInView.label": "Select All In View",
13961401
"TaskClusterMap.controls.toggleLegend.label": "Toggle Legend",
1402+
"TaskClusterMap.controls.uploadGeoJSON.label": "Upload GeoJSON",
13971403
"TaskClusterMap.controls.zoomIn.label": "Zoom In",
13981404
"TaskClusterMap.controls.zoomOut.label": "Zoom Out",
13991405
"TaskClusterMap.message.moveMapToRefresh.label": "Klicke, um Aufgaben anzuzeigen",

lang/es.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -926,6 +926,11 @@
926926
"Form.textUpload.promptGeoJSON": "Arrastra el archivo GeoJSON aquí o haz clic para seleccionar el archivo",
927927
"Form.textUpload.promptJSON": "Arrastra el archivo JSON aquí o haz clic para seleccionar el archivo",
928928
"Form.textUpload.readonly": "Se utilizará el archivo existente",
929+
"GeoJSONUploadModal.dropzone.label": "Drop a GeoJSON file here or click to upload",
930+
"GeoJSONUploadModal.error.invalid": "Invalid GeoJSON: {error}",
931+
"GeoJSONUploadModal.error.noPolygons": "No Polygon features found in file",
932+
"GeoJSONUploadModal.header": "Create Virtual Challenge from GeoJSON",
933+
"GeoJSONUploadModal.success.polygonsLoaded": "{count, plural, one {# polygon} other {# polygons}} loaded",
929934
"GlobalActivity.title": "Actividad global",
930935
"Grant.Role.admin": "Administrador",
931936
"Grant.Role.read": "Lectura",
@@ -1394,6 +1399,7 @@
13941399
"TaskClusterMap.controls.search.label": "Buscar",
13951400
"TaskClusterMap.controls.selectAllInView.label": "Seleccionar todo en la vista",
13961401
"TaskClusterMap.controls.toggleLegend.label": "Mostrar/ocultar leyenda",
1402+
"TaskClusterMap.controls.uploadGeoJSON.label": "Upload GeoJSON",
13971403
"TaskClusterMap.controls.zoomIn.label": "Acercar zoom",
13981404
"TaskClusterMap.controls.zoomOut.label": "Alejar zoom",
13991405
"TaskClusterMap.message.moveMapToRefresh.label": "Haz clic para mostrar las tareas",

lang/fa_IR.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -926,6 +926,11 @@
926926
"Form.textUpload.promptGeoJSON": "Drop GeoJSON file here or click to select file",
927927
"Form.textUpload.promptJSON": "Drop JSON file here or click to select file",
928928
"Form.textUpload.readonly": "Existing file will be used",
929+
"GeoJSONUploadModal.dropzone.label": "Drop a GeoJSON file here or click to upload",
930+
"GeoJSONUploadModal.error.invalid": "Invalid GeoJSON: {error}",
931+
"GeoJSONUploadModal.error.noPolygons": "No Polygon features found in file",
932+
"GeoJSONUploadModal.header": "Create Virtual Challenge from GeoJSON",
933+
"GeoJSONUploadModal.success.polygonsLoaded": "{count, plural, one {# polygon} other {# polygons}} loaded",
929934
"GlobalActivity.title": "Global Activity",
930935
"Grant.Role.admin": "Admin",
931936
"Grant.Role.read": "Read",
@@ -1394,6 +1399,7 @@
13941399
"TaskClusterMap.controls.search.label": "Search",
13951400
"TaskClusterMap.controls.selectAllInView.label": "Select All In View",
13961401
"TaskClusterMap.controls.toggleLegend.label": "Toggle Legend",
1402+
"TaskClusterMap.controls.uploadGeoJSON.label": "Upload GeoJSON",
13971403
"TaskClusterMap.controls.zoomIn.label": "Zoom In",
13981404
"TaskClusterMap.controls.zoomOut.label": "Zoom Out",
13991405
"TaskClusterMap.message.moveMapToRefresh.label": "Click to show tasks",

lang/fr.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -926,6 +926,11 @@
926926
"Form.textUpload.promptGeoJSON": "Drop GeoJSON file here or click to select file",
927927
"Form.textUpload.promptJSON": "Drop JSON file here or click to select file",
928928
"Form.textUpload.readonly": "Le fichier existant sera utilisé",
929+
"GeoJSONUploadModal.dropzone.label": "Drop a GeoJSON file here or click to upload",
930+
"GeoJSONUploadModal.error.invalid": "Invalid GeoJSON: {error}",
931+
"GeoJSONUploadModal.error.noPolygons": "No Polygon features found in file",
932+
"GeoJSONUploadModal.header": "Create Virtual Challenge from GeoJSON",
933+
"GeoJSONUploadModal.success.polygonsLoaded": "{count, plural, one {# polygon} other {# polygons}} loaded",
929934
"GlobalActivity.title": "Activité mondiale",
930935
"Grant.Role.admin": "Administrateur",
931936
"Grant.Role.read": "Lire",
@@ -1394,6 +1399,7 @@
13941399
"TaskClusterMap.controls.search.label": "Search",
13951400
"TaskClusterMap.controls.selectAllInView.label": "Select All In View",
13961401
"TaskClusterMap.controls.toggleLegend.label": "Toggle Legend",
1402+
"TaskClusterMap.controls.uploadGeoJSON.label": "Upload GeoJSON",
13971403
"TaskClusterMap.controls.zoomIn.label": "Zoom In",
13981404
"TaskClusterMap.controls.zoomOut.label": "Zoom Out",
13991405
"TaskClusterMap.message.moveMapToRefresh.label": "Cliquer pour montrer les tâches",

lang/it_IT.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -926,6 +926,11 @@
926926
"Form.textUpload.promptGeoJSON": "Rilascia il file GeoJSON qui o clicca per selezionare il file",
927927
"Form.textUpload.promptJSON": "Rilascia il file JSON qui o clicca per selezionare il file",
928928
"Form.textUpload.readonly": "Verrà utilizzato il file esistente",
929+
"GeoJSONUploadModal.dropzone.label": "Drop a GeoJSON file here or click to upload",
930+
"GeoJSONUploadModal.error.invalid": "Invalid GeoJSON: {error}",
931+
"GeoJSONUploadModal.error.noPolygons": "No Polygon features found in file",
932+
"GeoJSONUploadModal.header": "Create Virtual Challenge from GeoJSON",
933+
"GeoJSONUploadModal.success.polygonsLoaded": "{count, plural, one {# polygon} other {# polygons}} loaded",
929934
"GlobalActivity.title": "Attività globale",
930935
"Grant.Role.admin": "Amministratore",
931936
"Grant.Role.read": "Leggi",
@@ -1394,6 +1399,7 @@
13941399
"TaskClusterMap.controls.search.label": "Search",
13951400
"TaskClusterMap.controls.selectAllInView.label": "Select All In View",
13961401
"TaskClusterMap.controls.toggleLegend.label": "Toggle Legend",
1402+
"TaskClusterMap.controls.uploadGeoJSON.label": "Upload GeoJSON",
13971403
"TaskClusterMap.controls.zoomIn.label": "Zoom In",
13981404
"TaskClusterMap.controls.zoomOut.label": "Zoom Out",
13991405
"TaskClusterMap.message.moveMapToRefresh.label": "Clicca per vedere i compiti",

lang/ja.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -926,6 +926,11 @@
926926
"Form.textUpload.promptGeoJSON": "Drop GeoJSON file here or click to select file",
927927
"Form.textUpload.promptJSON": "Drop JSON file here or click to select file",
928928
"Form.textUpload.readonly": "既存のファイルが使われます",
929+
"GeoJSONUploadModal.dropzone.label": "Drop a GeoJSON file here or click to upload",
930+
"GeoJSONUploadModal.error.invalid": "Invalid GeoJSON: {error}",
931+
"GeoJSONUploadModal.error.noPolygons": "No Polygon features found in file",
932+
"GeoJSONUploadModal.header": "Create Virtual Challenge from GeoJSON",
933+
"GeoJSONUploadModal.success.polygonsLoaded": "{count, plural, one {# polygon} other {# polygons}} loaded",
929934
"GlobalActivity.title": "世界の活動",
930935
"Grant.Role.admin": "Admin",
931936
"Grant.Role.read": "Read",
@@ -1394,6 +1399,7 @@
13941399
"TaskClusterMap.controls.search.label": "Search",
13951400
"TaskClusterMap.controls.selectAllInView.label": "Select All In View",
13961401
"TaskClusterMap.controls.toggleLegend.label": "Toggle Legend",
1402+
"TaskClusterMap.controls.uploadGeoJSON.label": "Upload GeoJSON",
13971403
"TaskClusterMap.controls.zoomIn.label": "Zoom In",
13981404
"TaskClusterMap.controls.zoomOut.label": "Zoom Out",
13991405
"TaskClusterMap.message.moveMapToRefresh.label": "Click to show tasks",

0 commit comments

Comments
 (0)