Jeremy Grossmann
02d02cceca
Merge pull request #2899 from markparonyan/mypy-db-models-base
...
fix(typing): resolve mypy errors in db models
2026-09-28 20:52:55 +02:00
Jeremy Grossmann
71965e0e81
Merge pull request #2894 from markparonyan/mypy-utils-zipfile-zstd
...
fix(typing): resolve mypy errors in utils.zipfile_zstd
2026-09-28 20:50:20 +02:00
Jeremy Grossmann
4ea31f98b7
Merge pull request #2893 from markparonyan/mypy-agent-mcp
...
fix(typing): resolve mypy errors in agent.mcp
2026-09-28 20:49:10 +02:00
Mark Paronyan
db265f9524
fix(typing): resolve mypy errors in db models
2026-09-28 21:48:06 +03:00
Mark Paronyan
3fc1d27937
fix(typing): resolve mypy errors in utils.zipfile_zstd
2026-09-28 21:47:05 +03:00
Mark Paronyan
6ffa39642f
fix(typing): resolve mypy errors in agent.mcp
2026-09-28 21:41:58 +03:00
Jeremy Grossmann
0c9f6aa9e3
Merge pull request #2892 from markparonyan/mypy-compute-qemu-vm
...
fix(typing): resolve mypy errors in compute.qemu.qemu_vm
2026-09-28 12:00:10 +02:00
Mark Paronyan
6bff55d3c7
Remove gns3server.compute.project from pyproject.toml
...
Removed 'gns3server.compute.project' from the list.
2026-09-28 12:41:51 +03:00
Mark Paronyan
798edca81d
Remove qemu_vm typing ignore from pyproject.toml
2026-09-28 12:40:51 +03:00
Mark Paronyan
8c0a5404ac
Merge branch '3.1' into mypy-compute-qemu-vm
2026-09-28 12:39:38 +03:00
Mark Paronyan
525ef8ca57
fix(typing): resolve mypy errors in compute.qemu.qemu_vm
2026-09-28 12:37:28 +03:00
Jeremy Grossmann
79ecb15164
Merge pull request #2888 from markparonyan/mypy-compute-vmware-vm
...
fix(typing): resolve mypy errors in compute.vmware.vmware_vm
2026-09-28 11:06:12 +02:00
Jeremy Grossmann
310bb193a5
Merge pull request #2887 from markparonyan/mypy-compute-docker-vm
...
fix(typing): resolve mypy errors in compute.docker vm modules
2026-09-28 11:03:44 +02:00
Jeremy Grossmann
ccee503b74
Merge pull request #2891 from markparonyan/mypy-controller-compute
...
fix(typing): resolve mypy errors in controller.compute
2026-09-28 11:01:30 +02:00
Jeremy Grossmann
378751070c
Merge pull request #2885 from markparonyan/mypy-compute-project
...
fix(typing): resolve mypy errors in compute.project
2026-09-28 10:55:33 +02:00
Jeremy Grossmann
10b5c1bb6b
Merge branch '3.1' into mypy-compute-project
2026-09-28 10:55:25 +02:00
Jeremy Grossmann
0bd1204d15
Merge pull request #2884 from markparonyan/mypy-config
...
fix(typing): resolve mypy errors in config
2026-09-28 10:54:17 +02:00
Jeremy Grossmann
0718e038f7
Merge pull request #2883 from markparonyan/mypy-utils-embed-shell
...
fix(typing): resolve mypy errors in utils.asyncio.embed_shell
2026-09-28 10:47:23 +02:00
Jeremy Grossmann
f2b8b32d59
Merge pull request #2882 from markparonyan/mypy-api-index
...
Fix mypy errors in api.routes.index
2026-09-28 10:39:46 +02:00
Mark Paronyan
21643fe89d
fix(typing): resolve mypy errors in controller.compute
2026-09-28 04:56:59 +00:00
Mark Paronyan
d1df96e0a6
fix(typing): resolve mypy errors in utils.asyncio.embed_shell
2026-09-28 04:56:18 +00:00
Mark Paronyan
fdfb2d5591
fix(typing): resolve mypy errors in compute.vmware.vmware_vm
2026-09-28 04:55:44 +00:00
Mark Paronyan
667b0531f6
fix(typing): resolve mypy errors in compute.project
2026-09-28 04:55:38 +00:00
Mark Paronyan
b8ae84031e
fix(typing): resolve mypy errors in compute.docker vm modules
2026-09-28 04:55:32 +00:00
Mark Paronyan
f858ae23a6
fix(typing): resolve mypy errors in api.routes.index
2026-09-28 04:55:30 +00:00
Mark Paronyan
2512556770
fix(typing): resolve mypy errors in config
2026-09-28 04:55:20 +00:00
grossmj
8df25dec32
Development on 3.1.0.dev7
2026-09-27 20:21:12 +02:00
grossmj
4fa4ef7c2f
Release v3.1.0a6
v3.1.0a6
2026-09-27 19:18:25 +02:00
grossmj
3f2afb0e4a
Bundle web-ui v3.1.0a6
2026-09-27 19:10:11 +02:00
Jeremy Grossmann
902b1f8ea1
Merge pull request #2881 from GNS3/update-dependencies
...
Update dependencies
2026-09-27 19:07:55 +02:00
grossmj
1f3d00dd1a
Merge remote-tracking branch 'origin/update-dependencies' into update-dependencies
2026-09-27 19:01:56 +02:00
Jeremy Grossmann
539d9f94f9
Merge branch '3.1' into update-dependencies
2026-09-27 19:01:34 +02:00
grossmj
b96774d1f7
Sync appliances
2026-09-27 18:59:42 +02:00
grossmj
52f2774c05
sqlalchemy v2.0.54 is the last version that supports Python 3.10
2026-09-27 18:55:33 +02:00
Jeremy Grossmann
d99b89f1e9
Merge pull request #2880 from markparonyan/harden-ci
...
ci: mypy, ruff, pytest
2026-09-27 18:52:08 +02:00
grossmj
76e85b552a
chore(deps): update dependencies
2026-09-27 18:51:14 +02:00
Mark Paronyan
544890c6b4
chore: delete mac and win reqs
2026-09-27 19:09:25 +03:00
grossmj
45a0f596c8
Ignore Markdown files
2026-09-27 17:52:40 +02:00
grossmj
5c686b0c20
Revert changes to rbac-user-isolation-roadmap.md
2026-09-27 17:13:34 +02:00
Mark Paronyan
ef579dfa8f
ci: no flake8 checks for now, ruff covers them
2026-09-27 16:07:44 +03:00
Mark Paronyan
a0450b6bce
refactor: ruff autofixes
2026-09-27 15:55:10 +03:00
Mark Paronyan
2ac637c662
ci: run just test
2026-09-27 15:43:49 +03:00
Mark Paronyan
8dfe05df3d
chore: justfile with mypy, ruff, pytest checks
2026-09-27 15:43:18 +03:00
Jeremy Grossmann
efd6bb77fe
Merge pull request #2878 from cristian-ciobanu/project-missing-images
...
Allow projects containing unavailable images to open in a degraded state instead of failing to load
2026-09-22 15:34:36 +02:00
grossmj
34923e46e0
chore(docs): update gns3_server.conf sample about the default NAT interface
2026-09-22 14:56:58 +02:00
Cristi
da16dc9874
fix(qemu): Fixed missing image replacement for linked-clone nodes
2026-09-18 23:58:49 +03:00
Cristi
59a367b88d
Allow projects containing missing images to open in a degraded state instead of failing to load
2026-09-18 15:06:17 +03:00
Jeremy Grossmann
de8e1039a9
Merge pull request #2876 from yueguobin/fix/node-delete-rmtree-race
...
Make node working directory deletion robust against races and mode mangling
2026-09-15 17:49:19 +02:00
YueGuobin
84e7ead465
fix: make node working directory deletion robust
...
The rmtree error handler in BaseNode.delete() was chmod'ing the failed
path to S_IWRITE (0o200). On POSIX this strips the search permission
from directories, turning a transient deletion failure into a directory
that can no longer be traversed or deleted. The node deletion itself
silently "succeeds" (rmtree gives up once its error handler returns)
and a later project deletion then fails with EACCES. The handler also
never retried the failed operation, so it did not help on Windows
either (the platform it was written for).
The transient failure exists in practice: a concurrent MD5 checksum
computation caching its result in the node directory (e.g. a properties
request racing the deletion) can recreate a file after rmtree has
listed the directory, making the final rmdir fail with ENOTEMPTY.
- add the missing user permissions instead of replacing the whole mode,
and retry the failed unlink/rmdir
- retry the whole deletion a few times to absorb files recreated while
the directory is being deleted
- raise a ComputeError when the directory cannot be fully deleted
instead of failing silently
2026-09-15 01:23:31 +08:00
Jeremy Grossmann
1c57bd7dca
Merge pull request #2875 from yueguobin/feat/docker-image-sync
...
Sync Docker images from the controller to remote computes
2026-09-13 20:11:03 +02:00