Merge lp:~aturriff/boots/boots-apidoc into lp:boots

Proposed by Andreas Turriff
Status: Merged
Merge reported by: Max Goodhart
Merged at revision: not available
Proposed branch: lp:~aturriff/boots/boots-apidoc
Merge into: lp:boots
Diff against target: 2145 lines (+971/-616) (has conflicts)
29 files modified
COPYING (+674/-0)
LICENSE (+0/-470)
boots.py (+4/-5)
boots/api/api.py (+21/-9)
boots/api/errors.py (+8/-6)
boots/api/nodes/node.py (+165/-7)
boots/app/client_config.py (+4/-5)
boots/app/info.py (+4/-5)
boots/lib/console.py (+8/-7)
boots/lib/hook.py (+5/-6)
boots/lib/lingos/bash_external.py (+4/-5)
boots/lib/lingos/external.py (+4/-5)
boots/lib/lingos/lingo.py (+4/-5)
boots/lib/lingos/lisp/builtins.py (+4/-5)
boots/lib/lingos/lisp/lexer.py (+4/-5)
boots/lib/lingos/lisp/lisp.py (+4/-5)
boots/lib/lingos/lisp/objects.py (+4/-5)
boots/lib/lingos/lisp/parser.py (+4/-5)
boots/lib/lingos/piped_sql.py (+4/-5)
boots/lib/lingos/python.py (+4/-5)
boots/lib/lingos/sql.py (+4/-5)
boots/lib/ui/components/metacommands.py (+4/-5)
boots/lib/ui/generic.py (+4/-5)
boots/lib/ui/plain.py (+4/-5)
setup.py (+6/-6)
tests/boots/api/nodes/node_tests.py (+4/-5)
tests/boots/boots_unit_test.py (+4/-5)
tests/boots/lib/lingos/lingo_tests.py (+4/-5)
tests/boots/tests.py (+4/-5)
Text conflict in boots/api/errors.py
To merge this branch: bzr merge lp:~aturriff/boots/boots-apidoc
Reviewer Review Type Date Requested Status
Max Goodhart Approve
Review via email: mp+20087@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Andreas Turriff (aturriff) wrote :

Apidocs, proper error on exit from script/parameter command failure.

Revision history for this message
Max Goodhart (chromakode) wrote :

