Wykres commitów

309 Commity (develop)

Autor SHA1 Wiadomość Data
Agate f6458fd75a Updated playlist management API 2020-07-27 15:31:49 +02:00
Agate 3d58f87b56 More API docs 2020-07-27 15:01:35 +02:00
Agate 09cefd2f98 Longer sessions 2020-07-18 10:30:36 +02:00
Agate d4028450a9 Plugins infrastructure 2020-07-03 10:59:12 +02:00
Agate 550dbe46cc Support session/cookie based auth, see #1108 2020-05-18 12:03:30 +02:00
Agate ec8dfdb740 Use scoped tokens to load <audio> urls instead of JWT 2020-05-11 10:06:35 +02:00
Tony Wasserka 609dd3b495 Increase image quality of downscaled images from 70 to 95 2020-05-07 19:18:19 +02:00
Agate 6eb049b2d9 Importer updates: watch directories, handle metadata updates 2020-05-07 09:55:29 +02:00
Agate e8efa4213a
Fix #1085: Make URL-building logic more resilient against reverse proxy misconfiguration 2020-05-04 12:02:08 +02:00
Agate 5d5c2b9438
Fixed broken cacheops 2020-04-20 17:20:51 +02:00
Agate 13d0811635 Documentation for .env variables 2020-04-20 13:48:19 +02:00
Satsuki Yanagi fa60074b68 Add support custom domain for S3 storage 2020-04-10 09:39:22 +02:00
Eliot Berriot b07bd83fa1
See #1039: resend confirmation email on login if email is unverified 2020-04-01 15:34:13 +02:00
Eliot Berriot 93f2c9f83c
Fix #1039: setting to enforce email signup verification 2020-04-01 14:34:56 +02:00
Eliot Berriot 7435167361
See #170: fetch channel outbox on discovery/detail 2020-03-31 16:22:11 +02:00
Eliot Berriot e313fcd033 Resolve "Screening for signups" 2020-03-18 11:57:33 +01:00
Eliot Berriot 21972d9630
See #170: fixed several feed parsing issues, again 2 2020-03-13 16:16:47 +01:00
Eliot Berriot deb1f35779 See #170: subscribe to 3d-party RSS feeds in Funkwhale 2020-03-13 12:16:51 +01:00
Eliot Berriot d9afed5067 Fix #1038: Federated reports 2020-03-11 11:39:55 +01:00
Eliot Berriot b166182762 Resolve "Support browsing a specific library content" 2020-03-04 22:18:28 +01:00
Eliot Berriot c2eeee5eb1 See #170: fetching remote objects 2020-03-02 17:23:03 +01:00
Eliot Berriot 95c1e45f4b
Fixed websocket error under django 3 2020-02-25 17:24:23 +01:00
Eliot Berriot e59cc33378 First round of improvements to channel management:
- use modals
- less proeminent button
- field styling/labels
2020-02-23 15:31:03 +01:00
Eliot Berriot 14d5b0c69c
Revert to apline:3.11 to stay on Python 3.7 (3.8 has issues with channels) 2020-02-18 15:20:15 +01:00
Eliot Berriot fa801f9ea7
Fixed error 500 when rendering markdown 2020-02-17 09:51:33 +01:00
Eliot Berriot 95497e76ac See #170: channels ui (listeners) 2020-02-05 15:06:07 +01:00
Eliot Berriot a4faf44540
See #170: added proper meta and support embed for channels 2020-01-30 15:47:45 +01:00
Eliot Berriot b22b9c83b0
See #170: now record downloads count on tracks/uploads 2020-01-20 13:59:12 +01:00
Eliot Berriot 959faf25ad
See #170: added missing /api/v1/subscriptions endpoint 2020-01-15 15:25:33 +01:00
Ciarán Ainsworth 2302dc0581 Set up initial configuration for installing
Set up player config for mobile control
2020-01-08 12:16:41 +01:00
Eliot Berriot 2b989576a1
Increased default throttling for subsonic endpoint 2020-01-06 10:54:00 +01:00
Eliot Berriot 9d73a77f7e
Use a dedicated scope for throttling subsonic to avoid intrusive rate-limiting 2020-01-06 09:55:58 +01:00
Eliot Berriot 57949c02c1 Revert "Revert "Fix #994: use PostgreSQL full-text-search""
This reverts commit 7b0db234e2.
2019-12-18 11:26:59 +01:00
Eliot Berriot aea8e4fc59 Resolve "Tagging artists/albums genres when importing music files" 2019-12-18 07:52:09 +01:00
Eliot Berriot 7b0db234e2
Revert "Fix #994: use PostgreSQL full-text-search"
This reverts commit b3d8d6a4da.
2019-12-17 10:57:05 +01:00
Eliot Berriot b3d8d6a4da
Fix #994: use PostgreSQL full-text-search 2019-12-16 17:46:32 +01:00
Eliot Berriot 6c06b48bff
Make nodeinfo refresh task schedule configurable 2019-12-11 10:50:04 +01:00
Eliot Berriot c4334454dc
Added django-silk for easier local debugging / profiling 2019-11-28 10:24:08 +01:00
Eliot Berriot 8a9f7845d4
Fix #947: Make media and static files serving more reliable when reverse proxy X_FORWARDED_* headers are incorrect 2019-11-27 15:05:50 +01:00
Eliot Berriot 6bbe48598e See #170: exclude by default all channels-related entities from /artists, /albums and /tracks endpoints results, for backward compatibility 2019-11-25 09:49:49 +01:00
Eliot Berriot c84396e669 Attachments 2019-11-25 09:49:06 +01:00
Morgan Kesler 77ff3c2ff2 Add direct bind option for LDAP authentication 2019-11-05 11:59:36 +01:00
Eliot Berriot cceade4abb Merge branch 'audio-denormalization' into 'master'
Audio denormalization / Performance enhancement in music API

