astropy / astropy/specutils

Should the io machinery use astropy's "config-finding" machinery?

Open
#330 4 comments 0 reactions 0 assignees View on GitHub
discussion effort-high
Dominant language
Python
Stars
204
Forks
134
Avg merge
12h 55m
Merged PRs (30d)
1

Description

The current machinery for finding custom I/O plugins involves finding a ".specutils" directory in the users home directory. This works for now, but has some problems: it's unnatural to some in windows, it's not always portable enough for some more obscure environments, it doesn't let the user control where specutils puts things, etc.

Astropy has gotten around this through a sophisticated mechanism of letting environment variables find the correct location. One could argue it's *too* sophisticated of course, but at least sharing that with astropy would make it only one learning curve.

Alternatively, we could re-think this entirely and require use of entry_points or similar (which has its own trade-offs).

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the current custom I/O plugin discovery that searches for a .specutils directory in the user's home directory, then compare it with Astropy's config-finding machinery and the entry_points alternative. Done should mean choosing and implementing a supported discovery approach that addresses Windows, portability, and user-controlled locations.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
tooling
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.