adafruit / adafruit/circup

Implement platform_system in requirements.txt

Open
#144 3 comments 1 reaction 0 assignees View on GitHub
Dominant language
Python
Stars
172
Forks
41
Avg merge
1d 20h
Merged PRs (30d)
1

Description

Pip uses the following notation for platform-specific modules:
```
pywin32;platform_system=='Windows'
pyudev;platform_system=='Linux'
```
`circup install -r` would pick those as `pywin32;platform_system`, etc.

Would it be a good idea to:
- have circup find and read the platform_system parameter (and ignore the module)
- use a `platform_system=='circuitpython'` to specify modules that pip will ignore, but circup still install

This would allow pip and circup requirements to live in the same file to some extent for, say a project that is to be deployed on both a host and a target board. (For example circup itself can be a requirement for the host). Modules without a platform_system specified would still be installed (or ignored if known) as usual.

Contributor guide

Open the contributing guide

Research direction

Start by tracing how `circup install -r` reads `requirements.txt` and handles entries containing platform markers. Compare the requested `platform_system` behavior for Windows, Linux, and CircuitPython with the current parsing flow; done means host-only entries are ignored appropriately while CircuitPython entries remain installable.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.