Evennia 1.3.0 minor release

This commit is contained in:
Griatch 2023-04-29 08:52:29 +02:00
parent bc0023072d
commit d6b5425a9e
7 changed files with 33 additions and 21 deletions

View file

@ -1,16 +1,18 @@
# Changelog
## Main branch
## Evennia 1.3.0
Apr 29, 2023
- Fix: The username validator did not display errors correctly in web
registration form.
- Feature: Better ANSI color fallbacks (InspectorCaracal).
- Feature: Add support for saving `deque` with `maxlen` to Attributes (before
`maxlen` was ignored).
- Tools: More unit tests for scripts (Storsorken)
- Fix: The username validator did not display errors correctly in web
registration form.
- Fix: Components contrib had issues with inherited typeclasses (ChrisLR)
- Fix: f-string fix in clothing contrib (aMiss-aWry)
- Fix: Have `EvenniaTestCase` properly flush idmapper cache (bradleymarques)
- Tools: More unit tests for scripts (Storsorken)
- Docs: Made separate doc pages for Exits, Characters and Rooms. Expanded on how
to change the description of an in-game object with templating.
- Docs: A multitude of doc issues and typos fixed.

View file

@ -58,10 +58,10 @@ _multiversion-check-env:
@EVDIR=$(EVDIR) EVGAMEDIR=$(EVGAMEDIR) bash -e checkenv.sh multiversion
_clean_api_index:
rm source/api/*
rm -f source/api/*
_clean_api_rsts:
rm source/api/*.rst
rm -f source/api/*.rst
# remove superfluos 'module' and 'package' text from api headers
_reformat_apidoc_headers:

View file

@ -1,13 +1,21 @@
# Changelog
## Main branch
## Evennia 1.3.0
Apr 29, 2023
- Feature: Better ANSI color fallbacks (InspectorCaracal).
- Feature: Add support for saving `deque` with `maxlen` to Attributes (before
`maxlen` was ignored).
- Fix: More unit tests for scripts (Storsorken)
- Fix: The username validator did not display errors correctly in web
registration form.
- Fix: Components contrib had issues with inherited typeclasses (ChrisLR)
- Fix: f-string fix in clothing contrib (aMiss-aWry)
- Fix: Have `EvenniaTestCase` properly flush idmapper cache (bradleymarques)
- Tools: More unit tests for scripts (Storsorken)
- Docs: Made separate doc pages for Exits, Characters and Rooms. Expanded on how
to change the description of an in-game object with templating.
- Docs: Fixed a multitude of doc issues.
- Docs: A multitude of doc issues and typos fixed.
## Evennia 1.2.1

View file

@ -1,24 +1,26 @@
# Components
_Contrib by ChrisLR 2021_
Contrib by ChrisLR, 2021
# The Components Contrib
Expand typeclasses using a components/composition approach.
## The Components Contrib
This contrib introduces Components and Composition to Evennia.
Each 'Component' class represents a feature that will be 'enabled' on a typeclass instance.
You can register these components on an entire typeclass or a single object at runtime.
It supports both persisted attributes and in-memory attributes by using Evennia's AttributeHandler.
# Pros
## Pros
- You can reuse a feature across multiple typeclasses without inheritance
- You can cleanly organize each feature into a self-contained class.
- You can check if your object supports a feature without checking its instance.
# Cons
## Cons
- It introduces additional complexity.
- A host typeclass instance is required.
# How to install
## How to install
To enable component support for a typeclass,
import and inherit the ComponentHolderMixin, similar to this
@ -126,7 +128,7 @@ from typeclasses.components import health
```
Both of the above examples will work.
# Full Example
## Full Example
```python
from evennia.contrib.base_systems import components
@ -134,7 +136,7 @@ from evennia.contrib.base_systems import components
# This is the Component class
class Health(components.Component):
name = "health"
# Stores the current and max values as Attributes on the host, defaulting to 100
current = components.DBField(default=100)
max = components.DBField(default=100)
@ -185,7 +187,7 @@ class Attack(Command):
# Attempt to retrieve the component, None is obtained if it does not exist.
if target.components.health:
valid_target = target
if not valid_target:
caller.msg("You can't attack that!")
return True

View file

@ -111,9 +111,9 @@ Additional color markup styles for Evennia (extending or replacing the default
### `components`
__Contrib by ChrisLR 2021__
_Contrib by ChrisLR, 2021_
# The Components Contrib
Expand typeclasses using a components/composition approach.
[Read the documentation](./Contrib-Components.md) - [Browse the Code](evennia.contrib.base_systems.components)

View file

@ -1 +1 @@
1.2.1
1.3.0

View file

@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
[project]
name = "evennia"
version = "1.2.1"
version = "1.3.0"
maintainers = [{ name = "Griatch", email = "griatch@gmail.com" }]
description = "A full-featured toolkit and server for text-based multiplayer games (MUDs, MU*, etc)."
requires-python = ">=3.10"