arborist 0.2.0.pre20170519125456 → 0.2.0

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.
Files changed (71) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data.tar.gz.sig +0 -0
  4. data/ChangeLog +670 -1
  5. data/History.md +67 -0
  6. data/Manifest.txt +9 -6
  7. data/README.md +1 -3
  8. data/Rakefile +39 -4
  9. data/TODO.md +22 -31
  10. data/lib/arborist.rb +9 -2
  11. data/lib/arborist/cli.rb +67 -85
  12. data/lib/arborist/client.rb +125 -59
  13. data/lib/arborist/command/ack.rb +86 -0
  14. data/lib/arborist/command/reset.rb +48 -0
  15. data/lib/arborist/command/start.rb +11 -1
  16. data/lib/arborist/command/summary.rb +173 -0
  17. data/lib/arborist/command/tree.rb +215 -0
  18. data/lib/arborist/command/watch.rb +22 -22
  19. data/lib/arborist/dependency.rb +24 -4
  20. data/lib/arborist/event.rb +18 -2
  21. data/lib/arborist/event/node.rb +6 -2
  22. data/lib/arborist/event/node_warn.rb +16 -0
  23. data/lib/arborist/manager.rb +179 -48
  24. data/lib/arborist/mixins.rb +11 -0
  25. data/lib/arborist/monitor.rb +29 -17
  26. data/lib/arborist/monitor/connection_batching.rb +293 -0
  27. data/lib/arborist/monitor/socket.rb +101 -167
  28. data/lib/arborist/monitor_runner.rb +101 -24
  29. data/lib/arborist/node.rb +297 -68
  30. data/lib/arborist/node/ack.rb +1 -1
  31. data/lib/arborist/node/host.rb +26 -5
  32. data/lib/arborist/node/resource.rb +14 -5
  33. data/lib/arborist/node/root.rb +12 -3
  34. data/lib/arborist/node/service.rb +29 -26
  35. data/lib/arborist/node_subscription.rb +65 -0
  36. data/lib/arborist/observer.rb +8 -0
  37. data/lib/arborist/observer/action.rb +6 -0
  38. data/lib/arborist/subscription.rb +22 -16
  39. data/lib/arborist/tree_api.rb +7 -2
  40. data/spec/arborist/client_spec.rb +157 -51
  41. data/spec/arborist/dependency_spec.rb +21 -0
  42. data/spec/arborist/event/node_spec.rb +5 -0
  43. data/spec/arborist/event_spec.rb +3 -3
  44. data/spec/arborist/manager_spec.rb +626 -347
  45. data/spec/arborist/mixins_spec.rb +19 -0
  46. data/spec/arborist/monitor/socket_spec.rb +1 -2
  47. data/spec/arborist/monitor_runner_spec.rb +81 -29
  48. data/spec/arborist/monitor_spec.rb +89 -14
  49. data/spec/arborist/node/host_spec.rb +68 -0
  50. data/spec/arborist/node/resource_spec.rb +2 -0
  51. data/spec/arborist/node/root_spec.rb +13 -0
  52. data/spec/arborist/node/service_spec.rb +9 -0
  53. data/spec/arborist/node_spec.rb +673 -111
  54. data/spec/arborist/node_subscription_spec.rb +54 -0
  55. data/spec/arborist/observer/action_spec.rb +6 -0
  56. data/spec/arborist/observer_runner_spec.rb +8 -1
  57. data/spec/arborist/tree_api_spec.rb +111 -8
  58. data/spec/data/monitors/pings.rb +0 -11
  59. data/spec/data/monitors/port_checks.rb +0 -9
  60. data/spec/data/nodes/sidonie.rb +1 -0
  61. data/spec/data/nodes/vhosts.rb +23 -0
  62. data/spec/data/nodes/yevaud.rb +4 -2
  63. data/spec/spec_helper.rb +71 -1
  64. metadata +91 -28
  65. metadata.gz.sig +0 -0
  66. data/Events.md +0 -35
  67. data/Monitors.md +0 -155
  68. data/Nodes.md +0 -70
  69. data/Observers.md +0 -72
  70. data/Protocol.md +0 -276
  71. data/Tutorial.md +0 -8
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f3104a401cf16ca97836a2311dac418944a103e610652a98fa2395b826b04ab4
4
- data.tar.gz: 9d3bc6f71f0a204011e2d3e277a3a7e769194eecdfcbb603aaf427d5b9e4d98e
3
+ metadata.gz: 755dd41faeb4ed205809c646017026c078f4aa9dfe59f194eeef91b8cd0ed77c
4
+ data.tar.gz: '0080619e822e2a8fac94d9c3bc5c4c723bf1f1c1b33c6ca1de0951c70070cb35'
5
5
  SHA512:
