Ticket #1074: unicode-args-and-rm-tahoe-exe-wip.dpatch

File unicode-args-and-rm-tahoe-exe-wip.dpatch, 61.8 KB (added by davidsarah, at 2010-06-08T23:29:51Z)

Attaching my work-in-progress for Unicode argument support on Windows and removal of tahoe.exe, so that it doesn't get lost.

Line 
1Wed Jun  9 00:12:03 GMT Daylight Time 2010  david-sarah@jacaranda.org
2  * Work-in-progress for Unicode argument support on Windows and removal of tahoe.exe.
3
4New patches:
5
6[Work-in-progress for Unicode argument support on Windows and removal of tahoe.exe.
7david-sarah@jacaranda.org**20100608231203
8 Ignore-this: 5041b72b864ad64f3700d600d6c716b9
9] {
10hunk ./bin/tahoe-script.template 44
11     pp = supportdir
12 os.environ["PYTHONPATH"] = pp
13 
14-# find the location of the tahoe executable.
15-bin_dir = "bin"
16+# find commandline args and the location of the tahoe executable.
17 if sys.platform == "win32":
18hunk ./bin/tahoe-script.template 46
19+    from ctypes import WINFUNCTYPE, POINTER, byref, c_wchar_p, c_int, windll
20+
21+    GetCommandLineW = WINFUNCTYPE(c_wchar_p)(("GetCommandLineW", windll.kernel32))
22+    CommandLineToArgvW = WINFUNCTYPE(POINTER(c_wchar_p), c_wchar_p, POINTER(c_int)) \
23+                            (("CommandLineToArgvW", windll.shell32))
24+
25+    argc = c_int(0)
26+    argv_unicode = CommandLineToArgvW(GetCommandLineW(), byref(argc))
27+    argv = [argv_unicode[i].encode('utf-8') for i in xrange(1, argc.value)]
28+
29     bin_dir = "Scripts"
30hunk ./bin/tahoe-script.template 57
31-executable = os.path.join(base, "support", bin_dir, "tahoe")
32+else:
33+    argv = sys.argv
34+
35+    bin_dir = "bin"
36+
37+print argv
38+
39+script = os.path.join(base, "support", bin_dir, "tahoe-script.py")
40 
41 try:
42hunk ./bin/tahoe-script.template 67
43-    res = subprocess.call([executable] + sys.argv[1:], env=os.environ)
44+    res = subprocess.call([sys.executable, script] + argv[1:], env=os.environ)
45 except (OSError, IOError), le:
46     if le.args[0] == errno.ENOENT:
47         print whoami
48hunk ./setup.py 232
49     def run(self):
50         bin_tahoe_template = os.path.join("bin", "tahoe-script.template")
51 
52-        # Create the 'tahoe-script.py' file under the 'bin' directory. The
53-        # 'tahoe-script.py' file is exactly the same as the
54-        # 'tahoe-script.template' script except that the shebang line is
55-        # rewritten to use our sys.executable for the interpreter. On
56-        # Windows, create a tahoe.exe will execute it. On non-Windows, make a
57-        # symlink to it from 'tahoe'. The tahoe.exe will be copied from the
58-        # setuptools egg's cli.exe and this will work from a zip-safe and
59-        # non-zip-safe setuptools egg.
60+        script_names = ["tahoe", "tahoe.py", "tahoe-script.py"]
61+
62+        # Create the tahoe script files under the 'bin' directory. Each
63+        # file is exactly the same as the 'tahoe-script.template' script
64+        # except that the shebang line is rewritten to use our sys.executable
65+        # for the interpreter.
66         f = open(bin_tahoe_template, "rU")
67         script_lines = f.readlines()
68         f.close()
69hunk ./setup.py 241
70-        script_lines[0] = "#!%s\n" % sys.executable
71-        tahoe_script = os.path.join("bin", "tahoe-script.py")
72-        f = open(tahoe_script, "w")
73-        for line in script_lines:
74-            f.write(line)
75-        f.close()
76-        if sys.platform == "win32":
77-            from pkg_resources import require
78-            setuptools_egg = require("setuptools")[0].location
79-            if os.path.isfile(setuptools_egg):
80-                z = zipfile.ZipFile(setuptools_egg, 'r')
81-                for filename in z.namelist():
82-                    if 'cli.exe' in filename:
83-                        cli_exe = z.read(filename)
84-            else:
85-                cli_exe = os.path.join(setuptools_egg, 'setuptools', 'cli.exe')
86-            tahoe_exe = os.path.join("bin", "tahoe.exe")
87-            if os.path.isfile(setuptools_egg):
88-                f = open(tahoe_exe, 'wb')
89-                f.write(cli_exe)
90-                f.close()
91-            else:
92-                shutil.copy(cli_exe, tahoe_exe)
93-        else:
94+        script_lines[0] = '#!%s\n' % sys.executable
95+        for script_name in script_names:
96+            tahoe_script = os.path.join("bin", script_name)
97             try:
98hunk ./setup.py 245
99-                os.remove(os.path.join('bin', 'tahoe'))
100+                os.remove(tahoe_script)
101             except:
102                 # okay, probably it was already gone
103                 pass
104hunk ./setup.py 249
105-            os.symlink('tahoe-script.py', os.path.join('bin', 'tahoe'))
106+            f = open(tahoe_script, "wb")
107+            for line in script_lines:
108+                f.write(line)
109+            f.close()
110+
111+            # chmod +x
112+            old_mode = stat.S_IMODE(os.stat(tahoe_script)[stat.ST_MODE])
113+            new_mode = old_mode | (stat.S_IXUSR | stat.S_IRUSR |
114+                                  stat.S_IXGRP | stat.S_IRGRP |
115+                                  stat.S_IXOTH | stat.S_IROTH )
116+            os.chmod(tahoe_script, new_mode)
117 
118hunk ./setup.py 261
119-        # chmod +x bin/tahoe-script.py
120-        old_mode = stat.S_IMODE(os.stat(tahoe_script)[stat.ST_MODE])
121-        new_mode = old_mode | (stat.S_IXUSR | stat.S_IRUSR |
122-                               stat.S_IXGRP | stat.S_IRGRP |
123-                               stat.S_IXOTH | stat.S_IROTH )
124-        os.chmod(tahoe_script, new_mode)
125+        try:
126+            os.remove(os.path.join("bin", "tahoe.exe"))
127+        except:
128+            # okay, probably it wasn't there
129+            pass
130 
131 class MySdist(sdist.sdist):
132     """ A hook in the sdist command so that we can determine whether this the
133binary ./setuptools-0.6c15dev.egg/setuptools/cli.exe
134oldhex
135*4d5a90000300000004000000ffff0000b800000000000000400000000000000000000000000000
136*000000000000000000000000000000000000000000800000000e1fba0e00b409cd21b8014ccd21
137*546869732070726f6772616d2063616e6e6f742062652072756e20696e20444f53206d6f64652e
138*0d0d0a2400000000000000504500004c01050049c7b7450000000000000000e0000f030b010238
139*000e00000008000000020000701200000010000000200000000040000010000000020000040000
140*000100000004000000000000000060000000040000ef6c00000300000000002000001000000000
141*1000001000000000000010000000000000000000000000500000d4030000000000000000000000
142*000000000000000000000000000000000000000000000000000000000000000000000000000000
143*000000000000000000000000000000000000000000000000000000000000000000000000000000
144*000000000000000000000000000000000000000000000000002e74657874000000f00c00000010
145*0000000e000000040000000000000000000000000000200000602e646174610000003000000000
146*2000000002000000120000000000000000000000000000400000c02e7264617461000050000000
147*003000000002000000140000000000000000000000000000400000402e62737300000000600000
148*00004000000000000000000000000000000000000000000000800000c02e69646174610000d403
149*0000005000000004000000160000000000000000000000000000400000c0000000000000000000
150*000000000000000000000000000000000000000000000000000000000000000000000000000000
151*000000000000000000000000000000000000000000000000000000000000000000000000000000
152*000000000000000000000000000000000000000000000000000000000000000000000000000000
153*000000000000000000000000000000000000000000000000000000000000000000000000000000
154*000000000000000000000000000000000000000000000000000000000000000000000000000000
155*000000000000000000000000000000000000000000000000000000000000000000000000000000
156*000000000000000000000000000000000000000000000000000000000000000000000000000000
157*000000000000000000000000000000000000000000000000000000000000000000000000000000
158*000000000000000000000000000000000000000000000000000000000000000000000000000000
159*000000000000000000000000000000000000000000000000000000000000000000000000000000
160*000000000000000000000000000000000000000000000000000000000000000000000000000000
161*000000000000000000005589e583ec18895df88b450831db8975fc8b0031f68b003d910000c077
162*433d8d0000c0725bbe01000000c704240800000031d289542404e8740b000083f801747a85c074
163*0ec7042408000000ffd0bbffffffff89d88b75fc8b5df889ec5dc204003d940000c074c2774a3d
164*930000c074b489d88b75fc8b5df889ec5dc20400903d050000c0745b3d1d0000c075c5c7042404
165*00000031f689742404e8100b000083f801746a85c074aac7042404000000ffd0eb9a3d960000c0
166*ebd1c7042408000000b80100000089442404e8e00a000085f60f8476ffffffe863090000e96cff
167*ffffc704240b00000031c089442404e8bc0a000083f801743085c00f8452ffffffc704240b0000
168*00ffd0e93fffffffc7042404000000b901000000894c2404e88c0a0000e925ffffffc704240b00
169*0000b80100000089442404e8720a0000e90bffffff8db6000000008dbc27000000005589e55383
170*ec24c7042400104000e8fd0a000083ec04e8d5080000c745f8000000008d45f889442410a10020
171*4000c70424044040008944240c8d45f489442408b80040400089442404e8420a0000a110404000
172*85c07459a3102040008b151c51400085d20f858b00000083fae0741fa11040400089442404a11c
173*5140008b4030890424e8f80900008b151c51400083fac0741da11040400089442404a11c514000
174*8b4050890424e8d40900008d742600e8bb0900008b15102040008910e8fe07000083e4f0e88609
175*00008b0089442408a10040400089442404a104404000890424e8ba06000089c3e853090000891c
176*24e82b0a000089442404a11c5140008b4010890424e8770900008b151c514000e956ffffff8db6
177*000000008dbf000000005589e583ec08c7042401000000ff1514514000e8c8feffff908db42600
178*0000005589e583ec08c7042402000000ff1514514000e8a8feffff908db42600000000558b0d30
179*51400089e55dffe18d742600558b0d2451400089e55dffe1909090905589e583ec188b450c8944
180*24088b450889442404a11c51400083c040890424e85c090000b802000000c9c35589e557565383
181*ec0c8b750889f7fcb9ffffffffb000f2aef7d18d79ffc7442404010000008d443f03890424e814
182*0900008945f0c6002289c242b900000000bb0000000039f97d33803c1e5c750341eb1e803c1e22
183*751385c97e09c6025c424985c97ff7c6025c42eb05b9000000000fb6041e8802424339fb7ccd85
184*c97e09c6025c424985c97ff7c60222c64201008b45f083c40c5b5e5f5dc35589e5565383ec10c7
185*44240808000000c7442404000000008b4508890424e8c808000083ec0c89c6b80000000085f674
186*3ec744240401000000c7042404010000e86608000089c385c07417c74424080401000089442404
187*893424e89c08000083ec0c893424e8a108000083ec0489d88d65f85b5e5dc35589e557565381ec
188*4c0400008b75088d5e010fb61684d2741380fa2f7504c643ff5c0fb6034388c284c075ed8d85d8
189*fcffff894424108d85d8fdffff8944240c8d85d8feffff894424088d45d889442404893424e8cc
190*070000807dd800750980bdd8feffff5c750d893424e81affffffe9990000008d85d8fcffff8944
191*24108d85d8fdffff8944240c8d9dd8feffff895c24088d45d8894424048b450c890424e8800700
192*0089dffcb9ffffffffb000f2aef7d18d5c19fe803b5c75064b803b5c74198d85d8feffff89c239
193*d8770dc603004b803b5c740439da76f3c7442410000000008974240c8d85d8feffff894424088d
194*45d8894424048d9dc8fbffff891c24e80f070000891c24e87cfeffff81c44c0400005b5e5f5dc3
195*5589e557565383ec1c8b5d0889dffcb9ffffffffb000f2aef7d149c744240404000000890c24e8
196*f10600008945f089debf00000000c745e8000000008b450cc700000000008b55f0891aeb01430f
197*be03890424e89406000085c075f00fb603438845ef84c074150fbec0890424e87a06000085c074
198*47837de800754185ff7407c6065c464f75f9c60600468b550c8b024089028b55f0893482807def
199*00750589d0eb65430fbe03890424e83d06000085c075f0803b0075a48b45f0eb4b807def5c7503
200*47eb96807def22751bf7c7010000007511837de8000f94c00fb6c08945e8c645ef00d1ff85ff74
201*07c6065c464f75f9807def000f8460ffffff0fb645ef880646e954ffffff83c41c5b5e5f5dc355
202*89e557565381ec2c020000c7442408000100008d9de8fdffff895c2404c7042400000000e83206
203*000083ec0c89dffcb9ffffffffb000f2aef7d18d7419ff39f37314803e2e740f89d8c606004e39
204*f07305803e2e75f3c606008db5e8fdffff89f7fcb9ffffffffb000f2aef7d149c7040e2d736372
205*c7440e046970742e66c7440e087079c6440e0a00c744240400000000893424e8a204000089c383
206*f8ff751589742404c7042400304000e8ebfbffffe9c50100008db5e8feffffc744240800010000
207*89742404890424e85c04000001c6891c24e8420400008dbde7feffff4739f7730f803f00740a80
208*3f0a7405803f0d75ecc607008db5e8feffffbf10304000b902000000fcf3a60f97c20f92c038c2
209*7425c785e8feffff23217079c785ecfeffff74686f6ec785f0feffff2e657865c685f4feffff00
210*8d85e4fdffff894424048d85eafeffff890424e89ffdffff8985dcfdffff8d85e8fdffff894424
211*048b95dcfdffff8b02890424e866fcffff89c785c0751d8b95dcfdffff8b0289442404c7042414
212*304000e80dfbffffe9e7000000c7442404040000008b45080385e4fdffff40890424e85e040000
213*8985e0fdffff893c24e80bfbffff8b95e0fdffff890289d383c304be010000003bb5e4fdffff7d
214*1f8b95dcfdffff8b04b2890424e8e0faffff890383c304463bb5e4fdffff7ce18d85e8fdffff89
215*0424e8c4faffff890383c304be010000003b75087d198b550c8b04b2890424e8a7faffff890383
216*c304463b75087ce7c70300000000837d1000742a8b85e0fdffff894424048d9de8feffff891c24
217*e8bd020000895c2404c7042436304000e83dfaffffeb1a8b95e0fdffff89542408897c2404c704
218*2400000000e8810200008d65f45b5e5f5dc35589e55383ec14e82d03000089c3e836030000c744
219*2408000000008b13895424048b00890424e852fdffff83c4145b5dc2100090909090909055b810
220*00000089e55383ec6483e4f0e8fc010000e8d7010000e8a203000089c38d45a8890424e8a50300
221*0083ec0485db7506e99d000000430fb60b80f9200f94c080f9090f94c209d0a80175ea80f92274
222*3e80f9200f95c031d280f9090f95c285d0744c8db6000000008dbf0000000084c9743c430fb60b
223*80f9200f95c031d280f9090f95c285d075e6eb248d742600430fb60b80f9220f95c031d284c90f
224*95c285d075eb80f92274668db60000000080f9200f94c080f9090f94c2eb1089f6430fb6033c20
225*0f94c23c090f94c009d0a80175ecc7042400000000e80003000083ec04f645d401ba0a00000074
226*040fb755d88954240c31d2895c240889542404890424e8bffeffff83ec108b5dfcc9c3430fb60b
227*eb9a9090909090909090909055b95030400089e5eb148db6000000008b51048b0183c108018200
228*00400081f95030400072ea5dc390909090909090905589e5dbe35dc39090909090909090905589
229*e583ec08a1202040008338007417ff108b15202040008d42048b5204a32020400085d275e9c9c3
230*8db426000000005589e55383ec04a1e01c400083f8ff742985c089c3741389f68dbc2700000000
231*ff149de01c40004b75f6c70424501a4000e8faf7ffff595b5dc331c0833de41c400000eb0a408b
232*1c85e41c400085db75f4ebbe8db6000000008dbc270000000055a12040400089e585c074045dc3
233*89f65db801000000a320404000eb839090905189e183c1083d00100000721081e9001000008309
234*002d00100000ebe929c183090089e089cc8b088b4004ffe0909090ff25f4504000909000000000
235*00000000ff25e850400090900000000000000000ff25e450400090900000000000000000ff25f0
236*50400090900000000000000000ff25ec50400090900000000000000000ff251451400090900000
237*000000000000ff251851400090900000000000000000ff250c51400090900000000000000000ff
238*254051400090900000000000000000ff251051400090900000000000000000ff25285140009090
239*0000000000000000ff250051400090900000000000000000ff2508514000909000000000000000
240*00ff250451400090900000000000000000ff253c51400090900000000000000000ff2520514000
241*90900000000000000000ff252c51400090900000000000000000ff253451400090900000000000
242*000000ff253851400090900000000000000000ff256851400090900000000000000000ff254c51
243*400090900000000000000000ff256451400090900000000000000000ff25585140009090000000
244*0000000000ff255051400090900000000000000000ff255451400090900000000000000000ff25
245*6051400090900000000000000000ff255c51400090900000000000000000ffffffff00000000ff
246*ffffff000000000000000000000000000000000000000000000000000000000000000000000000
247*000000000000000000000000000000000000000000000000000000000000000000000000000000
248*000000000000000000000000000000000000000000000000000000000000000000000000000000
249*000000000000000000000000000000000000000000000000000000000000000000000000000000
250*000000000000000000000000000000000000000000000000000000000000000000000000000000
251*000000000000000000000000000000000000000000000000000000000000000000000000000000
252*000000000000000000000000000000000000000000000000000000000000000000000000000000
253*000000000000ffffffff00000000000000000000000000400000000000000000000000000000ec
254*1c4000000000000000000000000000000000000000000000000000000000000000000000000000
255*000000000000000000000000000000000000000000000000000000000000000000000000000000
256*000000000000000000000000000000000000000000000000000000000000000000000000000000
257*000000000000000000000000000000000000000000000000000000000000000000000000000000
258*000000000000000000000000000000000000000000000000000000000000000000000000000000
259*000000000000000000000000000000000000000000000000000000000000000000000000000000
260*000000000000000000000000000000000000000000000000000000000000000000000000000000
261*000000000000000000000000000000000000000000000000000000000000000000000000000000
262*000000000000000000000000000000000000000000000000000000000000000000000000000000
263*000000000000000000000000000000000000000000000000000000000000000000000000000000
264*000000000000000000000000000000000000000000000000000000000000000000000000000000
265*000000000000000000000000000000000000000000000000000000000000000000000000000000
266*000000000000000000000043616e6e6f74206f70656e2025730a002321000043616e6e6f742066
267*696e6420507974686f6e2065786563757461626c652025730a00436f756c64206e6f7420657865
268*632025730000000000000000000000000000000000000000000000000000000000000000000000
269*000000000000000000000000000000000000000000000000000000000000000000000000000000
270*000000000000000000000000000000000000000000000000000000000000000000000000000000
271*000000000000000000000000000000000000000000000000000000000000000000000000000000
272*000000000000000000000000000000000000000000000000000000000000000000000000000000
273*000000000000000000000000000000000000000000000000000000000000000000000000000000
274*000000000000000000000000000000000000000000000000000000000000000000000000000000
275*000000000000000000000000000000000000000000000000000000000000000000000000000000
276*000000000000000000000000000000000000000000000000000000000000000000000000000000
277*000000000000000000000000000000000000000000000000000000000000000000000000000000
278*000000000000000000000000000000000000000000000000000000000000000000000000000000
279*0000000000000000000000000000000054500000000000000000000048530000e4500000705000
280*0000000000000000009853000000510000bc5000000000000000000000c45300004c5100000000
281*00000000000000000000000000000000000000000000705100007c510000885100009051000098
282*5100000000000000000000a4510000b4510000c4510000d4510000e4510000f451000008520000
283*145200001c520000285200003452000040520000505200005c5200006852000074520000805200
284*0000000000000000008c5200009c520000ac520000c0520000d8520000ec520000005300001453
285*00000000000000000000705100007c5100008851000090510000985100000000000000000000a4
286*510000b4510000c4510000d4510000e4510000f451000008520000145200001c52000028520000
287*3452000040520000505200005c52000068520000745200008052000000000000000000008c5200
288*009c520000ac520000c0520000d8520000ec52000000530000145300000000000006005f636c6f
289*73650000000012005f6578656376000000003a005f6f70656e0040005f72656164004b005f7370
290*61776e7600000027005f5f6765746d61696e617267730031005f5f705f5f5f6172676300000000
291*32005f5f705f5f5f61726776000000003c005f5f705f5f656e7669726f6e00003e005f5f705f5f
292*666d6f64650000000050005f5f7365745f6170705f747970650000000079005f63657869740000
293*0000e9005f696f6200001f015f6d616b6570617468005e015f6f6e6578697400000084015f7365
294*746d6f6465000092015f73706c697470617468000000001c026174657869740000000021026361
295*6c6c6f63000000003902667072696e74660000005a026973737061636500000090027369676e61
296*6c000000009b004578697450726f63657373000000d500467265654c696272617279000000ec00
297*476574436f6d6d616e644c696e65410000004d014765744d6f64756c6546696c654e616d654100
298*0000004f014765744d6f64756c6548616e646c65410000800147657453746172747570496e666f
299*410000000b024c6f61644c69627261727945784100000000df02536574556e68616e646c656445
300*7863657074696f6e46696c74657200000000500000005000000050000000500000005000006d73
301*766372742e646c6c00001450000014500000145000001450000014500000145000001450000014
302*500000145000001450000014500000145000001450000014500000145000001450000014500000
303*6d73766372742e646c6c0000285000002850000028500000285000002850000028500000285000
304*00285000004b45524e454c33322e646c6c00000000000000000000000000000000000000000000
305*0000000000000000000000000000000000000000000000000000
306newhex
307*
308rmfile ./setuptools-0.6c15dev.egg/setuptools/cli.exe
309}
310
311Context:
312
313[SFTP: suppress NoSuchChildError if heisenfile attributes have been updated in setAttrs, in the case where the parent is available.
314david-sarah@jacaranda.org**20100608063753
315 Ignore-this: 8c72a5a9c15934f8fe4594ba3ee50ddd
316] 
317[SFTP: ignore permissions when opening a file (needed for sshfs interoperability).
318david-sarah@jacaranda.org**20100608055700
319 Ignore-this: f87f6a430f629326a324ddd94426c797
320] 
321[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.
322zooko@zooko.com**20100608033754
323 Ignore-this: 98dc27692c5ace1e4b0650b6680629d7
324] 
325[test_web.py: fix pyflakes warnings introduced by byterange patch.
326david-sarah@jacaranda.org**20100608042012
327 Ignore-this: a7612724893b51d1154dec4372e0508
328] 
329[Improve HTTP/1.1 byterange handling
330Jeremy Fitzhardinge <jeremy@goop.org>**20100310025913
331 Ignore-this: 6d69e694973d618f0dc65983735cd9be
332 
333 Fix parsing of a Range: header to support:
334  - multiple ranges (parsed, but not returned)
335  - suffix byte ranges ("-2139")
336  - correct handling of incorrectly formatted range headers
337    (correct behaviour is to ignore the header and return the full
338     file)
339  - return appropriate error for ranges outside the file
340 
341 Multiple ranges are parsed, but only the first range is returned.
342 Returning multiple ranges requires using the multipart/byterange
343 content type.
344 
345] 
346[test_cli.py: remove invalid 'test_listdir_unicode_bad' test.
347david-sarah@jacaranda.org**20100607183730
348 Ignore-this: fadfe87980dc1862f349bfcc21b2145f
349] 
350[check_memory.py: adapt to servers-of-happiness changes.
351david-sarah@jacaranda.org**20100608013528
352 Ignore-this: c6b28411c543d1aea2f148a955f7998
353] 
354[show-tool-versions.py: platform.linux_distribution() is not always available
355david-sarah@jacaranda.org**20100608004523
356 Ignore-this: 793fb4050086723af05d06bed8b1b92a
357] 
358[show-tool-versions.py: show platform.linux_distribution()
359david-sarah@jacaranda.org**20100608003829
360 Ignore-this: 81cb5e5fc6324044f0fc6d82903c8223
361] 
362[Remove the 'tahoe debug consolidate' subcommand.
363david-sarah@jacaranda.org**20100607183757
364 Ignore-this: 4b14daa3ae557cea07d6e119d25dafe9
365] 
366[tests: drastically increase timeout of this very time-consuming test in honor of François's ARM box
367zooko@zooko.com**20100607115929
368 Ignore-this: bf1bb52ffb6b5ccae71d4dde14621bc8
369] 
370[setup: update authorship, datestamp, licensing, and add special exceptions to allow combination with Eclipse- and QPL- licensed code
371zooko@zooko.com**20100607062329
372 Ignore-this: 5a1d7b12dfafd61283ea65a245416381
373] 
374[common_http.py, tahoe_cp.py: Fix an error in calling the superclass constructor in HTTPError and MissingSourceError (introduced by the Unicode fixes).
375david-sarah@jacaranda.org**20100607174714
376 Ignore-this: 1a118d593d81c918a4717c887f033aec
377] 
378[FTP-and-SFTP.txt: minor technical correction to doc for 'no-write' flag.
379david-sarah@jacaranda.org**20100607061600
380 Ignore-this: 66aee0c1b6c00538602d08631225e114
381] 
382[test_stringutils.py: trivial error in exception message for skipped test.
383david-sarah@jacaranda.org**20100607061455
384 Ignore-this: f261a5d4e2b8fe3bcc37e02539ba1ae2
385] 
386[setup: organize misc/ scripts and tools and remove obsolete ones
387zooko@zooko.com**20100607051618
388 Ignore-this: 161db1158c6b7be8365b0b3dee2e0b28
389 This is for ticket #1068.
390] 
391[More Unicode test fixes.
392david-sarah@jacaranda.org**20100607053358
393 Ignore-this: 6a271fb77c31f28cb7bdba63b26a2dd2
394] 
395[Unicode fixes for platforms with non-native-Unicode filesystems.
396david-sarah@jacaranda.org**20100607043238
397 Ignore-this: 2134dc1793c4f8e50350bd749c4c98c2
398] 
399[Unicode fixes.
400david-sarah@jacaranda.org**20100607010215
401 Ignore-this: d58727b5cd2ce00e6b6dae3166030138
402] 
403[quickstart.html: link to snapshots page, sorted with most recent first.
404david-sarah@jacaranda.org**20100606221127
405 Ignore-this: 93ea7e6ee47acc66f6daac9cabffed2d
406] 
407[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
408zooko@zooko.com**20100606175717
409 Ignore-this: e438a8eb3c1b0e68080711ec6ff93ffa
410 (You can look but don't touch.)
411] 
412[setup: have the buildbots print out locale.getpreferredencoding(), locale.getdefaultlocale(), locale.getlocale(), and os.path.supports_unicode_filenames
413zooko@zooko.com**20100605162932
414 Ignore-this: 85e31e0e0e1364e9215420e272d58116
415 Even though that latter one is completely useless, I'm curious.
416] 
417[quickstart.html: We haven't released 1.7beta yet.
418david-sarah@jacaranda.org**20100606220301
419 Ignore-this: 4e18898cfdb08cc3ddd1ff94d43fdda7
420] 
421[Raise Python version requirement to 2.4.4 for non-UCS-2 builds, to avoid a critical Python security bug.
422david-sarah@jacaranda.org**20100605031713
423 Ignore-this: 2df2b6d620c5d8191c79eefe655059e2
424] 
425[unicode tests: fix missing import
426zooko@zooko.com**20100604142630
427 Ignore-this: db437fe8009971882aaea9de05e2bc3
428] 
429[unicode: make test_cli test a non-ascii argument, and make the fallback term encoding be locale.getpreferredencoding()
430zooko@zooko.com**20100604141251
431 Ignore-this: b2bfc07942f69141811e59891842bd8c
432] 
433[unicode: always decode json manifest as utf-8 then encode for stdout
434zooko@zooko.com**20100604084840
435 Ignore-this: ac481692315fae870a0f3562bd7db48e
436 pyflakes pointed out that the exception handler fallback called an un-imported function, showing that the fallback wasn't being exercised.
437 I'm not 100% sure that this patch is right and would appreciate François or someone reviewing it.
438] 
439[fix flakes
440zooko@zooko.com**20100604075845
441 Ignore-this: 3e6a84b78771b0ad519e771a13605f0
442] 
443[fix syntax of assertion handling that isn't portable to older versions of Python
444zooko@zooko.com**20100604075805
445 Ignore-this: 3a12b293aad25883fb17230266eb04ec
446] 
447[test_stringutils.py: Skip test test_listdir_unicode_good if filesystem supports only ASCII filenames
448Francois Deppierraz <francois@ctrlaltdel.ch>**20100521160839
449 Ignore-this: f2ccdbd04c8d9f42f1efb0eb80018257
450] 
451[test_stringutils.py: Skip test_listdir_unicode on mocked platform which cannot store non-ASCII filenames
452Francois Deppierraz <francois@ctrlaltdel.ch>**20100521160559
453 Ignore-this: b93fde736a8904712b506e799250a600
454] 
455[test_stringutils.py: Add a test class for OpenBSD 4.1 with LANG=C
456Francois Deppierraz <francois@ctrlaltdel.ch>**20100521140053
457 Ignore-this: 63f568aec259cef0e807752fc8150b73
458] 
459[test_stringutils.py: Mock the open() call in test_open_unicode
460Francois Deppierraz <francois@ctrlaltdel.ch>**20100521135817
461 Ignore-this: d8be4e56a6eefe7d60f97f01ea20ac67
462 
463 This test ensure that open(a_unicode_string) is used on Unicode platforms
464 (Windows or MacOS X) and that open(a_correctly_encoded_bytestring) on other
465 platforms such as Unix.
466 
467] 
468[test_stringutils.py: Fix a trivial Python 2.4 syntax incompatibility
469Francois Deppierraz <francois@ctrlaltdel.ch>**20100521093345
470 Ignore-this: 9297e3d14a0dd37d0c1a4c6954fd59d3
471] 
472[test_cli.py: Fix tests when sys.stdout.encoding=None and refactor this code into functions
473Francois Deppierraz <francois@ctrlaltdel.ch>**20100520084447
474 Ignore-this: cf2286e225aaa4d7b1927c78c901477f
475] 
476[Fix handling of correctly encoded unicode filenames (#534)
477Francois Deppierraz <francois@ctrlaltdel.ch>**20100520004356
478 Ignore-this: 8a3a7df214a855f5a12dc0eeab6f2e39
479 
480 Tahoe CLI commands working on local files, for instance 'tahoe cp' or 'tahoe
481 backup', have been improved to correctly handle filenames containing non-ASCII
482 characters.
483   
484 In the case where Tahoe encounters a filename which cannot be decoded using the
485 system encoding, an error will be returned and the operation will fail.  Under
486 Linux, this typically happens when the filesystem contains filenames encoded
487 with another encoding, for instance latin1, than the system locale, for
488 instance UTF-8.  In such case, you'll need to fix your system with tools such
489 as 'convmv' before using Tahoe CLI.
490   
491 All CLI commands have been improved to support non-ASCII parameters such as
492 filenames and aliases on all supported Operating Systems except Windows as of
493 now.
494] 
495[stringutils.py: Unicode helper functions + associated tests
496Francois Deppierraz <francois@ctrlaltdel.ch>**20100520004105
497 Ignore-this: 7a73fc31de2fd39d437d6abd278bfa9a
498 
499 This file contains a bunch of helper functions which converts
500 unicode string from and to argv, filenames and stdout.
501] 
502[Add dependency on Michael Foord's mock library
503Francois Deppierraz <francois@ctrlaltdel.ch>**20100519233325
504 Ignore-this: 9bb01bf1e4780f6b98ed394c3b772a80
505] 
506[setup: adjust make clean target to ignore our bundled build tools
507zooko@zooko.com**20100604051250
508 Ignore-this: d24d2a3b849000790cfbfab69237454e
509] 
510[setup: bundle a copy of setuptools_trial as an unzipped egg in the base dir of the Tahoe-LAFS source tree
511zooko@zooko.com**20100604044648
512 Ignore-this: a4736e9812b4dab2d5a2bc4bfc5c3b28
513 This is to work-around this Distribute issue:
514 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
515] 
516[setup: bundle a copy of darcsver in unzipped egg form in the root of the Tahoe-LAFS source tree
517zooko@zooko.com**20100604044146
518 Ignore-this: a51a52e82dd3a39225657ffa27decae2
519 This is to work-around this Distribute issue:
520 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
521] 
522[setup: undo the previous patch to quote the executable in scripts
523zooko@zooko.com**20100604025204
524 Ignore-this: beda3b951c49d1111478618b8cabe005
525 The problem isn't in the script, it is in the cli.exe script that is built by setuptools. This might be related to
526 http://bugs.python.org/issue6792
527 and
528 http://bugs.python.org/setuptools/issue2
529 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.
530] 
531[quickstart.html: warn against installing Python at a path containing spaces.
532david-sarah@jacaranda.org**20100604032413
533 Ignore-this: c7118332573abd7762d9a897e650bc6a
534] 
535[setup: put quotes around the path to executable in case it has spaces in it, when building a tahoe.exe for win32
536zooko@zooko.com**20100604020836
537 Ignore-this: 478684843169c94a9c14726fedeeed7d
538] 
539[misc/show-tool-versions.py: Display additional Python interpreter encoding informations (stdout, stdin and filesystem)
540Francois Deppierraz <francois@ctrlaltdel.ch>**20100521094313
541 Ignore-this: 3ae9b0b07fd1d53fb632ef169f7c5d26
542] 
543[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.
544david-sarah@jacaranda.org**20100603232105
545 Ignore-this: 6e2cc63f42b07e2a3b2d1a857abc50a6
546] 
547[Resolve merge conflict for sftpd.py
548david-sarah@jacaranda.org**20100603182537
549 Ignore-this: ba8b543e51312ac949798eb8f5bd9d9c
550] 
551[SFTP: possible fix for metadata times being shown as the epoch.
552david-sarah@jacaranda.org**20100602234514
553 Ignore-this: bdd7dfccf34eff818ff88aa4f3d28790
554] 
555[SFTP: further improvements to test coverage.
556david-sarah@jacaranda.org**20100602234422
557 Ignore-this: 87eeee567e8d7562659442ea491e187c
558] 
559[SFTP: improve test coverage. Also make creating a directory fail when permissions are read-only (rather than ignoring the permissions).
560david-sarah@jacaranda.org**20100602041934
561 Ignore-this: a5e9d9081677bc7f3ddb18ca7a1f531f
562] 
563[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.
564david-sarah@jacaranda.org**20100602032641
565 Ignore-this: 48817b54cd63f5422cb88214c053b03b
566] 
567[dirnode.py: Fix bug that caused 'tahoe' fields, 'ctime' and 'mtime' not to be updated when new metadata is present.
568david-sarah@jacaranda.org**20100602014644
569 Ignore-this: 5bac95aa897b68f2785d481e49b6a66
570] 
571[SFTP: fix a bug that caused the temporary files underlying EncryptedTemporaryFiles not to be closed.
572david-sarah@jacaranda.org**20100601055310
573 Ignore-this: 44fee4cfe222b2b1690f4c5e75083a52
574] 
575[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.
576david-sarah@jacaranda.org**20100601051139
577 Ignore-this: eff7c08bd47fd52bfe2b844dabf02558
578] 
579[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.
580david-sarah@jacaranda.org**20100601045428
581 Ignore-this: 14f26e17e58db97fad0dcfd350b38e95
582] 
583[SFTP: the same bug as in _sync_heisenfiles also occurred in two other places.
584david-sarah@jacaranda.org**20100530060127
585 Ignore-this: 8d137658fc6e4596fa42697476c39aa3
586] 
587[SFTP: another try at fixing the _sync_heisenfiles bug.
588david-sarah@jacaranda.org**20100530055254
589 Ignore-this: c15f76f32a60083a6b7de6ca0e917934
590] 
591[SFTP: fix silly bug in _sync_heisenfiles ('f is not ignore' vs 'not (f is ignore)').
592david-sarah@jacaranda.org**20100530053807
593 Ignore-this: 71c4bc62613bf8fef835886d8eb61c27
594] 
595[SFTP: log when a sync completes.
596david-sarah@jacaranda.org**20100530051840
597 Ignore-this: d99765663ceb673c8a693dfcf88c25ea
598] 
599[SFTP: fix bug in previous logging patch.
600david-sarah@jacaranda.org**20100530050000
601 Ignore-this: 613e4c115f03fe2d04c621b510340817
602] 
603[SFTP: more logging to track down OpenOffice hang.
604david-sarah@jacaranda.org**20100530040809
605 Ignore-this: 6c11f2d1eac9f62e2d0f04f006476a03
606] 
607[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.
608david-sarah@jacaranda.org**20100530025544
609 Ignore-this: 9919dddd446fff64de4031ad51490d1c
610] 
611[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.
612david-sarah@jacaranda.org**20100529050537
613 Ignore-this: 87648afa0dec0d2e73614007de102a16
614] 
615[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.
616david-sarah@jacaranda.org**20100529045253
617 Ignore-this: 2404076b2154ff2659e2b10e0b9e813c
618] 
619[Change doc comments in interfaces.py to take into account unknown nodes.
620david-sarah@jacaranda.org**20100528171922
621 Ignore-this: d2fde6890b3bca9c7275775f64fbff56
622] 
623[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.
624david-sarah@jacaranda.org**20100527194529
625 Ignore-this: 6d8114cef4450c52c57639f82852716f
626] 
627[Trivial whitespace changes.
628david-sarah@jacaranda.org**20100527194114
629 Ignore-this: 98d611bc54ee20b01a5f6b334ff61b2d
630] 
631[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.
632david-sarah@jacaranda.org**20100525230257
633 Ignore-this: 63245d6d864f8f591c86170864d7c57f
634] 
635[SFTP: handle removing a file while it is open. Also some simplifications of the logout handling.
636david-sarah@jacaranda.org**20100525184210
637 Ignore-this: 660ee80be6ecab783c60452a9da896de
638] 
639[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.
640david-sarah@jacaranda.org**20100525033323
641 Ignore-this: fe2914d3ef7f5194bbeaf3f2dda2ad7d
642] 
643[SFTP: fix problem with posix-rename code returning a Deferred for the renamed filenode, not for the result of the request (an empty string).
644david-sarah@jacaranda.org**20100525020209
645 Ignore-this: 69f7491df2a8f7ea92d999a6d9f0581d
646] 
647[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.
648david-sarah@jacaranda.org**20100524230412
649 Ignore-this: eb1a3fb72492fa2fb19667b6e4300440
650] 
651[SFTP: name of the POSIX rename extension should be 'posix-rename@openssh.com', not 'extposix-rename@openssh.com'.
652david-sarah@jacaranda.org**20100524021156
653 Ignore-this: f90eb1ff9560176635386ee797a3fdc7
654] 
655[SFTP: avoid race condition where .write could be called on an OverwriteableFileConsumer after it had been closed.
656david-sarah@jacaranda.org**20100523233830
657 Ignore-this: 55d381064a15bd64381163341df4d09f
658] 
659[SFTP: log tracebacks for RAISEd exceptions.
660david-sarah@jacaranda.org**20100523221535
661 Ignore-this: c76a7852df099b358642f0631237cc89
662] 
663[Suppress 'integer argument expected, got float' DeprecationWarning everywhere
664david-sarah@jacaranda.org**20100523221157
665 Ignore-this: 80efd7e27798f5d2ad66c7a53e7048e5
666] 
667[SFTP: more logging to investigate behaviour of getAttrs(path).
668david-sarah@jacaranda.org**20100523204236
669 Ignore-this: e58fd35dc9015316e16a9f49f19bb469
670] 
671[SFTP: fix pyflakes warnings; drop 'noisy' versions of eventually_callback and eventually_errback; robustify conversion of exception messages to UTF-8.
672david-sarah@jacaranda.org**20100523140905
673 Ignore-this: 420196fc58646b05bbc9c3732b6eb314
674] 
675[SFTP: fixes and test cases for renaming of open files.
676david-sarah@jacaranda.org**20100523032549
677 Ignore-this: 32e0726be0fc89335f3035157e202c68
678] 
679[SFTP: Increase test_sftp timeout to cater for francois' ARM buildslave.
680david-sarah@jacaranda.org**20100522191639
681 Ignore-this: a5acf9660d304677048ab4dd72908ad8
682] 
683[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.
684david-sarah@jacaranda.org**20100522035836
685 Ignore-this: 8ef93a828e927cce2c23b805250b81a4
686] 
687[SFTP: relax pyasn1 version dependency to >= 0.0.8a.
688david-sarah@jacaranda.org**20100520181437
689 Ignore-this: 2c7b3dee7b7e14ba121d3118193a386a
690] 
691[SFTP tests: fix test_openDirectory_and_attrs that was failing in timezones west of UTC.
692david-sarah@jacaranda.org**20100520181027
693 Ignore-this: 9beaf602beef437c11c7e97f54ce2599
694] 
695[SFTP: allow getAttrs to succeed on a file that has been opened for creation but not yet uploaded or linked (part of #1050).
696david-sarah@jacaranda.org**20100520035613
697 Ignore-this: 2f59107d60d5476edac19361ccf6cf94
698] 
699[SFTP: improve logging so that results of requests are (usually) logged.
700david-sarah@jacaranda.org**20100520003652
701 Ignore-this: 3f59eeee374a3eba71db9be31d5a95
702] 
703[SFTP: add tests for more combinations of open flags.
704david-sarah@jacaranda.org**20100519053933
705 Ignore-this: b97ee351b1e8ecfecabac70698060665
706] 
707[SFTP: allow FXF_WRITE | FXF_TRUNC (#1050).
708david-sarah@jacaranda.org**20100519043240
709 Ignore-this: bd70009f11d07ac6e9fd0d1e3fa87a9b
710] 
711[SFTP: remove another case where we were logging data.
712david-sarah@jacaranda.org**20100519012713
713 Ignore-this: 83115daf3a90278fed0e3fc267607584
714] 
715[SFTP: avoid logging all data passed to callbacks.
716david-sarah@jacaranda.org**20100519000651
717 Ignore-this: ade6d69a473ada50acef6389fc7fdf69
718] 
719[SFTP: fixes related to reporting of permissions (needed for sshfs).
720david-sarah@jacaranda.org**20100518054521
721 Ignore-this: c51f8a5d0dc76b80d33ffef9b0541325
722] 
723[SFTP: change error code returned for ExistingChildError to FX_FAILURE (fixes gvfs with some picky programs such as gedit).
724david-sarah@jacaranda.org**20100518004205
725 Ignore-this: c194c2c9aaf3edba7af84b7413cec375
726] 
727[SFTP: fixed bugs that caused hangs during write (#1037).
728david-sarah@jacaranda.org**20100517044228
729 Ignore-this: b8b95e82c4057367388a1e6baada993b
730] 
731[SFTP: work around a probable bug in twisted.conch.ssh.session:loseConnection(). Also some minor error handling cleanups.
732david-sarah@jacaranda.org**20100517012606
733 Ignore-this: 5d3da7c4219cb0c14547e7fd70c74204
734] 
735[SFTP: add pyasn1 as dependency, needed if we are using Twisted >= 9.0.0.
736david-sarah@jacaranda.org**20100516193710
737 Ignore-this: 76fd92e8a950bb1983a90a09e89c54d3
738] 
739[SFTP: Support statvfs extensions, avoid logging actual data, and decline shell sessions politely.
740david-sarah@jacaranda.org**20100516154347
741 Ignore-this: 9d05d23ba77693c03a61accd348ccbe5
742] 
743[SFTP: fix error in SFTPUserHandler arguments introduced by execCommand patch.
744david-sarah@jacaranda.org**20100516014045
745 Ignore-this: f5ee494dc6ad6aa536cc8144bd2e3d19
746] 
747[SFTP: implement execCommand to interoperate with clients that issue a 'df -P -k /' command. Also eliminate use of Zope adaptation.
748david-sarah@jacaranda.org**20100516012754
749 Ignore-this: 2d0ed28b759f67f83875b1eaf5778992
750] 
751[sftpd.py: 'log.OPERATIONAL' should be just 'OPERATIONAL'.
752david-sarah@jacaranda.org**20100515155533
753 Ignore-this: f2347cb3301bbccc086356f6edc685
754] 
755[Attempt to fix #1040 by making SFTPUser implement ISession.
756david-sarah@jacaranda.org**20100515005719
757 Ignore-this: b3baaf088ba567e861e61e347195dfc4
758] 
759[Eliminate Windows newlines from sftpd.py.
760david-sarah@jacaranda.org**20100515005656
761 Ignore-this: cd54fd25beb957887514ae76e08c277
762] 
763[Update SFTP implementation and tests: fix #1038 and switch to foolscap logging; also some code reorganization.
764david-sarah@jacaranda.org**20100514043113
765 Ignore-this: 262f76d953dcd4317210789f2b2bf5da
766] 
767[Change shouldFail to avoid Unicode errors when converting Failure to str
768david-sarah@jacaranda.org**20100512060754
769 Ignore-this: 86ed419d332d9c33090aae2cde1dc5df
770] 
771[Tests for new SFTP implementation
772david-sarah@jacaranda.org**20100512060552
773 Ignore-this: 20308d4a59b3ebc868aad55ae0a7a981
774] 
775[New SFTP implementation: mutable files, read/write support, streaming download, Unicode filenames, and more
776david-sarah@jacaranda.org**20100512055407
777 Ignore-this: 906f51c48d974ba9cf360c27845c55eb
778] 
779[allmydata.org -> tahoe-lafs.org in __init__.py
780david-sarah@jacaranda.org**20100603063530
781 Ignore-this: f7d82331d5b4a3c4c0938023409335af
782] 
783[small change to CREDITS
784david-sarah@jacaranda.org**20100603062421
785 Ignore-this: 2909cdbedc19da5573dec810fc23243
786] 
787[Resolve conflict in patch to change imports to absolute.
788david-sarah@jacaranda.org**20100603054608
789 Ignore-this: 15aa1caa88e688ffa6dc53bed7dcca7d
790] 
791[Minor documentation tweaks.
792david-sarah@jacaranda.org**20100603054458
793 Ignore-this: e30ae407b0039dfa5b341d8f88e7f959
794] 
795[title_rename_xhtml.dpatch.txt
796freestorm77@gmail.com**20100529172542
797 Ignore-this: d2846afcc9ea72ac443a62ecc23d121b
798 
799 - Renamed xhtml Title from "Allmydata - Tahoe" to "Tahoe-LAFS"
800 - Renamed Tahoe to Tahoe-LAFS in page content
801 - Changed Tahoe-LAFS home page link to http://tahoe-lafs.org (added target="blank")
802 - Deleted commented css script in info.xhtml
803 
804 
805] 
806[tests: refactor test_web.py to have less duplication of literal caps-from-the-future
807zooko@zooko.com**20100519055146
808 Ignore-this: 49e5412e6cc4566ca67f069ffd850af6
809 This is a prelude to a patch which will add tests of caps from the future which have non-ascii chars in them.
810] 
811[doc_reformat_stats.txt
812freestorm77@gmail.com**20100424114615
813 Ignore-this: af315db5f7e3a17219ff8fb39bcfcd60
814 
815 
816    - Added heading format begining and ending by "=="
817    - Added Index
818    - Added Title
819           
820    Note: No change are made in paragraphs content
821 
822 
823 **END OF DESCRIPTION***
824 
825 Place the long patch description above the ***END OF DESCRIPTION*** marker.
826 The first line of this file will be the patch name.
827 
828 
829 This patch contains the following changes:
830 
831 M ./docs/stats.txt -2 +2
832] 
833[doc_reformat_performance.txt
834freestorm77@gmail.com**20100424114444
835 Ignore-this: 55295ff5cd8a5b67034eb661a5b0699d
836 
837    - Added heading format begining and ending by "=="
838    - Added Index
839    - Added Title
840         
841    Note: No change are made in paragraphs content
842 
843 
844] 
845[doc_refomat_logging.txt
846freestorm77@gmail.com**20100424114316
847 Ignore-this: 593f0f9914516bf1924dfa6eee74e35f
848 
849    - Added heading format begining and ending by "=="
850    - Added Index
851    - Added Title
852         
853    Note: No change are made in paragraphs content
854 
855] 
856[doc_reformat_known_issues.txt
857freestorm77@gmail.com**20100424114118
858 Ignore-this: 9577c3965d77b7ac18698988cfa06049
859 
860     - Added heading format begining and ending by "=="
861     - Added Index
862     - Added Title
863           
864     Note: No change are made in paragraphs content
865   
866 
867] 
868[doc_reformat_helper.txt
869freestorm77@gmail.com**20100424120649
870 Ignore-this: de2080d6152ae813b20514b9908e37fb
871 
872 
873    - Added heading format begining and ending by "=="
874    - Added Index
875    - Added Title
876             
877    Note: No change are made in paragraphs content
878 
879] 
880[doc_reformat_garbage-collection.txt
881freestorm77@gmail.com**20100424120830
882 Ignore-this: aad3e4c99670871b66467062483c977d
883 
884 
885    - Added heading format begining and ending by "=="
886    - Added Index
887    - Added Title
888             
889    Note: No change are made in paragraphs content
890 
891] 
892[doc_reformat_FTP-and-SFTP.txt
893freestorm77@gmail.com**20100424121334
894 Ignore-this: 3736b3d8f9a542a3521fbb566d44c7cf
895 
896 
897    - Added heading format begining and ending by "=="
898    - Added Index
899    - Added Title
900           
901    Note: No change are made in paragraphs content
902 
903] 
904[doc_reformat_debian.txt
905freestorm77@gmail.com**20100424120537
906 Ignore-this: 45fe4355bb869e55e683405070f47eff
907 
908 
909    - Added heading format begining and ending by "=="
910    - Added Index
911    - Added Title
912             
913    Note: No change are made in paragraphs content
914 
915] 
916[doc_reformat_configuration.txt
917freestorm77@gmail.com**20100424104903
918 Ignore-this: 4fbabc51b8122fec69ce5ad1672e79f2
919 
920 
921 - Added heading format begining and ending by "=="
922 - Added Index
923 - Added Title
924 
925 Note: No change are made in paragraphs content
926 
927] 
928[doc_reformat_CLI.txt
929freestorm77@gmail.com**20100424121512
930 Ignore-this: 2d3a59326810adcb20ea232cea405645
931 
932      - Added heading format begining and ending by "=="
933      - Added Index
934      - Added Title
935           
936      Note: No change are made in paragraphs content
937 
938] 
939[doc_reformat_backupdb.txt
940freestorm77@gmail.com**20100424120416
941 Ignore-this: fed696530e9d2215b6f5058acbedc3ab
942 
943 
944    - Added heading format begining and ending by "=="
945    - Added Index
946    - Added Title
947             
948    Note: No change are made in paragraphs content
949 
950] 
951[doc_reformat_architecture.txt
952freestorm77@gmail.com**20100424120133
953 Ignore-this: 6e2cab4635080369f2b8cadf7b2f58e
954 
955 
956     - Added heading format begining and ending by "=="
957     - Added Index
958     - Added Title
959             
960     Note: No change are made in paragraphs content
961 
962 
963] 
964[Correct harmless indentation errors found by pylint
965david-sarah@jacaranda.org**20100226052151
966 Ignore-this: 41335bce830700b18b80b6e00b45aef5
967] 
968[Change relative imports to absolute
969david-sarah@jacaranda.org**20100226071433
970 Ignore-this: 32e6ce1a86e2ffaaba1a37d9a1a5de0e
971] 
972[Document reason for the trialcoverage version requirement being 0.3.3.
973david-sarah@jacaranda.org**20100525004444
974 Ignore-this: 2f9f1df6882838b000c063068f258aec
975] 
976[Downgrade version requirement for trialcoverage to 0.3.3 (from 0.3.10), to avoid needing to compile coveragepy on Windows.
977david-sarah@jacaranda.org**20100524233707
978 Ignore-this: 9c397a374c8b8017e2244b8a686432a8
979] 
980[Suppress deprecation warning for twisted.web.error.NoResource when using Twisted >= 9.0.0.
981david-sarah@jacaranda.org**20100516205625
982 Ignore-this: 2361a3023cd3db86bde5e1af759ed01
983] 
984[docs: CREDITS for Jeremy Visser
985zooko@zooko.com**20100524081829
986 Ignore-this: d7c1465fd8d4e25b8d46d38a1793465b
987] 
988[test: show stdout and stderr in case of non-zero exit code from "tahoe" command
989zooko@zooko.com**20100524073348
990 Ignore-this: 695e81cd6683f4520229d108846cd551
991] 
992[setup: upgrade bundled zetuptoolz to zetuptoolz-0.6c15dev and make it unpacked and directly loaded by setup.py
993zooko@zooko.com**20100523205228
994 Ignore-this: 24fb32aaee3904115a93d1762f132c7
995 Also fix the relevant "make clean" target behavior.
996] 
997[setup: remove bundled zipfile egg of setuptools
998zooko@zooko.com**20100523205120
999 Ignore-this: c68b5f2635bb93d1c1fa7b613a026f9e
1000 We're about to replace it with bundled unpacked source code of setuptools, which is much nicer for debugging and evolving under revision control.
1001] 
1002[setup: remove bundled copy of setuptools_trial-0.5.2.tar
1003zooko@zooko.com**20100522221539
1004 Ignore-this: 140f90eb8fb751a509029c4b24afe647
1005 Hopefully it will get installed automatically as needed and we won't bundle it anymore.
1006] 
1007[setup: remove bundled setuptools_darcs-1.2.8.tar
1008zooko@zooko.com**20100522015333
1009 Ignore-this: 378b1964b513ae7fe22bae2d3478285d
1010 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.
1011] 
1012[tests: fix pyflakes warnings in bench_dirnode.py
1013zooko@zooko.com**20100521202511
1014 Ignore-this: f23d55b4ed05e52865032c65a15753c4
1015] 
1016[setup: if the string '--reporter=bwverbose-coverage' appears on sys.argv then you need trialcoverage
1017zooko@zooko.com**20100521122226
1018 Ignore-this: e760c45dcfb5a43c1dc1e8a27346bdc2
1019] 
1020[tests: don't let bench_dirnode.py do stuff and have side-effects at import time (unless __name__ == '__main__')
1021zooko@zooko.com**20100521122052
1022 Ignore-this: 96144a412250d9bbb5fccbf83b8753b8
1023] 
1024[tests: increase timeout to give François's ARM buildslave a chance to complete the tests
1025zooko@zooko.com**20100520134526
1026 Ignore-this: 3dd399fdc8b91149c82b52f955b50833
1027] 
1028[run_trial.darcspath
1029freestorm77@gmail.com**20100510232829
1030 Ignore-this: 5ebb4df74e9ea8a4bdb22b65373d1ff2
1031] 
1032[docs: line-wrap README.txt
1033zooko@zooko.com**20100518174240
1034 Ignore-this: 670a02d360df7de51ebdcf4fae752577
1035] 
1036[Hush pyflakes warnings
1037Kevan Carstensen <kevan@isnotajoke.com>**20100515184344
1038 Ignore-this: fd602c3bba115057770715c36a87b400
1039] 
1040[setup: new improved misc/show-tool-versions.py
1041zooko@zooko.com**20100516050122
1042 Ignore-this: ce9b1de1b35b07d733e6cf823b66335a
1043] 
1044[Improve code coverage of the Tahoe2PeerSelector tests.
1045Kevan Carstensen <kevan@isnotajoke.com>**20100515032913
1046 Ignore-this: 793151b63ffa65fdae6915db22d9924a
1047] 
1048[Remove a comment that no longer makes sense.
1049Kevan Carstensen <kevan@isnotajoke.com>**20100514203516
1050 Ignore-this: 956983c7e7c7e4477215494dfce8f058
1051] 
1052[docs: update docs/architecture.txt to more fully and correctly explain the upload procedure
1053zooko@zooko.com**20100514043458
1054 Ignore-this: 538b6ea256a49fed837500342092efa3
1055] 
1056[Fix up the behavior of #778, per reviewers' comments
1057Kevan Carstensen <kevan@isnotajoke.com>**20100514004917
1058 Ignore-this: 9c20b60716125278b5456e8feb396bff
1059 
1060   - Make some important utility functions clearer and more thoroughly
1061     documented.
1062   - Assert in upload.servers_of_happiness that the buckets attributes
1063     of PeerTrackers passed to it are mutually disjoint.
1064   - Get rid of some silly non-Pythonisms that I didn't see when I first
1065     wrote these patches.
1066   - Make sure that should_add_server returns true when queried about a
1067     shnum that it doesn't know about yet.
1068   - Change Tahoe2PeerSelector.preexisting_shares to map a shareid to a set
1069     of peerids, alter dependencies to deal with that.
1070   - Remove upload.should_add_servers, because it is no longer necessary
1071   - Move upload.shares_of_happiness and upload.shares_by_server to a utility
1072     file.
1073   - Change some points in Tahoe2PeerSelector.
1074   - Compute servers_of_happiness using a bipartite matching algorithm that
1075     we know is optimal instead of an ad-hoc greedy algorithm that isn't.
1076   - Change servers_of_happiness to just take a sharemap as an argument,
1077     change its callers to merge existing_shares and used_peers before
1078     calling it.
1079   - Change an error message in the encoder to be more appropriate for
1080     servers of happiness.
1081   - Clarify the wording of an error message in immutable/upload.py
1082   - Refactor a happiness failure message to happinessutil.py, and make
1083     immutable/upload.py and immutable/encode.py use it.
1084   - Move the word "only" as far to the right as possible in failure
1085     messages.
1086   - Use a better definition of progress during peer selection.
1087   - Do read-only peer share detection queries in parallel, not sequentially.
1088   - Clean up logging semantics; print the query statistics whenever an
1089     upload is unsuccessful, not just in one case.
1090 
1091] 
1092[Alter the error message when an upload fails, per some comments in #778.
1093Kevan Carstensen <kevan@isnotajoke.com>**20091230210344
1094 Ignore-this: ba97422b2f9737c46abeb828727beb1
1095 
1096 When I first implemented #778, I just altered the error messages to refer to
1097 servers where they referred to shares. The resulting error messages weren't
1098 very good. These are a bit better.
1099] 
1100[Change "UploadHappinessError" to "UploadUnhappinessError"
1101Kevan Carstensen <kevan@isnotajoke.com>**20091205043037
1102 Ignore-this: 236b64ab19836854af4993bb5c1b221a
1103] 
1104[Alter the error message returned when peer selection fails
1105Kevan Carstensen <kevan@isnotajoke.com>**20091123002405
1106 Ignore-this: b2a7dc163edcab8d9613bfd6907e5166
1107 
1108 The Tahoe2PeerSelector returned either NoSharesError or NotEnoughSharesError
1109 for a variety of error conditions that weren't informatively described by them.
1110 This patch creates a new error, UploadHappinessError, replaces uses of
1111 NoSharesError and NotEnoughSharesError with it, and alters the error message
1112 raised with the errors to be more in line with the new servers_of_happiness
1113 behavior. See ticket #834 for more information.
1114] 
1115[Eliminate overcounting iof servers_of_happiness in Tahoe2PeerSelector; also reorganize some things.
1116Kevan Carstensen <kevan@isnotajoke.com>**20091118014542
1117 Ignore-this: a6cb032cbff74f4f9d4238faebd99868
1118] 
1119[Change stray "shares_of_happiness" to "servers_of_happiness"
1120Kevan Carstensen <kevan@isnotajoke.com>**20091116212459
1121 Ignore-this: 1c971ba8c3c4d2e7ba9f020577b28b73
1122] 
1123[Alter Tahoe2PeerSelector to make sure that it recognizes existing shares on readonly servers, fixing an issue in #778
1124Kevan Carstensen <kevan@isnotajoke.com>**20091116192805
1125 Ignore-this: 15289f4d709e03851ed0587b286fd955
1126] 
1127[Alter 'immutable/encode.py' and 'immutable/upload.py' to use servers_of_happiness instead of shares_of_happiness.
1128Kevan Carstensen <kevan@isnotajoke.com>**20091104111222
1129 Ignore-this: abb3283314820a8bbf9b5d0cbfbb57c8
1130] 
1131[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.
1132Kevan Carstensen <kevan@isnotajoke.com>**20091104033241
1133 Ignore-this: b3a6649a8ac66431beca1026a31fed94
1134] 
1135[Alter CiphertextDownloader to work with servers_of_happiness
1136Kevan Carstensen <kevan@isnotajoke.com>**20090924041932
1137 Ignore-this: e81edccf0308c2d3bedbc4cf217da197
1138] 
1139[Revisions of the #778 tests, per reviewers' comments
1140Kevan Carstensen <kevan@isnotajoke.com>**20100514012542
1141 Ignore-this: 735bbc7f663dce633caeb3b66a53cf6e
1142 
1143 - Fix comments and confusing naming.
1144 - Add tests for the new error messages suggested by David-Sarah
1145   and Zooko.
1146 - Alter existing tests for new error messages.
1147 - Make sure that the tests continue to work with the trunk.
1148 - Add a test for a mutual disjointedness assertion that I added to
1149   upload.servers_of_happiness.
1150 - Fix the comments to correctly reflect read-onlyness
1151 - Add a test for an edge case in should_add_server
1152 - Add an assertion to make sure that share redistribution works as it
1153   should
1154 - Alter tests to work with revised servers_of_happiness semantics
1155 - Remove tests for should_add_server, since that function no longer exists.
1156 - Alter tests to know about merge_peers, and to use it before calling
1157   servers_of_happiness.
1158 - Add tests for merge_peers.
1159 - Add Zooko's puzzles to the tests.
1160 - Edit encoding tests to expect the new kind of failure message.
1161 - Edit tests to expect error messages with the word "only" moved as far
1162   to the right as possible.
1163 - Extended and cleaned up some helper functions.
1164 - Changed some tests to call more appropriate helper functions.
1165 - Added a test for the failing redistribution algorithm
1166 - Added a test for the progress message
1167 - Added a test for the upper bound on readonly peer share discovery.
1168 
1169] 
1170[Alter various unit tests to work with the new happy behavior
1171Kevan Carstensen <kevan@isnotajoke.com>**20100107181325
1172 Ignore-this: 132032bbf865e63a079f869b663be34a
1173] 
1174[Replace "UploadHappinessError" with "UploadUnhappinessError" in tests.
1175Kevan Carstensen <kevan@isnotajoke.com>**20091205043453
1176 Ignore-this: 83f4bc50c697d21b5f4e2a4cd91862ca
1177] 
1178[Add tests for the behavior described in #834.
1179Kevan Carstensen <kevan@isnotajoke.com>**20091123012008
1180 Ignore-this: d8e0aa0f3f7965ce9b5cea843c6d6f9f
1181] 
1182[Re-work 'test_upload.py' to be more readable; add more tests for #778
1183Kevan Carstensen <kevan@isnotajoke.com>**20091116192334
1184 Ignore-this: 7e8565f92fe51dece5ae28daf442d659
1185] 
1186[Test Tahoe2PeerSelector to make sure that it recognizeses existing shares on readonly servers
1187Kevan Carstensen <kevan@isnotajoke.com>**20091109003735
1188 Ignore-this: 12f9b4cff5752fca7ed32a6ebcff6446
1189] 
1190[Add more tests for comment:53 in ticket #778
1191Kevan Carstensen <kevan@isnotajoke.com>**20091104112849
1192 Ignore-this: 3bb2edd299a944cc9586e14d5d83ec8c
1193] 
1194[Add a test for upload.shares_by_server
1195Kevan Carstensen <kevan@isnotajoke.com>**20091104111324
1196 Ignore-this: f9802e82d6982a93e00f92e0b276f018
1197] 
1198[Minor tweak to an existing test -- make the first server read-write, instead of read-only
1199Kevan Carstensen <kevan@isnotajoke.com>**20091104034232
1200 Ignore-this: a951a46c93f7f58dd44d93d8623b2aee
1201] 
1202[Alter tests to use the new form of set_shareholders
1203Kevan Carstensen <kevan@isnotajoke.com>**20091104033602
1204 Ignore-this: 3deac11fc831618d11441317463ef830
1205] 
1206[Refactor some behavior into a mixin, and add tests for the behavior described in #778
1207"Kevan Carstensen" <kevan@isnotajoke.com>**20091030091908
1208 Ignore-this: a6f9797057ca135579b249af3b2b66ac
1209] 
1210[Alter NoNetworkGrid to allow the creation of readonly servers for testing purposes.
1211Kevan Carstensen <kevan@isnotajoke.com>**20091018013013
1212 Ignore-this: e12cd7c4ddeb65305c5a7e08df57c754
1213] 
1214[Update 'docs/architecture.txt' to reflect readonly share discovery
1215kevan@isnotajoke.com**20100514003852
1216 Ignore-this: 7ead71b34df3b1ecfdcfd3cb2882e4f9
1217] 
1218[Alter the wording in docs/architecture.txt to more accurately describe the servers_of_happiness behavior.
1219Kevan Carstensen <kevan@isnotajoke.com>**20100428002455
1220 Ignore-this: 6eff7fa756858a1c6f73728d989544cc
1221] 
1222[Alter wording in 'interfaces.py' to be correct wrt #778
1223"Kevan Carstensen" <kevan@isnotajoke.com>**20091205034005
1224 Ignore-this: c9913c700ac14e7a63569458b06980e0
1225] 
1226[Update 'docs/configuration.txt' to reflect the servers_of_happiness behavior.
1227Kevan Carstensen <kevan@isnotajoke.com>**20091205033813
1228 Ignore-this: 5e1cb171f8239bfb5b565d73c75ac2b8
1229] 
1230[Clarify quickstart instructions for installing pywin32
1231david-sarah@jacaranda.org**20100511180300
1232 Ignore-this: d4668359673600d2acbc7cd8dd44b93c
1233] 
1234[web: add a simple test that you can load directory.xhtml
1235zooko@zooko.com**20100510063729
1236 Ignore-this: e49b25fa3c67b3c7a56c8b1ae01bb463
1237] 
1238[setup: fix typos in misc/show-tool-versions.py
1239zooko@zooko.com**20100510063615
1240 Ignore-this: 2181b1303a0e288e7a9ebd4c4855628
1241] 
1242[setup: show code-coverage tool versions in show-tools-versions.py
1243zooko@zooko.com**20100510062955
1244 Ignore-this: 4b4c68eb3780b762c8dbbd22b39df7cf
1245] 
1246[docs: update README, mv it to README.txt, update setup.py
1247zooko@zooko.com**20100504094340
1248 Ignore-this: 40e28ca36c299ea1fd12d3b91e5b421c
1249] 
1250[Dependency on Windmill test framework is not needed yet.
1251david-sarah@jacaranda.org**20100504161043
1252 Ignore-this: be088712bec650d4ef24766c0026ebc8
1253] 
1254[tests: pass z to tar so that BSD tar will know to ungzip
1255zooko@zooko.com**20100504090628
1256 Ignore-this: 1339e493f255e8fc0b01b70478f23a09
1257] 
1258[setup: update comments and URLs in setup.cfg
1259zooko@zooko.com**20100504061653
1260 Ignore-this: f97692807c74bcab56d33100c899f829
1261] 
1262[setup: reorder and extend the show-tool-versions script, the better to glean information about our new buildslaves
1263zooko@zooko.com**20100504045643
1264 Ignore-this: 836084b56b8d4ee8f1de1f4efb706d36
1265] 
1266[CLI: Support for https url in option --node-url
1267Francois Deppierraz <francois@ctrlaltdel.ch>**20100430185609
1268 Ignore-this: 1717176b4d27c877e6bc67a944d9bf34
1269 
1270 This patch modifies the regular expression used for verifying of '--node-url'
1271 parameter.  Support for accessing a Tahoe gateway over HTTPS was already
1272 present, thanks to Python's urllib.
1273 
1274] 
1275[backupdb.did_create_directory: use REPLACE INTO, not INSERT INTO + ignore error
1276Brian Warner <warner@lothar.com>**20100428050803
1277 Ignore-this: 1fca7b8f364a21ae413be8767161e32f
1278 
1279 This handles the case where we upload a new tahoe directory for a
1280 previously-processed local directory, possibly creating a new dircap (if the
1281 metadata had changed). Now we replace the old dirhash->dircap record. The
1282 previous behavior left the old record in place (with the old dircap and
1283 timestamps), so we'd never stop creating new directories and never converge
1284 on a null backup.
1285] 
1286["tahoe webopen": add --info flag, to get ?t=info
1287Brian Warner <warner@lothar.com>**20100424233003
1288 Ignore-this: 126b0bb6db340fabacb623d295eb45fa
1289 
1290 Also fix some trailing whitespace.
1291] 
1292[docs: install.html http-equiv refresh to quickstart.html
1293zooko@zooko.com**20100421165708
1294 Ignore-this: 52b4b619f9dde5886ae2cd7f1f3b734b
1295] 
1296[docs: install.html -> quickstart.html
1297zooko@zooko.com**20100421155757
1298 Ignore-this: 6084e203909306bed93efb09d0e6181d
1299 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".
1300] 
1301[Fix another typo in tahoe_storagespace munin plugin
1302david-sarah@jacaranda.org**20100416220935
1303 Ignore-this: ad1f7aa66b554174f91dfb2b7a3ea5f3
1304] 
1305[Add dependency on windmill >= 1.3
1306david-sarah@jacaranda.org**20100416190404
1307 Ignore-this: 4437a7a464e92d6c9012926b18676211
1308] 
1309[licensing: phrase the OpenSSL-exemption in the vocabulary of copyright instead of computer technology, and replicate the exemption from the GPL to the TGPPL
1310zooko@zooko.com**20100414232521
1311 Ignore-this: a5494b2f582a295544c6cad3f245e91
1312] 
1313[munin-tahoe_storagespace
1314freestorm77@gmail.com**20100221203626
1315 Ignore-this: 14d6d6a587afe1f8883152bf2e46b4aa
1316 
1317 Plugin configuration rename
1318 
1319] 
1320[setup: add licensing declaration for setuptools (noticed by the FSF compliance folks)
1321zooko@zooko.com**20100309184415
1322 Ignore-this: 2dfa7d812d65fec7c72ddbf0de609ccb
1323] 
1324[setup: fix error in licensing declaration from Shawn Willden, as noted by the FSF compliance division
1325zooko@zooko.com**20100309163736
1326 Ignore-this: c0623d27e469799d86cabf67921a13f8
1327] 
1328[CREDITS to Jacob Appelbaum
1329zooko@zooko.com**20100304015616
1330 Ignore-this: 70db493abbc23968fcc8db93f386ea54
1331] 
1332[desert-island-build-with-proper-versions
1333jacob@appelbaum.net**20100304013858] 
1334[docs: a few small edits to try to guide newcomers through the docs
1335zooko@zooko.com**20100303231902
1336 Ignore-this: a6aab44f5bf5ad97ea73e6976bc4042d
1337 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.
1338] 
1339[TAG allmydata-tahoe-1.6.1
1340david-sarah@jacaranda.org**20100228062314
1341 Ignore-this: eb5f03ada8ea953ee7780e7fe068539
1342] 
1343Patch bundle hash:
1344301c4d38325338ff40f3b7a6d5e9177765eda015