tsukuba-websci / MPS-TOM-Urnmodel

Iwahashi, Okabe and Suda's experiments for MPS-TOM 2023
MIT License
2 stars 0 forks source link

[Feature]: Pythonのdependencyの管理方法の統一 #22

Closed Okabe-Junya closed 1 year ago

Okabe-Junya commented 1 year ago

Feature description

requirements.txt あるいは poetry.lock を削除し,残りの一方に統合する.

requirements.txt を削除する方針で進める.(理由は後述)

Motivation

現在,このリポジトリのルートには requirements.txt と poetry.lock の2つのlockファイル(requirements.txt がlockファイルか否かは諸説あり)が存在する.つまり,ライブラリの依存関係の解決が pip, poetry の両方によって行われうる状態になっている.これにより環境の差異や,「特定のツールを使うと動かない」といったことが起こってしまうかもしれない.(現在はpoetryは使えない)

なので,requirements.txt を削除し,今後,依存解決は poetry.lock (poetry)によってのみ行うように案内したい.

Additional context

[背景] requirements.txt を削除する方針で進める理由

現在のこのリポジトリの大まかな構成は以下のようになっている.

.
├── data
│   ├── ...
│   └── twitter.csv
├── ga
│   └── ...
├── lib
│   ├── ...
│   └── run_model.py
├── qd
│   └── ...
...

これは,/lib にqdとgaの共通モジュールを切り出し,それを各々(qd, ga)のスクリプトから呼び出している.が,これを行う上でPythonのimport周りの仕様が面倒なため,poetryのtools.packageに丸投げすることで解決している.ref. #12

上記理由により,poetryへの依存は簡単に解決できないので,requirements.txtを削除する方向にする

Okabe-Junya commented 1 year ago

@krmr73

qdで使っているサードパーティ製のライブラリ(いわゆる pip installするやつ)を poetry add で追加し,プルリクを開いておいてもらえませんか??それか,その一覧を教えてください.

開いてくれれば,あとはこっちで巻き取ります.

参考: