Spring boot supports both Jetty and Tomcat, however only one is supposed
to be used at a time. This is problematic for us, because we would like
to have both on the classpath so we can configure them (i.e.
org.libresonic.player.boot.TomcatApplication). To remedy this, we mark
both as provided, but have two profiles which then tell spring to
exclude one or the other from the lib-provided war. These exclude rules
are a bit fragile, but can be reproduced by analyzing mvn
dependency:tree output.
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
- Use sl4fj as a backend to org.libresonic.Logger
- Output the same logs to libresonic.log as the console
- Use spring-boot logging constructs
- Turn down logging to error for non-libresonic classes info for
libresonic classes and liquibase (perhaps change this in the future,
but might be helpful for folks migrating their databases).
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
- Only paritial pagination, first X, then showAll
- Default is 40 for subDirs and sibling albums each
- showAll parameter causes page refresh with entirely new list
TODO/Future improvements include:
- Finer grain pagination
- Pagination done at the database level
- Seamless refresh with JS
- Unify all pagination uses across the site
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
Reusing forks seems to cause problems with the Jenkins build.
It adds about 2 minutes additional test time
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
- Add upnp specific base url
- Use http request base url for areas used by url redirection
- Fix sharing
- Removed Network Settings tab
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
For convenience, shuffle radio filters were saved and restored when
loading the `more.view` page. This also happened for the `_csrf` field,
which caused it to take an old and invalid value.
This commit does the following things :
* Increase Tomcat resource cache size to be able to actually store
something in there.
* Increase Tomcat resource cache TTL to avoid costly evictions
* Put Jasper in production mode to avoid recompiling JSPs