IncludeCPP 4.2.2__py3-none-any.whl → 4.3.0__py3-none-any.whl

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.
includecpp/CHANGELOG.md CHANGED
@@ -1,112 +1,105 @@
1
1
  # IncludeCPP Changelog
2
2
 
3
- ## v4.2.2 (2025-01-08)
3
+ ## v4.3.0 (2026-01-08)
4
+
5
+ ### New Features
6
+ - Payload namespace support: `payload("mylib", "libname")` loads definitions into `libname::`
7
+ - Auto-extension for payloads: `payload("engine")` finds `engine.cssl-pl`
8
+ - Namespaced class instantiation: `new Engine::GameEngine()`
4
9
 
5
10
  ### Bug Fixes
6
- - **Fixed bidirectional `lang$Instance` mutations** - Cross-language instance access now correctly modifies shared objects
7
- - `js$GameData.score = 1337` now properly updates the original instance
8
- - All mutations via `lang$Instance.member = value` are now applied bidirectionally
9
- - Fixed `LANG_INSTANCE_REF` token not being recognized in `parse_program()`, `_parse_statement()`, and `_parse_action_block()`
10
- - Parser now correctly handles `lang$Instance` as a valid expression start token
11
+ - Fixed try/catch parsing (catch was interpreted as function call)
12
+ - Added finally block support for try/catch
13
+ - Division by zero now throws error instead of returning 0
14
+ - Modulo by zero now throws error
15
+ - List index out of bounds now throws error with helpful message
16
+ - Dict key not found now throws error
17
+ - try/catch now catches Python exceptions
18
+ - Fixed `embedded &$PyObject::method` replacement (this-> now works)
11
19
 
12
20
  ---
13
21
 
14
- ## v4.2.1 (2025-01-08)
22
+ ## v4.2.5 (2026-01-08)
15
23
 
16
- ### CLI Improvements
17
- - `--doc` and `--doc "term"` now load from local DOCUMENTATION.md
18
- - `--changelog` now loads from local CHANGELOG.md
19
- - Added `--changelog --N` (e.g., `--changelog --5`) for showing N releases
20
- - Added `--changelog --all` for showing all releases
24
+ ### New Features
25
+ - Added `embedded` keyword for immediate function/class replacement
26
+ - Added `switch` for open parameters with pattern matching
21
27
 
22
- ### Documentation
23
- - Added comprehensive DOCUMENTATION.md for CLI reference
24
- - Added CHANGELOG.md for version history
28
+ ### Bug Fixes
29
+ - Fixed `OpenFind<type, "name">` returning function reference instead of value
25
30
 
26
31
  ---
27
32
 
28
- ## v4.2.0 (2025-01-08)
33
+ ## v4.2.4 (2026-01-08)
29
34
 
30
- ### Multi-Language Support
31
- - Added `libinclude("language")` for loading language support modules
32
- - Added `supports <lang>` keyword for writing in other language syntax
33
- - Added cross-language instance sharing with `lang$InstanceName` syntax
34
- - Added language transformers for Python, JavaScript, Java, C#, C++
35
- - Added default parameter values in CSSL functions
35
+ ### Bug Fixes
36
+ - Fixed `%name` priority for `&function` overrides
36
37
 
37
- ### SDK Packages
38
- - Added C++ SDK (`sdk/cpp/includecpp.h`)
39
- - Added Java SDK (`sdk/java/src/com/includecpp/CSSL.java`)
40
- - Added C# SDK (`sdk/csharp/IncludeCPP.cs`)
41
- - Added JavaScript SDK (`sdk/javascript/includecpp.js`)
42
- - Added `includecpp cssl sdk <lang>` command to generate SDKs
38
+ ---
43
39
 
44
- ### CLI Improvements
45
- - Added `--doc "searchterm"` for documentation search
46
- - Added `--changelog --all`, `--changelog --N` for changelog viewing
47
- - Improved error messages with line context
40
+ ## v4.2.3 (2026-01-08)
48
41
 
