> diff -u Index:
RCS file: /cvsroot/everything2/ebase/,v
retrieving revision 0.83+
diff -u -r0.8
---      26 Feb 2001 23:48:38 -0000    0.8
+++      26 Feb 2002 03:57:05 -0000

Root logs exist because members of the coding administration like to keep note of what gets changed on a day to day basis (in case something breaks, etc), and to give credit to ideas and fixes that come through. These are done monthly.

@@ April 1, 2002 @@
+ Okay, no joking around here in the root log. At the end of the day, backed out all of our fun April 1 toys (it was killing speed). Made a few performance fixes.
  • + Sped up adminbar, since it didn't need the extra call for linkNode. Cleaned up some ' vs. " usage there.
  • + Sped up shownodelets. It's now two fewer node lookups per page load for non-editor/non-god users.
  • + Fixed the ancient errors in The Nodeshell Hopper. Repeat after me. "Duh." It now also supports bracketized linking (it just strips them);

@@ April 2, 2002 @@
Fixed the longstanding bug where MIMEtypes in certain situations would be wrong. Most importantly, this paves the way for XML MIME types, and other text/plain MIME types, in a possibly upcoming book application. Updated Jetifi's bug regarding this. Thanks.

@@ April 5, 2002 @@
OOOOOO, i'm a slacker.

@@ April 8, 2002 @@
Some big things in the works..

@@ April 9, 2002 @@
We've got nothing but faith and perl.
Changes to Node Heaven. CE's can now see other people's node heavens. Whacked antiellipsis code form showchatter. We really don't need an expensive regex every page load slowing us down. The Content Rescue Team now has a VERY intricate DB classification system. It is missing like three of four of the final components, but those will come and get polished up tomorrow (after I read up on date casting in mysql).
  • + CRT: Category Manager: Manages and adds lists. You must rebuild after each addition with the build button. This caches it for speed and usability.
  • + CRT: catdata: A Data::Dumper cache of the categories.
  • + crtcatmenu: Code for generating an embedded category meny
  • + crtentries: dbtable for holding the rescues;
  • + crtcategories: dbtable for holding the categories.
  • + CRT: Master List: The master list editor. Can only add right now. It's not final, so anything on the table is merely junk.
  • + crtmemberlist: Generates a member list from activecrt
  • + crtnavbar: Navigation menus for each of the "CRT: *" docs.
  • + CRT: Group Manager: Group manager for crtleads to add to activecrt.

@@ April 9, 2002 @@
@@ April 12, 2002 @@
  • - Deleted iphunter, an empty restricted_superdoc
  • + Changed newwriteups2 to fix a non-standard split statement, that was causing perl version differences on willowisp. It now uses a regexp for splitting, rather than the string (which had non-standard escape sequences).
@@ April 13, 2002 @@
  • + Per bones' request, creating writeups now drags softlinks along as it should. Whoops. Changes to e2createnewnode. All themes.
@@ April 14, 2002 @@
  • + Node Heaven's boring link should work for CE's in other people's node heaven's now. Thanks to TallRoo for the buglet.
  • + Node Heaven and Everything's Best Killers (feeds from heaven) are working again. Nodes that were killed in the last week will not manifest themselves in heaven. Sorry for the inconvenience. This was traced back to a bug in the cron jobs. Thanks.
  • + Magical Writeup Reparenter should no longer eat writeups. I pray. Restructured it a bit. I was forgetting to call updateNode() on the nodegroups to solidify the groupings. The deletions occured because even though we were setting the parent_e2node properly (which governs the display), we were not removing from the nodegroup (which governs the deletion). This should no longer happen. And if it does, um, back to the drawing board. Initial tests look solid.
  • + Added a few changed to the core in in nodeName such that we now default to an e2node when displaying (instead of Duplicated Found). If we get to a situation where this no e2node, we go back there, but that is by far much more rare. Changes are signed and dated.
  • + Overhauled usercheck to check for all types of nodes and such. It's now by far much more useful.
@@ April 17, 2002 @@
  • + Addressed a wierd problem in HTML cache_store stuff in some natecode where we weren't taking into effect the displaytype when displaying guest user pages. In fact, it was completely ignored. Because the pages are static HTML dumps, we wouldn't actually output any correct behavior. IE: a displaytype of "asdasd" wouldn't toss a 500. A small change was made to that would work around that and short circuit the caching mechanism for new xml displaytypes.
  • + Made a fix to xmlwriteup that would cause a newer version of mod_perl to die because we weren't explicitly loading
@@ April 18, 2002 @@
  • + Fix to usercheck to fix a stray condition where in places like Honor Roll, there was only one extra node, but it was restricted, thus slipping past our checks and not displaying anything useful. We now bail out if there are no nodes that the user has permission to see. For the curious, Honor Roll is an editor debate nodetype.
@@ April 20, 2002 @@ @@ April 21, 2002 @@
  • Fixed a bug in the Personal Session XML Ticker where if you got new xp, the ticker would go all horkey. That's because I was silly and didn't pass the htmlcode arguments as a string, I passed them as a list. That should be giving valid xml now
