* added 404 template * added auth domain * added embed file for frontend * added base config and dependencies * added basic new http server * added separated server command * updated go modules * removed modd file * Added shortcut to send internal server error response * Added JWT support to Auth Domain * Added JWT support to API * docs: added comments to response struct * naming * inline returns * updated dependencies * production logger * bookmarks endpoint * reverted old views api path * frontend for api v1 * proper 404 error (not working atm) * use response * removed 404 html * server error handler * login and basic auth * adjusted session duration * properly retrieve tags * properly delete bookmark * cleanup * archiver domain * debug routes * bookmark routes * expiration by parameter * move to logrus * logout * frontend cache * updated dependencies * http: migrated to gin * linted * Added version command * unit tests, docs * response test utils and tests * remove logout handler * auth * createtag * improved http test utilities * assert message equals * Remove 1.19 from test matrix * moved api to v1 folder * docs: contribute docs * updated makefile * updated usage docs * warn in server command * updaed docs with shiori version command * Updated documentation * deps: update
1.9 KiB
Contribute
Running the server locally
To run the current development server with the defaults you can run the following command:
make serve
If you want to run the refactored server, you can run the following command:
make run-server
ℹ️ Note: For more information into what the refactored server means, please check this issue: https://github.com/go-shiori/shiori/issues/640
Updating the API documentation
ℹ️ Note: This only applies for the Rest API documentation under the
internal/http
folder, not the one underinternal/webserver
.
If you make any changes to the Rest API endpoints, you need to update the swagger documentation. In order to do that, you need to have installed swag.
Then, run the following command:
make swagger
Lint the code
In order to lint the code, you need to have installed golangci-lint.
After that, run the following command:
make lint
If any errors are found please fix them before submitting your PR.
Running tests
In order to run the test suite, you need to have running a local instance of MariaDB and PostgreSQL. If you have docker, you can do this by running the following command with the compose file provided:
docker-compose up -d mariadb postgres
After that, provide the SHIORI_TEST_PG_URL
and SHIORI_TEST_MYSQL_URL
environment variables with the connection string to the databases:
SHIORI_TEST_PG_URL=postgres://shiori:shiori@127.0.0.1:5432/shiori?sslmode=disable
SHIORI_TEST_MYSQL_URL=shiori:shiori@tcp(127.0.0.1:3306)/shiori
Finally, run the tests with the following command:
make unittest