Commit graph

1555 commits

Author SHA1 Message Date
Griatch
c73e013459 Fixed bug in taghandler that stopped tags.get from working correctly with unset categories. 2014-12-22 14:34:02 +01:00
Griatch
14086e3b3d General database operations works with reworked, proxy-based typeclass system. 2014-12-22 14:14:21 +01:00
Griatch
1be49e7bea Fixed a bug in object manager. 2014-12-22 09:01:40 +01:00
Griatch
2ee9e62336 Fixed correct and separate handling of database model bases as compared to its proxy classes using different managers for each type (e.g. ObjectDB.objects.all() will return all ObjectDB instances(including proxy instances) whereas Object.objects.all() will only return Objects) 2014-12-22 08:54:53 +01:00
Griatch
554d1b9834 Fixed the *_family manager methods to correctly return typeclasses subclassed at any depth. 2014-12-21 23:08:20 +01:00
Griatch
b244d70e16 Resolved a UNIQUE id error when re-saving a typeclassed object. This was due to an idmapper hack which I *think* is not needed anymore, but might need to look at this in the future to see if the related lookup is actually using the cache or not. 2014-12-21 19:57:01 +01:00
Griatch
3b704d37dc Made sure all proxies of a given database model share the same idmapper cache 2014-12-21 16:06:10 +01:00
Griatch
9ee6b718da Some issues with unique restraint when re-saving objects. 2014-12-21 15:02:34 +01:00
Griatch
4e0b5be962 Fixed creation. Time to start cleaning the .dbobj hierarchy. 2014-12-20 19:29:38 +01:00
Griatch
e28d544fb0 The manager wrapper has trouble finding the path of the current class. 2014-12-20 19:19:48 +01:00
Griatch
043ebf7213 Fixed metaclass to handle proxy correctly. Some issues with getting path properties set correctly. 2014-12-20 19:04:49 +01:00
Griatch
32e44dceab Made the proxy typeclass system work in principle, using a wrapper of the __new__ method for the class. 2014-12-20 18:30:39 +01:00
Griatch
8314d8ba5e Now solving issues with faulty imports. Still nothing functional. 2014-12-20 17:03:34 +01:00
Griatch
08d0442f9c Strange issue with __init__, proxy implementation not working at the moment. 2014-12-19 16:56:28 +01:00
Griatch
3adeade69a Some errors in the proxy setting. 2014-12-19 16:41:20 +01:00
Griatch
236c0d17d3 First non-tested version of moving typeclasses to proxy models. 2014-12-19 16:29:41 +01:00
Griatch
8e8d85a4fe Added a new fuzzy module load mechanism 2014-12-19 13:32:08 +01:00
Griatch
417e8255af Just a small range->xrange addition. 2014-12-17 00:41:18 +01:00
Griatch
140a9f69f0 Fixed a column-border related issue with EvTable. 2014-12-16 23:33:48 +01:00
Griatch
0772341823 Optimizing EvTable for one-time presentation rather than re-use of a once-created table - this leads to optimization possibilities. 2014-12-16 22:01:10 +01:00
Griatch
2bf3a5ce52 Fixed bug that added too many empty rows when adding columns to EvTable using .add_column() 2014-12-15 22:30:02 +01:00
Jonathan Piacenti
07aba24f4d Improve ANSIString performance. 2014-12-13 20:57:26 -06:00
Griatch
ef6fffbca7 Fixed case when some parts of an evtable wouldn't color correctly. Resolves #623. 2014-12-02 09:45:15 +01:00
Griatch
94cb5f9527 Some tweaks for testing. 2014-11-24 20:03:20 +01:00
Griatch
0077408d02 Some doc cleanup. 2014-11-02 10:42:29 +01:00
Griatch
edc25824f7 Changed so the dynamic channel command must be followed by a space and then text when sending to a channel. This avoid overriding conflicts with other commands starting with common channel-names (like pub). Resolves #608. 2014-11-02 10:42:22 +01:00
Griatch
12285f9fd2 Made it so that inlinefunc also accepts single function calls (no end tag) - in this case the ingoing text string will be the empty string. This is useful for functions like {time() that makes no use of the text input - you can now use just {time() instead of having to use {time(){/time. 2014-10-26 16:23:55 +01:00
Griatch
6ef4467203 Added session object to kwarg of inlinefuncs. This means that the new call signature for inlinefuncs is funcname(text, *args, **kwargs), where **kwargs are only used for engine-related things (currently only session=session). 2014-10-26 10:46:22 +01:00
Griatch
5b42b31240 API change. Removed managers for Attributes and Tags - these are instead incoorporated into the TypedObjectManager which all Typeclassed object handlers inherit from. This concludes the refactor started in #529. This means that access to Attributes/Permissions/Aliases and Tags/nicks are done directly through e.g. ObjectDB.objects.get_by_tag() (or ev.managers.objects.get_by_tag) rather than using Tag.get_obj_with_tag and specifying the model type manually. The create_tag() method was also moved into the TypedObjectManager as part of removing the Tagmanager. As part of this change, Tag and Attribute was also removed from the ev interface. 2014-10-25 22:40:38 +02:00
Griatch
08b18524fd Some minor documentation fixes and tests. 2014-10-25 16:04:00 +02:00
Griatch
498e3f5064 Added some more inlinefunc docs. 2014-10-25 13:59:22 +02:00
Griatch
3b9d49ef35 Merge branch 'evformat' 2014-10-25 13:51:27 +02:00
Griatch
f7c1fa4a18 Defaulting INLINEFUNC_ENABLED=False. 2014-10-25 13:39:25 +02:00
Griatch
46edc6eef6 Added inlinefunc, an inline text parser for custom dynamic functions,
as per #520.
2014-10-25 13:37:25 +02:00
Griatch
573847d80a Better handles very slow mud clients not sending line breaks together with their data input; this avoids a race condition where Evennia is much faster than the client. See #606. 2014-10-24 10:26:59 +02:00
Griatch
0cd4e2188a Corrected the session count when dropping connections. 2014-10-23 10:01:43 +02:00
Griatch
671c541a1c Added more verbose error logging to cmdset loading. 2014-10-22 23:47:59 +02:00
luyijun
73e57422c7 Merge remote-tracking branch 'upstream/master' 2014-10-22 00:37:49 +08:00
luyijun
e687f935cb Fixed some issues in dealing with multibyte characters. 2014-10-22 00:37:08 +08:00
Griatch
263092b4c9 Added TCP keepalive to telnet and webclient, to make sure to (eventually) catch dead connections. Should help #498, but should test on demo before closing. 2014-10-20 23:40:01 +02:00
Griatch
b8dfce9cef Made also the prompt parsed for MXP tags and added html parsing for the prompt in the webclient. See #599. 2014-10-20 22:38:06 +02:00
Griatch
3eb347a076 Fixes a side effect of the #583 solution only showing up in certain connection timing combinations related to which protocols were supported in a given client. The portal<->server handhshake exchanged the session info an extra round depending on the internal timing of the connection. Also fixed a handshake bug in the MXP initialization. 2014-10-20 22:16:30 +02:00
Griatch
a5b4ddd1e9 Adding minor doc update. 2014-10-20 19:55:06 +02:00
Griatch
dd937cdcd3 Made new tickerhandler store_key more ubiquitous, in case of not stopping server before pulling latest. 2014-10-20 06:07:15 +02:00
Griatch
f6b9b7e1a9 Implemented a idstring for the tickerhandler, as per #554. 2014-10-19 19:40:42 +02:00
Griatch
36629a8bdb Fixed a race condition when the telnet protocol synced with the server with a delay (such as when the connecting client didn't respond to all protocol request tokens. This could lead to the sync overwriting already updated session flags, notably the puppet id (puid). Resolves #583. 2014-10-19 19:11:56 +02:00
Griatch
9f61f8e3bf Merge branch 'mxpescape' of https://github.com/titeuf87/evennia into titeuf87-mxpescape 2014-10-18 00:52:07 +02:00
Griatch
8a9e1a9b4b Fixed arg_regex inheritance across child commands. Resolves #601. 2014-10-17 18:28:53 +02:00
Simon Vermeersch
fb7ac49253 Escape <, > and & when MXP is enabled. 2014-10-14 18:27:58 +02:00
Griatch
1bcd9abc6b Changed order of Script save. This avoids a race condition where Scripts that die very quickly tries to delete themselves before having had time to save first. Resolves #597. 2014-10-13 08:41:22 +02:00