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
|
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
|
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
|
9ec47f1ec9
|
Added dosctrings to fixtures
|
2018-04-28 18:39:48 +02:00 |
Eliot Berriot
|
7ad21b7d25
|
Fix #186: moved high-level settings to database preferences
|
2018-04-28 12:28:13 +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
|
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
|
3d6f0b8b2c
|
Fix #183: ensure in place imported files get a proper mimetype
|
2018-04-27 21:10:35 +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
|
6a67bc6fac
|
Fix #171: dedicated endpoint to list import jobs, updated front-end
|
2018-04-22 15:17:06 +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
|
0d3eb96bec
|
Fixed failing tests
|
2018-04-21 16:33:15 +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
|
f55d2b6c9d
|
Updated tests
|
2018-04-17 23:10:46 +02:00 |
Eliot Berriot
|
c17f7eefde
|
Ensure follower is approved to access library
|
2018-04-17 23:08:15 +02:00 |
Eliot Berriot
|
f31874edf5
|
Implemented followers notification on import and autoimport
|
2018-04-17 19:35:57 +02:00 |
Eliot Berriot
|
adcbe8852d
|
Tmpfile fixture
|
2018-04-17 19:35:57 +02:00 |
Eliot Berriot
|
5ee1f18089
|
Fixed failing api test
|
2018-04-15 11:25:35 +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
|
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
|
57bf43bb96
|
API Endpoint to list lirary tracks
|
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
|
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
|
097707dec4
|
Added remote library scanning logic end endpoint
|
2018-04-15 11:24:47 +02:00 |
Eliot Berriot
|
836e813955
|
Typo in test name
|
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
|
4320fc77b2
|
Added validation on collection serializers
|
2018-04-15 11:24:46 +02:00 |
Eliot Berriot
|
6bf4d46362
|
Ensure we don't duplicate libray tracks
|
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
|
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
|
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
|
feab0f98ba
|
Spaces > Tabs
|
2018-04-05 23:27:03 +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
|
e0dcb87f15
|
Follow request approve/refuse logic
|
2018-04-04 23:12:41 +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
|
3ad1fe17d5
|
Test bot can now unfollow
|
2018-04-03 23:25:44 +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
|
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
|
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
|
e1ebd4988b
|
Fixed inconsistencies between test and prod requests
|
2018-03-31 18:40:41 +02:00 |
Eliot Berriot
|
de777764da
|
Fake_request fixture for django requests
|
2018-03-31 18:39:54 +02:00 |
Eliot Berriot
|
46d40c7ffa
|
Util function to convert django meta to proper headers
|
2018-03-31 18:39:10 +02: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
|
22370d1b2c
|
Use pytest-env plugin to manage test settings instead of settings file
|
2018-03-31 14:45:11 +02: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
|
4487eb4cca
|
Ensure cache cleaning in preferences fixture
|
2018-03-30 18:01:52 +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
|
2f473d7570
|
Added requests-mock dependency and fixture
|
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
|
a87a2837db
|
Fixed failing tests
|
2018-03-25 22:34:30 +02:00 |
Eliot Berriot
|
d310628cb5
|
refactored tests, no have __init__ everywhere
|
2018-03-25 22:27:38 +02:00 |
Eliot Berriot
|
18d8baae34
|
API Views/serializers/tests for activity (#141)
|
2018-03-25 17:24:08 +02:00 |
Eliot Berriot
|
1f2e14b20e
|
Use anonymous_user fixture in other tests
|
2018-03-25 17:18:44 +02:00 |
Eliot Berriot
|
2d4003c8c4
|
anonymoususer test fixture
|
2018-03-25 17:17:51 +02:00 |
Eliot Berriot
|
fce5ee0e7f
|
Renamed listening end_date to creation_date
|
2018-03-25 17:17:33 +02:00 |
Eliot Berriot
|
f36a9e2ac9
|
Merge branch '138-import-unicode' into 'develop'
Resolve "Importer chokes on files with bad unicode characters"
Closes #138 and #120
See merge request funkwhale/funkwhale!108
|
2018-03-25 13:46:26 +00: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
|
4b69d64db2
|
Fix #139: We now restrict some usernames from being used during signup
|
2018-03-24 20:31:36 +01: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
|
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
|
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
|
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
|
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
|
d7adaf398f
|
Can now use nodb_factory fixtue in tests for faster tests
|
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
|
639cd5da5b
|
Moved playlist tests in a dedicated directory
|
2018-03-20 15:34:32 +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
|
c0ff34e8b3
|
Fixed failing tests
|
2018-03-03 23:23:42 +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
|
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
|
d875f0d070
|
Fixed #82: Basic instance states are now available on /about
|
2018-02-27 22:38:55 +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
|
8c7e943013
|
Fixed #73: broken file upload
|
2018-02-26 18:27:41 +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
|
dcb1915a7b
|
Can now bind batch to request via API
|
2018-02-22 23:33:44 +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
|
24e2555793
|
Added status field to import batch, it's synced based on jobs
|
2018-02-21 00:02:09 +01:00 |
Eliot Berriot
|
15bdf18705
|
logged in api client
|
2018-02-20 23:59:50 +01:00 |
Eliot Berriot
|
ddea5f1825
|
Now store track file mimetype in database
|
2018-02-18 23:46:15 +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
|
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
|
3c08722e92
|
Fixed #56: invalidate tokens on password change, also added change password form
|
2017-12-26 15:56:04 +01:00 |
Eliot Berriot
|
f1557ac4b9
|
Fixed #57: now refresh jwt token on page refresh
|
2017-12-26 14:47:27 +01:00 |
Eliot Berriot
|
099cdfa99c
|
Fixed #54: Now use pytest everywhere \o/
|
2017-12-24 19:15:21 +01:00 |