adorsys / adorsys/status-list-server
Make demo environment and dependencies platform-agnostic
- 主要語言
- Rust
- 星號
- 22
- 分支
- 5
- 平均合併
- 2 天 6 小時
- 30 天內合併 PR
- 47
描述
## Objective
Decouple the interactive demo notebooks in `demo/` from Linux-specific conda build locks so that developers and evaluators can run the demo workflows on macOS (Apple Silicon / Intel), Linux, and Windows.
## Context
1. `demo/environment.yml` was generated via `conda env export` on an Ubuntu x86_64 machine. It contains locked OS-specific packages (`_libgcc_mutex`, `ld_impl_linux-64`, `libgcc`, `libgomp`, `libstdcxx-ng`, `xorg-libx11`, etc.) and architecture-specific build tags (`py310h06a4308_0`).
2. Attempting to run `conda env create -f environment.yml` on macOS or Windows fails with `ResolvePackageNotFound`.
3. Evaluators without Conda currently lack a standard Python virtual environment workflow (`requirements.txt`).
## Deliverables
- [ ] **Platform-agnostic Conda environment:**
- Clean `demo/environment.yml`: remove all OS-specific packages and build hashes, retaining only top-level required packages with version bounds (`python>=3.10,<3.13`, `jupyterlab>=4.0`, `notebook>=7.0`, `ipykernel`, `requests>=2.31.0`, `pyjwt>=2.8.0`, `cryptography>=42.0.0`, `cbor2>=5.6.0`, `python-dotenv>=1.0.0`).
- [ ] **Standard Python requirements.txt:**
- Provide `demo/requirements.txt` for standard `python -m venv .venv && pip install -r requirements.txt` setups.
- [ ] **Cross-platform verification:**
- Ensure paths in `demo/workflows/helpers/utils.py` and `fixtures.py` use `pathlib.Path` and handle line endings and URLs portably.
- [ ] **Documentation update:**
- Update `demo/README.md` to document both Conda and standard Python virtual environment workflows across macOS, Linux, and Windows.
## Acceptance Criteria
- [ ] `conda env create -f environment.yml` succeeds on macOS (arm64 & x86_64), Linux, and Windows.
- [ ] `pip install -r requirements.txt` succeeds in a clean Python 3.10+ virtual environment on all operating systems.
- [ ] All 4 Jupyter notebooks in `demo/workflows/` execute cleanly against a running server.
貢獻指南
研究方向
Inspect `demo/environment.yml` first, then trim it to cross-platform top-level requirements and add a new `demo/requirements.txt` with matching package constraints for pip. Next, check `demo/workflows/helpers/utils.py` and `fixtures.py` for path/line-ending/URL handling and update with `pathlib.Path` where needed. Update `demo/README.md` with Conda and venv setup steps for macOS, Linux, and Windows, then run `conda env create -f demo/environment.yml`, `python -m venv .venv && pip install -r requirements.txt`, and execute the four notebooks in `demo/workflows/`.
由索引模型根據 Issue 內容生成。
評估
- 技術堆疊
- python
- 領域
- documentation, tooling
- Issue 類型
- 功能
- 難度
- 3/5
- 預估耗時
- 1-2 天
- 活躍度
- 活躍
- 描述清晰度
- 描述清楚
- 新手友好度
- 70/100