49
42
  ### Bug Fixes
50
- - Fixed compound assignment operators in Python transformer (-=, +=, *=, /=)
51
- - Fixed type annotation stripping in `supports python` blocks
52
- - Fixed self parameter handling in Python method transformation
43
+ - Removed pagination from CLI documentation
44
+ - Fixed `&builtin` function override
53
45
 
54
46
  ---
55
47
 
56
- ## v4.1.0 (2024-12-15)
48
+ ## v4.2.2 (2026-01-08)
57
49
 
58
- ### CodeInfusion System
59
- - Added `<<==` operator for code injection into functions
60
- - Added `+<<==` for appending code without replacing
61
- - Added method appending with `&Class::method` syntax
62
- - Added `++` append mode for function definitions
50
+ ### Bug Fixes
51
+ - Fixed bidirectional `lang$Instance` mutations
63
52
 
64
- ### Class Improvements
65
- - Added `overwrites` keyword for method replacement
66
- - Added `extends Parent::method` for method-level inheritance
67
- - Added `super()` and `super::method()` calls
68
- - Added shuffled returns with `shuffled<T>` type
53
+ ---
69
54
 
70
- ### New Containers
71
- - Added `combo<T>` for filter/search operations
72
- - Added `iterator<T>` for programmable iterators
73
- - Added `datastruct<T>` universal container
55
+ ## v4.2.1 (2026-01-08)
74
56
 
75
- ### Python Interop
76
- - Added `python::pythonize()` for returning CSSL classes to Python
77
- - Added `python::wrap()` and `python::export()` aliases
78
- - Added universal instances with `instance<"name">`
57
+ ### CLI Improvements
58
+ - `--doc` and `--changelog` now load from local files
59
+ - Added `--changelog --N` and `--changelog --all` options
79
60
 
80
61
  ---
81
62
 
82
- ## v4.0.3 (2024-11-20)
63
+ ## v4.2.0 (2026-01-08)
83
64
 
84
- ### Universal Instances
85
- - Added `instance<"name">` for cross-runtime shared containers
86
- - Added `cssl.getInstance("name")` Python API
87
- - Added `cssl.createInstance("name")` Python API
88
- - Added `cssl.deleteInstance("name")` Python API
89
- - Added method injection into instances with `+<<==`
65
+ ### New Features
66
+ - Multi-language support with `libinclude()` and `supports` keyword
67
+ - Cross-language instance sharing with `lang$InstanceName` syntax
68
+ - Language transformers for Python, JavaScript, Java, C#, C++
69
+ - SDK packages for C++, Java, C#, JavaScript
70
+ - Default parameter values in CSSL functions
90
71
 
91
- ### Module System
92
- - Added `CSSL.makemodule()` for creating callable modules
93
- - Added `CSSL.makepayload()` for payload file registration
94
- - Added payload binding with `bind=` parameter
72
+ ### CLI
73
+ - Added `includecpp cssl sdk <lang>` command
74
+ - Added `--doc "searchterm"` for documentation search
95
75
 
96
76
  ---
97
77
 
98
- ## v4.0.2 (2024-11-01)
78
+ ## v4.1.0 (2024-12-15)
79
+
80
+ ### New Features
81
+ - CodeInfusion system with `<<==` and `+<<==` operators
82
+ - Class `overwrites` keyword
83
+ - `super()` and `super::method()` calls
84
+ - New containers: `combo<T>`, `iterator<T>`, `datastruct<T>`
85
+ - `python::pythonize()` for returning CSSL classes to Python
99
86
 
100
- ### Simplified API
101
- - Added `CSSL.run()` as main entry point
102
- - Added `CSSL.module()` for creating modules from strings
103
- - Added `CSSL.script()` for inline payload registration
104
- - Improved parameter handling with `parameter.get()` and `parameter.return()`
87
+ ---
105
88
 
