IncludeCPP 3.3.2__tar.gz → 3.3.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 (38) hide show
  1. {includecpp-3.3.2 → includecpp-3.3.4}/IncludeCPP.egg-info/PKG-INFO +50 -2
  2. {includecpp-3.3.2 → includecpp-3.3.4}/PKG-INFO +50 -2
  3. {includecpp-3.3.2 → includecpp-3.3.4}/README.md +49 -1
  4. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/__init__.py +1 -1
  5. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/cli/commands.py +444 -2
  6. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/core/ai_integration.py +9 -1
  7. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/core/cppy_converter.py +931 -151
  8. {includecpp-3.3.2 → includecpp-3.3.4}/pyproject.toml +1 -1
  9. {includecpp-3.3.2 → includecpp-3.3.4}/IncludeCPP.egg-info/SOURCES.txt +0 -0
  10. {includecpp-3.3.2 → includecpp-3.3.4}/IncludeCPP.egg-info/dependency_links.txt +0 -0
  11. {includecpp-3.3.2 → includecpp-3.3.4}/IncludeCPP.egg-info/entry_points.txt +0 -0
  12. {includecpp-3.3.2 → includecpp-3.3.4}/IncludeCPP.egg-info/requires.txt +0 -0
  13. {includecpp-3.3.2 → includecpp-3.3.4}/IncludeCPP.egg-info/top_level.txt +0 -0
  14. {includecpp-3.3.2 → includecpp-3.3.4}/LICENSE +0 -0
  15. {includecpp-3.3.2 → includecpp-3.3.4}/MANIFEST.in +0 -0
  16. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/__init__.pyi +0 -0
  17. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/__main__.py +0 -0
  18. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/cli/__init__.py +0 -0
  19. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/cli/config_parser.py +0 -0
  20. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/core/__init__.py +0 -0
  21. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/core/build_manager.py +0 -0
  22. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/core/cpp_api.py +0 -0
  23. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/core/cpp_api.pyi +0 -0
  24. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/core/error_catalog.py +0 -0
  25. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/core/error_formatter.py +0 -0
  26. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/core/exceptions.py +0 -0
  27. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/core/path_discovery.py +0 -0
  28. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/core/settings_ui.py +0 -0
  29. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/generator/__init__.py +0 -0
  30. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/generator/parser.cpp +0 -0
  31. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/generator/parser.h +0 -0
  32. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/generator/type_resolver.cpp +0 -0
  33. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/generator/type_resolver.h +0 -0
  34. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/py.typed +0 -0
  35. {includecpp-3.3.2 → includecpp-3.3.4}/includecpp/templates/cpp.proj.template +0 -0
  36. {includecpp-3.3.2 → includecpp-3.3.4}/requirements.txt +0 -0
  37. {includecpp-3.3.2 → includecpp-3.3.4}/setup.cfg +0 -0
  38. {includecpp-3.3.2 → includecpp-3.3.4}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: IncludeCPP
3
- Version: 3.3.2
3
+ Version: 3.3.4
4
4
  Summary: Professional C++ Python bindings with type-generic templates, pystubs and native threading
5
5
  Home-page: https://github.com/includecpp/includecpp
6
6
  Author: IncludeCPP Team
@@ -278,6 +278,7 @@ Use `includecpp <command> --help` for details.
278
278
  | `cppy convert <files> --cpp` | Convert Python to C++ |
279
279
  | `cppy convert <files> --py` | Convert C++ to Python |
280
280
  | `cppy convert <files> --cpp --no-h` | Convert without header |
281
+ | `cppy convert <files> --cpp --ai` | AI-assisted conversion |
281
282
  | `cppy analyze <files>` | Analyze code structure |
282
283
  | `cppy types` | Show type mapping tables |
283
284
 
@@ -520,6 +521,35 @@ Converts C++ to Python with:
520
521
  - Methods become class methods with self
521
522
  - Structs become dataclasses
522
523
 
524
+ ### AI-Assisted Conversion
525
+
526
+ ```bash
527
+ includecpp cppy convert complex_lib.py --cpp --ai
528
+ includecpp cppy convert advanced.cpp --py --ai -v
529
+ ```
530
+
531
+ The `--ai` flag enables intelligent conversion with:
532
+ - Section-by-section analysis and processing
533
+ - Automatic `--think2` context level
534
+ - Comprehensive rulebase for precise conversions
535
+ - pybind11 wrappers for Python features without C++ equivalents:
536
+ - Generators -> callback pattern / py::iterator
537
+ - Async/await -> std::async / std::future
538
+ - Context managers -> RAII pattern
539
+ - Duck typing -> templates with concepts
540
+ - Reports API changes to user
541
+ - Fallback to standard conversion if AI unavailable
542
+
543
+ **Workaround Examples:**
544
+ | Python Feature | C++ Workaround |
545
+ |----------------|----------------|
546
+ | `yield` | Callback pattern or py::iterator |
547
+ | `async/await` | std::async + std::future |
548
+ | `with` context | RAII ScopedResource class |
549
+ | List comprehension | transform_to_vector template |
550
+ | Dict comprehension | transform_to_map template |
551
+ | Dynamic attributes | py::object |
552
+
523
553
  ### Analyze Code