I've merged the documentation changes.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added file 'COPYING'
2--- COPYING 1970-01-01 00:00:00 +0000
3+++ COPYING 2010-02-24 20:39:13 +0000
4@@ -0,0 +1,674 @@
5+ GNU GENERAL PUBLIC LICENSE
6+ Version 3, 29 June 2007
7+
8+ Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
9+ Everyone is permitted to copy and distribute verbatim copies
10+ of this license document, but changing it is not allowed.
11+
12+ Preamble
13+
14+ The GNU General Public License is a free, copyleft license for
15+software and other kinds of works.
16+
17+ The licenses for most software and other practical works are designed
18+to take away your freedom to share and change the works. By contrast,
19+the GNU General Public License is intended to guarantee your freedom to
20+share and change all versions of a program--to make sure it remains free
21+software for all its users. We, the Free Software Foundation, use the
22+GNU General Public License for most of our software; it applies also to
23+any other work released this way by its authors. You can apply it to
24+your programs, too.
25+
26+ When we speak of free software, we are referring to freedom, not
27+price. Our General Public Licenses are designed to make sure that you
28+have the freedom to distribute copies of free software (and charge for
29+them if you wish), that you receive source code or can get it if you
30+want it, that you can change the software or use pieces of it in new
31+free programs, and that you know you can do these things.
32+
33+ To protect your rights, we need to prevent others from denying you
34+these rights or asking you to surrender the rights. Therefore, you have
35+certain responsibilities if you distribute copies of the software, or if
36+you modify it: responsibilities to respect the freedom of others.
37+
38+ For example, if you distribute copies of such a program, whether
39+gratis or for a fee, you must pass on to the recipients the same
40+freedoms that you received. You must make sure that they, too, receive
41+or can get the source code. And you must show them these terms so they
42+know their rights.
43+
44+ Developers that use the GNU GPL protect your rights with two steps:
45+(1) assert copyright on the software, and (2) offer you this License
46+giving you legal permission to copy, distribute and/or modify it.
47+
48+ For the developers' and authors' protection, the GPL clearly explains
49+that there is no warranty for this free software. For both users' and
50+authors' sake, the GPL requires that modified versions be marked as
51+changed, so that their problems will not be attributed erroneously to
52+authors of previous versions.
53+
54+ Some devices are designed to deny users access to install or run
55+modified versions of the software inside them, although the manufacturer
56+can do so. This is fundamentally incompatible with the aim of
57+protecting users' freedom to change the software. The systematic
58+pattern of such abuse occurs in the area of products for individuals to
59+use, which is precisely where it is most unacceptable. Therefore, we
60+have designed this version of the GPL to prohibit the practice for those
61+products. If such problems arise substantially in other domains, we
62+stand ready to extend this provision to those domains in future versions
63+of the GPL, as needed to protect the freedom of users.
64+
65+ Finally, every program is threatened constantly by software patents.
66+States should not allow patents to restrict development and use of
67+software on general-purpose computers, but in those that do, we wish to
68+avoid the special danger that patents applied to a free program could
69+make it effectively proprietary. To prevent this, the GPL assures that
70+patents cannot be used to render the program non-free.
71+
72+ The precise terms and conditions for copying, distribution and
73+modification follow.
74+
75+ TERMS AND CONDITIONS
76+
77+ 0. Definitions.
78+
79+ "This License" refers to version 3 of the GNU General Public License.
80+
81+ "Copyright" also means copyright-like laws that apply to other kinds of
82+works, such as semiconductor masks.
83+
84+ "The Program" refers to any copyrightable work licensed under this
85+License. Each licensee is addressed as "you". "Licensees" and
86+"recipients" may be individuals or organizations.
87+
88+ To "modify" a work means to copy from or adapt all or part of the work
89+in a fashion requiring copyright permission, other than the making of an
90+exact copy. The resulting work is called a "modified version" of the
91+earlier work or a work "based on" the earlier work.
92+
93+ A "covered work" means either the unmodified Program or a work based
94+on the Program.
95+
96+ To "propagate" a work means to do anything with it that, without
97+permission, would make you directly or secondarily liable for
98+infringement under applicable copyright law, except executing it on a
99+computer or modifying a private copy. Propagation includes copying,
100+distribution (with or without modification), making available to the
101+public, and in some countries other activities as well.
102+
103+ To "convey" a work means any kind of propagation that enables other
104+parties to make or receive copies. Mere interaction with a user through
105+a computer network, with no transfer of a copy, is not conveying.
106+
107+ An interactive user interface displays "Appropriate Legal Notices"
108+to the extent that it includes a convenient and prominently visible
109+feature that (1) displays an appropriate copyright notice, and (2)
110+tells the user that there is no warranty for the work (except to the
111+extent that warranties are provided), that licensees may convey the
112+work under this License, and how to view a copy of this License. If
113+the interface presents a list of user commands or options, such as a
114+menu, a prominent item in the list meets this criterion.
115+
116+ 1. Source Code.
117+
118+ The "source code" for a work means the preferred form of the work
119+for making modifications to it. "Object code" means any non-source
120+form of a work.
121+
122+ A "Standard Interface" means an interface that either is an official
123+standard defined by a recognized standards body, or, in the case of
124+interfaces specified for a particular programming language, one that
125+is widely used among developers working in that language.
126+
127+ The "System Libraries" of an executable work include anything, other
128+than the work as a whole, that (a) is included in the normal form of
129+packaging a Major Component, but which is not part of that Major
130+Component, and (b) serves only to enable use of the work with that
131+Major Component, or to implement a Standard Interface for which an
132+implementation is available to the public in source code form. A
133+"Major Component", in this context, means a major essential component
134+(kernel, window system, and so on) of the specific operating system
135+(if any) on which the executable work runs, or a compiler used to
136+produce the work, or an object code interpreter used to run it.
137+
138+ The "Corresponding Source" for a work in object code form means all
139+the source code needed to generate, install, and (for an executable
140+work) run the object code and to modify the work, including scripts to
141+control those activities. However, it does not include the work's
142+System Libraries, or general-purpose tools or generally available free
143+programs which are used unmodified in performing those activities but
144+which are not part of the work. For example, Corresponding Source
145+includes interface definition files associated with source files for
146+the work, and the source code for shared libraries and dynamically
147+linked subprograms that the work is specifically designed to require,
148+such as by intimate data communication or control flow between those
149+subprograms and other parts of the work.
150+
151+ The Corresponding Source need not include anything that users
152+can regenerate automatically from other parts of the Corresponding
153+Source.
154+
155+ The Corresponding Source for a work in source code form is that
156+same work.
157+
158+ 2. Basic Permissions.
159+
160+ All rights granted under this License are granted for the term of
161+copyright on the Program, and are irrevocable provided the stated
162+conditions are met. This License explicitly affirms your unlimited
163+permission to run the unmodified Program. The output from running a
164+covered work is covered by this License only if the output, given its
165+content, constitutes a covered work. This License acknowledges your
166+rights of fair use or other equivalent, as provided by copyright law.
167+
168+ You may make, run and propagate covered works that you do not
169+convey, without conditions so long as your license otherwise remains
170+in force. You may convey covered works to others for the sole purpose
171+of having them make modifications exclusively for you, or provide you
172+with facilities for running those works, provided that you comply with
173+the terms of this License in conveying all material for which you do
174+not control copyright. Those thus making or running the covered works
175+for you must do so exclusively on your behalf, under your direction
176+and control, on terms that prohibit them from making any copies of
177+your copyrighted material outside their relationship with you.
178+
179+ Conveying under any other circumstances is permitted solely under
180+the conditions stated below. Sublicensing is not allowed; section 10
181+makes it unnecessary.
182+
183+ 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
184+
185+ No covered work shall be deemed part of an effective technological
186+measure under any applicable law fulfilling obligations under article
187+11 of the WIPO copyright treaty adopted on 20 December 1996, or
188+similar laws prohibiting or restricting circumvention of such
189+measures.
190+
191+ When you convey a covered work, you waive any legal power to forbid
192+circumvention of technological measures to the extent such circumvention
193+is effected by exercising rights under this License with respect to
194+the covered work, and you disclaim any intention to limit operation or
195+modification of the work as a means of enforcing, against the work's
196+users, your or third parties' legal rights to forbid circumvention of
197+technological measures.
198+
199+ 4. Conveying Verbatim Copies.
200+
201+ You may convey verbatim copies of the Program's source code as you
202+receive it, in any medium, provided that you conspicuously and
203+appropriately publish on each copy an appropriate copyright notice;
204+keep intact all notices stating that this License and any
205+non-permissive terms added in accord with section 7 apply to the code;
206+keep intact all notices of the absence of any warranty; and give all
207+recipients a copy of this License along with the Program.
208+
209+ You may charge any price or no price for each copy that you convey,
210+and you may offer support or warranty protection for a fee.
211+
212+ 5. Conveying Modified Source Versions.
213+
214+ You may convey a work based on the Program, or the modifications to
215+produce it from the Program, in the form of source code under the
216+terms of section 4, provided that you also meet all of these conditions:
217+
218+ a) The work must carry prominent notices stating that you modified
219+ it, and giving a relevant date.
220+
221+ b) The work must carry prominent notices stating that it is
222+ released under this License and any conditions added under section
223+ 7. This requirement modifies the requirement in section 4 to
224+ "keep intact all notices".
225+
226+ c) You must license the entire work, as a whole, under this
227+ License to anyone who comes into possession of a copy. This
228+ License will therefore apply, along with any applicable section 7
229+ additional terms, to the whole of the work, and all its parts,
230+ regardless of how they are packaged. This License gives no
231+ permission to license the work in any other way, but it does not
232+ invalidate such permission if you have separately received it.
233+
234+ d) If the work has interactive user interfaces, each must display
235+ Appropriate Legal Notices; however, if the Program has interactive
236+ interfaces that do not display Appropriate Legal Notices, your
237+ work need not make them do so.
238+
239+ A compilation of a covered work with other separate and independent
240+works, which are not by their nature extensions of the covered work,
241+and which are not combined with it such as to form a larger program,
242+in or on a volume of a storage or distribution medium, is called an
243+"aggregate" if the compilation and its resulting copyright are not
244+used to limit the access or legal rights of the compilation's users
245+beyond what the individual works permit. Inclusion of a covered work
246+in an aggregate does not cause this License to apply to the other
247+parts of the aggregate.
248+
249+ 6. Conveying Non-Source Forms.
250+
251+ You may convey a covered work in object code form under the terms
252+of sections 4 and 5, provided that you also convey the
253+machine-readable Corresponding Source under the terms of this License,
254+in one of these ways:
255+
256+ a) Convey the object code in, or embodied in, a physical product
257+ (including a physical distribution medium), accompanied by the
258+ Corresponding Source fixed on a durable physical medium
259+ customarily used for software interchange.
260+
261+ b) Convey the object code in, or embodied in, a physical product
262+ (including a physical distribution medium), accompanied by a
263+ written offer, valid for at least three years and valid for as
264+ long as you offer spare parts or customer support for that product
265+ model, to give anyone who possesses the object code either (1) a
266+ copy of the Corresponding Source for all the software in the
267+ product that is covered by this License, on a durable physical
268+ medium customarily used for software interchange, for a price no
269+ more than your reasonable cost of physically performing this
270+ conveying of source, or (2) access to copy the
271+ Corresponding Source from a network server at no charge.
272+
273+ c) Convey individual copies of the object code with a copy of the
274+ written offer to provide the Corresponding Source. This
275+ alternative is allowed only occasionally and noncommercially, and
276+ only if you received the object code with such an offer, in accord
277+ with subsection 6b.
278+
279+ d) Convey the object code by offering access from a designated
280+ place (gratis or for a charge), and offer equivalent access to the
281+ Corresponding Source in the same way through the same place at no
282+ further charge. You need not require recipients to copy the
283+ Corresponding Source along with the object code. If the place to
284+ copy the object code is a network server, the Corresponding Source
285+ may be on a different server (operated by you or a third party)
286+ that supports equivalent copying facilities, provided you maintain
287+ clear directions next to the object code saying where to find the
288+ Corresponding Source. Regardless of what server hosts the
289+ Corresponding Source, you remain obligated to ensure that it is
290+ available for as long as needed to satisfy these requirements.
291+
292+ e) Convey the object code using peer-to-peer transmission, provided
293+ you inform other peers where the object code and Corresponding
294+ Source of the work are being offered to the general public at no
295+ charge under subsection 6d.
296+
297+ A separable portion of the object code, whose source code is excluded
298+from the Corresponding Source as a System Library, need not be
299+included in conveying the object code work.
300+
301+ A "User Product" is either (1) a "consumer product", which means any
302+tangible personal property which is normally used for personal, family,
303+or household purposes, or (2) anything designed or sold for incorporation
304+into a dwelling. In determining whether a product is a consumer product,
305+doubtful cases shall be resolved in favor of coverage. For a particular
306+product received by a particular user, "normally used" refers to a
307+typical or common use of that class of product, regardless of the status
308+of the particular user or of the way in which the particular user
309+actually uses, or expects or is expected to use, the product. A product
310+is a consumer product regardless of whether the product has substantial
311+commercial, industrial or non-consumer uses, unless such uses represent
312+the only significant mode of use of the product.
313+
314+ "Installation Information" for a User Product means any methods,
315+procedures, authorization keys, or other information required to install
316+and execute modified versions of a covered work in that User Product from
317+a modified version of its Corresponding Source. The information must
318+suffice to ensure that the continued functioning of the modified object
319+code is in no case prevented or interfered with solely because
320+modification has been made.
321+
322+ If you convey an object code work under this section in, or with, or
323+specifically for use in, a User Product, and the conveying occurs as
324+part of a transaction in which the right of possession and use of the
325+User Product is transferred to the recipient in perpetuity or for a
326+fixed term (regardless of how the transaction is characterized), the
327+Corresponding Source conveyed under this section must be accompanied
328+by the Installation Information. But this requirement does not apply
329+if neither you nor any third party retains the ability to install
330+modified object code on the User Product (for example, the work has
331+been installed in ROM).
332+
333+ The requirement to provide Installation Information does not include a
334+requirement to continue to provide support service, warranty, or updates
335+for a work that has been modified or installed by the recipient, or for
336+the User Product in which it has been modified or installed. Access to a
337+network may be denied when the modification itself materially and
338+adversely affects the operation of the network or violates the rules and
339+protocols for communication across the network.
340+
341+ Corresponding Source conveyed, and Installation Information provided,
342+in accord with this section must be in a format that is publicly
343+documented (and with an implementation available to the public in
344+source code form), and must require no special password or key for
345+unpacking, reading or copying.
346+
347+ 7. Additional Terms.
348+
349+ "Additional permissions" are terms that supplement the terms of this
350+License by making exceptions from one or more of its conditions.
351+Additional permissions that are applicable to the entire Program shall
352+be treated as though they were included in this License, to the extent
353+that they are valid under applicable law. If additional permissions
354+apply only to part of the Program, that part may be used separately
355+under those permissions, but the entire Program remains governed by
356+this License without regard to the additional permissions.
357+
358+ When you convey a copy of a covered work, you may at your option
359+remove any additional permissions from that copy, or from any part of
360+it. (Additional permissions may be written to require their own
361+removal in certain cases when you modify the work.) You may place
362+additional permissions on material, added by you to a covered work,
363+for which you have or can give appropriate copyright permission.
364+
365+ Notwithstanding any other provision of this License, for material you
366+add to a covered work, you may (if authorized by the copyright holders of
367+that material) supplement the terms of this License with terms:
368+
369+ a) Disclaiming warranty or limiting liability differently from the
370+ terms of sections 15 and 16 of this License; or
371+
372+ b) Requiring preservation of specified reasonable legal notices or
373+ author attributions in that material or in the Appropriate Legal
374+ Notices displayed by works containing it; or
375+
376+ c) Prohibiting misrepresentation of the origin of that material, or
377+ requiring that modified versions of such material be marked in
378+ reasonable ways as different from the original version; or
379+
380+ d) Limiting the use for publicity purposes of names of licensors or
381+ authors of the material; or
382+
383+ e) Declining to grant rights under trademark law for use of some
384+ trade names, trademarks, or service marks; or
385+
386+ f) Requiring indemnification of licensors and authors of that
387+ material by anyone who conveys the material (or modified versions of
388+ it) with contractual assumptions of liability to the recipient, for
389+ any liability that these contractual assumptions directly impose on
390+ those licensors and authors.
391+
392+ All other non-permissive additional terms are considered "further
393+restrictions" within the meaning of section 10. If the Program as you
394+received it, or any part of it, contains a notice stating that it is
395+governed by this License along with a term that is a further
396+restriction, you may remove that term. If a license document contains
397+a further restriction but permits relicensing or conveying under this
398+License, you may add to a covered work material governed by the terms
399+of that license document, provided that the further restriction does
400+not survive such relicensing or conveying.
401+
402+ If you add terms to a covered work in accord with this section, you
403+must place, in the relevant source files, a statement of the
404+additional terms that apply to those files, or a notice indicating
405+where to find the applicable terms.
406+
407+ Additional terms, permissive or non-permissive, may be stated in the
408+form of a separately written license, or stated as exceptions;
409+the above requirements apply either way.
410+
411+ 8. Termination.
412+
413+ You may not propagate or modify a covered work except as expressly
414+provided under this License. Any attempt otherwise to propagate or
415+modify it is void, and will automatically terminate your rights under
416+this License (including any patent licenses granted under the third
417+paragraph of section 11).
418+
419+ However, if you cease all violation of this License, then your
420+license from a particular copyright holder is reinstated (a)
421+provisionally, unless and until the copyright holder explicitly and
422+finally terminates your license, and (b) permanently, if the copyright
423+holder fails to notify you of the violation by some reasonable means
424+prior to 60 days after the cessation.
425+
426+ Moreover, your license from a particular copyright holder is
427+reinstated permanently if the copyright holder notifies you of the
428+violation by some reasonable means, this is the first time you have
429+received notice of violation of this License (for any work) from that
430+copyright holder, and you cure the violation prior to 30 days after
431+your receipt of the notice.
432+
433+ Termination of your rights under this section does not terminate the
434+licenses of parties who have received copies or rights from you under
435+this License. If your rights have been terminated and not permanently
436+reinstated, you do not qualify to receive new licenses for the same
437+material under section 10.
438+
439+ 9. Acceptance Not Required for Having Copies.
440+
441+ You are not required to accept this License in order to receive or
442+run a copy of the Program. Ancillary propagation of a covered work
443+occurring solely as a consequence of using peer-to-peer transmission
444+to receive a copy likewise does not require acceptance. However,
445+nothing other than this License grants you permission to propagate or
446+modify any covered work. These actions infringe copyright if you do
447+not accept this License. Therefore, by modifying or propagating a
448+covered work, you indicate your acceptance of this License to do so.
449+
450+ 10. Automatic Licensing of Downstream Recipients.
451+
452+ Each time you convey a covered work, the recipient automatically
453+receives a license from the original licensors, to run, modify and
454+propagate that work, subject to this License. You are not responsible
455+for enforcing compliance by third parties with this License.
456+
457+ An "entity transaction" is a transaction transferring control of an
458+organization, or substantially all assets of one, or subdividing an
459+organization, or merging organizations. If propagation of a covered
460+work results from an entity transaction, each party to that
461+transaction who receives a copy of the work also receives whatever
462+licenses to the work the party's predecessor in interest had or could
463+give under the previous paragraph, plus a right to possession of the
464+Corresponding Source of the work from the predecessor in interest, if
465+the predecessor has it or can get it with reasonable efforts.
466+
467+ You may not impose any further restrictions on the exercise of the
468+rights granted or affirmed under this License. For example, you may
469+not impose a license fee, royalty, or other charge for exercise of
470+rights granted under this License, and you may not initiate litigation
471+(including a cross-claim or counterclaim in a lawsuit) alleging that
472+any patent claim is infringed by making, using, selling, offering for
473+sale, or importing the Program or any portion of it.
474+
475+ 11. Patents.
476+
477+ A "contributor" is a copyright holder who authorizes use under this
478+License of the Program or a work on which the Program is based. The
479+work thus licensed is called the contributor's "contributor version".
480+
481+ A contributor's "essential patent claims" are all patent claims
482+owned or controlled by the contributor, whether already acquired or
483+hereafter acquired, that would be infringed by some manner, permitted
484+by this License, of making, using, or selling its contributor version,
485+but do not include claims that would be infringed only as a
486+consequence of further modification of the contributor version. For
487+purposes of this definition, "control" includes the right to grant
488+patent sublicenses in a manner consistent with the requirements of
489+this License.
490+
491+ Each contributor grants you a non-exclusive, worldwide, royalty-free
492+patent license under the contributor's essential patent claims, to
493+make, use, sell, offer for sale, import and otherwise run, modify and
494+propagate the contents of its contributor version.
495+
496+ In the following three paragraphs, a "patent license" is any express
497+agreement or commitment, however denominated, not to enforce a patent
498+(such as an express permission to practice a patent or covenant not to
499+sue for patent infringement). To "grant" such a patent license to a
500+party means to make such an agreement or commitment not to enforce a
501+patent against the party.
502+
503+ If you convey a covered work, knowingly relying on a patent license,
504+and the Corresponding Source of the work is not available for anyone
505+to copy, free of charge and under the terms of this License, through a
506+publicly available network server or other readily accessible means,
507+then you must either (1) cause the Corresponding Source to be so
508+available, or (2) arrange to deprive yourself of the benefit of the
509+patent license for this particular work, or (3) arrange, in a manner
510+consistent with the requirements of this License, to extend the patent
511+license to downstream recipients. "Knowingly relying" means you have
512+actual knowledge that, but for the patent license, your conveying the
513+covered work in a country, or your recipient's use of the covered work
514+in a country, would infringe one or more identifiable patents in that
515+country that you have reason to believe are valid.
516+
517+ If, pursuant to or in connection with a single transaction or
518+arrangement, you convey, or propagate by procuring conveyance of, a
519+covered work, and grant a patent license to some of the parties
520+receiving the covered work authorizing them to use, propagate, modify
521+or convey a specific copy of the covered work, then the patent license
522+you grant is automatically extended to all recipients of the covered
523+work and works based on it.
524+
525+ A patent license is "discriminatory" if it does not include within
526+the scope of its coverage, prohibits the exercise of, or is
527+conditioned on the non-exercise of one or more of the rights that are
528+specifically granted under this License. You may not convey a covered
529+work if you are a party to an arrangement with a third party that is
530+in the business of distributing software, under which you make payment
531+to the third party based on the extent of your activity of conveying
532+the work, and under which the third party grants, to any of the
533+parties who would receive the covered work from you, a discriminatory
534+patent license (a) in connection with copies of the covered work
535+conveyed by you (or copies made from those copies), or (b) primarily
536+for and in connection with specific products or compilations that
537+contain the covered work, unless you entered into that arrangement,
538+or that patent license was granted, prior to 28 March 2007.
539+
540+ Nothing in this License shall be construed as excluding or limiting
541+any implied license or other defenses to infringement that may
542+otherwise be available to you under applicable patent law.
543+
544+ 12. No Surrender of Others' Freedom.
545+
546+ If conditions are imposed on you (whether by court order, agreement or
547+otherwise) that contradict the conditions of this License, they do not
548+excuse you from the conditions of this License. If you cannot convey a
549+covered work so as to satisfy simultaneously your obligations under this
550+License and any other pertinent obligations, then as a consequence you may
551+not convey it at all. For example, if you agree to terms that obligate you
552+to collect a royalty for further conveying from those to whom you convey
553+the Program, the only way you could satisfy both those terms and this
554+License would be to refrain entirely from conveying the Program.
555+
556+ 13. Use with the GNU Affero General Public License.
557+
558+ Notwithstanding any other provision of this License, you have
559+permission to link or combine any covered work with a work licensed
560+under version 3 of the GNU Affero General Public License into a single
561+combined work, and to convey the resulting work. The terms of this
562+License will continue to apply to the part which is the covered work,
563+but the special requirements of the GNU Affero General Public License,
564+section 13, concerning interaction through a network will apply to the
565+combination as such.
566+
567+ 14. Revised Versions of this License.
568+
569+ The Free Software Foundation may publish revised and/or new versions of
570+the GNU General Public License from time to time. Such new versions will
571+be similar in spirit to the present version, but may differ in detail to
572+address new problems or concerns.
573+
574+ Each version is given a distinguishing version number. If the
575+Program specifies that a certain numbered version of the GNU General
576+Public License "or any later version" applies to it, you have the
577+option of following the terms and conditions either of that numbered
578+version or of any later version published by the Free Software
579+Foundation. If the Program does not specify a version number of the
580+GNU General Public License, you may choose any version ever published
581+by the Free Software Foundation.
582+
583+ If the Program specifies that a proxy can decide which future
584+versions of the GNU General Public License can be used, that proxy's
585+public statement of acceptance of a version permanently authorizes you
586+to choose that version for the Program.
587+
588+ Later license versions may give you additional or different
589+permissions. However, no additional obligations are imposed on any
590+author or copyright holder as a result of your choosing to follow a
591+later version.
592+
593+ 15. Disclaimer of Warranty.
594+
595+ THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
596+APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
597+HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
598+OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
599+THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
600+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
601+IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
602+ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
603+
604+ 16. Limitation of Liability.
605+
606+ IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
607+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
608+THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
609+GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
610+USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
611+DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
612+PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
613+EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
614+SUCH DAMAGES.
615+
616+ 17. Interpretation of Sections 15 and 16.
617+
618+ If the disclaimer of warranty and limitation of liability provided
619+above cannot be given local legal effect according to their terms,
620+reviewing courts shall apply local law that most closely approximates
621+an absolute waiver of all civil liability in connection with the
622+Program, unless a warranty or assumption of liability accompanies a
623+copy of the Program in return for a fee.
624+
625+ END OF TERMS AND CONDITIONS
626+
627+ How to Apply These Terms to Your New Programs
628+
629+ If you develop a new program, and you want it to be of the greatest
630+possible use to the public, the best way to achieve this is to make it
631+free software which everyone can redistribute and change under these terms.
632+
633+ To do so, attach the following notices to the program. It is safest
634+to attach them to the start of each source file to most effectively
635+state the exclusion of warranty; and each file should have at least
636+the "copyright" line and a pointer to where the full notice is found.
637+
638+ <one line to give the program's name and a brief idea of what it does.>
639+ Copyright (C) <year> <name of author>
640+
641+ This program is free software: you can redistribute it and/or modify
642+ it under the terms of the GNU General Public License as published by
643+ the Free Software Foundation, either version 3 of the License, or
644+ (at your option) any later version.
645+
646+ This program is distributed in the hope that it will be useful,
647+ but WITHOUT ANY WARRANTY; without even the implied warranty of
648+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
649+ GNU General Public License for more details.
650+
651+ You should have received a copy of the GNU General Public License
652+ along with this program. If not, see <http://www.gnu.org/licenses/>.
653+
654+Also add information on how to contact you by electronic and paper mail.
655+
656+ If the program does terminal interaction, make it output a short
657+notice like this when it starts in an interactive mode:
658+
659+ <program> Copyright (C) <year> <name of author>
660+ This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
661+ This is free software, and you are welcome to redistribute it
662+ under certain conditions; type `show c' for details.
663+
664+The hypothetical commands `show w' and `show c' should show the appropriate
665+parts of the General Public License. Of course, your program's commands
666+might be different; for a GUI interface, you would use an "about box".
667+
668+ You should also get your employer (if you work as a programmer) or school,
669+if any, to sign a "copyright disclaimer" for the program, if necessary.
670+For more information on this, and how to apply and follow the GNU GPL, see
671+<http://www.gnu.org/licenses/>.
672+
673+ The GNU General Public License does not permit incorporating your program
674+into proprietary programs. If your program is a subroutine library, you
675+may consider it more useful to permit linking proprietary applications with
676+the library. If this is what you want to do, use the GNU Lesser General
677+Public License instead of this License. But first, please read
678+<http://www.gnu.org/philosophy/why-not-lgpl.html>.
679
680=== removed file 'LICENSE'
681--- LICENSE 2009-11-19 03:52:13 +0000
682+++ LICENSE 1970-01-01 00:00:00 +0000
683@@ -1,470 +0,0 @@
684- MOZILLA PUBLIC LICENSE
685- Version 1.1
686-
687- ---------------
688-
689-1. Definitions.
690-
691- 1.0.1. "Commercial Use" means distribution or otherwise making the
692- Covered Code available to a third party.
693-
694- 1.1. "Contributor" means each entity that creates or contributes to
695- the creation of Modifications.
696-
697- 1.2. "Contributor Version" means the combination of the Original
698- Code, prior Modifications used by a Contributor, and the Modifications
699- made by that particular Contributor.
700-
701- 1.3. "Covered Code" means the Original Code or Modifications or the
702- combination of the Original Code and Modifications, in each case
703- including portions thereof.
704-
705- 1.4. "Electronic Distribution Mechanism" means a mechanism generally
706- accepted in the software development community for the electronic
707- transfer of data.
708-
709- 1.5. "Executable" means Covered Code in any form other than Source
710- Code.
711-
712- 1.6. "Initial Developer" means the individual or entity identified
713- as the Initial Developer in the Source Code notice required by Exhibit
714- A.
715-
716- 1.7. "Larger Work" means a work which combines Covered Code or
717- portions thereof with code not governed by the terms of this License.
718-
719- 1.8. "License" means this document.
720-
721- 1.8.1. "Licensable" means having the right to grant, to the maximum
722- extent possible, whether at the time of the initial grant or
723- subsequently acquired, any and all of the rights conveyed herein.
724-
725- 1.9. "Modifications" means any addition to or deletion from the
726- substance or structure of either the Original Code or any previous
727- Modifications. When Covered Code is released as a series of files, a
728- Modification is:
729- A. Any addition to or deletion from the contents of a file
730- containing Original Code or previous Modifications.
731-
732- B. Any new file that contains any part of the Original Code or
733- previous Modifications.
734-
735- 1.10. "Original Code" means Source Code of computer software code
736- which is described in the Source Code notice required by Exhibit A as
737- Original Code, and which, at the time of its release under this
738- License is not already Covered Code governed by this License.
739-
740- 1.10.1. "Patent Claims" means any patent claim(s), now owned or
741- hereafter acquired, including without limitation, method, process,
742- and apparatus claims, in any patent Licensable by grantor.
743-
744- 1.11. "Source Code" means the preferred form of the Covered Code for
745- making modifications to it, including all modules it contains, plus
746- any associated interface definition files, scripts used to control
747- compilation and installation of an Executable, or source code
748- differential comparisons against either the Original Code or another
749- well known, available Covered Code of the Contributor's choice. The
750- Source Code can be in a compressed or archival form, provided the
751- appropriate decompression or de-archiving software is widely available
752- for no charge.
753-
754- 1.12. "You" (or "Your") means an individual or a legal entity
755- exercising rights under, and complying with all of the terms of, this
756- License or a future version of this License issued under Section 6.1.
757- For legal entities, "You" includes any entity which controls, is
758- controlled by, or is under common control with You. For purposes of
759- this definition, "control" means (a) the power, direct or indirect,
760- to cause the direction or management of such entity, whether by
761- contract or otherwise, or (b) ownership of more than fifty percent
762- (50%) of the outstanding shares or beneficial ownership of such
763- entity.
764-
765-2. Source Code License.
766-
767- 2.1. The Initial Developer Grant.
768- The Initial Developer hereby grants You a world-wide, royalty-free,
769- non-exclusive license, subject to third party intellectual property
770- claims:
771- (a) under intellectual property rights (other than patent or
772- trademark) Licensable by Initial Developer to use, reproduce,
773- modify, display, perform, sublicense and distribute the Original
774- Code (or portions thereof) with or without Modifications, and/or
775- as part of a Larger Work; and
776-
777- (b) under Patents Claims infringed by the making, using or
778- selling of Original Code, to make, have made, use, practice,
779- sell, and offer for sale, and/or otherwise dispose of the
780- Original Code (or portions thereof).
781-
782- (c) the licenses granted in this Section 2.1(a) and (b) are
783- effective on the date Initial Developer first distributes
784- Original Code under the terms of this License.
785-
786- (d) Notwithstanding Section 2.1(b) above, no patent license is
787- granted: 1) for code that You delete from the Original Code; 2)
788- separate from the Original Code; or 3) for infringements caused
789- by: i) the modification of the Original Code or ii) the
790- combination of the Original Code with other software or devices.
791-
792- 2.2. Contributor Grant.
793- Subject to third party intellectual property claims, each Contributor
794- hereby grants You a world-wide, royalty-free, non-exclusive license
795-
796- (a) under intellectual property rights (other than patent or
797- trademark) Licensable by Contributor, to use, reproduce, modify,
798- display, perform, sublicense and distribute the Modifications
799- created by such Contributor (or portions thereof) either on an
800- unmodified basis, with other Modifications, as Covered Code
801- and/or as part of a Larger Work; and
802-
803- (b) under Patent Claims infringed by the making, using, or
804- selling of Modifications made by that Contributor either alone
805- and/or in combination with its Contributor Version (or portions
806- of such combination), to make, use, sell, offer for sale, have
807- made, and/or otherwise dispose of: 1) Modifications made by that
808- Contributor (or portions thereof); and 2) the combination of
809- Modifications made by that Contributor with its Contributor
810- Version (or portions of such combination).
811-
812- (c) the licenses granted in Sections 2.2(a) and 2.2(b) are
813- effective on the date Contributor first makes Commercial Use of
814- the Covered Code.
815-
816- (d) Notwithstanding Section 2.2(b) above, no patent license is
817- granted: 1) for any code that Contributor has deleted from the
818- Contributor Version; 2) separate from the Contributor Version;
819- 3) for infringements caused by: i) third party modifications of
820- Contributor Version or ii) the combination of Modifications made
821- by that Contributor with other software (except as part of the
822- Contributor Version) or other devices; or 4) under Patent Claims
823- infringed by Covered Code in the absence of Modifications made by
824- that Contributor.
825-
826-3. Distribution Obligations.
827-
828- 3.1. Application of License.
829- The Modifications which You create or to which You contribute are
830- governed by the terms of this License, including without limitation
831- Section 2.2. The Source Code version of Covered Code may be
832- distributed only under the terms of this License or a future version
833- of this License released under Section 6.1, and You must include a
834- copy of this License with every copy of the Source Code You
835- distribute. You may not offer or impose any terms on any Source Code
836- version that alters or restricts the applicable version of this
837- License or the recipients' rights hereunder. However, You may include
838- an additional document offering the additional rights described in
839- Section 3.5.
840-
841- 3.2. Availability of Source Code.
842- Any Modification which You create or to which You contribute must be
843- made available in Source Code form under the terms of this License
844- either on the same media as an Executable version or via an accepted
845- Electronic Distribution Mechanism to anyone to whom you made an
846- Executable version available; and if made available via Electronic
847- Distribution Mechanism, must remain available for at least twelve (12)
848- months after the date it initially became available, or at least six
849- (6) months after a subsequent version of that particular Modification
850- has been made available to such recipients. You are responsible for
851- ensuring that the Source Code version remains available even if the
852- Electronic Distribution Mechanism is maintained by a third party.
853-
854- 3.3. Description of Modifications.
855- You must cause all Covered Code to which You contribute to contain a
856- file documenting the changes You made to create that Covered Code and
857- the date of any change. You must include a prominent statement that
858- the Modification is derived, directly or indirectly, from Original
859- Code provided by the Initial Developer and including the name of the
860- Initial Developer in (a) the Source Code, and (b) in any notice in an
861- Executable version or related documentation in which You describe the
862- origin or ownership of the Covered Code.
863-
864- 3.4. Intellectual Property Matters
865- (a) Third Party Claims.
866- If Contributor has knowledge that a license under a third party's
867- intellectual property rights is required to exercise the rights
868- granted by such Contributor under Sections 2.1 or 2.2,
869- Contributor must include a text file with the Source Code
870- distribution titled "LEGAL" which describes the claim and the
871- party making the claim in sufficient detail that a recipient will
872- know whom to contact. If Contributor obtains such knowledge after
873- the Modification is made available as described in Section 3.2,
874- Contributor shall promptly modify the LEGAL file in all copies
875- Contributor makes available thereafter and shall take other steps
876- (such as notifying appropriate mailing lists or newsgroups)
877- reasonably calculated to inform those who received the Covered
878- Code that new knowledge has been obtained.
879-
880- (b) Contributor APIs.
881- If Contributor's Modifications include an application programming
882- interface and Contributor has knowledge of patent licenses which
883- are reasonably necessary to implement that API, Contributor must
884- also include this information in the LEGAL file.
885-
886- (c) Representations.
887- Contributor represents that, except as disclosed pursuant to
888- Section 3.4(a) above, Contributor believes that Contributor's
889- Modifications are Contributor's original creation(s) and/or
890- Contributor has sufficient rights to grant the rights conveyed by
891- this License.
892-
893- 3.5. Required Notices.
894- You must duplicate the notice in Exhibit A in each file of the Source
895- Code. If it is not possible to put such notice in a particular Source
896- Code file due to its structure, then You must include such notice in a
897- location (such as a relevant directory) where a user would be likely
898- to look for such a notice. If You created one or more Modification(s)
899- You may add your name as a Contributor to the notice described in
900- Exhibit A. You must also duplicate this License in any documentation
901- for the Source Code where You describe recipients' rights or ownership
902- rights relating to Covered Code. You may choose to offer, and to
903- charge a fee for, warranty, support, indemnity or liability
904- obligations to one or more recipients of Covered Code. However, You
905- may do so only on Your own behalf, and not on behalf of the Initial
906- Developer or any Contributor. You must make it absolutely clear than
907- any such warranty, support, indemnity or liability obligation is
908- offered by You alone, and You hereby agree to indemnify the Initial
909- Developer and every Contributor for any liability incurred by the
910- Initial Developer or such Contributor as a result of warranty,
911- support, indemnity or liability terms You offer.
912-
913- 3.6. Distribution of Executable Versions.
914- You may distribute Covered Code in Executable form only if the
915- requirements of Section 3.1-3.5 have been met for that Covered Code,
916- and if You include a notice stating that the Source Code version of
917- the Covered Code is available under the terms of this License,
918- including a description of how and where You have fulfilled the
919- obligations of Section 3.2. The notice must be conspicuously included
920- in any notice in an Executable version, related documentation or
921- collateral in which You describe recipients' rights relating to the
922- Covered Code. You may distribute the Executable version of Covered
923- Code or ownership rights under a license of Your choice, which may
924- contain terms different from this License, provided that You are in
925- compliance with the terms of this License and that the license for the
926- Executable version does not attempt to limit or alter the recipient's
927- rights in the Source Code version from the rights set forth in this
928- License. If You distribute the Executable version under a different
929- license You must make it absolutely clear that any terms which differ
930- from this License are offered by You alone, not by the Initial
931- Developer or any Contributor. You hereby agree to indemnify the
932- Initial Developer and every Contributor for any liability incurred by
933- the Initial Developer or such Contributor as a result of any such
934- terms You offer.
935-
936- 3.7. Larger Works.
937- You may create a Larger Work by combining Covered Code with other code
938- not governed by the terms of this License and distribute the Larger
939- Work as a single product. In such a case, You must make sure the
940- requirements of this License are fulfilled for the Covered Code.
941-
942-4. Inability to Comply Due to Statute or Regulation.
943-
944- If it is impossible for You to comply with any of the terms of this
945- License with respect to some or all of the Covered Code due to
946- statute, judicial order, or regulation then You must: (a) comply with
947- the terms of this License to the maximum extent possible; and (b)
948- describe the limitations and the code they affect. Such description
949- must be included in the LEGAL file described in Section 3.4 and must
950- be included with all distributions of the Source Code. Except to the
951- extent prohibited by statute or regulation, such description must be
952- sufficiently detailed for a recipient of ordinary skill to be able to
953- understand it.
954-
955-5. Application of this License.
956-
957- This License applies to code to which the Initial Developer has
958- attached the notice in Exhibit A and to related Covered Code.
959-
960-6. Versions of the License.
961-
962- 6.1. New Versions.
963- Netscape Communications Corporation ("Netscape") may publish revised
964- and/or new versions of the License from time to time. Each version
965- will be given a distinguishing version number.
966-
967- 6.2. Effect of New Versions.
968- Once Covered Code has been published under a particular version of the
969- License, You may always continue to use it under the terms of that
970- version. You may also choose to use such Covered Code under the terms
971- of any subsequent version of the License published by Netscape. No one
972- other than Netscape has the right to modify the terms applicable to
973- Covered Code created under this License.
974-
975- 6.3. Derivative Works.
976- If You create or use a modified version of this License (which you may
977- only do in order to apply it to code which is not already Covered Code
978- governed by this License), You must (a) rename Your license so that
979- the phrases "Mozilla", "MOZILLAPL", "MOZPL", "Netscape",
980- "MPL", "NPL" or any confusingly similar phrase do not appear in your
981- license (except to note that your license differs from this License)
982- and (b) otherwise make it clear that Your version of the license
983- contains terms which differ from the Mozilla Public License and
984- Netscape Public License. (Filling in the name of the Initial
985- Developer, Original Code or Contributor in the notice described in
986- Exhibit A shall not of themselves be deemed to be modifications of
987- this License.)
988-
989-7. DISCLAIMER OF WARRANTY.
990-
991- COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS,
992- WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
993- WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF
994- DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING.
995- THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED CODE
996- IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT,
997- YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE
998- COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER
999- OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF
1000- ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER.
1001-
1002-8. TERMINATION.
1003-
1004- 8.1. This License and the rights granted hereunder will terminate
1005- automatically if You fail to comply with terms herein and fail to cure
1006- such breach within 30 days of becoming aware of the breach. All
1007- sublicenses to the Covered Code which are properly granted shall
1008- survive any termination of this License. Provisions which, by their
1009- nature, must remain in effect beyond the termination of this License
1010- shall survive.
1011-
1012- 8.2. If You initiate litigation by asserting a patent infringement
1013- claim (excluding declatory judgment actions) against Initial Developer
1014- or a Contributor (the Initial Developer or Contributor against whom
1015- You file such action is referred to as "Participant") alleging that:
1016-
1017- (a) such Participant's Contributor Version directly or indirectly
1018- infringes any patent, then any and all rights granted by such
1019- Participant to You under Sections 2.1 and/or 2.2 of this License
1020- shall, upon 60 days notice from Participant terminate prospectively,
1021- unless if within 60 days after receipt of notice You either: (i)
1022- agree in writing to pay Participant a mutually agreeable reasonable
1023- royalty for Your past and future use of Modifications made by such
1024- Participant, or (ii) withdraw Your litigation claim with respect to
1025- the Contributor Version against such Participant. If within 60 days
1026- of notice, a reasonable royalty and payment arrangement are not
1027- mutually agreed upon in writing by the parties or the litigation claim
1028- is not withdrawn, the rights granted by Participant to You under
1029- Sections 2.1 and/or 2.2 automatically terminate at the expiration of
1030- the 60 day notice period specified above.
1031-
1032- (b) any software, hardware, or device, other than such Participant's
1033- Contributor Version, directly or indirectly infringes any patent, then
1034- any rights granted to You by such Participant under Sections 2.1(b)
1035- and 2.2(b) are revoked effective as of the date You first made, used,
1036- sold, distributed, or had made, Modifications made by that
1037- Participant.
1038-
1039- 8.3. If You assert a patent infringement claim against Participant
1040- alleging that such Participant's Contributor Version directly or
1041- indirectly infringes any patent where such claim is resolved (such as
1042- by license or settlement) prior to the initiation of patent
1043- infringement litigation, then the reasonable value of the licenses
1044- granted by such Participant under Sections 2.1 or 2.2 shall be taken
1045- into account in determining the amount or value of any payment or
1046- license.
1047-
1048- 8.4. In the event of termination under Sections 8.1 or 8.2 above,
1049- all end user license agreements (excluding distributors and resellers)
1050- which have been validly granted by You or any distributor hereunder
1051- prior to termination shall survive termination.
1052-
1053-9. LIMITATION OF LIABILITY.
1054-
1055- UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT
1056- (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL
1057- DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE,
1058- OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR
1059- ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY
1060- CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL,
1061- WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER
1062- COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN
1063- INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF
1064- LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY
1065- RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW
1066- PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE
1067- EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO
1068- THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU.
1069-
1070-10. U.S. GOVERNMENT END USERS.
1071-
1072- The Covered Code is a "commercial item," as that term is defined in
1073- 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer
1074- software" and "commercial computer software documentation," as such
1075- terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48
1076- C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995),
1077- all U.S. Government End Users acquire Covered Code with only those
1078- rights set forth herein.
1079-
1080-11. MISCELLANEOUS.
1081-
1082- This License represents the complete agreement concerning subject
1083- matter hereof. If any provision of this License is held to be
1084- unenforceable, such provision shall be reformed only to the extent
1085- necessary to make it enforceable. This License shall be governed by
1086- California law provisions (except to the extent applicable law, if
1087- any, provides otherwise), excluding its conflict-of-law provisions.
1088- With respect to disputes in which at least one party is a citizen of,
1089- or an entity chartered or registered to do business in the United
1090- States of America, any litigation relating to this License shall be
1091- subject to the jurisdiction of the Federal Courts of the Northern
1092- District of California, with venue lying in Santa Clara County,
1093- California, with the losing party responsible for costs, including
1094- without limitation, court costs and reasonable attorneys' fees and
1095- expenses. The application of the United Nations Convention on
1096- Contracts for the International Sale of Goods is expressly excluded.
1097- Any law or regulation which provides that the language of a contract
1098- shall be construed against the drafter shall not apply to this
1099- License.
1100-
1101-12. RESPONSIBILITY FOR CLAIMS.
1102-
1103- As between Initial Developer and the Contributors, each party is
1104- responsible for claims and damages arising, directly or indirectly,
1105- out of its utilization of rights under this License and You agree to
1106- work with Initial Developer and Contributors to distribute such
1107- responsibility on an equitable basis. Nothing herein is intended or
1108- shall be deemed to constitute any admission of liability.
1109-
1110-13. MULTIPLE-LICENSED CODE.
1111-
1112- Initial Developer may designate portions of the Covered Code as
1113- "Multiple-Licensed". "Multiple-Licensed" means that the Initial
1114- Developer permits you to utilize portions of the Covered Code under
1115- Your choice of the NPL or the alternative licenses, if any, specified
1116- by the Initial Developer in the file described in Exhibit A.
1117-
1118-EXHIBIT A -Mozilla Public License.
1119-
1120- ``The contents of this file are subject to the Mozilla Public License
1121- Version 1.1 (the "License"); you may not use this file except in
1122- compliance with the License. You may obtain a copy of the License at
1123- http://www.mozilla.org/MPL/
1124-
1125- Software distributed under the License is distributed on an "AS IS"
1126- basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
1127- License for the specific language governing rights and limitations
1128- under the License.
1129-
1130- The Original Code is ______________________________________.
1131-
1132- The Initial Developer of the Original Code is ________________________.
1133- Portions created by ______________________ are Copyright (C) ______
1134- _______________________. All Rights Reserved.
1135-
1136- Contributor(s): ______________________________________.
1137-
1138- Alternatively, the contents of this file may be used under the terms
1139- of the _____ license (the "[___] License"), in which case the
1140- provisions of [______] License are applicable instead of those
1141- above. If you wish to allow use of your version of this file only
1142- under the terms of the [____] License and not to allow others to use
1143- your version of this file under the MPL, indicate your decision by
1144- deleting the provisions above and replace them with the notice and
1145- other provisions required by the [___] License. If you do not delete
1146- the provisions above, a recipient may use your version of this file
1147- under either the MPL or the [___] License."
1148-
1149- [NOTE: The text of this Exhibit A may differ slightly from the text of
1150- the notices in the Source Code files of the Original Code. You should
1151- use the text of this Exhibit A rather than the text found in the
1152- Original Code Source Code for Your Modifications.]
1153-
1154
1155=== modified file 'boots.py'
1156--- boots.py 2010-02-24 19:15:28 +0000
1157+++ boots.py 2010-02-24 20:39:13 +0000
1158@@ -5,12 +5,11 @@
1159 # boots.py
1160 #
1161 # ##### BEGIN LICENSE BLOCK #####
1162-# Version: MPL 1.1
1163+# Version: GPLv3
1164 #
1165-# The contents of this file are subject to the Mozilla Public License
1166-# Version 1.1 (the "License"); you may not use this file except in
1167-# compliance with the License. You may obtain a copy of the License at
1168-# http://www.mozilla.org/MPL/
1169+# The contents of this file are subject to the GNU General Public License
1170+# version 3 (the "License"); you may not use this file except in
1171+# compliance with the License.
1172 #
1173 # Software distributed under the License is distributed on an "AS IS"
1174 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
1175
1176=== modified file 'boots/api/api.py'
1177--- boots/api/api.py 2010-02-24 19:15:28 +0000
1178+++ boots/api/api.py 2010-02-24 20:39:13 +0000
1179@@ -4,12 +4,11 @@
1180 # boots/api/api.py
1181 #
1182 # ##### BEGIN LICENSE BLOCK #####
1183-# Version: MPL 1.1
1184+# Version: GPLv3
1185 #
1186-# The contents of this file are subject to the Mozilla Public License
1187-# Version 1.1 (the "License"); you may not use this file except in
1188-# compliance with the License. You may obtain a copy of the License at
1189-# http://www.mozilla.org/MPL/
1190+# The contents of this file are subject to the GNU General Public License
1191+# version 3 (the "License"); you may not use this file except in
1192+# compliance with the License.
1193 #
1194 # Software distributed under the License is distributed on an "AS IS"
1195 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
1196@@ -41,7 +40,15 @@
1197 class Server(object):
1198 """Represents a connection to a database server.
1199
1200- This object is used to execute commands on a remote server."""
1201+ This object is used to execute commands on a remote server.
1202+ Methods:
1203+ __init__()
1204+ connect()
1205+ disconnect()
1206+ execute()
1207+
1208+ Properties:
1209+ bool is_connected"""
1210
1211 def __init__(self, hostname, port, auth):
1212 """Initialize a Server object.
1213@@ -57,7 +64,9 @@
1214 self._connection = None
1215
1216 def connect(self):
1217- """Connect to the database server whose details were provided through
1218+ """Establishes database connection.
1219+
1220+ Connect to the database server whose details were provided through
1221 the __init__ method."""
1222 self._connection = db.connect(
1223 host = self.hostname,
1224@@ -68,8 +77,9 @@
1225
1226 @property
1227 def is_connected(self):
1228- """Property that is True when the Server is connected and False
1229- otherwise."""
1230+ """Describes connection state.
1231+
1232+ TRUE if connected, FALSE if disconnected."""
1233 return self._connection is not None
1234
1235 def _check_connected(self):
1236@@ -84,6 +94,8 @@
1237 self._connection = None
1238
1239 def execute(self, query):
1240+ #FIXME: I don't like how this is phrased, but cannot right now think of a better way to do it.
1241+ #FIXME: Gotta come back to that, I think.
1242 """Executes a query, returning an iterator of resulting rows.
1243
1244 The resulting rows are packaged in a 'packet' which is a dict:
1245
1246=== modified file 'boots/api/errors.py'
1247--- boots/api/errors.py 2010-02-24 19:15:28 +0000
1248+++ boots/api/errors.py 2010-02-24 20:39:13 +0000
1249@@ -4,12 +4,11 @@
1250 # errors.py
1251 #
1252 # ##### BEGIN LICENSE BLOCK #####
1253-# Version: MPL 1.1
1254+# Version: GPLv3
1255 #
1256-# The contents of this file are subject to the Mozilla Public License
1257-# Version 1.1 (the "License"); you may not use this file except in
1258-# compliance with the License. You may obtain a copy of the License at
1259-# http://www.mozilla.org/MPL/
1260+# The contents of this file are subject to the GNU General Public License
1261+# version 3 (the "License"); you may not use this file except in
1262+# compliance with the License.
1263 #
1264 # Software distributed under the License is distributed on an "AS IS"
1265 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
1266@@ -36,8 +35,11 @@
1267
1268 class ConsoleError(BootsError):
1269 """Errors to be displayed to be displayed on the console"""
1270+<<<<<<< TREE
1271 pass
1272
1273 class ConnectionError(ConsoleError):
1274 """Errors related to server connections"""
1275- pass
1276\ No newline at end of file
1277+ pass=======
1278+ pass
1279+>>>>>>> MERGE-SOURCE
1280
1281=== modified file 'boots/api/nodes/node.py'
1282--- boots/api/nodes/node.py 2010-02-21 03:57:45 +0000
1283+++ boots/api/nodes/node.py 2010-02-24 20:39:13 +0000
1284@@ -1,3 +1,31 @@
1285+# Boots Client
1286+# www.launchpad.net/boots
1287+# www.launchpad.net/drizzle
1288+# boots/api/nodes/node.py
1289+#
1290+# ##### BEGIN LICENSE BLOCK #####
1291+# Version: GPLv3
1292+#
1293+# The contents of this file are subject to the GNU General Public License
1294+# version 3 (the "License"); you may not use this file except in
1295+# compliance with the License.
1296+#
1297+# Software distributed under the License is distributed on an "AS IS"
1298+# basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
1299+# License for the specific language governing rights and limitations
1300+# under the License.
1301+#
1302+# The Original Code is Boots Client code.
1303+#
1304+# The Initial Developer of the Original Code is Clark Boylan, Ken
1305+# Brotherton, Max Goodman, Victoria Lewis, David Rosenbaum, and Andreas
1306+# Turriff. Portions created by Clark Boylan, Ken Brotherton, Max Goodman,
1307+# Victoria Lewis, David Rosenbaum, and Andreas Turriff are Copyright (C)
1308+# 2009. All Rights Reserved.
1309+#
1310+# Contributor(s):
1311+#
1312+# ##### END LICENSE BLOCK #####
1313 from Queue import Queue
1314 from itertools import chain, tee, repeat
1315 from threading import Thread, Event, Lock
1316@@ -11,7 +39,12 @@
1317 yield e
1318
1319 def alternate_iterators(*iterables):
1320- """Iterate over the given iterables, taking turns."""
1321+ """Iterate over the given iterables, taking turns.
1322+
1323+ Takes a list of iterables as input.
1324+ Yields contents of the iterables.
1325+ Removes iterable from the list when iterable is finished.
1326+ Terminates when list is empty."""
1327 iters = map(iter, iterables)
1328 while iters:
1329 for it in iters:
1330@@ -21,7 +54,10 @@
1331 iters.remove(it)
1332
1333 def flatten(x):
1334- """If an object is iterable, iterate over it. Otherwise, yield the object."""
1335+ """Return content objects of an iterable.
1336+
1337+ Takes an object as input.
1338+ If an object is iterable, iterate over it. Otherwise, yield the object."""
1339 if type(x) is GeneratorType:
1340 for y in x:
1341 yield y
1342@@ -38,7 +74,27 @@
1343 # FIXME: need a thread safe tee here, perhapse "safetee"?
1344
1345 class BaseNode(object):
1346+ """Base class for the node system.
1347+
1348+ Methods:
1349+ __init__()
1350+ status_msg()
1351+ finalize()
1352+ insert_before()
1353+ insert_after()
1354+ connect_output()
1355+ disconnect_output()
1356+
1357+ Properties:
1358+ name
1359+ inputs
1360+ outputs"""
1361+
1362 def __init__(self, name=None, inputs=None, outputs=None):
1363+ """Constructor of the base node object.
1364+
1365+ Initializes the node object.
1366+ Takes the node name, inputs and outputs as parameters."""
1367 self.name = name
1368 self._finalized = False
1369
1370@@ -54,11 +110,13 @@
1371
1372 @property
1373 def name(self):
1374+ """Name of the node."""
1375 # Use a "private" member to avoid name conflicts with Thread
1376 return self.__name
1377
1378 @name.setter
1379 def name(self, value):
1380+ """Sets name of the node."""
1381 self.__name = value
1382
1383 def __repr__(self):
1384@@ -70,30 +128,54 @@
1385 status = status)
1386
1387 def status_msg(self):
1388+ """Returns a status message.
1389+
1390+ For the base node object, returns NONE."""
1391 return None
1392
1393 def finalize(self):
1394+ """Finalizes node setup.
1395+
1396+ Ensures that a node has the chance to complete its setup without
1397+ its input and output connections changing. In the base node, this
1398+ is not required. Derived classes will need to implement
1399+ _finalize(self)"""
1400 assert not self._finalized, "Node already finalized."
1401 self._finalize()
1402 self._finalized = True
1403
1404 def insert_before(self, node):
1405+ """Inserts the node before another node.
1406+
1407+ Accepts a node as input and prepends the node this method is
1408+ called from to that node."""
1409 for input in list(self.inputs):
1410 input.disconnect_output(self)
1411 input.connect_output(node)
1412 node.connect_output(self)
1413
1414 def insert_after(self, node):
1415+ """Inserts the node after another node.
1416+
1417+ Accepts a node as input and appends the node this method is
1418+ called from to that node."""
1419 for output in list(self.outputs):
1420 self.disconnect_output(output)
1421 node.connect_output(output)
1422 self.connect_output(node)
1423
1424 def connect_output(self, output_node):
1425+ """Connects output of the node to the input of another node.
1426+
1427+ Accepts a target node as parameter and connects this node's output to the
1428+ parameter's input."""
1429 self.outputs.add(output_node)
1430 output_node.inputs.add(self)
1431
1432 def disconnect_output(self, output_node):
1433+ """Disconnects the output of this node from the input of another node.
1434+
1435+ The opposite of connect_output, taking the same parameters."""
1436 self.outputs.remove(output_node)
1437 output_node.inputs.remove(self)
1438
1439@@ -105,11 +187,41 @@
1440 """Send data to all connected output nodes."""
1441 for output in self.outputs:
1442 output.put(data)
1443+
1444+ def _finalize(self):
1445+ pass
1446
1447 class NodeGraph(object):
1448- """Control and manage a graph of nodes."""
1449+ """Control and manage a graph of nodes.
1450+
1451+ Methods:
1452+ __init__()
1453+ from_sequence()
1454+ edges()
1455+ add()
1456+ add_input()
1457+ add_output()
1458+ add_connected()
1459+ link_output()
1460+ unlink_output()
1461+ finalize()
1462+ start()
1463+ put()
1464+ run()
1465+
1466+ Properties:
1467+ name
1468+ nodes
1469+ input_link
1470+ output_link
1471+ auto_process
1472+ async"""
1473
1474 def __init__(self, name=None, nodes=None, auto_process=False):
1475+ """Creates a node graph object.
1476+
1477+ Accepts the name of the graph, the content nodes, and whether or not to automatically
1478+ process the graph."""
1479 self.name = name
1480 self.nodes = set()
1481 # TODO: auto-connect nodes in node graph to the input and output links
1482@@ -124,8 +236,14 @@
1483
1484 @staticmethod
1485 def from_sequence(node_seq):
1486- """Connect a linear sequence of nodes, with possible nested sequences."""
1487-
1488+ """Connects a sequence of nodes.
1489+
1490+ Connects a sequence of nodes, with branches for sub-sequences.
1491+ For example, an input (1,2,3) will return -1-2-3-; an input of
1492+ ((1,2,3),a,b,c) will return -1-2-3-
1493+ |
1494+ -a-b-c
1495+ """
1496 def get_first(obj):
1497 try:
1498 return obj[0]
1499@@ -162,15 +280,25 @@
1500 return output_edges
1501
1502 def add(self, *nodes):
1503- """Add individual nodes to the collection."""
1504+ """Add individual nodes to the collection.
1505+
1506+ Accepts a list of nodes to be added to the collection."""
1507 return self._add(False, nodes)
1508
1509 def add_input(self, *nodes):
1510+ """Adds nodes to the input link.
1511+
1512+ Accepts a list of nodes and adds them to the input_link of this
1513+ graph."""
1514 self.add(*nodes)
1515 for node in nodes:
1516 self.input_link.connect_output(node)
1517
1518 def add_output(self, *nodes):
1519+ """Adds nodes to the output link.
1520+
1521+ Accepts a list of nodes and adds them to the output_link of this
1522+ graph."""
1523 self.add(*nodes)
1524 for node in nodes:
1525 node.connect_output(self.output_link)
1526@@ -193,9 +321,11 @@
1527 return nodes
1528
1529 def link_output(self, output_graph):
1530+ """Link output link of this node graph to input of another."""
1531 self.output_link.link_output(output_graph.input_link)
1532
1533 def unlink_output(self, output_graph):
1534+ """Unlink output link of this node graph from input of another."""
1535 self.output_link.unlink_output(output_graph.input_link)
1536
1537 def __getitem__(self, name):
1538@@ -243,6 +373,9 @@
1539 node.insert_before(*self.add(QueueNode()))
1540
1541 def finalize(self):
1542+ """Finalize all nodes in node graph.
1543+
1544+ Also processes graph if auto_process is set."""
1545 assert not self._finalized, "Graph already finalized."
1546
1547 if self.auto_process:
1548@@ -263,9 +396,11 @@
1549 self.async = True
1550
1551 def put(self, data):
1552+ """Put data on input link."""
1553 self.input_link.put(data)
1554
1555 def run(self):
1556+ """Output data."""
1557 if not self.async:
1558 for data in self.output_link:
1559 if data is StopIteration:
1560@@ -293,7 +428,11 @@
1561 pass
1562
1563 class QueueNode(BaseNode):
1564- """Thread-safe queue that buffers pushed data for pull access."""
1565+ """Thread-safe queue that buffers pushed data for pull access.
1566+
1567+ Methods:
1568+ __init__()
1569+ put()"""
1570
1571 def __init__(self, name=None, inputs=None, outputs=None, include_stop=False):
1572 BaseNode.__init__(self, name, inputs, outputs)
1573@@ -317,7 +456,23 @@
1574 yield data
1575
1576 class LinkNode(BaseNode):
1577+ """Link node to connect to input and output methods.
1578+
1579+ Methods:
1580+ __init__()
1581+ link_output()
1582+ unlink_output()
1583+ put()
1584+
1585+ Properties:
1586+ input_links
1587+ input_lock
1588+ output_links
1589+ output_lock
1590+ mortal"""
1591+
1592 def __init__(self, name=None, inputs=None, outputs=None, mortal=False):
1593+ """Initializes link node."""
1594 BaseNode.__init__(self, name, inputs, outputs)
1595 self.input_links = set()
1596 self.input_lock = Lock()
1597@@ -326,18 +481,21 @@
1598 self.mortal = mortal
1599
1600 def link_output(self, output_link):
1601+ """Links own output to another unit's input link."""
1602 with self.input_lock:
1603 with output_link.output_lock:
1604 self.output_links.add(output_link)
1605 output_link.input_links.add(self)
1606
1607 def unlink_output(self, output_link):
1608+ """Unlinks own output fro manother unit's input link."""
1609 with self.input_lock:
1610 with output_link.output_lock:
1611 self.output_links.remove(output_link)
1612 output_link.input_links.remove(self)
1613
1614 def put(self, data):
1615+ """Output data."""
1616 if not (data is StopIteration and not self.mortal):
1617 self._put_outputs(data)
1618
1619
1620=== modified file 'boots/app/client_config.py'
1621--- boots/app/client_config.py 2010-02-24 19:26:55 +0000
1622+++ boots/app/client_config.py 2010-02-24 20:39:13 +0000
1623@@ -4,12 +4,11 @@
1624 # boots/app/client_config.py
1625 #
1626 # ##### BEGIN LICENSE BLOCK #####
1627-# Version: MPL 1.1
1628+# Version: GPLv3
1629 #
1630-# The contents of this file are subject to the Mozilla Public License
1631-# Version 1.1 (the "License"); you may not use this file except in
1632-# compliance with the License. You may obtain a copy of the License at
1633-# http://www.mozilla.org/MPL/
1634+# The contents of this file are subject to the GNU General Public License
1635+# version 3 (the "License"); you may not use this file except in
1636+# compliance with the License.
1637 #
1638 # Software distributed under the License is distributed on an "AS IS"
1639 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
1640
1641=== modified file 'boots/app/info.py'
1642--- boots/app/info.py 2010-02-24 19:15:28 +0000
1643+++ boots/app/info.py 2010-02-24 20:39:13 +0000
1644@@ -4,12 +4,11 @@
1645 # boots/app/info.py
1646 #
1647 # ##### BEGIN LICENSE BLOCK #####
1648-# Version: MPL 1.1
1649+# Version: GPLv3
1650 #
1651-# The contents of this file are subject to the Mozilla Public License
1652-# Version 1.1 (the "License"); you may not use this file except in
1653-# compliance with the License. You may obtain a copy of the License at
1654-# http://www.mozilla.org/MPL/
1655+# The contents of this file are subject to the GNU General Public License
1656+# version 3 (the "License"); you may not use this file except in
1657+# compliance with the License.
1658 #
1659 # Software distributed under the License is distributed on an "AS IS"
1660 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
1661
1662=== modified file 'boots/lib/console.py'
1663--- boots/lib/console.py 2010-02-24 19:15:28 +0000
1664+++ boots/lib/console.py 2010-02-24 20:39:13 +0000
1665@@ -4,12 +4,11 @@
1666 # lib/console.py
1667 #
1668 # ##### BEGIN LICENSE BLOCK #####
1669-# Version: MPL 1.1
1670+# Version: GPLv3
1671 #
1672-# The contents of this file are subject to the Mozilla Public License
1673-# Version 1.1 (the "License"); you may not use this file except in
1674-# compliance with the License. You may obtain a copy of the License at
1675-# http://www.mozilla.org/MPL/
1676+# The contents of this file are subject to the GNU General Public License
1677+# version 3 (the "License"); you may not use this file except in
1678+# compliance with the License.
1679 #
1680 # Software distributed under the License is distributed on an "AS IS"
1681 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
1682@@ -157,15 +156,17 @@
1683 result_graph.start()
1684 result_graph.run()
1685
1686+ if isinstance(result, Exception) and isinstance(self.driver, (ScriptDriver, StringDriver):
1687+ self.quit(1);
1688 self.quit()
1689
1690- def quit(self):
1691+ def quit(self, exitcode = 0):
1692 if self.driver.is_interactive:
1693 self.presenter.presenter_graph.put("Boots quit.")
1694
1695 self.hooks["unload"].call()
1696 self.disconnect(None, None)
1697- sys.exit(0)
1698+ sys.exit(exitcode)
1699
1700 def meta_connect(self, host=None, port=None, database=None):
1701 if host is None:
1702
1703=== modified file 'boots/lib/hook.py'
1704--- boots/lib/hook.py 2010-02-21 10:04:23 +0000
1705+++ boots/lib/hook.py 2010-02-24 20:39:13 +0000
1706@@ -4,12 +4,11 @@
1707 # lib/hook.py
1708 #
1709 # ##### BEGIN LICENSE BLOCK #####
1710-# Version: MPL 1.1
1711+# Version: GPLv3
1712 #
1713-# The contents of this file are subject to the Mozilla Public License
1714-# Version 1.1 (the "License"); you may not use this file except in
1715-# compliance with the License. You may obtain a copy of the License at
1716-# http://www.mozilla.org/MPL/
1717+# The contents of this file are subject to the GNU General Public License
1718+# version 3 (the "License"); you may not use this file except in
1719+# compliance with the License.
1720 #
1721 # Software distributed under the License is distributed on an "AS IS"
1722 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
1723@@ -59,4 +58,4 @@
1724 else:
1725 dead_refs.add(callback)
1726 self.callbacks -= dead_refs
1727-
1728\ No newline at end of file
1729+
1730
1731=== modified file 'boots/lib/lingos/bash_external.py'
1732--- boots/lib/lingos/bash_external.py 2010-02-08 00:06:50 +0000
1733+++ boots/lib/lingos/bash_external.py 2010-02-24 20:39:13 +0000
1734@@ -4,12 +4,11 @@
1735 # lib/lingos/python.py
1736 #
1737 # ##### BEGIN LICENSE BLOCK #####
1738-# Version: MPL 1.1
1739+# Version: GPLv3
1740 #
1741-# The contents of this file are subject to the Mozilla Public License
1742-# Version 1.1 (the "License"); you may not use this file except in
1743-# compliance with the License. You may obtain a copy of the License at
1744-# http://www.mozilla.org/MPL/
1745+# The contents of this file are subject to the GNU General Public License
1746+# version 3 (the "License"); you may not use this file except in
1747+# compliance with the License.
1748 #
1749 # Software distributed under the License is distributed on an "AS IS"
1750 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
1751
1752=== modified file 'boots/lib/lingos/external.py'
1753--- boots/lib/lingos/external.py 2010-02-08 19:04:36 +0000
1754+++ boots/lib/lingos/external.py 2010-02-24 20:39:13 +0000
1755@@ -4,12 +4,11 @@
1756 # lib/lingos/python.py
1757 #
1758 # ##### BEGIN LICENSE BLOCK #####
1759-# Version: MPL 1.1
1760+# Version: GPLv3
1761 #
1762-# The contents of this file are subject to the Mozilla Public License
1763-# Version 1.1 (the "License"); you may not use this file except in
1764-# compliance with the License. You may obtain a copy of the License at
1765-# http://www.mozilla.org/MPL/
1766+# The contents of this file are subject to the GNU General Public License
1767+# version 3 (the "License"); you may not use this file except in
1768+# compliance with the License.
1769 #
1770 # Software distributed under the License is distributed on an "AS IS"
1771 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
1772
1773=== modified file 'boots/lib/lingos/lingo.py'
1774--- boots/lib/lingos/lingo.py 2010-02-21 10:11:22 +0000
1775+++ boots/lib/lingos/lingo.py 2010-02-24 20:39:13 +0000
1776@@ -4,12 +4,11 @@
1777 # lib/lingos/lingo.py
1778 #
1779 # ##### BEGIN LICENSE BLOCK #####
1780-# Version: MPL 1.1
1781+# Version: GPLv3
1782 #
1783-# The contents of this file are subject to the Mozilla Public License
1784-# Version 1.1 (the "License"); you may not use this file except in
1785-# compliance with the License. You may obtain a copy of the License at
1786-# http://www.mozilla.org/MPL/
1787+# The contents of this file are subject to the GNU General Public License
1788+# version 3 (the "License"); you may not use this file except in
1789+# compliance with the License.
1790 #
1791 # Software distributed under the License is distributed on an "AS IS"
1792 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
1793
1794=== modified file 'boots/lib/lingos/lisp/builtins.py'
1795--- boots/lib/lingos/lisp/builtins.py 2010-01-31 06:48:28 +0000
1796+++ boots/lib/lingos/lisp/builtins.py 2010-02-24 20:39:13 +0000
1797@@ -4,12 +4,11 @@
1798 # lib/lingos/lisp/builtins.py
1799 #
1800 # ##### BEGIN LICENSE BLOCK #####
1801-# Version: MPL 1.1
1802+# Version: GPLv3
1803 #
1804-# The contents of this file are subject to the Mozilla Public License
1805-# Version 1.1 (the "License"); you may not use this file except in
1806-# compliance with the License. You may obtain a copy of the License at
1807-# http://www.mozilla.org/MPL/
1808+# The contents of this file are subject to the GNU General Public License
1809+# version 3 (the "License"); you may not use this file except in
1810+# compliance with the License.
1811 #
1812 # Software distributed under the License is distributed on an "AS IS"
1813 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
1814
1815=== modified file 'boots/lib/lingos/lisp/lexer.py'
1816--- boots/lib/lingos/lisp/lexer.py 2010-01-22 05:58:25 +0000
1817+++ boots/lib/lingos/lisp/lexer.py 2010-02-24 20:39:13 +0000
1818@@ -4,12 +4,11 @@
1819 # lib/lingos/lisp/lexer.py
1820 #
1821 # ##### BEGIN LICENSE BLOCK #####
1822-# Version: MPL 1.1
1823+# Version: GPLv3
1824 #
1825-# The contents of this file are subject to the Mozilla Public License
1826-# Version 1.1 (the "License"); you may not use this file except in
1827-# compliance with the License. You may obtain a copy of the License at
1828-# http://www.mozilla.org/MPL/
1829+# The contents of this file are subject to the GNU General Public License
1830+# version 3 (the "License"); you may not use this file except in
1831+# compliance with the License.
1832 #
1833 # Software distributed under the License is distributed on an "AS IS"
1834 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
1835
1836=== modified file 'boots/lib/lingos/lisp/lisp.py'
1837--- boots/lib/lingos/lisp/lisp.py 2010-02-07 08:52:29 +0000
1838+++ boots/lib/lingos/lisp/lisp.py 2010-02-24 20:39:13 +0000
1839@@ -5,12 +5,11 @@
1840 # lib/lingos/lisp/lisp.py
1841 #
1842 # ##### BEGIN LICENSE BLOCK #####
1843-# Version: MPL 1.1
1844+# Version: GPLv3
1845 #
1846-# The contents of this file are subject to the Mozilla Public License
1847-# Version 1.1 (the "License"); you may not use this file except in
1848-# compliance with the License. You may obtain a copy of the License at
1849-# http://www.mozilla.org/MPL/
1850+# The contents of this file are subject to the GNU General Public License
1851+# version 3 (the "License"); you may not use this file except in
1852+# compliance with the License.
1853 #
1854 # Software distributed under the License is distributed on an "AS IS"
1855 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
1856
1857=== modified file 'boots/lib/lingos/lisp/objects.py'
1858--- boots/lib/lingos/lisp/objects.py 2010-01-31 06:34:57 +0000
1859+++ boots/lib/lingos/lisp/objects.py 2010-02-24 20:39:13 +0000
1860@@ -4,12 +4,11 @@
1861 # lib/lingos/lisp/objects.py
1862 #
1863 # ##### BEGIN LICENSE BLOCK #####
1864-# Version: MPL 1.1
1865+# Version: GPLv3
1866 #
1867-# The contents of this file are subject to the Mozilla Public License
1868-# Version 1.1 (the "License"); you may not use this file except in
1869-# compliance with the License. You may obtain a copy of the License at
1870-# http://www.mozilla.org/MPL/
1871+# The contents of this file are subject to the GNU General Public License
1872+# version 3 (the "License"); you may not use this file except in
1873+# compliance with the License.
1874 #
1875 # Software distributed under the License is distributed on an "AS IS"
1876 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
1877
1878=== modified file 'boots/lib/lingos/lisp/parser.py'
1879--- boots/lib/lingos/lisp/parser.py 2010-01-23 23:32:39 +0000
1880+++ boots/lib/lingos/lisp/parser.py 2010-02-24 20:39:13 +0000
1881@@ -4,12 +4,11 @@
1882 # lib/lingos/lisp/parser.py
1883 #
1884 # ##### BEGIN LICENSE BLOCK #####
1885-# Version: MPL 1.1
1886+# Version: GPLv3
1887 #
1888-# The contents of this file are subject to the Mozilla Public License
1889-# Version 1.1 (the "License"); you may not use this file except in
1890-# compliance with the License. You may obtain a copy of the License at
1891-# http://www.mozilla.org/MPL/
1892+# The contents of this file are subject to the GNU General Public License
1893+# version 3 (the "License"); you may not use this file except in
1894+# compliance with the License.
1895 #
1896 # Software distributed under the License is distributed on an "AS IS"
1897 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
1898
1899=== modified file 'boots/lib/lingos/piped_sql.py'
1900--- boots/lib/lingos/piped_sql.py 2010-02-21 03:57:45 +0000
1901+++ boots/lib/lingos/piped_sql.py 2010-02-24 20:39:13 +0000
1902@@ -4,12 +4,11 @@
1903 # lib/lingos/sql.py
1904 #
1905 # ##### BEGIN LICENSE BLOCK #####
1906-# Version: MPL 1.1
1907+# Version: GPLv3
1908 #
1909-# The contents of this file are subject to the Mozilla Public License
1910-# Version 1.1 (the "License"); you may not use this file except in
1911-# compliance with the License. You may obtain a copy of the License at
1912-# http://www.mozilla.org/MPL/
1913+# The contents of this file are subject to the GNU General Public License
1914+# version 3 (the "License"); you may not use this file except in
1915+# compliance with the License.
1916 #
1917 # Software distributed under the License is distributed on an "AS IS"
1918 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
1919
1920=== modified file 'boots/lib/lingos/python.py'
1921--- boots/lib/lingos/python.py 2010-02-20 23:42:07 +0000
1922+++ boots/lib/lingos/python.py 2010-02-24 20:39:13 +0000
1923@@ -4,12 +4,11 @@
1924 # lib/lingos/python.py
1925 #
1926 # ##### BEGIN LICENSE BLOCK #####
1927-# Version: MPL 1.1
1928+# Version: GPLv3
1929 #
1930-# The contents of this file are subject to the Mozilla Public License
1931-# Version 1.1 (the "License"); you may not use this file except in
1932-# compliance with the License. You may obtain a copy of the License at
1933-# http://www.mozilla.org/MPL/
1934+# The contents of this file are subject to the GNU General Public License
1935+# version 3 (the "License"); you may not use this file except in
1936+# compliance with the License.
1937 #
1938 # Software distributed under the License is distributed on an "AS IS"
1939 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
1940
1941=== modified file 'boots/lib/lingos/sql.py'
1942--- boots/lib/lingos/sql.py 2010-02-16 00:38:41 +0000
1943+++ boots/lib/lingos/sql.py 2010-02-24 20:39:13 +0000
1944@@ -4,12 +4,11 @@
1945 # lib/lingos/sql.py
1946 #
1947 # ##### BEGIN LICENSE BLOCK #####
1948-# Version: MPL 1.1
1949+# Version: GPLv3
1950 #
1951-# The contents of this file are subject to the Mozilla Public License
1952-# Version 1.1 (the "License"); you may not use this file except in
1953-# compliance with the License. You may obtain a copy of the License at
1954-# http://www.mozilla.org/MPL/
1955+# The contents of this file are subject to the GNU General Public License
1956+# version 3 (the "License"); you may not use this file except in
1957+# compliance with the License.
1958 #
1959 # Software distributed under the License is distributed on an "AS IS"
1960 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
1961
1962=== modified file 'boots/lib/ui/components/metacommands.py'
1963--- boots/lib/ui/components/metacommands.py 2010-02-07 01:52:52 +0000
1964+++ boots/lib/ui/components/metacommands.py 2010-02-24 20:39:13 +0000
1965@@ -4,12 +4,11 @@
1966 # lib/console.py
1967 #
1968 # ##### BEGIN LICENSE BLOCK #####
1969-# Version: MPL 1.1
1970+# Version: GPLv3
1971 #
1972-# The contents of this file are subject to the Mozilla Public License
1973-# Version 1.1 (the "License"); you may not use this file except in
1974-# compliance with the License. You may obtain a copy of the License at
1975-# http://www.mozilla.org/MPL/
1976+# The contents of this file are subject to the GNU General Public License
1977+# version 3 (the "License"); you may not use this file except in
1978+# compliance with the License.
1979 #
1980 # Software distributed under the License is distributed on an "AS IS"
1981 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
1982
1983=== modified file 'boots/lib/ui/generic.py'
1984--- boots/lib/ui/generic.py 2010-02-22 19:33:02 +0000
1985+++ boots/lib/ui/generic.py 2010-02-24 20:39:13 +0000
1986@@ -4,12 +4,11 @@
1987 # boots/lib/ui/generic.py
1988 #
1989 # ##### BEGIN LICENSE BLOCK #####
1990-# Version: MPL 1.1
1991+# Version: GPLv3
1992 #
1993-# The contents of this file are subject to the Mozilla Public License
1994-# Version 1.1 (the "License"); you may not use this file except in
1995-# compliance with the License. You may obtain a copy of the License at
1996-# http://www.mozilla.org/MPL/
1997+# The contents of this file are subject to the GNU General Public License
1998+# version 3 (the "License"); you may not use this file except in
1999+# compliance with the License.
2000 #
2001 # Software distributed under the License is distributed on an "AS IS"
2002 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
2003
2004=== modified file 'boots/lib/ui/plain.py'
2005--- boots/lib/ui/plain.py 2010-02-24 19:26:55 +0000
2006+++ boots/lib/ui/plain.py 2010-02-24 20:39:13 +0000
2007@@ -4,12 +4,11 @@
2008 # lib/ui/plain.py
2009 #
2010 # ##### BEGIN LICENSE BLOCK #####
2011-# Version: MPL 1.1
2012+# Version: GPLv3
2013 #
2014-# The contents of this file are subject to the Mozilla Public License
2015-# Version 1.1 (the "License"); you may not use this file except in
2016-# compliance with the License. You may obtain a copy of the License at
2017-# http://www.mozilla.org/MPL/
2018+# The contents of this file are subject to the GNU General Public License
2019+# version 3 (the "License"); you may not use this file except in
2020+# compliance with the License.
2021 #
2022 # Software distributed under the License is distributed on an "AS IS"
2023 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
2024
2025=== modified file 'setup.py'
2026--- setup.py 2010-02-17 03:49:02 +0000
2027+++ setup.py 2010-02-24 20:39:13 +0000
2028@@ -5,12 +5,11 @@
2029 # setup.py
2030 #
2031 # ##### BEGIN LICENSE BLOCK #####
2032-# Version: MPL 1.1
2033+# Version: GPLv3
2034 #
2035-# The contents of this file are subject to the Mozilla Public License
2036-# Version 1.1 (the "License"); you may not use this file except in
2037-# compliance with the License. You may obtain a copy of the License at
2038-# http://www.mozilla.org/MPL/
2039+# The contents of this file are subject to the GNU General Public License
2040+# Version 3 (the "License"); you may not use this file except in
2041+# compliance with the License.
2042 #
2043 # Software distributed under the License is distributed on an "AS IS"
2044 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
2045@@ -45,6 +44,7 @@
2046 boots_packages = ["boots"] + boots_api_packages +\
2047 boots_app_packages + boots_lib_packages
2048
2049+#TODO: Fix license
2050 setup(name="boots",
2051 version=boots_version,
2052 description="Drizzle CLI Client",
2053@@ -61,7 +61,7 @@
2054 "Environment :: Console",
2055 "Intended Audience :: Developers",
2056 "Intended Audience :: System Administrators",
2057- "License :: OSI Approved :: Mozilla Public License 1.1 (MPL 1.1)",
2058+ "License :: OSI Approved :: GNU General Public License (GPL)",
2059 "Operating System :: POSIX",
2060 "Programming Language :: Python",
2061 "Programming Language :: Python :: 2.6",
2062
2063=== modified file 'tests/boots/api/nodes/node_tests.py'
2064--- tests/boots/api/nodes/node_tests.py 2010-02-21 21:24:59 +0000
2065+++ tests/boots/api/nodes/node_tests.py 2010-02-24 20:39:13 +0000
2066@@ -5,12 +5,11 @@
2067 # tests/boots/tests.py
2068 #
2069 # ##### BEGIN LICENSE BLOCK #####
2070-# Version: MPL 1.1
2071+# Version: GPLv3
2072 #
2073-# The contents of this file are subject to the Mozilla Public License
2074-# Version 1.1 (the "License"); you may not use this file except in
2075-# compliance with the License. You may obtain a copy of the License at
2076-# http://www.mozilla.org/MPL/
2077+# The contents of this file are subject to the GNU General Public License
2078+# version 3 (the "License"); you may not use this file except in
2079+# compliance with the License.
2080 #
2081 # Software distributed under the License is distributed on an "AS IS"
2082 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
2083
2084=== modified file 'tests/boots/boots_unit_test.py'
2085--- tests/boots/boots_unit_test.py 2010-02-17 03:49:02 +0000
2086+++ tests/boots/boots_unit_test.py 2010-02-24 20:39:13 +0000
2087@@ -4,12 +4,11 @@
2088 # tests/boots/boots_unit_test.py
2089 #
2090 # ##### BEGIN LICENSE BLOCK #####
2091-# Version: MPL 1.1
2092+# Version: GPLv3
2093 #
2094-# The contents of this file are subject to the Mozilla Public License
2095-# Version 1.1 (the "License"); you may not use this file except in
2096-# compliance with the License. You may obtain a copy of the License at
2097-# http://www.mozilla.org/MPL/
2098+# The contents of this file are subject to the GNU General Public License
2099+# version 3 (the "License"); you may not use this file except in
2100+# compliance with the License.
2101 #
2102 # Software distributed under the License is distributed on an "AS IS"
2103 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
2104
2105=== modified file 'tests/boots/lib/lingos/lingo_tests.py'
2106--- tests/boots/lib/lingos/lingo_tests.py 2010-02-21 21:24:59 +0000
2107+++ tests/boots/lib/lingos/lingo_tests.py 2010-02-24 20:39:13 +0000
2108@@ -4,12 +4,11 @@
2109 # tests/boots/tests.py
2110 #
2111 # ##### BEGIN LICENSE BLOCK #####
2112-# Version: MPL 1.1
2113+# Version: GPLv3
2114 #
2115-# The contents of this file are subject to the Mozilla Public License
2116-# Version 1.1 (the "License"); you may not use this file except in
2117-# compliance with the License. You may obtain a copy of the License at
2118-# http://www.mozilla.org/MPL/
2119+# The contents of this file are subject to the GNU General Public License
2120+# version 3 (the "License"); you may not use this file except in
2121+# compliance with the License.
2122 #
2123 # Software distributed under the License is distributed on an "AS IS"
2124 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
2125
2126=== modified file 'tests/boots/tests.py'
2127--- tests/boots/tests.py 2010-02-17 04:49:04 +0000
2128+++ tests/boots/tests.py 2010-02-24 20:39:13 +0000
2129@@ -5,12 +5,11 @@
2130 # tests/boots/tests.py
2131 #
2132 # ##### BEGIN LICENSE BLOCK #####
2133-# Version: MPL 1.1
2134+# Version: GPLv3
2135 #
2136-# The contents of this file are subject to the Mozilla Public License
2137-# Version 1.1 (the "License"); you may not use this file except in
2138-# compliance with the License. You may obtain a copy of the License at
2139-# http://www.mozilla.org/MPL/
2140+# The contents of this file are subject to the GNU General Public License
2141+# version 3 (the "License"); you may not use this file except in
2142+# compliance with the License.
2143 #
2144 # Software distributed under the License is distributed on an "AS IS"
2145 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the

Subscribers

People subscribed via source and target branches

to status/vote changes: