Skip to content

Commit e6978b8

Browse files
authored
Resolve import error for private types module (#89)
* Made types module public * Fix to pass pre-commit
1 parent 3cc79bf commit e6978b8

File tree

11 files changed

+46
-16
lines changed

11 files changed

+46
-16
lines changed

.devcontainer/devcontainer.json

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,9 @@
2525
"editor.formatOnSave": true,
2626
"editor.tabSize": 4,
2727
"editor.defaultFormatter": "esbenp.prettier-vscode",
28-
"editor.rulers": [88],
28+
"editor.rulers": [
29+
88
30+
],
2931
"rewrap.autoWrap.enabled": true,
3032
"rewrap.wrappingColumn": 80,
3133
"rewrap.wholeComment": true,
@@ -52,15 +54,19 @@
5254
"pymavswarm"
5355
],
5456
"[python]": {
55-
"editor.rulers": [88],
57+
"editor.rulers": [
58+
88
59+
],
5660
"editor.tabSize": 4,
5761
"editor.defaultFormatter": "ms-python.python",
5862
"editor.codeActionsOnSave": {
5963
"source.organizeImports": true
6064
}
6165
},
6266
"[markdown]": {
63-
"editor.rulers": [80],
67+
"editor.rulers": [
68+
80
69+
],
6470
"editor.defaultFormatter": "DavidAnson.vscode-markdownlint"
6571
},
6672
"[dockerfile]": {

.github/CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ from __future__ import annotations
120120
agent_location: Location | None = None
121121
```
122122

123-
Commonly used types will appear in `pymavswarm._types`. These should be used
123+
Commonly used types will appear in `pymavswarm.types`. These should be used
124124
where applicable.
125125

126126
## Writing documentation

examples/goto.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
from typing import Any
2222

2323
from pymavswarm import MavSwarm
24-
from pymavswarm._types import AgentID
24+
from pymavswarm.types import AgentID
2525

2626

2727
def parse_args() -> Any:

examples/subclass_mavswarm.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
import monotonic
2626

2727
from pymavswarm import Agent, MavSwarm
28-
from pymavswarm._types import AgentID
28+
from pymavswarm.types import AgentID
2929

3030

3131
class CustomMavSwarm(MavSwarm):

pymavswarm/handlers/message_receivers.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,9 @@
2626
from pymavlink.dialects.v10 import ardupilotmega as mavlink1
2727

2828
import pymavswarm.state as swarm_state
29-
from pymavswarm._types import AgentID
3029
from pymavswarm.agent import Agent
3130
from pymavswarm.handlers.receivers import Receivers
31+
from pymavswarm.types import AgentID
3232

3333

3434
class MessageReceivers(Receivers):

pymavswarm/handlers/receivers.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
from typing import Callable
2121

2222
import pymavswarm.utils as swarm_utils
23-
from pymavswarm._types import MessageHandler
23+
from pymavswarm.types import MessageHandler
2424

2525

2626
class Receivers:

pymavswarm/mavswarm.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -28,19 +28,19 @@
2828
from pymavlink import mavutil
2929

3030
from pymavswarm import Connection
31-
from pymavswarm._types import (
31+
from pymavswarm.agent import Agent
32+
from pymavswarm.handlers import MessageReceivers
33+
from pymavswarm.message import codes
34+
from pymavswarm.message.response import Response
35+
from pymavswarm.state import Parameter
36+
from pymavswarm.types import (
3237
AgentID,
3338
CommandExecutor,
3439
MessageCode,
3540
MessageHandler,
3641
PostExecutionHandler,
3742
StateVerifier,
3843
)
39-
from pymavswarm.agent import Agent
40-
from pymavswarm.handlers import MessageReceivers
41-
from pymavswarm.message import codes
42-
from pymavswarm.message.response import Response
43-
from pymavswarm.state import Parameter
4444
from pymavswarm.utils import Event, FileLogger, NotifierDict, init_logger
4545

4646

pymavswarm/message/response.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
# You should have received a copy of the GNU General Public License
1515
# along with this program. If not, see <https://www.gnu.org/licenses/>.
1616

17-
from pymavswarm._types import AgentID, MessageCode
17+
from pymavswarm.types import AgentID, MessageCode
1818

1919

2020
class Response:

pymavswarm/tests/test_receivers.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@
1818
from typing import Any
1919

2020
from pymavswarm import Agent
21-
from pymavswarm._types import AgentID
2221
from pymavswarm.handlers.receivers import Receivers
22+
from pymavswarm.types import AgentID
2323

2424

2525
class TestReceivers(unittest.TestCase):

pymavswarm/tests/test_types.py

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
from __future__ import annotations
2+
3+
import unittest
4+
from typing import Callable
5+
6+
from pymavswarm.types import AgentID, StateVerifier
7+
8+
9+
class TestTypes(unittest.TestCase):
10+
"""Verify that the system types are properly imported."""
11+
12+
def test_agent_id_import(self) -> None:
13+
"""Test the AgentID type import."""
14+
self.assertEqual(AgentID, tuple[int, int]) # type: ignore
15+
return
16+
17+
def test_state_verifier(self) -> None:
18+
"""Test the StateVerifier type import."""
19+
self.assertEqual(StateVerifier, Callable[[AgentID], bool])
20+
return
21+
22+
23+
if __name__ == "__main__":
24+
unittest.main()

0 commit comments

Comments
 (0)