1 | <html>
|
---|
2 | <!-- ***** BEGIN LICENSE BLOCK *****
|
---|
3 | - Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
---|
4 | -
|
---|
5 | - The contents of this file are subject to the Mozilla Public License Version
|
---|
6 | - 1.1 (the "License"); you may not use this file except in compliance with
|
---|
7 | - the License. You may obtain a copy of the License at
|
---|
8 | - http://www.mozilla.org/MPL/
|
---|
9 | -
|
---|
10 | - Software distributed under the License is distributed on an "AS IS" basis,
|
---|
11 | - WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
---|
12 | - for the specific language governing rights and limitations under the
|
---|
13 | - License.
|
---|
14 | -
|
---|
15 | - The Original Code is PyXPCOM.
|
---|
16 | -
|
---|
17 | - The Initial Developer of the Original Code is
|
---|
18 | - ActiveState Tool Corporation.
|
---|
19 | - Portions created by the Initial Developer are Copyright (C) 2000-2001
|
---|
20 | - the Initial Developer. All Rights Reserved.
|
---|
21 | -
|
---|
22 | - Contributor(s):
|
---|
23 | -
|
---|
24 | - Alternatively, the contents of this file may be used under the terms of
|
---|
25 | - either the GNU General Public License Version 2 or later (the "GPL"), or
|
---|
26 | - the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
---|
27 | - in which case the provisions of the GPL or the LGPL are applicable instead
|
---|
28 | - of those above. If you wish to allow use of your version of this file only
|
---|
29 | - under the terms of either the GPL or the LGPL, and not to allow others to
|
---|
30 | - use your version of this file under the terms of the MPL, indicate your
|
---|
31 | - decision by deleting the provisions above and replace them with the notice
|
---|
32 | - and other provisions required by the LGPL or the GPL. If you do not delete
|
---|
33 | - the provisions above, a recipient may use your version of this file under
|
---|
34 | - the terms of any one of the MPL, the GPL or the LGPL.
|
---|
35 | -
|
---|
36 | - ***** END LICENSE BLOCK ***** -->
|
---|
37 |
|
---|
38 | <head>
|
---|
39 | <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
---|
40 | <meta name="GENERATOR" content="Microsoft FrontPage 4.0">
|
---|
41 | <meta name="ProgId" content="FrontPage.Editor.Document">
|
---|
42 | <title>Python XPCOM module</title>
|
---|
43 | </head>
|
---|
44 |
|
---|
45 | <body>
|
---|
46 |
|
---|
47 | <h1>Python XPCOM Package</h1>
|
---|
48 |
|
---|
49 | <p>Mozilla CVS Version - Last updated May 2002</p>
|
---|
50 | <p>This is the readme for the Python interface to <b>XPCOM</b>.</p>
|
---|
51 | <p><b>XPCOM </b>is an acronym for "Cross Platform COM". It has
|
---|
52 | come out of the <a href="http://www.mozilla.org">Mozilla</a> project, which
|
---|
53 | maintains the <a href="http://www.mozilla.org/projects/xpcom/">main XPCOM
|
---|
54 | project pages.</a> The Python XPCOM package is a set of Python bindings to
|
---|
55 | XPCOM, allowing a Python programmer to both use and implement XPCOM
|
---|
56 | interfaces. If you don't know what <a href="http://www.python.org">Python</a>
|
---|
57 | is, then none of this probably interests you at all!</p>
|
---|
58 | <p>This readme has links to the following information:</p>
|
---|
59 | <ul>
|
---|
60 | <li><a href="doc/configure.html">Building, Configuring and
|
---|
61 | Testing the Python
|
---|
62 | XPCOM Package</a></li>
|
---|
63 | <li><a href="doc/tutorial.html">A tutorial for the Python XPCOM package</a></li>
|
---|
64 | <li>Some <a href="doc/advanced.html">advanced
|
---|
65 | topics and other miscellaneous information</a></li>
|
---|
66 | <li><a href="doc/architecture.html">Information on the architecture</a></li>
|
---|
67 | <li>A list of the <a href="#KnownBugs">known issues and bugs</a>, the <a href="#ReleaseHistory">release
|
---|
68 | history</a> and the <a href="doc/credits.html">PyXPCOM acknowledgements</a></li>
|
---|
69 | </ul>
|
---|
70 | <p>Note: <b>This package requires Python 1.6 or later</b>; we recommend using
|
---|
71 | the latest
|
---|
72 | official Python version. This package works
|
---|
73 | very well with the latest <a href="http://www.ActiveState.com/Products/ActivePython">ActivePython</a>,
|
---|
74 | and does not require any external modules or packages beyond what is provided in
|
---|
75 | the core Python release for each platform.</p>
|
---|
76 | <h2>About the Python XPCOM Package</h2>
|
---|
77 | <p>The Python XPCOM Package was developed by <a href="http://www.ActiveState.com">ActiveState
|
---|
78 | Tool Corporation</a>, and came out of their <a href="http://www.ActiveState.com/Products/Komodo">Komodo
|
---|
79 | project</a>. The Python XPCOM package is released under the <a href="http://www.mozilla.org/MPL/">Mozilla
|
---|
80 | Public License (MPL)</a></p>
|
---|
81 | <p>Please see the <a href="doc/credits.html">credits file</a> for a list of
|
---|
82 | contributors. </p>
|
---|
83 | <h2><a name="KnownBugs">Known Bugs</a>/Issues</h2>
|
---|
84 | <ul>
|
---|
85 | <li>No attempt is made to recurse sub-directories of the main
|
---|
86 | "components" directory. This is because we may decide on some
|
---|
87 | smart scheme for recursion (similar to Python packages), and don't want people
|
---|
88 | to rely on simple recursive searches.</li>
|
---|
89 | <li>No unregistration support at all. The main Python Component Loader supports
|
---|
90 | unregistration, but the actual Python objects themselves do not support unregistration. It is unclear if the Component Loader
|
---|
91 | unregistration process needs to manually remove each component it is responsible
|
---|
92 | for.</li>
|
---|
93 | <li>All Python-implemented components unconditionally support
|
---|
94 | weak-references. There is no way to disable this feature for any or all
|
---|
95 | components. It is unclear if there is a need to prevent this, but it is
|
---|
96 | documented here just in case!</li>
|
---|
97 | </ul>
|
---|
98 | <h2><a name="ReleaseHistory">Release History</a></h2>
|
---|
99 | <h3>Version 0.90 - January 2001</h3>
|
---|
100 | <ul>
|
---|
101 | <li>First public release.</li>
|
---|
102 | </ul>
|
---|
103 | <h3>Version 0.91 - January 2001</h3>
|
---|
104 | <ul>
|
---|
105 | <li>Fix a seg fault on Linux when PYTHONPATH is not set.</li>
|
---|
106 | <li>Changes to allow building with stand-alone XPCOM.</li>
|
---|
107 | </ul>
|
---|
108 |
|
---|
109 | <h3>Version 0.92 - May 2001</h3>
|
---|
110 | <p>Implement interface flattening. You should (almost) never need to use <i>QueryInterface()</i>!
|
---|
111 | We are still 100% backwards compatible, so usage of QI still works - just is
|
---|
112 | generally not necessary.</p>
|
---|
113 |
|
---|
114 | <h3>Version 0.93 - May 2002</h3>
|
---|
115 |
|
---|
116 | <p>Implement <i>nsIVariant</i> and all new string types. Complete move to
|
---|
117 | autoconf build system.</p>
|
---|
118 |
|
---|
119 | </body>
|
---|
120 |
|
---|
121 | </html>
|
---|