Evan Prodromou [Fri, 17 Dec 2010 23:55:00 +0000 (18:55 -0500)]
change code order to make shorter lines
Evan Prodromou [Fri, 17 Dec 2010 22:37:43 +0000 (17:37 -0500)]
I'm still not sure when it's useful to reset a notice's author
Evan Prodromou [Fri, 17 Dec 2010 21:27:20 +0000 (16:27 -0500)]
Make restoreuser use new FeedImporter queue handler
Evan Prodromou [Fri, 17 Dec 2010 18:12:17 +0000 (13:12 -0500)]
move activity importing code to two different queuehandler classes
Evan Prodromou [Fri, 17 Dec 2010 18:10:23 +0000 (13:10 -0500)]
Move accountrestorer class to feed importer
Evan Prodromou [Fri, 17 Dec 2010 18:09:37 +0000 (13:09 -0500)]
move code to get an author object for a feed to a library from Ostatus_profile
Evan Prodromou [Thu, 16 Dec 2010 21:17:38 +0000 (16:17 -0500)]
distribute flag for Notice::saveNew()
Evan Prodromou [Wed, 15 Dec 2010 22:53:38 +0000 (17:53 -0500)]
Move account restoration code to a shared library
Moved most of the heavy-lifting for account restoration out of
restoreuser.php and into its own class, with the hope that we'll do
the work from the Web eventually.
Evan Prodromou [Wed, 15 Dec 2010 22:39:58 +0000 (17:39 -0500)]
syntax error in deleteaccount
Evan Prodromou [Wed, 15 Dec 2010 21:48:28 +0000 (16:48 -0500)]
Merge branch '0.9.x' into righttoleave
Brion Vibber [Wed, 15 Dec 2010 20:14:25 +0000 (12:14 -0800)]
Cleaner code to avoid a couple PHP notices from accessing uninitialized variables in ostatus profile discovery (these cases hit checking diaspora accounts)
Brion Vibber [Wed, 15 Dec 2010 00:14:15 +0000 (16:14 -0800)]
Mark OembedAction, XrdAction, and (plugin) AutocompleteAction as read-only. Tweaked ApiStatusesShow and ApiTimelineUser to still claim read-only when hit with a HEAD request (usually link checkers or a precursor to a GET, and should be semantically equivalent to a GET without actually transferring data)
Brion Vibber [Tue, 14 Dec 2010 22:43:50 +0000 (14:43 -0800)]
AtomPub discovery fix: gets MarsEdit's auto API detection working.
Router entry for AtomPubService was slightly off, generating an incorrect link in the RSD data.
Brion Vibber [Tue, 14 Dec 2010 22:07:25 +0000 (14:07 -0800)]
AtomPub test cases: make sure the posted entry appears in the feed, and that it disappears after deletion
Brion Vibber [Tue, 14 Dec 2010 21:52:44 +0000 (13:52 -0800)]
AtomPub tetss: confirming edit URL linked properly in individual entry return
Brion Vibber [Tue, 14 Dec 2010 21:25:22 +0000 (13:25 -0800)]
AtomPub tests: fix delete test
Brion Vibber [Tue, 14 Dec 2010 21:23:09 +0000 (13:23 -0800)]
AtomPub tests: fix for atom post check
Brion Vibber [Tue, 14 Dec 2010 21:19:22 +0000 (13:19 -0800)]
AtomPub fix: correct the response URL given from posting a new message (wrong parameter meant we got the main page instead of the message's URL)
Brion Vibber [Tue, 14 Dec 2010 21:12:24 +0000 (13:12 -0800)]
AtomPub fixes: return '201 Created' on POST of new message; better error checking on Atom input
Brion Vibber [Tue, 14 Dec 2010 21:11:34 +0000 (13:11 -0800)]
more fixins on AtomPub tests
Brion Vibber [Tue, 14 Dec 2010 20:36:21 +0000 (12:36 -0800)]
auth fix
Brion Vibber [Tue, 14 Dec 2010 20:33:28 +0000 (12:33 -0800)]
Mostly-implemented basic AtomPub tests
Evan Prodromou [Tue, 14 Dec 2010 17:38:43 +0000 (12:38 -0500)]
An action to delete your own account
The new DeleteaccountAction lets a user delete their own account
(subject to global rights set by the admin). It presents a form to
delete the account, with an "I am sure." text entry box.
It then schedules the account for deletion and logs the user out.
Brion Vibber [Tue, 14 Dec 2010 01:48:23 +0000 (17:48 -0800)]
partial stub file for atompub tests
Brion Vibber [Mon, 13 Dec 2010 22:03:59 +0000 (14:03 -0800)]
Merge branch 'master' of gitorious.org:statusnet/mainline into 0.9.x
Evan Prodromou [Mon, 13 Dec 2010 21:49:01 +0000 (16:49 -0500)]
don't show the backup link if the user can't backup
Evan Prodromou [Mon, 13 Dec 2010 21:32:39 +0000 (16:32 -0500)]
add an action to backup the current account in ActivityStreams format
Evan Prodromou [Mon, 13 Dec 2010 21:28:32 +0000 (16:28 -0500)]
define rights for account maintenance and default rules
Evan Prodromou [Mon, 13 Dec 2010 21:28:02 +0000 (16:28 -0500)]
define configuration settings for account maintenance security
Brion Vibber [Mon, 13 Dec 2010 20:12:22 +0000 (12:12 -0800)]
TwitterBridge: partial merge of id_str usage from 0.9.x for improved 32-bit and pre-5.2.10 compatibility. (on 64-bit in 5.2.6 we can pull the integer IDs, but silently lose some precision on the end.)
Fixes for Twitter bridge breakage on 32-bit servers. New "Snowflake" 64-bit IDs have become too big to fit in the integer portion of double-precision floats, so to reliably use these IDs we need to pull the new string form now.
Machines with 64-bit PHP installation should have had no problems (except on Windows, where integers are still 32 bits)
Conflicts:
plugins/TwitterBridge/twitterimport.php <- as this hasn't been broken out, the import code is NOT FULLY UPDATED HERE.
Evan Prodromou [Mon, 13 Dec 2010 19:35:42 +0000 (14:35 -0500)]
Merge branch 'activityatompub' into 0.9.x
Evan Prodromou [Mon, 13 Dec 2010 19:35:29 +0000 (14:35 -0500)]
add the other three feeds to AtomPub service document
Evan Prodromou [Mon, 13 Dec 2010 18:56:54 +0000 (13:56 -0500)]
Atom pub feed for group memberships
Feed for group memberships, in activity streams format.
Shows a feed; has proper pagination; accepts activitystreams "join"
activities to start a new membership.
Evan Prodromou [Mon, 13 Dec 2010 18:50:57 +0000 (13:50 -0500)]
fix URL for memberships feed
Evan Prodromou [Mon, 13 Dec 2010 18:50:39 +0000 (13:50 -0500)]
membership stream method and return membership from join() in Group_member class
Evan Prodromou [Mon, 13 Dec 2010 18:08:38 +0000 (13:08 -0500)]
fix navigation links for favorite feed
Evan Prodromou [Mon, 13 Dec 2010 18:07:25 +0000 (13:07 -0500)]
fix navigation links for subscriptions feed
Evan Prodromou [Mon, 13 Dec 2010 17:40:44 +0000 (12:40 -0500)]
group_member includes self link, edit link
Evan Prodromou [Mon, 13 Dec 2010 17:40:22 +0000 (12:40 -0500)]
add atompub show membership action
Evan Prodromou [Mon, 13 Dec 2010 17:40:01 +0000 (12:40 -0500)]
add atompub membership actions to router
Zach Copley [Mon, 13 Dec 2010 01:37:42 +0000 (17:37 -0800)]
Move getConnectedApps() from Profile to User, where it belongs
Evan Prodromou [Sun, 12 Dec 2010 18:16:34 +0000 (13:16 -0500)]
atompub favorite feed
Evan Prodromou [Sun, 12 Dec 2010 17:22:04 +0000 (12:22 -0500)]
a stream function for Fave class
Evan Prodromou [Sun, 12 Dec 2010 17:13:54 +0000 (12:13 -0500)]
fix subtitle in subscriptions feed
Evan Prodromou [Sat, 11 Dec 2010 16:24:07 +0000 (11:24 -0500)]
use new Subscription stream methods for AtomPub
Evan Prodromou [Sat, 11 Dec 2010 16:03:02 +0000 (11:03 -0500)]
Merge branch '0.9.x' into activityatompub
Evan Prodromou [Sat, 11 Dec 2010 16:01:05 +0000 (11:01 -0500)]
Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 0.9.x
Evan Prodromou [Sat, 11 Dec 2010 16:00:04 +0000 (11:00 -0500)]
cache stream of subscriptions
Evan Prodromou [Sat, 11 Dec 2010 15:24:46 +0000 (10:24 -0500)]
Subscription stream functions
Made two new functions, Subscription::bySubscriber() and
Subscription::bySubscribed(), to get streams of Subscription objects.
Converted Profile::getSubscribers() and Profile::getSubscriptions() to
use these functions.
Evan Prodromou [Fri, 10 Dec 2010 23:50:50 +0000 (18:50 -0500)]
Show a single favorite for AtomPub
Brion Vibber [Fri, 10 Dec 2010 22:08:36 +0000 (22:08 +0000)]
Workaround for locally-handled sessions breaking on PHP 5.3 with APC enabled.
Big thanks to the folks at http://pecl.php.net/bugs/bug.php?id=16745 for the secret juju!
Classes were being torn down before session save handlers got called at the end of the request, which exploded with complaints about being unable to find various classes.
Registering a shutdown function lets us explicitly close out the session before everything gets torn down.
Brion Vibber [Fri, 10 Dec 2010 22:08:36 +0000 (22:08 +0000)]
Workaround for locally-handled sessions breaking on PHP 5.3 with APC enabled.
Big thanks to the folks at http://pecl.php.net/bugs/bug.php?id=16745 for the secret juju!
Classes were being torn down before session save handlers got called at the end of the request, which exploded with complaints about being unable to find various classes.
Registering a shutdown function lets us explicitly close out the session before everything gets torn down.
Evan Prodromou [Fri, 10 Dec 2010 22:04:55 +0000 (17:04 -0500)]
Merge branch '0.9.x' into activityatompub
Conflicts:
lib/router.php
Brion Vibber [Mon, 3 May 2010 23:49:59 +0000 (16:49 -0700)]
extlibs updates: PEAR::Mail to 1.2.0, PEAR::Net_SMTP to 1.4.2 (need to go together as a pair)
PEAR::Mail updated to 1.2.0 from 1.1.4, fixes deprecation warnings on PHP 5.3, as well as:
1.2.0:
• QA release - stable.
• Updated minimum dependencies (Net_SMTP, PEAR, PHP)
• Doc Bug #15620 Licence change to BSD
• Bug #13659 Mail parse error in special condition
• Bug #16200 - Security hole allow to read/write Arbitrary File
_hasUnclosedQuotes() doesn't properly handle a double slash before an end quote (slusarz@curecanti.org, Bug #9137).
• Make sure Net_SMTP is defined when calling getSMTPObject() directly (slusarz@curecanti.org, Bug #13772).
• Add addServiceExtensionParameter() to the SMTP driver (slusarz@curecanti.org, Bug #13764).
• Add a method to obtain the Net_SMTP object from the SMTP driver (slusarz@curecanti.org, Bug #13766).
PEAR::Net_SMTP updated to 1.4.2 from 1.3.1, needed to support updated PEAR::Mail:
1.4.2:
• Fixing header string quoting in data(). (Bug #17199)
1.4.1:
• The auth() method now includes an optional $tls parameter that determines whether or not TLS should be attempted (if supported by the PHP runtime and the remote SMTP server). This parameter defaults to true. (Bug #16349)
• Header data can be specified separately from message body data by passing it as the optional second parameter to ``data()``. This is especially useful when an open file resource is being used to supply message data because it allows header fields (like *Subject:*) to be built dynamically at runtime. (Request #17012)
1.4.0:
• The data() method now accepts either a string or a file resource containing the message data. (Request #16962)
1.3.4:
• All Net_Socket write failures are now recognized. (Bug #16831)
1.3.3:
• Added getGreeting(), for retrieving the server's greeting string. (Request #16066) [needed for PEAR::Mail]
• We no longer attempt a TLS connection if we're already using a secure socket. (Bug #16254)
• You can now specify a debug output handler via setDebug(). (Request #16420)
1.3.2:
• TLS connection only gets started if no AUTH methods are sent. (Bug #14944)
Brion Vibber [Mon, 3 May 2010 23:49:59 +0000 (16:49 -0700)]
extlibs updates: PEAR::Mail to 1.2.0, PEAR::Net_SMTP to 1.4.2 (need to go together as a pair)
PEAR::Mail updated to 1.2.0 from 1.1.4, fixes deprecation warnings on PHP 5.3, as well as:
1.2.0:
• QA release - stable.
• Updated minimum dependencies (Net_SMTP, PEAR, PHP)
• Doc Bug #15620 Licence change to BSD
• Bug #13659 Mail parse error in special condition
• Bug #16200 - Security hole allow to read/write Arbitrary File
_hasUnclosedQuotes() doesn't properly handle a double slash before an end quote (slusarz@curecanti.org, Bug #9137).
• Make sure Net_SMTP is defined when calling getSMTPObject() directly (slusarz@curecanti.org, Bug #13772).
• Add addServiceExtensionParameter() to the SMTP driver (slusarz@curecanti.org, Bug #13764).
• Add a method to obtain the Net_SMTP object from the SMTP driver (slusarz@curecanti.org, Bug #13766).
PEAR::Net_SMTP updated to 1.4.2 from 1.3.1, needed to support updated PEAR::Mail:
1.4.2:
• Fixing header string quoting in data(). (Bug #17199)
1.4.1:
• The auth() method now includes an optional $tls parameter that determines whether or not TLS should be attempted (if supported by the PHP runtime and the remote SMTP server). This parameter defaults to true. (Bug #16349)
• Header data can be specified separately from message body data by passing it as the optional second parameter to ``data()``. This is especially useful when an open file resource is being used to supply message data because it allows header fields (like *Subject:*) to be built dynamically at runtime. (Request #17012)
1.4.0:
• The data() method now accepts either a string or a file resource containing the message data. (Request #16962)
1.3.4:
• All Net_Socket write failures are now recognized. (Bug #16831)
1.3.3:
• Added getGreeting(), for retrieving the server's greeting string. (Request #16066) [needed for PEAR::Mail]
• We no longer attempt a TLS connection if we're already using a secure socket. (Bug #16254)
• You can now specify a debug output handler via setDebug(). (Request #16420)
1.3.2:
• TLS connection only gets started if no AUTH methods are sent. (Bug #14944)
Brion Vibber [Fri, 10 Dec 2010 00:43:35 +0000 (16:43 -0800)]
Tweaking nickname format regexes: added one that explicitly allows numbers, to be used in router setup.
Evan Prodromou [Thu, 9 Dec 2010 21:25:47 +0000 (16:25 -0500)]
add a new subscription using POST to APP
Evan Prodromou [Thu, 9 Dec 2010 21:05:07 +0000 (16:05 -0500)]
Add subscription feed for AtomPub
Evan Prodromou [Thu, 9 Dec 2010 19:25:57 +0000 (14:25 -0500)]
make HEAD work for AtomPubShowSubscription
Brion Vibber [Thu, 9 Dec 2010 18:24:06 +0000 (10:24 -0800)]
Disable InProcessCache plugin for CLI scripts, which are more likely to be long-running, greatly increasing the chance of data corruption.
Evan Prodromou [Thu, 9 Dec 2010 18:11:02 +0000 (13:11 -0500)]
AtomPub for single subscription
Evan Prodromou [Thu, 9 Dec 2010 16:27:55 +0000 (11:27 -0500)]
Merge branch '0.9.x' into activityatompub
Evan Prodromou [Thu, 9 Dec 2010 15:48:12 +0000 (10:48 -0500)]
Merge remote branch 'gitorious/0.9.x' into 0.9.x
Evan Prodromou [Thu, 9 Dec 2010 15:45:36 +0000 (10:45 -0500)]
Additional in-process cache plugin InProcessCache
Some of our caching systems, like the disk cache or memcached, have
significant overhead (network connections or disk I/O).
This plugin adds an additional layer of in-process cache, so we don't
need to reconnect to external cache systems when we've already
received a data item from the cache. There are some concurrency issues
here, but typically they won't be important at the level of a single
web hit.
Brion Vibber [Thu, 9 Dec 2010 02:13:20 +0000 (18:13 -0800)]
Merge branch 'master' into 0.9.x
Brion Vibber [Thu, 9 Dec 2010 01:39:04 +0000 (17:39 -0800)]
Tweak to PiwikAnalytics plugin to help browsers to pre-load piwik.js, may shave a little off load time.
Piwik's current default recommended JS for loading creates a <script> tag via document.write(). In addition to being generally evil, this means the browser doesn't know it's going to need piwik.js until that chunk of script gets executed... which can't happen until all scripts referenced *before* it have been loaded and executed.
The only reason for that bit of script though seems to be to pick 'http' or 'https' depending on the current page's scheme. This can be done more simply by using a protocol-relative link (eg "//piwik.status.net/piwik.js"), which the browser will resolve as appropriate. Since it's now sitting in the <script> tag, the browser's lookahead code will now see it and be able to start loading it while earlier things are parsing/executing.
May be better still to move to an asynchronous load after DOM-ready, but I'm not sure if that'll screw with the analytics code (eg, not being able to start things on the DOM-ready events since they're past).
Brion Vibber [Wed, 8 Dec 2010 23:01:25 +0000 (15:01 -0800)]
Merge branch 'master' into 0.9.x
Brion Vibber [Wed, 8 Dec 2010 22:54:02 +0000 (14:54 -0800)]
Mapstraction plugin: use minified sources for OpenLayers
The default full build of OpenLayers.js is 943kb as of 2.10; this gzips down to a couple hundred kb
but is still rather nasty, plus loading it off a remote host could slow things down.
Using a local copy let us cut down the size significantly by discarding unused features, and further
minification with yui-compressor shaves a bit more off. Cuts down to about 1/5 the size of the
original.
Also threw in a bundled & minified copy of the Mapstraction classes plus our usermap.js,
which covers the common case of using the default OpenLayers provider. This cuts out three
additional script loads, two of which weren't getting launched until after the mxn.js main
file got loaded.
Brion Vibber [Wed, 8 Dec 2010 22:52:26 +0000 (14:52 -0800)]
Create a bundled & minified JS file for Mapstraction's common case (using OpenLayers); this'll avoid waiting on additional script loads for mxn.core.js and mxn.openlayers.core.js, and removes the need to load usermap.js separately as well.
Brion Vibber [Wed, 8 Dec 2010 21:52:35 +0000 (13:52 -0800)]
Add stripped and minified local copy of OpenLayers 2.10, about 1/5 the size of the full version.
Included Makefile will recreate the OpenLayers.js using the statusnet.cfg strip configuration file
and yui-compressor to do some extra minification at the end. Requires fetching the OpenLayers
source download and dropping it in:
http://openlayers.org/download/OpenLayers-2.10.tar.gz
Evan Prodromou [Wed, 8 Dec 2010 12:25:55 +0000 (07:25 -0500)]
Don't cache user-specific information for Notice atom entries
Evan Prodromou [Wed, 8 Dec 2010 12:25:55 +0000 (07:25 -0500)]
Don't cache user-specific information for Notice atom entries
Evan Prodromou [Tue, 7 Dec 2010 21:23:12 +0000 (16:23 -0500)]
whitespace problems in lib/router
Evan Prodromou [Tue, 7 Dec 2010 20:53:34 +0000 (15:53 -0500)]
generate links for apinamespace.org/atom and /twitter in userxrd
Evan Prodromou [Tue, 7 Dec 2010 20:53:08 +0000 (15:53 -0500)]
allow <Property> elements in <Link> in XRD
Evan Prodromou [Tue, 7 Dec 2010 20:26:43 +0000 (15:26 -0500)]
fix whitespace in lib/xrdaction.php
Brion Vibber [Tue, 7 Dec 2010 20:13:50 +0000 (12:13 -0800)]
Merge branch 'master' of gitorious.org:statusnet/mainline
Brion Vibber [Tue, 7 Dec 2010 20:11:37 +0000 (12:11 -0800)]
Quick hack to discard twitter broadcast queue items on failure *IF* config option 'twitter' 'ignore_errors' is on:
$config['twitter']['ignore_errors'] = true;
A longer-term solution is to patch up the indirect retry handling to count retries better, or delay for later retry sensibly.
Brion Vibber [Tue, 7 Dec 2010 01:20:14 +0000 (17:20 -0800)]
For good measure, don't return autocomplete results when not logged in.
Brion Vibber [Tue, 7 Dec 2010 01:16:47 +0000 (17:16 -0800)]
reindent
Brion Vibber [Tue, 7 Dec 2010 01:15:56 +0000 (17:15 -0800)]
Tweak router target URL for Autocomplete suggestions
Brion Vibber [Tue, 7 Dec 2010 01:13:02 +0000 (17:13 -0800)]
Update Autocomplete readme: current state seems to work fine on private sites, so removing that note.
Brion Vibber [Tue, 7 Dec 2010 00:55:16 +0000 (16:55 -0800)]
Ticket #2924: include mini avatars in Autocomplete plugin drop-down list
Ticket #2923: don't show "(null)" for some profiles with no full name set
Brion Vibber [Tue, 7 Dec 2010 00:20:54 +0000 (16:20 -0800)]
Start tweaking Autocomplete js
Brion Vibber [Mon, 6 Dec 2010 23:20:49 +0000 (15:20 -0800)]
fix breakage in AutocompletePlugin
Brion Vibber [Mon, 6 Dec 2010 23:14:47 +0000 (15:14 -0800)]
Merge branch 'linkpreview-fix' into 0.9.x
Brion Vibber [Mon, 6 Dec 2010 23:11:42 +0000 (15:11 -0800)]
minify LinkPreview JS code
Brion Vibber [Mon, 6 Dec 2010 22:49:24 +0000 (14:49 -0800)]
Ticket #2921: cleanup on LinkPreview to make fewer requests while typing. Will now wait for each link's preview request to complete (successfully or unsuccessfully) before re-running it)
Evan Prodromou [Mon, 6 Dec 2010 22:28:22 +0000 (17:28 -0500)]
use codeKey() in activity caching
Evan Prodromou [Mon, 6 Dec 2010 22:22:34 +0000 (17:22 -0500)]
Merge branch '0.9.x' into cacheactivity
Evan Prodromou [Mon, 6 Dec 2010 22:22:03 +0000 (17:22 -0500)]
Merge branch 'master' into 0.9.x
Evan Prodromou [Mon, 6 Dec 2010 22:21:38 +0000 (17:21 -0500)]
Merge branch 'master' of gitorious.org:statusnet/mainline
Evan Prodromou [Mon, 6 Dec 2010 22:19:41 +0000 (17:19 -0500)]
Config flag to disable router caching if needed
Evan Prodromou [Mon, 6 Dec 2010 22:08:52 +0000 (17:08 -0500)]
use Cache::codeKey() in Router class
Evan Prodromou [Mon, 6 Dec 2010 22:05:32 +0000 (17:05 -0500)]
Make code-dependent cache entries more volatile
If a cache entry is dependent on the code that's running, upgrading
(or enabling/disabling plugins) can generate hard-to-track
inconsistencies.
This change adds a close-to-unique fingerprint of the running code to
some cache keys, so that if the fingerprint changes, the old values
are ignored and new values are used.
If the automated uniqueness fails, an administrator can add an extra
config value, $config['site']['build'], that's thrown into the key also.
Evan Prodromou [Mon, 6 Dec 2010 22:19:41 +0000 (17:19 -0500)]
Config flag to disable router caching if needed
Evan Prodromou [Mon, 6 Dec 2010 22:08:52 +0000 (17:08 -0500)]
use Cache::codeKey() in Router class
Evan Prodromou [Mon, 6 Dec 2010 22:05:32 +0000 (17:05 -0500)]
Make code-dependent cache entries more volatile
If a cache entry is dependent on the code that's running, upgrading
(or enabling/disabling plugins) can generate hard-to-track
inconsistencies.
This change adds a close-to-unique fingerprint of the running code to
some cache keys, so that if the fingerprint changes, the old values
are ignored and new values are used.
If the automated uniqueness fails, an administrator can add an extra
config value, $config['site']['build'], that's thrown into the key also.
Evan Prodromou [Mon, 6 Dec 2010 21:38:02 +0000 (16:38 -0500)]
cache generated activity info
Brion Vibber [Mon, 6 Dec 2010 21:37:57 +0000 (13:37 -0800)]
Use short API-style error responses for LinkPreview's oembed proxy