524
554
 
525
555
  ```bash
@@ -576,6 +606,24 @@ Options:
576
606
 
577
607
  # Changelog
578
608
 
609
+ ## v3.3.4
610
+ - New `--ai` flag for `cppy convert` - AI-assisted code conversion
611
+ - Automatic `--think2` context for intelligent conversion
612
+ - Comprehensive rulebase for Python <-> C++ translations
613
+ - pybind11 wrappers for unconvertible Python features:
614
+ - Generators -> callback pattern / py::iterator
615
+ - Async/await -> std::async / std::future
616
+ - Context managers -> RAII pattern
617
+ - List/dict comprehensions -> helper templates
618
+ - API change detection and user notification
619
+ - Section-by-section analysis and conversion
620
+ - Graceful fallback to standard conversion if AI unavailable
621
+
622
+ ## v3.3.3
623
+ - Fixed `ai generate` loop bug creating duplicate file changes
624
+ - Fixed unused variable warning in cppy_converter.py
625
+ - Improved deduplication of file changes in AI generate
626
+
579
627
  ## v3.3.2
580
628
  - Fixed version display bug in `includecpp update --version`
581
629
  - New `cppy convert` command for Python <-> C++ code conversion
@@ -663,4 +711,4 @@ Options:
663
711
 
664
712
  ---
665
713
 
666
- MIT License | v3.3.2 | [GitHub](https://github.com/liliassg/IncludeCPP)
714
+ MIT License | v3.3.4 | [GitHub](https://github.com/liliassg/IncludeCPP)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: IncludeCPP
3
- Version: 3.3.2
3
+ Version: 3.3.4
4
4
  Summary: Professional C++ Python bindings with type-generic templates, pystubs and native threading
5
5
  Home-page: https://github.com/includecpp/includecpp
6
6
  Author: IncludeCPP Team
@@ -278,6 +278,7 @@ Use `includecpp <command> --help` for details.
278
278
  | `cppy convert <files> --cpp` | Convert Python to C++ |
279
279
  | `cppy convert <files> --py` | Convert C++ to Python |
280
280
  | `cppy convert <files> --cpp --no-h` | Convert without header |
281
+ | `cppy convert <files> --cpp --ai` | AI-assisted conversion |
281
282
  | `cppy analyze <files>` | Analyze code structure |
282
283
  | `cppy types` | Show type mapping tables |
283
284
 
@@ -520,6 +521,35 @@ Converts C++ to Python with:
520
521
  - Methods become class methods with self
521
522
  - Structs become dataclasses
522
523
 
524
+ ### AI-Assisted Conversion
525
+
526
+ ```bash
527
+ includecpp cppy convert complex_lib.py --cpp --ai
528
+ includecpp cppy convert advanced.cpp --py --ai -v
529
+ ```
530
+
531
+ The `--ai` flag enables intelligent conversion with:
532
+ - Section-by-section analysis and processing
533
+ - Automatic `--think2` context level
534
+ - Comprehensive rulebase for precise conversions
535
+ - pybind11 wrappers for Python features without C++ equivalents:
536
+ - Generators -> callback pattern / py::iterator
537
+ - Async/await -> std::async / std::future
538
+ - Context managers -> RAII pattern
539
+ - Duck typing -> templates with concepts
540
+ - Reports API changes to user
541
+ - Fallback to standard conversion if AI unavailable
542
+
543
+ **Workaround Examples:**
544
+ | Python Feature | C++ Workaround |
545
+ |----------------|----------------|
546
+ | `yield` | Callback pattern or py::iterator |
547
+ | `async/await` | std::async + std::future |
548
+ | `with` context | RAII ScopedResource class |
549
+ | List comprehension | transform_to_vector template |
550
+ | Dict comprehension | transform_to_map template |
551
+ | Dynamic attributes | py::object |
552
+
523
553
  ### Analyze Code
524
554
 
525
555
  ```bash
@@ -576,6 +606,24 @@ Options:
576
606
 
577
607
  # Changelog
578
608
 
