sthenos 0.1.0__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.
sthenos-0.1.0/PKG-INFO ADDED
@@ -0,0 +1,10 @@
1
+ Metadata-Version: 2.4
2
+ Name: sthenos
3
+ Version: 0.1.0
4
+ Summary: A Python-scriptable load testing tool (Go binary wrapper)
5
+ Author-email: Aldo Richard Santillán Echevarría <richard.24.se@gmail.com>
6
+ License: MIT
7
+ Classifier: Programming Language :: Python :: 3
8
+ Classifier: Operating System :: OS Independent
9
+ Requires-Python: >=3.7
10
+ Description-Content-Type: text/markdown
@@ -0,0 +1,22 @@
1
+ [build-system]
2
+ requires = ["setuptools>=42", "wheel"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "sthenos"
7
+ version = "0.1.0"
8
+ description = "A Python-scriptable load testing tool (Go binary wrapper)"
9
+ authors = [
10
+ {name = "Aldo Richard Santillán Echevarría", email = "richard.24.se@gmail.com"},
11
+ ]
12
+ readme = "README.md"
13
+ license = {text = "MIT"}
14
+ classifiers = [
15
+ "Programming Language :: Python :: 3",
16
+ "Operating System :: OS Independent",
17
+ ]
18
+ requires-python = ">=3.7"
19
+ dependencies = []
20
+
21
+ [project.scripts]
22
+ sthenos = "sthenos.cli:main"
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
sthenos-0.1.0/setup.py ADDED
@@ -0,0 +1,11 @@
1
+ from setuptools import setup, find_packages
2
+
3
+ setup(
4
+ name="sthenos",
5
+ version="0.2.0",
6
+ packages=find_packages(),
7
+ include_package_data=True,
8
+ package_data={
9
+ 'sthenos': ['bin/*'],
10
+ },
11
+ )
@@ -0,0 +1,21 @@
1
+ # Sthenos API Stubs
2
+ # These definitions exist purely for IDE autocompletion.
3
+ # The actual logic is executed by the Go runtime.
4
+
5
+ from typing import Dict, Optional, Any, Union
6
+
7
+ ENV: Dict[str, str] = {}
8
+
9
+ class HTTPResponse:
10
+ status: int
11
+ def json(self) -> Any: ...
12
+
13
+ class HTTP:
14
+ def get(self, url: str, params: Optional[Dict] = None) -> HTTPResponse: ...
15
+ def post(self, url: str, body: Optional[str] = None, params: Optional[Dict] = None) -> HTTPResponse: ...
16
+
17
+ http = HTTP()
18
+
19
+ def check(val: Any, checks: Dict[str, Any]) -> bool: ...
20
+
21
+ def sleep(seconds: Union[int, float]): ...
Binary file
Binary file
Binary file
@@ -0,0 +1,44 @@
1
+ import sys
2
+ import os
3
+ import subprocess
4
+ import platform
5
+
6
+ def main():
7
+ # Detect Source Directory
8
+ base_dir = os.path.dirname(os.path.abspath(__file__))
9
+ bin_dir = os.path.join(base_dir, "bin")
10
+
11
+ # Detect OS
12
+ system = platform.system().lower()
13
+
14
+ binary_name = "sthenos"
15
+ if system == "windows":
16
+ binary_name = "sthenos.exe"
17
+ elif system == "linux":
18
+ binary_name = "sthenos-linux"
19
+ elif system == "darwin":
20
+ binary_name = "sthenos-mac"
21
+ else:
22
+ print(f"Warning: Unknown operating system '{system}'. Trying default 'sthenos' binary.")
23
+
24
+ binary_path = os.path.join(bin_dir, binary_name)
25
+
26
+ if not os.path.exists(binary_path):
27
+ print(f"Error: Sthenos binary not found at {binary_path}")
28
+ print("Please ensure the package was installed correctly.")
29
+ sys.exit(1)
30
+
31
+ # Forward arguments to the binary
32
+ # We use subprocess to hand over control
33
+ try:
34
+ # Pass all args except the first one (which is the script name 'sthenos')
35
+ cmd = [binary_path] + sys.argv[1:]
36
+ subprocess.call(cmd)
37
+ except KeyboardInterrupt:
38
+ pass
39
+ except Exception as e:
40
+ print(f"Error launching sthenos: {e}")
41
+ sys.exit(1)
42
+
43
+ if __name__ == "__main__":
44
+ main()
@@ -0,0 +1,10 @@
1
+ Metadata-Version: 2.4
2
+ Name: sthenos
3
+ Version: 0.1.0
4
+ Summary: A Python-scriptable load testing tool (Go binary wrapper)
5
+ Author-email: Aldo Richard Santillán Echevarría <richard.24.se@gmail.com>
6
+ License: MIT
7
+ Classifier: Programming Language :: Python :: 3
8
+ Classifier: Operating System :: OS Independent
9
+ Requires-Python: >=3.7
10
+ Description-Content-Type: text/markdown
@@ -0,0 +1,12 @@
1
+ pyproject.toml
2
+ setup.py
3
+ sthenos/__init__.py
4
+ sthenos/cli.py
5
+ sthenos.egg-info/PKG-INFO
6
+ sthenos.egg-info/SOURCES.txt
7
+ sthenos.egg-info/dependency_links.txt
8
+ sthenos.egg-info/entry_points.txt
9
+ sthenos.egg-info/top_level.txt
10
+ sthenos/bin/sthenos-linux
11
+ sthenos/bin/sthenos-mac
12
+ sthenos/bin/sthenos.exe
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ sthenos = sthenos.cli:main
@@ -0,0 +1 @@
1
+ sthenos