py-obdii 0.0.1a2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,70 @@
1
+ # OBDII
2
+
3
+ A Python ≥3.8 library for interacting with OBDII.
4
+
5
+ ## Installing
6
+
7
+ Python 3.8 or higher is required.
8
+
9
+ A [Virtual Environment](https://docs.python.org/3/library/venv.html) is recommended to install the library.
10
+
11
+ ```bash
12
+ # Linux/macOS
13
+ python3 -m venv .venv
14
+ source .venv/bin/activate
15
+
16
+ # Windows
17
+ py -3 -m venv .venv
18
+ .venv\Scripts\activate
19
+ ```
20
+
21
+ To install the development version, run:
22
+
23
+ ```bash
24
+ # From Github
25
+ pip install git+https://github.com/PaulMarisOUMary/OBDII@main[dev,test]
26
+
27
+ # From local source
28
+ git clone https://github.com/PaulMarisOUMary/OBDII
29
+ cd OBDII
30
+ pip install .[dev,test]
31
+ ```
32
+
33
+ ## Usage Example
34
+
35
+ > [!IMPORTANT]
36
+ > This library is still in the design phase and may change in the future.
37
+
38
+ ```python
39
+ from obdii import commands
40
+ from obdii.connection import Connection
41
+
42
+ conn = Connection("COM5")
43
+
44
+ conn.connect()
45
+ response = conn.query(commands.VEHICLE_SPEED)
46
+ print(f"Vehicle Speed: {response} km/h")
47
+
48
+ conn.close()
49
+ ```
50
+
51
+ ## Contributing & Development
52
+
53
+ The development of this library follows the [ELM327 PDF](/docs/ELM327.PDF) provided by Elm Electronics, with the goal of implementing most features and commands as outlined, starting from page 6 of the document.
54
+
55
+ This library aims to deliver robust error handling, comprehensive logging, complete type hinting support, and follow best practices to create a reliable tool.
56
+
57
+ Please, feel free to contribute and share your feedback !
58
+
59
+ ## Support & Contact
60
+
61
+ For questions or support, open an issue or start a discussion on GitHub.
62
+ Your feedback and questions are greatly appreciated and will help improve this project !
63
+
64
+ - [Open an Issue](https://github.com/PaulMarisOUMary/OBDII/issues)
65
+ - [Join the Discussion](https://github.com/PaulMarisOUMary/OBDII/discussions)
66
+
67
+ ---
68
+
69
+ Thank you for using or contributing to this project.
70
+ Follow our updates by leaving a star to this repository !
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025-present PaulMarisOUMary
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,106 @@
1
+ Metadata-Version: 2.2
2
+ Name: py-obdii
3
+ Version: 0.0.1a2
4
+ Summary: A Python library for interacting with OBD-II.
5
+ Author: PaulMarisOUMary
6
+ License: MIT License
7
+
8
+ Copyright (c) 2025-present PaulMarisOUMary
9
+
10
+ Permission is hereby granted, free of charge, to any person obtaining a copy
11
+ of this software and associated documentation files (the "Software"), to deal
12
+ in the Software without restriction, including without limitation the rights
13
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14
+ copies of the Software, and to permit persons to whom the Software is
15
+ furnished to do so, subject to the following conditions:
16
+
17
+ The above copyright notice and this permission notice shall be included in all
18
+ copies or substantial portions of the Software.
19
+
20
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
26
+ SOFTWARE.
27
+ Project-URL: Repository, https://github.com/PaulMarisOUMary/OBDII
28
+ Requires-Python: >=3.8
29
+ Description-Content-Type: text/markdown
30
+ License-File: LICENSE
31
+ Requires-Dist: pyserial<4,>=3.5
32
+ Provides-Extra: test
33
+ Requires-Dist: pytest; extra == "test"
34
+ Provides-Extra: dev
35
+ Requires-Dist: ELM327-emulator; extra == "dev"
36
+
37
+ # OBDII
38
+
39
+ A Python ≥3.8 library for interacting with OBDII.
40
+
41
+ ## Installing
42
+
43
+ Python 3.8 or higher is required.
44
+
45
+ A [Virtual Environment](https://docs.python.org/3/library/venv.html) is recommended to install the library.
46
+
47
+ ```bash
48
+ # Linux/macOS
49
+ python3 -m venv .venv
50
+ source .venv/bin/activate
51
+
52
+ # Windows
53
+ py -3 -m venv .venv
54
+ .venv\Scripts\activate
55
+ ```
56
+
57
+ To install the development version, run:
58
+
59
+ ```bash
60
+ # From Github
61
+ pip install git+https://github.com/PaulMarisOUMary/OBDII@main[dev,test]
62
+
63
+ # From local source
64
+ git clone https://github.com/PaulMarisOUMary/OBDII
65
+ cd OBDII
66
+ pip install .[dev,test]
67
+ ```
68
+
69
+ ## Usage Example
70
+
71
+ > [!IMPORTANT]
72
+ > This library is still in the design phase and may change in the future.
73
+
74
+ ```python
75
+ from obdii import commands
76
+ from obdii.connection import Connection
77
+
78
+ conn = Connection("COM5")
79
+
80
+ conn.connect()
81
+ response = conn.query(commands.VEHICLE_SPEED)
82
+ print(f"Vehicle Speed: {response} km/h")
83
+
84
+ conn.close()
85
+ ```
86
+
87
+ ## Contributing & Development
88
+
89
+ The development of this library follows the [ELM327 PDF](/docs/ELM327.PDF) provided by Elm Electronics, with the goal of implementing most features and commands as outlined, starting from page 6 of the document.
90
+
91
+ This library aims to deliver robust error handling, comprehensive logging, complete type hinting support, and follow best practices to create a reliable tool.
92
+
93
+ Please, feel free to contribute and share your feedback !
94
+
95
+ ## Support & Contact
96
+
97
+ For questions or support, open an issue or start a discussion on GitHub.
98
+ Your feedback and questions are greatly appreciated and will help improve this project !
99
+
100
+ - [Open an Issue](https://github.com/PaulMarisOUMary/OBDII/issues)
101
+ - [Join the Discussion](https://github.com/PaulMarisOUMary/OBDII/discussions)
102
+
103
+ ---
104
+
105
+ Thank you for using or contributing to this project.
106
+ Follow our updates by leaving a star to this repository !
@@ -0,0 +1,5 @@
1
+ __title__ = 'obdii'
2
+ __author__ = 'PaulMarisOUMary'
3
+ __license__ = 'MIT'
4
+ __copyright__ = 'Copyright 2025-present PaulMarisOUMary'
5
+ __version__ = '0.0.1a2'
@@ -0,0 +1,106 @@
1
+ Metadata-Version: 2.2
2
+ Name: py-obdii
3
+ Version: 0.0.1a2
4
+ Summary: A Python library for interacting with OBD-II.
5
+ Author: PaulMarisOUMary
6
+ License: MIT License
7
+
8
+ Copyright (c) 2025-present PaulMarisOUMary
9
+
10
+ Permission is hereby granted, free of charge, to any person obtaining a copy
11
+ of this software and associated documentation files (the "Software"), to deal
12
+ in the Software without restriction, including without limitation the rights
13
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14
+ copies of the Software, and to permit persons to whom the Software is
15
+ furnished to do so, subject to the following conditions:
16
+
17
+ The above copyright notice and this permission notice shall be included in all
18
+ copies or substantial portions of the Software.
19
+
20
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
26
+ SOFTWARE.
27
+ Project-URL: Repository, https://github.com/PaulMarisOUMary/OBDII
28
+ Requires-Python: >=3.8
29
+ Description-Content-Type: text/markdown
30
+ License-File: LICENSE
31
+ Requires-Dist: pyserial<4,>=3.5
32
+ Provides-Extra: test
33
+ Requires-Dist: pytest; extra == "test"
34
+ Provides-Extra: dev
35
+ Requires-Dist: ELM327-emulator; extra == "dev"
36
+
37
+ # OBDII
38
+
39
+ A Python ≥3.8 library for interacting with OBDII.
40
+
41
+ ## Installing
42
+
43
+ Python 3.8 or higher is required.
44
+
45
+ A [Virtual Environment](https://docs.python.org/3/library/venv.html) is recommended to install the library.
46
+
47
+ ```bash
48
+ # Linux/macOS
49
+ python3 -m venv .venv
50
+ source .venv/bin/activate
51
+
52
+ # Windows
53
+ py -3 -m venv .venv
54
+ .venv\Scripts\activate
55
+ ```
56
+
57
+ To install the development version, run:
58
+
59
+ ```bash
60
+ # From Github
61
+ pip install git+https://github.com/PaulMarisOUMary/OBDII@main[dev,test]
62
+
63
+ # From local source
64
+ git clone https://github.com/PaulMarisOUMary/OBDII
65
+ cd OBDII
66
+ pip install .[dev,test]
67
+ ```
68
+
69
+ ## Usage Example
70
+
71
+ > [!IMPORTANT]
72
+ > This library is still in the design phase and may change in the future.
73
+
74
+ ```python
75
+ from obdii import commands
76
+ from obdii.connection import Connection
77
+
78
+ conn = Connection("COM5")
79
+
80
+ conn.connect()
81
+ response = conn.query(commands.VEHICLE_SPEED)
82
+ print(f"Vehicle Speed: {response} km/h")
83
+
84
+ conn.close()
85
+ ```
86
+
87
+ ## Contributing & Development
88
+
89
+ The development of this library follows the [ELM327 PDF](/docs/ELM327.PDF) provided by Elm Electronics, with the goal of implementing most features and commands as outlined, starting from page 6 of the document.
90
+
91
+ This library aims to deliver robust error handling, comprehensive logging, complete type hinting support, and follow best practices to create a reliable tool.
92
+
93
+ Please, feel free to contribute and share your feedback !
94
+
95
+ ## Support & Contact
96
+
97
+ For questions or support, open an issue or start a discussion on GitHub.
98
+ Your feedback and questions are greatly appreciated and will help improve this project !
99
+
100
+ - [Open an Issue](https://github.com/PaulMarisOUMary/OBDII/issues)
101
+ - [Join the Discussion](https://github.com/PaulMarisOUMary/OBDII/discussions)
102
+
103
+ ---
104
+
105
+ Thank you for using or contributing to this project.
106
+ Follow our updates by leaving a star to this repository !
@@ -0,0 +1,12 @@
1
+ LICENSE
2
+ pyproject.toml
3
+ requirements.txt
4
+ setup.py
5
+ .github/README.md
6
+ obdii/__init__.py
7
+ py_obdii.egg-info/PKG-INFO
8
+ py_obdii.egg-info/SOURCES.txt
9
+ py_obdii.egg-info/dependency_links.txt
10
+ py_obdii.egg-info/requires.txt
11
+ py_obdii.egg-info/top_level.txt
12
+ tests/test_helper.py
@@ -0,0 +1,7 @@
1
+ pyserial<4,>=3.5
2
+
3
+ [dev]
4
+ ELM327-emulator
5
+
6
+ [test]
7
+ pytest
@@ -0,0 +1 @@
1
+ obdii
@@ -0,0 +1,29 @@
1
+ [build-system]
2
+ requires = ["setuptools"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "py-obdii"
7
+ description = "A Python library for interacting with OBD-II."
8
+ readme = { file = ".github/README.md", content-type = "text/markdown" }
9
+ authors = [{ name = "PaulMarisOUMary" }]
10
+ license = { file = "LICENSE" }
11
+ requires-python = ">=3.8"
12
+ dynamic = ["version", "dependencies"]
13
+
14
+ [project.urls]
15
+ Repository = "https://github.com/PaulMarisOUMary/OBDII"
16
+
17
+ [tool.setuptools]
18
+ packages = ["obdii"]
19
+
20
+ [tool.setuptools.dynamic]
21
+ dependencies = { file = "requirements.txt" }
22
+
23
+ [project.optional-dependencies]
24
+ test = [
25
+ "pytest",
26
+ ]
27
+ dev = [
28
+ "ELM327-emulator",
29
+ ]
@@ -0,0 +1 @@
1
+ pyserial>=3.5,<4
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,32 @@
1
+ from setuptools import setup
2
+ import re
3
+
4
+
5
+ def derive_version() -> str:
6
+ version = ''
7
+ with open('obdii/__init__.py') as f:
8
+ version = re.search(r'^__version__\s*=\s*[\'"]([^\'"]*)[\'"]', f.read(), re.MULTILINE).group(1)
9
+
10
+ if not version:
11
+ raise RuntimeError('version is not set')
12
+
13
+ if version.endswith(('a', 'b', 'rc')):
14
+ # append version identifier based on commit count
15
+ try:
16
+ import subprocess
17
+
18
+ p = subprocess.Popen(['git', 'rev-list', '--count', 'HEAD'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
19
+ out, _ = p.communicate()
20
+ if out:
21
+ version += out.decode('utf-8').strip()
22
+ p = subprocess.Popen(['git', 'rev-parse', '--short', 'HEAD'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
23
+ out, _ = p.communicate()
24
+ if out:
25
+ version += '+g' + out.decode('utf-8').strip()
26
+ except Exception:
27
+ pass
28
+
29
+ return version
30
+
31
+
32
+ setup(version=derive_version())
File without changes