issue-wanted ist eine Webanwendung, die sich auf die Verbesserung der Open-Source-Haskell-Community konzentriert, indem Github-Probleme in vielen Haskell-Repositories an einem einzigen Standort zentralisiert werden. Die Ziele von issue-wanted sind es, den Programmierern aller Fähigkeiten zu erleichtern, Haskell-Projekte zu finden, um dazu beizutragen, die Anzahl der Beiträge zu Open-Source-Haskell-Projekten zu erhöhen und mehr Programmierer zu ermutigen, Teil der Haskell-Community zu werden.
Die Hauptarbeiten an diesem Projekt wurden während des Google Summer of Code 2019 durchgeführt. Für alle, die sich für die Einzelheiten der implementierten issue-wanted interessieren und warum bestimmte Designentscheidungen getroffen wurden, lesen Sie die folgenden Blog-Beiträge:
Sie müssen Folgendes auf Ihrem System installieren lassen, um issue-wanted zu erstellen und zu testen. Klicken Sie auf die Links, um zu erfahren, wie Sie jeweils installieren:
libpq-dev : Führen Sie den Befehl sudo apt install libpq-dev um zu installieren. Öffnen Sie mit installiertem docker ein Terminal (stellen Sie sicher, dass Sie in dem issue-wanted ) und führen Sie den Befehl make postgres . Dadurch wird die Datenbank für Sie eingerichtet und Sie sollten bereit sein zu gehen!
Befolgen Sie die Anweisungen, How to run server und testen Sie die Endpunkte, um festzustellen, ob alles richtig eingerichtet ist.
Siehe Ausgabe Nr. 81, wenn Sie immer noch Probleme haben.
Öffnen Sie zum Erstellen des Projekts ein Terminal im Basisordner und laufen Sie aus
stack buildoder
cabal v2-buildWenn irgendwelche Typen geändert werden, sollten Sie die generierten ELM -Typen durch Ausführen aktualisieren:
stack run generate-elmoder
cabal v2-run generate-elm Für das Testen des issue-wanted befolgen Sie die folgenden Schritte:
stack build ausstack exec issue-wanted Der Server wird unter http://localhost:8080/ ausgeführt.
Ausgreifende verfügbare Endpunkte verfügbar:
| Endpunkt | Beschreibung |
|---|---|
/issues | Gibt alle Probleme zurück. |
/issues/:id | Gibt ein einzelnes Problem mit der entsprechenden ID zurück. |
/issues?label=<label name> | Gibt eine Liste von Problemen mit dem entsprechenden Etikett zurück. |
Tipp: Wenn Sie den Server nicht mehr ausführen und dann versuchen, ihn neu zu starten, müssen Sie möglicherweise den Befehl
fuser -n tcp -k 8080ausführen, um den Port zu befreien.
make postgres (in diesem Befehl wird die Datenbank in einem Docker -Container ausgeführt).stack test oder cabal new-test Wenn stack Snapshot aktualisiert wird, müssen Sie Dockerfile entsprechend aktualisieren und ein neues Docker -Image auf Docker Hub weitergeben. Dies kann nur dann erfolgen, wenn Sie Zugriff auf die Kontoanmeldeinformationen haben.
Führen Sie die folgenden Befehle aus:
docker build . -t kowainik/haskell-ci
docker push kowainik/haskell-ci
Derzeit wird Frontend mit Elm implementiert.
elmnpmcreate-elm-app : So npm install -g [email protected] Hinweis: Alle Aktionen sollten im frontend -Ordner ausgeführt werden:
cd frontend/npm installelm-app startnpm run-script watch-css Frontend läuft unter http://localhost:3000/ .