PennMUSH Community

root/1.8.3/tags/p6rc1/CHANGES.183

Revision 1167, 11.5 kB (checked in by shawnw, 1 year ago)

Merge devel into trunk for p6 release

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 6                      Jan 01, 2008
18
19 Major changes:
20  * If configure finds a copy of the pcre library installed, that will
21    be used instead of the (old) version bundled with Penn. use
22    --with-pcre=/path/to/it if it's not in the usual places, or
23    --with-pcre=no to force use of the bundled version.
24
25 Minor changes:
26  * @sitelock when there are no rules will now say that instead of
27    having no output. By Talvo.
28  * Log files use locking to prevent the small chance of more than one
29    process writing to the same error log at the same time.
30  * info_slave's logging is more clear as to its source.
31  * Several places that used the select() system call now favor poll()
32    and/or socket timeouts instead. (The main event loop still uses
33    select() for now.)
34  * A wildcard help topic search (help foo*) that only matches one
35    entry will display that entry. Suggested by Cheetah.
36  * New switches for commands no longer have to be added to the
37    SWITCHES file; the internal list of switches is now built based on
38    what switches are given in the command table and cmdlocal.c
39    additions. Suggested by Talek.
40
41
42 Flags and powers:
43  * The announce power now also grants the ability to change the motd.
44    Suggested by Yuriko.
45  * New hook power grants rights to use @hook. Suggested by Paige.
46  * Windows compile fixes by Intrevis.
47
48 Commands:
49  * @motd gives better feedback when clearing a message.
50  * The @tport/@otport/@atport/etc. attributes that get evalulated on a
51    @teleport now get the dbref of the object doing the teleport in %0
52    and the teleported object's old location in %1. Suggested by Daniel
53    Cheng.
54
55 Functions:
56  * root() uses an improved algorithm to give a more precise
57    result.
58  * log(N,2) uses the C log2() function if available.
59  * log(N,e) takes the natural logarithm of N, like ln().
60  * lports() now takes an optional viewer argument, a la lwho(). By
61    Talvo.
62
63 Fixes:
64  * Typo in info_slave preventing simultaneous hostname lookups fixed.
65  * Compiliation fix with some compilers. Reported by Kimiko.
66  * ident lookups of new connections was broken for several
67    patchlevels.  Works again. Sometimes.
68  * Cleaned up some warnings generated by gcc 4.2
69  * Fixed some minor bugs detected by running under valgrind.
70  * OpenBSD configuration fixes.
71
72 Version 1.8.3 patchlevel 5                      October 6, 2007
73
74 Major changes:
75  * Significant rewrite of ansi parsing and better ansi support
76    for many string-handling functions. Patch by Sketch.
77  * Rewrite of the softcode regression testing framework, and
78    addition of more tests. [SW]
79
80 Minor changes:
81  * Store a pointer to the start of a player's mailbox in objdata
82    instead of the connection struct.
83  * Experimental rewrite of hash tables to use the cuckoo hashing
84    algorithm, with constant-time lookups even in the worst case.
85    (And appears to have generally faster lookup even in normal usage.)
86  * Regular expression @sitelocks save the compiled regexp instead of
87    recompiling every time the rule is tested.
88  * Added %4 to @pageformat, which is the default page message.
89
90 Commands:
91  * Added @message, which makes it easy to use @chatformat or
92    @pageformat via @hooks, or to create your own *format.
93
94 Functions:
95  * Added message(), the function version of @message.
96
97 Fixes:
98  * decode64() does better validation of its input. [SW]
99  * Various compile fixes reported by Interevis and Kimiko.
100    Win32 patched by Intrevis.
101  * @sitelock does better error reporting. [SW]
102  * Crash bug related to regeditall fixed.
103  * @decompile didn't handle attribute trees correctly.
104  * Compile failure in funstr.c on some systems. Fixed by Boris.
105  * '@set =foo' failed silently. Reported by Talvo.
106  * Fixes from 1.8.2p7
107
108 Version 1.8.3 patchlevel 4                      July 9, 2007
109
110 Major changes:
111   * Parts of the build process that used a shell script to regenerate
112     certain headers now use perl scripts instead, making them much
113     faster. [SW]
114
115 Minor changes:
116   * The hash tables used by lmath() and html functions now
117     use perfect hashing to speed up lookups. [SW]
118   * The various slab allocators used by attributes and locks
119     and other areas have been replaced with a generic
120     slab allocator. Also, many more allocations are handled
121     by the new code.
122   * Use the writev() system call to send data to unencrypted
123     connections in bigger chunks instead of using multiple send()s of
124     smaller chunks.
125   * New lock types can be added via src/local.c instead of having to
126     alter the table in src/locks.c. Based on patch by Talvo.
127   * Builtin lock names and default flags are stored in a hash table
128     instead of a list. [SW]
129
130 Attributes:
131   * @chatformat allows you to customize Channel chat messages
132     that you see. [GM]
133
134 Commands:
135   * '@list allocations' displays allocation information.
136   * @stats/tables no longer dumps mem_check information.
137   * @search (and by relation search()) now has an 'elock'
138     search class, permitting boolean expression searches. [GM]
139   * @channel/recall extended to support recalling by time. Example:
140     '@chan/recall Foo=1h' will recall lines only from the past
141     hour. Patch by Talvo.
142  
143 Functions:
144   * cond() works like an if, else if, else if ... ncond(),
145     condall(), ncondall() also added. [GM]
146   * speak() accepts a 1st argument beginning with '&' to use
147     an arbitrary speaker name. [GM]
148   * New speakpenn() function handles : <pose> in Penn style.
149     Suggested by Sketch, patch by Javeln.
150   * lmath() accepts dist2d and dist3d. Suggested by Jess.
151   * functions(local) returns just local @functions. [SW]
152   * New encode64() and decode64() functions convert between
153     normal text and base64 encoded text on games that have
154     SSL support compiled in. [SW]
155   * encrypt() and decrypt() now take an optional 3rd argument
156     to control using base 64 encoding. Suggested by Noltar.
157  
158 Fixes:
159   * Compile fixes for some linux (And other?) systems that expect
160     all libraries to be after source files on the command line
161     when linking. Reported by Balerion.
162   * Compile fix for some Postgresql installations. Reported by
163     Nymeria.
164   * Fix to fraction() when dealing with numbers that can't
165     be fractioned. Discovered by Ashen-Shugar.
166   * Fixes to align() and coalescing by Javelin. Bugs reported by
167     Sketch and tramp.
168   * Fixes to speak() to bring it closer to Tiny's behavior in
169     common cases by Sketch and Javelin.
170   * Fixes to ANSI output where extra ^[[m were being sent.
171   * Default flags weren't getting set on some attributes in certain
172     cases. Report by Talvo.
173   * Fixes from 1.8.2p6
174
175 Version 1.8.3 patchlevel 3                      June 13, 2007
176
177 Minor changes:
178   * The sockets used to talk to info_slave changed from streams
179     to datagrams, simplifying code. [SW]
180   * info_slave deals better with simultaneous connections. [SW]
181   * info_slave requires the presence of the socketpair(2) function.
182     It was already using it anyways.
183   * Use of some system calls with portability issues encapsulated in
184     wrapper functions. [SW]
185   * sql() returns error codes directly instead of notifying %!. [SW]
186
187 Functions:
188   * lattr() and lattrp() take an optional delimiter argument. Suggested
189     by Nathan Baum. [SW]
190   * New csecs() and msecs() functions, like ctime() and mtime() but
191     returning the time in seconds instead of a formatted string. Based on
192     a patch by Talvo.
193   * ctime() and mtime() take an optional second argument to control which
194     time zone the time is displayed for: UTC or the server's. [SW]
195   * fn() by Javelin
196   * letq(). Suggested by Nathan Baum. [SW]
197  
198 Fixes:
199   * Assorted compiler warning fixes. [SW]
200   * Compile fix on OS X 10.3. Reported by Viila. [SW]
201   * @sql wasn't enabled if Sqlite3 was the only database turned on.
202     Reported by qa'toq.
203   * Problems with sql() using Sqlite3. Reported by qa'toq. [SW]
204   * Problems with null queries using MySQL. Reported by duckwa. [SW]
205   * Start fixing code that assumes that int and long are the same
206     size. [SW]
207   * Linting of code that uses strcpy, strncpy() and sprintf() to
208     rule out remote possibilities of buffer overflows. [SW]
209   * align() off-by-one error in left coalescing fixed. Reported by
210     Sketch. [Javelin]
211   * User locks were broken in the last patch. Reported by Michael Brazaitis.
212     [SW]
213   * ./configure --without-ssl works. Reported by Starr. [SW]
214   * objid matcher didn't work properly. [SW]
215   * Many functions that used parse_dbref updated to use parse_objid,
216     to see more objid compliance. [GM]
217   * Fixes from 1.8.2p5
218
219 Version 1.8.3 patchlevel 2                      May 16, 2007
220
221 Major changes:
222   * configuration is now done by autoconf. ./Configure is
223     now ./configure and its options have changed. See
224     INSTALL and ./configure --help [SW]
225   * Support for the postgresql SQL server. Javelin.
226   * Support for sqlite3 SQL databases. [SW]
227
228 Minor changes:
229   * You can no longer run a mush as root. [SW]
230   * cemit_noisy config option.  Suggested by Kimiko. [SW]
231   * @function sorts the list of user-defined functions
232     by object and then name. Suggested by Trinsec. [SW]
233   * Better logging of the register login screen command
234     for systems without a sendmail program. [SW]
235   * Assorted refactoring of source code. [SW]
236  
237 Functions:
238   * isobjid(). By Balerion.
239   * player() returns the dbref of the player connected to a given
240     port.  By  Nathan Baum.
241   * root(X,3) uses the C cbrt() function if available. [SW]
242   * New formats for align() that allow flowing text. Javelin.
243   * isdbref() understands objids. By Balerion.
244
245 Fixes:
246   * regmatch() broken with %q-registers. Javelin.
247   * Better checking of dbref config options to make sure they're
248     valid objects. Suggested by Talvo. [SW]
249   * Fixed assorted cases of accidently modifying const objects.
250     Thanks to Jake. [SW]
251   * Fixed a crash bug in strmatch(). [GM]
252   * wrap() of Pueblo tags didn't work very well. Fixed by
253     Sketch.
254   * @wipe's count is accurate when attribute trees are being
255     deleted. Reported by Talvo.
256  
257 Version 1.8.3 patchlevel 1                      March 11, 2007
258
259 Minor changes:
260   * page command now processes page output through PAGEFORMAT
261     attribute, allowing user-set page messages. [GM]
262   * sql_host configuration option now permits alternate tcp port.
263     Suggested by Mercutio. Patch by Javelin.
264   * Refactoring of fun_stringsecs to help function etime_to_secs.
265     Patch by Javelin.
266   * %1 in @aconnect works like in @adisconnect. Patch by Javelin.
267
268 Fixes:
269   * restart script once again includes DATEMSK export for
270     extended convtime support. Reported by KimikoMuffin.
271   * Memory leak in 1.8.3p0 regedit fixed.
272   * Fixes included from 1.8.2p3.
273   * Document change in @chan/title behavior with commas.
274
275 Version 1.8.3 patchlevel 0                      January 27, 2007
276
277 Major changes:
278   * Rewrite of color handling. [GM]
279
280 Minor changes:
281   * Cleaned up the internals of @wipe. [SW]
282   * strmatch() now takes a third argument, to store wildcard captures. [GM]
283   * Termination of OS/2 support. [SW]
284
285 Fixes:
286   * Fixes included from versions up to 1.8.2p2.
Note: See TracBrowser for help on using the browser.