7.9 KiB
Change Log
v0.4.2
🏡 Chore
- MiPACのバージョンを0.7.0以上0.8.0まで許可するように
- MiPACの最低バージョンが0.7.0に変更されています。詳細は MiPACのリリースノート をご覧ください。
❤️ Contributors
- Yupix (@yupix)
v0.4.1
🏡 Chore
- MiPACのバージョンを0.7.0までは許可するように (4bc8aec)
❤️ Contributors
- Yupix (@yupix)
v0.4.0
このバージョンから developブランチは v13以降のみをサポートします。今まで通りの全てのイベントがあるのは shared ブランチのみとなります
🚀 Enhancements
🩹 Fixes
❤️ Contributors
- Yupix (@yupix)
[0.3.5] 2023-11-18
Fixed
- 0.3.4 では直しきれなかった一部の不具合を修正しました
[0.3.4] 2023-11-01
Fixed
- ほとんどのイベントで引数エラーが発生する
[0.3.1] 2023-10-30
Added
チャンネルに接続した際、チャンネル名と UUID の dict が帰ってくるように
例としては以下のような物が返ってきます。
await self.router.connect_channel(['main', 'home'])
>>> {'main': 'ce9b318b-3f7b-4227-b843-1b694112567e', 'home': '934b460d-50c5-463e-b975-9db7bf6ba42d'}
この ID は connect_channel
を実行した際にのみ チャンネル名: UUID
という形式になっており他の場所で取得したい場合は router.channel_ids
プロパティを使用する必要があります。この場合は UUID: チャンネル名
というキーと値が逆の状態で取得されるため注意してください。
チャンネルを切断できるように
最初に紹介した チャンネル名と UUID の dict を用いて特定のチャンネルから切断できるようになりました。
channel_ids = await self.router.connect_channel(['main', 'home'])
await self.router.disconnect_channel(channel_ids['main'])
チャンネルごとに専用のクラスを使用できるように
以下のように グローバルタイムラインに対して AbstractTimeline
を継承した GlobalTimeline
を実装することで作成が可能です。 on_note
メソッドを抽象クラスに沿って作成する必要もあります。また、別にクラスを渡したくないけど、チャンネルには接続したいという場合は None
を値として渡してください。
注意点として、チャンネル専用のクラスを渡したからと言って、今回の場合でいう MyBot
クラスにある on_note
が発火されなくなるわけではありません。この機能の追加は多くのチャンネルに接続したいが、それぞれに別々の処理を実行したい場合を想定しています。そのため、MyBot
側の on_note
には今までと変わらず全てのチャンネルのノートが流れてきます。
from aiohttp import ClientWebSocketResponse
from loguru import logger
from mipac import Note
from mipa.ext.commands.bot import Bot
from mipa.ext.timelines.core import AbstractTimeline
class GlobalTimeline(AbstractTimeline):
async def on_note(self, note: Note):
logger.info(f'{note.author.username}: {note.content}')
class MyBot(Bot):
def __init__(self):
super().__init__()
async def _connect_channel(self):
await self.router.connect_channel({'global': GlobalTimeline(), 'main': None, 'home': None})
async def on_ready(self, ws: ClientWebSocketResponse):
await self._connect_channel()
logger.info('Logged in ', self.user.username)
また、この機能が追加されたからと言って、今までのコードに特別な変更は必要ありません。今まで通りの list
形式の引数も引き続きサポートしています。
await self.router.connect_channel(['global', 'main', 'home'])
[0.3.0] 2023-04-25
Changes by Package 📦
MiPAC に破壊的変更を含む更新があるため、よく MiPAC の CHANGELOG を読むことを推奨します。
Changed
- @omg-xtao can cancel setup_logging when init client.
[0.2.2] 2023-04-25
Added
- v13, v12? で 絵文字が削除された際に
on_emoji_deleted
イベントを発火するように - v13, v12? で 絵文字が更新された際に
on_emoji_updated
イベントを発火するように
Changed
- 使用する MiPAC のバージョンを
0.4.3
に- 詳しい変更点はこちらをご覧ください
Fixed
Cog.listener
を使った際に型エラーが出る
[0.2.1] 2023-03-22
Changed
- 使用する MiPAC のバージョンを
0.4.2
に
[0.2.0] 2023-03-20
Added
setup_hook
イベントが追加されましたload_extension
等はこのイベントで行うことを推奨します
ExtensionNotLoaded
例外が追加されました
Changed
- BREAKING CHANGES 以下のメソッドが非同期になります
- Cogs 内の
setup
関数 add_cog
remove_cog
load_extension
- Cogs 内の
Fixed
tasks.loop
をクラス内で使用するとself
が受け取れない
[0.1.2] 2023-03-14
Added
- ✨ added event
on_achievement_earned
. - ✨ added
disconnect
method toClient
class.
Fixed
- incorrect URL for streaming API #16, #17
Changed
- 使用する MiPAC のバージョンを
0.4.1
に
[0.1.1] 2023-01-18
Added
- ✨ feat: support all notifications #MA-11
on_user_follow
when you follow a useron_user_unfollow
when you unfollow a useron_user_followed
when someone follows youon_mention
when someone mentions youon_reply
when someone replies to your noteon_renote
when someone renote your noteon_quote
when someone quote your noteon_reaction
when someone react to your noteon_poll_vote
when someone vote to your pollon_poll_end
when a poll is endedon_follow_request
when someone send you a follow requeston_follow_request_accept
when someone accept your follow request
Changed
- 使用する MiPAC のバージョンを
0.4.0
に
Fixed
- 🐛 fix: ws reconnect
- 🐛 fix: Separate unread chat message
[0.1.0] 2022-12-24
Added
- ✨ feat: add .flake8 config.
- ✨ feat: To be able to capture notes.
- ✨ added event
on_note_deleted
. - ✨ added event
on_reacted
. - ✨ added event
on_unreacted
. - ✨ added
router
property aClient
class attributes.- 💡 Direct instantiation of the
Router
class is deprecated.
- 💡 Direct instantiation of the
- @omg-xtao ✨ feat: added
hybridTimeline
channel #9.
Changed
- ⬆️ feat(deps): update mipac update mipac version.
- ✨ chore: Changed
parse_
lineage functions to asynchronous. - 💥 feat: BREAKING CHANGE Change event name
on_message
fromon_note
. - 💥 feat: BREAKING CHANGE Required Python version is 3.11.
Fixed
- 🐛 fix: not working command Framework.
- 🐛 fix: Chat related stuff is flowing
on_message
.- 💡 Please use
on_chat
in the future!
- 💡 Please use