Commit graph

47 commits

Author SHA1 Message Date
Griatch
f9eece9749 Started implementing the Bot functionality. 2014-03-08 11:41:23 +01:00
Griatch
acdea41a67 Merge from Kelketek's clone. Added fixes to migrations of Tags. Issues with ContentTypes meaning that this revision is not possible to start. 2013-10-17 23:44:52 +02:00
Griatch
06e858b3f6 Moved permissions into a the tag system as a separate handler. Permissions still don't work quite right yet. 2013-08-24 23:57:44 +02:00
Kelketek
d861cc5e8b Fixed a typo in that last one. And this time, it succeeded! 2013-07-20 16:54:11 -05:00
Kelketek
8ba5be0b2d Adjusted migrations to more properly handled dependent tables. 2013-07-20 16:32:24 -05:00
Kelketek
89aebfc13f Made migrations compatible with new user model when creating from scratch. 2013-07-20 15:45:16 -05:00
Kelketek
3c496af6ad Migrations fixes revealed as necessary by the admin pages, which were also fixed. 2013-07-20 13:17:41 -05:00
Kelketek
da097a88d9 Fixed an issue with case sensitivity in table names for the migrations. Fixed issue with transactions when converting nicks and aliases. 2013-07-19 17:13:57 -05:00
Griatch
2c17b7b675 Made the migrations for the new Tags and LiteAttributes. 2013-07-12 12:04:57 +02:00
Griatch
a4042920e0 Fixed the migrations to get to a baseline version you can log into. 2013-07-11 22:24:55 +02:00
Griatch
c676c9965f Merged. Still need to update some migrations. 2013-07-11 19:11:27 +02:00
Griatch
c94472492a Implemented PlayerDB as replacement for User, as per Django1.5. All migrations work, but there are still lots of changes to be done in the code to remove references to the User model. 2013-07-10 19:13:41 +02:00
Griatch
2a7c45d6e8 Run Migrations. Migrated to new Attribute schema, converting old attributes. Not fully tested yet. 2013-07-09 00:09:19 +02:00
Griatch
f00053710c Added Character-level quelling possibilities to superuser. This makes the superuser quelling completely in line with normal quelling for other permission levels. It also removes the need for the special _superuser_character bypass used before (the migration no longer creates it an initial_setup won't either). 2013-05-14 14:53:08 +02:00
Griatch
55565f23c0 Updated a data migration to properly set Attribute _last_puppet. This allows players in MULTISESSION_MODE=0,1 to auto-puppet from the start. 2013-04-14 23:19:27 +02:00
Griatch
8d48aa5a06 Added the last migrations needed to fully convert the Attribute system. Cleaned up the @ooclook command a bit as well as tidied up the who command a bit. 2013-04-14 13:35:25 +02:00
Griatch
82c2e19ed5 Fixed remaining issues with migrating the attribute changes. 2013-04-14 00:35:23 +02:00
Griatch
230d73cfa0 Migrations work under sqlite3, both from latest dev, from new install and from trunk. There might be some consistency issues though (it seems the character list is not properly migrated), so more testing is required. 2013-04-13 23:50:33 +02:00
Griatch
512d7748d1 Finished with a working implementation of the new Attribute mechanism using PickledObjectField. First step of migration is finished, but not converting any old attribute data yet. 2013-04-13 18:13:15 +02:00
Griatch
4d5cd5352a Added a missing migration of cmdsets. 2013-04-12 22:14:01 +02:00
Griatch
1aff5f1fd1 Renamed cmdset_ooc -> cmdset_player and settings.CMDSET_OOC -> settings.CMDSET_PLAYER. Also split most of the player-specific commands to a new module player. 2013-04-11 01:02:05 +02:00
Griatch
4669b8ed89 Fixed the migrations from a pre-populated database to the many-char-per-player branch. 2013-04-10 21:45:56 +02:00
Griatch
be2d0086a3 Updated the game/gamesrc/ examples with the new hook names. 2013-04-09 22:22:17 +02:00
Griatch
8e1bcdde02 Removing old m2m field for holding puppetable characters. 2013-04-09 19:22:11 +02:00
Griatch
e86c127903 Further fix to migration. 2013-04-03 12:44:34 +02:00
Griatch
cdd9416cb3 Cleanups of migrations. 2013-04-03 12:10:58 +02:00
Griatch
1223b46edd Added data migration for character-control list attribute. 2013-04-03 11:56:51 +02:00
Griatch
70b8f074f1 Merge. 2013-02-03 17:28:26 +01:00
Griatch
f3addf9cf9 Shuffled migration id numbers around to account for changes in trunk. 2013-02-03 17:21:12 +01:00
Kelketek
adb3965888 Follow-up on that last one-- missed one of the Abstract models. 2013-02-03 09:54:36 -06:00
Kelketek
2e08517ec5 Changed lock storage from character-limit field to unlimited TextField. 2013-02-03 08:54:57 -06:00
Griatch
7ba0683d9d Added migrations for the new sessid and multiple-character-related fields along with some bugfixes. 2013-02-02 23:25:46 +01:00
Griatch
21137cc830 Run Migrations! Added a is_connected field to Players to be able to more conveniently access online status from out-of-process (resolves issue 251). Also cleaned up and added features to the default website. 2012-09-17 19:19:20 +02:00
Griatch
3c96dc9cc9 Fixed a too-inclusive .hgignore file as well as some other fixes. 2012-09-07 19:31:51 +02:00
Griatch
81980605b4 OBS! Run Migrations! Converts old API cmdsets and typeclass paths to new system for already existing objects. 2012-03-25 20:30:05 +02:00
Griatch
440d403327 Added some more error catching to the attr migrations. 2012-02-22 11:40:52 +01:00
Griatch
e170505878 Adding full convertion to the migrations, should hopefully cover all cases now. 2012-02-15 18:28:44 +01:00
Griatch
3b88767865 Made fixes to the migrations. 2012-02-15 14:27:26 +01:00
Griatch
d594357335 Another typo. 2012-02-14 23:48:00 +01:00
Griatch
a32aebaa0e OBS- need to run migrations! Refactored attributes to use a slightly different internal storage format for faster access. Also set up caching of all attribute data, so subsequent reads of an attribute will not hit the database anymore, and writes will re-cache. 2012-02-14 23:40:16 +01:00
Griatch
42d502bfc6 OBS - Database schema has changed! If you use south, you need to run manage.py migrate!
This adds db indexing on a set of important database fields, all in the interest of optimization.
2012-02-06 13:18:25 +01:00
Griatch
399919a8a9 Database schema has changed. Run migrations if you use South. Started work on tidying up admin interface. 2011-09-14 22:34:10 +02:00
Griatch
b8a13a2389 Migrate. Made Exits work differently, by use of commands directly instead of an exithandler assigning commands on-the-fly. This solution is a lot cleaner and also solves an issue where @reload would kill typeclasses in situations where an exit was painting to an object whose typeclass was reloaded (same issue occured if the exit typeclass itself was reloaded). As part of these fixes I cleaned up the merging of cmdsets to now merge in strict priority order, as one would expect them to do. Many small bug-fixes and cleanups all over. Resolves issue 164. Resolves issue 163. 2011-05-01 18:04:15 +00:00
Griatch
28fe2ad3f4 Run Migrate. Implemented a full separation between Player and Character - Players (OOC entities) can now also hold cmdsets and execute commands. This means that "disconnecting" from a Character becomes possible, putting the Player in an "OOC" state outside the game. This overall makes the game much more stable since there used to be issues if the character was destroyed. Having an OOC set also avoids the previous problem of @puppeting into an object that didn't have any cmdset of its own - you couldn't get back out! A new default OOC-Cmdset handles commands available to a player while OOC. Commands in this set are applied with a low priority, allowing "IC" mode to give precedence if desired.
This change meant several changes to the lock and permission functionality, since it becomes important if permissions are assigned on the Player or on their Character (lock functions pperm() and pid() etc check on Player rather than Character). This has the boon of allowing Admins to switch and play/test the game as a "Low access" character as they like.

Plenty of bug fixes and adjustments. Migrations should make sure to move over all data properly.
2011-04-23 11:54:08 +00:00
Griatch
6eff51de20 OBS: Migration needed(objects, scripts, players). This resolves issue 136 by allowing database objects to be nested in lists and dictionaries as
attributes on objects. Behind the scenes, only the DBREF is stored since storing dbobjects cannot be pickled. One used to be able to store single objects this way, but objects hidden in nested iterable structures were not found. Note that ONLY lists and dictionaries are supported to store on attributes - custom iterables will be stored and retrieved as a generic list instead - this is a tradeoff to be able to store database objects.

To migrate, give the following commands from game/:
 migrate.py migrate objects
 migrate.py migrate scripts
 migrate.py migrate players
2011-04-05 23:28:40 +00:00
Greg Taylor
d2d86871e9 Rig up south to be happy with two of our models that FK to one another circularly. 2011-03-24 21:07:09 +00:00
Griatch
9b9f90d91c gtaylor convinced me to add migrations to the Evennia repo. This means that game/migrate.py is no more. The migrations will help you to adjust your database when Evennia releases a new database change, no need to drop the database or manually adjust tables. To make use of our schema migrations, you need to have Django-South installed.
To convert to django-south operations, easiest is if you are willing to drop your old database (e.g. delete evennia.db if you use default sqlite3). Then do: "game/manage.py syncdb" followed by "game/manage.py migrate". That should do it. If you ever deletes your database, just rerun those two commands.

If you want to convert an existing database, do
game/manage.py convert_to_south comms
game/manage.py convert_to_south config
game/manage.py convert_to_south help
game/manage.py convert_to_south objects
game/manage.py convert_to_south players
game/manage.py convert_to_south scripts


In the future, you will then be able to do ./manage.py migrate when we tell you the schema has changed.
2011-03-21 00:53:58 +00:00