summaryrefslogtreecommitdiff
path: root/scripts
AgeCommit message (Collapse)Author
2010-01-12Major refactoring of queue handlers to support running multiple sites in one ↵Brion Vibber
daemon. Key changes: * Initialization code moved from common.php to StatusNet class; can now switch configurations during runtime. * As a consequence, configuration files must now be idempotent... Be careful with constant, function or class definitions. * Control structure for daemons/QueueManager/QueueHandler has been refactored; the run loop is now managed by IoMaster run via scripts/queuedaemon.php IoManager subclasses are woken to handle socket input or polling, and may cover multiple sites. * Plugins can implement notice queue handlers more easily by registering a QueueHandler class; no more need to add a daemon. The new QueueDaemon runs from scripts/queuedaemon.php: * This replaces most of the old *handler.php scripts; they've been refactored to the bare handler classes. * Spawns multiple child processes to spread load; defaults to CPU count on Linux and Mac OS X systems, or override with --threads=N * When multithreaded, child processes are automatically respawned on failure. * Threads gracefully shut down and restart when passing a soft memory limit (defaults to 90% of memory_limit), limiting damage from memory leaks. * Support for UDP-based monitoring: http://www.gitorious.org/snqmon Rough control flow diagram: QueueDaemon -> IoMaster -> IoManager QueueManager [listen or poll] -> QueueHandler XmppManager [ping & keepalive] XmppConfirmManager [poll updates] Todo: * Respawning features not currently available running single-threaded. * When running single-site, configuration changes aren't picked up. * New sites or config changes affecting queue subscriptions are not yet handled without a daemon restart. * SNMP monitoring output to integrate with general tools (nagios, ganglia) * Convert XMPP confirmation message sends to use stomp queue instead of polling * Convert xmppdaemon.php to IoManager? * Convert Twitter status, friends import polling daemons to IoManager * Clean up some error reporting and failure modes * May need to adjust queue priorities for best perf in backlog/flood cases Detailed code history available in my daemon-work branch: http://www.gitorious.org/~brion/statusnet/brion-fixes/commits/daemon-work
2010-01-11fix long options on deleteuser.phpBrion Vibber
2010-01-10Lots of tiny message changes.Siebrand Mazeland
* Mostly punctuation updates so that the same message is used consistently in all of StatusNet. * Some cases of "Title Case" removed, because that does not appear to be used consistently.
2010-01-08Add an IMAP daemon so StatusNet can process incoming user posts via ↵Craig Andrews
catch-all mailbox (in addition to the pre-existing script alias method)
2010-01-06suppress notice for undefined prompt variable when console.php is used from ↵Brion Vibber
non-interactive terminal
2010-01-05Add an RSSCloud queue handler daemonZach Copley
2010-01-04free some memory in createsim.phpEvan Prodromou
2010-01-04Merge branch 'batchlocation'Evan Prodromou
2009-12-31Script to update the location ID for usersEvan Prodromou
Since we added locations to the database, some users may have location strings in their profiles but not structured locations. This script updates the locations for single users or for all users.
2009-12-29Add progress output and optional --sleep-time parameter to triminboxes.phpBrion Vibber
2009-12-24add setconfig.php script to set configuration optionsEvan Prodromou
2009-12-15remove dead code for handling direct messages, now done with commandsEvan Prodromou
2009-12-14Clean up console output for non-interactive mode (handy for batch setup scripts)Brion Vibber
2009-12-11Make useremail.php executableBrion Vibber
2009-12-11Added UserEmail script.Christopher Vollick
Used to query user's emails. Mostly used for administration, to see if a user requesting something is who they say. Also, some people assume that the admin knows this data, and says things like: "If you could do _____ with the account connected to this email". It'd be nice if we could do that without raw SQL.
2009-12-08New _m() gettext wrapper with smart detection of plugin domains. Plugin base ↵Brion Vibber
class registers your gettext files if present at initialization. update_pot.sh replaced with update_po_templates.php which can do core, plugins, or all (default). Top-level Makefile added to build .mo files for plugins as well as core. As described on list: http://lists.status.net/pipermail/statusnet-dev/2009-December/002869.html
2009-12-08Tweak updateavatarurl.php: emit a newline whether we're on verbose or ↵Brion Vibber
non-quiet, emit help when no users specified.
2009-12-07Grand ALL permissions to the DB user when setting up a new status.net site.Zach Copley
2009-12-03Code style cleanup: dropped some unnecessary =& reference assignments where ↵Brion Vibber
they're used only out of habit for PHP 4-style object semantics
2009-12-03Do not rebuild/add .mo files by defaultSiebrand Mazeland
FIXME: should be made a command line parameter.
2009-12-02add pluginhandler to list of daemons to shut downEvan Prodromou
2009-11-30make checkschema.php executable (which makes sense, cause the README says to ↵Craig Andrews
run it :-) )
2009-11-30Merge branch 'master' into 0.9.xZach Copley
* master: (67 commits) Ticket 2038: fix bad bug tracker link Fix regression in group posting: bug introduced in commit 1319002e1519fafb0e82fbfd2d2723abdb3112e7. Need to use actual profile object rather than an id on a variable that doesn't exist when checking blocks :D Log database errors when saving notice_inbox entries Drop the username from the log id for now; seems to trigger an error loop in some circumstances request id on logs... pid + random id per web request + username + method + url Add OpenID ini info back into statusnet.ini as a stopgap until we can Some changes to the OpenID DataObjects to make them emit the exact same OpenID plugin should set 'user_openid.display' as unique key Remove relationship: user_openid.user_id -> user.id. I don't think this Have OpenID plugin DataObjects emit their own .ini info Revert "Allow plugin DB_DataObject classes to not have to use the .ini file by overriding keys(), table(), and sequenceKey() for them" Catch and report exceptions from notice_to_omb_notice() instead of letting the OMB queue handler die. Fix regression in remote subscription; added hasRole() shadow method on Remote_profile. Fix fatal error on OMB subscription for first-timers Remove annoying log msg Drop error message on setlocale() failure; this is harmless, since we actually have a working locale set up. Catch uncaught exception Fixed bug where reply-sync bit wasn't getting saved Forgot to render the nav menu when on FB Connect login tab Facebook plugin no longer takes over Login and Connect settings nav menus ... Conflicts: db/08to09_pg.sql db/statusnet_pg.sql locale/pt_BR/LC_MESSAGES/statusnet.mo plugins/Mapstraction/MapstractionPlugin.php
2009-11-21Do not use fuzzy in the compiled messages files.Siebrand Mazeland
2009-11-20start for pluginqueuehandlerBrion Vibber
2009-11-20start for pluginqueuehandlerBrion Vibber
2009-11-19Merge branch '0.9-release'Zach Copley
* 0.9-release: (874 commits) Removed call to NewDirectMessage() until IE return is fixed i.e., Don't show flag user button your own profile Fixed HXR response for flag user Using the right form class name Using common_redirect Left a form_data class of a <ul> in the user admin panel Added validation to fields in user admin panel Added a user admin panel Added mobile logos for default and identica themes Changed gif to png Changed this to action. THANKS zach! Doing content negotiation only once Add execute bit to pingqueuehandler Localisation updates for !StatusNet from !translatewiki.net Use the browser's geolocation API to set the location on the notice form Add geometa library, and include it. Add location form elements to the noticeform, and save their values on submission Use the $user object nickname, as login name doesnt have to == nickname anymore with plugins such as ldap/etc Revert "Re added NICKNAME_FMT constant to router.php." Moved most path and server settings to a new paths admin panel ... Conflicts: js/util.js locale/it_IT/LC_MESSAGES/statusnet.mo locale/mk_MK/LC_MESSAGES/statusnet.mo locale/mk_MK/LC_MESSAGES/statusnet.po locale/pt_BR/LC_MESSAGES/statusnet.mo locale/vi_VN/LC_MESSAGES/statusnet.mo plugins/InfiniteScroll/infinitescroll.js plugins/Realtime/realtimeupdate.js
2009-11-19Add execute bit to pingqueuehandlerZach Copley
2009-11-19Removing "join-existing". Do not add on update, just rebuild complete pot. ↵Siebrand Mazeland
The pot file gets really dirty, really quickly.
2009-11-18Added support for pgettext() and npgettext() to separate contexts for ↵Brion Vibber
translatable messages that are going to be ambiguous in English original.
2009-11-17A little cleanup on console.php; save readline history more aggressively; ↵Brion Vibber
avoid some notice sloppiness)
2009-11-16+x deleteuser.phpEric Helgeson
2009-11-12Minor typo correction in log message. Seems trivial, unless you are trying ↵Ciaran Gultnieks
to search the log for it.
2009-11-11CLAIM_TIMEOUT is already defined elsewhere - causes a PHP warning (minor ↵CiaranG
perf. issue) and confusion if someone tries to change one or the other
2009-11-10Bringing Sphinx search support up to code: broken out to a plugin, now ↵Brion Vibber
supports multiple sites on a single server. Upgrade notes: * Index names have changed from hardcoded 'Identica_people' and 'Identica_notices' to use the database name and actual table names. Must reindex. New events: * GetSearchEngine to override default search engine class selection from plugins New scripts: * gen_config.php generates a sphinx.conf from database configuration (with theoretical support for status_network table, but it doesn't seem to be cleanly queriable right now without knowing the db setup info for that. Needs generalized support.) * Replaced old sphinx-indexer.sh and sphinx-cron.sh with index_update.php Other fixes: * sphinx.conf.sample better matches our live config, skipping unused stopword list and using a more realistic indexer memory limit Further notes: * Probably doesn't work right with PostgreSQL yet; Sphinx can pull from PG but the extraction queries currently look like they use some MySQL-specific functions.
2009-11-09Merge branch 'master' into 0.8.xEvan Prodromou
Conflicts: scripts/updateavatarurl.php
2009-11-09broadcast profile changes from updateavatarurl.phpEvan Prodromou
2009-11-09script to update avatar URLs on serverEvan Prodromou
2009-11-09script to update avatar URLs on serverEvan Prodromou
2009-11-09Revert "Remove more contractions"Brion Vibber
This reverts commit 5ab709b73977131813884558bf56d97172a7aa26. Missed this one yesterday...
2009-11-08Merge branch '0.9.x' of git://gitorious.org/statusnet/mainline into 0.9.xSiebrand Mazeland
2009-11-08Remove more contractionsSiebrand Mazeland
* doesn't * won't * isn't * don't
2009-11-08Revert "* [Cc]an't -> [Cc]annot"Brion Vibber
This reverts commit 0ab17f382b9993ada3d12d4cdace72cca53fb545.
2009-11-08Merge branch '0.9.x' of git://gitorious.org/statusnet/mainline into 0.9.xSiebrand Mazeland
2009-11-08* [Cc]an't -> [Cc]annotSiebrand Mazeland
* [Cc]ould't -> [Cc]ould not
2009-11-07script for granting/revoking user rolesEvan Prodromou
2009-11-06Do not export codes twiceSiebrand Mazeland
2009-11-06More bug fixes.Siebrand Mazeland
2009-11-06Fix a few bugs I added in previous revisionSiebrand Mazeland
2009-11-06* add language code conversion for translatewiki.net where neededSiebrand Mazeland
* skip update of code 'en' (as English is the source language)