See merge request funkwhale/funkwhale!939
2019-10-28 09:04:42 +01:00
Eliot Berriot ae0f7588e4
Disabled cacheops by default 2019-10-25 10:23:13 +02:00
Eliot Berriot cad4c9f923
Fixed broken user login when cacheops is enabled 2019-10-25 10:22:40 +02:00
Eliot Berriot d224f74f5d Merge branch 'api-serializers-enhancements' into 'master'
Api serializers enhancements

See merge request funkwhale/funkwhale!941
2019-10-24 11:33:02 +02:00
Eliot Berriot 5623b6d88b
Added profiling middleware (enable locally by adding ?prof param to url) 2019-10-22 10:58:37 +02:00
Eliot Berriot 4e7f1e63d2
Denormalized audio permission logic in a separate table to enhance performance 2019-10-22 00:13:25 +02:00
Eliot Berriot b974568e31
Added django-cacheops to cache expensive count queries 2019-10-21 23:55:27 +02:00
Eliot Berriot 28b334ad33
Reduce DB connection leaks 2019-10-17 15:17:26 +02:00
Eliot Berriot 01223afa80 Resolve "Add optional donation/contribution link in-app" 2019-09-23 11:30:25 +02:00
Eliot Berriot f44abfecfb Fix #883: Prevent usage of too weak passwords 2019-09-21 16:11:08 +02:00
Eliot Berriot d28bf65d00 See #261: Added a rate-limiting (throttling system) to limit the number of requests handled per user/IP 2019-09-17 11:23:59 +02:00
Eliot Berriot c9a9615be8 See #890: web UI and email notifications on new reports 2019-09-13 06:09:48 +02:00
Eliot Berriot e133130176 Playlist embed 2019-09-12 09:48:28 +02:00
Eliot Berriot 4a277c17bb
Added "refresh=true" API param to artist, track and album detail to retrieve up-to-date data if needed 2019-07-22 12:16:47 +02:00
Eliot Berriot 49978081b0
See #880: added XSS filter and content-type nosniff headers 2019-07-18 10:21:54 +02:00
Eliot Berriot 039856688f
See #880: fixed missing x-frame-options=Sameorigin header 2019-07-18 10:21:54 +02:00
Eliot Berriot 1b34ae2335
See #432: enforce a maximum number of tags per entity 2019-07-15 11:53:58 +02:00
Eliot Berriot d39cfab283
Increase the security of JWT token generation by using DJANGO_SECRET_KEY as well as user-specific salt for the signature 2019-07-13 16:02:10 +02:00
Eliot Berriot 9f3076f4db
See #432: API endpoint to query tags 2019-07-09 16:03:41 +02:00
Eliot Berriot 6dde4b73cd Implement tag models 2019-07-08 15:26:14 +02:00
Eliot Berriot 53b826c81a
Fix #877: Ensure API urls answer with and without a trailing slash 2019-07-02 14:31:47 +02:00
Eliot Berriot 8f261f96e9
Merge branch 'master' into develop 2019-06-28 10:38:52 +02:00
Eliot Berriot bfff79301d Fix #867: Added a SUBSONIC_DEFAULT_TRANSCODING_FORMAT env var to support clients that don't provide the format parameter 2019-06-28 09:59:57 +02:00
Eliot Berriot aa368ec5eb
Hugh logging………… 2019-06-24 15:57:01 +02:00
Eliot Berriot fd522bc0de
Fixed some logging issues 2019-06-24 15:32:35 +02:00
Eliot Berriot b43bf42efc
Revert "Fixed broken logging"
This reverts commit 68b21d706c.
2019-06-24 15:31:11 +02:00
Eliot Berriot 68b21d706c
Fixed broken logging 2019-06-24 15:30:17 +02:00
Eliot Berriot 08262529ec MRF / Dropping of incoming/outgoing messages based on allow-list 2019-06-20 10:27:07 +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
Ciaran Ainsworth 2600631528 Added variables to connect to Amazon S3 directly 2019-05-10 13:33:03 +01:00
Eliot Berriot 8db9ec979e
Fix #824: Fixed invalid OEmbed URL when using a local FUNKWHALE_SPA_HTML_ROOT 2019-05-09 12:02:08 +02:00
Eliot Berriot 86269c1b07
Can now serve audio content directly from S3 2019-05-09 11:43:35 +02:00
Eliot Berriot c8fcf1b0d9
Support oauth token in URL 2019-05-03 12:30:57 +02:00
Eliot Berriot 0be93ec05b
Fix #563: unplayable radios for anonymous users 2019-05-02 10:05:20 +02:00
Eliot Berriot 6135d427e7
Fixed some issues 2019-04-24 12:56:15 +02:00
Eliot Berriot 101ae27885
Fix #565: store media files in S3 bucket 2019-04-23 18:01:42 +02:00
Eliot Berriot b42dfb71d1
Keep persistent connections to the database instead of recreating a new one for each request 2019-04-19 14:29:43 +02:00
Eliot Berriot 84e2f0af9f
See #689: added a task to refresh nodeinfo data on known domain periodically 2019-04-11 11:14:27 +02:00
Eliot Berriot 63c3c22534
Fix #783: migration issue on develop 2019-04-04 16:05:34 +02:00
Eliot Berriot 4c13d47387 Resolve "Implement a Oauth provider in Funkwhale" 2019-03-25 17:02:51 +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 c395076fce Resolve "Use cookies instead of local storage for auth in Web UI" 2019-03-13 16:50:49 +01:00
Eliot Berriot e0c5ffcb16 [EPIC] Audio metadata update - UI / API 2019-02-28 09:31:04 +01:00
Eliot Berriot bdf83bd8ff Resolve "Hide an artist in the UI" 2019-02-14 10:49:06 +01:00
Eliot Berriot 253f026dc0 System actor 2019-01-30 11:54:43 +01:00
Eliot Berriot 5fe30cf59b
Fix #658: Support blind key rotation in HTTP Signatures 2019-01-11 15:39:33 +01:00
Eliot Berriot a6fafad34f
Removed unused whitenoise dependency and wsgi module 2019-01-11 14:10:02 +01:00
Eliot Berriot fe03d08a8e
Removed unused acoustid dependency / logic 2019-01-11 14:10:02 +01:00
Eliot Berriot 14392ebb0c
Updated rest framework to 3.9 2019-01-11 14:10:02 +01:00
Eliot Berriot 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 81e7b900fe
Fixed https url-reversing issue in development 2019-01-10 11:55:48 +01:00
Eliot Berriot 993a0092c2
Fixed broken debug-toolbar when jquery was not included on page 2019-01-10 11:11:31 +01:00
Eliot Berriot 0bc9bb65b0
Model, view and serializer for instance-level policies 2019-01-07 09:45:53 +01:00
Eliot Berriot b6902009ac
Use cache session engine to reduce load on DB 2019-01-04 14:15:07 +01:00
Eliot Berriot 67de32ccc2
Removed 2 DB queries per request when user is authenticated 2019-01-04 13:52:36 +01:00
Eliot Berriot 7657db4212
Fix #648: Improved test suite speed by reducing / disabling expensive operations 2019-01-04 11:47:23 +01:00
Eliot Berriot 7ac3bb98da
Moved actor domain to a dedicated table 2018-12-27 20:33:11 +01:00
Eliot Berriot d27ea30b26
Fix #640: support connecting with to a password protected redis server 2018-12-20 17:36:32 +01:00
Eliot Berriot 9220b2f0f1
See #578: added opengraph and oembed data on artist / album / track urls 2018-12-19 15:04:33 +01:00
Eliot Berriot e5b46402f8 Fix #308: Licenses 2018-12-04 14:13:37 +00:00
Eliot Berriot 8679edb160
Fix #626: Load env file in config/.env automatically to avoid sourcing it by hand 2018-11-28 19:56:56 +01:00
Eliot Berriot 409b076c23
Removed the need to specify the DJANGO_ALLOWED_HOSTS variable 2018-11-25 18:40:56 +01:00
Eliot Berriot 8489c79c89
See #272: clean transcoding files task 2018-10-24 19:44:31 +02: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 62c98b2386
See #542: Removed import requests code 2018-10-01 19:16:47 +02:00
Eliot Berriot f5373a9dbf
Cleanup unused code 2018-09-28 22:49:59 +02:00
Eliot Berriot e49a460203 Audio federation 2018-09-22 12:29:30 +00:00
Eliot Berriot 2ea21994ee Resolve "Per-user libraries" (use !368 instead) 2018-09-06 18:35:02 +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
Joshua M. Boniface 4ce46ff2a0 Implement LDAP authentication 2018-08-22 18:10:39 +00:00
Eliot Berriot 13a1c6daac
Fixed #487: typos in scheduled tasks configuration 2018-08-19 16:25:42 +02:00
Eliot Berriot ba76fe9f49
Apply restrictions to username characters during signup 2018-07-22 13:05:43 +02:00
Eliot Berriot 3a94462bd6
Removed django-cacheops dependency 2018-07-21 12:57:48 +02:00
Eliot Berriot 27d54ee971 Merge branch 'playlist-perfs' into 'develop'
Use smaller images when possible to increase performance on client-side

