online-judge-tools / api-client

API client to develop tools for competitive programming
MIT License
67 stars 21 forks source link

Fix CI #168

Closed kzrnm closed 9 months ago

kzrnm commented 1 year ago

Use Python 3.8

Python 3.6 and 3.7 are not supported.

https://devguide.python.org/versions/#supported-versions Same problem: https://github.com/online-judge-tools/verification-helper/pull/416

Rename Codeforces problem names

The problem names Codeforces presents changed, presumably on around 2023-03-01. It presents numbers without # now.

koba-e964 commented 1 year ago

I'd like to know what forces us to rename problem names in Codeforces...?

kzrnm commented 1 year ago

I'd like to know what forces us to rename problem names in Codeforces...?

Codeforces renamed these problem names. Do I need any more reason?

2020

image

Now

image

kzrnm commented 9 months ago

CI が再実行されたらテストが壊滅することに気付いたので諸々の対応をしました。

dev dependencies の更新

mypy と pylint の依存ライブラリが Windows でエラーしてるので更新

それに伴い諸々追加

Yukicoder

https://yukicoder.me/api/v1/languages が Id を空文字で返すようになってるので直指定する

AtCoder

GitHub Actions

This file is a workaround for the problem about "Re-run jobs" https://github.community/t5/GitHub-Actions/Ability-to-rerun-just-a-single-job-in-a-workflow/m-p/41629

と個別に再実行するためにファイル分けされていたが、現在は "re-run single job" が実装されているのでファイル分け不要になっているため更新

テストでの環境変数読み取り

secrets が未定義でも環境変数は空文字で定義されるので空文字でも実行されないようにしました。fork リポジトリで実行するときの都合です。

# 旧
@unittest.skipIf(not (ATCODER_USERNAME in os.environ and ATCODER_PASSWORD in os.environ), 'credentails for AtCoder is required')

# 新
@unittest.skipIf(not (os.getenv(ATCODER_USERNAME) and os.getenv(ATCODER_PASSWORD)), 'credentails for AtCoder is required')
kzrnm commented 9 months ago

.github/workflows/test.yml がどうやらスケジュール実行が止まってることによって Pull Request での実行も止まってしまってるので、スケジュール実行を分離しました。 test.yml を再度有効化してもらう必要はありそうですが、分離したことでこれ以降にスケジュール実行が停止しても Pull Request への影響はなくなるのではないかと思います。

koba-e964 commented 9 months ago

ありがとうございます