PennMUSH Community

root/1.8.3/tags/p5rc1/CHANGES.183

Revision 1097, 9.3 kB (checked in by shawnw, 1 year ago)

Prep for 1.8.3p5

Line 
1
2 This is the most current changes file for PennMUSH. Please look it
3 over; each version contains new things which might significantly affect
4 the function of your server.  Changes are reported in reverse
5 chronological order (most recent first)
6
7 [TAP] is T. Alexander Popiel, a PennMUSH developer (aka Talek)
8 [SW] is Shawn Wagner, a PennMUSH developer (aka Raevnos)
9 [EEH] is Ervin Hearn III, a PennMUSH developer (aka Noltar)
10 [GM] is Greg Millam, a PennMUSH developer (aka Walker)
11 [3] refers to code by (or inspired by) TinyMUSH 3.0
12 [MUX] refers to code by (or inspired by) TinyMUX 2.x
13 [Rhost] refers to code by (or inspired by) RhostMUSH
14
15 ==========================================================================
16
17 Version 1.8.3 patchlevel 5                      August 27, 2007
18
19 Major changes:
20  * Significant rewrite of ansi parsing and better ansi support
21    for many string-handling functions. Patch by Sketch.
22  * Rewrite of the softcode regression testing framework, and
23    addition of more tests. [SW]
24
25 Minor changes:
26  * Store a pointer to the start of a player's mailbox in objdata
27    instead of the connection struct.
28  * Experimental rewrite of hash tables to use the cuckoo hashing
29    algorithm, with constant-time lookups even in the worst case.
30    (And appears to have generally faster lookup even in normal usage.)
31  * Regular expression @sitelocks save the compiled regexp instead of
32    recompiling every time the rule is tested.
33  * Added %4 to @pageformat, which is the default page message.
34
35 Commands:
36  * Added @message, which makes it easy to use @chatformat or
37    @pageformat via @hooks, or to create your own *format.
38
39 Functions:
40  * Added message(), the function version of @message.
41
42 Fixes:
43  * decode64() does better validation of its input. [SW]
44  * Various compile fixes reported by Interevis and Kimiko.
45    Win32 patched by Intrevis.
46  * @sitelock does better error reporting. [SW]
47  * Crash bug related to regeditall fixed.
48  * @decompile didn't handle attribute trees correctly.
49  * Compile failure in funstr.c on some systems. Fixed by Boris.
50  * '@set =foo' failed silently. Reported by Talvo.
51  * Fixes from 1.8.2p7
52
53 Version 1.8.3 patchlevel 4                      July 9, 2007
54
55 Major changes:
56   * Parts of the build process that used a shell script to regenerate
57     certain headers now use perl scripts instead, making them much
58     faster. [SW]
59
60 Minor changes:
61   * The hash tables used by lmath() and html functions now
62     use perfect hashing to speed up lookups. [SW]
63   * The various slab allocators used by attributes and locks
64     and other areas have been replaced with a generic
65     slab allocator. Also, many more allocations are handled
66     by the new code.
67   * Use the writev() system call to send data to unencrypted
68     connections in bigger chunks instead of using multiple send()s of
69     smaller chunks.
70   * New lock types can be added via src/local.c instead of having to
71     alter the table in src/locks.c. Based on patch by Talvo.
72   * Builtin lock names and default flags are stored in a hash table
73     instead of a list. [SW]
74
75 Attributes:
76   * @chatformat allows you to customize Channel chat messages
77     that you see. [GM]
78
79 Commands:
80   * '@list allocations' displays allocation information.
81   * @stats/tables no longer dumps mem_check information.
82   * @search (and by relation search()) now has an 'elock'
83     search class, permitting boolean expression searches. [GM]
84   * @channel/recall extended to support recalling by time. Example:
85     '@chan/recall Foo=1h' will recall lines only from the past
86     hour. Patch by Talvo.
87  
88 Functions:
89   * cond() works like an if, else if, else if ... ncond(),
90     condall(), ncondall() also added. [GM]
91   * speak() accepts a 1st argument beginning with '&' to use
92     an arbitrary speaker name. [GM]
93   * New speakpenn() function handles : <pose> in Penn style.
94     Suggested by Sketch, patch by Javeln.
95   * lmath() accepts dist2d and dist3d. Suggested by Jess.
96   * functions(local) returns just local @functions. [SW]
97   * New encode64() and decode64() functions convert between
98     normal text and base64 encoded text on games that have
99     SSL support compiled in. [SW]
100   * encrypt() and decrypt() now take an optional 3rd argument
101     to control using base 64 encoding. Suggested by Noltar.
102  
103 Fixes:
104   * Compile fixes for some linux (And other?) systems that expect
105     all libraries to be after source files on the command line
106     when linking. Reported by Balerion.
107   * Compile fix for some Postgresql installations. Reported by
108     Nymeria.
109   * Fix to fraction() when dealing with numbers that can't
110     be fractioned. Discovered by Ashen-Shugar.
111   * Fixes to align() and coalescing by Javelin. Bugs reported by
112     Sketch and tramp.
113   * Fixes to speak() to bring it closer to Tiny's behavior in
114     common cases by Sketch and Javelin.
115   * Fixes to ANSI output where extra ^[[m were being sent.
116   * Default flags weren't getting set on some attributes in certain
117     cases. Report by Talvo.
118   * Fixes from 1.8.2p6
119
120 Version 1.8.3 patchlevel 3                      June 13, 2007
121
122 Minor changes:
123   * The sockets used to talk to info_slave changed from streams
124     to datagrams, simplifying code. [SW]
125   * info_slave deals better with simultaneous connections. [SW]
126   * info_slave requires the presence of the socketpair(2) function.
127     It was already using it anyways.
128   * Use of some system calls with portability issues encapsulated in
129     wrapper functions. [SW]
130   * sql() returns error codes directly instead of notifying %!. [SW]
131
132 Functions:
133   * lattr() and lattrp() take an optional delimiter argument. Suggested
134     by Nathan Baum. [SW]
135   * New csecs() and msecs() functions, like ctime() and mtime() but
136     returning the time in seconds instead of a formatted string. Based on
137     a patch by Talvo.
138   * ctime() and mtime() take an optional second argument to control which
139     time zone the time is displayed for: UTC or the server's. [SW]
140   * fn() by Javelin
141   * letq(). Suggested by Nathan Baum. [SW]
142  
143 Fixes:
144   * Assorted compiler warning fixes. [SW]
145   * Compile fix on OS X 10.3. Reported by Viila. [SW]
146   * @sql wasn't enabled if Sqlite3 was the only database turned on.
147     Reported by qa'toq.
148   * Problems with sql() using Sqlite3. Reported by qa'toq. [SW]
149   * Problems with null queries using MySQL. Reported by duckwa. [SW]
150   * Start fixing code that assumes that int and long are the same
151     size. [SW]
152   * Linting of code that uses strcpy, strncpy() and sprintf() to
153     rule out remote possibilities of buffer overflows. [SW]
154   * align() off-by-one error in left coalescing fixed. Reported by
155     Sketch. [Javelin]
156   * User locks were broken in the last patch. Reported by Michael Brazaitis.
157     [SW]
158   * ./configure --without-ssl works. Reported by Starr. [SW]
159   * objid matcher didn't work properly. [SW]
160   * Many functions that used parse_dbref updated to use parse_objid,
161     to see more objid compliance. [GM]
162   * Fixes from 1.8.2p5
163
164 Version 1.8.3 patchlevel 2                      May 16, 2007
165
166 Major changes:
167   * configuration is now done by autoconf. ./Configure is
168     now ./configure and its options have changed. See
169     INSTALL and ./configure --help [SW]
170   * Support for the postgresql SQL server. Javelin.
171   * Support for sqlite3 SQL databases. [SW]
172
173 Minor changes:
174   * You can no longer run a mush as root. [SW]
175   * cemit_noisy config option.  Suggested by Kimiko. [SW]
176   * @function sorts the list of user-defined functions
177     by object and then name. Suggested by Trinsec. [SW]
178   * Better logging of the register login screen command
179     for systems without a sendmail program. [SW]
180   * Assorted refactoring of source code. [SW]
181  
182 Functions:
183   * isobjid(). By Balerion.
184   * player() returns the dbref of the player connected to a given
185     port.  By  Nathan Baum.
186   * root(X,3) uses the C cbrt() function if available. [SW]
187   * New formats for align() that allow flowing text. Javelin.
188   * isdbref() understands objids. By Balerion.
189
190 Fixes:
191   * regmatch() broken with %q-registers. Javelin.
192   * Better checking of dbref config options to make sure they're
193     valid objects. Suggested by Talvo. [SW]
194   * Fixed assorted cases of accidently modifying const objects.
195     Thanks to Jake. [SW]
196   * Fixed a crash bug in strmatch(). [GM]
197   * wrap() of Pueblo tags didn't work very well. Fixed by
198     Sketch.
199   * @wipe's count is accurate when attribute trees are being
200     deleted. Reported by Talvo.
201  
202 Version 1.8.3 patchlevel 1                      March 11, 2007
203
204 Minor changes:
205   * page command now processes page output through PAGEFORMAT
206     attribute, allowing user-set page messages. [GM]
207   * sql_host configuration option now permits alternate tcp port.
208     Suggested by Mercutio. Patch by Javelin.
209   * Refactoring of fun_stringsecs to help function etime_to_secs.
210     Patch by Javelin.
211   * %1 in @aconnect works like in @adisconnect. Patch by Javelin.
212
213 Fixes:
214   * restart script once again includes DATEMSK export for
215     extended convtime support. Reported by KimikoMuffin.
216   * Memory leak in 1.8.3p0 regedit fixed.
217   * Fixes included from 1.8.2p3.
218   * Document change in @chan/title behavior with commas.
219
220 Version 1.8.3 patchlevel 0                      January 27, 2007
221
222 Major changes:
223   * Rewrite of color handling. [GM]
224
225 Minor changes:
226   * Cleaned up the internals of @wipe. [SW]
227   * strmatch() now takes a third argument, to store wildcard captures. [GM]
228   * Termination of OS/2 support. [SW]
229
230 Fixes:
231   * Fixes included from versions up to 1.8.2p2.
Note: See TracBrowser for help on using the browser.