ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/AnyEvent-MP/Changes
(Generate patch)

Comparing AnyEvent-MP/Changes (file contents):
Revision 1.79 by root, Wed Nov 4 21:47:13 2009 UTC vs.
Revision 1.124 by root, Sat Mar 3 13:07:19 2012 UTC

1Revision history for AnyEvent::MP 1Revision history for AnyEvent::MP
2 2
3TODO: testsuite 3TODO: testsuite
4TODO: intro: maybe simple job pool example? 4TODO: intro: maybe simple job pool example?
5TODO: intro: mention watchdog... 5TODO: intro: mention watchdog...
6TODO: use gvpe method of making contact, if possible. 6TODO: maybe disbale warnings by default?
7TODO: listener-scopes (10.0.0.1:4040@vpn) and connect-scopes ("vpn,public")
7 8
9faq: can't se anything
10faq: all is asynch
11faq: how to interface to non-perl nodes?
12
13TODO: update docs
14TODO: secure - do not allow remote code execution
15TODO: switch to AnyEvent::Log
16TODO: Global loaded on demand only, adds grp database and node address database
17TODO: transport connects use any global node to find addresses (maybe itself)
18TODO: maybe check g_proto version, if sent? how about node protocol?
19TODO: connect instantly in node->connect, not with timer-0
20TODO: maybe switch to md5+sha1+sha256 or so...
21TODO: up_nodes for aemp-trace replace by rpc call?
222
23 - INCOMPATIBLE CHANGE: the node protocol used by this version is not
24 compatible to versions <2 - you have to upgrade all nodes.
25 - INCOMPATIBLE CHANGE: many APIs have changed, see the section
26 "PORTING FROM VERSION 1" in the AnyEvent::MP manpage for details.
27 - AnyEvent::MP::Global is now optional - only seed nodes autoload it
28 and create a fully-meshed network with each other, normal nodes only
29 have to connect to seed nodes, other connections are on-demand.
30 - new "norc" and "force" options for MP::configure to ignore
31 or override the rc file.
32 - move seed code to Kernel.
33 - fixed small typo in MP::Transport.
34 - fix (unused) provider-kv (version sometimes missing).
35 - reduce the default export list of MP::Kernel.
36 - reduced various random delays to zero, as they
37 are hopefully no longer needed with the new global
38 protocol.
39 - do not use GMP for generating alphanumeric strings even when
40 available, use a more tricky algorithm instead.
41 - anonymous node names and remote port names have been shortened
42 considerably.
43 - aemp shell now supports "package" selection and offers an
44 $ECHO port you cna send messages to.
45 - rely on perl rand() instead of using /dev/urandom when available, as
46 hopefully it is random enough.
47 - aemp shell no longer leaks one port per command.
48 - known_nodes is gone, it has little value, use all_nodes as
49 replacement.
50
511.30 Thu Jun 30 11:30:39 CEST 2011
52 - connection errors at the right time would kill node
53 connections in a bad way (patch by Malcolm Studd).
54
551.29 Fri May 7 20:13:39 CEST 2010
56 - codename "Sadrak".
57 - fix error in callback at AnyEvent/MP/Global.pm line 339
58 (found by Sadrak).
59 - listener-less nodes had trouble sending keepalive
60 messages on write timeouts (found by Sadrak).
61 - the monitor guard could cause a memleak due
62 to autovivification if a mon was cleared after
63 the port was gone (analysed by Sadrak).
64 - do not overwrite the config file if we couldn't read it
65 for some reason (lesson demonstrated by Sadrak).
66
671.28 Thu Apr 1 21:23:54 CEST 2010
68 - accepted connections didn't correctly set up the SRCNODE
69 in some cases, leading to intra-node messages (such as monitoring)
70 to fail silently (great testcase by Sadrak).
71
721.27 Sat Mar 20 21:11:16 CET 2010
73 - avoid exceptions in the transport code if the connection
74 fails during TLS negotiation.
75 - delay new address broadcasts in seednodes, to reduce the
76 likelyhood of nodes connecting at the same time, leading to
77 message loss.
78 - improve general message passing efficiency by 8%, and special
79 case json framing for a 50% speed increase.
80 - add hints how to interface to aemp nodes from other programming
81 languages using the aemp protocol in AnyEvent::MP::Transport
82 (it can really be quite simple).
83 - handle unsupported remote framings more gracefully.
84
851.26 Wed Dec 30 16:48:37 CET 2009
86 - INCOMPATIBLE CHANGE: the high-level node protocol changed,
87 all nodes need to upgrade.
88 - remote kil's did not work (reported by Eugene Grigoriev).
89 - documented monitor_timeout, connect_interval, auth_offer,
90 auth_accept, framing_format, autocork and nodelay options
91 and make them configurable via bin/aemp.
92 - some doc updates.
93 - remote kil's were not synchronous to message sends which affected
94 nobody, as remote kils were broken.
95 - remote mon/unmonitor requests were not synchronous to message
96 sends either sometimes, although it likely didnt matter.
97
981.24 Wed Dec 9 14:59:52 CET 2009
99 - codename "the foul egg".
100 - increased "unmonitored local port died" message level to 2, so
101 it is displayed by default now.
102 - generate random seed at configure time, not module loading time,
103 so fork&configure works as expected.
104 - decreased "seed"-related message priority in Global from 0 (d'oh)
105 to 9, as they are not signifcant.
106 - new experimental module AnyEvent::MP::DataConn to establish
107 additional data connections between nodes.
108 - bin/aemp now loads AnyEvent::Watchdog::Util before trying
109 to call restart.
110 - bin/aemp setcert didn't properly handle the filename argument.
111 - removed empty and unused timeout= parameter from protocol greeting.
112
1131.23 Fri Nov 6 18:46:26 CET 2009
114 - listener-less nodes were misinformed by their masters about
115 the location of new nodes, and therefore didn't connect
116 properly in all cases.
117 - messages send during node-up processing could sometimes get lost,
118 which would hamper global's ability to mesh the network.
8 - fixed AnyEvent::MP::Global::grp_reg to return a guard also 119 - fixed AnyEvent::MP::Global::grp_reg to return a guard also
120 in scalar context.
121 - fixed AnyEvent::MP::Kernel::mon_nodes to return a guard also
9 in scalar context. 122 in scalar context.
10 - try to improve error reporting when automatically loading 123 - try to improve error reporting when automatically loading
11 a function - being unable to load a module will now 124 a function - being unable to load a module will now
12 stop the process and report the error. 125 stop the process and report the error.
13 126

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines