backend merge requestshttps://gitlab.gwdg.de/subugoe/ahiqar/backend/-/merge_requests2020-03-11T09:34:56Zhttps://gitlab.gwdg.de/subugoe/ahiqar/backend/-/merge_requests/1Feature/zip texts2020-03-11T09:34:56ZMathias GoebelFeature/zip textsadds plain text transformation and download
(refined deployment process)adds plain text transformation and download
(refined deployment process)Mathias GoebelMathias Goebelhttps://gitlab.gwdg.de/subugoe/ahiqar/backend/-/merge_requests/3Feature/tidy up2020-03-30T21:59:59ZMathias GoebelFeature/tidy up* tidy up dir structure
* fix tapi module* tidy up dir structure
* fix tapi moduleMathias GoebelMathias Goebelhttps://gitlab.gwdg.de/subugoe/ahiqar/backend/-/merge_requests/4Feature/images2020-03-30T23:19:21ZMathias GoebelFeature/imagesadd image endpoint to the REST interface
v0.2.0add image endpoint to the REST interface
v0.2.0Mathias GoebelMathias Goebelhttps://gitlab.gwdg.de/subugoe/ahiqar/backend/-/merge_requests/5update local build setup and instructions2020-05-13T13:40:08ZMathias Goebelupdate local build setup and instructionsThis MR provides a *working* description on how to setup a local development environment. There are other parts of the documentation added:
* comments in `.gitignore`
* to streamline the local setup and what the GitLab CI is doing, w...This MR provides a *working* description on how to setup a local development environment. There are other parts of the documentation added:
* comments in `.gitignore`
* to streamline the local setup and what the GitLab CI is doing, we adjust the path to the extracted frontend build
* APP_NAME is added to `.env` (docker-compose) to prevent a warning. the APP_NAME value is set by script and sensitive to the deployment target.
closes #3Michelle WeidlingMichelle Weidlinghttps://gitlab.gwdg.de/subugoe/ahiqar/backend/-/merge_requests/6Feature/improve api docs2020-06-04T10:25:38ZMichelle WeidlingFeature/improve api docs# Summary
This MR provides an enhancement of the existing function documentation (including some slight refactoring and indenting) of the Ahiqar backend as far as I understood it. Please correct or point out every misunderstanding on my...# Summary
This MR provides an enhancement of the existing function documentation (including some slight refactoring and indenting) of the Ahiqar backend as far as I understood it. Please correct or point out every misunderstanding on my side.
Changes have moved from `repo.xml` to a CHANGELOG to 1. improve the visibility of changes and 2. to make keeping track of changes easier (in this case Markdown `>` HTML).
`repo.xml` now lists Michelle Weidling as additional author.
# Use Cases
With a proper function documentation we can easily provide HTML rendered docs of our API. It also might help anyone interested to understand the API better.
# Changelog
* [x] I added a statement to the CHANGELOG.
# Related Tickets
subugoe/emo/Qviewer#8
/cc @schneider210 @mgoebelAhikar Version 0.6.0Mathias GoebelMathias Goebelhttps://gitlab.gwdg.de/subugoe/ahiqar/backend/-/merge_requests/7Feature/#6 contributing2020-05-28T05:23:51ZMichelle WeidlingFeature/#6 contributing# Summary
This MR introduces a CONTRIBUTING.md to the repo as well as templates for issue and MR creation.
The automatic relabelling of issues has been prepared: Whenever an issue is referenced as to be closed in a MR, the label sw...# Summary
This MR introduces a CONTRIBUTING.md to the repo as well as templates for issue and MR creation.
The automatic relabelling of issues has been prepared: Whenever an issue is referenced as to be closed in a MR, the label switches from `Doing` to `In Review` to ease the issue board management. Due to unknown reasons the GitLab GUI displays the newly labelled issues in the board list "Open" instead of "In Review" (although the relabelling works fine technically), so this step has been commented out for now. Further investigation is needed.
# Closes
#6Ahikar Version 0.5.0Michelle WeidlingMichelle Weidlinghttps://gitlab.gwdg.de/subugoe/ahiqar/backend/-/merge_requests/8Feature/#7 sample document2020-05-26T09:29:17ZMichelle WeidlingFeature/#7 sample documentAdds a sample document to the backend for development purposes.Adds a sample document to the backend for development purposes.Ahikar Version 0.5.0Michelle WeidlingMichelle Weidlinghttps://gitlab.gwdg.de/subugoe/ahiqar/backend/-/merge_requests/9Feature/#7 sample document2020-05-26T13:07:26ZMichelle WeidlingFeature/#7 sample documentAdds some fixes for the sample documents.Adds some fixes for the sample documents.Michelle WeidlingMichelle Weidlinghttps://gitlab.gwdg.de/subugoe/ahiqar/backend/-/merge_requests/10Feature/#11 metadata2020-06-04T15:05:02ZMichelle WeidlingFeature/#11 metadata# Summary
With this MR metadata is no longer hardcoded but retrieved from a TEI resource at hand (1).
Furthermore, the API endpoint `/api/info/` has been altered in a way that it doesn't return littered JSON anymore (2).
Also ge...# Summary
With this MR metadata is no longer hardcoded but retrieved from a TEI resource at hand (1).
Furthermore, the API endpoint `/api/info/` has been altered in a way that it doesn't return littered JSON anymore (2).
Also general code improvements (correcting typos, minor refactoring) have been made.
For convenience purposes the changes from subugoe/ahiqar/backend!6 have already been merged into this branch.
# :exclamation: Breaking Changes
`language` isn't a simple key/value pair anymore but contains an array of values due to the fact that some manuscripts comprise more than one language. This change MAY require updates in the frontend.
Furthermore, `language` has been renamed to `lang`.
# Use Cases
ad (1): This provides the possibility to display the real title of a manuscript as well as the languages used in the resource.
ad (2): Applications using the data from this endpoint no longer receive littered data.
# Documentation
Shall we add your feature to the documentation?
* [x] N/A
## Are there parts of the documentation we have to adjust
* [x] N/A
# Tests
Are we able to test this new feature?
* [x] Yes, you can test by following these steps: Fire up the database, insert some data and try the API endpoint `/api/info` and `/textapi/ahikar/{$collection}/{$document}-{$page}/latest/item.json"` resp.
# Changelog
* [x] I added a statement to the CHANGELOG.
# Related Tickets
## Closes
#11
/cc [Mathias Göbel](https://gitlab.gwdg.de/mgoebel), [Frank Schneider](https://gitlab.gwdg.de/schneider210), [Michelle Weidling](https://gitlab.gwdg.de/mrodzis)Ahikar Version 0.6.0Mathias Goebelschneider210Mathias Goebelhttps://gitlab.gwdg.de/subugoe/ahiqar/backend/-/merge_requests/11Feature/#10 serialization ideas for sample document2020-06-05T12:47:59ZMichelle WeidlingFeature/#10 serialization ideas for sample document# Summary
Possible ideas for rendering the sample text in a viewer.
[Leiden Conventions](https://en.wikipedia.org/wiki/Leiden_Conventions) have been considered as far as possible to make these suggestions feasible for all kinds of ...# Summary
Possible ideas for rendering the sample text in a viewer.
[Leiden Conventions](https://en.wikipedia.org/wiki/Leiden_Conventions) have been considered as far as possible to make these suggestions feasible for all kinds of editions.
# Use Cases
If thought through and implemented thoroughly these suggestions might help to build a generic viewer. Project specific changes might occur, however, since we didn't talk over these suggestions with the scholars (which has been a mutual decision).
# Changelog
* [x] I added a statement to the CHANGELOG.
# Related Tickets
## Closes
#10
/cc [Mathias Göbel](https://gitlab.gwdg.de/mgoebel), [Frank Schneider](https://gitlab.gwdg.de/schneider210), [Michelle Weidling](https://gitlab.gwdg.de/mrodzis)Ahikar Version 0.6.0schneider210schneider210https://gitlab.gwdg.de/subugoe/ahiqar/backend/-/merge_requests/12feat: update ticket templates (add 'definition of done' and user stories)2020-06-09T08:27:36ZMichelle Weidlingfeat: update ticket templates (add 'definition of done' and user stories)# Summary
This MR provides an update to all ticket and merge request templates.
It adds paragraphs for user stories and the 'definition of done'.
# Use Cases
Useful for everyone writing tickets.
# Tests
Are we able to t...# Summary
This MR provides an update to all ticket and merge request templates.
It adds paragraphs for user stories and the 'definition of done'.
# Use Cases
Useful for everyone writing tickets.
# Tests
Are we able to test this new feature?
* [x] Yes, you can test by following these steps:
1. open a new issue
2. select a template beneath the 'Description' label.
Same holds for merge requests.
# Changelog
* [x] A CHANGELOG is only available after the other MR have been merged..
# Related Tickets
## Closes
#15
/cc [Mathias Göbel](https://gitlab.gwdg.de/mgoebel), [Frank Schneider](https://gitlab.gwdg.de/schneider210), [Michelle Weidling](https://gitlab.gwdg.de/mrodzis)Ahikar Version 0.6.0Kristine VoigtKristine Voigthttps://gitlab.gwdg.de/subugoe/ahiqar/backend/-/merge_requests/13Feature/#5 architecture diagram2020-06-12T08:56:35ZMichelle WeidlingFeature/#5 architecture diagram# Summary
This MR provides an architecture diagram in the README (hopefully) explaining how the back end works.
Furthermore, the README now comes with an integrated TOC created with `doctoc`.
# Use Cases
This should be useful f...# Summary
This MR provides an architecture diagram in the README (hopefully) explaining how the back end works.
Furthermore, the README now comes with an integrated TOC created with `doctoc`.
# Use Cases
This should be useful for everyone working with oder being interested in the back end.
# Documentation
It is basically documentation.
# Test
Have a look at <https://gitlab.gwdg.de/subugoe/ahiqar/backend/-/blob/feature/%235-architecture-diagram/README.md> and test if the diagram is understandable. :)
# Changelog
* [x] I added a statement to the CHANGELOG.
# Related Tickets
## Closes
#5
/cc [Mathias Göbel](https://gitlab.gwdg.de/mgoebel), [Frank Schneider](https://gitlab.gwdg.de/schneider210), [Michelle Weidling](https://gitlab.gwdg.de/mrodzis)Ahikar Version 0.6.0Michelle WeidlingMichelle Weidlinghttps://gitlab.gwdg.de/subugoe/ahiqar/backend/-/merge_requests/14fix(tapi.xqm): remove parameter type2020-06-04T13:50:31ZMichelle Weidlingfix(tapi.xqm): remove parameter typeThe parameter type of $token in the function tapi:deploy($token) caused the API to break due to
unknown reasons. Thus the typing has been removed.The parameter type of $token in the function tapi:deploy($token) caused the API to break due to
unknown reasons. Thus the typing has been removed.Ahikar Version 0.6.0Michelle WeidlingMichelle Weidlinghttps://gitlab.gwdg.de/subugoe/ahiqar/backend/-/merge_requests/15Bugfix/#18 api outage2020-06-05T12:17:11ZMichelle WeidlingBugfix/#18 api outage# Related Tickets
## Closes
Closes #18
# Summary
The main problem has been solved in the Docker containers. It stemmed from a faulty parameter type in the function `tapi:redeploy`. This type has been removed.
To make the A...# Related Tickets
## Closes
Closes #18
# Summary
The main problem has been solved in the Docker containers. It stemmed from a faulty parameter type in the function `tapi:redeploy`. This type has been removed.
To make the API more robust, this function has been outsourced to a separate module, `deploy.xqm`.
In order to be noticed if the API broke at some point after the deployment, a new stage has been introduced to the CI to check the HTTP status of the API.
# Changelog
* [x] I added a statement to the CHANGELOG.
/cc [Mathias Göbel](https://gitlab.gwdg.de/mgoebel), [Frank Schneider](https://gitlab.gwdg.de/schneider210), [Michelle Weidling](https://gitlab.gwdg.de/mrodzis)Ahikar Version 0.6.0Mathias GoebelMathias Goebelhttps://gitlab.gwdg.de/subugoe/ahiqar/backend/-/merge_requests/16feat: exclude notes from creation of plain text2020-06-10T08:21:52ZMichelle Weidlingfeat: exclude notes from creation of plain text# Summary
Exclude notes from creation of plain text.
# Use Cases
Collate-X
## Are there parts of the documentation we have to adjust
* [x] No.
# Changelog
* [x] I added a statement to the CHANGELOG.
# Related Tickets
## Closes
...# Summary
Exclude notes from creation of plain text.
# Use Cases
Collate-X
## Are there parts of the documentation we have to adjust
* [x] No.
# Changelog
* [x] I added a statement to the CHANGELOG.
# Related Tickets
## Closes
#8
/cc [Mathias Göbel](https://gitlab.gwdg.de/mgoebel), [Frank Schneider](https://gitlab.gwdg.de/schneider210), [Michelle Weidling](https://gitlab.gwdg.de/mrodzis)Ahikar Version 0.6.0Mathias GoebelMathias Goebelhttps://gitlab.gwdg.de/subugoe/ahiqar/backend/-/merge_requests/17Feature/#19 mirror and license2020-06-10T04:57:35ZMichelle WeidlingFeature/#19 mirror and license# Summary
This MR provides a license file. The license has been proposed by Mustafa and Tine, please see if you agree.
Since it is necessary for the master branch, too, I'll add a separate MR for this.
# Use Cases
Anyone who...# Summary
This MR provides a license file. The license has been proposed by Mustafa and Tine, please see if you agree.
Since it is necessary for the master branch, too, I'll add a separate MR for this.
# Use Cases
Anyone who wants to reuse the software needs terms for this.
# Documentation
## Are there parts of the documentation we have to adjust
* [x] Yes, and I already did!
# Changelog
* [x] I added a statement to the CHANGELOG.
# Related Tickets
## Related
#19
/cc [Mathias Göbel](https://gitlab.gwdg.de/mgoebel), [Frank Schneider](https://gitlab.gwdg.de/schneider210), [Michelle Weidling](https://gitlab.gwdg.de/mrodzis)Ahikar Version 0.6.0Mathias GoebelMathias Goebelhttps://gitlab.gwdg.de/subugoe/ahiqar/backend/-/merge_requests/18Feature/#21 add missing docs2020-06-09T06:43:34ZMichelle WeidlingFeature/#21 add missing docs# Summary
This MR provides a section on the interplay of front- and backend. It also adds some missing general sections to the README.
# Use Cases
Useful for everyone using the repo.
# Changelog
* [x] I added a statement to the CHAN...# Summary
This MR provides a section on the interplay of front- and backend. It also adds some missing general sections to the README.
# Use Cases
Useful for everyone using the repo.
# Changelog
* [x] I added a statement to the CHANGELOG.
# Related Tickets
## Closes
#21
/cc [Mathias Göbel](https://gitlab.gwdg.de/mgoebel), [Frank Schneider](https://gitlab.gwdg.de/schneider210), [Michelle Weidling](https://gitlab.gwdg.de/mrodzis)Ahikar Version 0.6.0Michelle WeidlingMichelle Weidlinghttps://gitlab.gwdg.de/subugoe/ahiqar/backend/-/merge_requests/19Bugfix/#23 api2020-06-12T11:20:33ZMichelle WeidlingBugfix/#23 api# Bug fix
## Related Tickets
#23
## Summary
The problem stemmed from the way cURL works:
> [(23) Failed writing body] happens when a piped program (e.g. grep) closes the read pipe before the previous program is finished w...# Bug fix
## Related Tickets
#23
## Summary
The problem stemmed from the way cURL works:
> [(23) Failed writing body] happens when a piped program (e.g. grep) closes the read pipe before the previous program is finished writing the whole page.
(https://stackoverflow.com/questions/16703647/why-does-curl-return-error-23-failed-writing-body)
By adding the `-N` option (no buffering) this shouldn't happen again. But it did, for reasons unclear to me. Thus I separated the cURL result from further information extraction.
This MR *also* includes:
- minor linting
- enabling `curl --head` by adding HTTP HEAD to the RESTXQ annotations
## Changelog
* [x] I added a statement to the CHANGELOG.
/cc [Mathias Göbel](https://gitlab.gwdg.de/mgoebel), [Frank Schneider](https://gitlab.gwdg.de/schneider210), [Michelle Weidling](https://gitlab.gwdg.de/mrodzis)Ahikar Version 0.6.0Mathias GoebelMathias Goebelhttps://gitlab.gwdg.de/subugoe/ahiqar/backend/-/merge_requests/20Feature/#24-collatex-adjustments2020-06-16T14:04:00ZMichelle WeidlingFeature/#24-collatex-adjustments# Feature
## Summary
This MR provides a API endpoint for getting a zip-file containing the plain texts for Sado 9, Harvard 80 and Strasbourg S4122.
Plain texts are created for transliterations as well.
## Does the result of t...# Feature
## Summary
This MR provides a API endpoint for getting a zip-file containing the plain texts for Sado 9, Harvard 80 and Strasbourg S4122.
Plain texts are created for transliterations as well.
## Does the result of the MR comply to our "definition of done"?
* [x] ~~Unit~~ Status tests passed
## Use Cases
CollateX
### Function Documentation
* [x] Of course I provided all my functions with an appropriate documentation.
### Are there parts of the documentation we have to adjust
* [x] No.
## Tests
* [x] Well. There are at least status tests that check if the API is alive.
## Changelog
* [x] I added a statement to the CHANGELOG.
## Related Tickets
### Related
#24
/cc [Mathias Göbel](https://gitlab.gwdg.de/mgoebel), [Frank Schneider](https://gitlab.gwdg.de/schneider210), [Michelle Weidling](https://gitlab.gwdg.de/mrodzis)Ahikar Version 0.6.0Mathias GoebelMathias Goebelhttps://gitlab.gwdg.de/subugoe/ahiqar/backend/-/merge_requests/21Feature/#25 open api2020-06-16T10:44:17ZMichelle WeidlingFeature/#25 open api# Feature
## Summary
This MR provides an OpenAPI documentation for the API at `ahikar/openapi/index.html`.
## :exclamation: Important
I'm not sure where the Apache config is. `ahikar/openapi/index.html` should be exposed to h...# Feature
## Summary
This MR provides an OpenAPI documentation for the API at `ahikar/openapi/index.html`.
## :exclamation: Important
I'm not sure where the Apache config is. `ahikar/openapi/index.html` should be exposed to https://ahikar-dev.uni-goettingen.de/openapi (or somewhere else if you have an alternative).
## Does the result of the MR comply to our "definition of done"?
* [x] I don't know
## Use Cases
It's useful for Ahikar developers to get a better overview of the API as well as other people interested in sample implementation of the generic TextAPI.
## Documentation
Shall we add your feature to the documentation?
* [x] I've already did it!
### Are there parts of the documentation we have to adjust
* [x] No.
## Tests
Are we able to test this new feature?
* [x] Yes, you can test by following these steps: Start the back end and navigate to `ahikar/openapi/index.html`
## Changelog
* [x] I added a statement to the CHANGELOG.
## Related Tickets
### Closes
#25
/cc [Mathias Göbel](https://gitlab.gwdg.de/mgoebel), [Frank Schneider](https://gitlab.gwdg.de/schneider210), [Michelle Weidling](https://gitlab.gwdg.de/mrodzis)Mathias GoebelMathias Goebel