Commit Graph

1046 Commits

Author SHA1 Message Date
Eliot Berriot 62939d6826
Fixed failing test 2019-06-24 16:12:43 +02:00
Eliot Berriot cbf9f74e49
Fixed 500 error when adding domain without nodeinfo 2019-06-24 16:07:53 +02:00
Eliot Berriot aa368ec5eb
Hugh logging………… 2019-06-24 15:57:01 +02:00
Eliot Berriot fd522bc0de
Fixed some logging issues 2019-06-24 15:32:35 +02:00
Eliot Berriot b43bf42efc
Revert "Fixed broken logging"
This reverts commit 68b21d706c.
2019-06-24 15:31:11 +02:00
Eliot Berriot 68b21d706c
Fixed broken logging 2019-06-24 15:30:17 +02:00
Eliot Berriot 581e890ad9
See #853: advertise allow-list configuration in nodeinfo 2019-06-21 15:57:04 +02:00
Eliot Berriot 08262529ec MRF / Dropping of incoming/outgoing messages based on allow-list 2019-06-20 10:27:07 +02:00
Eliot Berriot 371dc01205
Merge branch 'master' into develop 2019-06-19 11:24:49 +02:00
Eliot Berriot e24c1f2330
Added missing make to Dockerfile 2019-06-19 10:54:45 +02:00
Eliot Berriot 4de78995c0 Fix #862: replaced Daphne by Gunicorn/Uvicorn 2019-06-19 10:26:09 +02:00
Reg 2301982374 Fixed typo refrence => reference 2019-06-18 22:52:57 +02:00
Eliot Berriot 2b2b64f0a7 Model / settings for allow-listing 2019-06-17 08:48:05 +02:00
Eliot Berriot 0a25243e25
Fix #857: Fix broken upload for specific files when using S3 storage 2019-06-13 11:10:48 +02:00
Eliot Berriot 2523108b6a
Fix #847: Use ASCII filename before upload to S3 to avoid playback issues 2019-06-11 09:56:46 +02:00
Eliot Berriot ce4a6b0412
Fix #851: wrong og:image url when using S3 storage 2019-06-10 12:06:29 +02:00
Eliot Berriot bb5e5460c4
Fix #848: Fixed invalid file extension for transcoded tracks 2019-06-10 11:56:10 +02:00
Eliot Berriot c8ee67e754
Fix #850: Ensure empty but optional fields in file metadata don't error during import 2019-06-10 11:05:07 +02:00
Eliot Berriot 024addfb4b
Added username and domain filter on /history/listenings endpoint 2019-06-10 09:51:29 +02:00
Eliot Berriot e99b7703b9
Version bump and changelog for 0.19.0 2019-05-16 10:58:00 +02:00
Eliot Berriot 4a412d36a9
Fix #830: Better handling of follow/accept messages to avoid and recover from desync between instances 2019-05-14 10:59:49 +02:00
Ciaran Ainsworth 2600631528 Added variables to connect to Amazon S3 directly 2019-05-10 13:33:03 +01:00
Eliot Berriot 818d78344f
Version bump for 0.19.0-rc2 2019-05-10 10:05:26 +02:00
Eliot Berriot 8bb0a34a71
Ensure proper HTML root in tests 2019-05-10 09:34:20 +02:00
Eliot Berriot 6749b72884
Fixed broken pipeline 2019-05-10 09:32:06 +02:00
Eliot Berriot 1f3f790f63
Fix #819: Fixed invalid required fields in Upload django's admin 2019-05-09 12:13:00 +02:00
Eliot Berriot d9d96a85cf
Avoid triggering an HTTP request for frontend HTML in docker 2019-05-09 12:07:11 +02:00
Eliot Berriot 8db9ec979e
Fix #824: Fixed invalid OEmbed URL when using a local FUNKWHALE_SPA_HTML_ROOT 2019-05-09 12:02:08 +02:00
Eliot Berriot 86269c1b07
Can now serve audio content directly from S3 2019-05-09 11:43:35 +02:00
Eliot Berriot aad2a50536
Fixed issue when transcoding from federation 2019-05-07 12:36:29 +02:00
Eliot Berriot 3b06cd25ee
Include uuid in filterable fields for music models 2019-05-07 11:29:25 +02:00
Eliot Berriot c8fcf1b0d9
Support oauth token in URL 2019-05-03 12:30:57 +02:00
Eliot Berriot e3b0efb25f
Bump to 0.19.0-rc1 2019-05-02 14:26:46 +02:00
Eliot Berriot 1345ba183c
Fixed follow autoapproval not working with "instance" visibility level 2019-05-02 13:57:42 +02:00
Eliot Berriot 119df01335
Fix #808: Advertise the list of supported upload extensions in the Nodeinfo endpoint 2019-05-02 13:15:33 +02:00
Eliot Berriot 72d6d7e17d
Fixed a dependency issue 2019-05-02 12:07:46 +02:00
Eliot Berriot a8fbd85ade Merge branch '815-django-upgrade' into 'develop'
Fix #815: Bumped dependencies to latest versions

Closes #815

See merge request funkwhale/funkwhale!745
2019-05-02 11:11:18 +02:00
Eliot Berriot 3646d696a6
Fix #815: Bumped dependencies to latest versions 2019-05-02 11:07:35 +02:00
Eliot Berriot 8c04acd8e7
Fix #812: Ensure correct track duration and playable status when browsing radios 2019-05-02 10:17:55 +02:00
Eliot Berriot 0be93ec05b
Fix #563: unplayable radios for anonymous users 2019-05-02 10:05:20 +02:00
Eliot Berriot 048339c7a2
Fix #809: Added admin options to disable login for users, ensure related content is deleted when deleting a user account 2019-04-30 14:46:05 +02:00
Eliot Berriot 430af5560c Merge branch '565-failing-tests' into 'develop'
See #565: fixed path issues with external storage

