Consider using bashlex
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 25/100
Rechercherichtung
The issue proposes replacing dotenv's limited reader with bashlex. Start by locating the existing .env reader and reviewing bashlex's parsing model; done means top-level variables, ${VARNAME:-fallback} substitution, and recursive source handling work for files such as .env sourcing .envrc, with the scope suitable for a major release.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Hi.
I've been using .env files for a while, namely to setup variable and load python virtual environments, also with stuff like autoenv.
This means that my .env files have bash code, like if statements, sourcing other scripts, commands, functions.
dotenvs limited reader code just uses a couple regexs that can't handle much more than export statements. And this is something some people might not be expecting.
Suggestion:
- use bashlex to parse the
.envfiles. https://github.com/idank/bashlex - gather variables defined only at the top level
- implement variable substitution (quite easy to implement) e.g.
${VARNAME:-fallback} - recursively source other sourced scripts, e.g.
.envincludes the linesource .envrc.
This would be a reimplementation of the module, so perhaps something for a major release ?
- Vorherrschende Sprache
- Python
- Sterne
- 8.9k
- Forks
- 612
- Ø Merge
- 4 T. 23 Std.
- Gemergte PRs (30 T.)
- 4
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus theskumar/python-dotenv
-
An empty value ignores ${name:-default}Evtl. vergeben @SashaMIT hat das vor 13 Tagen übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
theskumar/python-dotenv#715 ·
Maintainer antworten meist innerhalb von 1 Tag
-
set_key and unset_key don't fsync before replacing the .env fileEvtl. vergeben @Imkkey hat das vor 13 Tagen übernommen. Offenenhancement
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 72/100
theskumar/python-dotenv#713 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 28/100
theskumar/python-dotenv#693 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
python-dotenv installation without cli masks python-dotenv cliEvtl. vergeben @gyanu2507 hat das vor 52 Tagen übernommen. Offen
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 55/100
theskumar/python-dotenv#683 · 4 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
Feature Request: Automatically copy `default.env` to `.env`Evtl. vergeben @dradetsky hat das vor 162 Tagen übernommen. Offen
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 55/100
theskumar/python-dotenv#644 · 2 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in theskumar/python-dotenv
Ähnliche Issues
-
approved Good First Issue scope: docs
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 85/100
hiero-ledger/hiero-sdk-python#2730 · 3 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
wemake-services/wemake-django-template#3178 · 1 Reaktion ·
Maintainer antworten meist innerhalb von 1 Tag
-
md/asciidoc/csv: an explicit `encoding="utf-8"` keeps a leading BOM, the auto-detect path drops itOffen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
docling-project/docling#4846 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
neurostuff/NiMARE#1181 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
pytest-dev/pytest#15180 ·
Maintainer antworten meist innerhalb von 1 Tag