IncludeCPP 4.7.0__tar.gz → 4.7.3__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 (76) hide show
  1. {includecpp-4.7.0 → includecpp-4.7.3}/IncludeCPP.egg-info/PKG-INFO +1 -1
  2. {includecpp-4.7.0 → includecpp-4.7.3}/PKG-INFO +1 -1
  3. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/__init__.py +24 -3
  4. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/cli/commands.py +11 -2
  5. {includecpp-4.7.0 → includecpp-4.7.3}/pyproject.toml +1 -1
  6. {includecpp-4.7.0 → includecpp-4.7.3}/IncludeCPP.egg-info/SOURCES.txt +0 -0
  7. {includecpp-4.7.0 → includecpp-4.7.3}/IncludeCPP.egg-info/dependency_links.txt +0 -0
  8. {includecpp-4.7.0 → includecpp-4.7.3}/IncludeCPP.egg-info/entry_points.txt +0 -0
  9. {includecpp-4.7.0 → includecpp-4.7.3}/IncludeCPP.egg-info/requires.txt +0 -0
  10. {includecpp-4.7.0 → includecpp-4.7.3}/IncludeCPP.egg-info/top_level.txt +0 -0
  11. {includecpp-4.7.0 → includecpp-4.7.3}/LICENSE +0 -0
  12. {includecpp-4.7.0 → includecpp-4.7.3}/MANIFEST.in +0 -0
  13. {includecpp-4.7.0 → includecpp-4.7.3}/README.md +0 -0
  14. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/CHANGELOG.md +0 -0
  15. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/DOCUMENTATION.md +0 -0
  16. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/__init__.pyi +0 -0
  17. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/__main__.py +0 -0
  18. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/cli/__init__.py +0 -0
  19. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/cli/config_parser.py +0 -0
  20. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/__init__.py +0 -0
  21. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/ai_integration.py +0 -0
  22. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/build_manager.py +0 -0
  23. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cpp_api.py +0 -0
  24. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cpp_api.pyi +0 -0
  25. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cpp_api_extensions.pyi +0 -0
  26. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cppy_converter.py +0 -0
  27. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl/CSSL_DOCUMENTATION.md +0 -0
  28. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl/CSSL_DOCUMENTATION_NEW.md +0 -0
  29. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl/__init__.py +0 -0
  30. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl/cpp/build/api.pyd +0 -0
  31. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl/cpp/build/cssl_core.pyi +0 -0
  32. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl/cpp/build/libgcc_s_seh-1.dll +0 -0
  33. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl/cpp/build/libstdc++-6.dll +0 -0
  34. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl/cpp/build/libwinpthread-1.dll +0 -0
  35. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl/cpp/cssl_core.cp +0 -0
  36. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl/cpp/cssl_lexer.hpp +0 -0
  37. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl/cssl_builtins.py +0 -0
  38. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl/cssl_builtins.pyi +0 -0
  39. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl/cssl_compiler.py +0 -0
  40. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl/cssl_events.py +0 -0
  41. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl/cssl_languages.py +0 -0
  42. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl/cssl_modules.py +0 -0
  43. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl/cssl_optimizer.py +0 -0
  44. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl/cssl_parser.py +0 -0
  45. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl/cssl_runtime.py +0 -0
  46. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl/cssl_syntax.py +0 -0
  47. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl/cssl_types.py +0 -0
  48. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl_bridge.py +0 -0
  49. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/cssl_bridge.pyi +0 -0
  50. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/error_catalog.py +0 -0
  51. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/error_formatter.py +0 -0
  52. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/exceptions.py +0 -0
  53. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/homeserver.py +0 -0
  54. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/path_discovery.py +0 -0
  55. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/project_ui.py +0 -0
  56. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/core/settings_ui.py +0 -0
  57. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/generator/__init__.py +0 -0
  58. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/generator/parser.cpp +0 -0
  59. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/generator/parser.h +0 -0
  60. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/generator/type_resolver.cpp +0 -0
  61. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/generator/type_resolver.h +0 -0
  62. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/py.typed +0 -0
  63. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/templates/cpp.proj.template +0 -0
  64. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/vscode/__init__.py +0 -0
  65. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/vscode/cssl/__init__.py +0 -0
  66. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/vscode/cssl/extension.js +0 -0
  67. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/vscode/cssl/images/cssl.png +0 -0
  68. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/vscode/cssl/images/cssl_pl.png +0 -0
  69. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/vscode/cssl/language-configuration.json +0 -0
  70. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/vscode/cssl/package.json +0 -0
  71. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/vscode/cssl/snippets/cssl.snippets.json +0 -0
  72. {includecpp-4.7.0 → includecpp-4.7.3}/includecpp/vscode/cssl/syntaxes/cssl.tmLanguage.json +0 -0
  73. {includecpp-4.7.0 → includecpp-4.7.3}/requirements.txt +0 -0
  74. {includecpp-4.7.0 → includecpp-4.7.3}/setup.cfg +0 -0
  75. {includecpp-4.7.0 → includecpp-4.7.3}/setup.py +0 -0
  76. {includecpp-4.7.0 → includecpp-4.7.3}/tests/test_multilang.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: IncludeCPP
