mirror of https://github.com/mastodon/mastodon
				
				
				
			new-coc
				
					main
				
					redesign/link-paste-quote-placeholder
				
					fix/quote-post-privacy
				
					renovate/dotenv-17.x
				
					renovate/shoulda-matchers-7.x-lockfile
				
					refactor/media-modal
				
					stable-4.5
				
					renovate/net-http-0.x
				
					dion/implement-css-theme-tokens-as-theme
				
					dion/implement-css-theme-tokens
				
					renovate/aws-sdk-s3-1.x-lockfile
				
					renovate/ruby-on-rails-monorepo
				
					renovate/major-react-monorepo
				
					dion/add-fetch-all-alert-placeholder
				
					fixes/rename-feed-setting-values
				
					renovate/pino-10.x
				
					stable-4.4
				
					renovate/pino-http-11.x
				
					fixes/allow-quote-empty-text
				
					renovate/eslint-plugin-jsdoc-60.x
				
					stable-4.2
				
					stable-4.3
				
					fixes/apply-filters-to-search-results
				
					renovate/brakeman-7.x-lockfile
				
					feat/donation-modal
				
					feature-link-rel-nopreview
				
					revert-context
				
					feat/thunk-conditional-dispatch
				
					refactor/tanstack-router
				
					fixes/httplog-debug
				
					features/extend-quote-edit-notification
				
					refactor/combine-action-bars
				
					backports/4.4-reserved-usernames
				
					refactor/compose-state
				
					dion/fix-duplicated-scroll-context-logic
				
					feature-preview-fep-b2b8
				
					fixes/cancel-follow-request
				
					feature-thread-pagination
				
					fixes/pending-hashtags-count
				
					hacks/mailer-cutoff
				
					features/ruby-vite-name-lookup
				
					feature-avatar-color-extraction
				
					feature-starter-packs
				
					investigations/e2e-failures
				
					dion/add-mutual-info-to-hover-card
				
					feature-quotes-web
				
					fix-accidental-new-tab-on-scroll
				
					stable-4.1
				
					remove-rails-delegate
				
					debug/ghost-followers-synchronization
				
					feature-streaming-profile
				
					fixes/account-note
				
					fixes/recheck-suspensions
				
					feat/fasp_trends
				
					updates/vips
				
					features/split-in-app-notif
				
					refactor/modal-stack
				
					tests/media-description-modal
				
					fixes/out-of-order-private-posts
				
					fixes/thread-resolve-worker-skip_fetching
				
					replace-oj-with-json
				
					refactor-status-content-typescript
				
					fixes/embed-requestAnimationFrame
				
					features/lock-icon-on-hover-card
				
					feature-admin-report-forward
				
					feature-reports-batch-actions
				
					fix-admin-dashboard-slow
				
					fix-future-date-trend
				
					redesign/content-warning-filters-4.3
				
					fixes/filtered-follows
				
					remove/trendable-provider-attribution
				
					activitypub/summary-over-name
				
					build-stable-nightly
				
					fixes/notification-excerpt-paragraph
				
					fixes/mastodon-setup-task-redis
				
					fixes/regexp-timeout-optional
				
					fixes/small-otp-secret-length-4.1
				
					fixes/small-otp-secret-length-4.2
				
					fixes/dashboard-quick-access-overflow
				
					fixes/middle-column-size
				
					fix-context-socialweb-miscellany
				
					fixes/detect-missing-indexes2
				
					cleanup/simplify-css
				
					feature-post-layout
				
					features/media-description-in-embedded-status
				
					design/notifications-grid
				
					fix-lookup-domain
				
					flaky-conversations-test
				
					fixes/crash-orphaned-notification
				
					fixes/report-links
				
					features/filtered-dismiss-accept-all
				
					feat/clean-up-notifications
				
					fixes/everyone-role-n+1
				
					redesign/notification-request
				
					experimental/notification-groups-api-shape
				
					spike/resolve-urls-on-click
				
					cleanup/drop-atomuri
				
					fixes/dismissing-notification-requests-dismisses-too-much
				
					revert-system-check
				
					feature-redirect
				
					fix-unusable-hashtag
				
					tests/flaky-tests-performance-logs
				
					feature-grouped-notifications-ui
				
					fix-mute-buttons
				
					features/local-preview-cards-2nd-take
				
					fix-conversations-background
				
					revert-severed-relationships-feature
				
					features/local-preview-cards
				
					stable-3.5
				
					stable-4.0
				
					stable-3.4
				
					releases/v3.5.17
				
					releases/v4.1.13
				
					releases/v4.2.5
				
					version/v4.3.0-alpha.1
				
					fix/build-env
				
					feature-color-scheme
				
					revert/follow-back-mutual
				
					gh-readonly-queue/main/pr-28626-1ad908e0c08c236389967d86b4f238f428de9fef
				
					fixes/per-user-authorized-fetch
				
					fixes/import-many-follows-overlap
				
					fix-web-thread-sort
				
					test-new-container-build
				
					fixes/24px-icons
				
					features/registration-invite-api
				
					fixes/service-worker-caching
				
					fixes/account-refresh-link-verification
				
					feature-like
				
					tests/introduce-error
				
					fixes/lint-fix
				
					fixes/object-has-own-polyfill
				
					fixes/audio-passthrough
				
					fixes/audit-log-external-confirmation
				
					features/banners
				
					refactor/search-query-parser
				
					remove-profile-directory
				
					redesign/notification-settings
				
					feature-separate-hashtags
				
					fixes/self-destruct-throttle
				
					fixes/subdomain-block-4.1.6
				
					redesign/hashtag-column-follow-button
				
					feature-trend-highlights
				
					revert-23460-fixes/activitypub-hashtag
				
					pg15
				
					prevent-unauthenticated-access-tag-timeline
				
					support-rich-oembed
				
					fix-caniuselite-lockfile
				
					track_unsalvageable_errors
				
					add-publish-button-text-site-setting
				
					nolan/button-a11y
				
					i18n/manage-translations
				
					deps/shakapacker
				
					rubocop-fixes
				
					react18
				
					stable-3.3
				
					stable-3.2
				
					stable-3.1
				
					stable-3.0
				
					stable-2.9
				
					stable-2.8
				
					stable-2.7
				
					stable-2.5
				
					stable-2.6
				
					stable-2.4
				
			
			
				
					
						v0.1.2
					
				
					
						v0.1.1
					
				
					
						v0.1.0
					
				
					
						v0.6
					
				
					
						v0.7
					
				
					
						v0.8
					
				
					
						v0.9
					
				
					
						v0.9.9
					
				
					
						v1.0
					
				
					
						v1.1
					
				
					
						v1.1.1
					
				
					
						v1.1.2
					
				
					
						v1.2
					
				
					
						v1.2.1
					
				
					
						v1.2.2
					
				
					
						v1.3
					
				
					
						v1.3.1
					
				
					
						v1.3.2
					
				
					
						v1.3.3
					
				
					
						v1.4.1
					
				
					
						v1.4.2
					
				
					
						v1.4.3
					
				
					
						v1.4.4
					
				
					
						v1.4.5
					
				
					
						v1.4.6
					
				
					
						v1.4.7
					
				
					
						v1.4rc1
					
				
					
						v1.4rc2
					
				
					
						v1.4rc3
					
				
					
						v1.4rc4
					
				
					
						v1.4rc5
					
				
					
						v1.4rc6
					
				
					
						v1.5.0
					
				
					
						v1.5.0rc1
					
				
					
						v1.5.0rc2
					
				
					
						v1.5.0rc3
					
				
					
						v1.5.1
					
				
					
						v1.6.0
					
				
					
						v1.6.0rc1
					
				
					
						v1.6.0rc2
					
				
					
						v1.6.0rc3
					
				
					
						v1.6.0rc4
					
				
					
						v1.6.0rc5
					
				
					
						v1.6.1
					
				
					
						v2.0.0
					
				
					
						v2.0.0rc1
					
				
					
						v2.0.0rc2
					
				
					
						v2.0.0rc3
					
				
					
						v2.0.0rc4
					
				
					
						v2.1.0
					
				
					
						v2.1.0rc1
					
				
					
						v2.1.0rc2
					
				
					
						v2.1.0rc3
					
				
					
						v2.1.0rc4
					
				
					
						v2.1.0rc5
					
				
					
						v2.1.0rc6
					
				
					
						v2.1.1
					
				
					
						v2.1.2
					
				
					
						v2.1.3
					
				
					
						v2.2.0
					
				
					
						v2.2.0rc1
					
				
					
						v2.2.0rc2
					
				
					
						v2.3.0
					
				
					
						v2.3.0rc1
					
				
					
						v2.3.0rc2
					
				
					
						v2.3.0rc3
					
				
					
						v2.3.1
					
				
					
						v2.3.1rc1
					
				
					
						v2.3.1rc2
					
				
					
						v2.3.1rc3
					
				
					
						v2.3.2
					
				
					
						v2.3.2rc1
					
				
					
						v2.3.2rc2
					
				
					
						v2.3.2rc3
					
				
					
						v2.3.2rc4
					
				
					
						v2.3.2rc5
					
				
					
						v2.3.3
					
				
					
						v2.4.0
					
				
					
						v2.4.0rc1
					
				
					
						v2.4.0rc2
					
				
					
						v2.4.0rc3
					
				
					
						v2.4.0rc4
					
				
					
						v2.4.0rc5
					
				
					
						v2.4.1
					
				
					
						v2.4.1rc1
					
				
					
						v2.4.1rc2
					
				
					
						v2.4.1rc3
					
				
					
						v2.4.1rc4
					
				
					
						v2.4.2
					
				
					
						v2.4.2rc1
					
				
					
						v2.4.2rc2
					
				
					
						v2.4.2rc3
					
				
					
						v2.4.3
					
				
					
						v2.4.3rc1
					
				
					
						v2.4.3rc2
					
				
					
						v2.4.3rc3
					
				
					
						v2.4.4
					
				
					
						v2.4.5
					
				
					
						v2.5.0
					
				
					
						v2.5.0rc1
					
				
					
						v2.5.0rc2
					
				
					
						v2.5.1
					
				
					
						v2.5.2
					
				
					
						v2.6.0
					
				
					
						v2.6.0rc1
					
				
					
						v2.6.0rc2
					
				
					
						v2.6.0rc3
					
				
					
						v2.6.0rc4
					
				
					
						v2.6.1
					
				
					
						v2.6.2
					
				
					
						v2.6.3
					
				
					
						v2.6.4
					
				
					
						v2.6.5
					
				
					
						v2.7.0
					
				
					
						v2.7.0rc1
					
				
					
						v2.7.0rc2
					
				
					
						v2.7.0rc3
					
				
					
						v2.7.1
					
				
					
						v2.7.2
					
				
					
						v2.7.3
					
				
					
						v2.7.4
					
				
					
						v2.8.0
					
				
					
						v2.8.0rc1
					
				
					
						v2.8.0rc2
					
				
					
						v2.8.0rc3
					
				
					
						v2.8.1
					
				
					
						v2.8.2
					
				
					
						v2.8.3
					
				
					
						v2.8.4
					
				
					
						v2.9.0
					
				
					
						v2.9.0rc1
					
				
					
						v2.9.0rc2
					
				
					
						v2.9.1
					
				
					
						v2.9.2
					
				
					
						v2.9.3
					
				
					
						v2.9.4
					
				
					
						v3.0.0
					
				
					
						v3.0.0rc1
					
				
					
						v3.0.0rc2
					
				
					
						v3.0.0rc3
					
				
					
						v3.0.1
					
				
					
						v3.0.2
					
				
					
						v3.1.0
					
				
					
						v3.1.0rc1
					
				
					
						v3.1.0rc2
					
				
					
						v3.1.1
					
				
					
						v3.1.2
					
				
					
						v3.1.3
					
				
					
						v3.1.4
					
				
					
						v3.1.5
					
				
					
						v3.2.0
					
				
					
						v3.2.0rc1
					
				
					
						v3.2.0rc2
					
				
					
						v3.2.1
					
				
					
						v3.2.2
					
				
					
						v3.3.0
					
				
					
						v3.3.0rc1
					
				
					
						v3.3.0rc2
					
				
					
						v3.3.0rc3
					
				
					
						v3.3.1
					
				
					
						v3.3.2
					
				
					
						v3.3.3
					
				
					
						v3.4.0
					
				
					
						v3.4.0rc1
					
				
					
						v3.4.0rc2
					
				
					
						v3.4.1
					
				
					
						v3.4.10
					
				
					
						v3.4.2
					
				
					
						v3.4.3
					
				
					
						v3.4.4
					
				
					
						v3.4.5
					
				
					
						v3.4.6
					
				
					
						v3.4.7
					
				
					
						v3.4.8
					
				
					
						v3.4.9
					
				
					
						v3.5.0
					
				
					
						v3.5.0rc1
					
				
					
						v3.5.0rc2
					
				
					
						v3.5.0rc3
					
				
					
						v3.5.1
					
				
					
						v3.5.10
					
				
					
						v3.5.11
					
				
					
						v3.5.12
					
				
					
						v3.5.13
					
				
					
						v3.5.14
					
				
					
						v3.5.15
					
				
					
						v3.5.16
					
				
					
						v3.5.17
					
				
					
						v3.5.18
					
				
					
						v3.5.19
					
				
					
						v3.5.2
					
				
					
						v3.5.3
					
				
					
						v3.5.4
					
				
					
						v3.5.5
					
				
					
						v3.5.6
					
				
					
						v3.5.7
					
				
					
						v3.5.8
					
				
					
						v3.5.9
					
				
					
						v4.0.0
					
				
					
						v4.0.0rc1
					
				
					
						v4.0.0rc2
					
				
					
						v4.0.0rc3
					
				
					
						v4.0.0rc4
					
				
					
						v4.0.1
					
				
					
						v4.0.10
					
				
					
						v4.0.11
					
				
					
						v4.0.12
					
				
					
						v4.0.13
					
				
					
						v4.0.14
					
				
					
						v4.0.15
					
				
					
						v4.0.2
					
				
					
						v4.0.3
					
				
					
						v4.0.4
					
				
					
						v4.0.5
					
				
					
						v4.0.6
					
				
					
						v4.0.7
					
				
					
						v4.0.8
					
				
					
						v4.0.9
					
				
					
						v4.1.0
					
				
					
						v4.1.0rc1
					
				
					
						v4.1.0rc2
					
				
					
						v4.1.0rc3
					
				
					
						v4.1.1
					
				
					
						v4.1.10
					
				
					
						v4.1.11
					
				
					
						v4.1.12
					
				
					
						v4.1.13
					
				
					
						v4.1.14
					
				
					
						v4.1.15
					
				
					
						v4.1.16
					
				
					
						v4.1.17
					
				
					
						v4.1.18
					
				
					
						v4.1.19
					
				
					
						v4.1.2
					
				
					
						v4.1.20
					
				
					
						v4.1.21
					
				
					
						v4.1.22
					
				
					
						v4.1.23
					
				
					
						v4.1.24
					
				
					
						v4.1.25
					
				
					
						v4.1.3
					
				
					
						v4.1.4
					
				
					
						v4.1.5
					
				
					
						v4.1.6
					
				
					
						v4.1.7
					
				
					
						v4.1.8
					
				
					
						v4.1.9
					
				
					
						v4.2.0
					
				
					
						v4.2.0-beta1
					
				
					
						v4.2.0-beta2
					
				
					
						v4.2.0-beta3
					
				
					
						v4.2.0-rc1
					
				
					
						v4.2.0-rc2
					
				
					
						v4.2.1
					
				
					
						v4.2.10
					
				
					
						v4.2.11
					
				
					
						v4.2.12
					
				
					
						v4.2.13
					
				
					
						v4.2.14
					
				
					
						v4.2.15
					
				
					
						v4.2.16
					
				
					
						v4.2.17
					
				
					
						v4.2.18
					
				
					
						v4.2.19
					
				
					
						v4.2.2
					
				
					
						v4.2.20
					
				
					
						v4.2.21
					
				
					
						v4.2.22
					
				
					
						v4.2.23
					
				
					
						v4.2.24
					
				
					
						v4.2.25
					
				
					
						v4.2.26
					
				
					
						v4.2.27
					
				
					
						v4.2.3
					
				
					
						v4.2.4
					
				
					
						v4.2.5
					
				
					
						v4.2.6
					
				
					
						v4.2.7
					
				
					
						v4.2.8
					
				
					
						v4.2.9
					
				
					
						v4.3.0
					
				
					
						v4.3.0-beta.1
					
				
					
						v4.3.0-beta.2
					
				
					
						v4.3.0-rc.1
					
				
					
						v4.3.1
					
				
					
						v4.3.10
					
				
					
						v4.3.11
					
				
					
						v4.3.12
					
				
					
						v4.3.13
					
				
					
						v4.3.14
					
				
					
						v4.3.2
					
				
					
						v4.3.3
					
				
					
						v4.3.4
					
				
					
						v4.3.5
					
				
					
						v4.3.6
					
				
					
						v4.3.7
					
				
					
						v4.3.8
					
				
					
						v4.3.9
					
				
					
						v4.4.0
					
				
					
						v4.4.0-beta.1
					
				
					
						v4.4.0-beta.2
					
				
					
						v4.4.0-rc.1
					
				
					
						v4.4.1
					
				
					
						v4.4.2
					
				
					
						v4.4.3
					
				
					
						v4.4.4
					
				
					
						v4.4.5
					
				
					
						v4.4.6
					
				
					
						v4.4.7
					
				
					
						v4.4.8
					
				
					
						v4.5.0-beta.1
					
				
					
						v4.5.0-beta.2
					
				
					
						v4.5.0-rc.1
					
				
					
						v4.5.0-rc.2
					
				
			
		${ noResults }
		
	
		
			7 Commits (4bc625166e381da15aea667b968e186c11be0217)
		
	
	
		
	
	| Author | SHA1 | Message | Date | 
