We had planned to change over to using Beastie Boys song titles for
the 1.x series of StatusNet releases, but with the end of REM last
week, the team thought naming one last StatusNet version after an REM
song was a nice tribute, and a good way to announce what we think this
release means.
This should resolve the issues darkip was reporting with user_im_prefs entries returning null immediately after insertion (seen with memcached off, so it was happening even with the built-in in-process cache in the Cache base class).
What was happening was that the initial pkeyGet() would end up saving a negative cache entry under the form with the fields sorted in the key, as via multicacheKey():
'statusnet:blaguette:user_im_prefs:screenname,transport:brionv,sms' => 'N;'
then we'd do an insert() on the new entry, saving cache entries for the non-sorted key names returned by _allCacheKeys():
'statusnet:blaguette:user_im_prefs:transport,screenname:sms,brionv' => 'O...'
'statusnet:blaguette:user_im_prefs:user_id,transport:1234,sms' => 'O...'
but the next query via pkeyGet() still saw the negative lookup cache from before, and came back with null.
Now, _allCacheKeys() sorts the fields in the keys by using the same key-builder function, and queries pick up the same thing you just inserted. :)
Added routes to the router for list pages in single-user mode.
For each of the actions in those routes, use the global single-user
nickname rather than a nickname URL argument to determine the tagger ID.
In nav, and for Ajax, provide the right nicknames.
Memcached_DataObject doesn't quite fully understand unique indexes, and can't properly build cache keys for compound unique or primary keys.
Managed_DataObject has more information in its schema data, so we can build a proper list.
This file is really, really out-of-date. We've got admin panels, and
we've got a long document (CONFIGURE) on how to do this. Using
config.php.sample as a starting point is a bad idea.