MiPA の Core となるライブラリです。
MiPAC は Misskey v11, 12, 13 をサポートしている Api Wrapper です。 本来気にしないといけないバージョンごとの API の違い等を吸収してくれます。
現在大規模な作業を行っています。詳細についてはこちらを御覧ください。 GitHub から何らかの理由でインストールする場合は以下のコマンドで
shared
ブランチを使用することをおすすめします。pip install git+https://github.com/yupix/Mi.py.git@shared
サポート状況は こちら からご覧いただけます。もし使いたいエンドポイントがサポートされていない場合は Issue を作成することで優先的にサポートを行える可能性があります。
MiPAC には PyPi と独自のリポジトリの 2 つがあります、PyPi は比較的安定してからのリリースになりますが、独自のリポジトリはコミットごとにビルドが行われ公開されるようになっています。
お好きなほうをご利用いただけると幸いです。
https://onedev.akarinext.org/yupix/mipac-sync/MiPAC/~packages
#安定したビルド(推奨)
pip install mipac
#最新の成果物
pip install --extra-index-url https://onedev.akarinext.org/yupix/mipac-sync/MiPAC/~pypi/simple/ mipac
import asyncio
from mipac.client import Client
async def main():
client = Client(url, token)
api = client.api
note = await api.note.action.send('Hello World')
print(note.author.name, note.content)
if __name__ == '__main__':
asyncio.run(main())
MiPAC の特徴として、v11,v12,v13 のバージョンごとに生じる変更点をなるべく気にしなくてよいように作成していますが、現状の最新版である v13 でも v13 の中で削除されたり、増えたりした物があります。結果的に追従しきれていない箇所があることがあります。そのため、そのような物を見つけた場合は、使用しているサーバーのバージョンと使用できないエンドポイント名を Issue に送信してください。
MiPAC のモデルでは多くの場合、キーワード引数に client
を受け取り、それを用いてapi
プロパティを生成します。しかし、サポート途中の機能なのではそこが省かれ、リリース後にモデルのインスタンス化に必要な引数として client
が追加されることがあります。また、他にもモデルの更新のために引数が変更される可能性があります。そのため、引数の変更に関することを CHANGELOG 等で通知することはありません。
MiPAC is provided with MIT LICENSE.