10.4.1
 2
 3  * pw_as_ helpers
 4  * URI parser
 5  * CGI helpers
 6
 70.4.0
 8
 9  * Swapped arguments for pw_clone2, pw_move, pw_deepcopy, pw_create_string, and pw_create_string_io: result goes first!
10    That's for consistency with standard C library in particular and assignments in general: right to left.
11    But: deepcopy method has the result the last arg because self is always first.
12
13  * pw_set: value is the last argument now, not first
14
15  * pw_this_data macro makes unnecessary wrappers; it returns void* so need either typecast or assigning to a typed variable
16
17  * Renamed trim to strip, added pw_string_strip_chars
18
19  * Removed doubly curly braces from loop bodies, autocleaning works just fine with gcc 14 and clang 19.
20
21  * Added type_id to PwMethod structure.
22
23    Rationale: hardcoding type_id in get_ctor_args is error-prone.
24
25    Previously:
26
27        PwArrayCtorArgs* args = pw_get_ctor_args(PwTypeId_Array, ctor_args);  // XXX using Array type id here, not BasicArray
28
29    Now:
30
31        PwArrayCtorArgs* args = pw_this_ctor_args();
32
33    Aliasing for Array and Map:
34
35        PwArrayCtorArgs* args = pw_this_ctor_args();
36        if (!args) {
37            // try Array type id as an alias
38            args = pw_get_ctor_args(PwTypeId_Array, ctor_args);
39        }
40
410.3.0
42
43  Inception.