6
- metadata.gz: ed5105cc83f993a12a8634fa8ef7256dc385b93ebbb92ce713bd7cb601d92ca23bbe1aafa34d5085e36c9d6e1f8956eeb5dc8d6d9b96048563016df2b059372e
7
- data.tar.gz: 468e3ef96f4518938feeb4612143868beb1912120b1b3394189afdc860581de0f71344ab02dfba457c0ca777459ee1c2e5031ef3cab103a3e9cacffdc87b98f4
6
+ metadata.gz: e9ef21ce54e29b1b1b46bbed628cb752bacc79c0a1ce9af32b945952bf96532677e2c29c5953dcb516bc2b13f316589b57294d9391aeed353234688b4c057f62
7
+ data.tar.gz: a8b4fbc85de0b4fa636a2e82cc086980f97b5bc666da0f8c11d8d8e0ed9d99d7d014b34a5b61ad8cd53f4aa7f869967f41ca49487d635253ff2d072c286172c2
Binary file
Binary file
data/ChangeLog CHANGED
@@ -1,8 +1,677 @@
1
+ 2018-08-01 Mahlon E. Smith <mahlon@martini.nu>
2
+
3
+ * lib/arborist/manager.rb:
4
+ Add debug log for checkpoint timing.
5
+ [734e01730be6] [tip]
6
+
7
+ 2018-07-27 Mahlon E. Smith <mahlon@martini.nu>
8
+
9
+ * lib/arborist/node.rb, spec/arborist/node_spec.rb:
10
+ Fix behavior for child nodes whose parent transitions from 'down' to
11
+ 'warn'.
12
+ [b882060af0b3]
13
+
14
+ 2018-07-17 Mahlon E. Smith <mahlon@martini.nu>
15
+
16
+ * lib/arborist/cli.rb, lib/arborist/command/summary.rb:
17
+ Explicitly require tty* packages.
18
+
19
+ (Avoid this garbage: https://github.com/piotrmurach/tty/issues/44)
20
+ [a2d9e1f2152b]
21
+
22
+ 2018-06-13 Mahlon E. Smith <mahlon@martini.nu>
23
+
24
+ * lib/arborist/command/tree.rb:
25
+ Implicitly return the path array.
26
+ [fbcb8bf9ddfe]
27
+
28
+ 2018-06-27 Michael Granger <ged@FaerieMUD.org>
29
+
30
+ * lib/arborist/node.rb, spec/arborist/node_spec.rb:
31
+ Add acknowledgement changes to delta events.
32
+ [f6b57c73929e] [github/master]
33
+
34
+ * Manifest.txt, lib/arborist/monitor/connection_batching.rb,
35
+ lib/arborist/monitor/socket.rb:
36
+ Add batching to the socket monitor
37
+ [1f4e91e437b5]
38
+
39
+ 2018-06-13 Mahlon E. Smith <mahlon@martini.nu>
40
+
41
+ * lib/arborist/node.rb, spec/arborist/node_spec.rb:
42
+ Allow the user config hash to be altered from the modify API call.
43
+ [035793721d25]
44
+
45
+ 2018-06-12 Mahlon E. Smith <mahlon@martini.nu>
46
+
47
+ * lib/arborist/command/tree.rb:
48
+ Add a --path argument to the 'tree' command, that displays parents
49
+ to the root when specified.
50
+ [f671d5b77b8f]
51
+
52
+ 2018-06-04 Mahlon E. Smith <mahlon@martini.nu>
53
+
54
+ * .gems, lib/arborist/node/root.rb:
55
+ Match the #update prototype with the parent class.
56
+ [4113973f3fac]
57
+
58
+ 2018-05-23 Mahlon E. Smith <mahlon@martini.nu>
59
+
60
+ * lib/arborist/client.rb, lib/arborist/observer.rb,
61
+ spec/arborist/client_spec.rb:
62
+ Add a DSL method for returning a Client singleton.
63
+ [e3e41bef9b6b]
64
+
65
+ * TODO.md, lib/arborist/manager.rb, spec/arborist/manager_spec.rb:
66
+ Don't let #add_node automatically replace nodes with the same
67
+ identifier, instead leaving the remove step to the caller.
68
+
69
+ Clean up the TODO a little.
70
+ [91ca8e3d3b42]
71
+
72
+ 2018-05-16 Mahlon E. Smith <mahlon@martini.nu>
73
+
74
+ * lib/arborist/cli.rb:
75
+ Provide a way to disable colors for misbehaving terms.
76
+ [a7c0524d382f]
77
+
78
+ * lib/arborist/node/resource.rb, lib/arborist/node/service.rb:
79
+ Add 'category' to operation properties, so it can be returned in a
80
+ 'properties' search.
81
+ [a1358c86cfc4]
82
+
83
+ 2018-05-02 Mahlon E. Smith <mahlon@martini.nu>
84
+
85
+ * Manifest.txt:
86
+ Fix manifest. My bad.
87
+ [e863ec889801]
88
+
89
+ * TODO.md, lib/arborist/node.rb, lib/arborist/node/resource.rb,
90
+ lib/arborist/node/service.rb, spec/arborist/node/resource_spec.rb,
91
+ spec/arborist/node/service_spec.rb, spec/arborist/node_spec.rb:
92
+ Add 'OR' matching to additional host/service/resource attributes.
93
+ [402decc461f2]
94
+
95
+ 2018-04-30 Mahlon E. Smith <mahlon@martini.nu>
96
+
97
+ * lib/arborist/client.rb:
98
+ Remove what seems like copy pasta, these instance vars are unused.
99
+ [63c59b1c9f79]
100
+
101
+ * lib/arborist/manager.rb, spec/arborist/client_spec.rb,
102
+ spec/arborist/manager_spec.rb,
103
+ spec/arborist/observer_runner_spec.rb, spec/data/nodes/sidonie.rb,
104
+ spec/data/nodes/vhosts.rb:
105
+ Recurse into secondary dependencies for `deps`
106
+ [77e9deb4ec42]
107
+
108
+ * lib/arborist/node.rb, spec/arborist/node_spec.rb:
109
+ Emit delta events when setting or clearing acknowledgements.
110
+ [d05610bec8dd]
111
+
112
+ * lib/arborist/cli.rb:
113
+ Don't make loading config conditional, so loading config path from
114
+ ENV works as intended.
115
+ [b0531987a8b2]
116
+
117
+ * Events.md:
118
+ The Events.md file should have been removed along with others in
119
+ changeset 2413f751677b.
120
+ [36d0911fc157]
121
+
122
+ * lib/arborist/node.rb:
123
+ Remove extra 'is' in logging output.
124
+ [ade846808c0b]
125
+
126
+ 2018-04-27 Mahlon E. Smith <mahlon@martini.nu>
127
+
128
+ * lib/arborist/node.rb:
129
+ Call out the 'unknown' state explcitly.
130
+ [41a443946194]
131
+
132
+ 2018-04-25 Mahlon E. Smith <mahlon@martini.nu>
133
+
134
+ * lib/arborist/client.rb, spec/arborist/client_spec.rb:
135
+ Provide some helper methods on the client for performing some common
136
+ Tree API tasks.
137
+ [607e37bab20d]
138
+
139
+ 2018-04-25 Mahlon E. Smith <mahlon@laika.com>
140
+
141
+ * lib/arborist/manager.rb, spec/arborist/manager_spec.rb:
142
+ Include explicit children nodes in the list returned by the 'deps'
143
+ API call.
144
+ [506ff511c368]
145
+
146
+ 2018-04-25 Mahlon E. Smith <mahlon@martini.nu>
147
+
148
+ * lib/arborist/node.rb:
149
+ Add a specific log formatter for the 'warn' state, change
150
+ nomenclature from 'unknown' to avoid confusion.
151
+ [c4769cf739cb]
152
+
153
+ 2018-04-18 Mahlon E. Smith <mahlon@martini.nu>
154
+
155
+ * lib/arborist/node.rb, spec/arborist/node_spec.rb:
156
+ Add a transition from down -> warn.
157
+ [a76b7e2c35b0]
158
+
159
+ 2018-04-18 Michael Granger <ged@FaerieMUD.org>
160
+
161
+ * lib/arborist/client.rb, lib/arborist/manager.rb,
162
+ lib/arborist/monitor_runner.rb, lib/arborist/node.rb,
163
+ spec/arborist/client_spec.rb, spec/arborist/monitor_runner_spec.rb,
164
+ spec/arborist/node_spec.rb:
165
+ Set the monitor key via a header on update
166
+ [5224888b1079]
167
+
168
+ 2018-04-18 Mahlon E. Smith <mahlon@martini.nu>
169
+
170
+ * lib/arborist/node/root.rb, spec/arborist/node/root_spec.rb:
171
+ Allow ack/unack on the root node to quiet and re-enable the tree.
172
+ [81cc274e239b]
173
+
174
+ * lib/arborist/manager.rb, spec/arborist/manager_spec.rb:
175
+ Propagate ack and unack events to parent nodes.
176
+ [e0e8af8deb94]
177
+
178
+ * lib/arborist/monitor_runner.rb,
179
+ spec/arborist/monitor_runner_spec.rb:
180
+ The _monitor_key attribute is only necessary for error/warn
181
+ tracking, not as part of the node properties.
182
+ [2b28f8aaf7f0]
183
+
184
+ * lib/arborist/node.rb, spec/arborist/node_spec.rb:
185
+ Retain the previous time a node's status changed, for easy time
186
+ deltas between state transitions.
187
+ [7427b0e720da]
188
+
189
+ 2018-04-17 Mahlon E. Smith <mahlon@laika.com>
190
+
191
+ * lib/arborist/observer/action.rb,
192
+ spec/arborist/observer/action_spec.rb:
193
+ Keep the observer daemon running if observer action blocks raise
194
+ exceptions.
195
+ [602afebedef0]
196
+
197
+ 2018-04-12 Mahlon E. Smith <mahlon@martini.nu>
198
+
199
+ * Rakefile:
200
+ Add pry as a dependency for the arborist client.
201
+ [01b83470cd9c]
202
+
203
+ 2018-04-11 Mahlon E. Smith <mahlon@martini.nu>
204
+
205
+ * lib/arborist/event/node.rb, spec/arborist/event/node_spec.rb:
206
+ Add the node type as additional metadata to node events.
207
+ [60a05edcfa1f]
208
+
209
+ * lib/arborist/monitor/socket.rb,
210
+ spec/arborist/monitor/socket_spec.rb:
211
+ Remove redundant time attribute for socket monitoring.
212
+ [9f8556ccf9aa]
213
+
214
+ * lib/arborist/event.rb, lib/arborist/event/node.rb,
215
+ spec/arborist/event/node_spec.rb, spec/arborist/event_spec.rb:
216
+ Add node parent to the default node event class, stick to symbols
217
+ for hash keys.
218
+ [983042e447ab]
219
+
220
+ * lib/arborist/node.rb, spec/arborist/node_spec.rb:
221
+ Allow "OR-ing" of statuses/identifiers/types when matching.
222
+ [fc9d607c2a07]
223
+
224
+ 2018-04-09 Mahlon E. Smith <mahlon@martini.nu>
225
+
226
+ * lib/arborist/monitor.rb, spec/arborist/monitor_spec.rb:
227
+ Bugfix: Logic inversion for the monitor matching with exclude_down.
228
+ [69b6f08a561e]
229
+
230
+ 2018-04-07 Mahlon E. Smith <mahlon@martini.nu>
231
+
232
+ * lib/arborist/monitor_runner.rb:
233
+ Include the backtrace in logging if a monitor run fails.
234
+ [bff4c7373561]
235
+
236
+ * Manifest.txt:
237
+ Fix manifest.
238
+ [bc513d98d005]
239
+
240
+ 2018-04-04 Mahlon E. Smith <mahlon@martini.nu>
241
+
242
+ * experiments/arborist.schema:
243
+ Add an identifier override attribute to the Arborist LDAP schema.
244
+ [f3644c8d9b0d]
245
+
246
+ * Monitors.md, Nodes.md, Observers.md, Protocol.md, Tutorial.md,
247
+ experiments/manager-sockets.rb:
248
+ Remove some docs that have moved to arbori.st.
249
+ [2413f751677b]
250
+
251
+ * lib/arborist/dependency.rb, spec/arborist/dependency_spec.rb:
252
+ Fix the description for subdependencies which are down
253
+ [6ba7c94e9c1b]
254
+
255
+ * lib/arborist/monitor.rb, spec/arborist/monitor_spec.rb:
256
+ Make a best-effort attempt to serialize Arrays for the default
257
+ monitor exec behavior.
258
+ [d81c6f31ec25]
259
+
260
+ * lib/arborist/cli.rb, lib/arborist/command/summary.rb,
261
+ lib/arborist/command/tree.rb:
262
+ Add the 'warn' state to the command line tools.
263
+ [edecbb537d4f]
264
+
265
+ * lib/arborist/monitor.rb:
266
+ Explicitly cast exec() arguments to strings if the first argument
267
+ doesn't respond to #run.
268
+
269
+ This falls through to attempt to spawn the argument, instead of
270
+ bailing with the more cryptic "no implcit conversion of X into
271
+ string" exception.
272
+ [7f30507eb90b]
273
+
274
+ 2018-03-21 Michael Granger <ged@FaerieMUD.org>
275
+
276
+ * lib/arborist/manager.rb:
277
+ Add Manager#inspect
278
+ [3bd59ed3254e]
279
+
280
+ * lib/arborist/cli.rb, lib/arborist/command/ack.rb,
281
+ lib/arborist/command/reset.rb, lib/arborist/command/start.rb:
282
+ Restore dry-run mode for the CLI
283
+ [0c2126a1f09e]
284
+
285
+ * experiments/run_monitors.rb, lib/arborist/client.rb,
286
+ lib/arborist/manager.rb, lib/arborist/monitor.rb,
287
+ lib/arborist/monitor_runner.rb, spec/arborist/client_spec.rb,
288
+ spec/arborist/manager_spec.rb, spec/arborist/monitor_spec.rb,
289
+ spec/data/monitors/pings.rb, spec/data/monitors/port_checks.rb:
290
+ Make the default node search return all nodes
291
+
292
+ All nodes in the tree are returned by default now. You can omit
293
+ unreachable nodes with the `exclude_down` option/method.
294
+ [7ba6fa72b1a3]
295
+
296
+ 2018-03-12 Michael Granger <ged@FaerieMUD.org>
297
+
298
+ * README.md:
299
+ Remove the broken CI build link.
300
+ [07918fd4129a]
301
+
302
+ 2018-03-07 Michael Granger <ged@FaerieMUD.org>
303
+
304
+ * Manifest.txt:
305
+ Update the manifest.
306
+ [d71a4cbde9a0]
307
+
308
+ * spec/arborist/node_spec.rb:
309
+ Add a spec for updates with both error and warning
310
+ [4b68d786e868]
311
+
312
+ 2018-03-03 Michael Granger <ged@FaerieMUD.org>
313
+
314
+ * experiments/yajl-vs-oj.rb:
315
+ Add experimental json library benchmarks
316
+ [df81401947b6]
317
+
318
+ * .gems, Rakefile, arborist.gemspec, lib/arborist/client.rb,
319
+ lib/arborist/event/node_warn.rb, lib/arborist/manager.rb,
320
+ lib/arborist/node.rb, lib/arborist/tree_api.rb,
321
+ spec/arborist/client_spec.rb, spec/arborist/manager_spec.rb,
322
+ spec/arborist/node_spec.rb:
323
+ Add a warning state to nodes
324
+ [0ec9b57f875d]
325
+
326
+ 2018-02-21 Mahlon E. Smith <mahlon@martini.nu>
327
+
328
+ * lib/arborist/node/host.rb, lib/arborist/node/resource.rb,
329
+ lib/arborist/node/service.rb, spec/arborist/node/host_spec.rb:
330
+ Add an optional 'hostname' label to the host node DSL.
331
+
332
+ This is a convenience matcher for selecting by host, since
333
+ identifiers are designed to be opaque, and description fields are
334
+ more human readable.
335
+ [ba379d048ec4]
336
+
337
+ * lib/arborist/monitor.rb:
338
+ Add a configurable default splay for all instantiated Monitors.
339
+ [2e1e76442694]
340
+
341
+ * .ruby-version, lib/arborist/monitor.rb,
342
+ lib/arborist/monitor_runner.rb, spec/arborist/manager_spec.rb,
343
+ spec/arborist/monitor_runner_spec.rb, spec/arborist/monitor_spec.rb:
344
+ Allow separate monitors to run in parallel.
345
+ [8a15f6ff2cc6]
346
+
347
+ 2018-02-06 Mahlon E. Smith <mahlon@laika.com>
348
+
349
+ * lib/arborist/node.rb:
350
+ Allow the 'config' directive to be called multiple times.
351
+ [e19b588e2bed]
352
+
353
+ 2018-02-01 Mahlon E. Smith <mahlon@laika.com>
354
+
355
+ * TODO.md:
356
+ Add a few recent discoveries that should be attended to.
357
+ [87797bb780d0]
358
+
359
+ 2018-01-10 Mahlon E. Smith <mahlon@laika.com>
360
+
361
+ * lib/arborist/command/start.rb:
362
+ Add a hint for the 'start' command if the daemon app is unknown.
363
+ [1d535c655f9c]
364
+
365
+ * lib/arborist/cli.rb:
366
+ Remove the Highline require.
367
+ [e1babdcf222a]
368
+
369
+ 2017-12-28 Mahlon E. Smith <mahlon@laika.com>
370
+
371
+ * lib/arborist/command/summary.rb:
372
+ Fix newline display in summary mode.
373
+ [705ea112140d]
374
+
375
+ * lib/arborist/monitor_runner.rb,
376
+ spec/arborist/monitor_runner_spec.rb:
377
+ Treat monitor runtime exceptions as errors.
378
+ [d940a51a54a5]
379
+
380
+ 2017-12-23 Mahlon E. Smith <mahlon@laika.com>
381
+
382
+ * lib/arborist/cli.rb:
383
+ Simplify the command loading, remove unused code.
384
+ [edb03b628896]
385
+
386
+ 2017-12-11 Michael Granger <ged@FaerieMUD.org>
387
+
388
+ * lib/arborist/cli.rb:
389
+ Fix the #success_string CLI DSL method
390
+ [731cdb4916f7]
391
+
392
+ 2017-11-23 Mahlon E. Smith <mahlon@laika.com>
393
+
394
+ * Manifest.txt:
395
+ Update manifest.
396
+ [bbfee3ed7fa3]
397
+
398
+ 2017-11-22 Michael Granger <ged@FaerieMUD.org>
399
+
400
+ * lib/arborist/command/watch.rb:
401
+ Make Enterprise[tm]
402
+ [2ea4f0cb5d7f]
403
+
404
+ 2017-11-22 Mahlon E. Smith <mahlon@laika.com>
405
+
406
+ * Rakefile, arborist.gemspec, lib/arborist/manager.rb,
407
+ lib/arborist/node.rb, spec/arborist/manager_spec.rb,
408
+ spec/arborist/node_spec.rb:
409
+ Modifying a node's parent should reparent for a running manager.
410
+ [80f24df26c58]
411
+
412
+ * lib/arborist/cli.rb, lib/arborist/command/ack.rb:
413
+ Make ack friendlier for batch updates, prompt for missing values.
414
+ [abee1c3cd29a]
415
+
416
+ * .gems, Rakefile, arborist.gemspec, lib/arborist/cli.rb,
417
+ lib/arborist/command/summary.rb, lib/arborist/command/tree.rb,
418
+ lib/arborist/command/watch.rb:
419
+ Convert from highline to tty for the command line tools.
420
+ [97be02393284]
421
+
422
+ * lib/arborist/command/summary.rb:
423
+ Add a 'summary' command, for quick display of existing problems.
424
+ [835dbd57e243]
425
+
426
+ 2017-11-20 Mahlon E. Smith <mahlon@laika.com>
427
+
428
+ * lib/arborist/command/ack.rb:
429
+ Use the uid instead of gecos for default ack sender.
430
+ [6cdfa1e00068]
431
+
432
+ 2017-11-18 Mahlon E. Smith <mahlon@laika.com>
433
+
434
+ * lib/arborist/command/ack.rb, lib/arborist/command/tree.rb:
435
+ Fixes for recent changes in the client API.
436
+ [1f3a100a456a]
437
+
438
+ 2017-11-16 Michael Granger <ged@FaerieMUD.org>
439
+
440
+ * lib/arborist/client.rb:
441
+ Fix some Client API docs
442
+ [a94db37dc8ef]
443
+
444
+ 2017-11-16 Mahlon E. Smith <mahlon@martini.nu>
445
+
446
+ * Events.md, lib/arborist/manager.rb, lib/arborist/node.rb,
447
+ lib/arborist/tree_api.rb:
448
+ Refactor event flow to fix publishing.
449
+ [aeae43332bd0]
450
+
451
+ * lib/arborist/command/reset.rb:
452
+ Add a "reset" command to the client.
453
+ [eed312fb6526]
454
+
455
+ 2017-11-01 Michael Granger <ged@FaerieMUD.org>
456
+
457
+ * lib/arborist/event.rb:
458
+ Add a simplified #inspect for node objects
459
+ [3a5fdc6ee738]
460
+
461
+ * Merged with 78f913c7bd4e
462
+ [8da021024c05]
463
+
464
+ 2017-11-01 Mahlon E. Smith <mahlon@martini.nu>
465
+
466
+ * lib/arborist/event.rb, spec/arborist/event_spec.rb:
467
+ Backed out changeset ac8e70b46bf4.
468
+
469
+ Upon further reflection: subscription calls ONLY match node events,
470
+ not sys.* events. So if you want all node events, it has always been
471
+ that you can simply omit your event type. Since sys events are
472
+ unaffected, this is unnecessarily redundant. Revert.
473
+ [78f913c7bd4e]
474
+
475
+ 2017-11-01 Michael Granger <ged@FaerieMUD.org>
476
+
477
+ * lib/arborist/manager.rb, spec/arborist/manager_spec.rb:
478
+ Collapse startup event into the heartbeat
479
+
480
+ The startup event wasn't reliable because there was a race between
481
+ sending it and clients who might be interested in it (re)connecting
482
+ to the manager. We moved all the data from the startup event into
483
+ the heartbeat event.
484
+ [f1e034ac03bf]
485
+
486
+ 2017-10-27 Michael Granger <ged@FaerieMUD.org>
487
+
488
+ * certs/ged.pem:
489
+ Add my updated gem-signing cert
490
+ [2025d127b06d]
491
+
492
+ 2017-10-11 Mahlon E. Smith <mahlon@laika.com>
493
+
494
+ * lib/arborist/event.rb, spec/arborist/event_spec.rb:
495
+ Add wildcard matching to node events.
496
+ [ac8e70b46bf4]
497
+
498
+ * Manifest.txt, lib/arborist/client.rb, lib/arborist/manager.rb,
499
+ spec/arborist/client_spec.rb, spec/arborist/manager_spec.rb:
500
+ Normalize and emit better error messages from client commands, at
501
+ the expense of succinct method calls.
502
+
503
+ Throw a client error if attempting to graft over a pre-existing
504
+ node.
505
+ [b683f02b91c1]
506
+
507
+ 2017-09-15 Mahlon E. Smith <mahlon@martini.nu>
508
+
509
+ * lib/arborist/manager.rb, spec/arborist/client_spec.rb,
510
+ spec/arborist/manager_spec.rb:
511
+ With even more thinking: Specifying a non existent node constitutes
512
+ an error.
513
+ [74148a9c3770]
514
+
515
+ 2017-09-15 Michael Granger <ged@FaerieMUD.org>
516
+
517
+ * lib/arborist/client.rb, lib/arborist/manager.rb,
518
+ spec/arborist/client_spec.rb:
519
+ merged with 7fea2fdfbb90
520
+ [e4e2e2608c96]
521
+
522
+ 2017-09-15 Mahlon E. Smith <mahlon@martini.nu>
523
+
524
+ * lib/arborist/manager.rb, spec/arborist/client_spec.rb:
525
+ On second thought, fetch() should always return an array. Add a
526
+ test.
527
+ [7fea2fdfbb90]
528
+
529
+ * lib/arborist/client.rb, lib/arborist/manager.rb,
530
+ spec/arborist/client_spec.rb:
531
+ Make high-level ack set/clear usage match other methods. Bail early
532
+ on an invalid fetch() starting node.
533
+ [12658e133803]
534
+
535
+ 2017-09-13 Michael Granger <ged@FaerieMUD.org>
536
+
537
+ * TODO.md, lib/arborist.rb, lib/arborist/client.rb,
538
+ lib/arborist/manager.rb, lib/arborist/node.rb,
539
+ lib/arborist/node_subscription.rb, lib/arborist/subscription.rb,
540
+ spec/arborist/client_spec.rb, spec/arborist/manager_spec.rb,
541
+ spec/arborist/node_spec.rb, spec/arborist/node_subscription_spec.rb,
542
+ spec/arborist/observer_runner_spec.rb, spec/data/nodes/yevaud.rb:
543
+ Add introspection on secondary dependencies
544
+ [dbe5ebcb13a4]
545
+
546
+ 2017-08-30 Michael Granger <ged@FaerieMUD.org>
547
+
548
+ * Rakefile, arborist.gemspec:
549
+ Specify RDoc 5.1 for development.
550
+ [b5ce09164313]
551
+
552
+ * lib/arborist/monitor/socket.rb:
553
+ Socket monitors need the port, too.
554
+ [badf0ec88ff3]
555
+
556
+ * Manifest.txt, TODO.md, lib/arborist/monitor.rb,
557
+ spec/arborist/monitor_spec.rb:
558
+ Allow callbacks modules to set the fetched node properties, too.
559
+ [c13f46c6c80e]
560
+
561
+ * lib/arborist.rb, lib/arborist/client.rb,
562
+ lib/arborist/command/tree.rb, lib/arborist/manager.rb,
563
+ lib/arborist/monitor.rb, lib/arborist/monitor/socket.rb,
564
+ lib/arborist/monitor_runner.rb, lib/arborist/node.rb,
565
+ lib/arborist/node/ack.rb, lib/arborist/node/host.rb,
566
+ lib/arborist/node/resource.rb, lib/arborist/node/service.rb,
567
+ spec/arborist/monitor_spec.rb, spec/arborist/node_spec.rb,
568
+ spec/spec_helper.rb:
569
+ Add tree mode to the fetch treeapi action
570
+ [62702b377627]
571
+
572
+ * lib/arborist/command/ack.rb:
573
+ Add an `ack` command
574
+ [10f1c48593ca]
575
+
576
+ * lib/arborist/node.rb:
577
+ Stop nodes from flapping between acked and down
578
+ [c950bb562104]
579
+
580
+ * Merged with upstream
581
+ [8016d54c5dc0]
582
+
583
+ 2017-08-30 Mahlon E. Smith <mahlon@martini.nu>
584
+
585
+ * .ruby-version, README.md:
586
+ Bump ruby rvm version and copyright year.
587
+ [569e2d8626fc]
588
+
589
+ 2017-08-29 Michael Granger <ged@FaerieMUD.org>
590
+
591
+ * lib/arborist/mixins.rb, spec/arborist/mixins_spec.rb:
592
+ Add a DSLish accessor constructor to the MethodUtilities mixin
593
+ [55586256bf71]
594
+
595
+ 2017-08-23 Michael Granger <ged@FaerieMUD.org>
596
+
597
+ * Protocol.md, lib/arborist/client.rb, lib/arborist/manager.rb,
598
+ lib/arborist/monitor_runner.rb, spec/arborist/client_spec.rb,
599
+ spec/arborist/manager_spec.rb, spec/arborist/monitor_runner_spec.rb:
600
+ Rename some actions in the Tree API for clarity
601
+
602
+ - Rename `list` to `fetch`
603
+ - Rename `fetch` to `search`
604
+ [58b49a735dce]
605
+
606
+ * lib/arborist/manager.rb, spec/arborist/manager_spec.rb:
607
+ Make the list of Tree API actions more explicit.
608
+ [be1d7adde321]
609
+
610
+ * TODO.md:
611
+ Add a 0.3 feature to the TODO doc
612
+ [5d64adac0770]
613
+
614
+ * lib/arborist/node.rb, lib/arborist/node/resource.rb,
615
+ spec/arborist/node_spec.rb:
616
+ Add a block to Node.parent_type to allow for more-expressive
617
+ declarations
618
+ [3aa0f2e0bb04]
619
+
620
+ * .gems, Manifest.txt, Rakefile, TODO.md, arborist.gemspec,
621
+ experiments/monitor-client.rb, experiments/monitor-service.rb,
622
+ experiments/run_monitors.rb, experiments/yay-client.rb,
623
+ lib/arborist.rb, lib/arborist/client.rb,
624
+ lib/arborist/command/watch.rb, lib/arborist/event_api.rb,
625
+ lib/arborist/exceptions.rb, lib/arborist/manager.rb,
626
+ lib/arborist/manager/event_publisher.rb,
627
+ lib/arborist/manager/tree_api.rb, lib/arborist/monitor_runner.rb,
628
+ lib/arborist/node.rb, lib/arborist/observer/summarize.rb,
629
+ lib/arborist/observer_runner.rb, lib/arborist/tree_api.rb,
630
+ spec/arborist/client_spec.rb, spec/arborist/event_api_spec.rb,
631
+ spec/arborist/manager/event_publisher_spec.rb,
632
+ spec/arborist/manager/tree_api_spec.rb,
633
+ spec/arborist/manager_spec.rb, spec/arborist/monitor_runner_spec.rb,
634
+ spec/arborist/observer_runner_spec.rb,
635
+ spec/arborist/tree_api_spec.rb, spec/arborist_spec.rb,
636
+ spec/spec_helper.rb:
637
+ Convert to CZTop for ZeroMQ
638
+ [ba88a77e486e]
639
+
640
+ 2017-05-10 Michael Granger <ged@FaerieMUD.org>
641
+
642
+ * Merged with dc93f075ae71
643
+ [a8ed641362ad]
644
+
645
+ 2017-03-09 Mahlon E. Smith <mahlon@martini.nu>
646
+
647
+ * lib/arborist/mixins.rb, lib/arborist/node.rb:
648
+ Re-arrange constants to avoid Ruby 2.4 refinement warnings. Lower
649
+ debug output when loading nodes.
650
+ [dc93f075ae71]
651
+
652
+ 2017-05-10 Michael Granger <ged@FaerieMUD.org>
653
+
654
+ * TODO.md:
655
+ Add an idea to the README (thanks to Will at LAIKA)
656
+ [ae1fceba4e10]
657
+
658
+ 2017-03-01 Michael Granger <ged@FaerieMUD.org>
659
+
660
+ * .hoerc, arborist.gemspec, lib/arborist/client.rb,
661
+ lib/arborist/command/client.rb:
662
+ Fix the signature of Arborist::Client#fetch
663
+
664
+ It was defaulting trailing-hash arguments to options, which made the
665
+ typical case of fetching with only criteria awkward. This makes the
666
+ atypical case (fetching with options but empty criteria) the awkward
667
+ case instead.
668
+ [c7e85586243e]
669
+
1
670
  2017-02-19 Mahlon E. Smith <mahlon@martini.nu>
2
671
 
3
672
  * .ruby-gemset, .ruby-version, .rvmrc, Rakefile:
4
673
  Convert to .ruby-* files. Bump msgpack dependency.
5
- [b0cead421802] [github/master, tip]
674
+ [b0cead421802]
6
675
 
7
676
  2017-01-02 Michael Granger <ged@FaerieMUD.org>
8
677