Closes #565

See merge request funkwhale/funkwhale!736
2019-04-24 15:29:57 +02:00
Eliot Berriot a2c52abb4f
See #565: fixed path issues with external storage 2019-04-24 15:27:07 +02:00
Eliot Berriot 993783190a
Fix #619: Use attributedTo instead of actor in library ActivityPub payload 2019-04-24 14:40:58 +02:00
Eliot Berriot f9a9899ef9 Merge branch '565-external-storages' into 'develop'
Fix #565: store media files in S3 bucket

Closes #565

See merge request funkwhale/funkwhale!735
2019-04-24 12:59:45 +02:00
Eliot Berriot 6135d427e7
Fixed some issues 2019-04-24 12:56:15 +02:00
Qasim Ali 22f0235045 refactor playlist duplicate error structure
- use non_field_errors struct when writing duplicate track errors
- generalize frontend error handler and update frontend error parsing
2019-04-24 11:31:46 +02:00
Eliot Berriot 101ae27885
Fix #565: store media files in S3 bucket 2019-04-23 18:01:42 +02:00
Eliot Berriot 51d94a13fa Merge branch '798-more-flexible-user-url' into 'develop'
Fix #798: Allow users with dots in their usernames to request a subsonic password

Closes #798

See merge request funkwhale/funkwhale!733
2019-04-23 11:38:42 +02:00
Eliot Berriot b23e87e102
Fix #798: Allow users with dots in their usernames to request a subsonic password 2019-04-23 11:35:59 +02:00
Eliot Berriot 39485c8e02
Fix #806: Use proper site name/domain in emails 2019-04-23 11:14:58 +02:00
Eliot Berriot 0b94227782
Fix #799: Removed broken/instable lyrics feature 2019-04-23 10:32:51 +02:00
Eliot Berriot b42dfb71d1
Keep persistent connections to the database instead of recreating a new one for each request 2019-04-19 14:29:43 +02:00
Eliot Berriot d595d168e3 See #689: Fixed some performance issues with filtering on library/upload/track pages 2019-04-19 14:16:23 +02:00
Eliot Berriot 960c9ffbbe
Fixed wrong action serializer for uploads 2019-04-19 12:38:06 +02:00
Eliot Berriot a605bcbe76 Admin UI for libraries and uploads 2019-04-19 12:05:13 +02:00
Eliot Berriot cdc617be27 Logic to refetch remote entities 2019-04-18 14:37:17 +02:00
Eliot Berriot 55d0e52c55 Edits for artists and albums 2019-04-17 16:11:24 +02:00
Eliot Berriot b4731928fc UI To manage artists, albums, tracks 2019-04-17 14:17:59 +02:00
Eliot Berriot 0e8a5a10e5
Fix #802: Now honor maxBitrate parameter in Subsonic API 2019-04-16 11:35:12 +02:00
Eliot Berriot 8cfd604e51
Fix #782: Better handling of featuring/multi-artist tracks tagged with MusicBrainz 2019-04-12 12:04:25 +02:00
Eliot Berriot 5e3cc99f20
See #689: fetch nodeinfo when seing a domain for the first time 2019-04-11 11:25:55 +02:00
Eliot Berriot 84e2f0af9f
See #689: added a task to refresh nodeinfo data on known domain periodically 2019-04-11 11:14:27 +02:00
Eliot Berriot 4e44e4e4b6 Attribute artist 2019-04-11 10:17:10 +02:00
Eliot Berriot 0ce51d25d4
Can now edit track copyright information 2019-04-09 11:15:43 +02:00
Eliot Berriot 45142bf24b
Added better dropdown for choosing licenses 2019-04-09 11:15:43 +02:00
Eliot Berriot a3ad476c88
More configurable pagination 2019-04-09 11:15:43 +02:00
Eliot Berriot b36b03383e
Fixed broken metadata update on track without license 2019-04-09 09:34:59 +02:00
Eliot Berriot 6649d0720d
Fix #781: Added a `check_inplace_files` management command to remove purge the database from references to in-place imported files that don't exist on disk anymore 2019-04-05 18:55:00 +02:00
Eliot Berriot f5a6a40d7f
Fix #787: federation issue due to missing error handling 2019-04-05 16:22:32 +02:00
Eliot Berriot 2a82367667
Fix #788: fixed crashing import with empty album artist 2019-04-05 15:41:28 +02:00
Eliot Berriot 48ce87d25f Merge branch '783-migration-error' into 'develop'
Fix #783: migration issue on develop

Closes #783

