Yohan Boniface
008a996bea
feat: make vertex icons bigger (and round)
2025-02-11 14:00:09 +01:00
Yohan Boniface
8e13a15645
fix: do not display an error for an empty CSV
...
fix #577
fix #2491
fix #1546
2025-02-11 13:45:40 +01:00
Yohan Boniface
de3be9bb97
chore: only build doc once in the CI
...
I've chosen to keep the one in the "lint" step, instead of a
dedicated step, so to prevent one more container to be built at
each run (did I say "to save trees" ?) :p
2025-02-11 13:32:59 +01:00
Yohan Boniface
6530aaa794
chore: do not run CI if no umap code files has been changed
...
Co-authored-by: David Larlet <david@larlet.fr>
2025-02-11 13:31:28 +01:00
Yohan Boniface
414cc805c2
fix(sync): wait for websocket full connection
...
Websocket has now a "connect" method, which is a promise,
that yields "onconnect", so the engine can wait for it before
proceding.
2025-02-11 13:26:27 +01:00
Yohan Boniface
1ce491a70c
fix(sync): try to reconnect after network error when getting token
2025-02-11 13:03:06 +01:00
Yohan Boniface
4dd50690b1
chore: bump ruff from 0.9.3 to 0.9.6 ( #2499 )
2025-02-11 12:16:20 +01:00
Yohan Boniface
f0e87bab83
Fix broken showLabel=null (on hover) ( #2490 )
...
Broken since c27e675152
2025-02-11 12:14:52 +01:00
dependabot[bot]
238de28098
chore: bump ruff from 0.9.3 to 0.9.6
...
Bumps [ruff](https://github.com/astral-sh/ruff ) from 0.9.3 to 0.9.6.
- [Release notes](https://github.com/astral-sh/ruff/releases )
- [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md )
- [Commits](https://github.com/astral-sh/ruff/compare/0.9.3...0.9.6 )
---
updated-dependencies:
- dependency-name: ruff
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-02-11 10:58:25 +00:00
Yohan Boniface
c5467e42d5
chore: bump mkdocs-material from 9.5.50 to 9.6.3 ( #2496 )
2025-02-11 11:57:17 +01:00
Yohan Boniface
14c388b063
chore: bump pytest-django from 4.9.0 to 4.10.0 ( #2495 )
2025-02-11 11:56:39 +01:00
Yohan Boniface
e3c5acd52b
chore: bump moto[s3] from 5.0.27 to 5.0.28 ( #2498 )
2025-02-11 11:56:08 +01:00
Yohan Boniface
c044afb43d
chore: bump django from 5.1.5 to 5.1.6 ( #2497 )
2025-02-11 11:55:36 +01:00
Yohan Boniface
c5417178c4
fix: "null" value was not honoured in showLabel field
2025-02-11 11:48:01 +01:00
dependabot[bot]
cfef25748b
chore: bump moto[s3] from 5.0.27 to 5.0.28
...
Bumps [moto[s3]](https://github.com/getmoto/moto ) from 5.0.27 to 5.0.28.
- [Release notes](https://github.com/getmoto/moto/releases )
- [Changelog](https://github.com/getmoto/moto/blob/master/CHANGELOG.md )
- [Commits](https://github.com/getmoto/moto/compare/5.0.27...5.0.28 )
---
updated-dependencies:
- dependency-name: moto[s3]
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-02-10 17:06:37 +00:00
dependabot[bot]
6c835622c0
chore: bump django from 5.1.5 to 5.1.6
...
Bumps [django](https://github.com/django/django ) from 5.1.5 to 5.1.6.
- [Commits](https://github.com/django/django/compare/5.1.5...5.1.6 )
---
updated-dependencies:
- dependency-name: django
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-02-10 17:06:31 +00:00
dependabot[bot]
62e23ac49b
chore: bump mkdocs-material from 9.5.50 to 9.6.3
...
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material ) from 9.5.50 to 9.6.3.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases )
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG )
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.5.50...9.6.3 )
---
updated-dependencies:
- dependency-name: mkdocs-material
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-02-10 17:06:26 +00:00
dependabot[bot]
a78cdd227e
chore: bump pytest-django from 4.9.0 to 4.10.0
...
Bumps [pytest-django](https://github.com/pytest-dev/pytest-django ) from 4.9.0 to 4.10.0.
- [Release notes](https://github.com/pytest-dev/pytest-django/releases )
- [Changelog](https://github.com/pytest-dev/pytest-django/blob/main/docs/changelog.rst )
- [Commits](https://github.com/pytest-dev/pytest-django/compare/v4.9.0...v4.10.0 )
---
updated-dependencies:
- dependency-name: pytest-django
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-02-10 17:06:20 +00:00
Yohan Boniface
aea422a247
feat: add title attribute to layers in browser ( #2489 )
...
Test & Docs / tests (postgresql, 3.10) (push) Waiting to run
Test & Docs / tests (postgresql, 3.12) (push) Waiting to run
Test & Docs / lint (push) Waiting to run
Test & Docs / docs (push) Waiting to run
Usefull when the layer title is truncated because too long.


2025-02-10 17:17:55 +01:00
Yohan Boniface
46c319e5cf
chore: smaller star button and invert author and dates ( #2488 )
...
Also make created/modified lower case on caption.

cf #2424
cf #2442
cc @Aurelie-Jallut
2025-02-10 17:16:04 +01:00
Yohan Boniface
f105336d48
chore: read datalayer metadata from file if missing in DB ( #2494 )
...
When we introduced the DataLayer.settings property, we did not run a
migration for existing datalayers (because there are millions in the
French server).
Now that we simplified the `DataLayer.isLoaded()` logic in the client,
we want to be sure that created DataLayer on the client have full
metadata.
2025-02-10 16:59:49 +01:00
Yohan Boniface
9b01a4b77a
chore: read datalayer metadata from file if missing in DB
...
When we introduced the DataLayer.settings property, we did not run
a migration for existing datalayers (because there are millions in the
French server).
Now that we simplified the `DataLayer.isLoaded()` logic in the client,
we want to be sure that created DataLayer on the client have full
metadata.
Co-authored-by: David Larlet <david@larlet.fr>
2025-02-10 16:56:15 +01:00
Yohan Boniface
e827e77bb9
chore: refactor layer.isLoaded() ( #2492 )
2025-02-10 16:39:15 +01:00
Yohan Boniface
a8e18c167c
chore: no need to reset datalayer._needsFetch after a save
...
It is reset only after loading the layer data.
Co-authored-by: David Larlet <david@larlet.fr>
2025-02-10 16:30:00 +01:00
Yohan Boniface
175e27a535
chore: remove DataLayer._dataloaded in favor of isLoaded()
...
At the end, we only need two states: has this datalayer loaded the
data it should load ? yes / no.
Whether it local or remote data should not be a matter.
2025-02-10 15:44:41 +01:00
Yohan Boniface
ba0582deb1
chore: refactor layer.isLoaded()
2025-02-10 13:13:56 +01:00
Yohan Boniface
9fe744573c
feat: add title attribute to layers in browser
...
Usefull when the layer title is truncated because too long.
2025-02-10 09:41:16 +01:00
Yohan Boniface
64068af393
fix: do not save "null" instead of null for showLabel
2025-02-07 21:56:02 +01:00
Yohan Boniface
6793a6bdc7
fix: do not modify schema while iterating on it
2025-02-07 21:50:11 +01:00
Yohan Boniface
c7681c0304
chore: smaller star button and invert author and dates
...
Also make created/modified lower case on caption.
cf #2424
cf #2442
2025-02-07 19:00:30 +01:00
Yohan Boniface
eca7ad4772
fixup: prevent to reload a datalayer after other peer has saved it
...
The scenario to reproduce is:
- peer A creates a datalayer
- peer B add a marker on that datalayer
- peer B saves the datalayer
Before this fix, after the save, peer A would get a new _referenceVersion
for this datalayer, and the render method would make a hide/show,
which would refetch the data from the server, duplicating it.
So forcing the _loaded to be true in this situation prevent this.
We may want to rework the "_loaded" pattern, maybe with the server
returning in a datalayer metadata the length of the data it get for
this given datalayer, so the client knows if it is worth getting
data for a layer when itself (the client) does not have any.
Co-authored-by: David Larlet <david@larlet.fr>
2025-02-07 17:58:27 +01:00
Yohan Boniface
a172c4abea
fixup: do not try to sync saved state when not in sync mode
...
Co-authored-by: David Larlet <david@larlet.fr>
2025-02-07 17:53:48 +01:00
Yohan Boniface
b8db07a4ce
chore: sync save state
...
When a peer save the map, other peers in dirty state should not need
to save the map anymore.
That implementation uses the lastKnownHLC as a reference, but it changes
all dirty states at once. Another impementation could be to have each
object sync its dirty state, but in this case we do not have a HLC per
object as reference, and it also creates more messages.
Co-authored-by: David Larlet <david@larlet.fr>
2025-02-07 16:47:45 +01:00
Yohan Boniface
815ff046ff
chore: mention nginx mapping in asgi documentation
...
Test & Docs / tests (postgresql, 3.10) (push) Has been cancelled
Test & Docs / tests (postgresql, 3.12) (push) Has been cancelled
Test & Docs / lint (push) Has been cancelled
Test & Docs / docs (push) Has been cancelled
Co-authored-by: David Larlet <david@larlet.fr>
2025-02-07 16:25:34 +01:00
Yohan Boniface
76c13a61a6
fixup: do not show empty helpText for editors and owner fields
2025-02-07 15:35:49 +01:00
Yohan Boniface
ad51f674ef
fix: do not import empty features ( #2485 )
2025-02-07 15:26:42 +01:00
Yohan Boniface
8949d6fa71
fix: do not sync twice a point move ( #2486 )
2025-02-07 15:26:25 +01:00
Yohan Boniface
009b32c818
fix: do not sync twice a point move
2025-02-07 10:08:58 +01:00
Yohan Boniface
c5ee9fc283
chore: use editable-edited event to sync changes ( #2478 )
...
Test & Docs / tests (postgresql, 3.10) (push) Waiting to run
Test & Docs / tests (postgresql, 3.12) (push) Waiting to run
Test & Docs / lint (push) Waiting to run
Test & Docs / docs (push) Waiting to run
This is more unified between markers and paths, and it allows paths to
be synced as soon as they have been drawn (instead of when closing the
edit panel, which created a race condition when changing its properties
that were then synced to other while the feature itself was not).
2025-02-07 09:12:45 +01:00
Yohan Boniface
9af74b0a4e
fix: do not import empty features
2025-02-07 09:11:16 +01:00
David Larlet
fb03c6a39e
feat: Expose teams in users’ CSV export ( #2484 )
Test & Docs / tests (postgresql, 3.10) (push) Waiting to run
Test & Docs / tests (postgresql, 3.12) (push) Waiting to run
Test & Docs / lint (push) Waiting to run
Test & Docs / docs (push) Waiting to run
2025-02-06 11:50:52 -05:00
David Larlet
2331f4103e
chore: add very minimal documentation for deploying uMap with ASGI ( #2480 )
...
This is just about ASGI, not the websockets and the sync itself.
We may merge it, or just keep it and amend it until we have the sync
official.
2025-02-06 11:29:00 -05:00
Yohan Boniface
a1372b5f4d
chore: move DrawToolbar and SettingsToolbar to bar.js module ( #2482 )
...
This also:
- change the "set center and zoom" to be a panel instead of a direct
action (including the "defaultView" setting
- refactor the "get started dialog"
This is a first step to remove our dependency to the unmaintained
Leaflet.Toolbar plugin.



The mockup on figma glues the edit toolbar to the edit panel, but I
didn't not implement this as I don't know how to make it work in
portrait/mobile view. This step is mainly a code refactor.
2025-02-06 17:28:43 +01:00
David Larlet
0cba3ab158
fix: Do not error when escape during marker creation ( #2483 )
2025-02-06 11:28:26 -05:00
David Larlet
17b8d73978
feat: Expose teams in users’ CSV export
...
Co-authored-by: Yohan Boniface <yohanboniface@free.fr>
2025-02-06 11:26:47 -05:00
David Larlet
519302b53d
fix: Do not error when escape during marker creation
...
Co-authored-by: Yohan Boniface <yohanboniface@free.fr>
2025-02-06 11:14:58 -05:00
David Larlet
cbe50a0112
fixup: back to original dark grey
...
Co-authored-by: Yohan Boniface <yohanboniface@free.fr>
2025-02-06 11:02:38 -05:00
David Larlet
b214f4109c
fixup: restore help contents and fix button icon
...
Co-authored-by: Yohan Boniface <yohanboniface@free.fr>
2025-02-06 10:28:05 -05:00
David Larlet
e8e06da149
fix: consistent border radius for edit bar
...
Co-authored-by: Yohan Boniface <yohanboniface@free.fr>
2025-02-06 10:05:55 -05:00
David Larlet
0451b4a882
chore: highlight bar buttons according to open panel
...
Co-authored-by: Yohan Boniface <yohanboniface@free.fr>
2025-02-06 10:02:32 -05:00