pixelfed/CHANGELOG.md

38 KiB

Release Notes

Unreleased

Added

Updated

  • Updated PostComponent, fix remote urls (42716ccc)
  • Updated PostComponent, fix missing like button on comments (132c1dce)

v0.10.9 (2020-04-17)

Added

  • Added Profile Following Search (e3280c11)
  • Added Trusted Devices to Sudo Mode (0c82c970)
  • Added reply modal to posts and timelines (974e6bda)
  • Added remote posts and profiles (95bce31e)
  • Added Labs deprecation page (9b215001)
  • Added new landing page (84e203a9)

Fixed

  • Stories on postgres instances (5ffa71da)

Updated

  • Updated StatusController, restrict edits to 24 hours (ae24433b)
  • Updated RateLimit, add max post edits per hour and day (51fbfcdc)
  • Updated Timeline.vue, move announcements from sidebar to top of timeline (228f5044)
  • Updated lexer autolinker and extractor, add support for mentioned usernames containing dashes, periods and underscore characters (f911c96d)
  • Updated Story apis, move FE to v0 and add v1 for oauth clients (92654fab)
  • Updated robots.txt (25101901)
  • Updated mail panel blade view, fix markdown bug (cbc63b04)
  • Updated self-diagnosis checks (03f808c7)
  • Updated DiscoverController, fixes #2009 (b04c7170)
  • Updated DeleteAccountPipeline, fixes #2016, a bug affecting account deletion.
  • Updated PlaceController, fixes #2017, a postgres bug affecting country pagination in the places directory (dd5fa3a4)
  • Updated confirm email blade view, remove html5 entity that doesn't display properly (aa26fa1d)
  • Updated ApiV1Controller, fix update_credentials endpoint (a73fad75)
  • Updated AdminUserController, add moderation method (a4cf21ea)
  • Updated BaseApiController, invalidate session after account deletion (826978ce)
  • Updated AdminUserController, add account deletion handler (9be19ad8)
  • Updated ContactController, fixes #2042 (c9057e87)
  • Updated Media model, fix remote media preview (9947050b)
  • Updated PostComponent, improve likes modal (664fd272)
  • Updated StoryViewer, preload media (336571d0)
  • Updated StoryCompose, add expand label for lightbox preview (fdf59753)
  • Updated session config, increase session timeout from 2 days to 60 days (b8795271)
  • Updated WebfingerService, cache lookup (8b9faf31)
  • Updated v1 notifications api, fix optional params (4e3c952c)
  • Updated ApiV1Controller, fix unfavourite bug #2088 (3a828522)
  • Updated SharePipeline, fix item relation bug (b5899648)
  • Updated Profile.vue, add v-once to thumbnails to prevent re-render (a54685f6)
  • Updated SearchResults.vue, improve layout (7e41b4ae)
  • Updated PostMenu.vue, fix styling of list-group (4c3b0b7d)
  • Updated PostComponent.vue, update styling (844566b9)
  • Updated NotificationCard.vue, fix share notifications (3cb676b1)
  • Updated PostComponent.vue, remove like count from title, fixes #2091 (6026998c)
  • Updated SearchController, add WebfingerService support (869b4ff7)
  • Updated Profile model, use change_count for version (0eae9f8b)
  • Updated Timeline.vue, add remote post/profile links (d4147083)
  • Updated StoryTimelineComponent, added list prop for new timeline layout (1692a95a)
  • Updated blank layout, add sharedData js (4a293ed9)
  • Updated oauth api, allow multiple redirect_uris. Fixes #2106 (0540a28a)
  • Updated ActivityPub Outbox, fixes #2100 (c84cee5a)
  • Updated ApiV1Controller, fixes #2112 (324ccd0a)
  • Updated StatusTransformer, fixes #2113 (eefa6e0d)
  • Updated InternalApiController, limit remote profile ui to remote profiles (d918a68e)
  • Updated NotificationCard, fix pagination bug #2019 (32beaad5)

v0.10.8 (2020-01-29)

Added

  • Added BANNED_USERNAMES .env var, an optional comma separated string to ban specific usernames from being used (6cdd64c6)
  • Added RestrictedAccess middleware for Restricted Mode (17c1a83d)
  • Added FailedJob garbage collection (5d424f12)
  • Added Password Reset garbage collection (829c41e1)

