forgexa-cli 1.43.3__tar.gz → 1.43.4__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.
Files changed (27) hide show
  1. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/PKG-INFO +1 -1
  2. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/forgexa_cli/__init__.py +1 -1
  3. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/forgexa_cli/daemon.py +11 -11
  4. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/forgexa_cli.egg-info/PKG-INFO +1 -1
  5. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/pyproject.toml +1 -1
  6. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/tests/test_auth_and_runtime_commands.py +1 -0
  7. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/README.md +0 -0
  8. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/forgexa_cli/_build_config.py +0 -0
  9. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/forgexa_cli/_local_bind.py +0 -0
  10. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/forgexa_cli/agent_core.py +0 -0
  11. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/forgexa_cli/autoupgrade.py +0 -0
  12. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/forgexa_cli/main.py +0 -0
  13. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/forgexa_cli/py.typed +0 -0
  14. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/forgexa_cli.egg-info/SOURCES.txt +0 -0
  15. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/forgexa_cli.egg-info/dependency_links.txt +0 -0
  16. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/forgexa_cli.egg-info/entry_points.txt +0 -0
  17. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/forgexa_cli.egg-info/requires.txt +0 -0
  18. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/forgexa_cli.egg-info/top_level.txt +0 -0
  19. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/setup.cfg +0 -0
  20. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/tests/test_autoupgrade.py +0 -0
  21. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/tests/test_check_command.py +0 -0
  22. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/tests/test_expiry_warnings_and_revoke.py +0 -0
  23. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/tests/test_local_bind_commands.py +0 -0
  24. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/tests/test_runtime_credentials.py +0 -0
  25. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/tests/test_session_credentials.py +0 -0
  26. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/tests/test_silent_install.py +0 -0
  27. {forgexa_cli-1.43.3 → forgexa_cli-1.43.4}/tests/test_upgrade_observability.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: forgexa-cli
3
- Version: 1.43.3
3
+ Version: 1.43.4
4
4
  Summary: Forgexa CLI — command-line client and AI agent runtime for the Forgexa platform
5
5
  Author-email: Jason Sun <dev.winds@gmail.com>
6
6
  License-Expression: MIT
@@ -1,2 +1,2 @@
1
1
  """forgexa-cli — Forgexa command-line client."""
2
- __version__ = "1.43.3"
2
+ __version__ = "1.43.4"
@@ -505,6 +505,7 @@ def _httpx_install_commands(python: str, deps_dir: str) -> list[tuple[str, list[
505
505
  deps_dir,
506
506
  "--quiet",
507
507
  "--upgrade",
508
+ "--ignore-installed",
508
509
  "httpx>=0.24",
509
510
  "httpcore",
510
511
  "certifi",
@@ -686,16 +687,15 @@ if not _httpx_ok:
686
687
  _httpx_ok, _httpx_missing = _validate_httpx_imports()
687
688
 
688
689
  if not _httpx_ok:
689
- # If httpx is present but a sub-dependency (httpcore) is missing,
690
- # the deps directory has a partial/stale installation. Clear it and
691
- # purge cached modules so pip does a clean install with all transitive
692
- # dependencies.
693
- if _httpx_missing != "httpx":
694
- shutil.rmtree(_HTTPX_DEPS_DIR, ignore_errors=True)
695
- for _mod_key in list(sys.modules):
696
- if _mod_key in ("httpx", "httpcore", "certifi") or \
697
- _mod_key.startswith(("httpx.", "httpcore.", "certifi.")):
698
- del sys.modules[_mod_key]
690
+ # Any failed validation means the private directory may be incomplete.
691
+ # `pip --target` otherwise treats globally installed distributions as
692
+ # satisfying requirements and can exit 0 without repairing this isolated
693
+ # import path. Start clean and drop partially imported modules first.
694
+ shutil.rmtree(_HTTPX_DEPS_DIR, ignore_errors=True)
695
+ for _mod_key in list(sys.modules):
696
+ if _mod_key in ("httpx", "httpcore", "certifi") or \
697
+ _mod_key.startswith(("httpx.", "httpcore.", "certifi.")):
698
+ del sys.modules[_mod_key]
699
699
 
700
700
  # Attempt auto-install to user-writable deps directory
701
701
  _ok, _err = _try_install_httpx(_HTTPX_DEPS_DIR)
@@ -910,7 +910,7 @@ except (ImportError, ModuleNotFoundError):
910
910
  # DAEMON_VERSION is the protocol/logic version of the daemon code.
911
911
  # Kept in sync with pyproject.toml version via bump-version.sh.
912
912
  # CLIENT_TYPE identifies which packaging/distribution this daemon runs in.
913
- DAEMON_VERSION = "1.43.3"
913
+ DAEMON_VERSION = "1.43.4"
914
914
 
915
915
 
916
916
  def _detect_client_type() -> str:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: forgexa-cli
3
- Version: 1.43.3
3
+ Version: 1.43.4
4
4
  Summary: Forgexa CLI — command-line client and AI agent runtime for the Forgexa platform
5
5
  Author-email: Jason Sun <dev.winds@gmail.com>
6
6
  License-Expression: MIT
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "forgexa-cli"
3
- version = "1.43.3"
3
+ version = "1.43.4"
4
4
  description = "Forgexa CLI — command-line client and AI agent runtime for the Forgexa platform"
5
5
  requires-python = ">=3.9"
6
6
  license = "MIT"
@@ -383,6 +383,7 @@ def test_httpx_install_commands_use_isolated_target_only() -> None:
383
383
  label, cmd = strategies[0]
384
384
  assert label == "pip install --target (isolated deps)"
385
385
  assert "--target" in cmd
386
+ assert "--ignore-installed" in cmd
386
387
  assert "--user" not in cmd
387
388
  assert "--break-system-packages" not in cmd
388
389
 
File without changes
File without changes