See merge request funkwhale/funkwhale!328
2018-07-20 17:24:53 +00:00
Eliot Berriot 979c554b4a
Use cropped covers/avatars to reduce bandwidth use 2018-07-20 19:17:39 +02:00
Eliot Berriot ba5c3bfc90 Update common.py with more blacklisted usernames 2018-07-19 10:49:01 +00:00
Eliot Berriot 99a37dcb7a Resolve "UX, UI : Browse Library" 2018-07-17 11:09:13 +00:00
Eliot Berriot af270f4abd Resolve "An avatar for users" 2018-07-13 12:10:39 +00:00
Eliot Berriot 789bef38cb
See #248: model / migration 2018-06-21 19:28:59 +02:00
Eliot Berriot 2e4f862387
See #212: record user last activity date 2018-06-17 17:53:40 +02:00
Eliot Berriot ed305a2c7c
Fixed broken configure 2018-06-10 18:59:40 +02:00
Eliot Berriot d17ceec1f0
See #297: linting of various, uncommon errors 2018-06-10 12:06:46 +02:00
Eliot Berriot ab80dffeea
See #297: sorted config imports 2018-06-10 11:29:24 +02:00
Eliot Berriot 62ca3bd736
Blacked the code 2018-06-09 15:36:16 +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 14c8073e26
Ensure we can serve images securely locally 2018-06-02 09:17:32 +02:00
Eliot Berriot c7782693bc
See #223: api for listing/managing library files 2018-05-29 00:07:20 +02:00
Eliot Berriot 2569f136b7
Fix #241: autoremove media files on model instance deletion 2018-05-28 22:17:36 +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 155a40e296
Fixed #205: Disabled browsable HTML API in production 2018-05-15 19:06:08 +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 bbd273404a
See #75: initial subsonic implementation that works with http://p.subfireplayer.net 2018-05-08 16:32:07 +02:00
Eliot Berriot 82f5dc20f3
Documentation for missing DEFAULT_FROM_EMAIL setting 2018-05-06 16:23:23 +02:00
Eliot Berriot 4a7105ae7e
Fix #187: documentation and changelog for email configuration 2018-05-06 13:48:23 +02:00
Eliot Berriot 22f0b1a2d8
See #187: API logic for password reset 2018-05-06 11:30:41 +02:00
Eliot Berriot 929b50183a
Now reset cookie on profile fetch, to avoid CSRF bugs 2018-05-06 11:21:36 +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 7222f7b710
See #186: moved PLAYLISTS_MAX_TRACKS to playlists__max_tracks 2018-04-28 05:30:23 +02:00
Eliot Berriot 6dcde77b1e
Avoid fetching Actor object on every request authentication 2018-04-28 00:25:47 +02:00
Eliot Berriot d2c2fb837e
Now support Bearer auth in complement of JWT 2018-04-26 15:17:51 +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 a8bf44a494
Added dedicated settings to manage in-place import 2018-04-21 18:15:29 +02:00
Eliot Berriot a37183f57e
Additional celery beat systemd unit file 2018-04-17 21:26:35 +02:00
Eliot Berriot 6c0a43a0ea
We can now work on federation locally thank to traefik 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 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 393110a7f0
Serializers for paginated collections 2018-04-06 17:58:43 +02:00