Fixed

  • Fixed Story Compose bug affecting postgres instances (#1918)
  • Fixed header background bug on MomentUI profiles (#1933)
  • Fixed TRUST_PROXIES configuration (#1941)
  • Fixed settings page default language (4223a11e)
  • Fixed DeleteAccountPipeline bug that did not use proper media paths (578d2f35)
  • Fixed mastoapi StatusTransformer, fix in_reply_to_id cast to string instead of int (6ed00c94)

Updated

  • Updated presenter components, load fallback image on errors (273170c5)
  • Updated Story model, hide json attribute by default (de89403c)
  • Updated compose view, add deprecation notice for v3 (57e155b9)
  • Updated StoryController, orientate story media and strip exif (07a13fcf)
  • Updated admin reports, fixed 404 bug (dbd5c4cf)
  • Updated AdminController, abstracted dashboard stats to AdminStatsService (41abe9d2)
  • Updated StoryCompose component, added upload progress page (2de3c56f)
  • Updated instance config, cleanup and add restricted mode (3be32597)
  • Update RelationshipSettings Controller, fixes #1605 (4d2da2f1)
  • Updated password reset, now expires after 24 hours (829c41e1)
  • Updated nav layout (73249dc2)
  • Updated views with noscript warnings (eaca43a6)

Changed

v0.10.7 (2020-01-07)

Added

  • Added drafts API endpoint for Camera Roll (bad2ecde)
  • Added AccountService (885a1258)
  • Added post embeds (1fecf717)
  • Added profile embeds (fb7a3cf0)
  • Added Force MetroUI labs experiment (#1889)
  • Added Stories, to enable add STORIES_ENABLED=true to .env and run php artisan config:cache && php artisan cache:clear. If opcache is enabled you may need to reload the web server.

Fixed

  • Fixed like and share/reblog count on profiles (86cb7d09)
  • Fixed non federating self boosts (0c59a55e)
  • Fixed CORS issues with API endpoints (6d6f517d)
  • Fixed mixed albums not appearing on timelines (e01dff45)

Changed

  • Removed relationship from AccountTransformer (4d084ac5)
  • Updated notification api endpoint to use NotificationService (f4039ce2) (6ef7597)
  • Update footer to use localization for the Places link (39712714)
  • Updated ComposeModal.vue, added a caption counter. Fixes #1722. (009c6ee8)
  • Updated Notifications to use the NotificationService (f4039ce2)
  • Updated PrivacySettings controller, clear cache after updating (d8d11d7b)
  • Updated BaseApiController, add timestamp to signed media previews for client side cache invalidation (73c08987)
  • Updated AdminInstanceController, remove db transaction from instance scan (5773434a)
  • Updated Help Center view, added outdated warning (0e611d00)
  • Updated language view, added English version of language names (ebb998d2)
  • Updated app.js, added App.utils like .format.count, .filters and .emoji (34c13b6e)
  • Updated CollectionCompose.vue component, fix api namespace change (71ed965c)
  • Updated PostComponent, mark caption sensitive if post is and use util.emoji (35d51215)
  • Updated Profile.vue component, use formatted counts (30f14961)
  • Updated Timeline.vue component, use formatted counts, util.emoji and increase pagination limit to 5 (abfc9fe7)
  • Updated album presenters, use better carousel (31b114cc) (0617fada) (767fc887)
  • Updated Timeline.vue component, remove tap for lightbox as it conflicts with new carousel (96e25ad2)
  • Updated ComposeModal.vue, added album support, editing and UI tweaks (3aaad81e)
  • Updated InternalApiController, increase license limit to 140 to match UI counter (b3c18aec)
  • Updated album carousels, fix height bug (8380822a)
  • Updated MediaController, add timestamp to signed preview url (49efaae9)
  • Updated BaseApiController, uncache verify_credentials method (3fa9ac8b)
  • Updated StatusHashtagService, reduce cached hashtag count ttl from 6 hours to 5 minutes (126886e8)
  • Updated Hashtag.vue component, added formatted posts count (c71f3dd1)
  • Updated FixLikes command, fix postgres support (771f9c46)
  • Updated Settings, hide sponsors feature until re-implemented in Profile UI (c4dd8449)
  • Updated Status view, added video open graph tag support (#1799)
  • Updated AccountTransformer, added local attribute (d2a90f11)
  • Updated Laravel framework from v5.8 to v6.x (3aff6de33)
  • Updated FollowerController to fix bug affecting private profiles (a429d961)
  • Updated StatusTransformer, added local attribute (484bb509)
  • Updated PostComponent, fix bug affecting MomentUI and non authenticated users (7b3fe215)
  • Updated FixUsernames command to allow usernames containing . (e5d77c6d)
  • Updated landing page, add age check (d11e82c3)
  • Updated ApiV1Controller, add mobile_apis to /api/v1/instance endpoint (57407463)
  • Updated PublicTimelineService, add video media scopes (7b00eba3)
  • Updated PublicApiController, add AccountService (5ebd2c8a)
  • Updated CommentController, fix scope bug (45ecad2a)
  • Updated CollectionController, increase limit from 18 to 50. (c2826fd3)

Deprecated

v0.10.6 (2019-09-30)

Added

  • Added /api/v1/accounts/update_credentials endpoint 6afd6970
  • Added /api/v1/accounts/{id}/followers endpoint 41c91cba
  • Added /api/v1/accounts/{id}/following endpoint 607eb51b
  • Added /api/v1/accounts/{id}/statuses endpoint 8ce6c1f2
  • Added /api/v1/accounts/{id}/follow endpoint f3839026
  • Added /api/v1/accounts/{id}/unfollow endpoint fadc96b2
  • Added /api/v1/accounts/relationships endpoint 4b9f7d6b
  • Added /api/v1/accounts/search endpoint b1fccf6d
  • Added /api/v1/blocks endpoint ac9f1bc0
  • Added /api/v1/accounts/{id}/block endpoint c6b1ed97
  • Added /api/v1/accounts/{id}/unblock endpoint 35226c99
  • Added /api/v1/custom_emojis endpoint 6e43431a
  • Added /api/v1/domain_blocks endpoint 83a6313f
  • Added /api/v1/endorsements endpoint 1f16221e
  • Added /api/v1/favourites endpoint b9cc06da
  • Added /api/v1/statuses/{id}/favourite endpoint 4edeba17
  • Added /api/v1/statuses/{id}/unfavourite endpoint 437e18e3
  • Added /api/v1/filters endpoint b3d82edd
  • Added /api/v1/follow_requests endpoint 97269136
  • Added /api/v1/follow_requests/{id}/authorize endpoint 7bdd9b2a
  • Added /api/v1/follow_requests/{id}/reject endpoint 62aa922a
  • Added /api/v1/suggestions endpoint e52aeeed
  • Added /api/v1/lists endpoint 2a106c4e
  • Added /api/v1/accounts/{id}/lists endpoint dba172df
  • Added /api/v1/lists/{id}/accounts endpoint dba172df
  • Added /api/v1/media endpoint 39f3e313
  • Added /api/v1/media/{id} endpoint fcf231f4
  • Added /api/v1/mutes endpoint b280d183
  • Added /api/v1/accounts/{id}/mute endpoint 3e98dce4
  • Added /api/v1/accounts/{id}/unmute endpoint 41c96ddd
  • Added /api/v1/notifications endpoint 39449f36
  • Added /api/v1/timelines/home endpoint cf3405d8
  • Added /api/v1/conversations endpoint 336f9069
  • Added /api/v1/timelines/public endpoint f3eeb9c9
  • Added /api/v1/statuses/{id}/card endpoint 92251208
  • Added /api/v1/statuses/{id}/reblogged_by endpoint 118006ed
  • Added /api/v1/statuses/{id}/favourited_by endpoint 5cdff57d
  • Added POST /api/v1/statuses endpoint 3aa729a3
  • Added DELETE /api/v1/statuses endpoint 0a20b832
  • Added POST /api/v1/statuses/{id}/reblog endpoint 43cef282
  • Added POST /api/v1/statuses/{id}/unreblog endpoint 3147fe5c
  • Added GET /api/v1/timelines/tag/{hashtag} endpoint 2ff53be4

Fixed

  • Update developer settings pages, fix vue bug cd365ab3
  • Update User model, fix filter relationship 5a0c295e

Changed

  • Updated Inbox Accept.Follow to use id of remote object #1715
  • Update StatusTransformer, make spoiler_text non-nullable b66cf9cd
  • Update FollowerController, make follow and unfollow methods public 6237897d
  • Update DiscoverComponent, change api namespace 35275572

Deprecated

  • Removed deprecated AttachmentTransformer, superceeded by MediaTransformer 9b5aac4f

To enable mobile app support

  • Run php artisan passport:keys
  • Add OAUTH_ENABLED=true to .env
  • Run php artisan config:cache

v0.10.5 (2019-09-24)

Added

  • Added software back to AccountTransformer 93c687c7

Fixed

  • Fixed cache bug in privacy and terms pages #1712

Changed

v0.10.4 (2019-09-24)

Added

  • Added Welsh translations #1706
  • Added Api v1 controller 85835f5a
  • Added database migration that adds a language column to the users table c87d8c16
  • Added persistent preferred language 18bc9c30

Fixed

  • Fixed count bug in StatusHashtagService #1694
  • Fixed private account bug #1699
  • Fixed comments on MomentUI posts #1704

Changed

  • Updated EmailService, added new domains #1690
  • Updated quill.js to v1.3.7 #1692
  • Cache ProfileController #1700
  • Updated ComposeUI v4, made cropping optional #1702
  • Updated DiscoverController, limit Loops to local only posts #1703
  • Namespaced internal apis 3c306c5e
  • Updated .env.example with proper remote follow variable 0697f780
  • Updated show all comments view 0a5eaa31
  • Updated language page layout 01fb5af
  • Updated privacy policy page layout a4229d5
  • Updated terms page layout 4f8c5e5
  • Update v1 API, added /api/v1/instance endpoint 951b6fa0 9dc2234b

Deprecated

  • Remove deprecated profile following/followers #1697
  • Remove old comment permalink 05f6598

v0.10.3 (2019-09-08)

Added

  • Append .json to local status urls to view ActivityPub object #1666

Fixed

  • Reverted strict Same-Site Cookies to null to fix 2FA/session expiry #1667
  • Fixed AP errors by storing ActivityPub object id and url #1668 #1683
  • Fixed content warnings that had filter applied #1669

Changed

  • Japanese Translations #1673
  • Occitan Translations #1679
  • Use footer partial on landing page #1681
  • Change admin badge so it doesn't look like a verified badge #1684

Deprecated

  • Personalized Discover has been deprecated due to low use #1670

v0.10.2 (2019-09-06)

Fixed

  • Typo in Inbox prevented proper federation support #1664

v0.10.1 (2019-09-06)

Added

  • Remote follows! Search for an actor URI, send AP Follow, plus handle incoming AP Accept Follow
  • Compose UI v4: a rework of the v3 flow to allow basic cropping and better support future post types
  • Profile badges show if a user is following you or is an admin
  • Show confirmation message when muting or blocking a user from a post
  • Allow "read more" to be disabled on posts #1545
  • Loops! Discover short videos
  • Preliminary support for profile PropertyValue metadata
  • Preliminary support for Direct Messages
  • Places! Run the artisan task import:cities
  • Emails are now validated and banned email domains are disallowed at signup. Artisan task email:bancheck will validate existing users.
  • .env vars REDIS_SCHEME and REDIS_PATH allow for using Redis over a Unix socket instead of TCP #1602
  • .env var IMAGE_DRIVER allows using imagick instead of gd

Fixed

  • Show delete button while composing video posts #1529
  • Show pending follow requests on private profiles
  • Allow muted users to comment on your posts #1537
  • Bugs with carousel cursor and tooltips
  • Collections can now be deleted from collection page
  • Compose modal now indicates album media limits
  • Unlisted and private posts are now delivered
  • Don't show Register link in navbar when registrations are closed

Changed

  • Use vue-masonry for Moment UI layout #1536
  • User post limit changed from 20/hr to 50/hr
  • Better mobile profile layout
  • Dark mode is now a bit bluer
  • Sample nginx.conf in contrib/ now uses HTTPS instead of HTTP. Docs updated to reference this file
  • Updated register form
  • Allow users to edit email after registrations

v0.10.0 (2019-07-17)

Added

  • Collections! Add posts to Collections, similar to categories. #1511
  • Profile donate links: add links to Patreon, Liberapay, and OpenCollective on your profile #1500

Fixed

  • Show correct mode when viewing followers / following

Changed

  • Profile model now uses snowflake id #1502

Removed

  • OStatus legacy code has been removed #1510

v0.9.6 (2019-07-10)

Fixed

  • Hashtag post count off-by-one #1485

v0.9.5 (2019-07-10)

Added

Changed

  • Update SearchController, fix AP verb typo #1387, dc8acf9
  • Update StatusTransformer, increase media cache ttl to 14 days #1387, f35718b
  • Update webpack config, extract vendor librarys #1387, b42db89
  • Update admin statuses view, make table header light #1387, 44afcc7
  • Update settings, move disable/delete to Security Settings #1388, ca0d638
  • Update Installer command #1388, 506dd8b
  • Update UserObserver #1388, 4ee3d10
  • Update AuthLogin listener #1388, c27c751 1e8b092
  • Update Image Optimization to not store EXIF by default #1414
  • Update Settings, hide OAuth/Developer pages when not enabled #1413
  • Update Presenter Components, move alt tag and filters to <img> element #1415
  • Update Api Controllers, add missing caption limit to composePost() and missing is_nsfw attribute to comment queries #1429, 1cff278
  • Update instances admin view, add scan button to find new instances #1436 a94a3ee
  • Update registration page, add links to terms and privacy pages #1488

Removed

v0.9.4 (2019-06-03)

PSA: Due to the removal of Google Recaptcha, a one-time manual intervention is required. Please try the following after installing with composer:

rm -rf bootstrap/cache/*
composer dump-autoload
php artisan config:cache

Added

  • Notification service
  • Notification card on timeline
  • Double-tap to like posts (no animation yet)
  • Moderator Mode for timelines
  • Emoji reaction bar
  • Like and reply to comments
  • Hello Loops! Short videos will now loop and be discoverable from the Discover page.
  • Labs: Optional profile recommendations
  • Labs: Show full caption instead of "read more" button
  • Labs: Simple "distraction-free" timeline -- no buttons, just images and captions

Changed

  • Refactored notification view into a Vue component
  • Preparations for Circles, DMs, and other upcoming functionality
  • Default limit of 7500 follows
  • Default limit of 20 follows per hour
  • Default limit of 5 mentions per comment/caption
  • Default limit of 30 hashtags per comment/caption
  • Default limit of 2 links per comment/caption
  • Thumbnail info overlays on profiles should now scale down to small screens (#1234)
  • Moment UI containers are now properly sized (#1236)
  • Album posts now have contrast for next/prev arrows (#1238)
  • Filter previews now fit the image instead of stretching it (#1239)

Removed

  • Google Recaptcha is no longer supported (#1231)
  • Lightbox has been deprecated in favor of double-tap-to-like; it will return as a dedicated button in the future (#1277)

v0.9.0 (2019-04-17)

Added

  • Allow users to delete existing profile photos.
  • Preliminary support for managing developer tokens, as well as authorizing apps
  • Unmute and unblock users more easily. Profiles now reflect muting/blocking status.
  • Lazy-loading images with loading="lazy", as supported in Blink
  • Added Network Timeline which includes non-local posts
  • Add broadcast events for real-time updates
  • Compose view now shows upload progress bar
  • You can now audit logged-in devices
  • Added WIP installer
  • Moment UI! This alternative profile view is less square and more full-width pictures.

Changed

  • Allow admins to view reported private posts
  • Show sensitivity and privacy/audience in status views
  • Cleanup of legacy code
  • commentsDisabled has been replaced with preliminary support for Litepub Capability Enforcement (LiCE)
  • rel="me" now added to profile websites
  • Posts from locked accounts now default to followers-only

Removed

  • Removed identicons due to SVG compatibility issues with federation. New users will instead be assigned a default avatar.

v0.8.6 (2019-04-06)

Added

  • Add COSTAR - Confirm Object Sentiment Transform and Reduce

COSTAR is a filtering system that allows admins to define environment variables that will dynamically apply certain policies to posts of a defined scope, similar to Pleroma's MRF system.

Scopes:

  • Domain: apply to posts from a specific website
  • Actor: apply to posts from a specific profile/user
  • Keyword: apply to posts containing a specific string

Policies:

  • Block: Default blocks the defined scope
  • CW: Automatically rewrites the scope to apply a warning
  • Unlist: Removes the scope from public timelines