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
1937b81699
Fix #196 : In-place imported tracks non-ascii characters don't break reverse-proxy serving
2018-05-10 18:52:00 +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
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
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
23d21b0fdb
Fix #193 : broken federated import
2018-05-07 19:22:09 +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
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
f4899c5387
Fix #176 : Can now relaunch erored jobs and batches
2018-04-28 04:59:47 +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
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
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
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
f31874edf5
Implemented followers notification on import and autoimport
2018-04-17 19:35:57 +02:00
Eliot Berriot
ca02aca327
Ensure follower is approved for listening
2018-04-15 11:25:35 +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
238d849298
Can now disable SSL cerification for external requests
2018-04-15 11:25:31 +02:00
Eliot Berriot
206ae296b6
Ensure timeout in requests
2018-04-15 11:24:47 +02:00
Eliot Berriot
33972f1f40
Fixed broken uuid migration
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
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
8db832f03b
Now store source AP track file on track_file
2018-04-06 15:20:53 +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
5e901dc5a4
Fixed a bunch of failing tests
2018-03-28 23:54:08 +02:00
Eliot Berriot
e99d757b57
Fix #120 : Better error handling during file import
2018-03-25 15:44:48 +02: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
bfeb86865d
Fix #114 : can now filter artists and albums with no listenable tracks
2018-03-07 23:08:28 +01:00
Eliot Berriot
17bda77efb
Fix #111 : allow skipping of acoustid matching
2018-03-06 20:29:32 +01:00
Eliot Berriot
2354721cd9
Fixed import crashing when no acoustid found
2018-03-04 18:14:37 +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
691665e3cf
Activity stream representations for user and favorites
2018-03-01 18:38:32 +01:00
Eliot Berriot
e13ac32370
Fixed #80 : Added admin interface for radios, track files, favorites...
2018-02-27 23:01:55 +01:00
Eliot Berriot
62d0381f91
Fixed #81 : Search now unaccent letters for queries
2018-02-27 19:56:02 +01:00
Eliot Berriot
b5226367a5
Fixed broken import because of missing transaction
2018-02-27 18:12:23 +01:00
Eliot Berriot
8c7e943013
Fixed #73 : broken file upload
2018-02-26 18:27:41 +01:00
Eliot Berriot
dcb1915a7b
Can now bind batch to request via API
2018-02-22 23:33:44 +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
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
50af04345b
Use webpack dev proxy to serve api/media
2018-02-18 14:42:17 +01:00
Eliot Berriot
e4edf55c47
Replaced vue-resource by axios
2018-01-11 21:35:51 +01:00
Eliot Berriot
e7f0c1b88b
Views and logic for custom radios
2018-01-07 22:21:01 +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
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
3396329c19
Fixed reverse import in django.urls
2017-12-16 15:19:33 +01:00
Eliot Berriot
4d09e75262
Update models with on_cascade
2017-12-16 00:36:06 +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
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
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
ee1449bdd0
added real file in track factory
2017-12-11 19:32:56 +01: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
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
4cb2f53db3
Fixed #11 : Upgraded to django 1.11
2017-06-26 18:31:22 +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