1 | Revision history for AnyEvent::MP |
1 | Revision history for AnyEvent::MP |
2 | |
2 | |
3 | TODO: testsuite |
3 | TODO: testsuite |
4 | TODO: intro: maybe simple job pool example? |
4 | TODO: intro: maybe simple job pool example? |
5 | TODO: intro: mention watchdog... |
5 | TODO: intro: mention watchdog... |
|
|
6 | TODO: maybe disbale warnings by default? |
|
|
7 | TODO: listener-scopes (10.0.0.1:4040@vpn) and connect-scopes ("vpn,public") |
|
|
8 | TODO: document env-variable usage |
|
|
9 | TODO: make node objects responsible for keepalive? |
6 | |
10 | |
7 | faq: can't se anything |
11 | faq: can't se anything |
8 | faq: all is asynch |
12 | faq: all is asynch |
9 | faq: how to interface to non-perl nodes? |
13 | faq: how to interface to non-perl nodes? |
10 | |
14 | |
11 | TODO: optimised json transport jsonxyz#d# |
15 | TODO: check gproto, nproto, on connect |
|
|
16 | TODO: eg/* |
|
|
17 | TODO: limiting reconnecting speed when unreachable? somehow use same interval timers as for seeding and keepalive? |
|
|
18 | TODO: multiple profiles? also some default profiles? |
|
|
19 | TODO: export keepalive? |
|
|
20 | TODO: $guard = con $cb->($up) |
|
|
21 | TODO: aemp readline support |
|
|
22 | TODO: gleeco re: AE::MP::DataConn - |
|
|
23 | |
|
|
24 | 2 |
|
|
25 | - INCOMPATIBLE CHANGE: the node protocol used by this version is not |
|
|
26 | compatible to versions <2 - you have to upgrade all nodes. |
|
|
27 | - INCOMPATIBLE CHANGE: many APIs have changed, see the section |
|
|
28 | "PORTING FROM VERSION 1" in the AnyEvent::MP manpage for details. |
|
|
29 | - INCOMPATIBLE CHANGE: remove md6 auth algorithms (and use algorithms |
|
|
30 | based on SHA3 instead). |
|
|
31 | - AnyEvent::MP::Global is now optional - only seed nodes autoload it |
|
|
32 | and create a fully-meshed network with each other, normal nodes only |
|
|
33 | have to connect to seed nodes, other connections are on-demand. |
|
|
34 | - new "norc" and "force" options for MP::configure to ignore |
|
|
35 | or override the rc file. |
|
|
36 | - a shitload of minor and major fixes all reported and debugged |
|
|
37 | by Felix Ostmann. |
|
|
38 | - move seed code to Kernel. |
|
|
39 | - non-json receive framing was probably broken. |
|
|
40 | - fixed small typo in MP::Transport. |
|
|
41 | - fix (unused) provider-kv (version sometimes missing). |
|
|
42 | - reduce the default export list of MP::Kernel. |
|
|
43 | - reduced various random delays to zero, as they |
|
|
44 | are hopefully no longer needed with the new global |
|
|
45 | protocol. |
|
|
46 | - implement a secure mode that can suppress (some) code execution |
|
|
47 | requests. |
|
|
48 | - do not use GMP for generating alphanumeric strings even when |
|
|
49 | available, use a more tricky algorithm instead. |
|
|
50 | - anonymous node names and remote port names have been shortened |
|
|
51 | considerably. |
|
|
52 | - $AnyEvent::MP::Kernel::SRCNODE contains the node ID of the origin |
|
|
53 | node during message receives. |
|
|
54 | - aemp shell now supports "package" selection and offers an |
|
|
55 | $ECHO port you can send messages to. |
|
|
56 | - rely on perl rand() instead of using /dev/urandom when available, as |
|
|
57 | hopefully it is random enough. |
|
|
58 | - aemp shell no longer leaks one port per command. |
|
|
59 | - nodenames can contain %-escapes such as %n or %u. |
|
|
60 | - aemp now uses aemp/%n/%u as nodename. |
|
|
61 | - configure supports "eval", a small perl snippet to initialsie a node, |
|
|
62 | most useful in "aemp run eval ...". |
|
|
63 | - known_nodes is gone, it has little value, use all_nodes as |
|
|
64 | replacement. |
|
|
65 | - lots of small change and improvements. |
|
|
66 | - node_is_known has been removed. |
|
|
67 | - TRACE now shows the portid on SND. |
|
|
68 | - aggressively reduce number of external modules, to reduce |
|
|
69 | memory usage for nodes. |
|
|
70 | - rework most of the documentation. |
|
|
71 | - clean up MP::Kernel exports. |
|
|
72 | |
|
|
73 | 1.30 Thu Jun 30 11:30:39 CEST 2011 |
|
|
74 | - connection errors at the right time would kill node |
|
|
75 | connections in a bad way (patch by Malcolm Studd). |
|
|
76 | |
|
|
77 | 1.29 Fri May 7 20:13:39 CEST 2010 |
|
|
78 | - codename "Sadrak". |
|
|
79 | - fix error in callback at AnyEvent/MP/Global.pm line 339 |
|
|
80 | (found by Sadrak). |
|
|
81 | - listener-less nodes had trouble sending keepalive |
|
|
82 | messages on write timeouts (found by Sadrak). |
|
|
83 | - the monitor guard could cause a memleak due |
|
|
84 | to autovivification if a mon was cleared after |
|
|
85 | the port was gone (analysed by Sadrak). |
|
|
86 | - do not overwrite the config file if we couldn't read it |
|
|
87 | for some reason (lesson demonstrated by Sadrak). |
|
|
88 | |
|
|
89 | 1.28 Thu Apr 1 21:23:54 CEST 2010 |
|
|
90 | - accepted connections didn't correctly set up the SRCNODE |
|
|
91 | in some cases, leading to intra-node messages (such as monitoring) |
|
|
92 | to fail silently (great testcase by Sadrak). |
|
|
93 | |
|
|
94 | 1.27 Sat Mar 20 21:11:16 CET 2010 |
12 | - avoid exceptions in the transport code if the connection |
95 | - avoid exceptions in the transport code if the connection |
13 | fails during TLS negotiation. |
96 | fails during TLS negotiation. |
14 | - delay new address broadcasts in seednodes, to reduce the |
97 | - delay new address broadcasts in seednodes, to reduce the |
15 | likelyhood of nodes connecting at the same time, leading to |
98 | likelyhood of nodes connecting at the same time, leading to |
16 | message loss. |
99 | message loss. |
|
|
100 | - improve general message passing efficiency by 8%, and special |
|
|
101 | case json framing for a 50% speed increase. |
17 | - add hints how to interface to aemp nodes from other programming |
102 | - add hints how to interface to aemp nodes from other programming |
18 | languages using the aemp protocol in AnyEvent::MP::Transport |
103 | languages using the aemp protocol in AnyEvent::MP::Transport |
19 | (it can really be quite simple). |
104 | (it can really be quite simple). |
20 | - handle unsupported remote framings more gracefully. |
105 | - handle unsupported remote framings more gracefully. |
21 | |
106 | |