[misc] Improve docstrings
Mostly by removing whitespace before and after the docstring
This commit is contained in:
parent
2954f3700b
commit
4146cb89b5
|
@ -4,7 +4,7 @@
|
|||
#
|
||||
# SPDX-License-Identifier: 0BSD
|
||||
|
||||
""" Configuration file and command line argument parser.
|
||||
"""Configuration file and command line argument parser.
|
||||
|
||||
Gives a dictionary named `config` with configuration parsed either from
|
||||
`/etc/kibicara.conf` or from a file given by command line argument `-f`.
|
||||
|
@ -38,7 +38,7 @@ config = {
|
|||
'root_url': 'http://localhost:8000', # url of backend
|
||||
'cors_allow_origin': 'http://127.0.0.1:4200',
|
||||
}
|
||||
""" Default configuration.
|
||||
"""Default configuration.
|
||||
|
||||
The default configuration gets overwritten by a configuration file if one exists.
|
||||
"""
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
#
|
||||
# SPDX-License-Identifier: 0BSD
|
||||
|
||||
""" E-Mail handling. """
|
||||
"""E-Mail handling."""
|
||||
|
||||
from email.mime.multipart import MIMEMultipart
|
||||
from email.mime.text import MIMEText
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
#
|
||||
# SPDX-License-Identifier: 0BSD
|
||||
|
||||
""" Entrypoint of Kibicara. """
|
||||
"""Entrypoint of Kibicara."""
|
||||
|
||||
from asyncio import run as asyncio_run
|
||||
from logging import DEBUG, INFO, WARNING, basicConfig, getLogger
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
#
|
||||
# SPDX-License-Identifier: 0BSD
|
||||
|
||||
""" ORM Models for core. """
|
||||
"""ORM Models for core."""
|
||||
|
||||
from databases import Database
|
||||
from ormantic import Boolean, ForeignKey, Integer, Model, Text
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
#
|
||||
# SPDX-License-Identifier: 0BSD
|
||||
|
||||
""" API classes for implementing bots for platforms. """
|
||||
"""API classes for implementing bots for platforms."""
|
||||
|
||||
from asyncio import Queue, create_task
|
||||
from enum import Enum, auto
|
||||
|
@ -24,10 +24,6 @@ class Message:
|
|||
message = Message('Message sent from platform xyz', xyz_message_id=123)
|
||||
```
|
||||
|
||||
Args:
|
||||
text (str): The message text
|
||||
**kwargs (object, optional): Other platform-specific data.
|
||||
|
||||
Attributes:
|
||||
text (str): The message text
|
||||
**kwargs (object, optional): Other platform-specific data.
|
||||
|
@ -71,9 +67,6 @@ class Censor:
|
|||
# XXX send message.text to platform xyz
|
||||
```
|
||||
|
||||
Args:
|
||||
hood (Hood): A Hood Model object
|
||||
|
||||
Attributes:
|
||||
hood (Hood): A Hood Model object
|
||||
"""
|
||||
|
@ -90,12 +83,12 @@ class Censor:
|
|||
self.status = BotStatus.INSTANTIATED
|
||||
|
||||
def start(self):
|
||||
""" Start the bot. """
|
||||
"""Start the bot."""
|
||||
if self.__task is None:
|
||||
self.__task = create_task(self.__run())
|
||||
|
||||
def stop(self):
|
||||
""" Stop the bot. """
|
||||
"""Stop the bot."""
|
||||
if self.__task is not None:
|
||||
self.__task.cancel()
|
||||
|
||||
|
@ -120,7 +113,7 @@ class Censor:
|
|||
|
||||
@classmethod
|
||||
async def destroy_hood(cls, hood):
|
||||
"""Removes all its database entries.
|
||||
"""Remove all of its database entries.
|
||||
|
||||
Note: Override this in the derived bot class.
|
||||
"""
|
||||
|
@ -176,10 +169,6 @@ class Spawner:
|
|||
spawner = Spawner(XYZ, XYZPlatform)
|
||||
```
|
||||
|
||||
Args:
|
||||
ORMClass (ORM Model subclass): A Bot Model object
|
||||
BotClass (Censor subclass): A Bot Class object
|
||||
|
||||
Attributes:
|
||||
ORMClass (ORM Model subclass): A Hood Model object
|
||||
BotClass (Censor subclass): A Bot Class object
|
||||
|
|
|
@ -32,7 +32,7 @@ class EmailBot(Censor):
|
|||
await subscriber.delete()
|
||||
|
||||
async def run(self):
|
||||
""" Loop which waits for new messages and sends emails to all subscribers. """
|
||||
"""Loop which waits for new messages and sends emails to all subscribers."""
|
||||
while True:
|
||||
message = await self.receive()
|
||||
logger.debug(
|
||||
|
|
|
@ -11,7 +11,7 @@ from kibicara.model import Hood, Mapping
|
|||
|
||||
|
||||
class Email(Model):
|
||||
""" This table is used to track the names. It also stores the token secret. """
|
||||
"""This table is used to track the names. It also stores the token secret."""
|
||||
|
||||
id: Integer(primary_key=True) = None
|
||||
hood: ForeignKey(Hood)
|
||||
|
@ -23,7 +23,7 @@ class Email(Model):
|
|||
|
||||
|
||||
class EmailSubscribers(Model):
|
||||
""" This table stores all subscribers, who want to receive messages via email. """
|
||||
"""This table stores all subscribers, who want to receive messages via email."""
|
||||
|
||||
id: Integer(primary_key=True) = None
|
||||
hood: ForeignKey(Hood)
|
||||
|
|
|
@ -41,20 +41,21 @@ class BodyEmailPublic(BaseModel):
|
|||
|
||||
|
||||
class BodyMessage(BaseModel):
|
||||
""" This model shows which values are supplied by the MDA listener script. """
|
||||
"""This model shows which values are supplied by the MDA listener script."""
|
||||
|
||||
text: str
|
||||
secret: str
|
||||
|
||||
|
||||
class BodySubscriber(BaseModel):
|
||||
""" This model holds the email address of a fresh subscriber. """
|
||||
"""This model holds the email address of a fresh subscriber."""
|
||||
|
||||
email: str
|
||||
|
||||
|
||||
async def get_email(email_id: int, hood=Depends(get_hood)):
|
||||
"""Get Email row by hood.
|
||||
|
||||
You can specify an email_id to nail it down, but it works without as well.
|
||||
|
||||
:param hood: Hood the Email bot belongs to.
|
||||
|
@ -168,6 +169,7 @@ async def email_read(email=Depends(get_email)):
|
|||
)
|
||||
async def email_delete(email=Depends(get_email)):
|
||||
"""Delete an Email bot.
|
||||
|
||||
Stops and deletes the Email bot.
|
||||
|
||||
:param hood: Hood the Email bot belongs to.
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
#
|
||||
# SPDX-License-Identifier: 0BSD
|
||||
|
||||
""" Routing definitions for the REST API.
|
||||
"""Routing definitions for the REST API.
|
||||
|
||||
A platform bot shall add its API router in this `__init__.py`
|
||||
file to get included into the main application.
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
#
|
||||
# SPDX-License-Identifier: 0BSD
|
||||
|
||||
""" REST API endpoints for hood admins. """
|
||||
"""REST API endpoints for hood admins."""
|
||||
|
||||
from datetime import datetime, timedelta
|
||||
from logging import getLogger
|
||||
|
@ -230,7 +230,7 @@ async def admin_confirm_reset(reset_token: str, values: BodyPassword):
|
|||
operation_id='get_hoods_admin',
|
||||
)
|
||||
async def admin_hood_read_all(admin=Depends(get_admin)):
|
||||
""" Get a list of all hoods of a given admin. """
|
||||
"""Get a list of all hoods of a given admin."""
|
||||
return (
|
||||
await AdminHoodRelation.objects.select_related('hood').filter(admin=admin).all()
|
||||
)
|
||||
|
@ -242,7 +242,7 @@ async def admin_hood_read_all(admin=Depends(get_admin)):
|
|||
operation_id='get_admin',
|
||||
)
|
||||
async def admin_read(admin=Depends(get_admin)):
|
||||
""" Get a list of all hoods of a given admin. """
|
||||
"""Get a list of all hoods of a given admin."""
|
||||
admin = await Admin.objects.filter(email=admin.email).all()
|
||||
if len(admin) != 1:
|
||||
raise HTTPException(status_code=status.HTTP_404_NOT_FOUND)
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
#
|
||||
# SPDX-License-Identifier: 0BSD
|
||||
|
||||
""" REST API Endpoints for managing hoods. """
|
||||
"""REST API Endpoints for managing hoods."""
|
||||
|
||||
from sqlite3 import IntegrityError
|
||||
|
||||
|
@ -54,7 +54,7 @@ router = APIRouter()
|
|||
tags=['hoods'],
|
||||
)
|
||||
async def hood_read_all():
|
||||
""" Get all existing hoods. """
|
||||
"""Get all existing hoods."""
|
||||
return await Hood.objects.all()
|
||||
|
||||
|
||||
|
@ -92,7 +92,7 @@ async def hood_create(values: BodyHood, response: Response, admin=Depends(get_ad
|
|||
tags=['hoods'],
|
||||
)
|
||||
async def hood_read(hood=Depends(get_hood_unauthorized)):
|
||||
""" Get hood with id **hood_id**. """
|
||||
"""Get hood with id **hood_id**."""
|
||||
return hood
|
||||
|
||||
|
||||
|
@ -119,6 +119,6 @@ async def hood_update(values: BodyHood, hood=Depends(get_hood)):
|
|||
tags=['hoods'],
|
||||
)
|
||||
async def hood_delete(hood=Depends(get_hood)):
|
||||
""" Deletes hood with id **hood_id**. """
|
||||
"""Deletes hood with id **hood_id**."""
|
||||
await delete_hood(hood)
|
||||
return Response(status_code=status.HTTP_204_NO_CONTENT)
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
#
|
||||
# SPDX-License-Identifier: 0BSD
|
||||
|
||||
""" REST API endpoints for managing badwords.
|
||||
"""REST API endpoints for managing badwords.
|
||||
|
||||
Provides API endpoints for adding, removing and reading regular expressions that block a
|
||||
received message to be dropped by a censor. This provides a message filter customizable
|
||||
|
@ -43,7 +43,7 @@ router = APIRouter()
|
|||
operation_id='get_badwords',
|
||||
)
|
||||
async def badword_read_all(hood=Depends(get_hood)):
|
||||
""" Get all badwords of hood with id **hood_id**. """
|
||||
"""Get all badwords of hood with id **hood_id**."""
|
||||
return await BadWord.objects.filter(hood=hood).all()
|
||||
|
||||
|
||||
|
@ -77,7 +77,7 @@ async def badword_create(
|
|||
operation_id='get_badword',
|
||||
)
|
||||
async def badword_read(badword=Depends(get_badword)):
|
||||
""" Reads badword with id **badword_id** for hood with id **hood_id**. """
|
||||
"""Reads badword with id **badword_id** for hood with id **hood_id**."""
|
||||
return badword
|
||||
|
||||
|
||||
|
@ -101,6 +101,6 @@ async def badword_update(values: BodyBadWord, badword=Depends(get_badword)):
|
|||
operation_id='delete_badword',
|
||||
)
|
||||
async def badword_delete(badword=Depends(get_badword)):
|
||||
""" Deletes badword with id **badword_id** for hood with id **hood_id**. """
|
||||
"""Deletes badword with id **badword_id** for hood with id **hood_id**."""
|
||||
await badword.delete()
|
||||
return Response(status_code=status.HTTP_204_NO_CONTENT)
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
#
|
||||
# SPDX-License-Identifier: 0BSD
|
||||
|
||||
""" REST API endpoints for managing triggers.
|
||||
"""REST API endpoints for managing triggers.
|
||||
|
||||
Provides API endpoints for adding, removing and reading regular expressions that allow a
|
||||
message to be passed through by a censor. A published message must match one of these
|
||||
|
@ -44,7 +44,7 @@ router = APIRouter()
|
|||
operation_id='get_triggers',
|
||||
)
|
||||
async def trigger_read_all(hood=Depends(get_hood)):
|
||||
""" Get all triggers of hood with id **hood_id**. """
|
||||
"""Get all triggers of hood with id **hood_id**."""
|
||||
return await Trigger.objects.filter(hood=hood).all()
|
||||
|
||||
|
||||
|
@ -78,7 +78,7 @@ async def trigger_create(
|
|||
operation_id='get_trigger',
|
||||
)
|
||||
async def trigger_read(trigger=Depends(get_trigger)):
|
||||
""" Reads trigger with id **trigger_id** for hood with id **hood_id**. """
|
||||
"""Reads trigger with id **trigger_id** for hood with id **hood_id**."""
|
||||
return trigger
|
||||
|
||||
|
||||
|
@ -102,6 +102,6 @@ async def trigger_update(values: BodyTrigger, trigger=Depends(get_trigger)):
|
|||
operation_id='delete_trigger',
|
||||
)
|
||||
async def trigger_delete(trigger=Depends(get_trigger)):
|
||||
""" Deletes trigger with id **trigger_id** for hood with id **hood_id**. """
|
||||
"""Deletes trigger with id **trigger_id** for hood with id **hood_id**."""
|
||||
await trigger.delete()
|
||||
return Response(status_code=status.HTTP_204_NO_CONTENT)
|
||||
|
|
Loading…
Reference in a new issue