Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 138 lines (87 sloc) 3.986 kB
f022983 @rcaputo Initial revision
authored
1 $Id$
2
27efbbf @rcaputo updated
authored
3 APOLOGIES
4 =========
53cd540 @rcaputo explained more about what the hell this is
authored
5
27efbbf @rcaputo updated
authored
6 Version 0.06 breaks backward compatibility in several small but
7 fundamental ways. As a result, programs written in earlier versions
8 will not work correctly.
53cd540 @rcaputo explained more about what the hell this is
authored
9
27efbbf @rcaputo updated
authored
10 These changes were not made lightly. They are the product much
11 discussion, testing and benchmarking. I regret needing to make them,
12 but I believe they have improved version 0.06 and helped shape POE's
13 future for the better.
53cd540 @rcaputo explained more about what the hell this is
authored
14
27efbbf @rcaputo updated
authored
15 Please accept my deepest apologies for breaking your code.
53cd540 @rcaputo explained more about what the hell this is
authored
16
17
27efbbf @rcaputo updated
authored
18 ABOUT POE
19 =========
1268917 @rcaputo reinvented it all again
authored
20
27efbbf @rcaputo updated
authored
21 POE is an acronym for Perl Object Environment.
1268917 @rcaputo reinvented it all again
authored
22
27efbbf @rcaputo updated
authored
23 POE is a programming framework for event-driven state machines.
1268917 @rcaputo reinvented it all again
authored
24
56db363 @rcaputo updated for 0.06
authored
25 POE is a high-level, functional interface to select, alarm and IPC.
1268917 @rcaputo reinvented it all again
authored
26
56db363 @rcaputo updated for 0.06
authored
27 POE is a cooperative multi-threading model, written only in Perl.
1268917 @rcaputo reinvented it all again
authored
28
56db363 @rcaputo updated for 0.06
authored
29 POE is a component architecture.
1268917 @rcaputo reinvented it all again
authored
30
27efbbf @rcaputo updated
authored
31 POE does many things. The sample programs in the tests directory only
32 begin to scratch the surface.
1268917 @rcaputo reinvented it all again
authored
33
27efbbf @rcaputo updated
authored
34 Despite all this, POE is actually pretty simple. It starts with a
35 basic premise and builds upon it. Most of the things POE are, are
36 just different ways of looking at it.
1268917 @rcaputo reinvented it all again
authored
37
f2789c3 @rcaputo updated documentation for new contributions
authored
38
27efbbf @rcaputo updated
authored
39 COMPATIBILITY
40 =============
1268917 @rcaputo reinvented it all again
authored
41
56db363 @rcaputo updated for 0.06
authored
42 POE has been tested with Perl 5.004_04, 5.005_02, 5.005_53 and
43 5.005_54 on Linux, FreeBSD, HP-UX, Solaris7, and OS/2. For more
44 detailed compatibility information, please see
27efbbf @rcaputo updated
authored
45 <http://www.connect.net/gbarr/cpan-test/by-dist/POE.html>.
1268917 @rcaputo reinvented it all again
authored
46
6c3bda3 @rcaputo document prerequisite autoinstallation
authored
47 As of this writing, POE does not work on Windows platforms. This has
48 been traced to differences between Windows' and the rest of the
49 world's ioctl and select calls.
1268917 @rcaputo reinvented it all again
authored
50
27efbbf @rcaputo updated
authored
51 POE is suspected to work on MacOS. If someone could confirm or deny
52 this, it would be greatly appreciated.
1268917 @rcaputo reinvented it all again
authored
53
6c3bda3 @rcaputo document prerequisite autoinstallation
authored
54 CPAN.pm will ensure that you have up-to-date copies of all the modules
55 POE uses, even if you don't need them.
56
56db363 @rcaputo updated for 0.06
authored
57 Non-requirements:
58
59 POE is compatible with fork(), but it doesn't require it.
60
61 If Time::HiRes is available, POE will use it to support
62 high-resolution event timing. Nothing untoward happens if it's not.
63
64 Requirements:
65
66 POE uses POSIX for portability.
67
68 Some of POE's tests require a recent IO bundle, but you get that for
69 free with recent versions of Perl.
70
71 If you plan on using Filter::Reference, you'll also need either
72 Storable or FreezeThaw so it can freeze and thaw data between systems.
73 Storable tends to be faster.
74
75 If you plan on using Filter::HTTPD, you'll need a small world of
76 modules to go with it: HTTP::Status; HTTP::Request; HTTP::Date; and
77 URI::URL.
78
79 tests/httpd.perl uses Filter::HTTPD, which uses all that other stuff.
80
81 tests/preforkedserver.perl uses fork(), which may not be available on
82 your planet.
83
1268917 @rcaputo reinvented it all again
authored
84
27efbbf @rcaputo updated
authored
85 AVAILABILITY
86 ============
1268917 @rcaputo reinvented it all again
authored
87
56db363 @rcaputo updated for 0.06
authored
88 The latest stable release of POE is available three ways:
89
90 perl -MCPAN -e 'install POE'
91
92 In the /authors/id/R/RC/RCAPUTO/ on your favorite CPAN mirror.
93
94 Or at <http://www.cpan.org/authors/id/R/RC/RCAPUTO/>, if you don't
95 have a favorite CPAN mirror.
96
97 Beta versions of the next release are available from the author. They
98 tend to be mostly stable.
1268917 @rcaputo reinvented it all again
authored
99
100
27efbbf @rcaputo updated
authored
101 CREDITS
102 =======
1268917 @rcaputo reinvented it all again
authored
103
27efbbf @rcaputo updated
authored
104 Thanks to Artur Bergman <artur@vogon-solutions.com> (sky) for many
105 useful suggestions and contributions. He has had a hand in the design
106 and/or implementation of most of POE's improvements.
1268917 @rcaputo reinvented it all again
authored
107
56db363 @rcaputo updated for 0.06
authored
108 Thanks to Dave Paris <dparis@w3works.com> (a-mused) for benchmark
109 results, testing, feedback and suggestions. Version 0.06 runs much
110 better under high loads thanks to his efforts.
111
112 Thanks to Robert Seifer (Crimson) for extreme debugging beyond the
113 call of duty. And sanity.
1268917 @rcaputo reinvented it all again
authored
114
53cd540 @rcaputo explained more about what the hell this is
authored
115
27efbbf @rcaputo updated
authored
116 GETTING STARTED
117 ===============
53cd540 @rcaputo explained more about what the hell this is
authored
118
56db363 @rcaputo updated for 0.06
authored
119 If you've been using POE since before 0.06, please, PLEASE read the
120 Changes file before installing. Many things have been broken between
121 versions 0.05 and 0.06.
6456a34 @rcaputo dunno why
authored
122
27efbbf @rcaputo updated
authored
123 To build and test this distribution, type:
a16275a @rcaputo added credits; updated availability
authored
124
27efbbf @rcaputo updated
authored
125 perl Makefile.PL
56db363 @rcaputo updated for 0.06
authored
126 make
27efbbf @rcaputo updated
authored
127 make test
f2789c3 @rcaputo updated documentation for new contributions
authored
128
27efbbf @rcaputo updated
authored
129 Actually, 'make test' doesn't do anything important. The real tests
130 exist within the tests directory, and just happen to be examples of
131 how to use different parts of POE.
f2789c3 @rcaputo updated documentation for new contributions
authored
132
56db363 @rcaputo updated for 0.06
authored
133 Once everything looks good, POE can be installed by typing:
acd0ccd @rcaputo updated to reflect new version and features (d'oh)
authored
134
27efbbf @rcaputo updated
authored
135 make install
f2789c3 @rcaputo updated documentation for new contributions
authored
136
27efbbf @rcaputo updated
authored
137 -- Rocco Caputo / troc@netrus.net / Thank you for reading.
Something went wrong with that request. Please try again.