issue-wanted это веб-приложение, ориентированное на улучшение сообщества Haskell с открытым исходным кодом путем централизации проблем GitHub во многих репозиториях Haskell в одном месте. Цели issue-wanted облегчить программистам всех уровней квалификации, чтобы найти проекты Haskell для внесения вклад, увеличить количество вкладов в проекты Haskell с открытым исходным кодом и побудить больше программистов стать частью сообщества Haskell.
Основная работа по этому проекту была выполнена во время Google Summer of Code 2019. Для тех, кто интересуется подробностями о том, как была реализована issue-wanted и почему были сделаны определенные варианты дизайна, ознакомьтесь с этими сообщениями в блоге:
Вам нужно будет установить следующее в вашей системе, чтобы построить и проверить issue-wanted . Нажмите на ссылки, чтобы узнать, как установить каждый:
libpq-dev : запустите команду sudo apt install libpq-dev для установки. С установленным docker откройте терминал (убедитесь, что вы находитесь в каталоге, в issue-wanted , и запустите команду make postgres . Это настроит базу данных для вас, и вы должны быть готовы к работе!
Следуйте инструкциям, находящимся под How to run server , и протестируйте конечные точки, чтобы увидеть, правильно ли установлено.
Обратитесь к выпуску № 81, если у вас все еще есть проблемы.
Чтобы создать проект, откройте терминал в базовой папке и запустите
stack buildили
cabal v2-buildЕсли изменяются какие -либо типы, следует обновить сгенерированные типы ELM, работая:
stack run generate-elmили
cabal v2-run generate-elm Для тестирования сервера issue-wanted выполните следующие действия:
stack buildstack exec issue-wanted Сервер начнет работать по адресу http://localhost:8080/ .
Доступны конечные точки выпуска:
| Конечная точка | Описание |
|---|---|
/issues | Возвращает все проблемы. |
/issues/:id | Возвращает единый вопрос с соответствующим идентификатором. |
/issues?label=<label name> | Возвращает список вопросов с соответствующей меткой. |
Совет: если вы прекратите запускать сервер, а затем попытайтесь перезапустить его, вам может потребоваться запустить команду
fuser -n tcp -k 8080чтобы освободить порт.
make postgres (эта команда запустит базу данных в контейнере Docker)stack test для запуска терминала или cabal new-test При обновлении снимка stack вам необходимо соответствующим образом обновить Dockerfile и выдвинуть новое изображение Docker в Hub Docker. Это может быть сделано только в том случае, если у вас есть доступ к учетным данным.
Выполните следующие команды:
docker build . -t kowainik/haskell-ci
docker push kowainik/haskell-ci
В настоящее время Frontend реализован с использованием Elm .
elmnpmcreate-elm-app : для установки run npm install -g [email protected] Примечание: все действия должны быть предприняты в папке frontend :
cd frontend/npm installelm-app startnpm run-script watch-css Frontend начнет работать по http://localhost:3000/ .