Eliot Berriot
371dc01205
Merge branch 'master' into develop
2019-06-19 11:24:49 +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
Eliot Berriot
818d78344f
Version bump for 0.19.0-rc2
2019-05-10 10:05:26 +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
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
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
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
05f0129025
Better error handling on display for import errors ( #718 , #583 , #501 , #252 , #544 )
2019-04-04 16:07:43 +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
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
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
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
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
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
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
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
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
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
67de32ccc2
Removed 2 DB queries per request when user is authenticated
2019-01-04 13:52:36 +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
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
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
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
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
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
02006270cd
See #542 : fixed issue with empty actor during upgrade script
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
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
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
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
979c554b4a
Use cropped covers/avatars to reduce bandwidth use
2018-07-20 19:17:39 +02: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
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
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
Eliot Berriot
697ea24b79
Fix #302 : Include user's current private playlists on playlist list
2018-06-24 14:53:04 +02:00
Eliot Berriot
943064791a
Merge branch '307-wrong-date' into 'develop'
...
Resolve "import date is always "a few seconds ago" on /manage/library/files"
Closes #307
See merge request funkwhale/funkwhale!273
2018-06-24 12:09:58 +00:00
Eliot Berriot
917a6fa12e
FIx #307 : Expose track files date in manage API
2018-06-24 14:03:37 +02:00
Eliot Berriot
0e1203336d
Fixed randomly failing test
2018-06-24 13:56:06 +02:00
Renon
2182227f50
Merge branch '222-update-import' into 'develop'
...
Resolve "Add flag during import to replace already present tracks with new version"
Closes #222
See merge request funkwhale/funkwhale!264
2018-06-22 22:04:06 +00:00
RenonDis
61eb8e4d61
Test for _do_import with replace
2018-06-22 23:50:46 +02:00
RenonDis
8d9499332f
Migration file for ImportJob.replace_if_duplicate
2018-06-22 20:25:15 +02:00
RenonDis
f3f07c1f8d
Updated tasks.py to process replace flag
2018-06-22 20:25:15 +02:00
RenonDis
8103ea541f
cli import files with replace option
2018-06-22 20:25:15 +02:00
RenonDis
bb79d454af
Bypassing cli skip for update flag
2018-06-22 20:24:55 +02:00
Eliot Berriot
9767c8f415
See #190 : API and serializers to manage import requests
2018-06-22 18:25:17 +02:00
Eliot Berriot
afe9ad2c91
Merge branch '248-invite' into 'develop'
...
Resolve "Invite system"
Closes #248
See merge request funkwhale/funkwhale!263
2018-06-21 17:57:54 +00:00
Eliot Berriot
7e442db524
Black/Flake8
2018-06-21 19:51:27 +02:00
Eliot Berriot
46ecc3f103
See #248 : ensure invitation codes are case insensitive
2018-06-21 19:51:26 +02:00
Eliot Berriot
7cfa61292a
See #248 : can now filter on invitation status and delete invitations
2018-06-21 19:51:26 +02:00
Eliot Berriot
7b0148a533
Fixed broken import
2018-06-21 19:51:25 +02:00
Eliot Berriot
bf8b143700
See #248 : better structure for action serializers
2018-06-21 19:51:24 +02:00
Eliot Berriot
107b1ea7dc
See #248 : can now generate and list invitations in the front-end
2018-06-21 19:51:24 +02:00
Eliot Berriot
d18f98e0f8
See #248 : can now sign up using invitation code
2018-06-21 19:29:00 +02:00
Eliot Berriot
789bef38cb
See #248 : model / migration
2018-06-21 19:28:59 +02:00
Renon
7f16491525
Merge branch '242-nargs-import' into 'develop'
...
Resolve "Make the import command accept unlimited argument"
Closes #242
See merge request funkwhale/funkwhale!261
2018-06-21 17:21:25 +00:00
RenonDis
3a2e6c3b6d
Fix #242 : can now provide multiple paths at once when importing
2018-06-21 17:45:18 +02:00
Eliot Berriot
8636b456a8
See #212 : user detail profile
2018-06-19 20:11:40 +02:00
Eliot Berriot
3ef5f29dd3
See #212 : API viewset
2018-06-19 18:48:43 +02:00
Eliot Berriot
2e4f862387
See #212 : record user last activity date
2018-06-17 17:53:40 +02:00
Eliot Berriot
cb1957a961
Version bump and changelog for 0.14.2
2018-06-16 15:04:49 +02:00
Eliot Berriot
98e3bb9cfc
Fix #311 : Ensure radios can only be edited and deleted by their owners
2018-06-16 14:47:34 +02:00
Eliot Berriot
031784556f
Fixed #295 : broken pagination in Subsonic API
2018-06-10 13:34:15 +02:00
Eliot Berriot
d17ceec1f0
See #297 : linting of various, uncommon errors
2018-06-10 12:06:46 +02:00
Eliot Berriot
799386c2b6
See #297 : removed a lot of unused variables
2018-06-10 11:27:38 +02:00
Eliot Berriot
9bea804f14
See #297 : sorted imports
2018-06-10 10:55:16 +02:00
Eliot Berriot
9427f8b56e
See #297 : removed unused imports
2018-06-10 10:39:47 +02:00
Eliot Berriot
639882bd34
See #297 : removed unused variables
2018-06-09 17:41:59 +02:00
Eliot Berriot
62ca3bd736
Blacked the code
2018-06-09 15:36:16 +02:00
Eliot Berriot
73785d451c
Version bump and changelog for 0.14.1
2018-06-06 22:03:36 +02:00
Eliot Berriot
bbae4e323b
Fix #288 : Huge performance boost during CLI import that queries MusicBrainz
2018-06-06 21:45:38 +02:00
Eliot Berriot
9d9676aa17
Fix #237 : Do not crash when importing track with an artist that do not match the release artist
2018-06-06 21:41:38 +02:00
Eliot Berriot
33ae51fc91
Merge branch '274-logging' into 'develop'
...
Resolve "Broken logging formatting in import task"
Closes #274 and #278
See merge request funkwhale/funkwhale!233
2018-06-05 18:55:17 +00:00
Eliot Berriot
b7295382e7
Fix #274 : Broken logging statement during import error
2018-06-05 20:52:03 +02:00
Eliot Berriot
7c47348855
Fix #267 : Do not crash when tag contains multiple uuids with a / separator
2018-06-05 19:44:00 +02:00
Eliot Berriot
a16bd2a409
Merge branch '273-fix-mimetypes' into 'develop'
...
Resolve "Update file_track_files command to handle bad mimetypes"
Closes #273
See merge request funkwhale/funkwhale!226
2018-06-03 17:00:54 +00:00
Eliot Berriot
18ad6cfa78
Fix #273 : fix_track_files will now update files with bad mimetype
2018-06-03 18:57:35 +02:00
Eliot Berriot
36a0a4df4f
Removed transcoding support ( #271 )
2018-06-03 18:33:28 +02:00
Eliot Berriot
5afc3e4637
Fix #266 : Ensure we do not store bad mimetypes
2018-06-03 18:07:59 +02:00
Eliot Berriot
73bde2fc9e
Version bump and changelog for 0.14
2018-06-02 18:11:15 +02:00
Eliot Berriot
290cae9a8f
Fix #231 and #219 : ensure we import covers regarless of the import method
...
Can now import covers from track metadata and track directory as well
2018-06-02 17:34:46 +02:00
Eliot Berriot
5ebaa884c1
Send proper activity when listening is created through subsonic API
2018-06-02 00:11:31 +02:00
Eliot Berriot
0f792bf75c
Fix #260 : Implemented scrobble endpoint of subsonic API
2018-06-01 23:59:08 +02:00
Eliot Berriot
8d50743b3b
Fix #258 : Implemented getCovertArt in Subsonic API to serve album covers
2018-06-01 08:42:05 +02:00
Eliot Berriot
218a92547e
Merge branch '223-management-interface' into 'develop'
...
Resolve "Add a management interface for artists/albums/tracks"
Closes #223 and #241
See merge request funkwhale/funkwhale!216
2018-05-29 21:28:32 +00:00
Eliot Berriot
540c6fb583
Fixed #240 : ignored page_size paremeter on artist and favorites list
2018-05-29 23:21:03 +02:00
Eliot Berriot
1737a75d4e
See #223 : reflect new possibilities of library permission in help text
2018-05-29 22:36:47 +02:00
Eliot Berriot
256d98b77d
See #223 : delete actions is now dangerous anc cannot be applied to all files
2018-05-29 22:22:51 +02:00
Eliot Berriot
7b84a988fd
See #223 : dangerous actions can now prevent executing an action on all objects
2018-05-29 21:55:00 +02:00
Eliot Berriot
c7782693bc
See #223 : api for listing/managing library files
2018-05-29 00:07:20 +02:00
Eliot Berriot
d2c99b9f5d
Merge branch '220-fix-mp3-track-numbers' into 'develop'
...
Resolve "Track numbers from mp3 don't get imported"
Closes #220
See merge request funkwhale/funkwhale!214
2018-05-26 11:40:25 +00:00
David Magnus Henriques
8790631a65
Removed Typo which broke oggVorbis-import
2018-05-26 13:23:08 +02:00
David Magnus Henriques
06a5ee939a
Changed ID3Tag for Track-Number to TRCK
...
Until now the ID3Tag for the Track-Number was read from TPOS.
The Problem is, that TPOS is the part of the set (eg disc number)
and not the track-number. TRCK is the correct tag for the track
number.
Fixes #220
2018-05-26 13:06:40 +02:00
Eliot Berriot
a9799e66d7
See #236 : backend for users default permissions
2018-05-26 12:45:55 +02:00
Eliot Berriot
2ef36928c6
See #236 : added a basic string list preference
2018-05-26 12:45:16 +02:00
Eliot Berriot
c6cd3abf9d
Merge branch '229-anonymous-access' into 'develop'
...
Resolve "Ensure anonymous users can listen to music if instance is configured accordingly"
Closes #229
See merge request funkwhale/funkwhale!211
2018-05-24 20:52:40 +00:00
Eliot Berriot
8d55040e9e
See #230 : users with upload permission can now launch import and manage their own imports
2018-05-24 22:39:43 +02:00
Eliot Berriot
dfb4f5f62a
See #230 : can now use "or" operator to check permissions
2018-05-24 22:38:26 +02:00
Eliot Berriot
ed6c1a9a5b
See #230 : added an upload permission on user model
2018-05-24 22:37:41 +02:00
Eliot Berriot
2586444db2
Fix #229 : removed last hardcoded settings to protect audio files
2018-05-24 21:34:59 +02:00
Eliot Berriot
9c02954e46
Merge branch 'action-tables' into 'develop'
...
Action table component / implementation on federation library tracks
Closes #164 and #228
See merge request funkwhale/funkwhale!210
2018-05-24 19:11:33 +00:00
Eliot Berriot
eded32c2e8
See #228 : more performante federation import launch via API
2018-05-24 18:53:12 +02:00
Eliot Berriot
4f8db661fa
See #228 : now expose library track status in API
2018-05-24 18:33:40 +02:00
David Magnus Henriques
83738e4e04
Reading the musicBrainz-Id-Fields from correct field
2018-05-23 23:32:28 +02:00
EorlBruder
dc76283ebb
Added OggTheora Metadata
...
OggTheora wasn't support up until now. Now the config is there and the
import works
fixes #216
2018-05-23 22:23:59 +02:00
Eliot Berriot
ba4b6f6ba6
See #228 : now use our new action logic for library track import
2018-05-23 21:50:23 +02:00
Eliot Berriot
f1a1b93ee5
See #228 : serializer logic
2018-05-23 19:52:47 +02:00
Eliot Berriot
b36ed8a699
Merge branch '214-flac-no-mbid' into 'develop'
...
Resolve "Flac import fails if no MusicBrainz-ID present"
Closes #214
See merge request funkwhale/funkwhale!208
2018-05-22 21:57:44 +00:00
Eliot Berriot
01ea6562a6
Fix #214 : Do not crash on flac import if musicbrainz tags are missing
2018-05-22 23:53:45 +02:00
Eliot Berriot
47cc2a3920
Fix #179 : fixed broken ordering in front-end lists
2018-05-22 23:30:37 +02:00
Eliot Berriot
54008aa37c
Merge branch '224-music-api' into 'develop'
...
Resolve "Better API for artists/album/tracks"
Closes #224 and #226
See merge request funkwhale/funkwhale!205
2018-05-22 21:04:09 +00:00
Eliot Berriot
a8baf8fa67
See #224 : updated front-end with new music API
2018-05-22 22:22:53 +02:00
Eliot Berriot
857fab526d
See #224 : less clutered music API, better serializers
2018-05-22 21:10:48 +02:00
Eliot Berriot
7b71463ef8
Removed acoustid support, as the integration was buggy and error-prone ( #106 )
2018-05-21 20:55:44 +02:00
Eliot Berriot
ae00cccf14
Fix #207 : Consistent constraints/checks for URL size
2018-05-21 19:04:28 +02:00
Eliot Berriot
d299964c99
0.13: Version bump and changelog
2018-05-19 11:43:19 +02:00
Eliot Berriot
ac7db73785
See #152 : added management command to execute one-time migration scripts
2018-05-18 22:18:03 +02:00
Eliot Berriot
a57d975183
See #152 : updated admin interface
2018-05-18 22:18:02 +02:00
Eliot Berriot
6fc4275b68
See #152 : use new user permissions on relevant viewsets
2018-05-18 18:48:46 +02:00
Eliot Berriot
ff65a4b935
See #152 : added permission fields on user model and corresponding API permission
2018-05-18 18:47:35 +02:00
Eliot Berriot
e7619fd189
See #206 : minor tweaks on settings (wording, input type...)
2018-05-17 23:40:06 +02:00
Eliot Berriot
13c5219d71
See #206 : added API endpoint for managing settings
2018-05-17 23:39:34 +02:00
Eliot Berriot
6608a3153d
Merge branch '200-private-nodeinfo' into 'develop'
...
Resolve "Add a "private" property on nodeinfo"
Closes #200
See merge request funkwhale/funkwhale!198
2018-05-17 18:21:18 +00:00
Eliot Berriot
1974c17e76
Fix #200 : Instances can now indicate on the nodeinfo endpoint if they want to remain private
2018-05-16 22:24:05 +02:00
Eliot Berriot
e852c84007
Fix #197 : .well-known/nodeinfo endpoint can now answer to request with Accept: application/json
2018-05-16 22:10:11 +02:00
Eliot Berriot
a28078753b
See #195 : no update track information when fetching track from federation
2018-05-16 18:55:09 +02:00
Eliot Berriot
3290a15c88
See #195 : expose bitrate, size and duration in subsonic API
2018-05-15 22:46:01 +02:00
Eliot Berriot
8994326634
See #195 : expose bitrate, duration and size in AP audio representations
2018-05-15 22:01:53 +02:00
Eliot Berriot
4b21128e46
See #195 : fix_track_files command can now recompute size, bitrate and duration
2018-05-15 22:01:53 +02:00
Eliot Berriot
af82111ade
Missing select related on trackfile viewset
2018-05-15 22:01:53 +02:00
Eliot Berriot
1bc4ceab9e
See #195 : set bitrate, duration and size when importing file
2018-05-15 22:01:52 +02:00
Eliot Berriot
7425a8ea4d
See #195 : added bitrate and size fields on track file
2018-05-15 22:01:52 +02:00
Eliot Berriot
3415d02028
Fixed wrong mimetype for flac files
2018-05-15 22:01:52 +02:00
Eliot Berriot
5abac103c4
Merge branch '204-missing-dot' into 'develop'
...
Resolve "Missing dot in file name when downloading file"
Closes #204
See merge request funkwhale/funkwhale!194
2018-05-15 17:04:35 +00:00
Eliot Berriot
6e168a54ec
Fix #204 : missing dot when downloading file
2018-05-15 19:01:49 +02:00
Eliot Berriot
8a321d4abe
Fix #201 : escaping issue of track name in playlist modal
2018-05-15 18:37:44 +02:00
Eliot Berriot
ce92747d89
Fix #157 : Can now import and play flac files
...
If you ever need an empty flac file with metadata again:
1. Get a flac file (like https://archive.org/download/NineInchNailsTheSlip24bit96khz/01999999.flac )
2. Tag it with Musicbrainz Picard
3. Truncate it, keeping only tags with `ffmpeg -i in.flac -ss 0 -to 0.001 out.flac`
Thanks @HgO for the trick!
2018-05-15 18:20:24 +02:00
Eliot Berriot
2f44dd0eb7
Merge branch '199-disabled-play' into 'develop'
...
Resolve "Unplayable tracks are not disabled in the interface"
Closes #199
See merge request funkwhale/funkwhale!191
2018-05-13 11:38:11 +00:00
Eliot Berriot
2f5a13a339
Fix #199 : unplayable tracks are now properly disabled in the interface
2018-05-12 10:52:58 +02:00
Eliot Berriot
6f79dd475d
Now return proper error payload on subsonic API
2018-05-12 10:52:58 +02:00
Eliot Berriot
9c9f6708a3
Merge branch '196-fix-filepath-encoding' into 'develop'
...
Resolve "404 for files with special utf-8-chars"
Closes #196
See merge request funkwhale/funkwhale!189
2018-05-12 08:26:02 +00:00
Eliot Berriot
1937b81699
Fix #196 : In-place imported tracks non-ascii characters don't break reverse-proxy serving
2018-05-10 18:52:00 +02:00
Eliot Berriot
190a4357dc
Fix #198 : Removed Python 3.6 dependency (secrets module)
2018-05-10 16:45:45 +02:00
David Magnus Henriques
023c6f6f5e
Encode the Filepath utf-8
...
The filepath of a track gets broken when it contains special
UTF-8-characters. Encoding it UTF-8 fixes this behaviour.
2018-05-10 13:24:26 +02:00
Eliot Berriot
0997aa4b25
0.12 Version bump and changelog
2018-05-09 23:45:14 +02:00
Eliot Berriot
805f9c6bbc
Merge branch '75-subsonic-api' into 'develop'
...
Resolve "Implement the subsonic API"
Closes #75
See merge request funkwhale/funkwhale!188
2018-05-09 21:27:57 +00:00
Eliot Berriot
24cb1d9519
See #75 : user can now manage the Subsonic API token from their settings page
2018-05-09 22:18:33 +02:00
Eliot Berriot
7595936260
See #75 : added a preference do enable/disable the subsonic API on the instance level
2018-05-09 22:13:04 +02:00
Eliot Berriot
67dc414c8a
See #75 : music direcory and indexes endpoints
2018-05-09 20:32:17 +02:00
Eliot Berriot
7c85d1ca81
See #75 : can now add multiple tracks to a playlist on creation and update
2018-05-09 20:31:47 +02:00
Eliot Berriot
1674ad919f
See #75 : implemented subsonic playlist API endpoints
2018-05-08 23:06:47 +02:00
Eliot Berriot
7e9320fc1c
Queryset methods for playlists
2018-05-08 23:06:29 +02:00
Eliot Berriot
e31099ef33
See #75 more subsonic api endpoints (star, unstar, search...)
2018-05-08 21:22:52 +02:00
Eliot Berriot
40cde0cd92
Queryset methods on artist/albums
2018-05-08 21:21:52 +02:00
Eliot Berriot
bbd273404a
See #75 : initial subsonic implementation that works with http://p.subfireplayer.net
2018-05-08 16:32:07 +02:00
Eliot Berriot
9682299480
See #75 : dedicated token for subsonic API access
2018-05-08 16:31:19 +02:00
Eliot Berriot
2ef8723485
Merge branch '192-nodeinfo' into 'develop'
...
Resolve "Use nodeinfo schema for instance statistics"
Closes #192
See merge request funkwhale/funkwhale!187
2018-05-08 07:03:47 +00:00
Eliot Berriot
cdc8388118
See #192 : renamed name to nodeName, and include anonymousCanListen value as well
2018-05-08 09:01:02 +02:00
Eliot Berriot
095b70db4b
See #192 : use proper content type for nodeinfo endpoint
2018-05-07 23:29:07 +02:00
Eliot Berriot
a679f48fcf
See #192 : removed useless localPosts and localComments
2018-05-07 23:26:48 +02:00
Eliot Berriot
d88b7869fe
See #192 : added .well-known/nodeinfo endpoint
2018-05-07 22:28:46 +02:00
Eliot Berriot
6ff8c2c8da
See #192 : use nodeinfo/2.0 namespace to be future proof
2018-05-07 22:28:21 +02:00
Eliot Berriot
b4ad7a4a71
See #192 : replaced old stats endpoint with nodeinfo
2018-05-07 22:09:03 +02:00
Eliot Berriot
23d21b0fdb
Fix #193 : broken federated import
2018-05-07 19:22:09 +02:00
Eliot Berriot
7908ae3942
Version bump and changelog
2018-05-06 16:24:12 +02:00
Eliot Berriot
bc2c9950e3
Fix #189 : federation cache should now delete properly, including orphaned files
2018-05-06 15:36:49 +02:00
Eliot Berriot
f343159856
Added an accessed_date field on TrackFile for easier cache deletion ( #189 )
2018-05-06 15:36:18 +02:00
Eliot Berriot
44ebb92874
See #187 : Front logic for password reset and email confirmation
2018-05-06 12:50:53 +02:00
Eliot Berriot
3b9024129d
See #187 : Front logic for password reset
2018-05-06 11:30:52 +02:00
Eliot Berriot
22f0b1a2d8
See #187 : API logic for password reset
2018-05-06 11:30:41 +02:00
Eliot Berriot
4325b1be4f
Removed radios and listening recording for anonymous users as it was buggy
2018-05-06 11:18:28 +02:00
Eliot Berriot
a3b2125d2a
See #186 : moved api authentication required setting to preference
2018-04-28 06:11:50 +02:00
Eliot Berriot
6100b106c0
See #186 : moved federation settings to preferences
2018-04-28 05:55:21 +02:00
Eliot Berriot
7222f7b710
See #186 : moved PLAYLISTS_MAX_TRACKS to playlists__max_tracks
2018-04-28 05:30:23 +02:00
Eliot Berriot
aa3da412a7
#186 : common utils for moving settings to preferences
2018-04-28 05:28:51 +02:00
Eliot Berriot
f4899c5387
Fix #176 : Can now relaunch erored jobs and batches
2018-04-28 04:59:47 +02:00
Eliot Berriot
6dcde77b1e
Avoid fetching Actor object on every request authentication
2018-04-28 00:25:47 +02:00
Eliot Berriot
42a2ffbf24
Fix #109 : List pending requests by default, added a status filter for requests
2018-04-27 22:23:25 +02:00
Eliot Berriot
7d3da3d757
Added a fix_track_files command to run checks and fixes against library ( #183 )
2018-04-27 21:11:20 +02:00
Eliot Berriot
3d6f0b8b2c
Fix #183 : ensure in place imported files get a proper mimetype
2018-04-27 21:10:35 +02:00
Eliot Berriot
99ff8169fc
Merge branch '178-api-documentation' into 'develop'
...
Resolve "Document important API features"
Closes #178
See merge request funkwhale/funkwhale!166
2018-04-26 16:29:44 +00:00
Eliot Berriot
d2c2fb837e
Now support Bearer auth in complement of JWT
2018-04-26 15:17:51 +02:00
Eliot Berriot
472e9f7605
Added q filter on artists
2018-04-26 14:26:01 +02:00
Eliot Berriot
a49d3b4251
Fixed #182 : X-sendfile not working with in-place imports
2018-04-25 18:50:06 +02:00
Eliot Berriot
7e8972a3b0
Version bump and Changelog
2018-04-23 19:44:38 +02:00
Eliot Berriot
300e24dbde
Ensure we return correct paths when using Apache as a reverse proxy
2018-04-22 16:34:07 +02:00
Eliot Berriot
ad43d160bd
Merge branch '171-import-jobs' into 'develop'
...
Resolve "Dedicated API endpoint for import jobs"
Closes #171
See merge request funkwhale/funkwhale!156
2018-04-22 13:20:07 +00:00
Eliot Berriot
6a67bc6fac
Fix #171 : dedicated endpoint to list import jobs, updated front-end
2018-04-22 15:17:06 +02:00
banana
0f7de68f0d
Update common.py to add USE_APACHE_HEADERS set to false
...
Update views.py to modify headers depending on Nginx or Apache
Update common.py with future proof REVERSE_PROXY_TYPE setting
Update views.py to adapt headers based on REVERSE_PROXY_TYPE
Update views.py, typo on apache
2018-04-22 15:11:04 +02:00
Eliot Berriot
93c57f08f9
Fixed broken youtube-dl import
2018-04-22 12:10:32 +02:00
Eliot Berriot
f4ac0b2d3f
Serve view can now serve in-place imported files
2018-04-21 18:21:15 +02:00
Eliot Berriot
58fced2640
updated import_task to support in place import
2018-04-21 18:20:56 +02:00
Eliot Berriot
de754b835e
Updated CLI to support in-place import
2018-04-21 18:16:43 +02:00
Eliot Berriot
3f3d6d88d6
Make music directory configurable in development
2018-04-21 16:16:43 +02:00
Eliot Berriot
1672230f39
More verbose/robust import_files command, also skips existing files
2018-04-21 16:16:43 +02:00
Eliot Berriot
d98c33e5ed
More efficient SQL query to compute import batch status
2018-04-21 16:02:11 +02:00
Eliot Berriot
e29cfb7301
Smarted UUID validation on metadata
2018-04-21 16:01:42 +02:00
Eliot Berriot
2be46b3320
Fix #142 : Increased max_length on TrackFile.source
2018-04-19 22:25:58 +02:00
Eliot Berriot
ced851891d
Fix #163 : Avoid downloading audio files multiple times from remote libraries
2018-04-19 21:19:40 +02:00
Eliot Berriot
c29a96f244
Fail graciously when AP representation includes a null_value for mediaType
2018-04-18 00:08:31 +02:00
Eliot Berriot
eb275b7e08
Version bump and changelog
2018-04-17 23:20:32 +02:00
Eliot Berriot
c17f7eefde
Ensure follower is approved to access library
2018-04-17 23:08:15 +02:00
Eliot Berriot
899ba31162
Do not fail on library page scan if one item is invalid
2018-04-17 22:58:43 +02:00
Eliot Berriot
14cadce4a6
Allow null values for musicbrainz_id in Audio ActivityPub representation
2018-04-17 21:49:11 +02:00
Eliot Berriot
dd97a9b488
Version bump and changelog
2018-04-17 21:26:58 +02:00
Eliot Berriot
5fee42f896
Can now filter by import status on library tracks
2018-04-17 20:03:31 +02:00
Eliot Berriot
f31874edf5
Implemented followers notification on import and autoimport
2018-04-17 19:35:57 +02:00
Eliot Berriot
fc09a3b320
Can now accept/deny follow requests
2018-04-15 11:25:35 +02:00
Eliot Berriot
ca02aca327
Ensure follower is approved for listening
2018-04-15 11:25:35 +02:00
Eliot Berriot
9b4d7165b7
Added federation libraries list, moved scan to a dedicate view
2018-04-15 11:25:34 +02:00
Eliot Berriot
c20e4d7c9a
Added task to delete unused cached files
2018-04-15 11:25:34 +02:00
Eliot Berriot
6a04779125
Will now fetch and cache federated tracks
2018-04-15 11:25:34 +02:00
Eliot Berriot
3a31248a3d
Can now import library tracks from front-end
2018-04-15 11:25:34 +02:00
Eliot Berriot
2cef58e6c1
Can now search in library tracks
2018-04-15 11:25:34 +02:00
Eliot Berriot
57bf43bb96
API Endpoint to list lirary tracks
2018-04-15 11:25:33 +02:00
Eliot Berriot
bdf9347917
Fixed serialization error
2018-04-15 11:25:33 +02:00
Eliot Berriot
64e88b83f7
Deliver is now a proper celery task
2018-04-15 11:25:33 +02:00
Eliot Berriot
2a4ce0a48c
ActorSerializer is not a modelserializer anymore
2018-04-15 11:25:33 +02:00
Eliot Berriot
dda1cd2531
Added scan endpoint to trigger a scan for a library
2018-04-15 11:25:33 +02:00
Eliot Berriot
077a17b093
Scan task can now handle until
2018-04-15 11:25:33 +02:00
Eliot Berriot
520fb9d078
Started work on library scanning
2018-04-15 11:25:33 +02:00
Eliot Berriot
472cc7e26a
Detail library view with settings update
2018-04-15 11:25:32 +02:00
Eliot Berriot
f4f75dcb4f
Can now scan and follow library from front-end
2018-04-15 11:25:32 +02:00
Eliot Berriot
fe7ca088c5
Library list endpoint
2018-04-15 11:25:32 +02:00
Eliot Berriot
e82a53da35
Added API endpoints to list library followees and followers
2018-04-15 11:25:32 +02:00
Eliot Berriot
3caa03aedf
use a dedicated serializer to handle library creation
2018-04-15 11:25:32 +02:00
Eliot Berriot
0b2fe8439a
Removed too complex FollowRequest model, we now use an aproved field on Follow
2018-04-15 11:25:32 +02:00
Eliot Berriot
c97db31cb1
Include following state in scan payload
2018-04-15 11:25:32 +02:00
Eliot Berriot
f0ef9ea561
Better error handling during scan
2018-04-15 11:25:31 +02:00
Eliot Berriot
238d849298
Can now disable SSL cerification for external requests
2018-04-15 11:25:31 +02:00
Eliot Berriot
097707dec4
Added remote library scanning logic end endpoint
2018-04-15 11:24:47 +02:00
Eliot Berriot
92fa348eac
Federation model admin
2018-04-15 11:24:47 +02:00
Eliot Berriot
206ae296b6
Ensure timeout in requests
2018-04-15 11:24:47 +02:00
Eliot Berriot
b8c7e960c3
Now validate incoming webfinger
2018-04-15 11:24:47 +02:00
Eliot Berriot
314587e2eb
Fixed pagination issue
2018-04-15 11:24:46 +02:00
Eliot Berriot
514e48d3fe
Library can now automatically accept follows
2018-04-15 11:24:46 +02:00
Eliot Berriot
4320fc77b2
Added validation on collection serializers
2018-04-15 11:24:46 +02:00
Eliot Berriot
33972f1f40
Fixed broken uuid migration
2018-04-15 11:24:46 +02:00
Eliot Berriot
e19fbf5436
Exclude federated files from library endpoint
2018-04-15 11:24:46 +02:00
Eliot Berriot
b5ff339efa
We now use a proper user agent including instance version and url during outgoing requests
2018-04-07 16:20:34 +02:00
Eliot Berriot
99200ad077
Merge branch 'federation-follow-request' into 'develop'
...
Federation follow request
See merge request funkwhale/funkwhale!123
2018-04-07 13:55:53 +00:00
Eliot Berriot
bf70fa1f53
Removed now useless private and public keys preferences
2018-04-07 15:53:10 +02:00
Eliot Berriot
e10a82060d
Ensure we delete existing actors to reset private and public keys
2018-04-07 15:39:17 +02:00
Eliot Berriot
9612b1bace
Can now serve track from remote library
2018-04-07 15:34:35 +02:00
Eliot Berriot
b29ca44797
Now store remote library tracks in a dedicated model, this is much simpler
2018-04-07 11:29:40 +02:00
Eliot Berriot
f273faf9de
Added Library model to have more granular federation management
2018-04-06 18:49:29 +02:00
Eliot Berriot
a03f0ffea5
We now have a library browsable via activitypub
2018-04-06 17:59:06 +02:00
Eliot Berriot
393110a7f0
Serializers for paginated collections
2018-04-06 17:58:43 +02:00
Eliot Berriot
4ce9f9bf08
Dedicated permission to access library data via activity pub
2018-04-06 17:58:16 +02:00
Eliot Berriot
b75872866c
Util function to manipulate url params
2018-04-06 17:57:50 +02:00
Eliot Berriot
8db832f03b
Now store source AP track file on track_file
2018-04-06 15:20:53 +02:00
Eliot Berriot
04d710e690
Library can now receive import info from followed instances
2018-04-06 14:53:57 +02:00
Eliot Berriot
80206761a3
Easy and resusable Audio and AudioCollection serializer
2018-04-06 14:33:13 +02:00
Eliot Berriot
679adfe156
See #126 : Added uuid field to all music models
2018-04-06 13:17:26 +02:00
Eliot Berriot
87daa81762
More factories
2018-04-05 23:27:19 +02:00
Eliot Berriot
363acca53d
AudioCollection to import job and track file creation
2018-04-05 23:26:41 +02:00
Eliot Berriot
4d6e894b62
AudioCollection to import job and track file creation
2018-04-05 23:22:28 +02:00
Eliot Berriot
1ca4505e2f
Incremented version number
2018-04-05 16:05:45 +00:00
Eliot Berriot
e0dcb87f15
Follow request approve/refuse logic
2018-04-04 23:12:41 +02:00
Eliot Berriot
cb9309c298
Factorized undo follow
2018-04-04 22:40:57 +02:00
Eliot Berriot
d8f86c4fce
Factorized follow logic between system actors, Library can now accept follows
2018-04-04 19:38:55 +02:00
Eliot Berriot
b833a11fb6
FollowRequest model
2018-04-04 19:38:28 +02:00
Eliot Berriot
3ad1fe17d5
Test bot can now unfollow
2018-04-03 23:25:44 +02:00
Eliot Berriot
81e7f03f77
Now persist actors in database during auth
2018-04-03 23:25:22 +02:00
Eliot Berriot
657bd4b01a
Follow serializer
2018-04-03 23:24:51 +02:00
Eliot Berriot
f19418d2c2
Added follow model and factory
2018-04-03 21:30:15 +02:00
Eliot Berriot
6aa6f1d8f8
Test actor can now follow back
2018-04-03 19:48:50 +02:00
Eliot Berriot
2f6d3ae180
Ensure unicity on actor username and domain
2018-04-03 18:35:08 +02:00
Eliot Berriot
168c4e7d53
system_conf property on Actor instances
2018-04-03 17:36:03 +02:00
Eliot Berriot
a81c92dbf5
Additional setting to control wether music library federation needs approval
2018-04-02 22:43:59 +02:00
Eliot Berriot
48df30dbd8
We now persist system accounts to database
2018-04-02 22:12:28 +02:00
Eliot Berriot
39c5245c1b
Fix #148 : User admin now includes signup and last login dates
2018-04-02 21:08:59 +02:00
Eliot Berriot
28700270bd
Removed factory import
2018-04-02 19:46:25 +02:00
Eliot Berriot
7bb15a3aa1
Merge branch 'federation-inbox' into 'develop'
...
Federation inbox
See merge request funkwhale/funkwhale!121
2018-04-02 17:28:53 +00:00
Eliot Berriot
77c6bd5839
Fixed failing test
2018-04-02 19:15:27 +02:00
Eliot Berriot
a252051351
PoC with receiving /ping from Mastodon and replying pong
2018-04-02 18:07:46 +02:00
Eliot Berriot
3cf1a17087
We are now able to receive a toot and react to it
2018-04-01 22:11:46 +02:00
Eliot Berriot
6fbf8fa44c
Actor factory and fixture
2018-04-01 10:17:06 +02:00
Eliot Berriot
3650c3699b
Minor tweaks (logs, exceptions)
2018-03-31 18:41:53 +02:00
Eliot Berriot
741ab533b1
Added proper header when querying activity pub actor
2018-03-31 18:41:35 +02:00
Eliot Berriot
ee0341ba1a
Ensure we truncate summary
2018-03-31 18:41:15 +02:00
Eliot Berriot
f526f0c1fe
More flexible auth signature factory
2018-03-31 18:41:03 +02:00
Eliot Berriot
e1ebd4988b
Fixed inconsistencies between test and prod requests
2018-03-31 18:40:41 +02:00
Eliot Berriot
b5a4b2ca6a
Added signature authentication on activitypub view
2018-03-31 18:39:32 +02:00
Eliot Berriot
46d40c7ffa
Util function to convert django meta to proper headers
2018-03-31 18:39:10 +02:00
Bat
c4991796e9
Add some pagination to radio details
2018-03-31 16:40:55 +01:00
Eliot Berriot
703d70d544
Use absolute urls
2018-03-31 15:57:29 +02:00
Eliot Berriot
0c8faf83c5
Can now have multiple system actors
...
We also handle webfinger/activity serialization properly
2018-03-31 15:47:21 +02:00
Eliot Berriot
2b9a5ffe18
ActivityPub Actor model
2018-03-31 15:44:35 +02:00
Bat
85aef4422a
Add a detail page for radios
2018-03-31 12:59:45 +01:00
Eliot Berriot
c63b7f929d
Use own requests-http-signing to be compatible with Signature header
2018-03-30 21:59:58 +02:00
Eliot Berriot
74945759cc
Switched from Service to Person for actor representation
2018-03-30 18:34:23 +02:00
Eliot Berriot
abca719d16
More fields on instance actor repr
2018-03-30 18:02:50 +02:00
Eliot Berriot
d8b74b9556
Proper federation namespace and prefix
2018-03-30 18:02:14 +02:00
Eliot Berriot
cde8732dfa
Use proper renderers for activity pub / webfinger
2018-03-29 23:29:56 +02:00
Eliot Berriot
75710638de
Url and views for instance actor and webfinger
2018-03-29 00:00:47 +02:00
Eliot Berriot
e793f8365f
Webfinger utils
2018-03-29 00:00:20 +02:00
Eliot Berriot
90c1d02919
Added FUNKWHALE_HOSTNAME and FEDERATION_HOSTNAME settings
2018-03-29 00:00:01 +02:00
Eliot Berriot
588da6ff33
Can now generate a key pair for the instance
2018-03-28 23:56:44 +02:00
Eliot Berriot
707868d794
Can now fetch public key from actor url
2018-03-28 23:56:44 +02:00
Eliot Berriot
5e901dc5a4
Fixed a bunch of failing tests
2018-03-28 23:54:08 +02:00
Eliot Berriot
85ce220f29
Merge branch 'federation-signing-requests' into 'develop'
...
Federation signing requests
See merge request funkwhale/funkwhale!106
2018-03-26 20:14:28 +00:00
Eliot Berriot
18d8baae34
API Views/serializers/tests for activity ( #141 )
2018-03-25 17:24:08 +02:00
Eliot Berriot
122c39075a
Fixed privacy issue in get_privacy_query utils function
2018-03-25 17:18:22 +02:00
Eliot Berriot
fce5ee0e7f
Renamed listening end_date to creation_date
2018-03-25 17:17:33 +02:00
Eliot Berriot
e99d757b57
Fix #120 : Better error handling during file import
2018-03-25 15:44:48 +02:00
Eliot Berriot
f1cf250e29
Fix #138 : Better handling of utf-8 filenames during file import
2018-03-25 15:40:37 +02:00
Eliot Berriot
4522f5997e
More test cases for request signing and added helpers to verify signature
2018-03-24 16:24:10 +01:00
Eliot Berriot
aa7365b71f
Basic logic for signing/verifying requests
2018-03-24 15:20:15 +01:00
Eliot Berriot
b780bee874
Version bump and changelog
2018-03-21 21:05:03 +01:00
Eliot Berriot
529114c89c
Added missing fields in playlist serializer
2018-03-21 20:56:26 +01:00
Eliot Berriot
71d46e4361
Simplified playlist serializer and ensure update return same payload as detail
2018-03-21 19:03:57 +01:00
Eliot Berriot
6a9a34d244
Can now clear playlist
2018-03-21 12:19:07 +01:00
Eliot Berriot
bf6fe44bed
More filters / ordering option on playlist API
2018-03-21 11:58:11 +01:00
Eliot Berriot
16f631af1a
Performance optimization on playlisttrack serialization
2018-03-20 22:44:28 +01:00
Eliot Berriot
f8b15a3f48
Added API endpoint to insert multiple tracks into playlist
2018-03-20 19:56:42 +01:00
Eliot Berriot
497f81e5ab
Typo in returned api payload
2018-03-20 19:14:45 +01:00
Eliot Berriot
244ebd7ab1
Dropped hard constraint on track indexes and added more tests
2018-03-20 19:14:07 +01:00
Eliot Berriot
f917c5d0c4
Playlist filterset
2018-03-20 15:34:35 +01:00
Eliot Berriot
08b28a7d98
Added playlist tracks count and modification date in API
2018-03-20 15:34:34 +01:00
Eliot Berriot
e87e2654e8
Permissions and db state fixes with new index field
2018-03-20 15:34:34 +01:00
Eliot Berriot
257e67b5a6
New "index" field on playlist tracks, and .insert() metod to manage playlists
2018-03-20 15:34:34 +01:00
Eliot Berriot
8821a1bb43
Removed superfluous mptt requirement
2018-03-20 15:34:33 +01:00
Eliot Berriot
944135e752
Capped number of tracks in playlists
2018-03-20 15:34:33 +01:00
Eliot Berriot
d8486beeb0
Can now list tracks from within playlist endpoint
2018-03-20 15:34:33 +01:00
Eliot Berriot
9a909798e7
Additional permissions checks on playlist views
2018-03-20 15:34:33 +01:00
Eliot Berriot
4f7fa09a78
Playlisttrack factory
2018-03-20 15:34:33 +01:00
Eliot Berriot
367014f70e
Added owner permission to check user has the right to read/update object
2018-03-20 15:34:33 +01:00
Eliot Berriot
3e277aad4f
Added helper to filter queryset by privacy level
2018-03-20 15:34:32 +01:00
Eliot Berriot
2a3f43ecb1
Ensure privacy_level is settable/inherited properly
2018-03-20 15:34:32 +01:00
Eliot Berriot
859f8a0570
Replaced is_public flag by brand new privacy_level field on playlists
2018-03-20 15:34:32 +01:00
Eliot Berriot
9fdbc7b859
factorized privacy_level field
2018-03-20 15:34:32 +01:00
Eliot Berriot
4298c4236e
Fixed #119 : forced redirection to login even with API_AUTHENTICATION_REQUIRED=False
2018-03-15 22:34:20 +01:00
Eliot Berriot
c70ab72bc0
Merge branch '114-exclude-empty-albums' into 'develop'
...
Fix #114 : can now filter artists and albums with no listenable tracks
Closes #114
See merge request funkwhale/funkwhale!83
2018-03-07 22:19:21 +00:00
Eliot Berriot
bfeb86865d
Fix #114 : can now filter artists and albums with no listenable tracks
2018-03-07 23:08:28 +01:00
Eliot Berriot
99a91c1e74
Fix #115 : broken import request admin
2018-03-07 22:36:37 +01:00
Eliot Berriot
ec3e5a4304
Version bump and changelog
2018-03-06 21:56:01 +01:00
Eliot Berriot
20ba6f926a
Merge branch '111-skip-acoustid' into 'develop'
...
Resolve "Allow skip accoustid entirely on music import (CLI)"
Closes #111
See merge request funkwhale/funkwhale!79
2018-03-06 20:54:28 +00:00
Eliot Berriot
dd61dd7416
Fix #112 : missing batch ID in import output
2018-03-06 20:41:39 +01:00
Eliot Berriot
17bda77efb
Fix #111 : allow skipping of acoustid matching
2018-03-06 20:29:32 +01:00
Eliot Berriot
e4c044638b
Fixed 500 error in authentication
2018-03-05 21:43:07 +01:00
Eliot Berriot
2354721cd9
Fixed import crashing when no acoustid found
2018-03-04 18:14:37 +01:00
Eliot Berriot
eef2ff3f9a
Fixed broken daphne and removed useless templates
2018-03-04 16:05:41 +01:00
Eliot Berriot
6011cf2098
Version bump and changelog
2018-03-04 15:16:35 +01:00
Eliot Berriot
1800f7ad17
API endpoint for updating privacy
2018-03-03 11:20:21 +01:00
Eliot Berriot
a6da10be41
API refinements for activity stream
2018-03-01 23:41:51 +01:00
Eliot Berriot
d509c090d3
Basic working poc with favorites send over websocket
2018-03-01 21:51:20 +01:00
Eliot Berriot
e490284511
Use our new event system for track favorites
2018-03-01 20:38:48 +01:00
Eliot Berriot
dd5881f2c6
Founndations for real-time event serialization/subscription/broadcasting
2018-03-01 20:38:20 +01:00
Eliot Berriot
fd7c1e5dd8
Added privacy level for user
2018-03-01 20:36:29 +01:00
Eliot Berriot
691665e3cf
Activity stream representations for user and favorites
2018-03-01 18:38:32 +01:00
Eliot Berriot
5c2ddc56c4
Basic channels middleware for token auth
2018-03-01 18:38:31 +01:00
Eliot Berriot
3b6d474d69
Changelog and version bump
2018-02-28 19:29:31 +01:00
Eliot Berriot
41404a5988
Version bump and changelog
2018-02-27 23:10:23 +01:00
Eliot Berriot
ce45b252cf
Merge branch '80-admins' into 'develop'
...
Fixed #80 : Added admin interface for radios, track files, favorites...
Closes #80
See merge request funkwhale/funkwhale!69
2018-02-27 22:03:53 +00:00
Eliot Berriot
e13ac32370
Fixed #80 : Added admin interface for radios, track files, favorites...
2018-02-27 23:01:55 +01:00
Eliot Berriot
d875f0d070
Fixed #82 : Basic instance states are now available on /about
2018-02-27 22:38:55 +01:00
Eliot Berriot
62d0381f91
Fixed #81 : Search now unaccent letters for queries
2018-02-27 19:56:02 +01:00
Eliot Berriot
db4ae18055
Fixed #88 : Now exclude tracks without file from radio candidates
2018-02-27 19:20:55 +01:00
Eliot Berriot
b5226367a5
Fixed broken import because of missing transaction
2018-02-27 18:12:23 +01:00
Eliot Berriot
84d6e22e67
Version bump and changelog
2018-02-26 21:39:22 +01:00
Eliot Berriot
8c7e943013
Fixed #73 : broken file upload
2018-02-26 18:27:41 +01:00
Eliot Berriot
c415d759e4
Version bump and changelog
2018-02-24 18:07:51 +01:00
Eliot Berriot
8a657a0a9f
Version bump and changelog
2018-02-24 15:37:22 +01:00
Eliot Berriot
cdabb26989
Fix #30 : added instance preferences for name and descriptions
2018-02-24 15:27:51 +01:00
Eliot Berriot
3dd1a20b68
Fix #58 : enabling registrations is now done via a preference
2018-02-24 12:20:42 +01:00
Eliot Berriot
dac47da584
Import request filter
2018-02-22 23:33:59 +01:00
Eliot Berriot
dcb1915a7b
Can now bind batch to request via API
2018-02-22 23:33:44 +01:00
Eliot Berriot
999198b1c5
Serialize user with requests
2018-02-22 22:01:51 +01:00
Eliot Berriot
9d5e07872d
Removed dead code
2018-02-21 00:09:15 +01:00
Eliot Berriot
98b62caa24
Import request viewset, serializer and url
2018-02-21 00:09:15 +01:00
Eliot Berriot
f3d77ef7d9
Update request status based on batch status
2018-02-21 00:09:15 +01:00
Eliot Berriot
b492e133c6
Job signal to update batch status
2018-02-21 00:08:46 +01:00
Eliot Berriot
8900f5581b
ImportRequest factory
2018-02-21 00:03:05 +01:00
Eliot Berriot
3fa7d0009e
Initial import request model
2018-02-21 00:02:48 +01:00
Eliot Berriot
24e2555793
Added status field to import batch, it's synced based on jobs
2018-02-21 00:02:09 +01:00
Eliot Berriot
1cfdf31e00
Can now stream transcoded version of audio tracks \o/
2018-02-18 23:49:42 +01:00
Eliot Berriot
ddea5f1825
Now store track file mimetype in database
2018-02-18 23:46:15 +01:00
Eliot Berriot
a38ca1ede1
Version bump and changelog
2018-02-18 14:48:38 +01:00
Eliot Berriot
50af04345b
Use webpack dev proxy to serve api/media
2018-02-18 14:42:17 +01:00
Eliot Berriot
bb9a614aa7
Added raven front dsn and enabled preference
2018-02-17 21:31:32 +01:00
Eliot Berriot
6152b3bb36
Added API endpoint for listing public instance settings
2018-02-17 21:31:32 +01:00
Eliot Berriot
e4edf55c47
Replaced vue-resource by axios
2018-01-11 21:35:51 +01:00
Eliot Berriot
b5ba6d6205
Version bump and changelog
2018-01-07 23:08:02 +01:00
Eliot Berriot
83f3fdddbb
Version bump and changelog
2018-01-07 22:51:44 +01:00
Eliot Berriot
56c220275b
Version bump and changelog
2018-01-07 22:27:34 +01:00
Eliot Berriot
e7f0c1b88b
Views and logic for custom radios
2018-01-07 22:21:01 +01:00
Eliot Berriot
df63252105
Models and migrations for custom radios
2018-01-07 22:21:01 +01:00
Eliot Berriot
a8f775460c
Version bump and changelog
2017-12-27 23:43:53 +01:00
Eliot Berriot
0b8f61b25d
Version bump and changelog
2017-12-27 23:36:42 +01:00
Eliot Berriot
1c8f055490
Brand new file importer
2017-12-27 23:32:02 +01:00
Eliot Berriot
2e616282fd
Now use import job everywhere, even for direct file imports
2017-12-27 20:30:50 +01:00
Eliot Berriot
5d2dbbc828
Upgraded celery to 4.1, added endpoint logic for fingerprinting audio files
2017-12-27 17:30:09 +01:00
Eliot Berriot
7bbb738793
Version bump and changelog
2017-12-26 21:28:56 +01:00
Eliot Berriot
3c08722e92
Fixed #56 : invalidate tokens on password change, also added change password form
2017-12-26 15:56:04 +01:00
Eliot Berriot
099cdfa99c
Fixed #54 : Now use pytest everywhere \o/
2017-12-24 19:15:21 +01:00
Eliot Berriot
6ad8b212cf
Fixed #50 : ordering for favorites
2017-12-17 20:07:18 +01:00
Eliot Berriot
04c70116c3
See #50 : pagination, search and ordering on artist browsing
2017-12-17 19:42:58 +01:00
Eliot Berriot
89fec1f2cc
Version bump and changelog
2017-12-16 16:37:45 +01:00
Eliot Berriot
5ac9d261c1
Version bump and changelog
2017-12-16 16:15:33 +01:00
Eliot Berriot
e2ff2a1e02
Broken migrations
2017-12-16 15:27:42 +01:00
Eliot Berriot
3396329c19
Fixed reverse import in django.urls
2017-12-16 15:19:33 +01:00
Eliot Berriot
7422ea8357
Update urls app_name
2017-12-16 14:33:10 +01:00
Eliot Berriot
4d09e75262
Update models with on_cascade
2017-12-16 00:36:06 +01:00
Eliot Berriot
7c0b4b9a8f
New-style middlewares
2017-12-15 23:48:45 +01:00
Eliot Berriot
0559b1b1ab
Switched to is_authenticated (no parenthesis)
2017-12-15 23:42:20 +01:00
Eliot Berriot
e9c3eb59a3
Replaced model_mummy with factory_boy
2017-12-15 23:41:04 +01:00
Eliot Berriot
9d81ece007
Version bump and changelog
2017-12-14 23:08:41 +01:00
Eliot Berriot
e90e9dc7aa
Fixed #44 : now bind track file to import job
2017-12-14 23:06:21 +01:00
Eliot Berriot
dcb66690bb
Fixed #7 : store release-group id on Album
2017-12-13 23:36:10 +01:00
Eliot Berriot
4c9469ac54
Merge branch 'feature/22-debian-installation' into 'develop'
...
Initial documentation on debian
See merge request funkwhale/funkwhale!15
2017-12-13 21:57:47 +00:00
Eliot Berriot
4be052c0e7
version bump
2017-12-12 23:54:57 +01:00
Eliot Berriot
926db0f366
Fixed #40 : added artist browsing view
2017-12-12 23:41:47 +01:00
Eliot Berriot
c6d408924b
Added artist filtering on API
2017-12-12 23:27:17 +01:00
Eliot Berriot
4515210162
better pagination on favorites
2017-12-12 22:58:17 +01:00
Eliot Berriot
f74b6b5a7d
version bump
2017-12-11 21:15:44 +01:00
Eliot Berriot
ee1449bdd0
added real file in track factory
2017-12-11 19:32:56 +01:00
Eliot Berriot
d63e7677e4
WIP: Debian installation instructions
2017-07-20 23:30:25 +02:00
Eliot Berriot
6adc8f0cde
Fixed #37 : do not pass recursive flag on import unless needed
2017-07-20 23:25:01 +02:00
Eliot Berriot
05ce2ba721
Changelog && version bump
2017-07-17 22:08:44 +02:00
Eliot Berriot
da4c76ace8
Now return media files with absolute URL
2017-07-11 09:14:54 +02:00
Eliot Berriot
e8eaf6db94
Now display CLI instructions to download a set of tracks
2017-07-11 08:40:54 +02:00
Eliot Berriot
0786c58d3d
Fixed #33 : sort by track position in album in API vy default, also reuse that information on frontend side
2017-07-10 23:24:04 +02:00
Eliot Berriot
0b01bf3038
Changelog && version bump
2017-07-09 11:37:47 +02:00
Eliot Berriot
aa80bd15fa
Fixed #4 : can now import artists and releases with a clean interface :party:
2017-07-09 11:33:33 +02:00
Eliot Berriot
3ccb70d0a8
Fixed #15 again, now check authorization also using query param
2017-06-29 02:27:35 +02:00
Eliot Berriot
bab3981d25
Fixed #15 : Ensure we check for authorization for serving audio files, meaning we don't leak the absolute URL anymore
2017-06-28 23:31:43 +02:00
Eliot Berriot
6e7d0ae243
Fixed #21 : can now import MP3 files via command line, also improved musicbrainz ID handling in import process
2017-06-26 21:56:24 +02:00
Eliot Berriot
70634048c6
Fixed #18 : added v1 namespace under API
2017-06-26 20:19:09 +02:00
Eliot Berriot
edc8794a4f
Fixed #17 : removed a few useless dependencies and files
2017-06-26 18:46:19 +02:00
Eliot Berriot
4cb2f53db3
Fixed #11 : Upgraded to django 1.11
2017-06-26 18:31:22 +02:00
Eliot Berriot
072605dea6
CI builds / pipeline now run tests and build static assets
2017-06-25 18:31:00 +02:00
Eliot Berriot
76f98b74dd
Initial commit that merge both the front end and the API in the same repository
2017-06-23 23:00:42 +02:00