1
0
Fork 0
mirror of https://github.com/airsonic/airsonic.git synced 2025-10-03 01:39:34 +02:00
Commit graph

1525 commits

Author SHA1 Message Date
François-Xavier Thomas
cc79fddfec Fix version to avoid Maven warnings 2020-04-26 12:08:42 +02:00
François-Xavier Thomas
ce1e1a9e5c Remove Cucumber (imports airsonic-advanced/airsonic-advanced#113)
This imports the relevant parts of airsonic-advanced/airsonic-advanced#113
from airsonic-advanced/airsonic-advanced@4601c7e4 in order to remove old
and unmaintained integration test plugins for Maven.
2020-04-26 12:08:42 +02:00
François-Xavier Thomas
8fe890aea0 Fix path issue in internal diagnostics page on Windows 2020-04-26 11:33:49 +02:00
François-Xavier Thomas
aa65c21c57 Fix Last.FM scrobbling on AudioScrobbler API v1 (HTTPS not available) 2020-04-26 11:33:22 +02:00
François-Xavier Thomas
1e5264f6a9 Refactor playback fix so that it reuses existing functions 2020-04-25 11:13:38 +02:00
François-Xavier Thomas
4407db2294 Fix #1407: Playback doesn't start after adding tracks to an empty play queue 2020-04-25 11:13:38 +02:00
dependabot-preview[bot]
dc8ff6bbf8 Bump maven-dependency-plugin from 3.1.1 to 3.1.2
Bumps [maven-dependency-plugin](https://github.com/apache/maven-dependency-plugin) from 3.1.1 to 3.1.2.
- [Release notes](https://github.com/apache/maven-dependency-plugin/releases)
- [Commits](https://github.com/apache/maven-dependency-plugin/compare/maven-dependency-plugin-3.1.1...maven-dependency-plugin-3.1.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-25 10:34:30 +02:00
dependabot-preview[bot]
5369f3eac2 Bump stax-ex from 1.8.2 to 1.8.3
Bumps [stax-ex](https://github.com/eclipse-ee4j/jaxb-stax-ex) from 1.8.2 to 1.8.3.
- [Release notes](https://github.com/eclipse-ee4j/jaxb-stax-ex/releases)
- [Commits](https://github.com/eclipse-ee4j/jaxb-stax-ex/compare/1.8.2...1.8.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-25 10:34:17 +02:00
dependabot-preview[bot]
95ba26e463 Bump recaptchav2-java from 1.0.3 to 1.0.4
Bumps [recaptchav2-java](https://github.com/triologygmbh/reCAPTCHA-V2-java) from 1.0.3 to 1.0.4.
- [Release notes](https://github.com/triologygmbh/reCAPTCHA-V2-java/releases)
- [Commits](https://github.com/triologygmbh/reCAPTCHA-V2-java/compare/1.0.3...1.0.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-25 10:33:55 +02:00
François-Xavier Thomas
e3f92e7f32
Merge pull request #1627 from airsonic/dependabot/maven/org.apache.lucene-lucene-core-8.5.1
Bump lucene-core from 8.4.1 to 8.5.1
2020-04-25 10:33:36 +02:00
François-Xavier Thomas
1d4f3089f5
Merge pull request #1453 from fxthomas/upgrade-spring-boot-2.2
Upgrade to Spring Boot 2.2
2020-04-25 10:32:43 +02:00
Greg Linton
c65fa1671b update naming convention as per recommendations
Forced episode date format to be (YYYY-MM-DD), and added Airsonic-generated podcast ID to filename.
2020-04-25 10:27:20 +02:00
Greg Linton
06ff7cd5cb Removed trim() for filename
It's not the end of the world if the last character before the extension is a space.
2020-04-25 10:27:20 +02:00
Greg Linton
72b3fa806d Limit filename to 146 chars (150 with extension) 2020-04-25 10:27:20 +02:00
Greg Linton
ddec0f0780 removed some trailing whitespace 2020-04-25 10:27:20 +02:00
Greg Linton
877fb9aaf2 Change the default naming convention for podcasts
It used to take the filename from the episode URL, aren't very useful for most cases. Now it takes it's name from the channel title,  Episode publishing date, and episode title 'channelTitle - publishDate - episodeTitle'.
2020-04-25 10:27:20 +02:00
François-Xavier Thomas
43c0aca3c6 Update changelog for 10.6.1 2020-04-19 12:42:46 +02:00
François-Xavier Thomas
b7f14b5c7b Update changelog for 10.6.0 2020-04-19 12:40:41 +02:00
tesshucom
942542a21f Fix #1625
Exception handling of JaudiotaggerParser will be reverted to v10.5.0
base.

related c6eed14, a13552b
2020-04-19 12:36:52 +02:00
François-Xavier Thomas
a31a3ef14c Add warning about Cling issues in the pom 2020-04-19 12:36:25 +02:00
François-Xavier Thomas
896e8d8bf4 Add UPnP/DLNA listen port option to Tomcat support class 2020-04-19 12:36:25 +02:00
François-Xavier Thomas
ba54226bf4 Restore DLNA support class (reverts part of d6264630)
The classes from org.fourthline.cling.transport.impl.apache are actually
needed to make Cling (the UPnP/DLNA) library work on Apache Tomcat, as
explained in the documentation[0]:

> However, if you are trying to use Cling Core in a runtime container such as Tomcat, JBoss AS, or
> Glassfish, you might run into an error on startup. [...] If your container is already using the
> HTTPURLConnection, you have to switch Cling to an alternative HTTP client. See Configuring network
> transports for other available options and how to change various network-related settings.

[0] http://4thline.org/projects/cling/core/manual/cling-core-manual.xhtml#section.BasicAPI.UpnpService.Configuration
2020-04-19 12:36:25 +02:00
dependabot-preview[bot]
d3f7947b96 Bump dependency-check-maven from 5.3.0 to 5.3.2
Bumps [dependency-check-maven](https://github.com/jeremylong/DependencyCheck) from 5.3.0 to 5.3.2.
- [Release notes](https://github.com/jeremylong/DependencyCheck/releases)
- [Changelog](https://github.com/jeremylong/DependencyCheck/blob/master/RELEASE_NOTES.md)
- [Commits](https://github.com/jeremylong/DependencyCheck/compare/v5.3.0...v5.3.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-18 17:06:02 +02:00
dependabot-preview[bot]
f5b6411ceb Bump java-jwt from 3.10.0 to 3.10.2
Bumps [java-jwt](https://github.com/auth0/java-jwt) from 3.10.0 to 3.10.2.
- [Release notes](https://github.com/auth0/java-jwt/releases)
- [Changelog](https://github.com/auth0/java-jwt/blob/master/CHANGELOG.md)
- [Commits](https://github.com/auth0/java-jwt/compare/3.10.0...3.10.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-18 17:05:47 +02:00
dependabot-preview[bot]
313a96a5ea Bump postgresql from 42.2.10 to 42.2.12
Bumps [postgresql](https://github.com/pgjdbc/pgjdbc) from 42.2.10 to 42.2.12.
- [Release notes](https://github.com/pgjdbc/pgjdbc/releases)
- [Changelog](https://github.com/pgjdbc/pgjdbc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/pgjdbc/pgjdbc/compare/REL42.2.10...REL42.2.12)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-18 17:05:39 +02:00
François-Xavier Thomas
746b58bb93 Bump spring-boot-dependencies from 2.2.4 to 2.2.6 2020-04-17 22:39:35 +02:00
François-Xavier Thomas
dbf99bb4b5 Use correct Tomcat version 2020-04-17 22:39:35 +02:00
François-Xavier Thomas
21e9c784d2 Add missing dependency for docker-client 8.16.0 2020-04-17 22:39:35 +02:00
François-Xavier Thomas
a15589018e Replace deprecated WebMvcConfigurerAdapter by WebMvcConfigurer 2020-04-17 22:39:35 +02:00
François-Xavier Thomas
69c88b6b33 Add excludes for Javax modules still used by Apache CXF
We already bundle the equivalent Jakarta modules for Spring Boot 2
dependencies, but two javax modules remain used by Apache CXF.
2020-04-17 22:39:35 +02:00
François-Xavier Thomas
4f7722ec00 Contrib: Update systemd service for Spring Boot 2.2
The `server.context-path` property is replaced by `server.servlet.contextPath`
in Spring 5, which needs to be updated in our default service.
2020-04-17 22:39:35 +02:00
François-Xavier Thomas
723e599a1c Test: Disable unnecessary stubs for HttpURLConnection.getInputStream
InternetRadioService just ignores the response body and goes to the next
URL specified by the Location: header when given a redirect (HTTP 3xx).

This caused the mock's getInputStream method to never be called in
practice, which was silently ignored before but is now disallowed after
upgrading to Spring Boot 2.2.
2020-04-17 22:39:35 +02:00
François-Xavier Thomas
fd2627e83f Test: Replace use of deprecated bean overriding
Bean overriding was deprecated and removed[1] in Spring Boot 2.1, which
fails the Jukebox REST API tests that relied on it. This commit replaces
it with a new method with the same behavior.

[1] https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.1-Release-Notes#bean-overriding
2020-04-17 22:39:35 +02:00
François-Xavier Thomas
884efc53ac Config: Enable suffix path matching
Starting from Spring Boot 2.0, suffix path matching is not enabled by
default anymore[1], so we must enable it manually.

Both setUseSuffixPatternMatch and favorPathExtension calls allow URLs
with extensions to be resolved to the same mapping as without extension.

In Airsonic's case, this is necessary, because a lot of our mappings assume
this behavior (for example "/home.view" URL to a "/home" mapping, or the
entire Subsonic REST API controller).

This fixes crashes when accessing almost all pages (which expect to use
.view URLs), and also fixes the following REST API tests:

    [ERROR] Failures:
    [ERROR]   AirsonicRestApiJukeboxIntTest>AbstractAirsonicRestApiJukeboxIntTest.jukeboxStartActionTest:202->AbstractAirsonicRestApiJukeboxIntTest.performStartAction:282 Status expected:<200> but was:<404>
    [ERROR]   AirsonicRestApiJukeboxIntTest>AbstractAirsonicRestApiJukeboxIntTest.jukeboxStopActionTest:225->AbstractAirsonicRestApiJukeboxIntTest.performStartAction:282 Status expected:<200> but was:<404>
    [ERROR]   AirsonicRestApiJukeboxLegacyIntTest.jukeboxStartActionTest:48->AbstractAirsonicRestApiJukeboxIntTest.jukeboxStartActionTest:202->AbstractAirsonicRestApiJukeboxIntTest.performStartAction:282 Status expected:<200> but was:<404>
    [ERROR]   AirsonicRestApiJukeboxLegacyIntTest.jukeboxStopActionTest:56->AbstractAirsonicRestApiJukeboxIntTest.jukeboxStopActionTest:225->AbstractAirsonicRestApiJukeboxIntTest.performStartAction:282 Status expected:<200> but was:<404>

[1] https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.0-Migration-Guide#spring-mvc-path-matching-default-behavior-change
2020-04-17 22:39:35 +02:00
François-Xavier Thomas
0a52b79984 Security: Explicitly configure no-op password encoder
Spring Security 5 requires[1] storing the encoder id alongside the encoded password
(e.g. "{md5}hash" for an MD5-encoded password hash), which differs from previous
versions.

Airsonic unfortunately stores passwords in plain-text, which is why we are setting
the "no-op" (plain-text) password encoder as a default here. This default will be
used when no encoder id is present.

This means that legacy Airsonic passwords (stored simply as "password" in the db)
will be matched like "{noop}password" and will be recognized successfully. In the
future password encoding updates will be done here.

This fixes the following tests failures:

    [ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 9.656 s <<< FAILURE! - in org.airsonic.player.api.AirsonicRestApiIntTest
    [ERROR] pingTest  Time elapsed: 0.376 s  <<< ERROR!
    java.lang.IllegalArgumentException: There is no PasswordEncoder mapped for the id "null"
            at org.airsonic.player.api.AirsonicRestApiIntTest.pingTest(AirsonicRestApiIntTest.java:47)

[1] https://spring.io/blog/2017/11/01/spring-security-5-0-0-rc1-released#password-storage-updated
2020-04-17 22:39:35 +02:00
François-Xavier Thomas
3e179b2ff1 Security: Tweak bean order after name change in Spring Boot 2.2
The SecurityProperties.ACCESS_OVERRIDE_ORDER constant is no longer
available in Spring Boot 2.2. It is replaced with
SecurityProperties.BASIC_AUTH_ORDER - 2 in our code.
2020-04-17 22:39:35 +02:00
François-Xavier Thomas
4b750f1534 Rename changed classes/methods for Spring Boot 2.2 2020-04-17 22:39:35 +02:00
François-Xavier Thomas
0af56013a5 Update core dependencies for Spring Boot 2.2 2020-04-17 22:39:35 +02:00
François-Xavier Thomas
c7b091b8ab Bump xmlunit-matchers from 2.6.3 to 2.6.4 2020-04-17 22:39:15 +02:00
dependabot-preview[bot]
c312cebf48 Bump xmlunit-core from 2.6.3 to 2.6.4
Bumps [xmlunit-core](https://github.com/xmlunit/xmlunit) from 2.6.3 to 2.6.4.
- [Release notes](https://github.com/xmlunit/xmlunit/releases)
- [Changelog](https://github.com/xmlunit/xmlunit/blob/master/RELEASE_NOTES.md)
- [Commits](https://github.com/xmlunit/xmlunit/compare/v2.6.3...v2.6.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-17 22:39:15 +02:00
François-Xavier Thomas
130c8eb2dc Bump Lucene index version to 19 following upgrade 2020-04-17 22:35:22 +02:00
François-Xavier Thomas
a08a1e0cb2 Bump lucene-analyzers-common from 8.4.1 to 8.5.1 2020-04-17 22:35:00 +02:00
dependabot-preview[bot]
15e32c7c7b
Bump lucene-core from 8.4.1 to 8.5.1
Bumps lucene-core from 8.4.1 to 8.5.1.

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-17 07:38:58 +00:00
Evan Harris
88dfedd57d Fixed integration tests for streamed files
The m4a and flac streaming tests no longer result in transcoding (correctly)
since a different format is not currently specified by the tests.
Adding transcoding tests will be done as a separate PR.
2020-04-17 00:00:32 +02:00
Evan Harris
994c1d61ed Removed separate audio downsampling
My guess is that this probably resolves #624.
2020-04-17 00:00:32 +02:00
Evan Harris
453f00232d Refactor transcoding/downsampling bitrate limits
Previously, transcodes just used default bitrate limits which might
either be too low (degrading the quality unnecessarily), or would be too
high which wasted bandwidth.  Fixes #867
This also now takes VBR sources into account, and gives them a little
extra bitrate when transcoding to better reproduce the quality of the
source.
2020-04-17 00:00:32 +02:00
dependabot-preview[bot]
583da80b05 Bump jetty-jspc-maven-plugin from 9.4.26.v20200117 to 9.4.28.v20200408
Bumps [jetty-jspc-maven-plugin](https://github.com/eclipse/jetty.project) from 9.4.26.v20200117 to 9.4.28.v20200408.
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-9.4.26.v20200117...jetty-9.4.28.v20200408)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-16 23:43:46 +02:00
dependabot-preview[bot]
0015777337 Bump tomcat.version from 8.5.51 to 8.5.54
Bumps `tomcat.version` from 8.5.51 to 8.5.54.

Updates `tomcat-embed-core` from 8.5.51 to 8.5.54

Updates `tomcat-embed-el` from 8.5.51 to 8.5.54

Updates `tomcat-embed-jasper` from 8.5.51 to 8.5.54

Updates `tomcat-embed-websocket` from 8.5.51 to 8.5.54

Updates `tomcat-annotations-api` from 8.5.51 to 8.5.54

Updates `tomcat-jdbc` from 8.5.51 to 8.5.54

Updates `tomcat-juli` from 8.5.51 to 8.5.54

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-16 23:24:00 +02:00
dependabot-preview[bot]
b6d4e7198d Bump liquibase-core from 3.8.7 to 3.8.9
Bumps [liquibase-core](https://github.com/liquibase/liquibase) from 3.8.7 to 3.8.9.
- [Release notes](https://github.com/liquibase/liquibase/releases)
- [Changelog](https://github.com/liquibase/liquibase/blob/v3.8.9/changelog.txt)
- [Commits](https://github.com/liquibase/liquibase/compare/v3.8.7...v3.8.9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-16 23:23:45 +02:00
dependabot-preview[bot]
4b45622508 Bump commons-lang3 from 3.9 to 3.10
Bumps commons-lang3 from 3.9 to 3.10.

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-16 23:23:28 +02:00