summaryrefslogtreecommitdiff
path: root/_darcs/inventories/20080922225224-84dde-625df932503bbcfc34e4eecc6aec09c5a0509315.gz
diff options
context:
space:
mode:
Diffstat (limited to '_darcs/inventories/20080922225224-84dde-625df932503bbcfc34e4eecc6aec09c5a0509315.gz')
-rw-r--r--_darcs/inventories/20080922225224-84dde-625df932503bbcfc34e4eecc6aec09c5a0509315.gz869
1 files changed, 0 insertions, 869 deletions
diff --git a/_darcs/inventories/20080922225224-84dde-625df932503bbcfc34e4eecc6aec09c5a0509315.gz b/_darcs/inventories/20080922225224-84dde-625df932503bbcfc34e4eecc6aec09c5a0509315.gz
deleted file mode 100644
index da247966a..000000000
--- a/_darcs/inventories/20080922225224-84dde-625df932503bbcfc34e4eecc6aec09c5a0509315.gz
+++ /dev/null
@@ -1,869 +0,0 @@
-Starting with tag:
-[TAG 0.5.0
-Evan Prodromou <evan@controlezvous.ca>**20080731050646]
-[add edo's tagcloud code
-Evan Prodromou <evan@prodromou.name>**20080731132302]
-[extend length of source for notices
-Evan Prodromou <evan@prodromou.name>**20080731152731]
-[added conneg for action/userbyid so that foaf can be delivered to clients that want application/rdf+xml
-ehs@pobox.com**20080801164623]
-[update .pot from source code
-Evan Prodromou <evan@prodromou.name>**20080803232102]
-[change no-such-user error to a 404 instead of a 400
-Evan Prodromou <evan@prodromou.name>**20080804132001]
-[use an outstanding unconfirmed email address for password recovery if available
-Evan Prodromou <evan@prodromou.name>**20080804130914]
-[better handling of unconfirmed email addresses
-Evan Prodromou <evan@prodromou.name>**20080804133253]
-[use noreply address as fallback if no incoming email address exists
-Evan Prodromou <evan@prodromou.name>**20080804133933]
-[add commands to turn sms notification on and off
-Evan Prodromou <evan@prodromou.name>**20080804190749]
-[ignore OTR messages over Jabber (I think)
-Evan Prodromou <evan@prodromou.name>**20080806002134]
-[make init of lang environment happen earlier, or when user language may have changed
-Evan Prodromou <evan@prodromou.name>**20080806034515]
-[Set the C locate to avoid tr_TR php bug see http://www.topolis.lt/php/#35050
-mikec@mikenz.geek.nz**20080804133727]
-[Add other languages to drop down
-Mike Cochrane <mikec@mikenz.geek.nz>**20080805020520]
-[fixup locale stuff from mikenz
-Evan Prodromou <evan@prodromou.name>**20080806040433]
-[fix config global
-Evan Prodromou <evan@prodromou.name>**20080806122119]
-[update French translation with msgmerge
-Evan Prodromou <evan@prodromou.name>**20080806161748]
-[LOG_ERROR -> LOG_ERR (again)
-Evan Prodromou <evan@prodromou.name>**20080807234227]
-[emergency fixup for bad notices in notice search
-Evan Prodromou <evan@prodromou.name>**20080811175318]
-[make tag dropoff configurable
-Evan Prodromou <evan@prodromou.name>**20080811175820]
-[Twitter-compatible API - /statuses/update.format now decodes HTML chars, such as &amp;
-zach@copley.name**20080731224911]
-[Twitter-compatible API: filled in the source attr for notices accessed via API
-zach@copley.name**20080809001240]
-[fix problem with new notices
-Evan Prodromou <evan@prodromou.name>**20080811181158]
-[correct sitemapindex output
-Evan Prodromou <evan@prodromou.name>**20080811200058]
-[fix some errors in sitemaps
-Evan Prodromou <evan@prodromou.name>**20080812011600
-
- Only show notices that don't have a remote URL. That should include
- only local notices.
-
- Also, don't do an avatar sitemap; apparently nobody indexes these
- anyways.
-
-]
-[correctly show URL for rare notice without an URI
-Evan Prodromou <evan@prodromou.name>**20080812121832]
-[get rid of dataobject.ini -- again
-Evan Prodromou <evan@prodromou.name>**20080813180239]
-[auto-load OAuthRequest
-Evan Prodromou <evan@prodromou.name>**20080813195408]
-[move user registration to a single static method
-Evan Prodromou <evan@prodromou.name>**20080814002038]
-[Twitter-compatible API: removed redundant decoding step; already taken care of by util.php's common_render_content()
-zach@copley.name**20080813193327]
-[Twitter-compatible API: support for new in_reply_to_status_id in statuses/update
-zach@copley.name**20080815185317]
-[name omb_listener param so we can refer to it in error msg
-Evan Prodromou <evan@prodromou.name>**20080816151057]
-[make settings and search menus localisable
-Evan Prodromou <evan@prodromou.name>**20080817150244]
-[move command-line scripts to their own dir
-Evan Prodromou <evan@prodromou.name>**20080813154603]
-[accept 140-character UTF-8 strings to content
-Evan Prodromou <evan@prodromou.name>**20080817151751]
-[debug for content too long
-Evan Prodromou <evan@prodromou.name>**20080817152419]
-[use UTF-8 as the internal encoding
-Evan Prodromou <evan@prodromou.name>**20080817153024]
-[remove hack to count bytes, not chars, in JS, since we now use chars
-Evan Prodromou <evan@prodromou.name>**20080817153143]
-[typo in forgotten password string
-Evan Prodromou <evan@prodromou.name>**20080817163324]
-[accept 140 chars in API, too
-Evan Prodromou <evan@prodromou.name>**20080817192710]
-[use mb_substr for xmpp daemon check
-Evan Prodromou <evan@prodromou.name>**20080818025549]
-[first step towards adding favorites to the system
-Evan Prodromou <evan@prodromou.name>**20080813142637]
-[Database uses UTF-8 by default
-Evan Prodromou <evan@prodromou.name>**20080817151728]
-[restore fave table lost when doing utf8 upgrade
-Evan Prodromou <evan@prodromou.name>**20080817152108]
-[trim whitespace in laconica.sql
-Evan Prodromou <evan@prodromou.name>**20080817152133]
-[set internal encoding in XMPP daemon
-Evan Prodromou <evan@prodromou.name>**20080818033049]
-[broadcast remote notices
-Evan Prodromou <evan@prodromou.name>**20080819182724]
-[add remote flag to broadcast of notices
-Evan Prodromou <evan@prodromou.name>**20080819182824]
-[add database tables for foreign services
-Evan Prodromou <evan@prodromou.name>**20080819221214]
-[Twitter-compatible API - running all strings through gettext() now
-zach@controlyourself.ca**20080819002903]
-[Twitter-compatible API - moved show() to the right file
-zach@controlyourself.ca**20080819003931]
-[Twitter-compatible API - /statuses/destroy method implemented
-zach@controlyourself.ca**20080819194610]
-[Twitter-compatible API - Added /statuses/followers to methods that
-zach@controlyourself.ca**20080819195431
- require bareauth only if no nickname/id is supplied.
-]
-[Twitter-compatible API - /statuses/show - better err msg if notice doesn't exist
-zach@controlyourself.ca**20080819202318]
-[Twitter-compatible API - RESTfulness checks as per Twitter
-zach@controlyourself.ca**20080819214923]
-[add Cincinnati Bell Wireless
-Evan Prodromou <evan@prodromou.name>**20080821125306]
-[include external libs in a subdir to make install easier
-Evan Prodromou <evan@prodromou.name>**20080822131714]
-[local-only is optional on public timeline
-Evan Prodromou <evan@prodromou.name>**20080822210307]
-[add note to config.php.sample about localonly
-Evan Prodromou <evan@prodromou.name>**20080822210415]
-[fix include path bug
-Evan Prodromou <evan@prodromou.name>**20080822210654]
-[better error reporting in user authorization action
-Evan Prodromou <evan@prodromou.name>**20080822212111]
-[XMPP bounce message when too long (ticket #112)
-CiaranG <ciaran@ciarang.com>**20080818213031]
-[Fix bug in xmpp on/off (ticket #528)
-CiaranG <ciaran@ciarang.com>**20080819071321]
-[Define xmpp daemon claim timeout time
-CiaranG <ciaran@ciarang.com>**20080822185955]
-[XMPP sub/unsub and help commands
-CiaranG <ciaran@ciarang.com>**20080822191032]
-[Fixed attempt to read nonexistent match in JID regex
-CiaranG <ciaran@ciarang.com>**20080822191751]
-[Escape profile url in xmpp in case fancy urls off (Ticket #521)
-CiaranG <ciaran@ciarang.com>**20080823052534]
-[Prevent jabber.php error by checking key exists
-CiaranG <ciaran@ciarang.com>**20080823053548]
-[request token is not readonly
-Evan Prodromou <evan@prodromou.name>**20080824011706]
-[be a little more liberal for sites that accidentally put whitespace before the xml decl
-Evan Prodromou <evan@prodromou.name>**20080824013803]
-[move README to main dir
-Evan Prodromou <evan@prodromou.name>**20080824113719]
-[big scarygram warning in config.php.sample about using DB_DataObject's debug mode
-Evan Prodromou <evan@prodromou.name>**20080824171202]
-[notify user of remote subscriptions
-Evan Prodromou <evan@prodromou.name>**20080824200517]
-[use mb_strlen instead of strlen in xmpp daemon
-Evan Prodromou <evan@prodromou.name>**20080825173105]
-[use common_sql_now() instead of DB_DataObject_Cast
-Evan Prodromou <evan@prodromou.name>**20080825182338]
-[change DataObject_Cast to use sql_now
-Evan Prodromou <evan@prodromou.name>**20080825183005]
-[use better SQL date, fix security problem with OpenID logins
-Evan Prodromou <evan@prodromou.name>**20080825184104]
-[never allow blank passwords
-Evan Prodromou <evan@prodromou.name>**20080825185245]
-[optionally turn encryption on or off in the XMPP connection
-Evan Prodromou <evan@prodromou.name>**20080826131814
-
- For identi.ca, we had some problems with the XMPP daemon getting
- "stuck" in I/O through the encrypted (by default) XMPP socket. Turning
- off encryption helped. So, now it's an option.
-
-]
-[only send local messages to public XMPP stream
-Evan Prodromou <evan@prodromou.name>**20080826205341]
-[use notice URI if it's not local and it's an HTTP URL
-Evan Prodromou <evan@prodromou.name>**20080826210314]
-[fix error storing uris of remote notices
-Evan Prodromou <evan@prodromou.name>**20080826211108]
-[import upstream XMPPHP with @ciarang's fix
-Evan Prodromou <evan@prodromou.name>**20080827124430]
-[fixup whitespace
-Evan Prodromou <evan@prodromou.name>**20080827131603]
-[don't show unknown (debug) errors
-Evan Prodromou <evan@prodromou.name>**20080827132346]
-[XMPP daemon that doesn't eat messages - note change to XMPPHP as well (Ticket #551)
-CiaranG <ciaran@ciarang.com>**20080826200057]
-[restoring upstream XMLStream.php after pulling ciarang's patch
-Evan Prodromou <evan@prodromou.name>**20080827133048]
-[add back in a session start handler
-Evan Prodromou <evan@prodromou.name>**20080827135422]
-[don't do too many broadcasts or confirms before checking the message queue
-Evan Prodromou <evan@prodromou.name>**20080827142336]
-[get language before setting it.
-Evan Prodromou <evan@prodromou.name>**20080828005323]
-[add session token check to password change
-Evan Prodromou <evan@prodromou.name>**20080829014515]
-[code for session token
-Evan Prodromou <evan@prodromou.name>**20080829015304]
-[fix random function name
-Evan Prodromou <evan@prodromou.name>**20080829021854]
-[return after failed token
-Evan Prodromou <evan@prodromou.name>**20080829023731]
-[add CSRF protection to avatar
-Evan Prodromou <evan@prodromou.name>**20080829023919]
-[CSRF protection in deletenotice
-Evan Prodromou <evan@prodromou.name>**20080829025127]
-[show error in delete notice
-Evan Prodromou <evan@prodromou.name>**20080829025559]
-[add a token for CSRF avoidance
-Evan Prodromou <evan@prodromou.name>**20080829034854]
-[CSRF protection for OpenID form
-Evan Prodromou <evan@prodromou.name>**20080829035934]
-[swap around some stuff to show the form correctly on a CSRF error in openidlogin
-Evan Prodromou <evan@prodromou.name>**20080829040925]
-[CSRF protection in openidsettings
-Evan Prodromou <evan@prodromou.name>**20080829042908]
-[add csrf protection to profile settings
-Evan Prodromou <evan@prodromou.name>**20080829043909]
-[CSRF protection in smssettings.php
-Zach Copley <zach@controlyourself.ca>**20080829035118]
-[CSRF protection in imsettings.php
-Zach Copley <zach@controlyourself.ca>**20080829035707]
-[CSRF protection for subscription/unsubscription
-Evan Prodromou <evan@prodromou.name>**20080829051104]
-[better client error on CSRF problem with subscribe/unsubscribe
-Evan Prodromou <evan@prodromou.name>**20080829051628]
-[csrf protection in userauthorization
-Evan Prodromou <evan@prodromou.name>**20080829052732]
-[session token in userauthorization form
-Evan Prodromou <evan@prodromou.name>**20080829052847]
-[CSRF protection in recoverpassword
-Zach Copley <zach@controlyourself.ca>**20080829052824]
-[CSRF protection in user registration
-Evan Prodromou <evan@prodromou.name>**20080829054017]
-[CSRF protection in emailsettings
-Zach Copley <zach@controlyourself.ca>**20080829053337]
-[CSRF protection in remotesubscribe
-Zach Copley <zach@controlyourself.ca>**20080829054038]
-[clean up username entered at login
-Evan Prodromou <evan@prodromou.name>**20080829225258]
-[break up monolithic xmppdaemon into multiple queue handlers
-Evan Prodromou <evan@prodromou.name>**20080827205407
-
- Eventually, the poor xmppdaemon has become overloaded with extra
- tasks. So, I've broken it up. Now, we have 5 background scripts, and
- more coming:
-
- * xmppdaemon.php - handles incoming XMPP messages only.
- * xmppqueuehandler.php - sends notices from the queue out through XMPP.
- * smsqueuehandler.php - sends notices from the queue out over SMS
- * ombqueuehandler.php - sends notices from the queue out over OMB
- * xmppconfirmhandler.php - sends confirmation requests out over XMPP.
-
- This is in addition to maildaemon.php, which takes incoming messages.
-
- None of these are "true" daemons -- they don't daemonize themselves
- automatically. Use nohup or another tool to background them. monit can
- also be useful to keep them running.
-
- At some point, these might become fork()'ing daemons, able to handle
- more than one notice at a time. For now, I'm just running multiple
- instances, hoping they don't interfere.
-
-]
-[remove unimplemented methods from XmppDaemon
-Evan Prodromou <evan@prodromou.name>**20080827210429]
-[change queue_item to use a compound primary key
-Evan Prodromou <evan@prodromou.name>**20080827211239
-
- Breaking up to use multiple queue handlers means we need multiple
- queue items for the same notice. So, change the queue_item table to
- have a compound pkey, (notice_id,transport).
-
-]
-[got two lines reversed
-Evan Prodromou <evan@prodromou.name>**20080827211940]
-[change return in queue function
-Evan Prodromou <evan@dev.controlezvous.ca>**20080828001414]
-[correct presence in jabber function
-Evan Prodromou <evan@prodromou.name>**20080828001936]
-[don't clear claims immediately
-Evan Prodromou <evan@prodromou.name>**20080828002610]
-[correct return values from start() in queue handlers
-Evan Prodromou <evan@prodromou.name>**20080828003013]
-[extend QueueHandler
-Evan Prodromou <evan@prodromou.name>**20080828003829]
-[XmppQueueHandler extends QueueHandler too
-Evan Prodromou <evan@prodromou.name>**20080828004224]
-[$this->log to common_log in Queue_item
-Evan Prodromou <evan@prodromou.name>**20080828004503]
-[return correct values for success in handling messages
-Evan Prodromou <evan@prodromou.name>**20080828011002]
-[misprint of omb as oms
-Evan Prodromou <evan@prodromou.name>**20080828012619]
-[return results of broadcasting by sms
-Evan Prodromou <evan@prodromou.name>**20080828012635]
-[add a bash script to start all the daemons
-Evan Prodromou <evan@prodromou.name>**20080828134856]
-[add a script to stop daemons, too
-Evan Prodromou <evan@prodromou.name>**20080828135011]
-[harmonize csrf and queues
-Evan Prodromou <evan@prodromou.name>**20080829174012]
-[split public stream to its own queue handler
-Evan Prodromou <evan@prodromou.name>**20080829181702
-
- Add another queue handler for the public stream. Should further
- parallelize the work of sending out messages.
-
-]
-[fix name of instantiated class
-Evan Prodromou <evan@prodromou.name>**20080829182112]
-[a little more robust confirm handler
-Evan Prodromou <evan@prodromou.name>**20080829182349]
-[many jabber queue management changes
-Evan Prodromou <evan@prodromou.name>**20080829200352
-
- Added a method to QueueManager to let subclasses do stuff when idle.
- Needed so that XMPP queue manager can service its message queue.
-
- Cleaned up jabber_broadcast_message quite a bit. Use custom joins
- instead of loop-and-query, should fix some problems with users who are
- getting messages even after turning off notification. Only build $msg
- and $entry once, and use the XMPPHP function for messages with a
- payload, rather than rolling our own.
-
-]
-[lost $sent_to in jabber_public_notice
-Evan Prodromou <evan@prodromou.name>**20080829200859]
-[strip script ending from end of xmppdaemon
-Evan Prodromou <evan@prodromou.name>**20080829202613]
-[add 'raw' to payload to allow getting to the raw xml
-Evan Prodromou <evan@prodromou.name>**20080830000314]
-[forward messages from queuehandler to listener
-Evan Prodromou <evan@prodromou.name>**20080830040717
-
- The queuehandler sends messages to the user. If the user replies, the
- messages are typically sent directly to the queuehandler (including
- resource), not the default bot JID.
-
- We add a little code for the xmppqueuehandler to periodically service
- its queue of received messages. Received messages are forwarded to the
- listener to deal with. We use XEP 33, 'addresses', to note the
- original sender.
-
- The xmppdaemon checks to see if the 'from' on a message is the daemon
- address. If so, it looks for a XEP 33 'addresses' stanza, with an
- 'ofrom' address, which shows who it was originally is from.
-
- This should let us send from one resource ID and still process
- incoming messages in a different connection.
-
-]
-[strtolower jids for comparison
-Evan Prodromou <evan@prodromou.name>**20080830052143]
-[typo preventing detection of addresses
-Evan Prodromou <evan@prodromou.name>**20080830052810]
-[use common log in error handler rather than echo
-Evan Prodromou <evan@prodromou.name>**20080830053052]
-[log transport when claiming a notice
-Evan Prodromou <evan@prodromou.name>**20080830054933]
-[better logging in ombqueuehandler
-Evan Prodromou <evan@prodromou.name>**20080830055416]
-[get address from addresses
-Evan Prodromou <evan@prodromou.name>**20080830055640]
-[better debugging output for forwarded messages
-Evan Prodromou <evan@prodromou.name>**20080830055938]
-[debug xml input
-Evan Prodromou <evan@prodromou.name>**20080830060732]
-[log fetch
-Evan Prodromou <evan@prodromou.name>**20080830062246]
-[correctly use attrs array rather than nonexistent attunction
-Evan Prodromou <evan@prodromou.name>**20080830062744]
-[less sleeping, slightly
-Evan Prodromou <evan@prodromou.name>**20080830064431]
-[don't clear old claims
-Evan Prodromou <evan@prodromou.name>**20080830070135]
-[require mail for sms, not omb
-Evan Prodromou <evan@prodromou.name>**20080830070309]
-[sms handler was handling omb wrongly
-Evan Prodromou <evan@prodromou.name>**20080830071007]
-[forgot to get the profile in public queue handler
-Evan Prodromou <evan@prodromou.name>**20080830071232]
-[some fixes from on the jabber server
-evan@controlezvous.ca**20080830083502]
-[get rid of Laconica_XMPP and ignore priority
-Evan Prodromou <evan@prodromou.name>**20080830084423]
-[check for self in forwards, too
-Evan Prodromou <evan@prodromou.name>**20080830085607]
-[eliminate loops in forwarding
-Evan Prodromou <evan@prodromou.name>**20080830090148]
-[make XMPP take a priority for presence
-Evan Prodromou <evan@prodromou.name>**20080830091430]
-[use priority in connection
-Evan Prodromou <evan@prodromou.name>**20080830091522]
-[forgot to use the array for avoiding dupes
-Evan Prodromou <evan@prodromou.name>**20080830094252]
-[check the state of the queue before diving in to process it
-Evan Prodromou <evan@prodromou.name>**20080830095709]
-[better check for ready state on connection
-Evan Prodromou <evan@prodromou.name>**20080830171441]
-[public queue handler and xmpp confirm handler service their message queues
-Evan Prodromou <evan@prodromou.name>**20080830172217]
-[add initialization info to the queue handlers
-Evan Prodromou <evan@prodromou.name>**20080831020325]
-[add some sanity-check stuff for long-running daemons
-Evan Prodromou <evan@prodromou.name>**20080831023844]
-[halt sending HTML in Jabber
-Evan Prodromou <evan@prodromou.name>**20080831114642]
-[separate out presence from connection, send different presence types from queuehandlers
-Evan Prodromou <evan@prodromou.name>**20080902012604]
-[slightly more robust connection code
-Evan Prodromou <evan@prodromou.name>**20080902030331]
-[restore HTML in output, remove rump pubsub event code
-Evan Prodromou <evan@prodromou.name>**20080902030403]
-[dnd -> available, just looks bad as dns
-Evan Prodromou <evan@prodromou.name>**20080902030910]
-[switch around how XMLStream does processing
-Evan Prodromou <evan@prodromou.name>**20080831003210]
-[debug logging in __process
-Evan Prodromou <evan@prodromou.name>**20080831012136]
-[floor
-Evan Prodromou <evan@prodromou.name>**20080831013132]
-[int div games
-Evan Prodromou <evan@prodromou.name>**20080831013603]
-[slightly better int math
-Evan Prodromou <evan@prodromou.name>**20080831014404]
-[use updated xmpphp library
-Evan Prodromou <evan@prodromou.name>**20080902163718]
-[add reconnect handlers to main XMPP-handling scripts
-Evan Prodromou <evan@prodromou.name>**20080902165319]
-[better connection handling in scripts
-Evan Prodromou <evan@prodromou.name>**20080902165735]
-[set the reconnect timeout
-Evan Prodromou <evan@prodromou.name>**20080902171740]
-[variable name conflict on reconnect
-Evan Prodromou <evan@prodromou.name>**20080902172039]
-[reconnect timeout
-Evan Prodromou <evan@prodromou.name>**20080902172256]
-[license block on util.js
-Evan Prodromou <evan@prodromou.name>**20080827013835]
-[try to make the reply button do the right thing if there's no notification box.
-Evan Prodromou <evan@prodromou.name>**20080827015010]
-[move broadcast in OMB postnotice for bad case
-Evan Prodromou <evan@prodromou.name>**20080828221420]
-[Tags_without_fancy
-Garret Buell <terragb@gmail.com>**20080831233401
- Change common_tag_link to format the tag link based on the setting of $config['site']['fancy']
-]
-[Allow_multicase_tags
-Garret Buell <terragb@gmail.com>**20080901001241
- Make "#test", "#Test", and "#tEsT" all preserve appearance but link to the same tag
-]
-[Elide_Tags
-Garret Buell <terragb@gmail.com>**20080901025932
- Make "#sanfrancisco", "#SanFrancisco", "#san_francisco", "#San.Francisco", and "#SAN-FRANCISCO" all link to http://identi.ca/tag/sanfrancisco but preserve appearance
-]
-[RequirePassword
-Garret Buell <terragb@gmail.com>**20080830195036
- Require a password with at least 6 characters when registering.
-]
-[Resolve remote subscribe and omb problems with quotes (Tickets #604 and #567)
-CiaranG <ciaran@ciarang.com>**20080904065504]
-[Fix typo in presence message (x3)
-CiaranG <ciaran@ciarang.com>**20080904081542]
-[Some Notice::saveNew cleanups.
-Ori Avtalion <ori@avtalion.name>**20080902173804
- * No need to check $source's value before inserting
- * No need to update the notice if the $uri was known in advance
-]
-[fix bad args in postnotice for new notices
-Evan Prodromou <evan@prodromou.name>**20080904195720]
-[Fix typo in finishremotesubscribe
-CiaranG <ciaran@ciarang.com>**20080904201921]
-[scripts daemonize themselves
-Evan Prodromou <evan@prodromou.name>**20080904184031]
-[add .pid to pidfile names
-Evan Prodromou <evan@prodromou.name>**20080904190254]
-[more robust code for setting daemon uid/gid
-Evan Prodromou <evan@prodromou.name>**20080904191031]
-[add newline at the end of pidfile
-Evan Prodromou <evan@prodromou.name>**20080904191517]
-[new format for startdaemons; not sure how to do stopdaemons so punting
-Evan Prodromou <evan@prodromou.name>**20080904192220]
-[better feedback when starting daemons
-Evan Prodromou <evan@prodromou.name>**20080904192851]
-[make confirmhandler a subclass of queuehandler
-Evan Prodromou <evan@prodromou.name>**20080904193118]
-[abstract XMPP-related queue handling to a common superclass
-Evan Prodromou <evan@prodromou.name>**20080904194035]
-[change xmppqueuedaemon to jabberqueuedaemon in startdaemons
-Evan Prodromou <evan@prodromou.name>**20080904194346]
-[require xmppqueuehandler in jabberqueuehandler
-Evan Prodromou <evan@prodromou.name>**20080904194456]
-[better logging for confirm handler update
-Evan Prodromou <evan@prodromou.name>**20080904203502]
-[add some processTime() to the send loops to avoid filling the buffer
-Evan Prodromou <evan@prodromou.name>**20080904213257]
-[better @ links
-Evan Prodromou <evan@prodromou.name>**20080904224129]
-[use a join for omb broadcast
-Evan Prodromou <evan@prodromou.name>**20080905004701]
-[change sms broadcast to use a join
-Evan Prodromou <evan@prodromou.name>**20080905022019]
-[return in the status textarea will submit the form
-Evan Prodromou <evan@prodromou.name>**20080905045415]
-[do submit on keydown
-Evan Prodromou <evan@prodromou.name>**20080905045736]
-[stop default handling of return in browser
-Evan Prodromou <evan@prodromou.name>**20080905050356]
-[set focus to status text area
-Evan Prodromou <evan@prodromou.name>**20080905050824]
-[free and unset DB_DataObjects after we're done with them
-Evan Prodromou <evan@prodromou.name>**20080906015501]
-[free memory in SMS daemon, too
-Evan Prodromou <evan@prodromou.name>**20080906015621]
-[debugging for omb
-Evan Prodromou <evan@prodromou.name>**20080907193402]
-[lots of debugging code in OMB send
-Evan Prodromou <evan@prodromou.name>**20080907195242]
-[remove some debugging code from omb.php
-Evan Prodromou <evan@prodromou.name>**20080907200344]
-[error checking in subscriptions
-Evan Prodromou <evan@prodromou.name>**20080908201020]
-[Disallow 'tag' and 'tags' as usernames. Fixes ticket #584
-Ori Avtalion <ori@avtalion.name>**20080905114534]
-[Fix for reply arrow in profile page
-Michael Landers <ez4u2sai@gmail.com>**20080905090848]
-[Fix confusing comment in config.sample.php (Ticket #616)
-CiaranG <ciaran@ciarang.com>**20080905162732]
-[add a sample RewriteBase
-Evan Prodromou <evan@prodromou.name>**20080910180050]
-[add a line for mail domain
-Evan Prodromou <evan@prodromou.name>**20080910154632]
-[update information about queues
-Evan Prodromou <evan@prodromou.name>**20080910154754]
-[reverse order of queries for galleries
-Evan Prodromou <evan@prodromou.name>**20080911144742]
-[LOG_ERROR -> LOG_ERR
-Evan Prodromou <evan@prodromou.name>**20080913161107]
-[duplicate confirmation to avoid where clause
-Evan Prodromou <evan@prodromou.name>**20080913164333]
-[only use MyISAM for tables with fulltext indices
-Evan Prodromou <evan@prodromou.name>**20080915053955]
-[cache noticesWithFriends in memcached
-Evan Prodromou <evan@prodromou.name>**20080915065616
-
- noticesWithFriends is turning out to be one of our most expensive
- queries. The join is costly, and this method is hit over and over and
- over by desktop clients and other API users.
-
- So, I've added a first pass at caching the results. I store a "window"
- of notices -- equal to the first 3 pages of notices, plus one for
- pagination -- in the memcached cache. If with-friends notices are
- requests, I fetch the whole window out of the cache and grab the slice
- requested. If the requested notices are outside the window, we just do
- the query. If there's nothing in the cache, we request the window and
- store it, then return a slice.
-
- I had to add a NoticeWrapper class that works like DB_DataObject
- (well, just the fetch() part...) but just holds an array of notices
- instead of a DB cursor.
-
- Finally, saving a new notice blows away the caches for subscribed users.
-
-]
-[$INSTALLDIR -> INSTALLDIR
-Evan Prodromou <evan@prodromou.name>**20080915070413]
-[array_count -> count
-Evan Prodromou <evan@prodromou.name>**20080915070951]
-[subscriptions clear user with-friends cache, too
-Evan Prodromou <evan@prodromou.name>**20080915071500]
-[compress window-getting to one function
-Evan Prodromou <evan@prodromou.name>**20080915071835]
-[misused instance attribute in noticewrapper
-Evan Prodromou <evan@prodromou.name>**20080915072553]
-[another attribute error
-Evan Prodromou <evan@prodromou.name>**20080915072738]
-[make NoticeWrapper extend Notice so methods work
-Evan Prodromou <evan@prodromou.name>**20080915073006]
-[fix cache deletion code
-Evan Prodromou <evan@prodromou.name>**20080915073215]
-[fixup SQL code
-Evan Prodromou <evan@prodromou.name>**20080915073412]
-[can actually take all the data in the window
-Evan Prodromou <evan@prodromou.name>**20080920174700]
-[blow subscriptions cache when the user deletes a notice
-Evan Prodromou <evan@prodromou.name>**20080920175339]
-[use common-config instead of $config in common_language
-Evan Prodromou <evan@prodromou.name>**20080922172631]
-[data classes for invitations
-Evan Prodromou <evan@prodromou.name>**20080823191015]
-[start the invite form
-Evan Prodromou <evan@prodromou.name>**20080825192946]
-[add invite to htaccess.sample
-Evan Prodromou <evan@prodromou.name>**20080825193149]
-[add invite to the nav menu
-Evan Prodromou <evan@prodromou.name>**20080825193235]
-[invite fancy url
-Evan Prodromou <evan@prodromou.name>**20080825193333]
-[fix the invite url
-Evan Prodromou <evan@prodromou.name>**20080825193450]
-[fix instructions
-Evan Prodromou <evan@prodromou.name>**20080825193738]
-[skip preview, just send the darn thing
-Evan Prodromou <evan@prodromou.name>**20080826021227]
-[added a created timestamp to invitations
-Evan Prodromou <evan@prodromou.name>**20080826023116]
-[clean up some whitespace in DB script
-Evan Prodromou <evan@prodromou.name>**20080826024015]
-[helper functions that take a user object
-Evan Prodromou <evan@prodromou.name>**20080827001348]
-[updates for invitations
-Evan Prodromou <evan@prodromou.name>**20080827001927
-
- Add the code to registration to handle invitation codes.
-
- Some edge cases on invitations: is the user already subbed to this
- person? Tell them. Is the person already on the system? Sub the user
- to them, then, and tell the user.
-
- Add some code to User to auto-sub invitees whenever the email address
- changes. Call it from a new registration with an invite code, and also
- from confirmaddress.
-
- Some whitespace cleanup in the files touched.
-
-]
-[correct output on invitations
-Evan Prodromou <evan@prodromou.name>**20080827003529]
-[save invitation code and improve format of outgoing mail
-Evan Prodromou <evan@prodromou.name>**20080827004410]
-[fix format for subject
-Evan Prodromou <evan@prodromou.name>**20080827004755]
-[fix runon string in invites format
-Evan Prodromou <evan@prodromou.name>**20080827004854]
-[send personal message through to send_invitation function
-Evan Prodromou <evan@prodromou.name>**20080827005155]
-[lost the names when making a new function send_invitation
-Evan Prodromou <evan@prodromou.name>**20080827005418]
-[fix format string, again again
-Evan Prodromou <evan@prodromou.name>**20080827010138]
-[Invite -> Invitation
-Evan Prodromou <evan@prodromou.name>**20080827010515]
-[removed the preview, so use "Send" for the button
-Evan Prodromou <evan@prodromou.name>**20080827011921]
-[add a foreign_link table with prefs for the link
-Evan Prodromou <evan@prodromou.name>**20080827032423]
-[update to translation
-Evan Prodromou <evan@prodromou.name>**20080827185817]
-[Bounce oversized XMPP messages back to user (Ticket #112)
-CiaranG <ciaran@ciarang.com>**20080814083856]
-[XMPP daemon updates including help, sub and subsub commands, plus subscribe/unsubcribe logic broken out into standalone module for sharing
-CiaranG <ciaran@ciarang.com>**20080816083422]
-[Added missing subs.php
-CiaranG <ciaran@ciarang.com>**20080816153917]
-[remove custom xmppdaemon error handler
-Evan Prodromou <evan@prodromou.name>**20080830162128]
-[merge in changes for CSRF, too
-Evan Prodromou <evan@prodromou.name>**20080830162223]
-[initial non-Ajax version of favorites
-Evan Prodromou <evan@prodromou.name>**20080908181624]
-[change input buttons to submit buttons
-Evan Prodromou <evan@prodromou.name>**20080908182353]
-[fix requires in dis/favor and correct url in form
-Evan Prodromou <evan@prodromou.name>**20080908182559]
-[correct action for showfavorites in disfavor
-Evan Prodromou <evan@prodromou.name>**20080908182716]
-[better styling for favor/disfavor buttons
-Evan Prodromou <evan@prodromou.name>**20080908183515]
-[styling on the favor/disfavor forms to show inline
-Evan Prodromou <evan@prodromou.name>**20080908201751]
-[write our own submit so there's no <p>
-Evan Prodromou <evan@prodromou.name>**20080908202226]
-[move fave form, float right
-Evan Prodromou <evan@prodromou.name>**20080908202717]
-[make favorites form use Ajax
-Evan Prodromou <evan@prodromou.name>**20080908211610]
-[missed a closing curly
-Evan Prodromou <evan@prodromou.name>**20080908211656]
-[enjitqueuehandler added
-Evan Prodromou <evan@prodromou.name>**20080916174105]
-[rationalize with repository version
-Evan Prodromou <evan@prodromou.name>**20080916174400]
-[change some more tables to InnoDB
-Evan Prodromou <evan@prodromou.name>**20080916174515]
-[Database and classes for direct messages
-Evan Prodromou <evan@prodromou.name>**20080916185126]
-[inbox and outbox for direct messages
-Evan Prodromou <evan@prodromou.name>**20080916195346
-
- Added an inbox and outbox for direct messages.
-
- Factored common code to mailbox.php. Factored common code with
- stream.php to personal.php.
-
-]
-[fixup CSS for messages
-Evan Prodromou <evan@prodromou.name>**20080916195620]
-[correctly show top
-Evan Prodromou <evan@prodromou.name>**20080916200445]
-[instructions for inbox and outbox
-Evan Prodromou <evan@prodromou.name>**20080916200703]
-[correct title on inbox and outbox
-Evan Prodromou <evan@prodromou.name>**20080916200942]
-[Twitter integration - SQL ref data for Twitter
-zach@controlyourself.ca**20080822034054]
-[Twitter integration - Oh look, a Twitter settings tab.
-zach@controlyourself.ca**20080822034157]
-[Twitter-integration - Twitter settings tab now saves Twitter credentials
-zach@controlyourself.ca**20080826225615]
-[Twitter integration - Add and remove Twitter accnt now working
-Zach Copley <zach@controlyourself.ca>**20080827000327]
-[Twitter integration - Foreign_user::getForeignUser() to retrieve
-Zach Copley <zach@controlyourself.ca>**20080827005444
- Foreign_user by multi-part key: user_id + service
-]
-[Twitter integration - decided to change Twitter to service ID #1
-Zach Copley <zach@controlyourself.ca>**20080827021635]
-[fork daemon
-Evan Prodromou <evan@prodromou.name>**20080626224011]
-[fork daemon
-Evan Prodromou <evan@prodromou.name>*-20080626224011]
-[translation updates
-Evan Prodromou <evan@prodromou.name>**20080817160451]
-[Twitter integration - support for new foreign_link table and prefs now save/update
-Zach Copley <zach@controlyourself.ca>**20080828072205]
-[Twitter integration - Notices now broadcast (directly) to Twitter from linked accts.
-Zach Copley <zach@controlyourself.ca>**20080828192509]
-[CSRF protection for invites.php
-Zach Copley <zach@controlyourself.ca>**20080829045441]
-[CSRF protection in twittersettings.php
-Zach Copley <zach@controlyourself.ca>**20080829045724]
-[Conflated Avatar and Profile settings + removed a bunch of unnecessary whitespace
-Zach Copley <zach@controlyourself.ca>**20080905194732]
-[Moved avatar upload down below timezone on profile settings
-Zach Copley <zach@controlyourself.ca>**20080906070651]
-[Fold password form into profile settings
-Zach Copley <zach@controlyourself.ca>**20080907053604]
-[Twitter integration - added $config option for source attribute when posting to Twitter
-Zach Copley <zach@controlyourself.ca>**20080907062118]
-[Twitter integration - wording change
-Zach Copley <zach@controlyourself.ca>**20080907063339]
-[Disallow 'api' nickname
-Zach Copley <zach@controlyourself.ca>**20080909000650]
-[Twitter-compatible API - JSONP callbacks for all methods emitting JSON
-Zach Copley <zach@controlyourself.ca>**20080910025013]
-[integrate local changes with Zach's
-Evan Prodromou <evan@prodromou.name>**20080916210813]
-[Initial support for PostgreSQL
-CiaranG <ciaran@ciarang.com>**20080909072224]
-[Fix remote sub when redirected via login (Ticket #618)
-CiaranG <ciaran@ciarang.com>**20080909202259]
-[PostgreSQL - reply.modified needs a default
-CiaranG <ciaran@ciarang.com>**20080910073741]
-[Fix unquoted array key, causes b0rkage on some php setups (via @bopuc)
-CiaranG <ciaran@ciarang.com>**20080911163558]
-[PostgreSQL: Make tag cloud query work - also fixes what is surely an ignored error in the mysql query
-CiaranG <ciaran@ciarang.com>**20080911192348]
-[PostgreSQL: support for full text searching (notice and people)
-CiaranG <ciaran@ciarang.com>**20080914201744]
-[PostgreSQL: Quote table name in manually formed query - fixes profile settings update
-CiaranG <ciaran@ciarang.com>**20080915070256]
-[Further updates to sample config
-CiaranG <ciaran@ciarang.com>**20080915081246]
-[Fix missing nickname in rss replies to title
-CiaranG <ciaran@ciarang.com>**20080915190953]
-[Get correct configured language when all else fails
-CiaranG <ciaran@ciarang.com>**20080916172706]
-[rationalize with ciarang's pgsql changes
-Evan Prodromou <evan@prodromou.name>**20080916214134]
-[add in ciarang's changes to config.php.sample
-Evan Prodromou <evan@prodromou.name>**20080916214206]
-[use common_local_url() in tagging, add canonicalization function
-Evan Prodromou <evan@prodromou.name>**20080917112234]
-[move rendering stuff that doesn't depend on notice to a separate function
-Evan Prodromou <evan@prodromou.name>**20080917112730]
-[newmessage and showmessage
-Evan Prodromou <evan@controlyourself.ca>**20080917174741]
-[add new message link to showstream
-Evan Prodromou <evan@controlyourself.ca>**20080917175356]
-[don't show message link on your own page
-Evan Prodromou <evan@controlyourself.ca>**20080917175512]
-[fancy urls for show message, new message
-Evan Prodromou <evan@controlyourself.ca>**20080917180244]
-[to parameter is an ID not a nickname
-Evan Prodromou <evan@controlyourself.ca>**20080917185142]
-[not a nickname so don't canonicalize
-Evan Prodromou <evan@controlyourself.ca>**20080917185723]
-[correct urls from fancy url for show-message
-Evan Prodromou <evan@controlyourself.ca>**20080917185950]
-[fix missing variable in save-new-message
-Evan Prodromou <evan@controlyourself.ca>**20080917190306]
-[skip over Mailbox::handle to Action::handle
-Evan Prodromou <evan@controlyourself.ca>**20080917190445]
-[fix titles in showmessage
-Evan Prodromou <evan@controlyourself.ca>**20080917190745]
-[save created date
-Evan Prodromou <evan@controlyourself.ca>**20080917191652]
-[some minor fixes for new messages
-Evan Prodromou <evan@controlyourself.ca>**20080917192121]
-[style for message form
-Evan Prodromou <evan@controlyourself.ca>**20080918021421]
-[rearrange paragraphs in message form
-Evan Prodromou <evan@controlyourself.ca>**20080918021727]
-[change id of message textarea
-Evan Prodromou <evan@controlyourself.ca>**20080918021926]
-[no instructions for 'to' dropdown
-Evan Prodromou <evan@controlyourself.ca>**20080918022410]
-[set message form label to display inline
-Evan Prodromou <evan@controlyourself.ca>**20080918022558]
-[try to move the message box up a bit
-Evan Prodromou <evan@controlyourself.ca>**20080918022756]
-[scootch it down a bit again
-Evan Prodromou <evan@controlyourself.ca>**20080918022841]
-[return correct data structure for messages in showmessage
-Evan Prodromou <evan@controlyourself.ca>**20080918023032]
-[fetch -> find
-Evan Prodromou <evan@controlyourself.ca>**20080918025232]
-[fix htaccess so pass message param correctly
-Evan Prodromou <evan@controlyourself.ca>**20080918025428]
-[more id -> message shenanigans
-Evan Prodromou <evan@controlyourself.ca>**20080918025543]
-[remove tabs from showmessage
-Evan Prodromou <evan@controlyourself.ca>**20080918025713]
-[split favor forms code
-Evan Prodromou <evan@controlyourself.ca>**20080918032048]
-[big changes to the README, part 1
-Evan Prodromou <evan@controlyourself.ca>**20080918135502]
-[if favor/disfavor submitted through ajax, return micro-html of form
-Evan Prodromou <evan@controlyourself.ca>**20080918135608]
-[Gee, maybe I shouldn't try to write DOM code from memory
-Evan Prodromou <evan@controlyourself.ca>**20080918140533]
-[ah, turns out each() stuff is called as a method
-Evan Prodromou <evan@controlyourself.ca>**20080918140756]
-[get the zeroth form in the returned array
-Evan Prodromou <evan@controlyourself.ca>**20080918145545]
-[replace -> replaceWith
-Evan Prodromou <evan@controlyourself.ca>**20080918150120]
-[ajaxForm on returned forms
-Evan Prodromou <evan@controlyourself.ca>**20080918150438]
-[have to add the ajaxHidden thing, too
-Evan Prodromou <evan@controlyourself.ca>**20080918150753]
-[dis -> fav
-Evan Prodromou <evan@controlyourself.ca>**20080918151642]
-[correct background of dis/favor form on hover
-Evan Prodromou <evan@controlyourself.ca>**20080918151907]
-[input changes
-Evan Prodromou <evan@controlyourself.ca>**20080918152124]
-[add favor/disfavor to profile
-Evan Prodromou <evan@controlyourself.ca>**20080918152612]
-[don't notify you favor your own notice
-Evan Prodromou <evan@controlyourself.ca>**20080918152823]
-[correct a couple of bugs
-Evan Prodromou <evan@controlyourself.ca>**20080922190937]
-[clear and rebuild db scripts
-Evan Prodromou <evan@controlyourself.ca>**20080922195824]
-[add additional licenses into extlib subdir
-Evan Prodromou <evan@controlyourself.ca>**20080922212120]
-[hide IM settings if xmpp disabled
-Evan Prodromou <evan@controlyourself.ca>**20080922214003]
-[finish the README file
-Evan Prodromou <evan@controlyourself.ca>**20080922223239]
-[A working stopdaemons.sh, and no parameter needed for startdaemons.sh
-CiaranG <ciaran@ciarang.com>**20080906202242]
-[merge CiaranG's changes for subs
-Evan Prodromou <evan@prodromou.name>**20080922225031] \ No newline at end of file