12 Commits

Author SHA1 Message Date
55b174927b Merge pull request 'v0.4.0' (#37) from staging into main
Reviewed-on: #37
2025-07-09 20:44:27 +03:00
5c88d08c6f Merge pull request 'v0.4.0' (#36) from dev into staging
Reviewed-on: #36
2025-07-09 18:57:18 +03:00
79c1f5b147 Added support for cache prefixes and TTL 2025-07-09 16:49:01 +02:00
a468824d30 Merge pull request 'Update dependency libbot to v4.4.0' (#35) from renovate/libbot-4.x into dev
Reviewed-on: #35
2025-07-09 16:00:24 +03:00
efc17fba23 Update dependency libbot to v4.4.0 2025-07-09 16:00:14 +03:00
85f1205410 Merge pull request 'v0.3.0' (#28) from dev into main
Reviewed-on: #28
2025-02-16 18:47:09 +02:00
4fc37f72f3 Merge pull request 'v0.2.0' (#26) from dev into main
Reviewed-on: #26
2025-02-10 13:48:55 +02:00
b9aeaf5c86 Merge pull request 'v0.1.0' (#20) from dev into main
Reviewed-on: #20
2024-12-27 23:38:13 +02:00
6087349622 Merge pull request 'v0.1.0-rc.4' (#19) from dev into main
Reviewed-on: #19
2024-12-27 21:31:46 +02:00
3010dc02bc Merge pull request 'v0.1.0-rc.3' (#15) from dev into main
Reviewed-on: #15
2024-12-16 22:08:22 +02:00
4afcbc93d5 Merge pull request 'Fixed minor issues' (#6) from dev into main
Reviewed-on: #6
2024-06-23 13:14:08 +03:00
72ccaa04a4 Merge pull request 'v0.1.0-rc.1' (#5) from dev into main
Reviewed-on: #5
2024-06-23 13:06:12 +03:00
4 changed files with 46 additions and 5 deletions

View File

@@ -1,5 +1,6 @@
import logging
from logging import Logger
from typing import Literal
from libbot.cache.classes import CacheMemcached, CacheRedis
from libbot.cache.manager import create_cache_client
@@ -16,5 +17,12 @@ class HoloBot(PycordBot):
self._set_cache_engine()
def _set_cache_engine(self) -> None:
if "cache" in self.config and self.config["cache"]["type"] is not None:
self.cache = create_cache_client(self.config, self.config["cache"]["type"])
cache_type: Literal["redis", "memcached"] | None = self.config["cache"]["type"]
if "cache" in self.config and cache_type is not None:
self.cache = create_cache_client(
self.config,
cache_type,
prefix=self.config["cache"][cache_type]["prefix"],
default_ttl_seconds=3600,
)

View File

@@ -25,10 +25,12 @@
"cache": {
"type": null,
"memcached": {
"uri": "127.0.0.1:11211"
"uri": "127.0.0.1:11211",
"prefix": null
},
"redis": {
"uri": "redis://127.0.0.1:6379/0"
"uri": "redis://127.0.0.1:6379/0",
"prefix": null
}
},
"logging": {

View File

@@ -0,0 +1,31 @@
import logging
from logging import Logger
from libbot.utils import config_set, config_delete
from mongodb_migrations.base import BaseMigration
logger: Logger = logging.getLogger(__name__)
class Migration(BaseMigration):
def upgrade(self):
try:
config_set("prefix", None, "cache", "memcached")
config_set("prefix", None, "cache", "redis")
except Exception as exc:
logger.error(
"Could not upgrade the config during migration '%s' due to: %s",
__name__,
exc,
)
def downgrade(self):
try:
config_delete("prefix", "cache", "redis")
config_delete("prefix", "cache", "memcached")
except Exception as exc:
logger.error(
"Could not downgrade the config during migration '%s' due to: %s",
__name__,
exc,
)

View File

@@ -5,7 +5,7 @@ requests>=2.32.2
aiofiles~=24.1.0
apscheduler>=3.10.0
async_pymongo==0.1.11
libbot[speed,pycord,cache]==4.3.0
libbot[speed,pycord,cache]==4.4.0
mongodb-migrations==1.3.1
pymemcache~=4.0.0
redis~=6.2.0