@@ April 22, 2002 @@
  • cliendev API change e2node displays have been updated to include other nodes of type. You /might/ get the superdoc for duplicates found.. a good example is wertperch. He (currently) has a room and a user named after him. This replaces the old usersuggest functionality.
  • clientdev API change writeups inside of e2nodes, inside of the <reputation> tag (if you've voted on that writeup), will now include "cast", the direction of your vote
  • + Small change to Did a few code cleanups in the Page Cache fix, to suppress uninitialized warnings. Synced spectre and hillgiant
            my $dsp = $query->param('displaytype');
            $dsp ||= "display";
            if($dsp eq "display"){
@@ April 23, 2002 @@ @@ April 24, 2002 @@
  • clientdev API change Added softlock/forbiddance info to the e2node output. It's in the <nodelock> tag.
@@ April 25, 2002 @@
  • Huge ekw performance fix - Okay, we finally have the ekw performance fix that we've needed in. For those of you just tuning in, ekw used to be slow because of two page loads:
    • Your page
    • Your ekw stylesheet
    Now normally images and css sheets and images all get cached and called over and over again from the cache with no ill effects. However, due to caching rules, browsers would never cache the stylesheet because the url was in the form: This was really not a very good thing for the user, all things considered.

    Several solutions were proposed, the most beneficial of which was to generate static files (m_turner being a strong proponent of that, and I thank him). Since that would be a big messy pain in the ass (who /really/ needs filehandles anyway?), we've gone and done the next best thing. We've faked it! Your spiffy css file at /ekwcss/username.css doesn't really exist! Through some Apache regular expression mojo, we point it to a script that executes in it's place. It has the benefits of:
    • Keeping your filename unique
    • Retrieving user information without using ?'s or whatever to find the node
    The regexp looks something like this:
    ScriptAliasMatch ^/ekwcss/(.*)?\.css$ /var/www/
    Yes, that's right, anything.css. Try it. NOT A BUG, k? However, this approach wasn't without it's technical challenge. Into (and synced across the webservers) is now a mod_perlpsuedoInit function that works exactly like mod_perlInit, except it does not call handleUserRequest(), and thus allows us to do our own CGI stuff (such as bypass everything and just print your css text).

    It's a good workaround for now, and hopefully ekw users will notice it immediately. If you are having problems with it, use shift-refresh to reget your .css file with your pageload and off you go. /msg me if there are any problems iwth it.
    • + made a debugging addition to ekw styledef that I decided to keep
  • Per fuzzie, fixes to:
    • + xml exports. The session ticker was wrong.
    • + softlink. Made it so that you always get softlinks, regardless of your VARS pref. Added in a no_softlinks URL override.
    • + nodelockreason. Nodelock reason now doesn't return the '<big>' tags on forbiddance info
  • clientdev API change Again per fuzzie's sourceforge bug, scratch pads now take an additional parameter, "scratch" that asks for the person's scratch pad you want to view. Links are also now parsed by default. Add the standard "links_noparse" to leave them unparsed.
  • Whacked Cool Nodes XML Ticker as it was a stale beta.
  • Added XML ticker support to Node Heaven in the form of Node Heaven XML Ticker. You can only view your own nodes through node heaven. We do not export editorial or god powers through the tickers. There are several items of note in the ticker:
    • It behaves exactly as does the universal message xml ticker. You can let the ticker sort the titles for you (alphabetically be default), or by choosing to add nosort=1, then it will give them to you in whatever order mysql wants to cough them up.
    • To view the doctext for a particular deleted writeup add visitnode_id=(NODE ID HERE) to the url to view it. Should only work on your own nodes.
    • All of the information that you could normally get through node heaven is there.
    The changes that were made to the system were: Note that the interfaces in these tickers are beta until the clients are stable, but realistically, they are not likely to change much.
  • Per fuzzie's sourceforge bug, we now export whether a writeup has been marked for destruction by a simple marked="0" or marked="1" portion in the writeup
  • Clients now respect softlocking and forbiddances. Regardless of how you submit the info. This patches a long time quiet security bug.
    • + Very careful changes to writeup maintainence create. Also did some optimizations ( by commenting out fttask crap). It's working fine after that.
  • Created Other Users XML Ticker II, a more complete, better, more XMLy Other Users XML Ticker. It takes two possible arguments:
    • nosort, same as all the others
    • in_room, to limit it to a particular room. Remember room zero is outside.
    A few things to note about the ticker. The first is that it's sorted by xp, but is not gaurenteed to be numerically accurate. The experience column is cached by the cron job that does the update, so it could be off within a span of five minutes or so. Nothing major. It will however, look exactly like the nodelet Other Users.
  • Added a new-style new writeups ticker in the form of New Writeups XML Ticker. Really straightforward. Takes a count parameter of up to 300 nodes that you can get. PLEASE PLEASE PLEASE be good with this. Thanks. @@ April 26, 2002 @@
    • Polished off the User Search XML Ticker II. A slightly more complicated interface than the rest, it takes a few parameters.
      • searchuser - (username) if omitted, takes the current user
      • startat - (number) number to start at the dispensing in order
      • sort - (enum) sort method ('rep', 'creation', or 'title').
      • nosort - (bool) takes a "don't sort" approach per other tickers. Overrides startat and sort
      • limit - (number) limits the maximum number of records to return
      • nolimit - (bool) overrides limit
      It gives more complete info if you are searching on yourself, and you get exactly what you normally would if you are viewing the page.
    • The last of our legacy tickers rears it's head as Cool Nodes XML Ticker II. It has a similar interface to other tickers:
      • writtenby (username) the author it was written by
      • cooledby (username) the person it was cooled by
      • sort (enum) sort the writeups in a particular order (highestrep, lowestrep, recentcool, oldercool). The default is recentcool.
      • limit Max number of records per page. Capped at 50.
      • startat When doing the sort, skip x number of records. Does not affect limit;
      Of all of them, these last two are by far the most expensive. Please break it up into individual portions as to yield as not to bog us down. With a sleep on this, you're looking at like a 300 count. Be smart about this.