Skip to content
This repository was archived by the owner on Jan 5, 2026. It is now read-only.

Commit 03b693f

Browse files
authored
Merge branch 'master' into removePayments
2 parents 9c75ca8 + 0fb415f commit 03b693f

File tree

8 files changed

+44
-27
lines changed

8 files changed

+44
-27
lines changed

libraries/botbuilder-azure/botbuilder/azure/blob_storage.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,11 @@ async def write(self, changes: Dict[str, object]):
7373
)
7474

7575
for (name, item) in changes.items():
76-
e_tag = item.e_tag if hasattr(item, "e_tag") else item.get("e_tag", None)
76+
e_tag = None
77+
if isinstance(item, dict):
78+
e_tag = item.get("e_tag", None)
79+
elif hasattr(item, "e_tag"):
80+
e_tag = item.e_tag
7781
e_tag = None if e_tag == "*" else e_tag
7882
if e_tag == "":
7983
raise Exception("blob_storage.write(): etag missing")

libraries/botbuilder-azure/botbuilder/azure/cosmosdb_partitioned_storage.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,11 @@ async def write(self, changes: Dict[str, object]):
150150
await self.initialize()
151151

152152
for (key, change) in changes.items():
153-
e_tag = change.get("e_tag", None)
153+
e_tag = None
154+
if isinstance(change, dict):
155+
e_tag = change.get("e_tag", None)
156+
elif hasattr(change, "e_tag"):
157+
e_tag = change.e_tag
154158
doc = {
155159
"id": CosmosDbKeyEscape.sanitize_key(
156160
key, self.config.key_suffix, self.config.compatibility_mode

libraries/botbuilder-azure/botbuilder/azure/cosmosdb_storage.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -183,11 +183,11 @@ async def write(self, changes: Dict[str, object]):
183183
# iterate over the changes
184184
for (key, change) in changes.items():
185185
# store the e_tag
186-
e_tag = (
187-
change.e_tag
188-
if hasattr(change, "e_tag")
189-
else change.get("e_tag", None)
190-
)
186+
e_tag = None
187+
if isinstance(change, dict):
188+
e_tag = change.get("e_tag", None)
189+
elif hasattr(change, "e_tag"):
190+
e_tag = change.e_tag
191191
# create the new document
192192
doc = {
193193
"id": CosmosDbKeyEscape.sanitize_key(key),

libraries/botbuilder-core/botbuilder/core/bot_framework_adapter.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,9 @@ async def create_conversation(
172172
)
173173

174174
# Create conversation
175-
parameters = ConversationParameters(bot=reference.bot)
175+
parameters = ConversationParameters(
176+
bot=reference.bot, members=[reference.user], is_group=False
177+
)
176178
client = await self.create_connector_client(reference.service_url)
177179

178180
# Mix in the tenant ID if specified. This is required for MS Teams.

libraries/botbuilder-core/botbuilder/core/memory_storage.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -48,21 +48,21 @@ async def write(self, changes: Dict[str, StoreItem]):
4848
# If it exists then we want to cache its original value from memory
4949
if key in self.memory:
5050
old_state = self.memory[key]
51-
if not isinstance(old_state, StoreItem):
51+
if isinstance(old_state, dict):
5252
old_state_etag = old_state.get("e_tag", None)
53-
elif old_state.e_tag:
53+
elif hasattr(old_state, "e_tag"):
5454
old_state_etag = old_state.e_tag
5555

5656
new_state = new_value
5757

5858
# Set ETag if applicable
59-
new_value_etag = (
60-
new_value.e_tag
61-
if hasattr(new_value, "e_tag")
62-
else new_value.get("e_tag", None)
63-
)
59+
new_value_etag = None
60+
if isinstance(new_value, dict):
61+
new_value_etag = new_value.get("e_tag", None)
62+
elif hasattr(new_value, "e_tag"):
63+
new_value_etag = new_value.e_tag
6464
if new_value_etag == "":
65-
raise Exception("blob_storage.write(): etag missing")
65+
raise Exception("memory_storage.write(): etag missing")
6666
if (
6767
old_state_etag is not None
6868
and new_value_etag is not None

libraries/botbuilder-core/botbuilder/core/turn_context.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -359,9 +359,11 @@ def remove_recipient_mention(activity: Activity) -> str:
359359
def remove_mention_text(activity: Activity, identifier: str) -> str:
360360
mentions = TurnContext.get_mentions(activity)
361361
for mention in mentions:
362-
if mention.mentioned.id == identifier:
362+
if mention.additional_properties["mentioned"]["id"] == identifier:
363363
mention_name_match = re.match(
364-
r"<at(.*)>(.*?)<\/at>", mention.text, re.IGNORECASE
364+
r"<at(.*)>(.*?)<\/at>",
365+
mention.additional_properties["text"],
366+
re.IGNORECASE,
365367
)
366368
if mention_name_match:
367369
activity.text = re.sub(

libraries/botbuilder-core/tests/test_inspection_middleware.py

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
)
1515
from botbuilder.core.adapters import TestAdapter
1616
from botbuilder.core.inspection import InspectionMiddleware, InspectionState
17-
from botbuilder.schema import Activity, ActivityTypes, ChannelAccount, Mention
17+
from botbuilder.schema import Activity, ActivityTypes, ChannelAccount, Entity, Mention
1818

1919

2020
class TestConversationState(aiounittest.AsyncTestCase):
@@ -249,10 +249,12 @@ async def exec_test2(turn_context):
249249
text=attach_command,
250250
recipient=ChannelAccount(id=recipient_id),
251251
entities=[
252-
Mention(
253-
type="mention",
254-
text=f"<at>{recipient_id}</at>",
255-
mentioned=ChannelAccount(name="Bot", id=recipient_id),
252+
Entity().deserialize(
253+
Mention(
254+
type="mention",
255+
text=f"<at>{recipient_id}</at>",
256+
mentioned=ChannelAccount(name="Bot", id=recipient_id),
257+
).serialize()
256258
)
257259
],
258260
)

libraries/botbuilder-core/tests/test_turn_context.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
ActivityTypes,
1010
ChannelAccount,
1111
ConversationAccount,
12+
Entity,
1213
Mention,
1314
ResourceResponse,
1415
)
@@ -309,10 +310,12 @@ def test_should_remove_at_mention_from_activity(self):
309310
text="<at>TestOAuth619</at> test activity",
310311
recipient=ChannelAccount(id="TestOAuth619"),
311312
entities=[
312-
Mention(
313-
type="mention",
314-
text="<at>TestOAuth619</at>",
315-
mentioned=ChannelAccount(name="Bot", id="TestOAuth619"),
313+
Entity().deserialize(
314+
Mention(
315+
type="mention",
316+
text="<at>TestOAuth619</at>",
317+
mentioned=ChannelAccount(name="Bot", id="TestOAuth619"),
318+
).serialize()
316319
)
317320
],
318321
)

0 commit comments

Comments
 (0)