106
- ### Shared Objects
107
- - Added `cssl.share(obj, "name")` for Python object sharing
108
- - Added `$name` syntax for accessing shared objects
109
- - Changes in CSSL reflect back to Python objects
89
+ ## v4.0.3 (2024-11-20)
90
+
91
+ ### New Features
92
+ - Universal instances with `instance<"name">`
93
+ - Python API: `getInstance()`, `createInstance()`, `deleteInstance()`
94
+ - Method injection with `+<<==`
95
+
96
+ ---
97
+
98
+ ## v4.0.2 (2024-11-01)
99
+
100
+ ### New Features
101
+ - Simplified API: `CSSL.run()`, `CSSL.module()`, `CSSL.script()`
102
+ - Shared objects with `cssl.share(obj, "name")` and `$name` syntax
110
103
 
111
104
  ---
112
105
 
@@ -114,62 +107,36 @@
114
107
 
115
108
  ### Major Release
116
109
  - Complete rewrite of CSSL parser and runtime
117
- - Added generic container types (`stack<T>`, `vector<T>`, `map<K,V>`)
118
- - Added class system with constructors and inheritance
119
- - Added BruteInjection operators (`<==`, `+<==`, `-<==`)
120
- - Added global variables with `@name` syntax
121
- - Added captured variables with `%name` syntax
122
-
123
- ### AI Integration
124
- - Added `includecpp ai` command group
125
- - Added AI-assisted code analysis
126
- - Added AI-powered optimization
127
- - Added `includecpp ai ask` for project questions
110
+ - Generic container types: `stack<T>`, `vector<T>`, `map<K,V>`
111
+ - Class system with constructors and inheritance
112
+ - BruteInjection operators: `<==`, `+<==`, `-<==`
113
+ - Global variables with `@name`, captured variables with `%name`
128
114
 
129
115
  ---
130
116
 
131
117
  ## v3.2.0 (2024-09-01)
132
118
 
133
- ### CPPY Conversion
134
- - Added `includecpp cppy convert` command
135
- - Added Python to C++ conversion
136
- - Added C++ to Python conversion
137
- - Added AI-assisted conversion with `--ai` flag
138
- - Added type mapping tables
139
-
140
- ### Build Improvements
141
- - Added `--fast` flag for incremental builds
142
- - Added object file caching
143
- - Added SHA256 hash checking for unchanged modules
144
- - Reduced rebuild time to ~0.4s when unchanged
119
+ ### New Features
120
+ - CPPY code conversion (`includecpp cppy convert`)
121
+ - AI-assisted conversion with `--ai` flag
122
+ - Fast incremental builds with `--fast` flag
145
123
 
146
124
  ---
147
125
 
148
126
  ## v3.1.0 (2024-08-01)
149
127
 
150
- ### CLI Enhancements
151
- - Added `includecpp auto` command
152
- - Added `includecpp fix` for code analysis
153
- - Added `--verbose` flag for detailed output
154
- - Added `-j` flag for parallel jobs
155
-
156
- ### Plugin Format
157
- - Added `DEPENDS()` for module dependencies
158
- - Added `TEMPLATE_FUNC()` for template instantiation
159
- - Added `METHOD_CONST()` for overloaded methods
128
+ ### New Features
129
+ - `includecpp auto` and `includecpp fix` commands
130
+ - `DEPENDS()` for module dependencies
131
+ - `TEMPLATE_FUNC()` for template instantiation
160
132
 
161
133
  ---
162
134
 
163
135
  ## v3.0.0 (2024-07-01)
164
136
 
165
- ### Initial CSSL
166
- - Added CSSL scripting language
167
- - Added basic data types and control flow
168
- - Added functions and basic classes
169
- - Added Python interop with shared objects
170
-
171
- ### Core Features
137
+ ### Initial Release
172
138
  - C++ to Python binding generation
139
+ - CSSL scripting language
173
140
  - Plugin file format (.cp)
174
141
  - CMake-based build system
175
142
  - Cross-platform support (Windows, Linux, Mac)