Commit Graph

2899 Commits

Author SHA1 Message Date
Brion Vibber 81b6b58e33 Merge branch 'master' into testing
Conflicts:
	lib/stompqueuemanager.php
2010-02-16 09:22:02 -08:00
Brion Vibber c74aea589d Stomp queue restructuring for mass scalability:
- Multiplexing queues into groups and for multiple sites.
- Sharing vs breakout configurable per site and per queue via $config['queue']['breakout']
- Detect how many times a message is redelivered, discard if it's killed too many daemons
 - count configurable with $config['queue']['max_retries']
 - can dump the items to files in $config['queue']['dead_letter_dir']

Queue daemon memory & resource leak fixes:
- avoid unnecessary reconnections to memcached server (switch persistent connections back in on second initialization, assuming it's child process)
- monkey-patch for leaky .ini loads in DB_DataObject::databaseStructure() - was leaking 200k per active switch
- applied leak fixes to Status_network as well, using intermediate base Safe_DataObject for both it and Memcache_DataObject

Misc queue fixes:
- correct handling of child processes exiting due to signal termination instead of regular exit
- shutdown instead of infinite respawn loop if we're already past the soft memory limit at startup
- Added --all option for xmppdaemon... still opens one xmpp connection per site that has xmpp active

Cache updates:
- add Cache::increment() method with native support for memcached atomic increment
2010-02-16 09:16:51 -08:00
Brion Vibber 3d0c3f0577 Pull fix from testing branch: use new encoding funcs w/ stomp queues 2010-02-16 09:15:29 -08:00
Evan Prodromou a8c2a8261e move some nickname-guessing code to lib/util.php from OpenID 2010-02-16 11:06:10 -05:00
Zach Copley f414544d0d Upgrade Twitter bridge to use OAuth 1.0a. It's more secure, and allows
us to automatically send in a callback url instead of having to manually
configure one for each StatusNet instance.
2010-02-16 06:12:08 +00:00
Sarven Capadisli 350f90eedc Added another single whitespace 2010-02-15 21:21:25 +01:00
Sarven Capadisli 03edbfe24e Added single whitespace to separate inline text words. 2010-02-15 20:41:46 +01:00
Sarven Capadisli 9465a4d5c6 Merge branch 'testing' of git@gitorious.org:statusnet/mainline into testing 2010-02-13 20:28:39 +01:00
Sarven Capadisli fc19179bc5 Added event hook to remote subscription 2010-02-13 18:40:36 +01:00
Evan Prodromou 269b4711eb Merge branch 'ssleverything' into testing 2010-02-13 12:39:15 -05:00
Zach Copley f3a82e787c Add OStatus PuSH hub and Salmon links back into user and group feeds 2010-02-12 19:02:27 -08:00
Brion Vibber 38f42d56bc Session fix for PHP 5.3 configurations where cookies are excluded from $_REQUEST via request_order in php.ini (Fedora 12, MacPorts known to be affected) 2010-02-12 15:24:15 -08:00
Zach Copley 506c2d7491 Initial upgraded Atom output for group timelines 2010-02-12 12:24:29 -08:00
Evan Prodromou 31461e120f let files go to SSL dir too 2010-02-11 17:06:57 -05:00
Evan Prodromou 3018683718 let backgrounds be put under SSL 2010-02-11 17:03:31 -05:00
Evan Prodromou b96af33d97 put Javascript files under SSL 2010-02-11 16:59:39 -05:00
Zach Copley c465f675d9 Make Atom timelines in the API use Atom10feed 2010-02-11 13:56:05 -08:00
Zach Copley c8d5c8442f Added some boilerplate class comments, etc. 2010-02-11 13:56:05 -08:00
Zach Copley e2c0f59414 Some upgrades to Atom output for OStatus 2010-02-11 13:56:05 -08:00
Zach Copley ce3c3be1bf Utility classes for atom feeds 2010-02-11 13:56:05 -08:00
Evan Prodromou d6869cde7b let avatars be served over SSL 2010-02-11 16:51:15 -05:00
Evan Prodromou 5175b5062e default theme ssl to null 2010-02-11 16:48:15 -05:00
Evan Prodromou 316ed3f86b null theme ssl setting means 'guess' 2010-02-11 16:47:47 -05:00
Evan Prodromou a6ab9c4a3e Themes can be served from an SSL server 2010-02-11 16:42:58 -05:00
Brion Vibber 045797331c fix up hub queueing to work w/ stomp queues 2010-02-10 12:27:41 -08:00
Brion Vibber c4557d4d07 Merge branch 'master' of git@gitorious.org:statusnet/mainline into testing 2010-02-10 11:12:11 -08:00
Brion Vibber d9c9b2a12f Queue daemon fixes:
* skip unnecessary unsubscribes on graceful shutdown -- takes a long time for many queues, slows down our restarts when hitting graceful mem limit
* fix control channel (was broken when we switched to support multiple queue servers)
2010-02-10 10:59:30 -08:00
Brion Vibber 8449256817 OStatus partial support for group subscriptions:
* detection of group feeds is currently a nasty hack based on presence of '/groups/' in URL -- should use some property on the feed?
* listing for the remote group is kinda cruddy; needs to be named more cleanly
* still need to establish per-author profiles (easier once we have the updated Atom code in)
* group delivery probably not right yet
* saving of group messages still triggering some weird behavior

Added support for since_id and max_id on group timeline feeds as a free extra. Enjoy!
2010-02-09 18:32:52 -08:00
Brion Vibber e856af34c3 Configurable delay between queuedaemon.php spawns/respawns to help stagger out startups and subscriptions. Defaults to 1 second.
$config['queue']['spawndelay'] = 1;
2010-02-09 14:27:33 -08:00
Brion Vibber cd0f288fa7 Configurable delay between queuedaemon.php spawns/respawns to help stagger out startups and subscriptions. Defaults to 1 second.
$config['queue']['spawndelay'] = 1;
2010-02-09 12:39:31 -08:00
Brion Vibber 384387c9b0 OStatus cleanup...
* Treat linkless feed posts as status updates; drop the "New post:" prefix and quotes on them.
* Use stable user IDs for atom/rss2 feed links instead of unstable nicknames
* Pull Atom feed preferentially when subscribing -- can now put the remote user's profile page straight into the feed subscription form and get to the right place.
* Clean up naming for push endpoints
2010-02-08 14:58:12 -08:00
Evan Prodromou 9cac8eaae5 readme and version for beta5 2010-02-08 14:07:31 -08:00
Brion Vibber dc09453a77 First steps on converting FeedSub into the pub/sub basis for OStatus communications:
* renamed FeedSub plugin to OStatus
* now setting avatar on subscriptions
* general fixes for subscription
* integrated PuSH hub to handle only user timelines on canonical ID url; sends updates directly
* set $config['feedsub']['nohub'] = true to test w/ foreign feeds that don't have hubs (won't actually receive updates though)
* a few bits of code documentation
* HMAC support for verified distributions (safest if sub setup is on HTTPS)

And a couple core changes:
* minimizing HTML output for exceptions in API requests to aid in debugging
* fix for rel=self link in apitimelineuser when id given

This does not not yet include any of the individual subscription management (Salmon notifications for sub/unsub, etc) nor a nice UI for user subscriptions.
Needs some further cleanup to treat posts as status updates instead of link references.
2010-02-08 11:15:29 -08:00
Evan Prodromou 5fdcd88176 Moderator can make users admins of a group 2010-02-06 11:36:59 +01:00
Brion Vibber 875e1a70ce Don't spew warnings on usage of MEMCACHE_COMPRESSED constant when memcache PHP extension is not present.
Switched to a locally-defined Cache::COMPRESSED, translating that to MEMCACHE_COMPRESSED in the plugin.
2010-02-05 09:47:56 -08:00
Zach Copley 23802e58d6 Merge branch 'temp' 2010-02-05 03:19:12 +00:00
Zach Copley 857494c9c6 Actually store the timestamp on each nonce 2010-02-05 03:18:45 +00:00
Zach Copley 4041a59282 Always check for an OAuth request. This allows OAuth clients to set an
auth user, similar to how they can set one via http basic auth,
even if one is not required.  I think I finally got this right.
2010-02-05 03:18:44 +00:00
Zach Copley 5417124884 Linkify notice source when posting from registered OAuth apps 2010-02-05 03:18:44 +00:00
Zach Copley b31c79cee1 Better token revocation 2010-02-05 03:18:43 +00:00
Zach Copley e495ac356c Allow developers to delete OAuth applications 2010-02-05 03:18:43 +00:00
Zach Copley 8d320d7cc2 Merge branch 'testing' of git@gitorious.org:statusnet/mainline into testing 2010-02-05 02:08:37 +00:00
Zach Copley 10dfcde0b2 Actually store the timestamp on each nonce 2010-02-05 01:38:29 +00:00
Brion Vibber a020e23086 Merge branch 'master' of gitorious.org:statusnet/mainline into testing 2010-02-04 11:56:07 -08:00
Brion Vibber 5a1cbdc6f1 Add time-based cutoffs for public tag cloud, favorited lists to speed up those queries.
Defaulting to only looking at last 90 days of activity, can be adjusted up or down.

$config['tag']['cutoff'] = 86400 * 90;
$config['popular']['cutoff'] = 86400 * 90;

Per-user and per-group tag clouds do not use the cutoff (and it doesn't help with indexing on them).
2010-02-04 11:06:01 -08:00
Zach Copley 2085b506d4 Always check for an OAuth request. This allows OAuth clients to set an
auth user, similar to how they can set one via http basic auth,
even if one is not required.  I think I finally got this right.
2010-02-02 23:17:28 +00:00
Zach Copley dae28d98d1 Linkify notice source when posting from registered OAuth apps 2010-02-02 08:51:01 +00:00
Zach Copley 8191273078 Better token revocation 2010-02-02 08:50:33 +00:00
Zach Copley f0875ceea1 Allow developers to delete OAuth applications 2010-02-02 08:50:18 +00:00
Evan Prodromou f964357de9 readme and version for beta5 2010-02-01 13:44:06 -05:00