The `(optional)` annotation causes a warning because the parameter is not marked as `(out)`. Additionally, the annotations have no effect on the generated documentation.
When a function takes `GError **error`, then the GObject introspection data includes `throws="1"`.
When gi-docgen sees that annotation, it inserts a standard text about it, so what we write there doesn't matter too much. It will only be seen by people reading the header file directly, so I have inserted a consistent text in those places.
Testing Done:
Compiled and saw fewer warnings from gobject-introspection.
Reviewed at https://reviews.imfreedom.org/r/2019/
# UPDATING VERSION NUMBERS FOR RELEASES
#
# The version number is:
# <major>.<minor>.<micro><extra>
#
# micro += 1
#
# If any functions have been added to libpurple, Pidgin, or Finch:
# micro = 0
# minor += 1
#
# If backwards compatibility has been broken in libpurple, Pidgin, or Finch:
# micro = 0
# minor = 0
# major += 1
# purple_soversion += 1
#
# extra should be similar to one of the following: