issue-wanted es una aplicación web centrada en mejorar la comunidad Haskell de código abierto al centralizar los problemas de GitHub en muchos repositorios de Haskell en una sola ubicación. Los objetivos de issue-wanted son facilitar que los programadores de todos los niveles de habilidad encuentren los proyectos de Haskell para contribuir, aumentar la cantidad de contribuciones a los proyectos de Haskell de código abierto y alentar a más programadores a formar parte de la comunidad de Haskell.
El trabajo principal en este proyecto se realizó durante Google Summer of Code 2019. Para cualquier persona interesada en los detalles de cómo se implementó issue-wanted y por qué se hicieron ciertas opciones de diseño, consulte estas publicaciones de blog:
Deberá tener lo siguiente instalado en su sistema para construir y probar issue-wanted . Haga clic en los enlaces para aprender a instalar cada uno:
libpq-dev : ejecute el comando sudo apt install libpq-dev para instalar. Con docker instalado, abra un terminal (asegúrese de que su directorio en el issue-wanted ) y ejecute el comando make postgres . ¡Esto configurará la base de datos para usted y debería estar listo para comenzar!
Siga las instrucciones bajo How to run server y probar los puntos finales para ver si todo está configurado correctamente.
Consulte el problema #81 si todavía tiene problemas.
Para construir el proyecto, abra una terminal en la carpeta base y ejecute
stack buildo
cabal v2-buildSi se cambia los tipos, se debe actualizar los tipos generados en ELM ejecutando:
stack run generate-elmo
cabal v2-run generate-elm Para probar el servidor issue-wanted siga estos pasos:
stack buildstack exec issue-wanted El servidor comenzará a ejecutarse en http://localhost:8080/ .
Puntos finales con problemas disponibles:
| Punto final | Descripción |
|---|---|
/issues | Devuelve todos los problemas. |
/issues/:id | Devuelve un solo problema con la identificación correspondiente. |
/issues?label=<label name> | Devuelve una lista de problemas con la etiqueta correspondiente. |
Consejo: si deja de ejecutar el servidor y luego intenta reiniciarlo, es posible que deba ejecutar el comando
fuser -n tcp -k 8080para liberar el puerto.
make postgres (este comando se ejecutará la base de datos en un contenedor Docker)stack test de ejecución de terminal o cabal new-test Cuando se actualiza la instantánea stack , debe actualizar Dockerfile en consecuencia y empujar la nueva imagen de Docker a Docker Hub. Esto solo se puede hacer si tiene acceso a las credenciales de la cuenta.
Realice los siguientes comandos:
docker build . -t kowainik/haskell-ci
docker push kowainik/haskell-ci
Actualmente, Frontend se implementa utilizando Elm .
elmnpmcreate-elm-app : para instalar ejecutar npm install -g [email protected] Nota: Todas las acciones deben realizarse en la carpeta frontend :
cd frontend/npm installelm-app startnpm run-script watch-css Frontend comenzará a funcionar en http://localhost:3000/ .