Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 214 lines (157 sloc) 6.976 kB
f022983 @rcaputo Initial revision
authored
1 $Id$
2
6221c66 @rcaputo revise README
authored
3 -----------
4 What POE Is
5 -----------
53cd540 @rcaputo explained more about what the hell this is
authored
6
6221c66 @rcaputo revise README
authored
7 POE is an application kernel that uses event driven state machines as
8 threads. It includes a high-level I/O library that hides most of the
9 usual client/server tediosity. It has been developed and used in
10 mission-critical systems since August 1998.
1268917 @rcaputo reinvented it all again
authored
11
1db9198 @rcaputo lots of testing changes and additions
authored
12 ------------------
13 Basic Installation
14 ------------------
1268917 @rcaputo reinvented it all again
authored
15
d8788af @rcaputo Big documentation rewrite
authored
16 POE may be installed through the CPAN shell in the usual CPAN shell
17 manner. It typically is:
1268917 @rcaputo reinvented it all again
authored
18
d8788af @rcaputo Big documentation rewrite
authored
19 perl -MCPAN -e 'install POE'
1268917 @rcaputo reinvented it all again
authored
20
d8788af @rcaputo Big documentation rewrite
authored
21 It involves a little more work if you have an older CPAN shell:
1268917 @rcaputo reinvented it all again
authored
22
d8788af @rcaputo Big documentation rewrite
authored
23 perl -MCPAN -e shell
24 install POE
1268917 @rcaputo reinvented it all again
authored
25
6221c66 @rcaputo revise README
authored
26 --------------------------
27 Getting The Latest Version
28 --------------------------
29
30 POE can also be installed manually. Tarballs are available from at
31 least three sources:
32
33 The most recent stable release can be found at your favorite CPAN
34 mirror. If you don't have a favorite CPAN mirror, there's always:
1268917 @rcaputo reinvented it all again
authored
35
6221c66 @rcaputo revise README
authored
36 ftp://ftp.cpan.org/pub/CPAN/authors/id/R/RC/RCAPUTO/
37
38 The most recent development snapshot is available from two locations:
39
40 http://poe.perl.org/
41 http://sourceforge.net/projects/poe/
42
43 The SourceForge project includes a CVS repository browser, so you can
44 look around to see what's new. It also has facilities for people to
45 submit bug reports, patches, and support requests.
46
47 ---------------------------
48 Building The Latest Version
49 ---------------------------
f2789c3 @rcaputo updated documentation for new contributions
authored
50
d8788af @rcaputo Big documentation rewrite
authored
51 Downloading and unpacking the distribution are left as an exercise for
6221c66 @rcaputo revise README
authored
52 the reader. See the previous section for tarball locations.
53
54 System requirements and copatibility issues are covered in the main
55 POE manpage. You can preview them before building POE.
56
57 perldoc ./POE.pm
58
59 Please read the Changes file if you already have programs which use
60 POE. Sometimes there are changes that break compatibility with older
61 versions, and the Changes file can tell you about them before you
62 install POE.
63
64 less ./Changes
65
66 If everything looks good, build POE.
1268917 @rcaputo reinvented it all again
authored
67
d8788af @rcaputo Big documentation rewrite
authored
68 perl Makefile.PL
6221c66 @rcaputo revise README
authored
69 make
70
71 Then test the distribution. This is an important step since it also
72 ferrets out the modules POE needs. It reports on the POE components
73 which won't work because of missing dependencies, and it recommends
74 things to install. Please read the dependency report carefully.
75
d8788af @rcaputo Big documentation rewrite
authored
76 make test
0d6f19d @rcaputo Revised all the manpages. Split the manpages into separate PODs, and
authored
77
6221c66 @rcaputo revise README
authored
78 Now you're ready to install POE, but first you may want to look at its
79 samples. All the programs in the samples subdirectory are written to
80 run from the distribution directory without POE being installed yet.
0d6f19d @rcaputo Revised all the manpages. Split the manpages into separate PODs, and
authored
81
6221c66 @rcaputo revise README
authored
82 cd ./samples
83 ls -l
53cd540 @rcaputo explained more about what the hell this is
authored
84
6221c66 @rcaputo revise README
authored
85 [try some]
6456a34 @rcaputo dunno why
authored
86
6221c66 @rcaputo revise README
authored
87 cd ..
a16275a @rcaputo added credits; updated availability
authored
88
d8788af @rcaputo Big documentation rewrite
authored
89 Finally you can install it:
f2789c3 @rcaputo updated documentation for new contributions
authored
90
d8788af @rcaputo Big documentation rewrite
authored
91 make install
f2789c3 @rcaputo updated documentation for new contributions
authored
92
6221c66 @rcaputo revise README
authored
93 --------------------
94 Distribution Details
95 --------------------
96
97 This distribution comes with several sample and tutorial programs in
98 its samples/ directory. These programs are NOT installed because they
99 have limited use and take up a lot of space and have limited use.
100 They will be split into a separate distribution in the near future.
101
102 The lib/ directory includes a few useful utilities, including a
103 relatively portable bidirectional pipe creator. There's also a small
104 test coverage module, harness, and report. The test coverage summary
105 at the end of this file was generated by that system. These utilities
106 aren't installed either.
107
108 The test programs, in t/, may also be interesting examples, although
109 they're more geared towards exercising POE. The tests also aren't
110 installed.
111
112 All in all, the actual installed bits of POE are probably around a
113 third of the total distribution, and about a quarter of B<that> is
114 documentation.
115
5225b6b @rcaputo readme fixes
authored
116 ------------
117 Test Results
118 ------------
1db9198 @rcaputo lots of testing changes and additions
authored
119
6221c66 @rcaputo revise README
authored
120 Some of the tests, like Tk's and Gtk's, can be interactive, if only to
121 place a window. Unfortunately, the time it takes to acknowledge these
122 interactive tests skews test results. Any results that include
123 interactive tests will not include times.
9dbde82 @rcaputo finished README tweaks for 0.1103
authored
124
6221c66 @rcaputo revise README
authored
125 ** POE 0.1202 on OS/2
5225b6b @rcaputo readme fixes
authored
126
127 Hardware: Cyrix P166+; 64MB RAM
128 System : OS/2 4.0, Fix 13
129 Perl : v5.6.0
130 Gtk : (not installed)
131 Tk : (not installed)
132 Event : (not installed)
9dbde82 @rcaputo finished README tweaks for 0.1103
authored
133
6221c66 @rcaputo revise README
authored
134 All tests successful, 4 tests skipped.
135 Files=22, Tests=388, 130 wallclock secs ( 0.00 cusr + 0.00 csys = 0.00 CPU)
ad3be79 @rcaputo gtk debugged... moving to os/2 for testing
authored
136
a710504 @rcaputo Tweak README and Makefile.PL
authored
137 ** POE 0.1202 on FreeBSD
ad3be79 @rcaputo gtk debugged... moving to os/2 for testing
authored
138
5225b6b @rcaputo readme fixes
authored
139 Hardware: AMD 486-40; 16MB RAM
140 System : FreeBSD 4.0-STABLE
141 Perl : v5.6.0
142 Gtk : 0.7000
143 Tk : 800.021
144 Event : 0.79
9dbde82 @rcaputo finished README tweaks for 0.1103
authored
145
6221c66 @rcaputo revise README
authored
146 All tests successful.
a710504 @rcaputo Tweak README and Makefile.PL
authored
147 Files=22, Tests=413, [ some tests paused ]
d67e22b @rcaputo more test results to README
authored
148
a710504 @rcaputo Tweak README and Makefile.PL
authored
149 ** POE 0.1202 on Linux
d67e22b @rcaputo more test results to README
authored
150
5225b6b @rcaputo readme fixes
authored
151 Hardware: dual Celeron 500; 265MB RAM
152 System : Linux 2.2.15 SMP
153 Perl : v5.6.0
154 Gtk : (not installed)
155 Tk : (not installed)
156 Event : 0.79
d67e22b @rcaputo more test results to README
authored
157
6221c66 @rcaputo revise README
authored
158 All tests successful, 2 tests skipped.
a710504 @rcaputo Tweak README and Makefile.PL
authored
159 Files=22, Tests=397, 103 wallclock secs (18.80 cusr + 0.77 csys = 19.57 CPU)
d67e22b @rcaputo more test results to README
authored
160
a710504 @rcaputo Tweak README and Makefile.PL
authored
161 ** POE 0.1202 on Solaris/SunOS
162
163 (If anyone knows how I can determine
164
165 Hardware: SPARCstation-20; unknown speed; 320MB RAM
166 System : SunOS 5.7
167 Perl : 5.005_03
168 Gtk : (not installed)
169 Tk : (not installed)
170 Event : (not installed)
171
172 All tests successful, 4 tests skipped.
173 Files=22, Tests=388, 112 wallclock secs (52.44 cusr + 4.66 csys = 57.10 CPU)
174
175 -------------
176 Test Coverage
177 -------------
178
179 The test coverage numbers are statistically meaningless. Still, 100%
180 coverage is a fun goal. Increasing the coverage percents gives the
181 author some small sense of accomplishment, and it assures users that
182 something's being done to assure POE's quality.
183
184 These results are for POE 0.1202 on the FreeBSD test machine. This
185 machine is the slowest of the bunch, but it also has the most support
186 libraries installed. The percent deltas are since version 0.1110.
ececdbf @rcaputo minor README tweaks and a missing inclusion
authored
187
9dbde82 @rcaputo finished README tweaks for 0.1103
authored
188 Source File = Ran / Total = Covered
d67e22b @rcaputo more test results to README
authored
189 POE.pm = 23 / 24 = 95.83%
5225b6b @rcaputo readme fixes
authored
190 POE/Component.pm = 5 / 5 = 100.00%
ed14a93 @rcaputo final doc tweaks for 0.1104 release
authored
191 POE/Component/Server/TCP.pm = 23 / 23 = 100.00%
5225b6b @rcaputo readme fixes
authored
192 POE/Driver.pm = 5 / 5 = 100.00%
9dbde82 @rcaputo finished README tweaks for 0.1103
authored
193 POE/Driver/SysRW.pm = 42 / 54 = 77.78%
5225b6b @rcaputo readme fixes
authored
194 POE/Filter.pm = 5 / 5 = 100.00%
9dbde82 @rcaputo finished README tweaks for 0.1103
authored
195 POE/Filter/Block.pm = 37 / 37 = 100.00%
b22f8d6 @rcaputo test and coverage for README
authored
196 POE/Filter/HTTPD.pm = 11 / 88 = 12.50%
197 POE/Filter/Line.pm = 77 / 82 = 93.90%
9dbde82 @rcaputo finished README tweaks for 0.1103
authored
198 POE/Filter/Reference.pm = 60 / 66 = 90.91%
199 POE/Filter/Stream.pm = 11 / 11 = 100.00%
a710504 @rcaputo Tweak README and Makefile.PL
authored
200 POE/Kernel.pm = 613 / 815 = 75.21% (+0.95%)
d67e22b @rcaputo more test results to README
authored
201 POE/NFA.pm = 9 / 144 = 6.25%
a710504 @rcaputo Tweak README and Makefile.PL
authored
202 POE/Preprocessor.pm = 147 / 167 = 88.02% (+0.07%)
5225b6b @rcaputo readme fixes
authored
203 POE/Session.pm = 126 / 181 = 69.61%
204 POE/Wheel.pm = 11 / 11 = 100.00%
a710504 @rcaputo Tweak README and Makefile.PL
authored
205 POE/Wheel/FollowTail.pm = 75 / 96 = 78.12% (+2.26%)
206 POE/Wheel/ListenAccept.pm = 39 / 53 = 73.58% (+3.37%)
b22f8d6 @rcaputo test and coverage for README
authored
207 POE/Wheel/ReadWrite.pm = 111 / 184 = 60.33%
a710504 @rcaputo Tweak README and Makefile.PL
authored
208 POE/Wheel/SocketFactory.pm = 197 / 234 = 84.19% (+1.32%)
209 All Told = 1627 / 2285 = 71.20% (+0.74%)
f2789c3 @rcaputo updated documentation for new contributions
authored
210
ad3be79 @rcaputo gtk debugged... moving to os/2 for testing
authored
211 Thanks for reading!
0d6f19d @rcaputo Revised all the manpages. Split the manpages into separate PODs, and
authored
212
a710504 @rcaputo Tweak README and Makefile.PL
authored
213 -- Rocco Caputo / troc@netrus.net / poe.perl.org / poe.sourceforge.net
Something went wrong with that request. Please try again.