ReleaseAPI: Make the description and name field optional.
Currently, the description field of the releases API makes use of a database stored field.
However, there is little technical reason to keep release information separated from the git repostitory and all needed features are already available in git tags.
Git tags supports messages, just as the git commit messages. A git tag message is built up the same way, git tag -m 'subject' -m 'paragraph 1' -m 'paragraph 2' and so on. The subject serves perfectly as release name, the tag body (all paragraphs combined) make up the description.
As i prefer not to have data stored separately in any database, I currently use the API to fill these fields from the tag. A more natural way would be to tell the API to just use the tag 'as is' and get the information from the actual tag itself.
As one implementation form, one could be to just copy the data into the database during release creation, to keep allowing editing release data after the tag.
Loosely related to gitlab-ce#59726 as this may actually be a bug triggered by the lack of not supporting line-feeds