* Removed unnessesary id columns from relation tables.
* Attempt to improve the SQL query generated by search, especially on
multiple negative tags/places/people.
* Put less semi-duplicate data in error log.
* Refactored fetch_places to make `get_or_create_place` logicaly self
contained.
* Database access is now async (PR #10).
- Use `diesel-async` with deadpool feature for database access.
- A bunch of previously synchronous handlers are now async.
- Some `.map` and simliar replaced with `if` blocks or `for` loops.
* Refactored query parsing and facet handling in search (PR #11).
Should be more efficient now, especially for negative facets.
* Improved diagnosics and date format flexibility in parsing exif data.
* Avoid an extra query for the positions in search and splitlist.
* Links by time is 404 if no images found in query.
* Some random cleanup and refactoring.
- Use `diesel-async` with deadpool feature for database access.
- A bunch of previously synchronous handlers are now async.
- Some `.map` and simliar replaced with `if` blocks or `for` loops.
* Check for null bytes in autocomplete patterns, make them result in a
400 bad request rather than a 500 internal server error.
* Changed zoom-on-click to use fullscreen. I think that is an
improvement especially on mobile.
* Improved logging by using tracing and tracing-subscriber rather than
log and env_logger.
* Four more kinds of OSM areas to recognize.
* Added a favicon.
* Update diesel to 2.0.0: Mainly most operations now needs a `&mut
PgConnection`. Also, getting parts of dates are now done by sql
functions.
* Update ructe to 0.16.0.
* Update clap to 4.0.18.
* Add this changelog.