Commit Graph

596 Commits

Author SHA1 Message Date
Brion Vibber
55b1f3d84c Scalability work on user backup stream generation.
UserActivityStream -- used to create a full activity stream including subscriptions, favorites, notices, etc -- normally buffers everything into memory at once. This is infeasible for accounts with long histories of serious usage; it can take tens of seconds just to pull all records from the database, and working with them all in memory is very likely to hit resource limits.
This commit adds an alternate mode for this class which avoids pulling notices until during the actual output. Instead of pre-sorting and buffering all the notices, empty spaces between the other activities are filled in with notices as we're making output. This means more smaller queries spread out during operations, and less stuff kept in memory.

Callers (backupaccount action, and backupuser.php) which can stream their output pass an $outputMode param of UserActivityStream::OUTPUT_RAW, and during getString() it'll send straight to output as well as slurping the notices in this extra funky fashion.
Other callers will let it default to the OUTPUT_STRING mode, which keeps the previous behavior.

There should be a better way to do this, swapping out the stringer output for raw output more consitently.
2011-02-25 12:15:38 -08:00
Brion Vibber
4026e208c2 Add a scary 'experimental feture' warning & are-you-sure prompt on moveuser.php
As with deleteuser.php, can pass -y to bypass the prompt if you're sure.
2011-01-19 15:13:46 -08:00
Evan Prodromou
fb681990d9 Account moving is a background activity 2011-01-17 17:31:56 -05:00
Evan Prodromou
905aded81a move account-moving classes to their own libraries 2011-01-16 17:17:55 -05:00
Evan Prodromou
7f7dc13930 first example of moving a user 2011-01-16 17:15:26 -05:00
Evan Prodromou
4b41d05a13 Make restoreuser use new FeedImporter queue handler 2010-12-17 16:27:20 -05:00
Evan Prodromou
2e2519afee 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.
2010-12-15 17:53:38 -05:00
Brion Vibber
aa96c3c1d9 Fix for tickets #2917, #2262: user URL shortening options not being applied in non-web channels
common_shorten_links() can only access the web session's logged-in user, so never properly took user options into effect for posting via XMPP, API, mail, etc.

Adds an optional $user parameter on common_shorten_links(), and a $user->shortenLinks() as a clearer interface for that.
Tweaked some lower-level functions so $user gets passed down -- making the $notice_id param previously there for saving URLs at notice save time generalized a little.

Note also ticket #2919: there's a lot of duplicate code calling the shortening, checking the length, and reporting near-identical error messages. These should be consolidated to aid in code and translation maintenance.
2010-12-02 13:41:56 -08:00
Evan Prodromou
0cc332eab6 a quick script to flush the router from cache if needed 2010-11-30 10:27:32 -05:00
Brion Vibber
2b0d1d9fc4 Merge branch 'master' into 0.9.x 2010-11-22 11:13:22 -08:00
Brion Vibber
9c6e63b0bc Fixes for delete_status_network.sh:
* add some sanity checking: abort on failures instead of plodding through
* add some progress / error output
* fetch the target database server name from the status_network entry and use that to target the DROP DATABASE

Note that database names and other overrides in status_network entry may still not be seen.
2010-11-22 11:10:10 -08:00
Brion Vibber
9a590e0843 Merge branch 'master' of gitorious.org:statusnet/mainline into 0.9.x 2010-11-19 10:43:20 -08:00
Brion Vibber
573f98c5bc scripts/deletegroup.php -- basic CLI script to delete a group by id or local nickname. Like deleteuser.php, this can be used in batch runs by providing the -y override. 2010-11-18 14:40:05 -08:00
Brion Vibber
62dfdb34a6 Merge branch 'master' of gitorious.org:statusnet/mainline into 0.9.x 2010-11-15 13:56:17 -08:00
Brion Vibber
defaa3b332 clear_jabber.php script to clear confirmed jabber/xmpp addresses from one or more accounts 2010-11-15 13:26:42 -08:00
Siebrand Mazeland
5bd6458f00 i18n/L10n, translator documentation updates. 2010-11-02 23:00:50 +01:00
Brion Vibber
0c64df8cd9 Quickie script to aid in building release tarballs -- encapsulates the archive-i18n gen-changelog gen-retar steps. 2010-10-29 14:34:27 -07:00
Evan Prodromou
511566a132 userrole.php will take a profile id for remote profiles 2010-10-26 11:19:47 -04:00
Brion Vibber
c6e8fbebef scripts/fixup_group_uri.php to fill in empty user_group.uri entries; needed before changing domain names on sites that are hosting groups for remote users 2010-10-04 15:13:27 -07:00
Brion Vibber
1acc7d66c6 Always specify UTF-8 targt charset for html_entity_decode(); default is 8-bit ISO-8859-1 which causes things to break when we later pass them through things that expect to work with UTF-8. For instance, running through preg_replace() with the /u option results in NULL, leading to problems with OStatus and SubMirror generating their plaintext versions and doing length-cropping. 2010-09-30 11:29:31 -07:00
Siebrand Mazeland
ec83fef9b7 Take trailing newline out of i18n. 2010-09-28 01:33:09 +02:00
Evan Prodromou
be14f409e4 initial script to restore a backed-up user 2010-09-22 12:08:39 -04:00
Evan Prodromou
b5cfcba471 Merge branch '0.9.x' into activityexport
Conflicts:
	plugins/OStatus/OStatusPlugin.php
2010-09-22 10:45:34 -04:00
Evan Prodromou
78ed0348b0 Merge remote branch 'gitorious/0.9.x' into 0.9.x 2010-09-21 14:07:48 -04:00
Evan Prodromou
91a1862510 printfv and printfq functions in commandline.inc 2010-09-21 14:06:39 -04:00
Evan Prodromou
ab24007f4c throw a catchable exception in getUser() 2010-09-21 06:12:43 -04:00
Siebrand Mazeland
06272668ec Update group ID for translations export. 2010-09-18 23:50:36 +02:00
Siebrand Mazeland
234b1e6c23 Remove do_translatewiki_plugin(). No longer needed.
Replaced by MediaWiki Translate extension script http://svn.wikimedia.org/viewvc/mediawiki/trunk/extensions/Translate/scripts/genStatusNetPluginsConfig.php?view=markup
2010-09-18 00:23:38 +02:00
Evan Prodromou
b1802b8720 don't redeclare getUser() for backupuser.php 2010-09-15 23:32:27 -04:00
Evan Prodromou
670ad53215 Merge branch '0.9.x' into activityexport 2010-09-15 23:31:20 -04:00
Evan Prodromou
dffec9f223 move getUser() function to commandline.inc 2010-09-15 16:00:00 -04:00
Evan Prodromou
1ceb93cce4 move useractivitystream class to its own module 2010-09-15 15:18:01 -04:00
Evan Prodromou
518db02525 rename script to backupuser.php 2010-09-15 11:21:37 -04:00
Evan Prodromou
960ddd9704 groups in backup output 2010-09-15 07:12:23 -04:00
Evan Prodromou
eec540723e export user data as an activity stream 2010-09-13 17:24:19 -04:00
Evan Prodromou
6832a34216 Merge branch 'master' into testing 2010-09-09 15:02:10 -04:00
James Walker
dfca3ff709 fix typo in the comment (for better copy & pasting) 2010-09-09 13:14:52 -04:00
Siebrand Mazeland
f60ee85f68 Update extension configuration file creation (doesn't work yet in translatewiki.net). 2010-08-13 22:21:33 +02:00
James Walker
5daa5bc2af try/catch just in case.. 2010-07-28 12:04:37 -04:00
James Walker
dd7647aa95 script to normalize status_network tags 2010-07-28 11:49:09 -04:00
James Walker
7065450f03 normalizing tags for status_network 2010-07-20 17:34:58 -07:00
Zach Copley
1b561065b0 Some initial Doxygen-based documentation for the API 2010-04-22 13:11:49 -07:00
Brion Vibber
61e7d898dc docgen.php no longer depends on having a working installation; uses Console_GetOpt directly and regexes the STATUSNET_VERSION from common.php 2010-04-21 20:20:43 +02:00
Brion Vibber
df41287226 Merge branch 'testing' of gitorious.org:statusnet/mainline into 0.9.x 2010-04-20 13:52:58 +02:00
Brion Vibber
61098faf5d Merge branch 'master' of gitorious.org:statusnet/mainline into testing 2010-04-20 13:52:18 +02:00
Brion Vibber
c48caa85e1 Fix email notifications for @-replies that come via OStatus.
* Moved notification sending from Notice::saveReplies to distrib queue handler, so it'll pull from the reply set we've saved regardless of how we got it.
* Set up gettext infrastructure for command-line scripts; gets localization mail notifications etc working from background queues.
* Adjusted locale switching: common_switch_locale() works at runtime for bg scripts, forces a message catalog update
2010-04-20 13:49:29 +02:00
Brion Vibber
617a994550 Merge branch 'testing' into 0.9.x 2010-04-15 23:12:25 +02:00
Brion Vibber
53650c7a5e Merge branch 'master' into testing 2010-04-15 23:07:58 +02:00
Christopher Vollick
4f0672a94c Allow setconfig.php to Print Entire Config
Previously it only printed out the configuration in the DB.

Now it can also print out the entire current configuration.
2010-04-15 23:02:29 +02:00
Brion Vibber
f789928942 Merge branch 'testing' into 0.9.x 2010-04-14 11:15:48 +02:00