adorsys / adorsys/status-list-server

Make demo environment and dependencies platform-agnostic

未關閉
#500 2 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
documentation enhancement
主要語言
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

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。