Skip to content

Commit 69d3ee2

Browse files
committed
migrate from poetry to uv
1 parent fbc2df3 commit 69d3ee2

File tree

8 files changed

+2047
-1158
lines changed

8 files changed

+2047
-1158
lines changed

poetry.lock

Lines changed: 0 additions & 1048 deletions
This file was deleted.

poetry.toml

Lines changed: 0 additions & 3 deletions
This file was deleted.

projects/agent/pyproject.toml

Lines changed: 69 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,24 @@
1-
[tool.poetry]
1+
[project]
22
name = "netdriver-agent"
33
version = "0.4.0"
44
description = "The agent for NetDevOps, which interact with network device using CLI."
55
authors = [
6-
"Vincent <vincent@byntra.se>",
7-
"Bobby <bobby@byntra.se>",
8-
"Sam <sam@byntra.se>",
9-
"Mark <mark@byntra.se>"
6+
{ name = "Vincent", email = "vincent@byntra.se" },
7+
{ name = "Bobby", email = "bobby@byntra.se" },
8+
{ name = "Sam", email = "sam@byntra.se" },
9+
{ name = "Mark", email = "mark@byntra.se" },
1010
]
11+
requires-python = ">=3.12,<4"
1112
license = "Apache-2.0"
12-
homepage = "https://github.com/OpenSecFlow/netdriver"
13-
repository = "https://github.com/OpenSecFlow/netdriver"
14-
documentation = "https://github.com/OpenSecFlow/netdriver#readme"
15-
keywords = ["network", "automation", "cli", "ssh", "device", "driver", "netdevops"]
13+
keywords = [
14+
"network",
15+
"automation",
16+
"cli",
17+
"ssh",
18+
"device",
19+
"driver",
20+
"netdevops",
21+
]
1622
classifiers = [
1723
"Development Status :: 5 - Production/Stable",
1824
"Intended Audience :: Developers",
@@ -24,34 +30,63 @@ classifiers = [
2430
"Programming Language :: Python :: 3.12",
2531
"Topic :: System :: Networking",
2632
"Topic :: Software Development :: Libraries :: Python Modules",
33+
"Programming Language :: Python :: 3.13",
34+
"Programming Language :: Python :: 3.14",
2735
]
28-
packages = [
29-
{include = "netdriver/agent", from = "../../bases"},
30-
{include = "netdriver/client", from = "../../components"},
31-
{include = "netdriver/exception", from = "../../components"},
32-
{include = "netdriver/plugin", from = "../../components"},
33-
{include = "netdriver/plugins", from = "../../components"},
34-
{include = "netdriver/textfsm", from = "../../components"},
35-
{include = "netdriver/utils",from = "../../components"},
36-
{include = "netdriver/log",from = "../../components"},
36+
dependencies = [
37+
"fastapi>=0.115.2,<0.116",
38+
"uvicorn>=0.32.0,<0.33",
39+
"pyyaml>=6.0.2,<7",
40+
"asyncssh>=2.17.0,<3",
41+
"dependency-injector>=4.42.0,<5",
42+
"loguru>=0.7.2,<0.8",
43+
"asgi-correlation-id>=4.3.4,<5",
44+
"tabulate>=0.9.0,<0.10",
45+
"httpx>=0.27.2,<0.28",
46+
"pycryptodome>=3.21.0,<4",
47+
"aiofiles>=24.1.0,<25",
48+
"six>=1.16.0,<2",
3749
]
3850

51+
[project.urls]
52+
Homepage = "https://github.com/OpenSecFlow/netdriver"
53+
Repository = "https://github.com/OpenSecFlow/netdriver"
54+
Documentation = "https://github.com/OpenSecFlow/netdriver#readme"
55+
56+
[tool.hatch.build.targets.sdist]
57+
include = [
58+
"../../bases/netdriver/agent",
59+
"../../components/netdriver/client",
60+
"../../components/netdriver/exception",
61+
"../../components/netdriver/plugin",
62+
"../../components/netdriver/plugins",
63+
"../../components/netdriver/textfsm",
64+
"../../components/netdriver/utils",
65+
"../../components/netdriver/log",
66+
]
67+
68+
[tool.hatch.build.targets.wheel]
69+
include = [
70+
"../../bases/netdriver/agent",
71+
"../../components/netdriver/client",
72+
"../../components/netdriver/exception",
73+
"../../components/netdriver/plugin",
74+
"../../components/netdriver/plugins",
75+
"../../components/netdriver/textfsm",
76+
"../../components/netdriver/utils",
77+
"../../components/netdriver/log",
78+
]
3979

40-
[tool.poetry.dependencies]
41-
python = "^3.12"
42-
fastapi = "^0.115.2"
43-
uvicorn = "^0.32.0"
44-
pyyaml = "^6.0.2"
45-
asyncssh = "^2.17.0"
46-
dependency-injector = "^4.42.0"
47-
loguru = "^0.7.2"
48-
asgi-correlation-id = "^4.3.4"
49-
tabulate = "^0.9.0"
50-
httpx = "^0.27.2"
51-
pycryptodome = "^3.21.0"
52-
aiofiles = "^24.1.0"
53-
six = "^1.16.0"
80+
[tool.hatch.build.targets.wheel.sources]
81+
"../../bases/netdriver/agent" = "netdriver/agent"
82+
"../../components/netdriver/client" = "netdriver/client"
83+
"../../components/netdriver/exception" = "netdriver/exception"
84+
"../../components/netdriver/plugin" = "netdriver/plugin"
85+
"../../components/netdriver/plugins" = "netdriver/plugins"
86+
"../../components/netdriver/textfsm" = "netdriver/textfsm"
87+
"../../components/netdriver/utils" = "netdriver/utils"
88+
"../../components/netdriver/log" = "netdriver/log"
5489

5590
[build-system]
56-
requires = ["poetry-core>=1.0.0"]
57-
build-backend = "poetry.core.masonry.api"
91+
requires = ["hatchling"]
92+
build-backend = "hatchling.build"

projects/agent/uv.lock

Lines changed: 589 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

projects/simunet/pyproject.toml

Lines changed: 60 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,24 @@
1-
[tool.poetry]
1+
[project]
22
name = "netdriver-simunet"
33
version = "0.4.0"
44
description = "Simulated ssh server for network device, used for testing netdriver agent and client."
55
authors = [
6-
"Vincent <vincent@byntra.se>",
7-
"Bobby <bobby@byntra.se>",
8-
"Sam <sam@byntra.se>",
9-
"Mark <mark@byntra.se>"
6+
{ name = "Vincent", email = "vincent@byntra.se" },
7+
{ name = "Bobby", email = "bobby@byntra.se" },
8+
{ name = "Sam", email = "sam@byntra.se" },
9+
{ name = "Mark", email = "mark@byntra.se" },
1010
]
11+
requires-python = ">=3.12,<4"
1112
license = "Apache-2.0"
12-
homepage = "https://github.com/OpenSecFlow/netdriver"
13-
repository = "https://github.com/OpenSecFlow/netdriver"
14-
documentation = "https://github.com/OpenSecFlow/netdriver#readme"
15-
keywords = ["network", "automation", "cli", "ssh", "device", "driver", "netdevops"]
13+
keywords = [
14+
"network",
15+
"automation",
16+
"cli",
17+
"ssh",
18+
"device",
19+
"driver",
20+
"netdevops",
21+
]
1622
classifiers = [
1723
"Development Status :: 5 - Production/Stable",
1824
"Intended Audience :: Developers",
@@ -24,31 +30,55 @@ classifiers = [
2430
"Programming Language :: Python :: 3.12",
2531
"Topic :: System :: Networking",
2632
"Topic :: Software Development :: Libraries :: Python Modules",
33+
"Programming Language :: Python :: 3.13",
34+
"Programming Language :: Python :: 3.14",
2735
]
28-
packages = [
29-
{include = "netdriver/client", from = "../../components"},
30-
{include = "netdriver/simunet", from = "../../bases"},
31-
{include = "netdriver/exception", from = "../../components"},
32-
{include = "netdriver/server", from = "../../components"},
33-
{include = "netdriver/utils",from = "../../components"},
34-
{include = "netdriver/log",from = "../../components"},
36+
dependencies = [
37+
"fastapi>=0.115.2,<0.116",
38+
"uvicorn>=0.32.0,<0.33",
39+
"pyyaml>=6.0.2,<7",
40+
"asyncssh>=2.17.0,<3",
41+
"dependency-injector>=4.42.0,<5",
42+
"loguru>=0.7.2,<0.8",
43+
"asgi-correlation-id>=4.3.4,<5",
44+
"pycryptodome>=3.21.0,<4",
45+
"aiofiles>=24.1.0,<25",
46+
"six>=1.16.0,<2",
3547
]
3648

49+
[project.urls]
50+
Homepage = "https://github.com/OpenSecFlow/netdriver"
51+
Repository = "https://github.com/OpenSecFlow/netdriver"
52+
Documentation = "https://github.com/OpenSecFlow/netdriver#readme"
53+
54+
[tool.hatch.build.targets.sdist]
55+
include = [
56+
"../../components/netdriver/client",
57+
"../../bases/netdriver/simunet",
58+
"../../components/netdriver/exception",
59+
"../../components/netdriver/server",
60+
"../../components/netdriver/utils",
61+
"../../components/netdriver/log",
62+
]
3763

38-
[tool.poetry.dependencies]
39-
python = "^3.12"
40-
fastapi = "^0.115.2"
41-
uvicorn = "^0.32.0"
42-
pyyaml = "^6.0.2"
43-
asyncssh = "^2.17.0"
44-
dependency-injector = "^4.42.0"
45-
loguru = "^0.7.2"
46-
asgi-correlation-id = "^4.3.4"
47-
pycryptodome = "^3.21.0"
48-
aiofiles = "^24.1.0"
49-
six = "^1.16.0"
64+
[tool.hatch.build.targets.wheel]
65+
include = [
66+
"../../components/netdriver/client",
67+
"../../bases/netdriver/simunet",
68+
"../../components/netdriver/exception",
69+
"../../components/netdriver/server",
70+
"../../components/netdriver/utils",
71+
"../../components/netdriver/log",
72+
]
5073

74+
[tool.hatch.build.targets.wheel.sources]
75+
"../../components/netdriver/client" = "netdriver/client"
76+
"../../bases/netdriver/simunet" = "netdriver/simunet"
77+
"../../components/netdriver/exception" = "netdriver/exception"
78+
"../../components/netdriver/server" = "netdriver/server"
79+
"../../components/netdriver/utils" = "netdriver/utils"
80+
"../../components/netdriver/log" = "netdriver/log"
5181

5282
[build-system]
53-
requires = ["poetry-core>=1.0.0"]
54-
build-backend = "poetry.core.masonry.api"
83+
requires = ["hatchling"]
84+
build-backend = "hatchling.build"

0 commit comments

Comments
 (0)