You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
yupix 7b3efaa10d
feat: channel周りを整備 #64
1 year ago
.github fix: labelerのパスが間違っている 2 years ago
.vscode 🔧 feat: vscodeで使用できるsnippetsを追加 2 years ago
compiler Merge branch 'master' into develop 1 year ago
mipac feat: channel周りを整備 #64 1 year ago
utils feat: mipactlを用いた際に自動でmanager側にactionsをインポートするように 1 year ago
.editorconfig feat: .editorconfigを追加 2 years ago
.flake8 🎨 feat: 最大文字数をpep8の最大である99まで緩和 2 years ago
.gitattributes feat: python-versioneerを追加 2 years ago
.gitignore feat: ドキュメントを作成する close #13 2 years ago
.pre-commit-config.yaml feat: pre-commitの設定を追加 2 years ago
CHANGELOG.md docs: update CHANGELOG.md 1 year ago
LICENSE chore: add LICENSE 2 years ago
MANIFEST.in feat: python-versioneerを追加 2 years ago
README.md docs: update README.md 1 year ago
pyproject.toml fix: blackが動かない 2 years ago
requirements.txt chore: aiohttpでバージョンを指定するように 2 years ago
setup.cfg feat: python-versioneerを追加 2 years ago
setup.py chore: setup.pyにutilsを追記 1 year ago
versioneer.py feat: python-versioneerを追加 2 years ago

README.md

MiPAC

Discord server invite Code style: black

概要

MiPAのCoreとなるライブラリです。

MiPACはMisskey v11, 12, 13をサポートしているApi Wrapperです。 本来気にしないといけないバージョンごとのAPIの違い等を吸収してくれます。

サポートしているMisskey

name version supported
Misskey Official v13, v12, v11
Ayuskey v5, v6

使い方

import asyncio

from mipac.client import Client

async def main():
    client = Client(url, token)
    await client.http.login()
    api = client.api
    note = await api.note.action.send('Hello World')
    print(note.author.name, note.content)

if __name__ == '__main__':
    asyncio.run(main())

Migration from v0.3.0 to v0.4.0

configの属性が変更されました

  • is_official が削除されました
重要 use_version が追加されました

Misskeyではv11,v12,v13とバージョンがあり、バージョンによっては使用できないAPIがあったりします。MiPACではuse_versionを指定することで事前に使用できるかどうかを確認し、使用できない場合はNotSupportVersionという例外を返します。このようにご自分のインスタンスのバージョンを書いていただくだけで、よくわからないエラーを事前に防ぐことが出来ます。issue等にエラーを報告場合は必ず適切に設定されているか確認してください

v13はまだリリースされて日が浅く、全てのインスタンスがアップデートしたとは考えにくいため、現在のデフォルト値は12となっています。

Client のオプションから configが削除されました

今後configを参照する際は Client.config を使用してください。 また、値を更新する場合はClient.config.from_dict()を用いることをお勧めします。 通常の変更方法との違いは以下の通りです。

Client.config.is_ayuskey = True
Client.config.use_version = 13
Client.config.from_dict(is_ayuskey=True, use_version=13)

上記のように複数の値を同時に更新する場合特にfrom_dictは有効な方法になります。

注意事項

一部サーバー(インスタンス)のバージョンによっては正常に動作しない可能性があります

MiPACの特徴として、v11,v12,v13のバージョンごとに生じる変更点をなるべく気にしなくてよいように作成していますが、現状の最新版であるv13でもv13の中で削除されたり、増えたりした物があります。結果的に追従しきれていない箇所があることがあります。そのため、そのような物を見つけた場合は、使用しているサーバーのバージョンと使用できないエンドポイント名をIssueに送信してください。

モデルを基本的に自分でインスタンス化することは推奨しません

MiPACのモデルでは多くの場合、キーワード引数に clientを受け取り、それを用いてapi プロパティを生成します。しかし、サポート途中の機能なのではそこが省かれ、リリース後にモデルのインスタンス化に必要な引数として client が追加されることがあります。また、他にもモデルの更新のために引数が変更される可能性があります。そのため、引数の変更に関することをCHANGELOG等で通知することはありません。

開発者向け情報

このプロジェクトでは blackのforkである、axblackを利用しています。主な違いはダブルクォートがデフォルトではなく、シングルクォートになっている点です

LICENSE

準備中

FOSSA Status

Documentation * Discord Server