scios-cli 0.1.6__tar.gz → 0.1.7__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.
- {scios_cli-0.1.6/scios_cli.egg-info → scios_cli-0.1.7}/PKG-INFO +7 -2
- {scios_cli-0.1.6 → scios_cli-0.1.7}/README.md +6 -1
- {scios_cli-0.1.6 → scios_cli-0.1.7}/pyproject.toml +1 -1
- {scios_cli-0.1.6 → scios_cli-0.1.7}/scios_cli/install.py +29 -15
- {scios_cli-0.1.6 → scios_cli-0.1.7/scios_cli.egg-info}/PKG-INFO +7 -2
- {scios_cli-0.1.6 → scios_cli-0.1.7}/LICENSE +0 -0
- {scios_cli-0.1.6 → scios_cli-0.1.7}/scios_cli/__init__.py +0 -0
- {scios_cli-0.1.6 → scios_cli-0.1.7}/scios_cli/__main__.py +0 -0
- {scios_cli-0.1.6 → scios_cli-0.1.7}/scios_cli/main.py +0 -0
- {scios_cli-0.1.6 → scios_cli-0.1.7}/scios_cli.egg-info/SOURCES.txt +0 -0
- {scios_cli-0.1.6 → scios_cli-0.1.7}/scios_cli.egg-info/dependency_links.txt +0 -0
- {scios_cli-0.1.6 → scios_cli-0.1.7}/scios_cli.egg-info/entry_points.txt +0 -0
- {scios_cli-0.1.6 → scios_cli-0.1.7}/scios_cli.egg-info/requires.txt +0 -0
- {scios_cli-0.1.6 → scios_cli-0.1.7}/scios_cli.egg-info/top_level.txt +0 -0
- {scios_cli-0.1.6 → scios_cli-0.1.7}/setup.cfg +0 -0
- {scios_cli-0.1.6 → scios_cli-0.1.7}/setup.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: scios-cli
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.7
|
|
4
4
|
Summary: Scios Local Agent Workspace Sync CLI — bridge your terminal to the Scios Cloud backend
|
|
5
5
|
Author: Scios Team
|
|
6
6
|
License: Apache-2.0
|
|
@@ -51,10 +51,15 @@ Scios CLI requires **Python 3.9+** and can be installed in one command:
|
|
|
51
51
|
pip install scios-cli
|
|
52
52
|
```
|
|
53
53
|
|
|
54
|
-
> **Note:** If `scios-init` / `scios-sync` aren't found after install, use the
|
|
54
|
+
> **Note:** If `scios-init` / `scios-sync` aren't found after install (common on Windows where Python's `Scripts` folder isn't in PATH), use the module form instead:
|
|
55
55
|
> ```bash
|
|
56
|
+
> # macOS / Linux
|
|
56
57
|
> python3 -m scios_cli init # same as scios-init
|
|
57
58
|
> python3 -m scios_cli sync # same as scios-sync
|
|
59
|
+
>
|
|
60
|
+
> # Windows
|
|
61
|
+
> python -m scios_cli init
|
|
62
|
+
> python -m scios_cli sync
|
|
58
63
|
> ```
|
|
59
64
|
|
|
60
65
|
### Install Deep Link Handler (Critical) 🔗
|
|
@@ -21,10 +21,15 @@ Scios CLI requires **Python 3.9+** and can be installed in one command:
|
|
|
21
21
|
pip install scios-cli
|
|
22
22
|
```
|
|
23
23
|
|
|
24
|
-
> **Note:** If `scios-init` / `scios-sync` aren't found after install, use the
|
|
24
|
+
> **Note:** If `scios-init` / `scios-sync` aren't found after install (common on Windows where Python's `Scripts` folder isn't in PATH), use the module form instead:
|
|
25
25
|
> ```bash
|
|
26
|
+
> # macOS / Linux
|
|
26
27
|
> python3 -m scios_cli init # same as scios-init
|
|
27
28
|
> python3 -m scios_cli sync # same as scios-sync
|
|
29
|
+
>
|
|
30
|
+
> # Windows
|
|
31
|
+
> python -m scios_cli init
|
|
32
|
+
> python -m scios_cli sync
|
|
28
33
|
> ```
|
|
29
34
|
|
|
30
35
|
### Install Deep Link Handler (Critical) 🔗
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "scios-cli"
|
|
7
|
-
version = "0.1.
|
|
7
|
+
version = "0.1.7"
|
|
8
8
|
description = "Scios Local Agent Workspace Sync CLI — bridge your terminal to the Scios Cloud backend"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = {text = "Apache-2.0"}
|
|
@@ -160,14 +160,14 @@ if __name__ == "__main__":
|
|
|
160
160
|
def _find_scios_sync() -> str:
|
|
161
161
|
"""Find the scios-sync executable path."""
|
|
162
162
|
import sys
|
|
163
|
+
import sysconfig
|
|
163
164
|
from pathlib import Path
|
|
164
165
|
|
|
165
166
|
is_windows = sys.platform == "win32"
|
|
166
167
|
exe_name = "scios-sync.exe" if is_windows else "scios-sync"
|
|
167
168
|
|
|
168
|
-
# Check next to the current python executable (works for venvs and global installs)
|
|
169
|
+
# 1. Check next to the current python executable (works for venvs and global installs)
|
|
169
170
|
python_dir = Path(sys.executable).parent
|
|
170
|
-
# On Windows, pip installs scripts into a Scripts/ subdirectory
|
|
171
171
|
if is_windows:
|
|
172
172
|
scripts_dir = python_dir / "Scripts"
|
|
173
173
|
sibling_sync = scripts_dir / exe_name
|
|
@@ -177,28 +177,42 @@ def _find_scios_sync() -> str:
|
|
|
177
177
|
if sibling_sync.exists() and (is_windows or os.access(sibling_sync, os.X_OK)):
|
|
178
178
|
return str(sibling_sync)
|
|
179
179
|
|
|
180
|
-
# Check
|
|
180
|
+
# 2. Check the user scripts directory (pip install --user puts scripts here)
|
|
181
|
+
try:
|
|
182
|
+
user_scripts = sysconfig.get_path("scripts", scheme="nt_user" if is_windows else "posix_user")
|
|
183
|
+
if user_scripts:
|
|
184
|
+
user_sync = Path(user_scripts) / exe_name
|
|
185
|
+
if user_sync.exists():
|
|
186
|
+
return str(user_sync)
|
|
187
|
+
except Exception:
|
|
188
|
+
pass
|
|
189
|
+
|
|
190
|
+
# 3. Check common locations with dynamic version detection
|
|
191
|
+
vi = sys.version_info
|
|
192
|
+
versions = [f"{vi.major}{vi.minor}"] # Current version first
|
|
193
|
+
for minor in range(15, 8, -1): # 3.15 down to 3.9
|
|
194
|
+
v = f"3{minor}"
|
|
195
|
+
if v not in versions:
|
|
196
|
+
versions.append(v)
|
|
197
|
+
|
|
181
198
|
if is_windows:
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
str(Path.home() / "AppData" / "
|
|
185
|
-
|
|
186
|
-
] + [
|
|
187
|
-
str(Path.home() / "AppData" / "Roaming" / "Python" / f"Python{v}" / "Scripts" / exe_name)
|
|
188
|
-
for v in ["313", "312", "311", "310", "39"]
|
|
189
|
-
]
|
|
199
|
+
candidates = []
|
|
200
|
+
for v in versions:
|
|
201
|
+
candidates.append(str(Path.home() / "AppData" / "Roaming" / "Python" / f"Python{v}" / "Scripts" / exe_name))
|
|
202
|
+
candidates.append(str(Path.home() / "AppData" / "Local" / "Programs" / "Python" / f"Python{v}" / "Scripts" / exe_name))
|
|
190
203
|
else:
|
|
191
204
|
candidates = [
|
|
192
|
-
"/Library/Frameworks/Python.framework/Versions/3.12/bin/scios-sync",
|
|
193
|
-
"/Library/Frameworks/Python.framework/Versions/3.13/bin/scios-sync",
|
|
194
205
|
"/usr/local/bin/scios-sync",
|
|
195
206
|
str(Path.home() / ".local" / "bin" / "scios-sync"),
|
|
196
207
|
]
|
|
208
|
+
for v in versions:
|
|
209
|
+
candidates.append(f"/Library/Frameworks/Python.framework/Versions/3.{v[1:]}/bin/scios-sync")
|
|
210
|
+
|
|
197
211
|
for candidate in candidates:
|
|
198
212
|
if os.path.isfile(candidate) and (is_windows or os.access(candidate, os.X_OK)):
|
|
199
213
|
return candidate
|
|
200
214
|
|
|
201
|
-
# Try `which` (Unix) or `where` (Windows)
|
|
215
|
+
# 4. Try `which` (Unix) or `where` (Windows)
|
|
202
216
|
try:
|
|
203
217
|
find_cmd = "where" if is_windows else "which"
|
|
204
218
|
result = subprocess.run(
|
|
@@ -210,7 +224,7 @@ def _find_scios_sync() -> str:
|
|
|
210
224
|
except Exception:
|
|
211
225
|
pass
|
|
212
226
|
|
|
213
|
-
# Fallback — will be searched in PATH at runtime
|
|
227
|
+
# 5. Fallback — will be searched in PATH at runtime
|
|
214
228
|
return "scios-sync"
|
|
215
229
|
|
|
216
230
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: scios-cli
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.7
|
|
4
4
|
Summary: Scios Local Agent Workspace Sync CLI — bridge your terminal to the Scios Cloud backend
|
|
5
5
|
Author: Scios Team
|
|
6
6
|
License: Apache-2.0
|
|
@@ -51,10 +51,15 @@ Scios CLI requires **Python 3.9+** and can be installed in one command:
|
|
|
51
51
|
pip install scios-cli
|
|
52
52
|
```
|
|
53
53
|
|
|
54
|
-
> **Note:** If `scios-init` / `scios-sync` aren't found after install, use the
|
|
54
|
+
> **Note:** If `scios-init` / `scios-sync` aren't found after install (common on Windows where Python's `Scripts` folder isn't in PATH), use the module form instead:
|
|
55
55
|
> ```bash
|
|
56
|
+
> # macOS / Linux
|
|
56
57
|
> python3 -m scios_cli init # same as scios-init
|
|
57
58
|
> python3 -m scios_cli sync # same as scios-sync
|
|
59
|
+
>
|
|
60
|
+
> # Windows
|
|
61
|
+
> python -m scios_cli init
|
|
62
|
+
> python -m scios_cli sync
|
|
58
63
|
> ```
|
|
59
64
|
|
|
60
65
|
### Install Deep Link Handler (Critical) 🔗
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|