[DGD] Kotaka v0.49

Raymond Jennings shentino at gmail.com
Sun Dec 17 19:18:49 CET 2017


One important caveat for the future.  Due to a recent discussion on
the DGD list, it has come to my attention that I made a bad design
decision when I added constructors and destructors.

For starters, an object is free to rewrite its inheritance tree any
time it recompiles and inheritables (and for that matter, any daemons
they interface wiith) cannot rely on staying in the tree, especially
if they are added after an object has already been created, and thus,
the constructor doesn't get called.

So in a moment of self reflection, they are going to be deprecated as
well.  I never should have added them.

Even doing a call_touch bull-rush of sorts doesn't guarantee
consistency if the object in question completley rewrites the
inheritance tree.

On Sun, Dec 17, 2017 at 9:55 AM, Raymond Jennings <shentino at gmail.com> wrote:
> Finally got around to a new release.
>
> Major points:
>
> I simplified the monitor script
> some debugging code to help with MSP and mudclients, to help out
> gnome-mud as well
> Sitebanned IPs are now hard-forbidden for connection attempts
> Siteban messages can now be delegated to the connectio manager
> A full rebuild feature that nukes all inheritables AND orphaned
> objects without source, and recompiles everything else
>
> Caveats:
>
> Please read the UPGRADE notes
> Objects having multiple archetypes is now officially deprecated and
> will be banned in a future release
>
> git://github.com/shentino/kotaka
>
> Shortlog:
>
>       Forgot to update safe versions list
>       Version 0.48.1
>       Simplify the monitor script, all of the script's own signals are
> exiters anyway.
>       Add fill handler for clouds
>       The walk command requires us to know if an object is solid or not
>       Update copyright dates, muck out old years
>       Reorganize README
>       Small update to qsort in case we care about future stable sorting
>       Add test for sorting library
>       Add notes about next upgrade nuking and compiling saveload
>       Destruct saveload during next upgrade
>       Rewrite saveload
>       Small bugfix: Handle case in saveload where we attempt to purge
> an objdir that is already gone
>       fixup test: Forgot to include a header
>       Make sure monitor script redirects stderr in the correct directory
>       When flushing logs, rotate the log BEFORE it hits 1GiB
>       Remove a global variable from logd
>       Move cd before exec in hotboot script
>       More prominent highlight of an aborted hotboot
>       Remove obsolete command in monitor script
>       Multiple archetypes are officially deprecated
>       Clarify what an api change actually means
>       Elaborate on the deprecation process for multiple archetypes
>       Rewrite dumpd to be more simple
>       Set new dumpd to make a dump every hour, with a full one every day
>       Add symlinks to documentation
>       Fix includes in archetype deprecation
>       Don't forget to tell IntermudD to actually listen when we enable
> I3 on a channel
>       Have IntermudD listen to channels on bootstrap when a newly
> discovered channel is registered as I3 on ChannelD
>       Small cleanup of loop in IntermudD
>       Remove spurious variable
>       Have chlist command distinguish I3 channels
>       Add file utility library
>       Load TLSD before ObjectD
>       Load ErrorD in System core
>       Rename boot_error to log_boot_error in InitD for greater clarity
>       Disable MSP if told to do so by the client
>       Add debugging code for MSP
>       Add debugging code in mudclient for unknown telnet options in general
>       Add variable for general debug
>       ...forgot to reenable actually sending the telnet options when I
> added debugging...
>       Refine I/O logging a bit
>       Increase Intermud ticks limit
>       Reject attempts to connect to a malformed IP address
>       Forbid attempts to connect to a sitebanned IP address
>       Rewrite StatusD
>       Add a full rebuild in System's SubD
>       /misc/grid.c was an LWO, move it to /misc/lwo/grid.c to restore
> create function argument list
>       Don't print a report (or continue the callouts) if StatusD has
> been disconnected
>       Don't forget to include account.h, if outbound connections check
> the siteban list they need access to BAND :P
>       When doing a full rebuild, only report interesting things, like
> destruction of orphans or compilations of new non inheritables
>       Tighten up gaps when reporting sitebans and overloads...and make
> sure that blacklisted IPs leave plenty of room for good people
>       Refine logging of inbound and outbound user messages, also
> remove spammy InitD message
>       Add ~Text/LogD, to handle the forwarding to LogD
>       Add fullrebuild verb
>       Refactor logging code
>       Save sitebans AFTER ejecting banned connections
>       When having System::UserD close a sitebanned connection, give
> the connection manager a chance to handle it
>       Have Text send a siteban message to a sitebanned connection.
> Also, sitebans look cooler with bright red text
>       Restore relation system but stash it in /misc
>       Simplify Text::InitD
>       Access control for Text::UserD->siteban_notify
>       Rewrite call_other interceptor to provide richer debug information
>       When doing a full rebuild, (re)compile the initds first
>       Remove old versions from safe_upgrade_versions
>       Version 0.49



More information about the DGD mailing list