609
+ ## v3.3.4
610
+ - New `--ai` flag for `cppy convert` - AI-assisted code conversion
611
+ - Automatic `--think2` context for intelligent conversion
612
+ - Comprehensive rulebase for Python <-> C++ translations
613
+ - pybind11 wrappers for unconvertible Python features:
614
+ - Generators -> callback pattern / py::iterator
615
+ - Async/await -> std::async / std::future
616
+ - Context managers -> RAII pattern
617
+ - List/dict comprehensions -> helper templates
618
+ - API change detection and user notification
619
+ - Section-by-section analysis and conversion
620
+ - Graceful fallback to standard conversion if AI unavailable
621
+
622
+ ## v3.3.3
623
+ - Fixed `ai generate` loop bug creating duplicate file changes
624
+ - Fixed unused variable warning in cppy_converter.py
625
+ - Improved deduplication of file changes in AI generate
626
+
579
627
  ## v3.3.2
580
628
  - Fixed version display bug in `includecpp update --version`
581
629
  - New `cppy convert` command for Python <-> C++ code conversion
@@ -663,4 +711,4 @@ Options:
663
711
 
664
712
  ---
665
713
 
666
- MIT License | v3.3.2 | [GitHub](https://github.com/liliassg/IncludeCPP)
714
+ MIT License | v3.3.4 | [GitHub](https://github.com/liliassg/IncludeCPP)
@@ -241,6 +241,7 @@ Use `includecpp <command> --help` for details.
241
241
  | `cppy convert <files> --cpp` | Convert Python to C++ |
242
242
  | `cppy convert <files> --py` | Convert C++ to Python |
243
243
  | `cppy convert <files> --cpp --no-h` | Convert without header |
244
+ | `cppy convert <files> --cpp --ai` | AI-assisted conversion |
244
245
  | `cppy analyze <files>` | Analyze code structure |
245
246
  | `cppy types` | Show type mapping tables |
246
247
 
@@ -483,6 +484,35 @@ Converts C++ to Python with:
483
484
  - Methods become class methods with self
484
485
  - Structs become dataclasses
485
486
 
487
+ ### AI-Assisted Conversion
488
+
489
+ ```bash
490
+ includecpp cppy convert complex_lib.py --cpp --ai
491
+ includecpp cppy convert advanced.cpp --py --ai -v
492
+ ```
493
+
494
+ The `--ai` flag enables intelligent conversion with:
495
+ - Section-by-section analysis and processing
496
+ - Automatic `--think2` context level
497
+ - Comprehensive rulebase for precise conversions
498
+ - pybind11 wrappers for Python features without C++ equivalents:
499
+ - Generators -> callback pattern / py::iterator
500
+ - Async/await -> std::async / std::future
501
+ - Context managers -> RAII pattern
502
+ - Duck typing -> templates with concepts
503
+ - Reports API changes to user
504
+ - Fallback to standard conversion if AI unavailable
505
+
506
+ **Workaround Examples:**
507
+ | Python Feature | C++ Workaround |
508
+ |----------------|----------------|
509
+ | `yield` | Callback pattern or py::iterator |
510
+ | `async/await` | std::async + std::future |
511
+ | `with` context | RAII ScopedResource class |
512
+ | List comprehension | transform_to_vector template |
513
+ | Dict comprehension | transform_to_map template |
514
+ | Dynamic attributes | py::object |
515
+
486
516
  ### Analyze Code
487
517
 
488
518
  ```bash
@@ -539,6 +569,24 @@ Options:
539
569
 
540
570
  # Changelog
541
571
 
572
+ ## v3.3.4
573
+ - New `--ai` flag for `cppy convert` - AI-assisted code conversion
574
+ - Automatic `--think2` context for intelligent conversion
575
+ - Comprehensive rulebase for Python <-> C++ translations
576
+ - pybind11 wrappers for unconvertible Python features:
577
+ - Generators -> callback pattern / py::iterator
578
+ - Async/await -> std::async / std::future
579
+ - Context managers -> RAII pattern
580
+ - List/dict comprehensions -> helper templates
581
+ - API change detection and user notification
582
+ - Section-by-section analysis and conversion
583
+ - Graceful fallback to standard conversion if AI unavailable
584
+
585
+ ## v3.3.3
586
+ - Fixed `ai generate` loop bug creating duplicate file changes
587
+ - Fixed unused variable warning in cppy_converter.py
588
+ - Improved deduplication of file changes in AI generate
589
+
542
590
  ## v3.3.2
543
591
  - Fixed version display bug in `includecpp update --version`
544
592
  - New `cppy convert` command for Python <-> C++ code conversion
@@ -626,4 +674,4 @@ Options:
626
674
 
627
675
  ---
628
676
 
629
- MIT License | v3.3.2 | [GitHub](https://github.com/liliassg/IncludeCPP)
677
+ MIT License | v3.3.4 | [GitHub](https://github.com/liliassg/IncludeCPP)
@@ -1,7 +1,7 @@
1
1
  from .core.cpp_api import CppApi
2
2
  import warnings
3
3
 
4
- __version__ = "3.3.2"
4
+ __version__ = "3.3.4"
5
5
  __all__ = ["CppApi"]
6
6
 
7
7
  # Module-level cache for C++ modules