Skip to content

Commit d8ba452

Browse files
committed
Merge branch 'master' into v4.1.x
2 parents 471050d + 38057ad commit d8ba452

File tree

8 files changed

+13
-16
lines changed

8 files changed

+13
-16
lines changed

docs/source/changelog.rst

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,12 +46,15 @@ Releases
4646

4747
- Added optional case-sensitive matching to :class:`daf.logic.contains` and :class:`daf.logic.regex`. The default
4848
is still case-insensitive.
49+
- For word matching, the :class:`daf.logic.contains` now accepts multiple words inside seperated by a space.
4950
- Added ``constraints`` parameter to :class:`daf.message.TextMESSAGE`. See :ref:`Message constraints` for more
5051
information.
5152
- Fixed SQL log removal through the GUI.
5253
- Fixed CSV and JSON reading through remote.
5354
- Fixed exception when GUI tried to print a message.
5455
- Fixed invite ``invite_track`` attribute error in :class:`daf.guild.AutoGUILD`.
56+
- Fixed properties not being refreshed when pressing the ``Refresh`` button inside the GUI (``Live view`` tab).
57+
- Fixed update failure when using :class:`daf.guild.AutoGUILD` (cache was not invalidated).
5558
- |BREAK_CH| Disabled the :ref:`Automatic guild discovery and join` features due to the search provider shutting down its
5659
services. It will be reenabled in a future version.
5760

src/daf/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
import warnings
2323

2424

25-
VERSION = "4.1.0rc2"
25+
VERSION = "4.1.0rc3"
2626

2727

2828
if sys.version_info.minor == 12 and sys.version_info.major == 3:

src/daf/core.py

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -198,12 +198,7 @@ async def schema_load_from_file() -> None:
198198
trace("Updating accounts.", TraceLEVELS.DEBUG)
199199
for account in accounts:
200200
try:
201-
await account.update() # Refresh without __init__ call
202-
for guild in account.servers:
203-
guild.update()
204-
for message in guild.messages:
205-
message.update()
206-
201+
await account.update()
207202
account._event_ctrl.start()
208203
except Exception as exc:
209204
trace(

src/daf/guild/autoguild.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -565,6 +565,7 @@ async def _close(self):
565565
"""
566566
Closes any lower-level async objects.
567567
"""
568+
self._cache.clear()
568569
if self._event_ctrl is None: # Not initialized or already closed
569570
return
570571

@@ -591,5 +592,3 @@ async def _close(self):
591592

592593
for guild in self._cache:
593594
await guild._close()
594-
595-
self._cache.clear()

src/daf/guild/guilduser.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -602,13 +602,13 @@ async def _on_invite_delete(self, invite: discord.Invite):
602602
TraceLEVELS.DEBUG
603603
)
604604

605-
def _close(self):
605+
async def _close(self):
606606
if self._event_ctrl is None: # Already closed
607607
return
608608

609609
self._event_ctrl.remove_listener(EventID.discord_member_join, self._on_member_join)
610610
self._event_ctrl.remove_listener(EventID.discord_invite_delete, self._on_invite_delete)
611-
return super()._close()
611+
return await super()._close()
612612

613613

614614
@instance_track.track_id

src/daf/logic.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ def check(self, input: str):
128128
if not self.case_sensitive:
129129
input = input.lower()
130130

131-
return self.keyword in re.findall(r'\w+', input) # \w+ == match all words, including **bold**
131+
return set(self.keyword.split(' ')).issubset(set(re.findall(r'\w+', input))) # \w+ == match all words, including **bold**
132132

133133

134134
@doc_category("Text matching (logic)")

src/daf_gui/tod_extensions/live_objects.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,5 @@ def load_extension_oi_to_object(self, result_object_info: ObjectInfo, **kwargs):
2525

2626
def load_extension_oi_load(self, old_data: ObjectInfo, *args, **kwargs):
2727
if self.old_gui_data is not None: # Preserve the old reference, even if reloading data
28-
old_data.real_object = self.old_gui_data.real_object
29-
old_data.property_map = self.old_gui_data.property_map
28+
self.old_gui_data.real_object = old_data.real_object
29+
self.old_gui_data.property_map = old_data.property_map

testing/test_period_dynamic.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ async def dynamic_getter_async(items: list):
7575
# Test TextMESSAGE
7676

7777
assert len(guild.parent.servers) == 2
78-
await asyncio.sleep(5)
78+
await asyncio.sleep(10)
7979
text_message = daf.message.TextMESSAGE(None, TEST_SEND_PERIOD_TEXT, TEXT_MESSAGE_TEST_MESSAGE, [text_channels[0]],
8080
"send", start_in=TEST_SEND_PERIOD_TEXT, remove_after=None)
8181
await guild.add_message(text_message)
@@ -93,7 +93,7 @@ async def dynamic_getter_async(items: list):
9393
assert item.to_dict() in embeds, "TextMESSAGE embed not in message embeds"
9494

9595
await guild.remove_message(text_message)
96-
await asyncio.sleep(5)
96+
await asyncio.sleep(10)
9797
# Test DirectMESSAGE
9898
direct_message = daf.message.DirectMESSAGE(None, TEST_SEND_PERIOD_TEXT, DIRECT_MESSAGE_TEST_MESSAGE, "send",
9999
start_in=TEST_SEND_PERIOD_TEXT, remove_after=None)

0 commit comments

Comments
 (0)