Ticket #966: local_munin_plugins.darcs.patch

File local_munin_plugins.darcs.patch, 106.4 KB (added by freestorm, at 2010-10-18T20:02:38Z)

Munin local plugins

Line 
1Mon Oct 18 21:33:01 Paris, Madrid (heure d'été) 2010  freestorm77@gmail.com
2  * local_munin_plugins
3 
4 
5  - Add README file with plugins listing
6  - Add header text on plugins for help and to know what it do
7  - Test plugins to know wich is working or not
8 
9
10New patches:
11
12[local_munin_plugins
13freestorm77@gmail.com**20101018193301
14 Ignore-this: df3807f40c7d2487feac501fe0e50437
15 
16 
17 - Add README file with plugins listing
18 - Add header text on plugins for help and to know what it do
19 - Test plugins to know wich is working or not
20 
21] {
22addfile ./misc/operations_helpers/munin/README
23hunk ./misc/operations_helpers/munin/README 1
24-
25+= Tahoe-LAFS Munin Plugins =
26+
27+This directory contain the Taoe-LAFS munin plugins.
28+
29+It is two types of plugins:
30+ - Stats-Gatherer Plugins
31+ - Local Plugins
32+
33+== Stats-Gatherer Plugins ==
34+
35+It need to run a Stats-Gatherer server to collect all Tahoe-LAFS stats.
36+Only the Tahoe-LAFS Stats-Gatherer need to run on the same machine as Munin.
37+
38+You can find these plugins into directrory stats-gatherer_plugins
39+
40+Please refer to stats-gatherer_plugins/README for installation and usage
41+stats documentation can be found $TAHOE_SOURCE/docs/stats.txt
42+
43+== Local Plugins ==
44+
45+These plugins are used when you dosen't have a Stats-Gatherer Server.
46+Some plugins can connect data from other nodes, some other need physical access to Tahoe-LAFS node directory.
47+
48+Please refer to local_plugins/README for installation and usage
49+stats documentation can be found $TAHOE_SOURCE/docs/stats.txt
50+
51+
52hunk ./misc/operations_helpers/munin/tahoe-conf 1
53-# put a copy of this file in /etc/munin/plugin-conf.d/tahoe-conf to let these
54-# plugins know where the node's base directories are. Modify the lines below
55-# to match your nodes.
56+# Put a copy of this file in /etc/munin/plugin-conf.d/tahoe-conf to let these
57+# plugins know where the node's base directories are.
58+# Modify the lines below to match your nodes.
59 
60hunk ./misc/operations_helpers/munin/tahoe-conf 5
61-[tahoe-files]
62-env.basedir_bs5c1 /home/amduser/tahoe/bs5c1
63-env.basedir_bs5c2 /home/amduser/tahoe/bs5c2
64-env.basedir_bs5c3 /home/amduser/tahoe/bs5c3
65-env.basedir_bs5c4 /home/amduser/tahoe/bs5c4
66 
67hunk ./misc/operations_helpers/munin/tahoe-conf 6
68-[tahoe-sharesperfile]
69-env.basedir_bs5c1 /home/amduser/tahoe/bs5c1
70-env.basedir_bs5c2 /home/amduser/tahoe/bs5c2
71-env.basedir_bs5c3 /home/amduser/tahoe/bs5c3
72-env.basedir_bs5c4 /home/amduser/tahoe/bs5c4
73 
74hunk ./misc/operations_helpers/munin/tahoe-conf 7
75-[tahoe-storagespace]
76-env.basedir_bs5c1 /home/amduser/tahoe/bs5c1
77-env.basedir_bs5c2 /home/amduser/tahoe/bs5c2
78-env.basedir_bs5c3 /home/amduser/tahoe/bs5c3
79-env.basedir_bs5c4 /home/amduser/tahoe/bs5c4
80+[tahoe_files]
81+#env.basedir_NODE1 /path/to/node1
82+#env.basedir_NODE2 /path/to/node2
83+#env.basedir_NODE3 /path/to/node3
84+
85+[tahoe_server_latency*]
86+# env.url_NODE1 http://localhost:3456/statistics?t=json
87+# env.url_NODE2 http://localhost:3456/statistics?t=json
88+# env.url_NODE3 http://localhost:3456/statistics?t=json
89+# env.url_NODE4 http://localhost:3456/statistics?t=json
90+
91+[tahoe_server_operations*]
92+# env.url_NODE1 http://localhost:3456/statistics?t=json
93+# env.url_NODE2 http://localhost:3456/statistics?t=json
94+# env.url_NODE3 http://localhost:3456/statistics?t=json
95+# env.url_NODE4 http://localhost:3456/statistics?t=json
96+
97+[tahoe_storagespace]
98+#env.basedir_NODE1 /path/to/node1
99+#env.basedir_NODE2 /path/to/node2
100+#env.basedir_NODE3 /path/to/node3
101+
102+[tahoe_diskleft]
103+#env.url http://192.168.67.249:50074/?t=json
104+
105+[tahoe_diskusage]
106+#env.url http://192.168.67.249:50074/?t=json
107+
108+[tahoe_disktotal]
109+#env.url http://192.168.67.249:50074/?t=json
110 
111hunk ./misc/operations_helpers/munin/tahoe-conf 38
112+[tahoe_doomsday]
113+#env.url http://192.168.67.249:50074/?t=json
114hunk ./misc/operations_helpers/munin/tahoe-conf 41
115+[tahoe_introstats]
116+#env.url http://192.168.67.249:9000/?t=json
117+
118+[tahoe_estimate_files]
119+env.basedir /path/to/node1
120+env.N 7
121+env.num_servers 8
122+env.correction 1
123+
124+[tahoe_helperstats_fetched]
125+#env.url http://192.168.67.249:3456/statistics?t=json
126+
127+[tahoe_helperstats_active]
128+#env.url http://192.168.67.249:3456/statistics?t=json
129+
130+[tahoe_nodememory]
131+# env.nodememory_NODE1 /path/to/node1
132+# env.nodememory_NODE2 /path/to/node2
133+# env.nodememory_NODE3 /path/to/node3
134+
135+[tahoe-sharesperfile]
136+#env.basedir_bs5c1 /home/amduser/tahoe/bs5c1
137+#env.basedir_bs5c2 /home/amduser/tahoe/bs5c2
138+#env.basedir_bs5c3 /home/amduser/tahoe/bs5c3
139+#env.basedir_bs5c4 /home/amduser/tahoe/bs5c4
140+
141+[tahoe-storagespace]
142+#env.basedir_bs5c1 /home/amduser/tahoe/bs5c1
143+#env.basedir_bs5c2 /home/amduser/tahoe/bs5c2
144+#env.basedir_bs5c3 /home/amduser/tahoe/bs5c3
145+#env.basedir_bs5c4 /home/amduser/tahoe/bs5c4
146hunk ./misc/operations_helpers/munin/tahoe_diskleft 3
147 #!/usr/bin/env python
148 
149+################################################################################
150+#
151 # This is a munin plugin which pulls data from the server in
152hunk ./misc/operations_helpers/munin/tahoe_diskleft 6
153-# misc/operations_helpers/spacetime/diskwatcher.tac . It produces a graph of how much free space
154-# is left on all disks across the grid. The plugin should be configured with
155-# env_url= pointing at the diskwatcher.tac webport.
156+# misc/operations_helpers/spacetime/diskwatcher.tac
157+# It produces a graph of how much free space is left on all disks across the grid.
158+#
159+# Copy this plugin into /etc/munin/plugins/tahoe_diskleft and then put
160+# the following in your /etc/munin/plugin-conf.d/foo file to let it know
161+# where to find the basedirectory for each node:
162+#
163+#  [tahoe_diskleft]
164+#  env.url http://192.168.67.249:50074/?t=json
165+#
166+################################################################################
167+
168 
169 import os, sys, urllib, simplejson
170 
171hunk ./misc/operations_helpers/munin/tahoe_diskleft 23
172 if len(sys.argv) > 1 and sys.argv[1] == "config":
173     print """\
174-graph_title Tahoe Remaining Disk Space
175+graph_title Tahoe-LAFS Remaining Disk Space
176 graph_vlabel bytes remaining
177hunk ./misc/operations_helpers/munin/tahoe_diskleft 25
178-graph_category tahoe
179+graph_category Tahoe-LAFS
180 graph_info This graph shows the total amount of disk space left available in the grid
181 disk_left.label disk left
182 disk_left.draw LINE1"""
183hunk ./misc/operations_helpers/munin/tahoe_disktotal 3
184 #!/usr/bin/env python
185 
186+################################################################################
187+#
188 # This is a munin plugin which pulls data from the server in
189hunk ./misc/operations_helpers/munin/tahoe_disktotal 6
190-# misc/operations_helpers/spacetime/diskwatcher.tac . It produces a graph of how much space is
191-# present on all disks across the grid, and how much space is actually being
192-# used. The plugin should be configured with env_url= pointing at the
193-# diskwatcher.tac webport.
194+# misc/operations_helpers/spacetime/diskwatcher.tac
195+# It produces a graph of how much space is present on all disks across the grid
196+# and how much space is actually being used.
197+#
198+# Copy this plugin into /etc/munin/plugins/tahoe_disktotal and then put
199+# the following in your /etc/munin/plugin-conf.d/foo file to let it know
200+# where to find the basedirectory for each node:
201+
202+#  [tahoe_disktotal]
203+#  env.url http://192.168.67.249:50074/?t=json
204+#
205+################################################################################
206+
207 
208 import os, sys, urllib, simplejson
209 
210hunk ./misc/operations_helpers/munin/tahoe_disktotal 24
211 if len(sys.argv) > 1 and sys.argv[1] == "config":
212     print """\
213-graph_title Tahoe Total Disk Space
214+graph_title Tahoe-LAFS Total Disk Space
215 graph_vlabel bytes
216hunk ./misc/operations_helpers/munin/tahoe_disktotal 26
217-graph_category tahoe
218+graph_category Tahoe-LAFS
219 graph_info This graph shows the total amount of disk space present in the grid, and how much of it is currently being used.
220 disk_total.label disk total
221 disk_total.draw LINE2
222hunk ./misc/operations_helpers/munin/tahoe_disktotal 38
223 data = simplejson.load(urllib.urlopen(url))
224 print "disk_total.value", data["total"]
225 print "disk_used.value", data["used"]
226+print "disk_used.value", data["used"]
227+print "disk_used.value", data["used"]
228hunk ./misc/operations_helpers/munin/tahoe_diskusage 3
229 #!/usr/bin/env python
230 
231+################################################################################
232+#
233 # This is a munin plugin which pulls data from the server in
234hunk ./misc/operations_helpers/munin/tahoe_diskusage 6
235-# misc/operations_helpers/spacetime/diskwatcher.tac . It produces a graph of how much disk space
236-# is being used per unit time. The plugin should be configured with env_url=
237-# pointing at the diskwatcher.tac webport.
238+# misc/operations_helpers/spacetime/diskwatcher.tac
239+# It produces a graph of how much disk space is being used per unit time.
240+#
241+# Copy this plugin into /etc/munin/plugins/tahoe_diskusage and then put
242+# the following in your /etc/munin/plugin-conf.d/foo file to let it know
243+# where to find the basedirectory for each node:
244+#
245+#  [tahoe_diskusage]
246+#  env.url http://192.168.67.249:50074/?t=json
247+#
248+################################################################################
249+
250 
251 import os, sys, urllib, simplejson
252 
253hunk ./misc/operations_helpers/munin/tahoe_diskusage 23
254 if len(sys.argv) > 1 and sys.argv[1] == "config":
255     print """\
256-graph_title Tahoe Disk Usage Measurement
257+graph_title Tahoe-LAFS Disk Usage Measurement
258 graph_vlabel bytes per second
259hunk ./misc/operations_helpers/munin/tahoe_diskusage 25
260-graph_category tahoe
261+graph_category Tahoe-LAFS
262 graph_info This graph shows the estimated disk usage per unit time, totalled across all storage servers
263hunk ./misc/operations_helpers/munin/tahoe_diskusage 27
264-graph_args --lower-limit 0 --rigid
265 rate_1hr.label (one hour sample)
266 rate_1hr.draw LINE1
267 rate_1day.label (one day sample)
268hunk ./misc/operations_helpers/munin/tahoe_diskused 3
269 #!/usr/bin/env python
270 
271+################################################################################
272+#
273 # This is a munin plugin which pulls data from the server in
274hunk ./misc/operations_helpers/munin/tahoe_diskused 6
275-# misc/operations_helpers/spacetime/diskwatcher.tac . It produces a graph of how much space is
276-# used on all disks across the grid. The plugin should be configured with
277-# env_url= pointing at the diskwatcher.tac webport.
278+# misc/operations_helpers/spacetime/diskwatcher.tac
279+# It produces a graph of how much space is used on all disks across the grid.
280+#
281+# Copy this plugin into /etc/munin/plugins/tahoe_diskused and then put
282+# the following in your /etc/munin/plugin-conf.d/foo file to let it know
283+# where to find the basedirectory for each node:
284+#
285+#  [tahoe_diskused]
286+#  env.url http://192.168.67.249:50074/?t=json
287+#
288+################################################################################
289 
290 import os, sys, urllib, simplejson
291 
292hunk ./misc/operations_helpers/munin/tahoe_diskused 22
293 if len(sys.argv) > 1 and sys.argv[1] == "config":
294     print """\
295-graph_title Tahoe Total Disk Space Used
296+graph_title Tahoe-LAFS Total Disk Space Used
297 graph_vlabel bytes used
298hunk ./misc/operations_helpers/munin/tahoe_diskused 24
299-graph_category tahoe
300+graph_category Tahoe-LAFS
301 graph_info This graph shows the total amount of disk space used across the grid
302 disk_used.label disk used
303 disk_used.draw LINE1"""
304hunk ./misc/operations_helpers/munin/tahoe_doomsday 3
305 #!/usr/bin/env python
306 
307+
308+################################################################################
309+#
310 # This is a munin plugin which pulls data from the server in
311hunk ./misc/operations_helpers/munin/tahoe_doomsday 7
312-# misc/operations_helpers/spacetime/diskwatcher.tac . It produces a graph of how much time is
313-# left before the grid fills up. The plugin should be configured with
314-# env_url= pointing at the diskwatcher.tac webport.
315+# misc/operations_helpers/spacetime/diskwatcher.tac
316+# It produces a graph of how much time is left before the grid fills up.
317+#
318+# Copy this plugin into /etc/munin/plugins/tahoe_doomsday and then put
319+# the following in your /etc/munin/plugin-conf.d/foo file to let it know
320+# where to find the basedirectory for each node:
321+#
322+#  [tahoe_doomsday]
323+#  env.url http://192.168.67.249:50074/?t=json
324+#
325+################################################################################
326+
327 
328 import os, sys, urllib, simplejson
329 
330hunk ./misc/operations_helpers/munin/tahoe_doomsday 24
331 if len(sys.argv) > 1 and sys.argv[1] == "config":
332     print """\
333-graph_title Tahoe Remaining Time Predictor
334+graph_title Tahoe-LAFS Remaining Time Predictor
335 graph_vlabel days remaining
336hunk ./misc/operations_helpers/munin/tahoe_doomsday 26
337-graph_category tahoe
338+graph_category Tahoe-LAFS
339+graph_scale no
340+graph_args --units-exponent 0
341 graph_info This graph shows the estimated number of days left until storage space is exhausted
342 days_1hr.label days left (one hour sample)
343 days_1hr.draw LINE1
344hunk ./misc/operations_helpers/munin/tahoe_estimate_files 3
345 #!/usr/bin/env python
346 
347+################################################################################
348+#
349+# This is a munin plugin to track the estimated number of files and directories
350+# present in the grid
351+
352+# Copy this plugin into /etc/munin/plugins/tahoe_estimate_files and then put
353+# the following in your /etc/munin/plugin-conf.d/foo file to let it know
354+# where to find the basedirectory for each node:
355+#
356+# [tahoe_estimate_files]
357+# env.basedir /path/to/node1
358+# env.basedir /path/to/node2
359+# env.basedir /path/to/node3
360+# env.N 10
361+# env.num_servers 5
362+# env.correction 1
363+#
364+#
365+# env.N             shares.total in tahoe.cfg
366+# env.num_servers   server number
367+# env.correction   
368+#
369+#
370+################################################################################
371+
372 import sys, os.path
373 
374hunk ./misc/operations_helpers/munin/tahoe_estimate_files 30
375-if len(sys.argv) > 1 and sys.argv[1] == "config":
376-    print """\
377-graph_title Tahoe File Estimate
378+configinfo = \
379+"""graph_title Tahoe File Estimate
380 graph_vlabel files
381hunk ./misc/operations_helpers/munin/tahoe_estimate_files 33
382-graph_category tahoe
383+graph_category Tahoe-LAFS
384 graph_info This graph shows the estimated number of files and directories present in the grid
385 files.label files
386 files.draw LINE2"""
387hunk ./misc/operations_helpers/munin/tahoe_estimate_files 37
388-    sys.exit(0)
389 
390hunk ./misc/operations_helpers/munin/tahoe_estimate_files 38
391-# Edit this to point at some subset of storage directories.
392-node_dirs = [os.path.expanduser("~amduser/prodnet/storage1"),
393-             os.path.expanduser("~amduser/prodnet/storage2"),
394-             os.path.expanduser("~amduser/prodnet/storage3"),
395-             os.path.expanduser("~amduser/prodnet/storage4"),
396-             ]
397+if len(sys.argv) > 1:
398+    if sys.argv[1] == "config":
399+        print configinfo.rstrip()
400+        sys.exit(0)
401+
402+node_dirs = []
403+for k,v in os.environ.items():
404+    if k.startswith("basedir"):
405+        node_dirs.append(v)
406+        #print "Path", v
407+node_dirs.sort()
408 
409 sections = ["aa", "ab", "ac", "ad", "ae", "af", "ag", "ah", "ai", "aj"]
410hunk ./misc/operations_helpers/munin/tahoe_estimate_files 51
411-# and edit this to reflect your default encoding's "total_shares" value, and
412+
413+# Edit this to reflect your default encoding's "total_shares" value, and
414 # the total number of servers.
415hunk ./misc/operations_helpers/munin/tahoe_estimate_files 54
416-N = 10
417-num_servers = 20
418+N = url = int(os.environ["N"])
419+num_servers = url = int(os.environ["num_servers"])
420 
421 index_strings = set()
422 for base in node_dirs:
423hunk ./misc/operations_helpers/munin/tahoe_estimate_files 59
424+    #print "Base:" , base
425     for section in sections:
426         sampledir = os.path.join(base, "storage", "shares", section)
427         indices = os.listdir(sampledir)
428hunk ./misc/operations_helpers/munin/tahoe_estimate_files 66
429         index_strings.update(indices)
430 unique_strings = len(index_strings)
431 
432-# the chance that any given file appears on any given server
433+# The chance that any given file appears on any given server
434 chance = 1.0 * N / num_servers
435 
436 # the chance that the file does *not* appear on the servers that we're
437hunk ./misc/operations_helpers/munin/tahoe_estimate_files 75
438 
439 # if a file has a 25% chance of not appearing in our sample, then we need to
440 # raise our estimate by (1.25/1)
441-correction = 1+no_chance
442-#print "correction", correction
443+if "correction" in os.environ:
444+    correction = int(os.environ["correction"])
445+else:
446+    correction = 1+no_chance
447 
448hunk ./misc/operations_helpers/munin/tahoe_estimate_files 80
449-files = unique_strings * (32*32/len(sections)) * correction
450+files = unique_strings * (32*32/len(section)) * correction
451 print "files.value %d" % int(files)
452hunk ./misc/operations_helpers/munin/tahoe_estimate_files 82
453-
454hunk ./misc/operations_helpers/munin/tahoe_files 3
455 #!/usr/bin/env python
456 
457+################################################################################
458+#
459 # This is a munin plugin to track the number of files that each node's
460 # StorageServer is holding on behalf of other nodes. Each file that has been
461 # uploaded to the mesh (and has shares present on this node) will be counted
462hunk ./misc/operations_helpers/munin/tahoe_files 12
463 # total number of files that are active in the entire mesh. When there are
464 # 200 nodes present in the mesh, it will represent about half of the total
465 # number.
466-
467-# Copy this plugin into /etc/munun/plugins/tahoe-files and then put
468+#
469+# Copy this plugin into /etc/munin/plugins/tahoe_files and then put
470 # the following in your /etc/munin/plugin-conf.d/foo file to let it know
471 # where to find the basedirectory for each node:
472 #
473hunk ./misc/operations_helpers/munin/tahoe_files 17
474-#  [tahoe-files]
475+#  [tahoe_files]
476 #  env.basedir_NODE1 /path/to/node1
477 #  env.basedir_NODE2 /path/to/node2
478 #  env.basedir_NODE3 /path/to/node3
479hunk ./misc/operations_helpers/munin/tahoe_files 22
480 #
481+# In this example "NODE1","NODE2","NODE3" are used for graph label
482+# so you can put which you want.
483+#
484+# Please note:
485+# When you use Garbage Collector to delete unused shares, GC dosen't delete subdir of storage/shares
486+# So, this script dosen't return the real count of files.
487+# This ticket is open about that: http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1194
488+#
489+################################################################################
490+
491 
492 import os, sys
493 
494hunk ./misc/operations_helpers/munin/tahoe_files 40
495     if k.startswith("basedir_"):
496         nodename = k[len("basedir_"):]
497         nodedirs.append( (nodename, v) )
498+       #print (k)
499 nodedirs.sort()
500 
501 configinfo = \
502hunk ./misc/operations_helpers/munin/tahoe_files 44
503-"""graph_title Allmydata Tahoe Filecount
504+"""graph_title Tahoe-LAFS Filecount
505 graph_vlabel files
506hunk ./misc/operations_helpers/munin/tahoe_files 46
507-graph_category tahoe
508+graph_category Tahoe-LAFS
509 graph_info This graph shows the number of files hosted by this node's StorageServer
510hunk ./misc/operations_helpers/munin/tahoe_files 48
511+graph_args --units-exponent 0
512+graph_scale no
513 """
514 
515 for nodename, basedir in nodedirs:
516hunk ./misc/operations_helpers/munin/tahoe_helperstats_active 3
517 #!/usr/bin/env python
518 
519+################################################################################
520+#
521+# This munin plugin shows the number of files being actively processed by the helper
522+#
523+# Copy this plugin into /etc/munin/plugins/tahoe_helperstats_active and then put
524+# the following in your /etc/munin/plugin-conf.d/foo file to let it know
525+# where to find the statistics url.
526+#
527+# [tahoe_helperstats_active]
528+# env.url http://192.168.67.249:3456/statistics?t=json
529+#
530+################################################################################
531+
532+
533 import os, sys
534 import urllib
535 import simplejson
536hunk ./misc/operations_helpers/munin/tahoe_helperstats_active 22
537 
538 configinfo = """\
539-graph_title Tahoe Helper Stats - Active Files
540+graph_title Tahoe-LAFS Helper Stats - Active Files
541 graph_vlabel bytes
542hunk ./misc/operations_helpers/munin/tahoe_helperstats_active 24
543-graph_category tahoe
544+graph_category Tahoe-LAFS
545 graph_info This graph shows the number of files being actively processed by the helper
546 fetched.label Active Files
547 fetched.draw LINE2
548hunk ./misc/operations_helpers/munin/tahoe_helperstats_active 38
549 url = os.environ["url"]
550 
551 data = simplejson.loads(urllib.urlopen(url).read())
552-print "fetched.value %d" % data["chk_upload_helper.active_uploads"]
553+print "fetched.value %d" % data["stats"]["chk_upload_helper.active_uploads"]
554 
555hunk ./misc/operations_helpers/munin/tahoe_helperstats_fetched 3
556 #!/usr/bin/env python
557 
558+################################################################################
559+#
560+# This munin plugin shows the amount of data being fetched by the helper
561+#
562+# Copy this plugin into /etc/munin/plugins/tahoe_helperstats_fetched and then put
563+# the following in your /etc/munin/plugin-conf.d/foo file to let it know
564+# where to find the statistics url.
565+#
566+# [tahoe_helperstats_fetched]
567+# env.url http://192.168.67.249:3456/statistics?t=json
568+#
569+################################################################################
570+
571+
572 import os, sys
573 import urllib
574 import simplejson
575hunk ./misc/operations_helpers/munin/tahoe_helperstats_fetched 22
576 
577 configinfo = """\
578-graph_title Tahoe Helper Stats - Bytes Fetched
579+graph_title Tahoe-LAFS Helper Stats - Bytes Fetched
580 graph_vlabel bytes
581hunk ./misc/operations_helpers/munin/tahoe_helperstats_fetched 24
582-graph_category tahoe
583+graph_category Tahoe-LAFS
584 graph_info This graph shows the amount of data being fetched by the helper
585 fetched.label Bytes Fetched
586 fetched.type GAUGE
587hunk ./misc/operations_helpers/munin/tahoe_helperstats_fetched 40
588 url = os.environ["url"]
589 
590 data = simplejson.loads(urllib.urlopen(url).read())
591-print "fetched.value %d" % data["chk_upload_helper.fetched_bytes"]
592+print "fetched.value %d" % data["stats"]["chk_upload_helper.fetched_bytes"]
593hunk ./misc/operations_helpers/munin/tahoe_introstats 3
594 #!/usr/bin/env python
595 
596+################################################################################
597+#
598+# This graph shows the number of hosts announcing and subscribing to various services
599+#
600+# Copy this plugin into /etc/munin/plugins/tahoe_introstats and then put
601+# the following in your /etc/munin/plugin-conf.d/foo file to let it know
602+# where to find the JSON url of your Introducer
603+#
604+# [tahoe_introstats]
605+# env.url http://192.168.67.249:9000/?t=json
606+#
607+################################################################################
608+
609+
610 import os, sys
611 import urllib
612 import simplejson
613hunk ./misc/operations_helpers/munin/tahoe_introstats 22
614 
615 configinfo = """\
616-graph_title Tahoe Introducer Stats
617+graph_title Tahoe-LAFS Introducer Stats
618 graph_vlabel hosts
619hunk ./misc/operations_helpers/munin/tahoe_introstats 24
620-graph_category tahoe
621+graph_category Tahoe-LAFS
622 graph_info This graph shows the number of hosts announcing and subscribing to various services
623 storage_server.label Storage Servers
624 storage_server.draw LINE1
625hunk ./misc/operations_helpers/munin/tahoe_introstats 45
626 print "storage_server.value %d" % data["announcement_summary"]["storage"]
627 print "storage_hosts.value %d" % data["announcement_distinct_hosts"]["storage"]
628 print "storage_client.value %d" % data["subscription_summary"]["storage"]
629-
630hunk ./misc/operations_helpers/munin/tahoe_nodememory 3
631 #!/usr/bin/env python
632 
633+################################################################################
634+#
635 # This munin plugin isolates processes by looking for the 'pid' file created
636hunk ./misc/operations_helpers/munin/tahoe_nodememory 6
637-# by 'allmydata start', then extracts the amount of memory they consume (both
638-# VmSize and VmRSS) from /proc
639+# by 'tahoe start', then extracts the amount of memory they consume
640+# (both VmSize and VmRSS) from /proc
641+#
642+# Copy this plugin into /etc/munin/plugins/tahoe_nodememory and then put
643+# the following in your /etc/munin/plugin-conf.d/foo file to let it know
644+# where to find the 'pid' file of each process
645+#
646+# [tahoe_nodememory]
647+# env.nodememory_NODE1 /path/to/node1
648+# env.nodememory_NODE2 /path/to/node2
649+# env.nodememory_NODE3 /path/to/node3
650+#
651+# In this exemple "NODE1","NODE2","NODE3" are used for graph label
652+# so you can put which you want
653+#
654+################################################################################
655 
656hunk ./misc/operations_helpers/munin/tahoe_nodememory 23
657-import os, sys, re
658 
659hunk ./misc/operations_helpers/munin/tahoe_nodememory 24
660-if 0:
661-    # for testing
662-    os.environ["nodememory_warner1"] = "run/warner1"
663-    os.environ["nodememory_warner2"] = "run/warner2"
664+import os, sys, re
665 
666 nodedirs = []
667 for k,v in os.environ.items():
668hunk ./misc/operations_helpers/munin/tahoe_nodememory 49
669         configinfo = \
670         """graph_title Memory Consumed by Nodes
671 graph_vlabel bytes
672-graph_category Tahoe
673+graph_category Tahoe-LAFS
674 graph_info This graph shows the memory used by specific processes
675 """
676         for nodename,nodedir in nodedirs:
677hunk ./misc/operations_helpers/munin/tahoe_overhead 3
678 #!/usr/bin/env python
679 
680+
681+################################################################################
682+#
683+# /!\ Please note:
684+# This script is deeply obsolete, because it depended upon the DB that managed customer accounts at allmydata.com.
685+# to use this script, you will need some source of 'tahoe deep-size' results for all rootcaps that reference data in your grid.
686+# This tool was written for the allmydata.com environment, which maintained such a value.
687+#
688+################################################################################
689+
690+
691+################################################################################
692+#
693 # This is a munin plugin which pulls total-used data from the server in
694 # misc/operations_helpers/spacetime/diskwatcher.tac, and a total-deep-size number from custom
695 # PHP database-querying scripts on a different server. It produces a graph of
696hunk ./misc/operations_helpers/munin/tahoe_overhead 24
697 # 0, using twice as much space as we'd prefer would be 100. This is the
698 # percentage which could be saved if we made GC work perfectly and reduced
699 # other forms of overhead to zero. This script assumes 3-of-10.
700-
701+#
702 # A second graph is produced with how much of the total-deep-size number
703 # would be saved if we removed data from inactive accounts. This is also on a
704 # percentage scale.
705hunk ./misc/operations_helpers/munin/tahoe_overhead 28
706-
707+#
708 # A separate number (without a graph) is produced with the "effective
709 # expansion factor". If there were no overhead, with 3-of-10, this would be
710 # 3.33 .
711hunk ./misc/operations_helpers/munin/tahoe_overhead 32
712-
713+#
714 # Overhead is caused by the following problems (in order of size):
715 #  uncollected garbage: files that are no longer referenced but not yet deleted
716 #  inactive accounts: files that are referenced by cancelled accounts
717hunk ./misc/operations_helpers/munin/tahoe_overhead 39
718 #  share storage overhead: bucket directories
719 #  filesystem overhead: 4kB minimum block sizes
720 #  share overhead: hashes, pubkeys, lease information
721-
722+#
723 # This plugin should be configured with env_diskwatcher_url= pointing at the
724 # diskwatcher.tac webport, and env_deepsize_url= pointing at the PHP script.
725hunk ./misc/operations_helpers/munin/tahoe_overhead 42
726+#
727+################################################################################
728+
729 
730 import os, sys, urllib, simplejson
731 
732hunk ./misc/operations_helpers/munin/tahoe_rootdir_space 3
733 #!/usr/bin/env python
734 
735+################################################################################
736+#
737+# /!\ Please note:
738+# This script is deeply obsolete, because it depended upon the DB that managed customer accounts at allmydata.com.
739+# to use this script, you will need some source of 'tahoe deep-size' results for all rootcaps that reference data in your grid.
740+# This tool was written for the allmydata.com environment, which maintained such a value.
741+#
742+################################################################################
743+
744+
745 import os, sys
746 import urllib
747 import simplejson
748hunk ./misc/operations_helpers/munin/tahoe_server_latency_ 3
749 #!/usr/bin/env python
750 
751-# retrieve a latency statistic for a given operation and percentile from a
752+################################################################################
753+#
754+# This munin plugin retrieve a latency statistic for a given operation and percentile from a
755 # set of storage servers.
756hunk ./misc/operations_helpers/munin/tahoe_server_latency_ 7
757-
758-# the OPERATION value should come from the following list:
759+#
760+# The OPERATION value should come from the following list:
761 #   allocate:   allocate_buckets, first step to upload an immutable file
762hunk ./misc/operations_helpers/munin/tahoe_server_latency_ 10
763-#    write: write data to an immutable share
764-#    close: finish writing to an immutable share
765-#    cancel: abandon a partial immutable share
766-#   get: get_buckets, first step to download an immutable file
767-#    read: read data from an immutable share
768-#   writev: slot_testv_and_readv_and_writev, modify/create a directory
769-#   readv: read a directory (or mutable file)
770-
771-# the PERCENTILE value should come from the following list:
772+#   write:      write data to an immutable share
773+#   close:      finish writing to an immutable share
774+#   cancel:     abandon a partial immutable share
775+#   get:        get_buckets, first step to download an immutable file
776+#   read:       read data from an immutable share
777+#   writev:     slot_testv_and_readv_and_writev, modify/create a directory
778+#   readv:      read a directory (or mutable file)
779+#
780+# The PERCENTILE value should come from the following list:
781 #  01_0:   1%
782 #  10_0:  10%
783 #  50_0:  50% (median)
784hunk ./misc/operations_helpers/munin/tahoe_server_latency_ 26
785 #  99_0:  99%
786 #  99_9:  99.9%
787 #  mean:
788-
789+#
790 # To use this, create a symlink from
791 # /etc/munin/plugins/tahoe_server_latency_OPERATION_PERCENTILE to this
792 # script. For example:
793hunk ./misc/operations_helpers/munin/tahoe_server_latency_ 30
794-
795-# ln -s /usr/share/doc/allmydata-tahoe/munin/tahoe_server_latency_ \
796-#  /etc/munin/plugins/tahoe_server_latency_allocate_99_9
797-
798+#
799+# ln -s tahoe_server_latency_ /etc/munin/plugins/tahoe_server_latency_allocate_99_9
800+#
801 # Also, you will need to put a list of node statistics URLs in the plugin's
802hunk ./misc/operations_helpers/munin/tahoe_server_latency_ 34
803-# environment, by adding a stanza like the following to a file in
804-# /etc/munin/plugin-conf.d/, such as /etc/munin/plugin-conf.d/tahoe_latencies:
805+# environment, by adding a stanza like the following to a file such as
806+# /etc/munin/plugin-conf.d/foo:
807 #
808 # [tahoe_server_latency*]
809hunk ./misc/operations_helpers/munin/tahoe_server_latency_ 38
810-# env.url_storage1 http://localhost:9011/statistics?t=json
811-# env.url_storage2 http://localhost:9012/statistics?t=json
812-# env.url_storage3 http://localhost:9013/statistics?t=json
813-# env.url_storage4 http://localhost:9014/statistics?t=json
814-
815+# env.url_NODE1 http://localhost:3456/statistics?t=json
816+# env.url_NODE2 http://localhost:3456/statistics?t=json
817+# env.url_NODE3 http://localhost:3456/statistics?t=json
818+# env.url_NODE4 http://localhost:3456/statistics?t=json
819+#
820+# In this example "NODE1","NODE2","NODE3","NODE4" are used for graph label
821+# so you can put which you want.
822+#
823 # of course, these URLs must match the webports you have configured into the
824 # storage nodes.
825hunk ./misc/operations_helpers/munin/tahoe_server_latency_ 48
826+#
827+################################################################################
828+
829 
830 import os, sys
831 import urllib
832hunk ./misc/operations_helpers/munin/tahoe_server_latency_ 74
833     what = percentile.replace("_", ".") + "th percentile"
834 
835 configinfo = \
836-"""graph_title Tahoe Server '%(operation)s' Latency (%(what)s)
837+"""graph_title Tahoe-LAFS Server '%(operation)s' Latency (%(what)s)
838 graph_vlabel seconds
839hunk ./misc/operations_helpers/munin/tahoe_server_latency_ 76
840-graph_category tahoe
841+graph_category Tahoe-LAFS
842 graph_info This graph shows how long '%(operation)s' operations took on the storage server, the %(what)s delay between message receipt and response generation, calculated over the last thousand operations.
843 """ % {'operation': operation,
844        'what': what}
845hunk ./misc/operations_helpers/munin/tahoe_server_latency_ 100
846     key = "storage_server.latencies.%s.%s" % (operation, p_key)
847     value = data["stats"][key]
848     print "%s.value %s" % (nodename, value)
849-
850-
851hunk ./misc/operations_helpers/munin/tahoe_server_operations_ 3
852 #!/usr/bin/env python
853 
854-# graph operations-per-second from a set of storage servers.
855-
856-# the OPERATION value should come from the following list:
857+################################################################################
858+#
859+# This munin plugin shows operations-per-second from a set of storage servers.
860+#
861+# The OPERATION value should come from the following list:
862 #   allocate:   allocate_buckets, first step to upload an immutable file
863hunk ./misc/operations_helpers/munin/tahoe_server_operations_ 9
864-#    write: write data to an immutable share
865-#    close: finish writing to an immutable share
866-#    cancel: abandon a partial immutable share
867-#   get: get_buckets, first step to download an immutable file
868-#    read: read data from an immutable share
869-#   writev: slot_testv_and_readv_and_writev, modify/create a directory
870-#   readv: read a directory (or mutable file)
871-
872+#   write:      write data to an immutable share
873+#   close:      finish writing to an immutable share
874+#   cancel:     abandon a partial immutable share
875+#   get:        get_buckets, first step to download an immutable file
876+#   read:       read data from an immutable share
877+#   writev:     slot_testv_and_readv_and_writev, modify/create a directory
878+#   readv:      read a directory (or mutable file)
879+#
880 # To use this, create a symlink from
881hunk ./misc/operations_helpers/munin/tahoe_server_operations_ 18
882-# /etc/munin/plugins/tahoe_server_operations_OPERATION to this script. For
883-# example:
884-
885-# ln -s /usr/share/doc/allmydata-tahoe/munin/tahoe_server_operations_ \
886-#  /etc/munin/plugins/tahoe_server_operations_allocate
887-
888+# /etc/munin/plugins/tahoe_server_operations_OPERATION to this script.
889+# For example:
890+# ln -s tahoe_server_operations_ /etc/munin/plugins/tahoe_server_operations_allocate
891+#
892 # Also, you will need to put a list of node statistics URLs in the plugin's
893hunk ./misc/operations_helpers/munin/tahoe_server_operations_ 23
894-# environment, by adding a stanza like the following to a file in
895-# /etc/munin/plugin-conf.d/, such as /etc/munin/plugin-conf.d/tahoe_operations:
896+# environment, by adding a stanza like the following to a file such as
897+# /etc/munin/plugin-conf.d/foo:
898 #
899 # [tahoe_server_operations*]
900hunk ./misc/operations_helpers/munin/tahoe_server_operations_ 27
901-# env.url_storage1 http://localhost:9011/statistics?t=json
902-# env.url_storage2 http://localhost:9012/statistics?t=json
903-# env.url_storage3 http://localhost:9013/statistics?t=json
904-# env.url_storage4 http://localhost:9014/statistics?t=json
905-
906+# env.url_NODE1 http://localhost:3456/statistics?t=json
907+# env.url_NODE2 http://localhost:3456/statistics?t=json
908+# env.url_NODE3 http://localhost:3456/statistics?t=json
909+# env.url_NODE4 http://localhost:3456/statistics?t=json
910+#
911+# In this example "NODE1","NODE2","NODE3","NODE4" are used for graph label
912+# so you can put which you want.
913+#
914 # of course, these URLs must match the webports you have configured into the
915 # storage nodes.
916hunk ./misc/operations_helpers/munin/tahoe_server_operations_ 37
917+#
918+################################################################################
919+
920 
921 import os, sys
922 import urllib
923hunk ./misc/operations_helpers/munin/tahoe_server_operations_ 58
924 operation = my_name[len(PREFIX):]
925 
926 configinfo = \
927-"""graph_title Tahoe Server '%(operation)s' Operations
928+"""graph_title Tahoe-LAFS Server '%(operation)s' Operations
929 graph_vlabel ops per second
930hunk ./misc/operations_helpers/munin/tahoe_server_operations_ 60
931-graph_category tahoe
932+graph_category Tahoe-LAFS
933 graph_info This graph shows how many '%(operation)s' operations take place on the storage server
934 """ % {'operation': operation}
935 
936hunk ./misc/operations_helpers/munin/tahoe_server_operations_ 70
937     configinfo += "%s.min 0\n" % (nodename,)
938     configinfo += "%s.draw LINE2\n" % (nodename,)
939 
940-
941 if len(sys.argv) > 1:
942     if sys.argv[1] == "config":
943         print configinfo.rstrip()
944hunk ./misc/operations_helpers/munin/tahoe_server_operations_ 80
945     key = "storage_server.%s" % operation
946     value = data["counters"][key]
947     print "%s.value %s" % (nodename, value)
948-
949-
950hunk ./misc/operations_helpers/munin/tahoe_storagespace 3
951 #!/usr/bin/env python
952 
953-# This is a munin plugin to track the amount of disk space each node's
954+################################################################################
955+#
956+# This munin plugin track the amount of disk space each node's
957 # StorageServer is consuming on behalf of other nodes. This is where the
958 # shares are kept. If there are N nodes present in the mesh, the total space
959 # consumed by the entire mesh will be about N times the space reported by
960hunk ./misc/operations_helpers/munin/tahoe_storagespace 10
961 # this plugin.
962-
963+#
964 # Copy this plugin into /etc/munun/plugins/tahoe_storagespace and then put
965 # the following in your /etc/munin/plugin-conf.d/foo file to let it know
966hunk ./misc/operations_helpers/munin/tahoe_storagespace 13
967-# where to find the basedirectory for each node:
968+# where to find the base directory for each node:
969 #
970 #  [tahoe_storagespace]
971 #  env.basedir_NODE1 /path/to/node1
972hunk ./misc/operations_helpers/munin/tahoe_storagespace 20
973 #  env.basedir_NODE2 /path/to/node2
974 #  env.basedir_NODE3 /path/to/node3
975 #
976-# Allmydata-tahoe must be installed on the system where this plugin is used,
977-# since it imports a utility module from allmydata.utils .
978+# In this example "NODE1","NODE2","NODE3" are used for graph label
979+# so you can put which you want.
980+#
981+################################################################################
982+
983 
984 import os, sys
985 import commands
986hunk ./misc/operations_helpers/munin/tahoe_storagespace 39
987 seriesname = "storage"
988 
989 configinfo = \
990-"""graph_title Allmydata Tahoe Shareholder Space
991+"""graph_title Tahoe-LAFS Shareholder Space
992 graph_vlabel bytes
993hunk ./misc/operations_helpers/munin/tahoe_storagespace 41
994-graph_category tahoe
995+graph_category Tahoe-LAFS
996 graph_info This graph shows the space consumed by this node's StorageServer
997 """
998 
999}
1000
1001Context:
1002
1003[abbreviate time edge case python2.5 unit test
1004jacob.lyles@gmail.com**20100729210638
1005 Ignore-this: 80f9b1dc98ee768372a50be7d0ef66af
1006]
1007[docs: add Jacob Lyles to CREDITS
1008zooko@zooko.com**20100730230500
1009 Ignore-this: 9dbbd6a591b4b1a5a8dcb69b7b757792
1010]
1011[web: don't use %d formatting on a potentially large negative float -- there is a bug in Python 2.5 in that case
1012jacob.lyles@gmail.com**20100730220550
1013 Ignore-this: 7080eb4bddbcce29cba5447f8f4872ee
1014 fixes #1055
1015]
1016[test_upload.py: rename test_problem_layout_ticket1124 to test_problem_layout_ticket_1124 -- fix .todo reference.
1017david-sarah@jacaranda.org**20100729152927
1018 Ignore-this: c8fe1047edcc83c87b9feb47f4aa587b
1019]
1020[test_upload.py: rename test_problem_layout_ticket1124 to test_problem_layout_ticket_1124 for consistency.
1021david-sarah@jacaranda.org**20100729142250
1022 Ignore-this: bc3aad5919ae9079ceb9968ad0f5ea5a
1023]
1024[docs: fix licensing typo that was earlier fixed in [20090921164651-92b7f-7f97b58101d93dc588445c52a9aaa56a2c7ae336]
1025zooko@zooko.com**20100729052923
1026 Ignore-this: a975d79115911688e5469d4d869e1664
1027 I wish we didn't copies of this licensing text in several different files so that changes can be accidentally omitted from some of them.
1028]
1029[misc/build_helpers/run-with-pythonpath.py: fix stale comment, and remove 'trial' example that is not the right way to run trial.
1030david-sarah@jacaranda.org**20100726225729
1031 Ignore-this: a61f55557ad69a1633bfb2b8172cce97
1032]
1033[docs/specifications/dirnodes.txt: 'mesh'->'grid'.
1034david-sarah@jacaranda.org**20100723061616
1035 Ignore-this: 887bcf921ef00afba8e05e9239035bca
1036]
1037[docs/specifications/dirnodes.txt: bring layer terminology up-to-date with architecture.txt, and a few other updates (e.g. note that the MAC is no longer verified, and that URIs can be unknown). Also 'Tahoe'->'Tahoe-LAFS'.
1038david-sarah@jacaranda.org**20100723054703
1039 Ignore-this: f3b98183e7d0a0f391225b8b93ac6c37
1040]
1041[docs: use current cap to Zooko's wiki page in example text
1042zooko@zooko.com**20100721010543
1043 Ignore-this: 4f36f36758f9fdbaf9eb73eac23b6652
1044 fixes #1134
1045]
1046[__init__.py: silence DeprecationWarning about BaseException.message globally. fixes #1129
1047david-sarah@jacaranda.org**20100720011939
1048 Ignore-this: 38808986ba79cb2786b010504a22f89
1049]
1050[test_runner: test that 'tahoe --version' outputs no noise (e.g. DeprecationWarnings).
1051david-sarah@jacaranda.org**20100720011345
1052 Ignore-this: dd358b7b2e5d57282cbe133e8069702e
1053]
1054[TAG allmydata-tahoe-1.7.1
1055zooko@zooko.com**20100719131352
1056 Ignore-this: 6942056548433dc653a746703819ad8c
1057]
1058[relnotes.txt: updated for v1.7.1 release!
1059zooko@zooko.com**20100719083059
1060 Ignore-this: 9f10eb19b65a39d652b546c57481da45
1061]
1062[immutable: add test case of #1128, fix test case of #1118
1063zooko@zooko.com**20100719081612
1064 Ignore-this: 8f9f742e7dac2bd9b49c19bd10f1c204
1065]
1066[NEWS: add #1118 and reflow
1067zooko@zooko.com**20100719081248
1068 Ignore-this: 37a2e39d58c7b584b3c7f193bc1b30df
1069]
1070[immutable: fix bug in which preexisting_shares and merged were shallowly referencing the same sets
1071zooko@zooko.com**20100719075426
1072 Ignore-this: 90827f8ce7ff0fc0c3c7f819399b8cf0
1073 This bug had the effect of making uploads sometimes (rarely) appear to succeed when they had actually not distributed the shares well enough to achieve the desired servers-of-happiness level.
1074]
1075[upload.py: fix #1118 by aborting newly-homeless buckets when reassignment runs. This makes a previously failing assert correct. This version refactors 'abort' into two methods, rather than using a default argument.
1076david-sarah@jacaranda.org**20100719044655
1077 Ignore-this: 142d182c0739986812140bb8387077d5
1078]
1079[docs/known_issues.txt: update release version and date.
1080david-sarah@jacaranda.org**20100718235940
1081 Ignore-this: dbbb42dbfa6c0d205a0b8e6e58eee9c7
1082]
1083[relnotes.txt, docs/quickstart.html: prepare for 1.7.1 release. Don't claim to work on Cygwin (this might work but is untested).
1084david-sarah@jacaranda.org**20100718235437
1085 Ignore-this: dfc7334ee4bb76c04ee19304a7f1024b
1086]
1087[immutable: extend the tests to check that the shares that got uploaded really do make a sufficiently Happy distribution
1088zooko@zooko.com**20100719045047
1089 Ignore-this: 89c33a7b795e23018667351045a8d5d0
1090 This patch also renames some instances of "find_shares()" to "find_all_shares()" and other instances to "find_uri_shares()" as appropriate -- the conflation between those names confused me at first when writing these tests.
1091]
1092[immutable: test for #1118
1093zooko@zooko.com**20100718221537
1094 Ignore-this: 8882aabe2aaec6a0148c87e735d817ad
1095]
1096[immutable: test for #1124
1097zooko@zooko.com**20100718222907
1098 Ignore-this: 1766e3cbab92ea2a9e246f40eb6e770b
1099]
1100[docs/logging.txt: document that _trial_temp/test.log does not receive messages below level=OPERATIONAL, due to <http://foolscap.lothar.com/trac/ticket/154>.
1101david-sarah@jacaranda.org**20100718230420
1102 Ignore-this: aef40f2e74ddeabee5e122e8d80893a1
1103]
1104[trivial: fix unused import (sorry about that, pyflakes)
1105zooko@zooko.com**20100718215133
1106 Ignore-this: c2414e443405072b51d552295f2c0e8c
1107]
1108[tests, NEWS, CREDITS re: #1117
1109zooko@zooko.com**20100718203225
1110 Ignore-this: 1f08be2c692fb72cc0dd023259f11354
1111 Give Brian and Kevan promotions, move release date in NEWS to the 18th, commit Brian's test for #1117.
1112 fixes #1117
1113]
1114[test/test_upload.py: test to see that aborted buckets are ignored by the storage server
1115Kevan Carstensen <kevan@isnotajoke.com>**20100716001046
1116 Ignore-this: cc075c24b1c86d737f3199af894cc780
1117]
1118[test/test_storage.py: test for the new remote_abort semantics.
1119Kevan Carstensen <kevan@isnotajoke.com>**20100715232148
1120 Ignore-this: d3d6491f17bf670e770ca4b385007515
1121]
1122[storage/immutable.py: make remote_abort btell the storage server about aborted buckets.
1123Kevan Carstensen <kevan@isnotajoke.com>**20100715232105
1124 Ignore-this: 16ab0090676355abdd5600ed44ff19c9
1125]
1126[test/test_upload.py: changes to test plumbing for #1117 tests
1127Kevan Carstensen <kevan@isnotajoke.com>**20100715231820
1128 Ignore-this: 78a6d359d7bf8529d283e2815bf1e2de
1129 
1130     - Add a callRemoteOnly method to FakeBucketWriter.
1131     - Change the abort method in FakeBucketWriter to not return a
1132       RuntimeError.
1133]
1134[immutable/upload.py: abort buckets if peer selection fails
1135Kevan Carstensen <kevan@isnotajoke.com>**20100715231714
1136 Ignore-this: 2a0b643a22284df292d8ed9d91b1fd37
1137]
1138[test_encodingutil: correct an error in the previous patch to StdlibUnicode.test_open_representable.
1139david-sarah@jacaranda.org**20100718151420
1140 Ignore-this: af050955f623fbc0e4d78e15a0a8a144
1141]
1142[NEWS: Forward-compatibility improvements for non-ASCII caps (#1051).
1143david-sarah@jacaranda.org**20100718143622
1144 Ignore-this: 1edfebc4bd38a3b5c35e75c99588153f
1145]
1146[test_dirnode and test_web: don't use failUnlessReallyEqual in cases where the return type from simplejson.loads can vary between unicode and str. Use to_str when comparing URIs parsed from JSON.
1147david-sarah@jacaranda.org**20100718142915
1148 Ignore-this: c4e78ef4b1478dd400da71cf077ffa4a
1149]
1150[test_encodingutil: StdlibUnicode.test_open_representable no longer uses a mock.
1151david-sarah@jacaranda.org**20100718125412
1152 Ignore-this: 4bf373a5e2dfe4209e5e364124af29a3
1153]
1154[docs: add comment clarifying #1051
1155zooko@zooko.com**20100718053250
1156 Ignore-this: 6cfc0930434cbdbbc262dabb58f1505d
1157]
1158[docs: update NEWS
1159zooko@zooko.com**20100718053225
1160 Ignore-this: 63d5c782ef84812e6d010f0590866831
1161]
1162[Add tests of caps from the future that have non-ASCII characters in them (encoded as UTF-8). The changes to test_uri.py, test_client.py, and test_dirnode.py add tests of non-ASCII future caps in addition to the current tests. The changes to test_web.py just replace the tests of all-ASCII future caps with tests of non-ASCII future caps. We also change uses of failUnlessEqual to failUnlessReallyEqual, in order to catch cases where the type of a string is not as expected.
1163david-sarah@jacaranda.org**20100711200252
1164 Ignore-this: c2f193352369d32e06865f8f3e951894
1165]
1166[Debian documentation update
1167jacob@appelbaum.net**20100305003004]
1168[debian-docs-patch-final
1169jacob@appelbaum.net**20100304085955]
1170[M-x whitespace-cleanup
1171zooko@zooko.com**20100718032739
1172 Ignore-this: babfd4af6ad2fc885c957fd5c8b10c3f
1173]
1174[docs: tidy up NEWS a little
1175zooko@zooko.com**20100718032434
1176 Ignore-this: 54f2820fd1a37c8967609f6bfc4e5e18
1177]
1178[benchmarking: update bench_dirnode.py to reflect the new directory interfaces
1179zooko@zooko.com**20100718031710
1180 Ignore-this: 368ba523dd3de80d9da29cd58afbe827
1181]
1182[test_encodingutil: fix test_open_representable, which is only valid when run on a platform for which we know an unrepresentable filename.
1183david-sarah@jacaranda.org**20100718030333
1184 Ignore-this: c114d92c17714a5d4ae005c15267d60c
1185]
1186[iputil.py: Add support for FreeBSD 7,8 and 9
1187francois@ctrlaltdel.ch**20100718022832
1188 Ignore-this: 1829b4cf4b91107f4cf87841e6167e99
1189 committed by: zooko@zooko.com
1190 date: 2010-07-17
1191 and I also patched: NEWS and CREDITS
1192]
1193[NEWS: add snippet about #1083
1194zooko@zooko.com**20100718020653
1195 Ignore-this: d353a9d93cbc5a5e6ba4671f78d1e22b
1196]
1197[fileutil: docstrings for non-obvious usage restrictions on methods of EncryptedTemporaryFile.
1198david-sarah@jacaranda.org**20100717054647
1199 Ignore-this: 46d8fc10782fa8ec2b6c5b168c841943
1200]
1201[Move EncryptedTemporaryFile from SFTP frontend to allmydata.util.fileutil, and make the FTP frontend also use it (fixing #1083).
1202david-sarah@jacaranda.org**20100711213721
1203 Ignore-this: e452e8ca66391aa2a1a49afe0114f317
1204]
1205[NEWS: reorder NEWS snippets to be in descending order of interestingness
1206zooko@zooko.com**20100718015929
1207 Ignore-this: 146c42e88a9555a868a04a69dd0e5326
1208]
1209[Correct stringutils->encodingutil patch to be the newer version, rather than the old version that was committed in error.
1210david-sarah@jacaranda.org**20100718013435
1211 Ignore-this: c8940c4e1aa2e9acc80cd4fe54753cd8
1212]
1213[test_cli.py: fix error that crept in when rebasing the patch for #1072.
1214david-sarah@jacaranda.org**20100718000123
1215 Ignore-this: 3e8f6cc3a27b747c708221dd581934f4
1216]
1217[stringutils: add test for when sys.stdout has no encoding attribute (fixes #1099).
1218david-sarah@jacaranda.org**20100717045816
1219 Ignore-this: f28dce6940e909f12f354086d17db54f
1220]
1221[CLI: add 'tahoe unlink' as an alias to 'tahoe rm', for forward-compatibility.
1222david-sarah@jacaranda.org**20100717220411
1223 Ignore-this: 3ecdde7f2d0498514cef32e118e0b855
1224]
1225[minor code clean-up in dirnode.py
1226zooko@zooko.com**20100714060255
1227 Ignore-this: bb0ab2783203e605024b3e2f798256a1
1228 Impose micro-POLA by passing only the writekey instead of the whole node object to {{{_encrypt_rw_uri()}}}. Remove DummyImmutableFileNode in nodemaker.py, which is obviated by this. Add micro-optimization by precomputing the netstring of the empty string and branching on whether the writekey is present or not outside of {{{_encrypt_rw_uri()}}}. Add doc about writekey to docstring.
1229 fixes #967
1230]
1231[Rename stringutils to encodingutil, and drop listdir_unicode and open_unicode (since the Python stdlib functions work fine with Unicode paths). Also move some utility functions to fileutil.
1232david-sarah@jacaranda.org**20100712003015
1233 Ignore-this: 103b809d180df17a7283077c3104c7be
1234]
1235[Allow URIs passed in the initial JSON for t=mkdir-with-children, t=mkdir-immutable to be Unicode. Also pass the name of each child into nodemaker.create_from_cap for error reporting.
1236david-sarah@jacaranda.org**20100711195525
1237 Ignore-this: deac32d8b91ba26ede18905d3f7d2b93
1238]
1239[docs: CREDITS and NEWS
1240zooko@zooko.com**20100714060150
1241 Ignore-this: dc83e612f77d69e50ee975f07f6b16fe
1242]
1243[CREDITS: more creds for Kevan, plus utf-8 BOM
1244zooko@zooko.com**20100619045503
1245 Ignore-this: 72d02bdd7a0f324f1cee8cd399c7c6de
1246]
1247[cli.py: make command descriptions consistently end with a full stop.
1248david-sarah@jacaranda.org**20100714014538
1249 Ignore-this: 9ee7fa29ca2d1631db4049c2a389a97a
1250]
1251[SFTP: address some of the comments in zooko's review (#1106).
1252david-sarah@jacaranda.org**20100712025537
1253 Ignore-this: c3921638a2d4f1de2a776ae78e4dc37e
1254]
1255[docs/logging.txt: note that setting flogging vars might affect tests with race conditions.
1256david-sarah@jacaranda.org**20100712050721
1257 Ignore-this: fc1609d215fcd5561a57fd1226206f27
1258]
1259[test_storage.py: potential fix for failures when logging is enabled.
1260david-sarah@jacaranda.org**19700713040546
1261 Ignore-this: 5815693a0df3e64c52c3c6b7be2846c7
1262]
1263[upcase_since_on_welcome
1264terrellrussell@gmail.com**20100708193903]
1265[server_version_on_welcome_page.dpatch.txt
1266freestorm77@gmail.com**20100605191721
1267 Ignore-this: b450c76dc875f5ac8cca229a666cbd0a
1268 
1269 
1270 - The storage server version is 0 for all storage nodes in the Welcome Page
1271 
1272 
1273]
1274[NEWS: add NEWS snippets about two recent patches
1275zooko@zooko.com**20100708162058
1276 Ignore-this: 6c9da6a0ad7351a960bdd60f81532899
1277]
1278[directory_html_top_banner.dpatch
1279freestorm77@gmail.com**20100622205301
1280 Ignore-this: 1d770d975e0c414c996564774f049bca
1281 
1282 The div tag with the link "Return to Welcome page" on the directory.xhtml page is not correct
1283 
1284]
1285[tahoe_css_toolbar.dpatch
1286freestorm77@gmail.com**20100622210046
1287 Ignore-this: 5b3ebb2e0f52bbba718a932f80c246c0
1288 
1289 CSS modification to be correctly diplayed with Internet Explorer 8
1290 
1291 The links on the top of page directory.xhtml are not diplayed in the same line as display with Firefox.
1292 
1293]
1294[runnin_test_tahoe_css.dpatch
1295freestorm77@gmail.com**20100622214714
1296 Ignore-this: e0db73d68740aad09a7b9ae60a08c05c
1297 
1298 Runnin test for changes in tahoe.css file
1299 
1300]
1301[runnin_test_directory_xhtml.dpatch
1302freestorm77@gmail.com**20100622201403
1303 Ignore-this: f8962463fce50b9466405cb59fe11d43
1304 
1305 Runnin test for diretory.xhtml top banner
1306 
1307]
1308[stringutils.py: tolerate sys.stdout having no 'encoding' attribute.
1309david-sarah@jacaranda.org**20100626040817
1310 Ignore-this: f42cad81cef645ee38ac1df4660cc850
1311]
1312[quickstart.html: python 2.5 -> 2.6 as recommended version
1313david-sarah@jacaranda.org**20100705175858
1314 Ignore-this: bc3a14645ea1d5435002966ae903199f
1315]
1316[SFTP: don't call .stopProducing on the producer registered with OverwriteableFileConsumer (which breaks with warner's new downloader).
1317david-sarah@jacaranda.org**20100628231926
1318 Ignore-this: 131b7a5787bc85a9a356b5740d9d996f
1319]
1320[docs/how_to_make_a_tahoe-lafs_release.txt: trivial correction, install.html should now be quickstart.html.
1321david-sarah@jacaranda.org**20100625223929
1322 Ignore-this: 99a5459cac51bd867cc11ad06927ff30
1323]
1324[setup: in the Makefile, refuse to upload tarballs unless someone has passed the environment variable "BB_BRANCH" with value "trunk"
1325zooko@zooko.com**20100619034928
1326 Ignore-this: 276ddf9b6ad7ec79e27474862e0f7d6
1327]
1328[trivial: tiny update to in-line comment
1329zooko@zooko.com**20100614045715
1330 Ignore-this: 10851b0ed2abfed542c97749e5d280bc
1331 (I'm actually committing this patch as a test of the new eager-annotation-computation of trac-darcs.)
1332]
1333[docs: about.html link to home page early on, and be decentralized storage instead of cloud storage this time around
1334zooko@zooko.com**20100619065318
1335 Ignore-this: dc6db03f696e5b6d2848699e754d8053
1336]
1337[docs: update about.html, especially to have a non-broken link to quickstart.html, and also to comment out the broken links to "for Paranoids" and "for Corporates"
1338zooko@zooko.com**20100619065124
1339 Ignore-this: e292c7f51c337a84ebfeb366fbd24d6c
1340]
1341[TAG allmydata-tahoe-1.7.0
1342zooko@zooko.com**20100619052631
1343 Ignore-this: d21e27afe6d85e2e3ba6a3292ba2be1
1344]
1345[docs: update relnotes.txt for Tahoe-LAFS v1.7.0!
1346zooko@zooko.com**20100619052048
1347 Ignore-this: 1dd2c851f02adf3ab5a33040051fe05a
1348 ... and remove relnotes-short.txt (just use the first section of relnotes.txt for that purpose)
1349]
1350[docs: update known_issues.txt with more detail about web browser "safe-browsing" features and slightly tweaked formatting
1351zooko@zooko.com**20100619051734
1352 Ignore-this: afc10be0da2517ddd0b58e42ef9aa46d
1353]
1354[docs: quickstart.html: link to 1.7.0 zip file and add UTF-8 BOM
1355zooko@zooko.com**20100619050124
1356 Ignore-this: 5104fc90af542b97662b4016da975f34
1357]
1358[docs: more CREDITS for Kevan, plus utf-8 BOM
1359zooko@zooko.com**20100619045809
1360 Ignore-this: ee9c3b7cf7e385c8ca396091cebc9ca6
1361]
1362[docs: update NEWS for release 1.7.0
1363zooko@zooko.com**20100619045750
1364 Ignore-this: 112c352fd52297ebff8138896fc6353d
1365]
1366[docs: apply patch from duck for #937 about "tahoe run" not working on introducers
1367zooko@zooko.com**20100619040754
1368 Ignore-this: d7213313f16e524996e91058e287a954
1369]
1370[webapi.txt: fix statement about leap seconds.
1371david-sarah@jacaranda.org**20100619035603
1372 Ignore-this: 80b685446e915877a421cf3e31cedf30
1373]
1374[running.html: Tahoe->Tahoe-LAFS in what used to be using.html, and #tahoe->#tahoe-lafs (IRC channel).
1375david-sarah@jacaranda.org**20100619033152
1376 Ignore-this: a0dfdfb46eab639aaa064981fb933c5c
1377]
1378[test_backupdb.py: skip test_unicode if we can't represent the test filenames.
1379david-sarah@jacaranda.org**20100619022620
1380 Ignore-this: 6ee564b6c07f9bb0e89a25dc5b37194f
1381]
1382[test_web.py: correct a test that was missed in the change to not write ctime/mtime.
1383david-sarah@jacaranda.org**20100619021718
1384 Ignore-this: 92edc2e1fd43b3e86e6b49bc43bae122
1385]
1386[dirnode.py: stop writing 'ctime' and 'mtime' fields. Includes documentation and test changes.
1387david-sarah@jacaranda.org**20100618230119
1388 Ignore-this: 709119898499769dd64c7977db7c84a6
1389]
1390[test_storage.py: print more information on test failures.
1391david-sarah@jacaranda.org**20100617034623
1392 Ignore-this: cc9a8656802a718ca4f2a6a530d35977
1393]
1394[running.html: describe where 'bin/tahoe' is only once.
1395david-sarah@jacaranda.org**20100617033603
1396 Ignore-this: 6d92d9d8c77f3dfddfa7d061cbf2a791
1397]
1398[Merge using.html into running.html.
1399david-sarah@jacaranda.org**20100617012857
1400 Ignore-this: a0fa8b56621fdb976bef4e5f4f6c824a
1401]
1402[Remove firewall section from running.html and say to read configuration.txt instead.
1403david-sarah@jacaranda.org**20100617004513
1404 Ignore-this: d2e46fffa4855b01093e8240b5fd1eff
1405]
1406[FTP-and-SFTP.txt: add Known Issues section.
1407david-sarah@jacaranda.org**20100619004311
1408 Ignore-this: 8d9b1da941cbc24657bb6ec268f984dd
1409]
1410[FTP-and-SFTP.txt: remove description of public key format that is not actually implemented. Document that SFTP does not support server private keys with passphrases, and that FTP cannot list directories containing mutable files.
1411david-sarah@jacaranda.org**20100619001738
1412 Ignore-this: bf9ef53b85b934822ec76060e1fcb3cb
1413]
1414[configuration.txt and servers-of-happiness.txt: 1 <= happy <= N, not k <= happy <= N. Also minor wording changes.
1415david-sarah@jacaranda.org**20100618050710
1416 Ignore-this: edac0716e753e1f1c4c755c85bec9a19
1417]
1418[test_cli.py: fix test failure in CLI.test_listdir_unicode_good due to filenames returned from listdir_unicode no longer being normalized.
1419david-sarah@jacaranda.org**20100618045110
1420 Ignore-this: 598ffaef02d71e075f7e08fac44f48ff
1421]
1422[tahoe backup: unicode tests.
1423david-sarah@jacaranda.org**20100618035211
1424 Ignore-this: 88ebab9f3218f083fdc635bff6599b60
1425]
1426[CLI: allow Unicode patterns in exclude option to 'tahoe backup'.
1427david-sarah@jacaranda.org**20100617033901
1428 Ignore-this: 9d971129e1c8bae3c1cc3220993d592e
1429]
1430[dirnodes: fix normalization hole where childnames in directories created by nodemaker.create_mutable/immutable_directory would not be normalized. Add a test that we normalize names coming out of a directory.
1431david-sarah@jacaranda.org**20100618000249
1432 Ignore-this: 46a9226eff1003013b067edbdbd4c25b
1433]
1434[dirnode.py: comments about normalization changes.
1435david-sarah@jacaranda.org**20100617041411
1436 Ignore-this: 9040c4854e73a71dbbb55b50ea3b41b2
1437]
1438[stringutils.py: remove unused import.
1439david-sarah@jacaranda.org**20100617034440
1440 Ignore-this: 16ec7d737c34665156c2ac486acd545a
1441]
1442[test_stringutils.py: take account of the output of listdir_unicode no longer being normalized. Also use Unicode escapes, not UTF-8.
1443david-sarah@jacaranda.org**20100617034409
1444 Ignore-this: 47f3f072f0e2efea0abeac130f84c56f
1445]
1446[test_dirnode.py: partial tests for normalization changes.
1447david-sarah@jacaranda.org**20100617034025
1448 Ignore-this: 2e3169dd8b120d42dff35bd267dcb417
1449]
1450[SFTP: get 'ctime' attribute from 'tahoe:linkmotime'.
1451david-sarah@jacaranda.org**20100617033744
1452 Ignore-this: b2fabe12235f2e2a487c0b56c39953e7
1453]
1454[stringutils.py: don't NFC-normalize the output of listdir_unicode.
1455david-sarah@jacaranda.org**20100617015537
1456 Ignore-this: 93c9b6f3d7c6812a0afa8d9e1b0b4faa
1457]
1458[stringutils.py: Add encoding argument to quote_output. Also work around a bug in locale.getpreferredencoding on older Pythons.
1459david-sarah@jacaranda.org**20100616042012
1460 Ignore-this: 48174c37ad95205997e4d3cdd81f1e28
1461]
1462[Provisional patch to NFC-normalize filenames going in and out of Tahoe directories.
1463david-sarah@jacaranda.org**20100616031450
1464 Ignore-this: ed08c9d8df37ef0b7cca42bb562c996b
1465]
1466[how_to_make_a_tahoe-lafs_release.txt: reordering, add fuse-sshfs@lists.sourceforge.list as place to send relnotes.
1467david-sarah@jacaranda.org**20100618041854
1468 Ignore-this: 2e380a6e72917d3a20a65ceccd9a4df
1469]
1470[running.html: fix overeager replacement of 'tahoe' with 'Tahoe-LAFS', and some simplifications.
1471david-sarah@jacaranda.org**20100617000952
1472 Ignore-this: 472b4b531c866574ed79f076b58495b5
1473]
1474[Add a specification for servers of happiness.
1475Kevan Carstensen <kevan@isnotajoke.com>**20100524003508
1476 Ignore-this: 982e2be8a411be5beaf3582bdfde6151
1477]
1478[Note that servers of happiness only applies to immutable files for the moment
1479Kevan Carstensen <kevan@isnotajoke.com>**20100524042836
1480 Ignore-this: cf83cac7a2b3ed347ae278c1a7d9a176
1481]
1482[Add a note about running Tahoe-LAFS on a small grid to running.html
1483zooko@zooko.com**20100616140227
1484 Ignore-this: 14dfbff0d47144f7c2375108c6055dc2
1485 also Change "tahoe" and "Tahoe" to "Tahoe-LAFS" in running.html
1486 author: Kevan Carstensen
1487]
1488[test_system.py: investigate failure in allmydata.test.test_system.SystemTest.test_upload_and_download_random_key due to bytes_sent not being an int
1489david-sarah@jacaranda.org**20100616001648
1490 Ignore-this: 9c78092ab7bfdc909acae3a144ddd1f8
1491]
1492[SFTP: remove a dubious use of 'pragma: no cover'.
1493david-sarah@jacaranda.org**20100613164356
1494 Ignore-this: 8f96a81b1196017ed6cfa1d914e56fa5
1495]
1496[SFTP: test that renaming onto a just-opened file fails.
1497david-sarah@jacaranda.org**20100612033709
1498 Ignore-this: 9b14147ad78b16a5ab0e0e4813491414
1499]
1500[SFTP: further small improvements to test coverage. Also ensure that after a test failure, later tests don't fail spuriously due to the checks for heisenfile leaks.
1501david-sarah@jacaranda.org**20100612030737
1502 Ignore-this: 4ec1dd3d7542be42007987a2f51508e7
1503]
1504[SFTP: further improve test coverage (paths containing '.', bad data for posix-rename extension, and error in test of openShell).
1505david-sarah@jacaranda.org**20100611213142
1506 Ignore-this: 956f9df7f9e8a66b506ca58dd9a5dbe7
1507]
1508[SFTP: improve test coverage for no-write on mutable files, and check for heisenfile table leaks in all relevant tests. Delete test_memory_leak since it is now redundant.
1509david-sarah@jacaranda.org**20100611205752
1510 Ignore-this: 88be1cf323c10dd534a4b8fdac121e31
1511]
1512[CLI.txt: introduce 'create-alias' before 'add-alias', document Unicode argument support, and other minor updates.
1513david-sarah@jacaranda.org**20100610225547
1514 Ignore-this: de7326e98d79291cdc15aed86ae61fe8
1515]
1516[SFTP: add test for extension of file opened with FXF_APPEND.
1517david-sarah@jacaranda.org**20100610182647
1518 Ignore-this: c0216d26453ce3cb4b92eef37d218fb4
1519]
1520[NEWS: add UTF-8 coding declaration.
1521david-sarah@jacaranda.org**20100609234851
1522 Ignore-this: 3e6ef125b278e0a982c88d23180a78ae
1523]
1524[tests: bump up the timeout on this iputil test from 2s to 4s
1525zooko@zooko.com**20100609143017
1526 Ignore-this: 786b7f7bbc85d45cdf727a6293750798
1527]
1528[docs: a few tweaks to NEWS and CREDITS and make quickstart.html point to 1.7.0β!
1529zooko@zooko.com**20100609142927
1530 Ignore-this: f8097d3062f41f06c4420a7c84a56481
1531]
1532[docs: Update NEWS file with new features and bugfixes in 1.7.0
1533francois@ctrlaltdel.ch**20100609091120
1534 Ignore-this: 8c1014e4469ef530e5ff48d7d6ae71c5
1535]
1536[docs: wording fix, thanks to Jeremy Visser, fix #987
1537francois@ctrlaltdel.ch**20100609081103
1538 Ignore-this: 6d2e627e0f1cd58c0e1394e193287a4b
1539]
1540[SFTP: fix most significant memory leak described in #1045 (due to a file being added to all_heisenfiles under more than one direntry when renamed).
1541david-sarah@jacaranda.org**20100609080003
1542 Ignore-this: 490b4c14207f6725d0dd32c395fbcefa
1543]
1544[test_stringutils.py: Fix test failure on CentOS builder, possibly Python 2.4.3-related.
1545david-sarah@jacaranda.org**20100609065056
1546 Ignore-this: 503b561b213baf1b92ae641f2fdf080a
1547]
1548[Fix for Unicode-related test failures on Zooko's OS X 10.6 machine.
1549david-sarah@jacaranda.org**20100609055448
1550 Ignore-this: 395ad16429e56623edfa74457a121190
1551]
1552[docs: update relnote.txt for Tahoe-LAFS v1.7.0β
1553zooko@zooko.com**20100609054602
1554 Ignore-this: 52e1bf86a91d45315960fb8806b7a479
1555]
1556[stringutils.py, sftpd.py: Portability fixes for Python <= 2.5.
1557david-sarah@jacaranda.org**20100609013302
1558 Ignore-this: 9d9ce476ee1b96796e0f48cc5338f852
1559]
1560[setup: move the mock library from install_requires to tests_require (re: #1016)
1561zooko@zooko.com**20100609050542
1562 Ignore-this: c51a4ff3e19ed630755be752d2233db4
1563]
1564[Back out Windows-specific Unicode argument support for v1.7.
1565david-sarah@jacaranda.org**20100609000803
1566 Ignore-this: b230ffe6fdaf9a0d85dfe745b37b42fb
1567]
1568[_auto_deps.py: allow Python 2.4.3 on Redhat-based distributions.
1569david-sarah@jacaranda.org**20100609003646
1570 Ignore-this: ad3cafdff200caf963024873d0ebff3c
1571]
1572[setup: show-tool-versions.py: print out the output from the unix command "locale" and re-arrange encoding data a little bit
1573zooko@zooko.com**20100609040714
1574 Ignore-this: 69382719b462d13ff940fcd980776004
1575]
1576[setup: add zope.interface to the packages described by show-tool-versions.py
1577zooko@zooko.com**20100609034915
1578 Ignore-this: b5262b2af5c953a5f68a60bd48dcaa75
1579]
1580[CREDITS: update François's Description
1581zooko@zooko.com**20100608155513
1582 Ignore-this: a266b438d25ca2cb28eafff75aa4b2a
1583]
1584[CREDITS: jsgf
1585zooko@zooko.com**20100608143052
1586 Ignore-this: 10abe06d40b88e22a9107d30f1b84810
1587]
1588[setup: rename the setuptools_trial .egg that comes bundled in the base dir to not have "-py2.6" in its name, since it works with other versions of python as well
1589zooko@zooko.com**20100608041607
1590 Ignore-this: 64fe386d2e5fba0ab441116e74dad5a3
1591]
1592[setup: rename the darcsver .egg that comes bundled in the base dir to not have "-py2.6" in its name, since it works with other versions of python as well
1593zooko@zooko.com**20100608041534
1594 Ignore-this: 53f925f160256409cf01b76d2583f83f
1595]
1596[SFTP: suppress NoSuchChildError if heisenfile attributes have been updated in setAttrs, in the case where the parent is available.
1597david-sarah@jacaranda.org**20100608063753
1598 Ignore-this: 8c72a5a9c15934f8fe4594ba3ee50ddd
1599]
1600[SFTP: ignore permissions when opening a file (needed for sshfs interoperability).
1601david-sarah@jacaranda.org**20100608055700
1602 Ignore-this: f87f6a430f629326a324ddd94426c797
1603]
1604[test_web.py: fix pyflakes warnings introduced by byterange patch.
1605david-sarah@jacaranda.org**20100608042012
1606 Ignore-this: a7612724893b51d1154dec4372e0508
1607]
1608[Improve HTTP/1.1 byterange handling
1609Jeremy Fitzhardinge <jeremy@goop.org>**20100310025913
1610 Ignore-this: 6d69e694973d618f0dc65983735cd9be
1611 
1612 Fix parsing of a Range: header to support:
1613  - multiple ranges (parsed, but not returned)
1614  - suffix byte ranges ("-2139")
1615  - correct handling of incorrectly formatted range headers
1616    (correct behaviour is to ignore the header and return the full
1617     file)
1618  - return appropriate error for ranges outside the file
1619 
1620 Multiple ranges are parsed, but only the first range is returned.
1621 Returning multiple ranges requires using the multipart/byterange
1622 content type.
1623 
1624]
1625[tests: bump up the timeout on these tests; MM's buildslave is sometimes extremely slow on tests, but it will complete them if given enough time. MM is working on making that buildslave more predictable in how long it takes to run tests.
1626zooko@zooko.com**20100608033754
1627 Ignore-this: 98dc27692c5ace1e4b0650b6680629d7
1628]
1629[test_cli.py: remove invalid 'test_listdir_unicode_bad' test.
1630david-sarah@jacaranda.org**20100607183730
1631 Ignore-this: fadfe87980dc1862f349bfcc21b2145f
1632]
1633[check_memory.py: adapt to servers-of-happiness changes.
1634david-sarah@jacaranda.org**20100608013528
1635 Ignore-this: c6b28411c543d1aea2f148a955f7998
1636]
1637[show-tool-versions.py: platform.linux_distribution() is not always available
1638david-sarah@jacaranda.org**20100608004523
1639 Ignore-this: 793fb4050086723af05d06bed8b1b92a
1640]
1641[show-tool-versions.py: show platform.linux_distribution()
1642david-sarah@jacaranda.org**20100608003829
1643 Ignore-this: 81cb5e5fc6324044f0fc6d82903c8223
1644]
1645[Remove the 'tahoe debug consolidate' subcommand.
1646david-sarah@jacaranda.org**20100607183757
1647 Ignore-this: 4b14daa3ae557cea07d6e119d25dafe9
1648]
1649[common_http.py, tahoe_cp.py: Fix an error in calling the superclass constructor in HTTPError and MissingSourceError (introduced by the Unicode fixes).
1650david-sarah@jacaranda.org**20100607174714
1651 Ignore-this: 1a118d593d81c918a4717c887f033aec
1652]
1653[tests: drastically increase timeout of this very time-consuming test in honor of François's ARM box
1654zooko@zooko.com**20100607115929
1655 Ignore-this: bf1bb52ffb6b5ccae71d4dde14621bc8
1656]
1657[setup: update authorship, datestamp, licensing, and add special exceptions to allow combination with Eclipse- and QPL- licensed code
1658zooko@zooko.com**20100607062329
1659 Ignore-this: 5a1d7b12dfafd61283ea65a245416381
1660]
1661[FTP-and-SFTP.txt: minor technical correction to doc for 'no-write' flag.
1662david-sarah@jacaranda.org**20100607061600
1663 Ignore-this: 66aee0c1b6c00538602d08631225e114
1664]
1665[test_stringutils.py: trivial error in exception message for skipped test.
1666david-sarah@jacaranda.org**20100607061455
1667 Ignore-this: f261a5d4e2b8fe3bcc37e02539ba1ae2
1668]
1669[More Unicode test fixes.
1670david-sarah@jacaranda.org**20100607053358
1671 Ignore-this: 6a271fb77c31f28cb7bdba63b26a2dd2
1672]
1673[Unicode fixes for platforms with non-native-Unicode filesystems.
1674david-sarah@jacaranda.org**20100607043238
1675 Ignore-this: 2134dc1793c4f8e50350bd749c4c98c2
1676]
1677[Unicode fixes.
1678david-sarah@jacaranda.org**20100607010215
1679 Ignore-this: d58727b5cd2ce00e6b6dae3166030138
1680]
1681[setup: organize misc/ scripts and tools and remove obsolete ones
1682zooko@zooko.com**20100607051618
1683 Ignore-this: 161db1158c6b7be8365b0b3dee2e0b28
1684 This is for ticket #1068.
1685]
1686[quickstart.html: link to snapshots page, sorted with most recent first.
1687david-sarah@jacaranda.org**20100606221127
1688 Ignore-this: 93ea7e6ee47acc66f6daac9cabffed2d
1689]
1690[quickstart.html: We haven't released 1.7beta yet.
1691david-sarah@jacaranda.org**20100606220301
1692 Ignore-this: 4e18898cfdb08cc3ddd1ff94d43fdda7
1693]
1694[setup: loosen the Desert Island test to allow it to check the network for new packages as long as it doesn't actually download any
1695zooko@zooko.com**20100606175717
1696 Ignore-this: e438a8eb3c1b0e68080711ec6ff93ffa
1697 (You can look but don't touch.)
1698]
1699[Raise Python version requirement to 2.4.4 for non-UCS-2 builds, to avoid a critical Python security bug.
1700david-sarah@jacaranda.org**20100605031713
1701 Ignore-this: 2df2b6d620c5d8191c79eefe655059e2
1702]
1703[setup: have the buildbots print out locale.getpreferredencoding(), locale.getdefaultlocale(), locale.getlocale(), and os.path.supports_unicode_filenames
1704zooko@zooko.com**20100605162932
1705 Ignore-this: 85e31e0e0e1364e9215420e272d58116
1706 Even though that latter one is completely useless, I'm curious.
1707]
1708[unicode tests: fix missing import
1709zooko@zooko.com**20100604142630
1710 Ignore-this: db437fe8009971882aaea9de05e2bc3
1711]
1712[unicode: make test_cli test a non-ascii argument, and make the fallback term encoding be locale.getpreferredencoding()
1713zooko@zooko.com**20100604141251
1714 Ignore-this: b2bfc07942f69141811e59891842bd8c
1715]
1716[unicode: always decode json manifest as utf-8 then encode for stdout
1717zooko@zooko.com**20100604084840
1718 Ignore-this: ac481692315fae870a0f3562bd7db48e
1719 pyflakes pointed out that the exception handler fallback called an un-imported function, showing that the fallback wasn't being exercised.
1720 I'm not 100% sure that this patch is right and would appreciate François or someone reviewing it.
1721]
1722[fix flakes
1723zooko@zooko.com**20100604075845
1724 Ignore-this: 3e6a84b78771b0ad519e771a13605f0
1725]
1726[fix syntax of assertion handling that isn't portable to older versions of Python
1727zooko@zooko.com**20100604075805
1728 Ignore-this: 3a12b293aad25883fb17230266eb04ec
1729]
1730[test_stringutils.py: Skip test test_listdir_unicode_good if filesystem supports only ASCII filenames
1731Francois Deppierraz <francois@ctrlaltdel.ch>**20100521160839
1732 Ignore-this: f2ccdbd04c8d9f42f1efb0eb80018257
1733]
1734[test_stringutils.py: Skip test_listdir_unicode on mocked platform which cannot store non-ASCII filenames
1735Francois Deppierraz <francois@ctrlaltdel.ch>**20100521160559
1736 Ignore-this: b93fde736a8904712b506e799250a600
1737]
1738[test_stringutils.py: Add a test class for OpenBSD 4.1 with LANG=C
1739Francois Deppierraz <francois@ctrlaltdel.ch>**20100521140053
1740 Ignore-this: 63f568aec259cef0e807752fc8150b73
1741]
1742[test_stringutils.py: Mock the open() call in test_open_unicode
1743Francois Deppierraz <francois@ctrlaltdel.ch>**20100521135817
1744 Ignore-this: d8be4e56a6eefe7d60f97f01ea20ac67
1745 
1746 This test ensure that open(a_unicode_string) is used on Unicode platforms
1747 (Windows or MacOS X) and that open(a_correctly_encoded_bytestring) on other
1748 platforms such as Unix.
1749 
1750]
1751[test_stringutils.py: Fix a trivial Python 2.4 syntax incompatibility
1752Francois Deppierraz <francois@ctrlaltdel.ch>**20100521093345
1753 Ignore-this: 9297e3d14a0dd37d0c1a4c6954fd59d3
1754]
1755[test_cli.py: Fix tests when sys.stdout.encoding=None and refactor this code into functions
1756Francois Deppierraz <francois@ctrlaltdel.ch>**20100520084447
1757 Ignore-this: cf2286e225aaa4d7b1927c78c901477f
1758]
1759[Fix handling of correctly encoded unicode filenames (#534)
1760Francois Deppierraz <francois@ctrlaltdel.ch>**20100520004356
1761 Ignore-this: 8a3a7df214a855f5a12dc0eeab6f2e39
1762 
1763 Tahoe CLI commands working on local files, for instance 'tahoe cp' or 'tahoe
1764 backup', have been improved to correctly handle filenames containing non-ASCII
1765 characters.
1766   
1767 In the case where Tahoe encounters a filename which cannot be decoded using the
1768 system encoding, an error will be returned and the operation will fail.  Under
1769 Linux, this typically happens when the filesystem contains filenames encoded
1770 with another encoding, for instance latin1, than the system locale, for
1771 instance UTF-8.  In such case, you'll need to fix your system with tools such
1772 as 'convmv' before using Tahoe CLI.
1773   
1774 All CLI commands have been improved to support non-ASCII parameters such as
1775 filenames and aliases on all supported Operating Systems except Windows as of
1776 now.
1777]
1778[stringutils.py: Unicode helper functions + associated tests
1779Francois Deppierraz <francois@ctrlaltdel.ch>**20100520004105
1780 Ignore-this: 7a73fc31de2fd39d437d6abd278bfa9a
1781 
1782 This file contains a bunch of helper functions which converts
1783 unicode string from and to argv, filenames and stdout.
1784]
1785[Add dependency on Michael Foord's mock library
1786Francois Deppierraz <francois@ctrlaltdel.ch>**20100519233325
1787 Ignore-this: 9bb01bf1e4780f6b98ed394c3b772a80
1788]
1789[Resolve merge conflict for sftpd.py
1790david-sarah@jacaranda.org**20100603182537
1791 Ignore-this: ba8b543e51312ac949798eb8f5bd9d9c
1792]
1793[SFTP: possible fix for metadata times being shown as the epoch.
1794david-sarah@jacaranda.org**20100602234514
1795 Ignore-this: bdd7dfccf34eff818ff88aa4f3d28790
1796]
1797[SFTP: further improvements to test coverage.
1798david-sarah@jacaranda.org**20100602234422
1799 Ignore-this: 87eeee567e8d7562659442ea491e187c
1800]
1801[SFTP: improve test coverage. Also make creating a directory fail when permissions are read-only (rather than ignoring the permissions).
1802david-sarah@jacaranda.org**20100602041934
1803 Ignore-this: a5e9d9081677bc7f3ddb18ca7a1f531f
1804]
1805[dirnode.py: fix a bug in the no-write change for Adder, and improve test coverage. Add a 'metadata' argument to create_subdirectory, with documentation. Also update some comments in test_dirnode.py made stale by the ctime/mtime change.
1806david-sarah@jacaranda.org**20100602032641
1807 Ignore-this: 48817b54cd63f5422cb88214c053b03b
1808]
1809[SFTP: fix a bug that caused the temporary files underlying EncryptedTemporaryFiles not to be closed.
1810david-sarah@jacaranda.org**20100601055310
1811 Ignore-this: 44fee4cfe222b2b1690f4c5e75083a52
1812]
1813[SFTP: changes for #1063 ('no-write' field) including comment:1 (clearing owner write permission diminishes to a read cap). Includes documentation changes, but not tests for the new behaviour.
1814david-sarah@jacaranda.org**20100601051139
1815 Ignore-this: eff7c08bd47fd52bfe2b844dabf02558
1816]
1817[SFTP: the same bug as in _sync_heisenfiles also occurred in two other places.
1818david-sarah@jacaranda.org**20100530060127
1819 Ignore-this: 8d137658fc6e4596fa42697476c39aa3
1820]
1821[SFTP: another try at fixing the _sync_heisenfiles bug.
1822david-sarah@jacaranda.org**20100530055254
1823 Ignore-this: c15f76f32a60083a6b7de6ca0e917934
1824]
1825[SFTP: fix silly bug in _sync_heisenfiles ('f is not ignore' vs 'not (f is ignore)').
1826david-sarah@jacaranda.org**20100530053807
1827 Ignore-this: 71c4bc62613bf8fef835886d8eb61c27
1828]
1829[SFTP: log when a sync completes.
1830david-sarah@jacaranda.org**20100530051840
1831 Ignore-this: d99765663ceb673c8a693dfcf88c25ea
1832]
1833[SFTP: fix bug in previous logging patch.
1834david-sarah@jacaranda.org**20100530050000
1835 Ignore-this: 613e4c115f03fe2d04c621b510340817
1836]
1837[SFTP: more logging to track down OpenOffice hang.
1838david-sarah@jacaranda.org**20100530040809
1839 Ignore-this: 6c11f2d1eac9f62e2d0f04f006476a03
1840]
1841[SFTP: avoid blocking close on a heisenfile that has been abandoned or never changed. Also, improve the logging to help track down a case where OpenOffice hangs on opening a file with FXF_READ|FXF_WRITE.
1842david-sarah@jacaranda.org**20100530025544
1843 Ignore-this: 9919dddd446fff64de4031ad51490d1c
1844]
1845[Move suppression of DeprecationWarning about BaseException.message from sftpd.py to main __init__.py. Also, remove the global suppression of the 'integer argument expected, got float' warning, which turned out to be a bug.
1846david-sarah@jacaranda.org**20100529050537
1847 Ignore-this: 87648afa0dec0d2e73614007de102a16
1848]
1849[SFTP: cater to clients that assume a file is created as soon as they have made an open request; also, fix some race conditions associated with closing a file at about the same time as renaming or removing it.
1850david-sarah@jacaranda.org**20100529045253
1851 Ignore-this: 2404076b2154ff2659e2b10e0b9e813c
1852]
1853[SFTP: 'sync' any open files at a direntry before opening any new file at that direntry. This works around the sshfs misbehaviour of returning success to clients immediately on close.
1854david-sarah@jacaranda.org**20100525230257
1855 Ignore-this: 63245d6d864f8f591c86170864d7c57f
1856]
1857[SFTP: handle removing a file while it is open. Also some simplifications of the logout handling.
1858david-sarah@jacaranda.org**20100525184210
1859 Ignore-this: 660ee80be6ecab783c60452a9da896de
1860]
1861[SFTP: a posix-rename response should actually return an FXP_STATUS reply, not an FXP_EXTENDED_REPLY as Twisted Conch assumes. Work around this by raising an SFTPError with code FX_OK.
1862david-sarah@jacaranda.org**20100525033323
1863 Ignore-this: fe2914d3ef7f5194bbeaf3f2dda2ad7d
1864]
1865[SFTP: fix problem with posix-rename code returning a Deferred for the renamed filenode, not for the result of the request (an empty string).
1866david-sarah@jacaranda.org**20100525020209
1867 Ignore-this: 69f7491df2a8f7ea92d999a6d9f0581d
1868]
1869[SFTP: fix time handling to make sure floats are not passed into twisted.conch, and to print times in the future less ambiguously in directory listings.
1870david-sarah@jacaranda.org**20100524230412
1871 Ignore-this: eb1a3fb72492fa2fb19667b6e4300440
1872]
1873[SFTP: name of the POSIX rename extension should be 'posix-rename@openssh.com', not 'extposix-rename@openssh.com'.
1874david-sarah@jacaranda.org**20100524021156
1875 Ignore-this: f90eb1ff9560176635386ee797a3fdc7
1876]
1877[SFTP: avoid race condition where .write could be called on an OverwriteableFileConsumer after it had been closed.
1878david-sarah@jacaranda.org**20100523233830
1879 Ignore-this: 55d381064a15bd64381163341df4d09f
1880]
1881[SFTP: log tracebacks for RAISEd exceptions.
1882david-sarah@jacaranda.org**20100523221535
1883 Ignore-this: c76a7852df099b358642f0631237cc89
1884]
1885[SFTP: more logging to investigate behaviour of getAttrs(path).
1886david-sarah@jacaranda.org**20100523204236
1887 Ignore-this: e58fd35dc9015316e16a9f49f19bb469
1888]
1889[SFTP: fix pyflakes warnings; drop 'noisy' versions of eventually_callback and eventually_errback; robustify conversion of exception messages to UTF-8.
1890david-sarah@jacaranda.org**20100523140905
1891 Ignore-this: 420196fc58646b05bbc9c3732b6eb314
1892]
1893[SFTP: fixes and test cases for renaming of open files.
1894david-sarah@jacaranda.org**20100523032549
1895 Ignore-this: 32e0726be0fc89335f3035157e202c68
1896]
1897[SFTP: Increase test_sftp timeout to cater for francois' ARM buildslave.
1898david-sarah@jacaranda.org**20100522191639
1899 Ignore-this: a5acf9660d304677048ab4dd72908ad8
1900]
1901[SFTP: Fix error in support for getAttrs on an open file, to index open files by directory entry rather than path. Extend that support to renaming open files. Also, implement the extposix-rename@openssh.org extension, and some other minor refactoring.
1902david-sarah@jacaranda.org**20100522035836
1903 Ignore-this: 8ef93a828e927cce2c23b805250b81a4
1904]
1905[SFTP tests: fix test_openDirectory_and_attrs that was failing in timezones west of UTC.
1906david-sarah@jacaranda.org**20100520181027
1907 Ignore-this: 9beaf602beef437c11c7e97f54ce2599
1908]
1909[SFTP: allow getAttrs to succeed on a file that has been opened for creation but not yet uploaded or linked (part of #1050).
1910david-sarah@jacaranda.org**20100520035613
1911 Ignore-this: 2f59107d60d5476edac19361ccf6cf94
1912]
1913[SFTP: improve logging so that results of requests are (usually) logged.
1914david-sarah@jacaranda.org**20100520003652
1915 Ignore-this: 3f59eeee374a3eba71db9be31d5a95
1916]
1917[SFTP: add tests for more combinations of open flags.
1918david-sarah@jacaranda.org**20100519053933
1919 Ignore-this: b97ee351b1e8ecfecabac70698060665
1920]
1921[SFTP: allow FXF_WRITE | FXF_TRUNC (#1050).
1922david-sarah@jacaranda.org**20100519043240
1923 Ignore-this: bd70009f11d07ac6e9fd0d1e3fa87a9b
1924]
1925[SFTP: remove another case where we were logging data.
1926david-sarah@jacaranda.org**20100519012713
1927 Ignore-this: 83115daf3a90278fed0e3fc267607584
1928]
1929[SFTP: avoid logging all data passed to callbacks.
1930david-sarah@jacaranda.org**20100519000651
1931 Ignore-this: ade6d69a473ada50acef6389fc7fdf69
1932]
1933[SFTP: fixes related to reporting of permissions (needed for sshfs).
1934david-sarah@jacaranda.org**20100518054521
1935 Ignore-this: c51f8a5d0dc76b80d33ffef9b0541325
1936]
1937[SFTP: change error code returned for ExistingChildError to FX_FAILURE (fixes gvfs with some picky programs such as gedit).
1938david-sarah@jacaranda.org**20100518004205
1939 Ignore-this: c194c2c9aaf3edba7af84b7413cec375
1940]
1941[SFTP: fixed bugs that caused hangs during write (#1037).
1942david-sarah@jacaranda.org**20100517044228
1943 Ignore-this: b8b95e82c4057367388a1e6baada993b
1944]
1945[SFTP: work around a probable bug in twisted.conch.ssh.session:loseConnection(). Also some minor error handling cleanups.
1946david-sarah@jacaranda.org**20100517012606
1947 Ignore-this: 5d3da7c4219cb0c14547e7fd70c74204
1948]
1949[SFTP: Support statvfs extensions, avoid logging actual data, and decline shell sessions politely.
1950david-sarah@jacaranda.org**20100516154347
1951 Ignore-this: 9d05d23ba77693c03a61accd348ccbe5
1952]
1953[SFTP: fix error in SFTPUserHandler arguments introduced by execCommand patch.
1954david-sarah@jacaranda.org**20100516014045
1955 Ignore-this: f5ee494dc6ad6aa536cc8144bd2e3d19
1956]
1957[SFTP: implement execCommand to interoperate with clients that issue a 'df -P -k /' command. Also eliminate use of Zope adaptation.
1958david-sarah@jacaranda.org**20100516012754
1959 Ignore-this: 2d0ed28b759f67f83875b1eaf5778992
1960]
1961[sftpd.py: 'log.OPERATIONAL' should be just 'OPERATIONAL'.
1962david-sarah@jacaranda.org**20100515155533
1963 Ignore-this: f2347cb3301bbccc086356f6edc685
1964]
1965[Attempt to fix #1040 by making SFTPUser implement ISession.
1966david-sarah@jacaranda.org**20100515005719
1967 Ignore-this: b3baaf088ba567e861e61e347195dfc4
1968]
1969[Eliminate Windows newlines from sftpd.py.
1970david-sarah@jacaranda.org**20100515005656
1971 Ignore-this: cd54fd25beb957887514ae76e08c277
1972]
1973[Update SFTP implementation and tests: fix #1038 and switch to foolscap logging; also some code reorganization.
1974david-sarah@jacaranda.org**20100514043113
1975 Ignore-this: 262f76d953dcd4317210789f2b2bf5da
1976]
1977[Tests for new SFTP implementation
1978david-sarah@jacaranda.org**20100512060552
1979 Ignore-this: 20308d4a59b3ebc868aad55ae0a7a981
1980]
1981[New SFTP implementation: mutable files, read/write support, streaming download, Unicode filenames, and more
1982david-sarah@jacaranda.org**20100512055407
1983 Ignore-this: 906f51c48d974ba9cf360c27845c55eb
1984]
1985[setup: adjust make clean target to ignore our bundled build tools
1986zooko@zooko.com**20100604051250
1987 Ignore-this: d24d2a3b849000790cfbfab69237454e
1988]
1989[setup: bundle a copy of setuptools_trial as an unzipped egg in the base dir of the Tahoe-LAFS source tree
1990zooko@zooko.com**20100604044648
1991 Ignore-this: a4736e9812b4dab2d5a2bc4bfc5c3b28
1992 This is to work-around this Distribute issue:
1993 http://bitbucket.org/tarek/distribute/issue/55/revision-control-plugin-automatically-installed-as-a-build-dependency-is-not-present-when-another-build-dependency-is-being
1994]
1995[setup: bundle a copy of darcsver in unzipped egg form in the root of the Tahoe-LAFS source tree
1996zooko@zooko.com**20100604044146
1997 Ignore-this: a51a52e82dd3a39225657ffa27decae2
1998 This is to work-around this Distribute issue:
1999 http://bitbucket.org/tarek/distribute/issue/55/revision-control-plugin-automatically-installed-as-a-build-dependency-is-not-present-when-another-build-dependency-is-being
2000]
2001[quickstart.html: warn against installing Python at a path containing spaces.
2002david-sarah@jacaranda.org**20100604032413
2003 Ignore-this: c7118332573abd7762d9a897e650bc6a
2004]
2005[setup: undo the previous patch to quote the executable in scripts
2006zooko@zooko.com**20100604025204
2007 Ignore-this: beda3b951c49d1111478618b8cabe005
2008 The problem isn't in the script, it is in the cli.exe script that is built by setuptools. This might be related to
2009 http://bugs.python.org/issue6792
2010 and
2011 http://bugs.python.org/setuptools/issue2
2012 Or it might be a separate issue involving the launcher.c code e.g. http://tahoe-lafs.org/trac/zetuptoolz/browser/launcher.c?rev=576#L210 and its handling of the interpreter name.
2013]
2014[setup: put quotes around the path to executable in case it has spaces in it, when building a tahoe.exe for win32
2015zooko@zooko.com**20100604020836
2016 Ignore-this: 478684843169c94a9c14726fedeeed7d
2017]
2018[Add must_exist, must_be_directory, and must_be_file arguments to DirectoryNode.delete. This will be used to fixes a minor condition in the SFTP frontend.
2019david-sarah@jacaranda.org**20100527194529
2020 Ignore-this: 6d8114cef4450c52c57639f82852716f
2021]
2022[Fix test failures in test_web caused by changes to web page titles in #1062. Also, change a 'target' field to '_blank' instead of 'blank' in welcome.xhtml.
2023david-sarah@jacaranda.org**20100603232105
2024 Ignore-this: 6e2cc63f42b07e2a3b2d1a857abc50a6
2025]
2026[misc/show-tool-versions.py: Display additional Python interpreter encoding informations (stdout, stdin and filesystem)
2027Francois Deppierraz <francois@ctrlaltdel.ch>**20100521094313
2028 Ignore-this: 3ae9b0b07fd1d53fb632ef169f7c5d26
2029]
2030[dirnode.py: Fix bug that caused 'tahoe' fields, 'ctime' and 'mtime' not to be updated when new metadata is present.
2031david-sarah@jacaranda.org**20100602014644
2032 Ignore-this: 5bac95aa897b68f2785d481e49b6a66
2033]
2034[dirnode.py: Fix #1034 (MetadataSetter does not enforce restriction on setting 'tahoe' subkeys), and expose the metadata updater for use by SFTP. Also, support diminishing a child cap to read-only if 'no-write' is set in the metadata.
2035david-sarah@jacaranda.org**20100601045428
2036 Ignore-this: 14f26e17e58db97fad0dcfd350b38e95
2037]
2038[Change doc comments in interfaces.py to take into account unknown nodes.
2039david-sarah@jacaranda.org**20100528171922
2040 Ignore-this: d2fde6890b3bca9c7275775f64fbff56
2041]
2042[Trivial whitespace changes.
2043david-sarah@jacaranda.org**20100527194114
2044 Ignore-this: 98d611bc54ee20b01a5f6b334ff61b2d
2045]
2046[Suppress 'integer argument expected, got float' DeprecationWarning everywhere
2047david-sarah@jacaranda.org**20100523221157
2048 Ignore-this: 80efd7e27798f5d2ad66c7a53e7048e5
2049]
2050[Change shouldFail to avoid Unicode errors when converting Failure to str
2051david-sarah@jacaranda.org**20100512060754
2052 Ignore-this: 86ed419d332d9c33090aae2cde1dc5df
2053]
2054[SFTP: relax pyasn1 version dependency to >= 0.0.8a.
2055david-sarah@jacaranda.org**20100520181437
2056 Ignore-this: 2c7b3dee7b7e14ba121d3118193a386a
2057]
2058[SFTP: add pyasn1 as dependency, needed if we are using Twisted >= 9.0.0.
2059david-sarah@jacaranda.org**20100516193710
2060 Ignore-this: 76fd92e8a950bb1983a90a09e89c54d3
2061]
2062[allmydata.org -> tahoe-lafs.org in __init__.py
2063david-sarah@jacaranda.org**20100603063530
2064 Ignore-this: f7d82331d5b4a3c4c0938023409335af
2065]
2066[small change to CREDITS
2067david-sarah@jacaranda.org**20100603062421
2068 Ignore-this: 2909cdbedc19da5573dec810fc23243
2069]
2070[Resolve conflict in patch to change imports to absolute.
2071david-sarah@jacaranda.org**20100603054608
2072 Ignore-this: 15aa1caa88e688ffa6dc53bed7dcca7d
2073]
2074[Minor documentation tweaks.
2075david-sarah@jacaranda.org**20100603054458
2076 Ignore-this: e30ae407b0039dfa5b341d8f88e7f959
2077]
2078[title_rename_xhtml.dpatch.txt
2079freestorm77@gmail.com**20100529172542
2080 Ignore-this: d2846afcc9ea72ac443a62ecc23d121b
2081 
2082 - Renamed xhtml Title from "Allmydata - Tahoe" to "Tahoe-LAFS"
2083 - Renamed Tahoe to Tahoe-LAFS in page content
2084 - Changed Tahoe-LAFS home page link to http://tahoe-lafs.org (added target="blank")
2085 - Deleted commented css script in info.xhtml
2086 
2087 
2088]
2089[tests: refactor test_web.py to have less duplication of literal caps-from-the-future
2090zooko@zooko.com**20100519055146
2091 Ignore-this: 49e5412e6cc4566ca67f069ffd850af6
2092 This is a prelude to a patch which will add tests of caps from the future which have non-ascii chars in them.
2093]
2094[doc_reformat_stats.txt
2095freestorm77@gmail.com**20100424114615
2096 Ignore-this: af315db5f7e3a17219ff8fb39bcfcd60
2097 
2098 
2099    - Added heading format begining and ending by "=="
2100    - Added Index
2101    - Added Title
2102           
2103    Note: No change are made in paragraphs content
2104 
2105 
2106 **END OF DESCRIPTION***
2107 
2108 Place the long patch description above the ***END OF DESCRIPTION*** marker.
2109 The first line of this file will be the patch name.
2110 
2111 
2112 This patch contains the following changes:
2113 
2114 M ./docs/stats.txt -2 +2
2115]
2116[doc_reformat_performance.txt
2117freestorm77@gmail.com**20100424114444
2118 Ignore-this: 55295ff5cd8a5b67034eb661a5b0699d
2119 
2120    - Added heading format begining and ending by "=="
2121    - Added Index
2122    - Added Title
2123         
2124    Note: No change are made in paragraphs content
2125 
2126 
2127]
2128[doc_refomat_logging.txt
2129freestorm77@gmail.com**20100424114316
2130 Ignore-this: 593f0f9914516bf1924dfa6eee74e35f
2131 
2132    - Added heading format begining and ending by "=="
2133    - Added Index
2134    - Added Title
2135         
2136    Note: No change are made in paragraphs content
2137 
2138]
2139[doc_reformat_known_issues.txt
2140freestorm77@gmail.com**20100424114118
2141 Ignore-this: 9577c3965d77b7ac18698988cfa06049
2142 
2143     - Added heading format begining and ending by "=="
2144     - Added Index
2145     - Added Title
2146           
2147     Note: No change are made in paragraphs content
2148   
2149 
2150]
2151[doc_reformat_helper.txt
2152freestorm77@gmail.com**20100424120649
2153 Ignore-this: de2080d6152ae813b20514b9908e37fb
2154 
2155 
2156    - Added heading format begining and ending by "=="
2157    - Added Index
2158    - Added Title
2159             
2160    Note: No change are made in paragraphs content
2161 
2162]
2163[doc_reformat_garbage-collection.txt
2164freestorm77@gmail.com**20100424120830
2165 Ignore-this: aad3e4c99670871b66467062483c977d
2166 
2167 
2168    - Added heading format begining and ending by "=="
2169    - Added Index
2170    - Added Title
2171             
2172    Note: No change are made in paragraphs content
2173 
2174]
2175[doc_reformat_FTP-and-SFTP.txt
2176freestorm77@gmail.com**20100424121334
2177 Ignore-this: 3736b3d8f9a542a3521fbb566d44c7cf
2178 
2179 
2180    - Added heading format begining and ending by "=="
2181    - Added Index
2182    - Added Title
2183           
2184    Note: No change are made in paragraphs content
2185 
2186]
2187[doc_reformat_debian.txt
2188freestorm77@gmail.com**20100424120537
2189 Ignore-this: 45fe4355bb869e55e683405070f47eff
2190 
2191 
2192    - Added heading format begining and ending by "=="
2193    - Added Index
2194    - Added Title
2195             
2196    Note: No change are made in paragraphs content
2197 
2198]
2199[doc_reformat_configuration.txt
2200freestorm77@gmail.com**20100424104903
2201 Ignore-this: 4fbabc51b8122fec69ce5ad1672e79f2
2202 
2203 
2204 - Added heading format begining and ending by "=="
2205 - Added Index
2206 - Added Title
2207 
2208 Note: No change are made in paragraphs content
2209 
2210]
2211[doc_reformat_CLI.txt
2212freestorm77@gmail.com**20100424121512
2213 Ignore-this: 2d3a59326810adcb20ea232cea405645
2214 
2215      - Added heading format begining and ending by "=="
2216      - Added Index
2217      - Added Title
2218           
2219      Note: No change are made in paragraphs content
2220 
2221]
2222[doc_reformat_backupdb.txt
2223freestorm77@gmail.com**20100424120416
2224 Ignore-this: fed696530e9d2215b6f5058acbedc3ab
2225 
2226 
2227    - Added heading format begining and ending by "=="
2228    - Added Index
2229    - Added Title
2230             
2231    Note: No change are made in paragraphs content
2232 
2233]
2234[doc_reformat_architecture.txt
2235freestorm77@gmail.com**20100424120133
2236 Ignore-this: 6e2cab4635080369f2b8cadf7b2f58e
2237 
2238 
2239     - Added heading format begining and ending by "=="
2240     - Added Index
2241     - Added Title
2242             
2243     Note: No change are made in paragraphs content
2244 
2245 
2246]
2247[Correct harmless indentation errors found by pylint
2248david-sarah@jacaranda.org**20100226052151
2249 Ignore-this: 41335bce830700b18b80b6e00b45aef5
2250]
2251[Change relative imports to absolute
2252david-sarah@jacaranda.org**20100226071433
2253 Ignore-this: 32e6ce1a86e2ffaaba1a37d9a1a5de0e
2254]
2255[Document reason for the trialcoverage version requirement being 0.3.3.
2256david-sarah@jacaranda.org**20100525004444
2257 Ignore-this: 2f9f1df6882838b000c063068f258aec
2258]
2259[Downgrade version requirement for trialcoverage to 0.3.3 (from 0.3.10), to avoid needing to compile coveragepy on Windows.
2260david-sarah@jacaranda.org**20100524233707
2261 Ignore-this: 9c397a374c8b8017e2244b8a686432a8
2262]
2263[Suppress deprecation warning for twisted.web.error.NoResource when using Twisted >= 9.0.0.
2264david-sarah@jacaranda.org**20100516205625
2265 Ignore-this: 2361a3023cd3db86bde5e1af759ed01
2266]
2267[docs: CREDITS for Jeremy Visser
2268zooko@zooko.com**20100524081829
2269 Ignore-this: d7c1465fd8d4e25b8d46d38a1793465b
2270]
2271[test: show stdout and stderr in case of non-zero exit code from "tahoe" command
2272zooko@zooko.com**20100524073348
2273 Ignore-this: 695e81cd6683f4520229d108846cd551
2274]
2275[setup: upgrade bundled zetuptoolz to zetuptoolz-0.6c15dev and make it unpacked and directly loaded by setup.py
2276zooko@zooko.com**20100523205228
2277 Ignore-this: 24fb32aaee3904115a93d1762f132c7
2278 Also fix the relevant "make clean" target behavior.
2279]
2280[setup: remove bundled zipfile egg of setuptools
2281zooko@zooko.com**20100523205120
2282 Ignore-this: c68b5f2635bb93d1c1fa7b613a026f9e
2283 We're about to replace it with bundled unpacked source code of setuptools, which is much nicer for debugging and evolving under revision control.
2284]
2285[setup: remove bundled copy of setuptools_trial-0.5.2.tar
2286zooko@zooko.com**20100522221539
2287 Ignore-this: 140f90eb8fb751a509029c4b24afe647
2288 Hopefully it will get installed automatically as needed and we won't bundle it anymore.
2289]
2290[setup: remove bundled setuptools_darcs-1.2.8.tar
2291zooko@zooko.com**20100522015333
2292 Ignore-this: 378b1964b513ae7fe22bae2d3478285d
2293 This version of setuptools_darcs had a bug when used on Windows which has been fixed in setuptools_darcs-1.2.9. Hopefully we will not need to bundle a copy of setuptools_darcs-1.2.9 in with Tahoe-LAFS and can instead rely on it to be downloaded from PyPI or bundled in the "tahoe deps" separate tarball.
2294]
2295[tests: fix pyflakes warnings in bench_dirnode.py
2296zooko@zooko.com**20100521202511
2297 Ignore-this: f23d55b4ed05e52865032c65a15753c4
2298]
2299[setup: if the string '--reporter=bwverbose-coverage' appears on sys.argv then you need trialcoverage
2300zooko@zooko.com**20100521122226
2301 Ignore-this: e760c45dcfb5a43c1dc1e8a27346bdc2
2302]
2303[tests: don't let bench_dirnode.py do stuff and have side-effects at import time (unless __name__ == '__main__')
2304zooko@zooko.com**20100521122052
2305 Ignore-this: 96144a412250d9bbb5fccbf83b8753b8
2306]
2307[tests: increase timeout to give François's ARM buildslave a chance to complete the tests
2308zooko@zooko.com**20100520134526
2309 Ignore-this: 3dd399fdc8b91149c82b52f955b50833
2310]
2311[run_trial.darcspath
2312freestorm77@gmail.com**20100510232829
2313 Ignore-this: 5ebb4df74e9ea8a4bdb22b65373d1ff2
2314]
2315[docs: line-wrap README.txt
2316zooko@zooko.com**20100518174240
2317 Ignore-this: 670a02d360df7de51ebdcf4fae752577
2318]
2319[Hush pyflakes warnings
2320Kevan Carstensen <kevan@isnotajoke.com>**20100515184344
2321 Ignore-this: fd602c3bba115057770715c36a87b400
2322]
2323[setup: new improved misc/show-tool-versions.py
2324zooko@zooko.com**20100516050122
2325 Ignore-this: ce9b1de1b35b07d733e6cf823b66335a
2326]
2327[Improve code coverage of the Tahoe2PeerSelector tests.
2328Kevan Carstensen <kevan@isnotajoke.com>**20100515032913
2329 Ignore-this: 793151b63ffa65fdae6915db22d9924a
2330]
2331[Remove a comment that no longer makes sense.
2332Kevan Carstensen <kevan@isnotajoke.com>**20100514203516
2333 Ignore-this: 956983c7e7c7e4477215494dfce8f058
2334]
2335[docs: update docs/architecture.txt to more fully and correctly explain the upload procedure
2336zooko@zooko.com**20100514043458
2337 Ignore-this: 538b6ea256a49fed837500342092efa3
2338]
2339[Fix up the behavior of #778, per reviewers' comments
2340Kevan Carstensen <kevan@isnotajoke.com>**20100514004917
2341 Ignore-this: 9c20b60716125278b5456e8feb396bff
2342 
2343   - Make some important utility functions clearer and more thoroughly
2344     documented.
2345   - Assert in upload.servers_of_happiness that the buckets attributes
2346     of PeerTrackers passed to it are mutually disjoint.
2347   - Get rid of some silly non-Pythonisms that I didn't see when I first
2348     wrote these patches.
2349   - Make sure that should_add_server returns true when queried about a
2350     shnum that it doesn't know about yet.
2351   - Change Tahoe2PeerSelector.preexisting_shares to map a shareid to a set
2352     of peerids, alter dependencies to deal with that.
2353   - Remove upload.should_add_servers, because it is no longer necessary
2354   - Move upload.shares_of_happiness and upload.shares_by_server to a utility
2355     file.
2356   - Change some points in Tahoe2PeerSelector.
2357   - Compute servers_of_happiness using a bipartite matching algorithm that
2358     we know is optimal instead of an ad-hoc greedy algorithm that isn't.
2359   - Change servers_of_happiness to just take a sharemap as an argument,
2360     change its callers to merge existing_shares and used_peers before
2361     calling it.
2362   - Change an error message in the encoder to be more appropriate for
2363     servers of happiness.
2364   - Clarify the wording of an error message in immutable/upload.py
2365   - Refactor a happiness failure message to happinessutil.py, and make
2366     immutable/upload.py and immutable/encode.py use it.
2367   - Move the word "only" as far to the right as possible in failure
2368     messages.
2369   - Use a better definition of progress during peer selection.
2370   - Do read-only peer share detection queries in parallel, not sequentially.
2371   - Clean up logging semantics; print the query statistics whenever an
2372     upload is unsuccessful, not just in one case.
2373 
2374]
2375[Alter the error message when an upload fails, per some comments in #778.
2376Kevan Carstensen <kevan@isnotajoke.com>**20091230210344
2377 Ignore-this: ba97422b2f9737c46abeb828727beb1
2378 
2379 When I first implemented #778, I just altered the error messages to refer to
2380 servers where they referred to shares. The resulting error messages weren't
2381 very good. These are a bit better.
2382]
2383[Change "UploadHappinessError" to "UploadUnhappinessError"
2384Kevan Carstensen <kevan@isnotajoke.com>**20091205043037
2385 Ignore-this: 236b64ab19836854af4993bb5c1b221a
2386]
2387[Alter the error message returned when peer selection fails
2388Kevan Carstensen <kevan@isnotajoke.com>**20091123002405
2389 Ignore-this: b2a7dc163edcab8d9613bfd6907e5166
2390 
2391 The Tahoe2PeerSelector returned either NoSharesError or NotEnoughSharesError
2392 for a variety of error conditions that weren't informatively described by them.
2393 This patch creates a new error, UploadHappinessError, replaces uses of
2394 NoSharesError and NotEnoughSharesError with it, and alters the error message
2395 raised with the errors to be more in line with the new servers_of_happiness
2396 behavior. See ticket #834 for more information.
2397]
2398[Eliminate overcounting iof servers_of_happiness in Tahoe2PeerSelector; also reorganize some things.
2399Kevan Carstensen <kevan@isnotajoke.com>**20091118014542
2400 Ignore-this: a6cb032cbff74f4f9d4238faebd99868
2401]
2402[Change stray "shares_of_happiness" to "servers_of_happiness"
2403Kevan Carstensen <kevan@isnotajoke.com>**20091116212459
2404 Ignore-this: 1c971ba8c3c4d2e7ba9f020577b28b73
2405]
2406[Alter Tahoe2PeerSelector to make sure that it recognizes existing shares on readonly servers, fixing an issue in #778
2407Kevan Carstensen <kevan@isnotajoke.com>**20091116192805
2408 Ignore-this: 15289f4d709e03851ed0587b286fd955
2409]
2410[Alter 'immutable/encode.py' and 'immutable/upload.py' to use servers_of_happiness instead of shares_of_happiness.
2411Kevan Carstensen <kevan@isnotajoke.com>**20091104111222
2412 Ignore-this: abb3283314820a8bbf9b5d0cbfbb57c8
2413]
2414[Alter the signature of set_shareholders in IEncoder to add a 'servermap' parameter, which gives IEncoders enough information to perform a sane check for servers_of_happiness.
2415Kevan Carstensen <kevan@isnotajoke.com>**20091104033241
2416 Ignore-this: b3a6649a8ac66431beca1026a31fed94
2417]
2418[Alter CiphertextDownloader to work with servers_of_happiness
2419Kevan Carstensen <kevan@isnotajoke.com>**20090924041932
2420 Ignore-this: e81edccf0308c2d3bedbc4cf217da197
2421]
2422[Revisions of the #778 tests, per reviewers' comments
2423Kevan Carstensen <kevan@isnotajoke.com>**20100514012542
2424 Ignore-this: 735bbc7f663dce633caeb3b66a53cf6e
2425 
2426 - Fix comments and confusing naming.
2427 - Add tests for the new error messages suggested by David-Sarah
2428   and Zooko.
2429 - Alter existing tests for new error messages.
2430 - Make sure that the tests continue to work with the trunk.
2431 - Add a test for a mutual disjointedness assertion that I added to
2432   upload.servers_of_happiness.
2433 - Fix the comments to correctly reflect read-onlyness
2434 - Add a test for an edge case in should_add_server
2435 - Add an assertion to make sure that share redistribution works as it
2436   should
2437 - Alter tests to work with revised servers_of_happiness semantics
2438 - Remove tests for should_add_server, since that function no longer exists.
2439 - Alter tests to know about merge_peers, and to use it before calling
2440   servers_of_happiness.
2441 - Add tests for merge_peers.
2442 - Add Zooko's puzzles to the tests.
2443 - Edit encoding tests to expect the new kind of failure message.
2444 - Edit tests to expect error messages with the word "only" moved as far
2445   to the right as possible.
2446 - Extended and cleaned up some helper functions.
2447 - Changed some tests to call more appropriate helper functions.
2448 - Added a test for the failing redistribution algorithm
2449 - Added a test for the progress message
2450 - Added a test for the upper bound on readonly peer share discovery.
2451 
2452]
2453[Alter various unit tests to work with the new happy behavior
2454Kevan Carstensen <kevan@isnotajoke.com>**20100107181325
2455 Ignore-this: 132032bbf865e63a079f869b663be34a
2456]
2457[Replace "UploadHappinessError" with "UploadUnhappinessError" in tests.
2458Kevan Carstensen <kevan@isnotajoke.com>**20091205043453
2459 Ignore-this: 83f4bc50c697d21b5f4e2a4cd91862ca
2460]
2461[Add tests for the behavior described in #834.
2462Kevan Carstensen <kevan@isnotajoke.com>**20091123012008
2463 Ignore-this: d8e0aa0f3f7965ce9b5cea843c6d6f9f
2464]
2465[Re-work 'test_upload.py' to be more readable; add more tests for #778
2466Kevan Carstensen <kevan@isnotajoke.com>**20091116192334
2467 Ignore-this: 7e8565f92fe51dece5ae28daf442d659
2468]
2469[Test Tahoe2PeerSelector to make sure that it recognizeses existing shares on readonly servers
2470Kevan Carstensen <kevan@isnotajoke.com>**20091109003735
2471 Ignore-this: 12f9b4cff5752fca7ed32a6ebcff6446
2472]
2473[Add more tests for comment:53 in ticket #778
2474Kevan Carstensen <kevan@isnotajoke.com>**20091104112849
2475 Ignore-this: 3bb2edd299a944cc9586e14d5d83ec8c
2476]
2477[Add a test for upload.shares_by_server
2478Kevan Carstensen <kevan@isnotajoke.com>**20091104111324
2479 Ignore-this: f9802e82d6982a93e00f92e0b276f018
2480]
2481[Minor tweak to an existing test -- make the first server read-write, instead of read-only
2482Kevan Carstensen <kevan@isnotajoke.com>**20091104034232
2483 Ignore-this: a951a46c93f7f58dd44d93d8623b2aee
2484]
2485[Alter tests to use the new form of set_shareholders
2486Kevan Carstensen <kevan@isnotajoke.com>**20091104033602
2487 Ignore-this: 3deac11fc831618d11441317463ef830
2488]
2489[Refactor some behavior into a mixin, and add tests for the behavior described in #778
2490"Kevan Carstensen" <kevan@isnotajoke.com>**20091030091908
2491 Ignore-this: a6f9797057ca135579b249af3b2b66ac
2492]
2493[Alter NoNetworkGrid to allow the creation of readonly servers for testing purposes.
2494Kevan Carstensen <kevan@isnotajoke.com>**20091018013013
2495 Ignore-this: e12cd7c4ddeb65305c5a7e08df57c754
2496]
2497[Update 'docs/architecture.txt' to reflect readonly share discovery
2498kevan@isnotajoke.com**20100514003852
2499 Ignore-this: 7ead71b34df3b1ecfdcfd3cb2882e4f9
2500]
2501[Alter the wording in docs/architecture.txt to more accurately describe the servers_of_happiness behavior.
2502Kevan Carstensen <kevan@isnotajoke.com>**20100428002455
2503 Ignore-this: 6eff7fa756858a1c6f73728d989544cc
2504]
2505[Alter wording in 'interfaces.py' to be correct wrt #778
2506"Kevan Carstensen" <kevan@isnotajoke.com>**20091205034005
2507 Ignore-this: c9913c700ac14e7a63569458b06980e0
2508]
2509[Update 'docs/configuration.txt' to reflect the servers_of_happiness behavior.
2510Kevan Carstensen <kevan@isnotajoke.com>**20091205033813
2511 Ignore-this: 5e1cb171f8239bfb5b565d73c75ac2b8
2512]
2513[Clarify quickstart instructions for installing pywin32
2514david-sarah@jacaranda.org**20100511180300
2515 Ignore-this: d4668359673600d2acbc7cd8dd44b93c
2516]
2517[web: add a simple test that you can load directory.xhtml
2518zooko@zooko.com**20100510063729
2519 Ignore-this: e49b25fa3c67b3c7a56c8b1ae01bb463
2520]
2521[setup: fix typos in misc/show-tool-versions.py
2522zooko@zooko.com**20100510063615
2523 Ignore-this: 2181b1303a0e288e7a9ebd4c4855628
2524]
2525[setup: show code-coverage tool versions in show-tools-versions.py
2526zooko@zooko.com**20100510062955
2527 Ignore-this: 4b4c68eb3780b762c8dbbd22b39df7cf
2528]
2529[docs: update README, mv it to README.txt, update setup.py
2530zooko@zooko.com**20100504094340
2531 Ignore-this: 40e28ca36c299ea1fd12d3b91e5b421c
2532]
2533[Dependency on Windmill test framework is not needed yet.
2534david-sarah@jacaranda.org**20100504161043
2535 Ignore-this: be088712bec650d4ef24766c0026ebc8
2536]
2537[tests: pass z to tar so that BSD tar will know to ungzip
2538zooko@zooko.com**20100504090628
2539 Ignore-this: 1339e493f255e8fc0b01b70478f23a09
2540]
2541[setup: update comments and URLs in setup.cfg
2542zooko@zooko.com**20100504061653
2543 Ignore-this: f97692807c74bcab56d33100c899f829
2544]
2545[setup: reorder and extend the show-tool-versions script, the better to glean information about our new buildslaves
2546zooko@zooko.com**20100504045643
2547 Ignore-this: 836084b56b8d4ee8f1de1f4efb706d36
2548]
2549[CLI: Support for https url in option --node-url
2550Francois Deppierraz <francois@ctrlaltdel.ch>**20100430185609
2551 Ignore-this: 1717176b4d27c877e6bc67a944d9bf34
2552 
2553 This patch modifies the regular expression used for verifying of '--node-url'
2554 parameter.  Support for accessing a Tahoe gateway over HTTPS was already
2555 present, thanks to Python's urllib.
2556 
2557]
2558[backupdb.did_create_directory: use REPLACE INTO, not INSERT INTO + ignore error
2559Brian Warner <warner@lothar.com>**20100428050803
2560 Ignore-this: 1fca7b8f364a21ae413be8767161e32f
2561 
2562 This handles the case where we upload a new tahoe directory for a
2563 previously-processed local directory, possibly creating a new dircap (if the
2564 metadata had changed). Now we replace the old dirhash->dircap record. The
2565 previous behavior left the old record in place (with the old dircap and
2566 timestamps), so we'd never stop creating new directories and never converge
2567 on a null backup.
2568]
2569["tahoe webopen": add --info flag, to get ?t=info
2570Brian Warner <warner@lothar.com>**20100424233003
2571 Ignore-this: 126b0bb6db340fabacb623d295eb45fa
2572 
2573 Also fix some trailing whitespace.
2574]
2575[docs: install.html http-equiv refresh to quickstart.html
2576zooko@zooko.com**20100421165708
2577 Ignore-this: 52b4b619f9dde5886ae2cd7f1f3b734b
2578]
2579[docs: install.html -> quickstart.html
2580zooko@zooko.com**20100421155757
2581 Ignore-this: 6084e203909306bed93efb09d0e6181d
2582 It is not called "installing" because that implies that it is going to change the configuration of your operating system. It is not called "building" because that implies that you need developer tools like a compiler. Also I added a stern warning against looking at the "InstallDetails" wiki page, which I have renamed to "AdvancedInstall".
2583]
2584[Fix another typo in tahoe_storagespace munin plugin
2585david-sarah@jacaranda.org**20100416220935
2586 Ignore-this: ad1f7aa66b554174f91dfb2b7a3ea5f3
2587]
2588[Add dependency on windmill >= 1.3
2589david-sarah@jacaranda.org**20100416190404
2590 Ignore-this: 4437a7a464e92d6c9012926b18676211
2591]
2592[licensing: phrase the OpenSSL-exemption in the vocabulary of copyright instead of computer technology, and replicate the exemption from the GPL to the TGPPL
2593zooko@zooko.com**20100414232521
2594 Ignore-this: a5494b2f582a295544c6cad3f245e91
2595]
2596[munin-tahoe_storagespace
2597freestorm77@gmail.com**20100221203626
2598 Ignore-this: 14d6d6a587afe1f8883152bf2e46b4aa
2599 
2600 Plugin configuration rename
2601 
2602]
2603[setup: add licensing declaration for setuptools (noticed by the FSF compliance folks)
2604zooko@zooko.com**20100309184415
2605 Ignore-this: 2dfa7d812d65fec7c72ddbf0de609ccb
2606]
2607[setup: fix error in licensing declaration from Shawn Willden, as noted by the FSF compliance division
2608zooko@zooko.com**20100309163736
2609 Ignore-this: c0623d27e469799d86cabf67921a13f8
2610]
2611[CREDITS to Jacob Appelbaum
2612zooko@zooko.com**20100304015616
2613 Ignore-this: 70db493abbc23968fcc8db93f386ea54
2614]
2615[desert-island-build-with-proper-versions
2616jacob@appelbaum.net**20100304013858]
2617[docs: a few small edits to try to guide newcomers through the docs
2618zooko@zooko.com**20100303231902
2619 Ignore-this: a6aab44f5bf5ad97ea73e6976bc4042d
2620 These edits were suggested by my watching over Jake Appelbaum's shoulder as he completely ignored/skipped/missed install.html and also as he decided that debian.txt wouldn't help him with basic installation. Then I threw in a few docs edits that have been sitting around in my sandbox asking to be committed for months.
2621]
2622[TAG allmydata-tahoe-1.6.1
2623david-sarah@jacaranda.org**20100228062314
2624 Ignore-this: eb5f03ada8ea953ee7780e7fe068539
2625]
2626Patch bundle hash:
26274def38948c54e38bbc20357bc0eb5d28c021b058