|---|---|---|---|
| 
							
							
								 | 
						
							
							
							
								
								
							
							
								
							
								4bc625166e
								
									 | 
						
							
							
								
								Fix bug in relationships API introduced by #6482 (#6527)
							
							
							
							
							
							
							
							It was merge when it needed to be deep_merge. And added some tests  | 
						
							8 years ago | 
| 
							
							
								 | 
						4de211b80a | 
							
							
								
								Break out nested relationship API keys (#5887)
							
							
							
							
							
							
							
							* Break out nested relationship API keys This closes #5856 by restoring the existing behavior of the `muting` and `following` keys (returning booleans rather than truthy or false). It adds `showing_reblogs` and `muting_notifications` keys: * `showing_reblogs` returns true if: 1. You've requested to follow the user, with reblogs shown, or 2. You are following the user, with reblogs shown. * `muting_notifications` returns true if you have muted the user and their notifications as well. * Rubocop fix * Fix pulling reblog/mute status from relationships I could swear this had passed tests before, but apparently not. Works now. * More test fixes Really, you'd expect this to be more straightforward.  | 
						
							8 years ago | 
| 
							
							
								 | 
						eeaec39888 | 
							
							
								
								Allow hiding of reblogs from followed users (#5762)
							
							
							
							
							
							
							
							* Allow hiding of reblogs from followed users
This adds a new entry to the account menu to allow users to hide
future reblogs from a user (and then if they've done that, to show
future reblogs instead).
This does not remove or add historical reblogs from/to the user's
timeline; it only affects new statuses.
The API for this operates by sending a "reblogs" key to the follow
endpoint. If this is sent when starting a new follow, it will be
respected from the beginning of the follow relationship (even if
the follow request must be approved by the followee). If this is
sent when a follow relationship already exists, it will simply
update the existing follow relationship. As with the notification
muting, this will now return an object ({reblogs: [true|false]}) or
false for each follow relationship when requesting relationship
information for an account. This should cause few issues due to an
object being truthy in many languages, but some modifications may
need to be made in pickier languages.
Database changes: adds a show_reblogs column (default true,
non-nullable) to the follows and follow_requests tables. Because
these are non-nullable, we use the existing MigrationHelpers to
perform this change without locking those tables, although the
tables are likely to be small anyway.
Tests included.
See also <https://github.com/glitch-soc/mastodon/pull/212>.
* Rubocop fixes
* Code review changes
* Test fixes
This patchset closes #648 and resolves #3271.
* Rubocop fix
* Revert reblogs defaulting in argument, fix tests
It turns out we needed this for the same reason we needed it in muting:
if nil gets passed in somehow (most usually by an API client not passing
any value), we need to detect and handle it.
We could specify a default in the parameter and then also catch nil, but
there's no great reason to duplicate the default value.
							
						 | 
						
							8 years ago | 
| 
							
							
								 | 
						669fe9ee06 | 
							
							
								
								Change IDs to strings rather than numbers in API JSON output (#5019)
							
							
							
							
							
							
							
							* Fix JavaScript interface with long IDs Somewhat predictably, the JS interface handled IDs as numbers, which in JS are IEEE double-precision floats. This loses some precision when working with numbers as large as those generated by the new ID scheme, so we instead handle them here as strings. This is relatively simple, and doesn't appear to have caused any problems, but should definitely be tested more thoroughly than the built-in tests. Several days of use appear to support this working properly. BREAKING CHANGE: The major(!) change here is that IDs are now returned as strings by the REST endpoints, rather than as integers. In practice, relatively few changes were required to make the existing JS UI work with this change, but it will likely hit API clients pretty hard: it's an entirely different type to consume. (The one API client I tested, Tusky, handles this with no problems, however.) Twitter ran into this issue when introducing Snowflake IDs, and decided to instead introduce an `id_str` field in JSON responses. I have opted to *not* do that, and instead force all IDs to 64-bit integers represented by strings in one go. (I believe Twitter exacerbated their problem by rolling out the changes three times: once for statuses, once for DMs, and once for user IDs, as well as by leaving an integer ID value in JSON. As they said, "If you’re using the `id` field with JSON in a Javascript-related language, there is a very high likelihood that the integers will be silently munged by Javascript interpreters. In most cases, this will result in behavior such as being unable to load or delete a specific direct message, because the ID you're sending to the API is different than the actual identifier associated with the message." [1]) However, given that this is a significant change for API users, alternatives or a transition time may be appropriate. 1: https://blog.twitter.com/developer/en_us/a/2011/direct-messages-going-snowflake-on-sep-30-2011.html * Additional fixes for stringified IDs in JSON These should be the last two. These were identified using eslint to try to identify any plain casts to JavaScript numbers. (Some such casts are legitimate, but these were not.) Adding the following to .eslintrc.yml will identify casts to numbers: ~~~ no-restricted-syntax: - warn - selector: UnaryExpression[operator='+'] > :not(Literal) message: Avoid the use of unary + - selector: CallExpression[callee.name='Number'] message: Casting with Number() may coerce string IDs to numbers ~~~ The remaining three casts appear legitimate: two casts to array indices, one in a server to turn an environment variable into a number. * Back out RelationshipsController Change This was made to make a test a bit less flakey, but has nothing to do with this branch. * Change internal streaming payloads to stringified IDs as well Per https://github.com/tootsuite/mastodon/pull/5019#issuecomment-330736452 we need these changes to send deleted status IDs as strings, not integers.  | 
						
							8 years ago | 
| 
							
							
								 | 
						c66fe2aeba | Minor performance improvement for test suite (#4678) | 8 years ago | 
| 
							
							
								 | 
						4f0b638cda | Introduce access token fabricators (#4401) | 8 years ago | 
| 
							
							
								 | 
						5c63523972 | Spec coverage and refactor for the api/v1/accounts controllers (#3451) | 9 years ago |