3
- Version: 4.7.0
3
+ Version: 4.7.3
4
4
  Summary: Professional C++ Python bindings with type-generic templates, pystubs and native threading
5
5
  Home-page: https://github.com/liliassg/IncludeCPP
6
6
  Author: Lilias Hatterscheidt
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: IncludeCPP
3
- Version: 4.7.0
3
+ Version: 4.7.3
4
4
  Summary: Professional C++ Python bindings with type-generic templates, pystubs and native threading
5
5
  Home-page: https://github.com/liliassg/IncludeCPP
6
6
  Author: Lilias Hatterscheidt
@@ -5,7 +5,7 @@ import os
5
5
  import sys
6
6
  from pathlib import Path
7
7
 
8
- __version__ = "4.7.0"
8
+ __version__ = "4.7.3"
9
9
  __all__ = ["CppApi", "CSSL"]
10
10
 
11
11
  # Module-level cache for C++ modules
@@ -22,10 +22,31 @@ def _get_frozen_api():
22
22
  global _frozen_api
23
23
  if _frozen_api is None:
24
24
  try:
25
+ # In PyInstaller, sys._MEIPASS is the temp extraction directory
26
+ if hasattr(sys, '_MEIPASS'):
27
+ meipass = sys._MEIPASS
28
+ if meipass not in sys.path:
29
+ sys.path.insert(0, meipass)
30
+
31
+ # Try to load api.pyd directly using importlib
32
+ import importlib.util
33
+ ext = '.pyd' if sys.platform == 'win32' else '.so'
34
+ api_path = os.path.join(meipass, f'api{ext}')
35
+
36
+ if os.path.exists(api_path):
37
+ spec = importlib.util.spec_from_file_location('api', api_path)
38
+ if spec and spec.loader:
39
+ api_module = importlib.util.module_from_spec(spec)
40
+ sys.modules['api'] = api_module
41
+ spec.loader.exec_module(api_module)
42
+ _frozen_api = api_module
43
+ return _frozen_api
44
+
45
+ # Fallback to regular import
25
46
  import api
26
47
  _frozen_api = api
27
- except ImportError:
28
- _frozen_api = False # Mark as not available
48
+ except Exception:
49
+ _frozen_api = False
29
50
  return _frozen_api if _frozen_api else None
30
51
 
31
52
  def _get_api():
@@ -556,7 +556,7 @@ def _make_executable(script_path: str, output_name: str = None, onefile: bool =
556
556
  try:
557
557
  from ..core.build_manager import BuildManager
558
558
  from .config_parser import CppProjectConfig
559
- from .compiler_detect import detect_compiler
559
+ # detect_compiler is defined in this file
560
560
 
561
561
  config = CppProjectConfig(config_path=cpp_proj_path)
562
562
  project_root = cpp_proj_path.parent
@@ -580,8 +580,15 @@ def _make_executable(script_path: str, output_name: str = None, onefile: bool =
580
580
 
581
581
  if build_dir.exists():
582
582
  # Find all .pyd files (Windows) or .so files (Linux/Mac)
583
+ # They are in the bindings/ subdirectory
583
584
  ext = '.pyd' if sys.platform == 'win32' else '.so'
584
- pyd_files = list(build_dir.glob(f'*{ext}'))
585
+ bindings_dir = build_dir / 'bindings'
586
+
587
+ # Search recursively in case structure changes
588
+ pyd_files = list(bindings_dir.glob(f'*{ext}')) if bindings_dir.exists() else []
589
+ if not pyd_files:
590
+ # Fallback: search entire build dir recursively
591
+ pyd_files = list(build_dir.glob(f'**/*{ext}'))
585
592
 
586
593
  for pyd_file in pyd_files:
587
594
  click.echo(f" Including: {pyd_file.name}")
@@ -590,6 +597,8 @@ def _make_executable(script_path: str, output_name: str = None, onefile: bool =
590
597
 
591
598
  if pyd_files:
592
599
  click.secho(f" Added {len(pyd_files)} compiled module(s)", fg='green')
600
+ else:
601
+ click.secho(" Warning: No compiled modules found in build directory", fg='yellow')
593
602
  else:
594
603
  click.secho(" Warning: Build directory not found", fg='yellow')
595
604
 
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "IncludeCPP"
7
- version = "4.7.0"
7
+ version = "4.7.3"
8
8
  description = "Professional C++ Python bindings with type-generic templates, pystubs and native threading"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.9"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes