Commit Graph
1218 Commits
Author SHA1 Message Date
Andrew DeMaria b7ec9f0cc2 Revert "Revert coverity in travis - takes too long"
This reverts commit 32da2ec9fd.

Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-06 20:47:24 -06:00
Andrew DeMaria 32da2ec9fd Revert coverity in travis - takes too long
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-06 20:46:16 -06:00
Andrew DeMaria 9ef7f47c45 Try to fix travis
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-06 20:31:03 -06:00
jvoisin da34bf0d3f Improve Windows system detection
Use apache commons instead of terrifyingly fragile black magic.
2019-10-07 01:16:34 +02:00
jvoisinandAndrew DeMaria bf5e8ef247 Add coverity to travis-ci
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-06 16:13:25 -06:00
jvoisinandAndrew DeMaria 85e0e08d9a Remove radeox
Radeox is a rendering engine for an unspecified markup.
Its [website](http://radeox.org/) is dead, the website
of its [authors](http://www.codehaus.org/) is dead too,
its [last commit](https://github.com/codehaus/radeox) was 13 years ago.

It's only used for the welcome and login messages,
as well as comments from users. If we want to have some markup parsing,
we should use something maintained with autoescaping guarantees,
instead of a piece of zombie code prone to $DEITY knows what injections.

Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-06 16:02:46 -06:00
jvoisinandAndrew DeMaria e5404648a4 Remove unnecessary exceptions and unused imports
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-06 16:00:29 -06:00
Evan HarrisandAndrew DeMaria 90e6c77563 Fix incorrect absolute paths in css
Fixes #1256

Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-06 15:55:19 -06:00
Andrew DeMaria b778f7099f Remove Tomcat version override
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-06 15:46:58 -06:00
Andrew DeMaria 776bb2cfef Switch to newer modelAttribute
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-06 15:45:32 -06:00
Andrew DeMariaandGitHub 2f143ad6aa Merge pull request #1279 from jvoisin/fix_javadoc
Fix some javadoc comments
2019-10-06 14:38:22 -07:00
jvoisinandAndrew DeMaria dddf8dc0aa Fix some javadoc comments
- Remove a dangling comment
- Delete half-documented parameters
- Fix some @see/@link

Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-06 15:37:54 -06:00
jvoisin 889add6848 More lambdaification 2019-10-06 15:00:34 +02:00
jvoisin 362cf29e41 Fix some javadoc comments
- Remove a dangling comment
- Delete half-documented parameters
- Fix some @see/@link
2019-10-06 14:30:21 +02:00
Andrew DeMaria 45d789b64e Option to disable timestamps during scan
I accidentally deleted most of my music directory. The database was
still intact. I recovered the music directory by rolling back to a
previous ZFS snapshot and performed a reindex. However, libresonic did
not mark the deleted files as present. Turns out the file timestamp was
unchanged through the ZFS restore, and so libresonic still thought the
last indexing effort was still "good".

This adds the option to ignore file timestamps when scanning files. This
can be helpful in the case of a restore as described above. There might
be a better way to do this, as this was really a quick effort on my part
to fix my own libresonic.

This does not add a UI, just a single property that can be turned on by
editing the lilbresonic.properties file.

@fxthomas suggested this could instead be a query parameter on the
initial issue #359. That would basically move the potential UI to the
scan page. That would be fine, but I could imagine there might be cases
where people want this setting on all the time.

Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-05 21:25:17 -06:00
Evan HarrisandAndrew DeMaria 41967e76df Media file scan will now heed configured music/video file types
It will also now heed the Media Folders -> Exclude Pattern.  Fixes #1227.

Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-05 21:14:31 -06:00
Evan HarrisandAndrew DeMaria 1b28d2c2fe Handle nulls when processing cover art better
This expands on commit d4487a07a0fcacea1544d61c79a380f2e9bf3087.

Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-05 20:06:09 -06:00
jvoisinandAndrew DeMaria 5c1451b904 Bump Spring
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-05 19:57:33 -06:00
jvoisinandAndrew DeMaria dd1e0181d1 Please checkstyle
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-05 19:48:00 -06:00
jvoisinandAndrew DeMaria af05b0f45b Use lambdas instead of ghetto nested types
This change was done in an automated fashion
via IntelliJ IDEA

Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-05 19:47:48 -06:00
jvoisinandAndrew DeMaria 9cbcc94b58 Bump ehcache
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-05 19:44:29 -06:00
jvoisinandAndrew DeMaria 25327c69cc Replace deprecated IOUtils.closeQuietly calls
Use FileUtil.closeQuietly instead, since it's our reimplemented of this deprecated method.
This change was done automatically via IntelliJ IDEA.

Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-05 19:39:10 -06:00
tesshucomandAndrew DeMaria 645fb88c7d Add expunge to IndexManager
When DB expunge is invoked from the management screen,
also indexManager performs expunge.

Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-05 19:19:16 -06:00
jvoisinandAndrew DeMaria c6ae5a1df7 Use computeIfAbsent instead of an if
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-05 19:01:53 -06:00
jvoisinandAndrew DeMaria 888204ffe7 Remove an unused import
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-05 18:58:28 -06:00
jvoisin c0beca6a58 Use removeIf instead of doing this manually 2019-10-05 19:43:47 +02:00
Jon Borglundandjvoisin f77a0d8b67 fixed 'Settings Saved' notification when saving transcoding settings #1114 (#1269)
Signed-off-by: Jon <jon@powha.net>
2019-10-03 20:13:35 +00:00
Evan Harris 2fa584f81d Merge branch 'origin/pr/1244' 2019-10-02 01:24:51 -05:00
Andrew V. Louisandjvoisin 45c6893f16 Making textareas vertical-align middle allows them to align with adjacent imgs.
Signed-off-by: Andrew V. Louis
2019-10-01 19:13:30 +00:00
jvoisin 5593275a5a Fix the CSS for groove_simple
Previously, the css pointed to a non-existent
file path for the background.
2019-09-30 23:05:07 +02:00
François-Xavier ThomasandGitHub 2b73a82a88 Merge pull request #1254 from fxthomas/1160-fix-mejs-race-condition
Fix remaining race condition in media playback
2019-09-28 16:05:06 +02:00
François-Xavier Thomas 40ef5501ea Fix race condition in MediaElement.js (#685, #1160)
This commit is hopefully the final fix on Airsonic's side for #685.  It
also fixes #1160, which was caused by temporary workarounds introduced
in #1080 while we were looking for a solution.

The root cause of the issue is the fact that, when we go to the next
track in an Airsonic play queue, we change the media source in the
`ended` event.

In MEJS, this translates as the following two things:

* In Airsonic's 'ended' event, we change the media source (set the `src`
  attribute) and call the `load()` method, followed by the `play()`
  method.

* The 'ended' event was also used internally by the MEJS player, and
  one of these internal uses called the `pause()` method (presumably in
  order to make sure that playback was stopped on some media renderers).

Unfortunately, the order in which these events are called depends (in
all modern browsers) on the order in which they are registered.

In our case, the first one is registered inside the `<body>` tag, but
the second one is registered with `$(document).ready(...)`. This means
that the first event handler is called before the second.

This means that, in some cases (when we're unlucky, hence the seemingly
random nature of the bug), `pause()` is called after `load()`
but before the media has finished loading.

Apparently, this causes the `AbortError: The fetching process for the
media resource was aborted by the user agent at the user's request.`
message to appear (which indicates exactly what's described in the last
paragraph), and the playback of the next song is aborted.
2019-09-22 18:48:21 +02:00
Evan Harris a85642c797 Merge branch 'origin/pr/1248' 2019-09-21 18:48:44 -05:00
jvoisin bc832d0034 Use a constant for encoding
Replace string.getBytes("UTF-8") with
string.getBytes(CONSTANT).
2019-09-21 18:16:40 +02:00
frankdelange 1e7cbcc190 Upgrade jackson-* to 2.10.0.pr3 to fix CVE-2019-16335, CVE-2019-14540 2019-09-20 12:46:06 +02:00
Evan Harris 117e8c7fd1 Improve transcoder info text and formatting 2019-09-20 03:59:14 -05:00
jvoisinandGitHub 3d8f3ed21d Gracefully handle failed version check attempts
This issue what found by darkling, and reported on irc
2019-09-19 19:54:58 +00:00
jvoisin 53d835e6ed Make the logout icon/image cliquable
This should close #1178
2019-09-19 20:49:45 +02:00
Evan HarrisandAndrew DeMaria b02fd9ad6c Change integration tests from parallel to single
This is an attempt to make the Travis CI integration tests more reliable,
and changes from parallel to single forking mode.
This is a temporary measure until cucumber-jvm-parallel-plugin (which is no
longer supported) is ripped out (see #1240)

Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-09-18 22:23:51 -06:00
Evan Harris d4aff1dca5 Added checkstyle to prohibit windows line endings
Suggestion taken from jvoisin in #1121.
2019-09-13 13:11:01 -05:00
tesshucomandAndrew DeMaria 5c3c558923 Update Lucene from 3.0.3 to the current version 8.2.0
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-09-12 16:33:44 -06:00
SidandAndrew DeMaria 8e279a2d2a Fix to clean up docker instance on RunTimeException in Integration Tests
Signed-off-by: Sid <shyamindra@gmail.com>
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-09-10 14:44:10 -06:00
CeledhrimandAndrew DeMaria c16fa9d159 Update db-changelog.xml to support mariadb
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-09-10 14:22:43 -06:00
jvoisinandAndrew DeMaria c6540d707e Simplify a bit the annotations
There is no need to specify `value` every single time

Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-09-10 13:51:35 -06:00
jvoisinandEvan Harris eb4c5a04ff Make the systemd unit compatible with tomcat9
- Use ReadWritePaths by default, since it doesn't
  cause any harm
- Rephrase the ProtectSystem comment, to make it more clear
- Fix verbs in a comment
2019-09-03 04:54:43 -05:00
Evan Harris 83ca97e21c Improve error handling for jaudiotaggerParser artwork fetch 2019-09-01 13:24:26 -05:00
jvoisin 6f57c6e313 Remove an unused/unuseable/half-done cache 2019-09-01 18:11:48 +02:00
jvoisin 46d806df1d Fix two issues found by LGTM 2019-09-01 18:11:48 +02:00
jvoisin c0fa01206a Ignore yet an other jackson vulnerability 2019-09-01 18:11:48 +02:00
jvoisinandGitHub e085d77635 Remove use useless arrays creation 2019-09-01 15:16:14 +00:00