See merge request funkwhale/funkwhale!704
2019-04-04 16:08:11 +02:00
Eliot Berriot 05f0129025 Better error handling on display for import errors (#718, #583, #501, #252, #544) 2019-04-04 16:07:43 +02:00
Eliot Berriot 63c3c22534
Fix #783: migration issue on develop 2019-04-04 16:05:34 +02:00
Eliot Berriot 5916a1ba99
Fix #777: Added a prune_library management command to remove obsolete metadata 2019-03-27 17:04:10 +01:00
Eliot Berriot 8a5c85a823 Merge branch 'discard-unhandled-activities' into 'develop'
Fix #776: Don't store unhandled ActivityPub messages in database

Closes #776

See merge request funkwhale/funkwhale!696
2019-03-27 13:46:08 +01:00
Eliot Berriot ca7b39c692
Fix #740: Do not consider tracks as duplicates during import if they have different positions 2019-03-27 12:54:29 +01:00
Eliot Berriot 46f1d96206
Fix #776: Don't store unhandled ActivityPub messages in database 2019-03-27 12:53:35 +01:00
Eliot Berriot 31227b8641
Fix #772: Prevent skipping on file import if album_mbid is different 2019-03-27 12:13:25 +01:00
Eliot Berriot 4c13d47387 Resolve "Implement a Oauth provider in Funkwhale" 2019-03-25 17:02:51 +01:00
Eliot Berriot e587e5aebc
Merge branch 'master' into develop 2019-03-21 10:46:28 +01:00
Eliot Berriot c196016035
Version bump and changelog for 0.18.3 2019-03-21 10:41:14 +01:00
Eliot Berriot cc71d2bb20
Fix #570: Exclude in-place imported files from quota computation 2019-03-21 10:32:12 +01:00
Eliot Berriot 9a162c57ca
Merge branch 'master' into develop 2019-03-20 20:45:06 +01:00
Eliot Berriot 124a7c3dcf
Fix #767: broken Activity and Actor modules in django admin 2019-03-20 20:18:19 +01:00
Eliot Berriot 429ffbf461 Fix #757: Ensure cover art from uploaded files is picked up properly on existing albums 2019-03-20 19:38:41 +01:00
Eliot Berriot 5715773fa7
Fix #765: Include disc number in Subsonic responses 2019-03-20 17:13:40 +01:00
Eliot Berriot 33190613a2
Fix #737: delivering of local activities causing unintended side effects, such as rollbacking changes 2019-03-20 16:21:03 +01:00
Eliot Berriot b70636c2d8
Fixed a small federation issue when empty library summary 2019-03-19 17:53:17 +01:00
Eliot Berriot 584c29bff6
Fixed broken dependency 2019-03-19 17:47:12 +01:00
Eliot Berriot b9f0c6aecd
Revert "Merge branch '629-cookie-auth' into 'develop'"
This reverts commit 8b47af8b81, reversing
changes made to c0055b3b20.
2019-03-15 15:52:30 +01:00
Eliot Berriot da3710ff08 Fix #758: Ensure all our ActivityPub fetches are authenticated 2019-03-15 12:08:45 +01:00
Eliot Berriot c395076fce Resolve "Use cookies instead of local storage for auth in Web UI" 2019-03-13 16:50:49 +01:00
gordon 1a3e7a5e0d Fix Factories for dev data 2019-03-12 14:15:58 +01:00
Eliot Berriot 8ae00b0698
Fix #747: Support embedding full artist discographies 2019-03-08 10:34:50 +01:00
Eliot Berriot 1d787904f4
Merge branch 'master' into develop 2019-03-08 09:40:55 +01:00
Eliot Berriot f73c7714c6
Fixed a crash when federating a track with unspecified position 2019-03-08 09:29:43 +01:00
Eliot Berriot 491c79efa0
Merge branch 'master' into develop 2019-03-07 13:44:33 +01:00
Eliot Berriot 3d94eddcfc
Fix #743: Do not send notification when rejecting a follow on a local library 2019-03-07 12:09:45 +01:00
Eliot Berriot 0afa4f2e27 Fix #737: delivering of local activities causing unintended side effects, such as rollbacking changes 2019-03-06 15:33:39 +01:00
Eliot Berriot 12c9db3960 Ensures federation urls can answer to application/ld+json, application/activity+json and application/json requests 2019-03-05 15:15:37 +01:00
Eliot Berriot d243d6a2f5 See #689: now serve AP representations for uploads, tracks, albums and artists 2019-02-28 12:32:09 +01:00
Eliot Berriot e0c5ffcb16 [EPIC] Audio metadata update - UI / API 2019-02-28 09:31:04 +01:00
Eliot Berriot d23d69e11d
Fixed an issue with excluded artists 2019-02-25 10:36:02 +01:00
Eliot Berriot f726b5e105
See #578: Added twitter:* meta tags to detect tracks and albums players automatically on more sites 2019-02-21 14:27:14 +01:00
Eliot Berriot bdf83bd8ff Resolve "Hide an artist in the UI" 2019-02-14 10:49:06 +01:00
Eliot Berriot 8b1801ce6d
Merge branch 'master' into develop 2019-02-13 09:28:50 +01:00
Eliot Berriot e73e6db8ef
Version bump and changelog for 0.18.2 2019-02-13 09:28:14 +01:00
Eliot Berriot 7e1bd1ad07
Merge branch 'master' into develop 2019-02-13 09:09:31 +01:00
jake 7a34c297ed Resolve "add a view to list albums" 2019-02-13 08:46:38 +01:00
Eliot Berriot 00846ca3e9
Fix #706: Added a 'fix_federation_ids' management command to deal with protocol/domain issues in federation
IDs after deployments
2019-02-11 11:59:32 +01:00
Eliot Berriot 98f4edeeb3
Merge branch 'master' into develop 2019-02-11 09:44:42 +01:00
Eliot Berriot d99757658c
Fix #705: Can now use a local file with FUNKWHALE_SPA_HTML_ROOT to avoid sending an HTTP request 2019-02-08 17:36:10 +01:00
Eliot Berriot 5758ab4c43
Merge branch 'master' into develop 2019-02-07 16:40:56 +01:00
Eliot Berriot 741199c551
Fix #697: Downgraded channels dependency to 2.1.6 to fix denied uploads 2019-02-07 16:17:51 +01:00
Eliot Berriot c16258ed14
Removed popularity weight in similar radio, to avoid filter bubbles 2019-01-31 14:55:05 +01:00
Eliot Berriot 5ce4cc8379
[Experimental] Added a new "Similar" radio based on users history (suggested by @gordon) 2019-01-30 16:54:35 +01:00
Eliot Berriot 253f026dc0 System actor 2019-01-30 11:54:43 +01:00
Eliot Berriot 4a197e5475
Version bump and changelog for 0.18.1 2019-01-29 14:25:19 +01:00
Eliot Berriot 7df97263e5
Merge branch 'develop' 2019-01-29 10:06:04 +01:00
Vierkantor 0efdb6d980 Resolve "In-place imports cannot be transcoded" 2019-01-29 09:32:35 +01:00
Eliot Berriot 78546232d0
Fix #685: Disable makemigrations in production and misleading message when running migrate 2019-01-26 22:01:47 +01:00
Eliot Berriot 871db15908
Upgraded kombu to fix an incompatibility with redis>=3 2019-01-25 15:40:47 +01:00
Eliot Berriot 37ca06c370
Fixed celery worker defaulting to development settings instead of production 2019-01-25 15:39:48 +01:00
Eliot Berriot cd36128769
Fix #684: Include shared/public playlists in Subsonic API responses 2019-01-25 12:12:00 +01:00
Eliot Berriot 3b87580a69
Reduced number of SQL queries when loading /api/admin/music/tracks/ 2019-01-24 11:06:37 +01:00
Eliot Berriot 51dbd905e7
Fix #666: crashing Django admin when loading track detail page 2019-01-24 11:06:11 +01:00
Eliot Berriot 887373c006
Fixed a docker build issue with pip 19 2019-01-24 11:04:29 +01:00
Eliot Berriot f44d2b0694
Version bump and changelog 2019-01-22 12:04:30 +01:00
Eliot Berriot 079c66625e
Fix #663: Do not try to create unaccent extension if it's already present 2019-01-22 09:58:35 +01:00
Eliot Berriot 685d115960
fixed wrong daphne path 2019-01-21 14:15:31 +01:00
Eliot Berriot 0d461bef5e
Based Docker image on alpine to have a smaller (and faster to build) image 2019-01-21 13:54:46 +01:00
Eliot Berriot 0b66737181
Include user activity stats in nodeinfo endpoints 2019-01-21 10:16:50 +01:00
Eliot Berriot e8c81d734f
Fixed wrong value for anonymousCanListen in nodeInfo 2019-01-21 09:52:41 +01:00
Eliot Berriot 4a3c21a094
Importer will now pick embedded images in files with OTHER type if no COVER_FRONT is present 2019-01-15 17:14:11 +01:00
Eliot Berriot 042d85d7dc
Pinned pytest-profiling 2019-01-15 11:40:25 +01:00
Eliot Berriot 6aaa51e8e7
Fix #564: Added a script to prune pre 0.17 federated tracks 2019-01-14 17:11:24 +01:00
Eliot Berriot 08ce00e3cd
Fixed #469: parsing of embedded file cover for ogg files tagged with MusicBrainz Picard 2019-01-14 14:51:35 +01:00
Eliot Berriot 5fe30cf59b
Fix #658: Support blind key rotation in HTTP Signatures 2019-01-11 15:39:33 +01:00
Eliot Berriot 267498824d
Removed empty production.txt requirements file 2019-01-11 14:26:56 +01:00
Eliot Berriot 6c0d162329
Updated test/local only dependencies 2019-01-11 14:26:17 +01:00
Eliot Berriot 0c8cd1402e
Updated a bunch of dependencies 2019-01-11 14:10:03 +01:00
Eliot Berriot a6fafad34f
Removed unused whitenoise dependency and wsgi module 2019-01-11 14:10:02 +01:00
Eliot Berriot fe03d08a8e
Removed unused acoustid dependency / logic 2019-01-11 14:10:02 +01:00
Eliot Berriot 14392ebb0c
Updated rest framework to 3.9 2019-01-11 14:10:02 +01:00
Eliot Berriot 4a6df06360
Upgraded django to 2.1 and django-filters to 2.0 2019-01-11 12:03:06 +01:00
Eliot Berriot a2f8f335e4
Disable HTTPS urls in test 2019-01-11 12:02:52 +01:00
Eliot Berriot 97aaffaeda
Removed youtube-dl / and another unused dependency 2019-01-11 11:26:41 +01:00
Eliot Berriot ee4e5c244f
Bumbed version number to 0.18-dev 2019-01-10 14:48:16 +01:00
Eliot Berriot 53ade20722 Merge branch 'more-performant-favorites' into 'develop'
More performant favorites

See merge request funkwhale/funkwhale!522
2019-01-10 12:00:35 +01:00
Eliot Berriot 3916986fb8
Performance improvement when fetching favorites, down to a single, small http request 2019-01-10 11:58:18 +01:00
Eliot Berriot 81e7b900fe
Fixed https url-reversing issue in development 2019-01-10 11:55:48 +01:00
Eliot Berriot 4811f35eb5
Linting 2019-01-10 11:11:32 +01:00
Eliot Berriot d63f8f2e33
Added django admin module to manage instance policies 2019-01-10 11:11:32 +01:00
Eliot Berriot 993a0092c2
Fixed broken debug-toolbar when jquery was not included on page 2019-01-10 11:11:31 +01:00
Eliot Berriot 377f237fdb
Rejecting media files on an instance or account now purge existing media 2019-01-10 11:11:31 +01:00
Eliot Berriot 1c55f2c9a6
Use our instance policies to discard fetched and inbox objects 2019-01-10 11:11:30 +01:00
Eliot Berriot 24fdfd345c
Display policy data in account/domain tables 2019-01-10 11:11:29 +01:00
Eliot Berriot 233ac870be
Added actions and tasks to purge domains and actors 2019-01-09 14:20:22 +01:00
Eliot Berriot 0bc9bb65b0
Model, view and serializer for instance-level policies 2019-01-07 09:45:53 +01:00
Eliot Berriot ddffbeadfa
Can now add domains via manage API / UI 2019-01-05 18:21:35 +01:00
Eliot Berriot 031d96a0a6
Return shorter search results on Subsonic API 2019-01-05 16:07:58 +01:00
Eliot Berriot d4eff5aa32
Less DB queries in test factories 2019-01-04 14:36:08 +01:00
Eliot Berriot b6902009ac
Use cache session engine to reduce load on DB 2019-01-04 14:15:07 +01:00
Eliot Berriot 67de32ccc2
Removed 2 DB queries per request when user is authenticated 2019-01-04 13:52:36 +01:00
Eliot Berriot 49e1bec7b9
Faster transcoding tests thanks to smaller audio files (see #648) 2019-01-04 12:23:53 +01:00
Eliot Berriot 7657db4212
Fix #648: Improved test suite speed by reducing / disabling expensive operations 2019-01-04 11:47:23 +01:00
Eliot Berriot 2da3a3842e
Improved performance when listing playable tracks, albums and artists 2019-01-03 22:57:29 +01:00
Eliot Berriot 89f6e3656b
Show short entries first in search results to improve UX 2019-01-03 17:34:14 +01:00
Eliot Berriot e186c6bb06
Admin UI to list and manage remote and local accounts 2019-01-03 17:10:02 +01:00
Eliot Berriot 47209ee5ae
Added API to list and detail actors 2019-01-03 11:47:29 +01:00
Eliot Berriot a7d7756545
Fix #374: Strip EXIF metadata from uploaded avatars to avoid leaking private data 2019-01-02 12:39:00 +01:00
Eliot Berriot 9d55320b56
Fixed slow query on domain list / stats 2018-12-27 22:45:43 +01:00
Eliot Berriot a2607f82cb
Fix #643: Upgraded core dependencies to fix websocket/messaging issues and possible memory leaks 2018-12-27 21:17:51 +01:00
Eliot Berriot 942e9a15cb
Linting 2018-12-27 20:39:03 +01:00
Eliot Berriot 032197da3f
Added stats endpoint for domain 2018-12-27 20:33:12 +01:00
Eliot Berriot be388870a3
Can now fetch domain nodeinfo 2018-12-27 20:33:12 +01:00
Eliot Berriot e4117043cb
Added API endpoint and UI to list known domains 2018-12-27 20:33:11 +01:00
Eliot Berriot 34ec869ca1
Removed obsolete permissions, added a new moderation permission 2018-12-27 20:33:11 +01:00
Eliot Berriot af53ee7c7d
Ensure all our AP types are present 2018-12-27 20:33:11 +01:00
Eliot Berriot 7ac3bb98da
Moved actor domain to a dedicated table 2018-12-27 20:33:11 +01:00
Eliot Berriot 060543f62c
Fixed logging issues 2018-12-26 20:24:42 +01:00
Eliot Berriot 24b8ca7227
Removed dead code 2018-12-26 20:23:48 +01:00
Eliot Berriot 752a06c20a
Upgraded dynamic preferences to latest version 2018-12-26 20:23:09 +01:00
Eliot Berriot d27ea30b26
Fix #640: support connecting with to a password protected redis server 2018-12-20 17:36:32 +01:00
Eliot Berriot 95e087b342
Removed raven on front-end 2018-12-20 11:07:30 +01:00
Eliot Berriot e8b2b94df4
Fixed url escaping for good ;) 2018-12-19 16:45:40 +01:00
Eliot Berriot d7ea78d2bf
Linting 2018-12-19 16:16:10 +01:00
Eliot Berriot 94703ff296
Added missing attributes in oembed data 2018-12-19 16:13:01 +01:00
Eliot Berriot 03a7b80d03
Use cropped images for og:image 2018-12-19 16:05:45 +01:00
Eliot Berriot a56531e111
Added missing format in oembed discovery link 2018-12-19 15:53:54 +01:00
Eliot Berriot 173cd9ef78 Merge branch 'remove-superfluous-subsonic-tests' into 'develop'
Removed duplicated susbsonic tests

See merge request funkwhale/funkwhale!497
2018-12-19 15:18:03 +01:00
Eliot Berriot 5d4066d697
Removed duplicated susbsonic tests
We were testing both xml and json rendering for every view but this takes a very long time, so we only do json for most views now.
2018-12-19 15:12:19 +01:00
Eliot Berriot 9220b2f0f1
See #578: added opengraph and oembed data on artist / album / track urls 2018-12-19 15:04:33 +01:00
Eliot Berriot dd23dfa07c
Point to new gitlab URL 2018-12-10 16:00:33 +01:00
Eliot Berriot a493d34b8f Resolve "Track position don't take care about disc number" 2018-12-06 08:53:31 +00:00
Eliot Berriot 5a2cf9112b
Fixed #621: None extension when downloading an in-place imported file 2018-12-04 15:40:14 +01:00
Eliot Berriot e5b46402f8 Fix #308: Licenses 2018-12-04 14:13:37 +00:00
Eliot Berriot 8679edb160
Fix #626: Load env file in config/.env automatically to avoid sourcing it by hand 2018-11-28 19:56:56 +01:00
Eliot Berriot 8e84e2bf39
Fix #622: More resilient date parsing during audio import, will not crash anymore on
invalid dates
2018-11-26 17:07:55 +01:00
Eliot Berriot 409b076c23
Removed the need to specify the DJANGO_ALLOWED_HOSTS variable 2018-11-25 18:40:56 +01:00
Eliot Berriot 837d6ad0e1
Fix #473: ".None" extension when downloading Flac file 2018-11-19 23:49:43 +01:00
Eliot Berriot 22de4a98c5
Fix #616: Fixed inconsistencies in subsonic error responses 2018-11-18 23:17:31 +01:00
Eliot Berriot 4976981926
Broadcast library updates (name, description, visibility) over federation 2018-11-09 19:57:14 +01:00
Eliot Berriot 51457aa889
Fix #553: Advertise public libraries properly in ActivityPub representations 2018-11-09 19:57:14 +01:00
Eliot Berriot bcd22eb38c
See #272: linting and changelog 2018-10-26 16:09:00 +02:00
Eliot Berriot ac4bba816d
See #272: added transcoding settings in UI 2018-10-26 16:09:00 +02:00
Eliot Berriot daf2e4b863
See #272: subsonic support for transcoding 2018-10-26 16:09:00 +02:00
Eliot Berriot d3f8fb6cb0
See #272: updated API to return upload data on tracks 2018-10-26 14:26:52 +02:00
Eliot Berriot 8489c79c89
See #272: clean transcoding files task 2018-10-24 19:44:31 +02:00
Eliot Berriot 2fe1e7c950
See #272: added preference and base logic for transcoding 2018-10-24 19:17:02 +02:00
Eliot Berriot baf5a350b3
See #272: added admin and model for transcoding 2018-10-24 19:11:57 +02:00
Eliot Berriot aaaa2479dc
Missing changelog and getLicense endpoint for #581 2018-10-21 20:45:24 +02:00
Eliot Berriot 77973ba6f9
See #574: linting 2018-10-21 20:33:41 +02:00
Eliot Berriot bf3b3854dc
See #573: Added missing type / version in getLicense endpoint 2018-10-21 20:30:19 +02:00
Eliot Berriot ccd600ecca
See #574: Implemented getRandomSongs endpoint 2018-10-21 20:30:16 +02:00
Eliot Berriot 8c5924d6e3
Ensure distinct is applied on all playable_by querysets 2018-10-21 20:30:16 +02:00
Eliot Berriot 439d4fd6b3
See #574: Implemented getUser view 2018-10-21 20:30:12 +02:00
Eliot Berriot d3e411fa97
See #574: Implemented getAvatar view 2018-10-21 20:30:08 +02:00
Eliot Berriot 6c7ee54dbc Merge branch '573-subsonic-type' into 'develop'
Fix #573: Added "type: funkwhale" and "funkwhale-version" in Subsonic responses

Closes #573

See merge request funkwhale/funkwhale!456
2018-10-21 15:48:57 +00:00
Eliot Berriot 941f2f6677
Fix #573: Added "type: funkwhale" and "funkwhale-version" in Subsonic responses 2018-10-21 17:43:22 +02:00
Eliot Berriot 2b70f3ba42
Fix #581: missing track count on various library cards 2018-10-21 17:38:29 +02:00
Eliot Berriot dc1e4fb0c7
Version bump and release for 0.17 2018-10-07 11:53:09 +02:00
Eliot Berriot a865fcdcf1
Fix #551: Added a library widget to display libraries associated with a track, album and artist 2018-10-02 19:30:13 +02:00
Eliot Berriot d7b6e54621 Merge branch 'admin-raw-id-fields' into 'develop'
Ensure we always use raw_ids for related fields in django's admin

See merge request funkwhale/funkwhale!431
2018-10-01 20:03:08 +00:00
Eliot Berriot 3895034089
Ensure we always use raw_ids for related fields in django's admin 2018-10-01 21:56:52 +02:00
Eliot Berriot 314765de7c
Fix #546: Ensure from_activity field is not required in django's admin 2018-10-01 21:43:33 +02:00
Eliot Berriot 1aa9b557d1 Merge branch 'subsonic-user-libraries' into 'develop'
Subsonic user libraries

See merge request funkwhale/funkwhale!428
2018-10-01 19:22:14 +00:00
Eliot Berriot 47aa209df2
See !368: ensure we filter playable entities in subsonic API 2018-10-01 21:16:11 +02:00
Eliot Berriot 224fa4bfbf
use proper pymemoize release instead of our fork 2018-10-01 19:37:58 +02:00
Eliot Berriot 02006270cd
See #542: fixed issue with empty actor during upgrade script 2018-10-01 19:16:48 +02:00
Eliot Berriot e8cab269b1
See #542: ensure install_os_dependencies.sh is runnable from anywhere 2018-10-01 19:16:48 +02:00
Eliot Berriot 62c98b2386
See #542: Removed import requests code 2018-10-01 19:16:47 +02:00
Eliot Berriot 42933fa138 Merge branch 'cleanup-017' into 'develop'
Cleanup  unused code

See merge request funkwhale/funkwhale!426
2018-09-28 20:55:37 +00:00
Eliot Berriot f5373a9dbf
Cleanup unused code 2018-09-28 22:49:59 +02:00
Eliot Berriot ec3fcefabf
Ensure radio tracks only return playable tracks 2018-09-28 22:19:43 +02:00
Eliot Berriot 4d425e92ee Merge branch 'federation-cache-cleaning' into 'develop'
Ensure cache_cleaning only targets remote files

See merge request funkwhale/funkwhale!424
2018-09-28 19:36:38 +00:00
Eliot Berriot 428de17817
Ensure cache_cleaning only targets remote files 2018-09-28 21:30:45 +02:00
Eliot Berriot 762b9f73ad Merge branch 'disable-federation' into 'develop'
Do not deliver anything to remote instances when federation is disabled

See merge request funkwhale/funkwhale!423
2018-09-28 19:25:11 +00:00
Eliot Berriot b028f3f817
Do not deliver anything to remote instances when federation is disabled 2018-09-28 21:19:37 +02:00
Eliot Berriot 58333b5967
Failing test 2018-09-28 21:08:58 +02:00
Eliot Berriot 6572db3a83
Failing test 2018-09-28 21:05:43 +02:00
Eliot Berriot 508873dffb
Lining 2018-09-28 20:50:28 +02:00
Eliot Berriot 54972e489b
Fixed unplayable playlists (bis repetita) 2018-09-28 20:46:18 +02:00
Eliot Berriot d000a1329f
Can now update user quota in UI 2018-09-28 20:45:31 +02:00
Eliot Berriot c641b8f500
Linting 2018-09-28 16:48:26 +02:00
Eliot Berriot 34373d020c
Fixed unplayable playlists 2018-09-28 16:45:28 +02:00
Eliot Berriot 59337fb5d8
Fixed import issue with empty album artist 2018-09-26 19:58:08 +02:00
Eliot Berriot 0d96e75eeb
Do not silent import errors 2018-09-26 19:23:15 +02:00
Eliot Berriot 527edc1e1e
Minor fixes 2018-09-25 22:52:09 +02:00
Eliot Berriot b6e376ed0a 0.17 release documentation initial draft and migration script 2018-09-25 20:18:02 +00:00
Eliot Berriot 125d0eed5e Federation scanning 2018-09-24 18:44:22 +00:00
Eliot Berriot 1bee3a4675 Import trust source 2018-09-23 12:38:42 +00:00
Eliot Berriot 3e49b2057a CLI for importing files with user libraries 2018-09-22 15:47:17 +00:00
Eliot Berriot e49a460203 Audio federation 2018-09-22 12:29:30 +00:00
Eliot Berriot ecd395d6b0 Library follows and user notifications 2018-09-13 15:18:23 +00:00
Eliot Berriot 2ea21994ee Resolve "Per-user libraries" (use !368 instead) 2018-09-06 18:35:02 +00:00
Eliot Berriot 14d8224db4 Merge branch 'develop' into 'develop'
Add support for setting the musicbrainz hostname

Closes #471

See merge request funkwhale/funkwhale!394
2018-08-31 20:46:04 +00:00
Toke Høiland-Jørgensen cb5b3be844 Add support for setting the musicbrainz hostname
Useful for using a local musicbrainz mirror.

Fixes #471.

Signed-off-by: Toke Høiland-Jørgensen <toke@toke.dk>
2018-08-31 22:36:12 +02:00
Eliot Berriot 330d8c21b4 Merge branch 'develop' into 'develop'
Add support for Opus files

Closes #244

See merge request funkwhale/funkwhale!390
2018-08-31 18:58:24 +00:00
Toke Høiland-Jørgensen 7d9220ed49 subsonic: Implement getSong API endpoint
The getSong API endpoint is used by, e.g., the subsonic plugin to mopidy.

Signed-off-by: Toke Høiland-Jørgensen <toke@toke.dk>
2018-08-30 14:21:11 +02:00
Toke Høiland-Jørgensen 8193782f68 subsonic: Don't crash when serialising artist with no name
If the name of an artist is not set, the serialiser will crash. Instead,
just skip such an artist when serialising a list of artists.

Also add test for serialising an artist with an empty name.

Signed-off-by: Toke Høiland-Jørgensen <toke@toke.dk>
2018-08-30 14:18:17 +02:00
Toke Høiland-Jørgensen 2f46d83834 subsonic: Catch ValueError when casting input parameters
A failed cast to int will raise ValueError, which is not currently caught
by the error checking code, leading to a crash. Fix this so a proper error
message can be returned.

Also add test for getting artist with non-numeric ID.

Signed-off-by: Toke Høiland-Jørgensen <toke@toke.dk>
2018-08-30 14:18:02 +02:00
Toke Høiland-Jørgensen 3ce3451d35 tests: Add metadata test with opus file
This adds a metadata test case for extracting data from an opus test
file. The added file is just converted from test.ogg and the same
metadata fields are used.

Signed-off-by: Toke Høiland-Jørgensen <toke@toke.dk>
2018-08-29 21:23:50 +02:00
Toke Høiland-Jørgensen 0d128d40d5 Add support for Opus files
This adds support for reading metadata from Opus files. The metadata config
is copied from OggVorbis with just the 'track' field name changed.

Also make sure get_audio_file_data() in music/utils.py doesn't crash if no
bitrate information is set, since mutagen doesn't add a bitrate to Opus
info objects.

Fixes #244.

Signed-off-by: Toke Høiland-Jørgensen <toke@toke.dk>
2018-08-29 21:23:50 +02:00
Joshua M. Boniface 4ce46ff2a0 Implement LDAP authentication 2018-08-22 18:10:39 +00:00
Eliot Berriot 9875e81c76
Version bump and changelog for 0.16.3 2018-08-21 20:34:06 +02:00
Eliot Berriot 658de6fe84
Version bump and changelog for 0.16.2 2018-08-21 19:03:00 +02:00
Eliot Berriot 19ace8dd40
Fixed #494: CLI importer syntax error because of async reserved keyword usage 2018-08-21 18:30:31 +02:00
Eliot Berriot 123569b90b
Version bump and changelog for 0.16.1 2018-08-19 19:04:48 +02:00
Eliot Berriot 71c70cee39
Fixed #478: Removed release date error in case of empty date 2018-08-19 17:52:04 +02:00
Eliot Berriot b9761d6436
Fixed #397: broken federation import on big imports due to missing transaction logic 2018-08-19 17:41:19 +02:00
Eliot Berriot 13a1c6daac
Fixed #487: typos in scheduled tasks configuration 2018-08-19 16:25:42 +02:00
Eliot Berriot 4781e7821e
Fix #376: Smarter date parsing during import by replacing arrow with pendulum 2018-07-24 23:07:51 +02:00
Eliot Berriot c70a50c80d
Version bump and changelog for 0.16 2018-07-22 22:44:08 +02:00
Eliot Berriot ba76fe9f49
Apply restrictions to username characters during signup 2018-07-22 13:05:43 +02:00
Eliot Berriot 6b16a8b963 Resolve "Have an actor for our users" 2018-07-22 10:20:16 +00:00
Eliot Berriot 25755ad39b
Fixed #384: unfiltered results in favorites API 2018-07-22 11:56:25 +02:00
Eliot Berriot b3ae2040ec
Fix #149: better demo setup script, wider catalog 2018-07-22 11:26:33 +02:00
Eliot Berriot 3a94462bd6
Removed django-cacheops dependency 2018-07-21 12:57:48 +02:00
Eliot Berriot 886680ed15
Fixed weird bug with versatile imgae field 2018-07-21 11:57:37 +02:00
Eliot Berriot 27d54ee971 Merge branch 'playlist-perfs' into 'develop'
Use smaller images when possible to increase performance on client-side

See merge request funkwhale/funkwhale!328
2018-07-20 17:24:53 +00:00
Eliot Berriot 979c554b4a
Use cropped covers/avatars to reduce bandwidth use 2018-07-20 19:17:39 +02:00
Eliot Berriot ba5c3bfc90 Update common.py with more blacklisted usernames 2018-07-19 10:49:01 +00:00
Eliot Berriot 99a37dcb7a Resolve "UX, UI : Browse Library" 2018-07-17 11:09:13 +00:00
Eliot Berriot af270f4abd Resolve "An avatar for users" 2018-07-13 12:10:39 +00:00
Eliot Berriot 1458c084a7 Resolve "Funkwhale unable to import Albums with multiple Artists" 2018-07-09 20:47:55 +00:00
Eliot Berriot ce5502cab7 Merge branch '351-empty-name' into 'develop'
Resolve "Ensure artists with empty names are not accepted"

Closes #351

See merge request funkwhale/funkwhale!312
2018-07-09 20:39:12 +00:00
Eliot Berriot 93cd72ff09
Fix #351: Ensure we do not import artists with empty names 2018-07-09 22:35:32 +02:00
Eliot Berriot 252aa31b11
Fix #138: Raise a warning instead of crashing when getting a broken path in file import 2018-07-08 10:33:23 +02:00
Eliot Berriot f156b8791d
Fix #326: Can now order tracks on federated track list 2018-07-06 21:45:51 +02:00
Eliot Berriot 6e709cdcd8
Removed non-breaking spaces and remaining gettext in templates 2018-07-06 20:44:47 +02:00
Eliot Berriot 663c6238dc Merge branch '344-query-language' into 'develop'
Resolve "Smarter query language in search bar"

Closes #344

See merge request funkwhale/funkwhale!301
2018-07-04 15:37:52 +00:00
Eliot Berriot 4428d7401c
Fixed #344: Implemented a basic but functionnal Github-like search on federated tracks list 2018-07-03 08:21:48 +02:00
Eliot Berriot d713ad177b
See #344: query parsing 2018-07-03 08:13:13 +02:00
Reg 14919e27c7 [doc] Arch Linux installation: OS requirements 2018-07-02 20:07:54 +02:00
Eliot Berriot 281bef48bf
Fix #339: Subsonic API login is now case insensitive 2018-06-28 16:47:45 +02:00
Eliot Berriot 9017acdb39
Fix #328: Validate Date header in HTTP Signatures 2018-06-24 19:17:56 +02:00
Eliot Berriot b6ac2dc30a
Version bump and changelog for 0.15 2018-06-24 16:00:26 +02:00
Eliot Berriot 58be852a84 Merge branch '302-private-playlist-show-in-interface' into 'develop'
Resolve "Private playlists not shown in interface"

Closes #302

See merge request funkwhale/funkwhale!275
2018-06-24 13:04:37 +00:00