File: Changes

package info (click to toggle)
libtangence-perl 0.33-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 580 kB
  • sloc: perl: 6,076; makefile: 15
file content (214 lines) | stat: -rw-r--r-- 7,940 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
Revision history for Tangence

0.33    2024-09-10
        [CHANGES]
         * Updates for `meta` v0.007:
            * use ->try_get_symbol instead of ->can_symbol
            * use new ->set_subname on returned symbols, avoids awkward
              Sub::Util hackery
         * Requires `Struct::Dumb` v0.14 otherwise tests fail

0.32    2024-01-06
        [CHANGES]
         * Quiet the meta::experimental warnings of meta 0.003_002

0.31    2024-01-03
        [CHANGES]
         * Various module style updates for newer Object::Pad v0.800
         * Swapped unit tests from `Test::More` to `Test2::V0`
         * Dropped many test-time dependencies now they are built-in to
           `Test2::Suite`
         * Use `meta` rather than `no strict 'refs'` hackery

0.30    2022-10-29
        [CHANGES]
         * Updates for Object::Pad v0.70:
            + Use `ADJUST :params` instead of `ADJUSTPARAMS`
            + Use `field` instead of `has`

0.29    2022-06-06
        [CHANGES]
         * Look for `builtin::is_bool` now it's been renamed, and present in
           the perl 5.36 release
         * Use the `:isa(Superclass)` notation of Object::Pad 0.57

0.28    2022-01-27
        [CHANGES]
         * Look for the `isbool` function in perl core's `builtin::`
           namespace, rather than the short-lived and now removed Scalar::Util
           version

0.27    2021-10-18
        [CHANGES]
         * General code modernisation:
            + Use signatures from perl v5.26
            + Use Object::Pad in most classes
            + Use Future::AsyncAwait
            + Use Syntax::Keyword::Dynamically
            + Use Syntax::Keyword::Match in more places
         * Rename the memoizing constructors to `->make` to avoid clashing
           with the generated ones from Object::Pad

0.26    2021-09-12
        [CHANGES]
         * General code modernisation:
            + Use Syntax::Keyword::Match instead of given/when
            + Use Feature::Compat::Try instead of eval {}
            + use VERSION in every .pm file
         * Support core booleans in 'any' type packing
         * Ensure that boolean stream values unpack to real booleans

        [BUGFIXES]
         * Depend on Future >= 0.36 for ->retain method (RT131471)

0.25    2020-01-14
        [CHANGES]
         * Allow servers to disallow access to Registry
         * Disallow clients from accessing objects that haven't already been
           sent to them
         * Customisable root object per connection
         * Added $client->get_registry; discourage the ->registry method
         * Use core's Sub::Util::set_subname()
         * Removed support for protocol minor version 2

        [BUGFIXES]
         * Ensure MSG_SETPROP serialises correctly for non-scalar properties

0.24    2017-11-14 17:48:45
        [BUGFIXES]
         * Avoid harmless warning about wide characters during SvIV test

0.23    2017/01/09 13:40:23
        [BUGFIXES]
         * Fix handling of Inf and NaN float values to work on perl versions
           other than 5.22 (RT118806)

0.22    2016/11/16 23:38:38
        [CHANGES]
         * Rename 'iterators' to 'cursors'
         * Document and support Inf and NaN float values, including on float16
         * Support perl 5.24's lack of "." in @INC

0.21    2015/10/28 21:07:15
        [BREAKING CHANGES]
         * Large API-breaking changes in Tangence::ObjectProxy - now works
           entirely through Futures instead of one-shot continuation callbacks

0.20    2014/08/13 23:23:11
        [CHANGES]
         * Better support for late declaration of Tangence class definitions
           after the main tanfile is loaded

        [BUGFIXES]
         * Fix 'return or' operator precedence (RT97483)
         * Compare floats by approximation during unit tests (RT94404)
         * Fix block folding in syntax/tangence.vim

0.19    2014/03/30 13:33:40
        [CHANGES]
         * Created new Tangence::Type classes to represent the type system as
           firstclass objects
         * Have Tangence::Type provide a suitable default value for
           uninitialised properties
         * Move most of the value pack/unpack code out of Tangence::Message
           into the Type classes
         * Support floating-point numbers as a native format
         * Pack/unpack smashed objects using type-specific serialisation

        [BUGFIXES]
         * Quiet 'experimental' warnings about given/when

0.18    BUGFIXES:
         * Handle void-returning method signatures correctly
           (RT#83637)

0.17    CHANGES:
         * Minimal minor version 2
         * Expose ->class and ->can_method / ->can_event / ->can_property
           on both Tangence::Object and Tangence::ObjectProxy

0.16    CHANGES:
         * Bumped wire protocol minor version to 3:
            + Support GETPROPELEM operation
            + Support WATCH_ITER for queue property iteration
         * Internal rewrites to some unit tests for neatness

0.15    BUGFIXES:
         * Fix Tangence::Message on clientside when dealing with minor
           version 2 servers, by actually 'use'ing classes it requires

0.14    CHANGES:
         * Bumped wire protocol minor version to 2:
            + Provide wire-level struct record serialisations
            + Encode classes as structs rather than use introspection dict
         * Recognise struct definitions in the tanfile parser
         * Minimum supported minor protocol version is now 1; minor version 0
           is no longer supported

0.13    CHANGES:
         * Bumped wire protocol minor version to 1:
            + Encode strings on the wire (dict keys and class names) as
              Tangence strings
            + Give classes ID numbers to refer to in CONSTRUCT messages,
              rather then full class name every time

0.12    CHANGES:
         * Defined MSG_INIT for server/client version negitiations
         * Implement it in the server, but not yet in the client as it crashes
           pre 0.12 servers
         * Implement types as first-class metadata values

        BUGFIXES:
         * Implement respondERROR since it is actually being used

0.11    BUGFIXES:
         * Handle UPDATE messages on objset properties correctly

0.10    BUGFIXES:
         * Fix memory cycle testing bug

0.09    CHANGES:
         * Renaming/reworking of internal metadata classes
         * Optionally use Sub::Name to apply names to subscription / watch
           callbacks

0.08    CHANGES:
         * Optionally use Sub::Name to name generated property
           accessor/mutator methods
         * Further improvements to metadata layer

0.07    CHANGES:
         * Redesign of metadata layer to use real objects rather than
           unblessed hashrefs for structural information
         * Optionally parse (but currently ignore) argument names in methods
           and events
         * Created a parse+dump script to test the parser

0.06    CHANGES:
         * Look up Tangence interface metadata from a specified file, rather
           than per-class package variables.
         * Added Tangence::Compiler::Parser

0.05    CHANGES:
         * Added documentation to some of the classes
         * Moved the Net::Async::Tangence tree into its own module

0.04    CHANGES:
         * Properly split out lower-level abstract Tangence code, from
           IO::Async-based Net::Async::Tangence wrappers
         * Added some initial documentation to Tangence::Stream, ::Client and
           ::Server

0.03    CHANGES:
         * Weaken references between objects and connections to remove
           memory cycles
         * Move all the IO::Async-based code into its own namespace tree of
           Net::Async::Tangence

0.02    CHANGES:
         * New Meta::Class introspection objects
         * Bugfixes for test reliability due to the way stream writes/reads
           get split

0.01    First version, released on an unsuspecting world.