• Added:
- captcha for sign up form
- empty ENV variables for: GAB_CAPTCHA_SECRET_KEY, GAB_CAPTCHA_CLIENT_KEY to be configured within captcha.gab.com
- Script insertion within registrations/new.html.haml containing instantiation for captcha.gab.com with our client key and challenge buster
- Div within registration form for #gab-captcha for the challenge to get inserted within
- Checks in RegistrationsController for captcha verification using server token (automatically generated in form), secret [server] key before checking if username/password/email is valid
- Added listen gem because rails app:update failed without it
- Removes nsa gem because it requires activesupport < 6
Oddly, there's a newer version per GitHub that's not on RubyGems
that raises the requirement to < 7. But, we need a new release
before we can use that.
- Upgrade rails-i18n to v6, for Rails 6 compatibility
- Remove redis-rails since it requires Rails < 6, but we can just use
the regular Rails :redis_cache_store that was introduced in 5.2.
- Run `rails app:update`
- Had to weed through the `config/environments` changes to pick up
newly added settings, while not losing settings that were
intentionally configured
- This generated config/initializers/new_framework_defaults_6_0.rb.
The goal is to uncomment all of the settings in that file. Once
they're all uncommented, delete the file and edit
config/application.rb's load_defaults to be 6.0.
- force_ssl controller method is deprecated in favor of a Rails
config setting.
- bin/setup was generated by Rails
- Verbose query logging in development is really helpful. It shows
you what line of code caused a query to execute.
- Calling establish_connection after worker boot isn't necessary
with ActiveRecord anymore. ActiveRecord handles it gracefully.
- Rails generated a migration to add a foreign key for ActiveStorage.
Gab currently doesn't use ActiveStorage, and instead uses Paperclip
(since ActiveStorage didn't exist when Mastadon started). So, this
change isn't relevant to Gab.
- Added ` || ''` in the profiles controller, because I was unable
to save a change to a newly created profile. (This probably
explains the 500 error I received on prod Gab recently.)
• Added:
- New Account filtering
- PreviewCard viewing/sorting/filtering deleting (todo)
- DeletePreviewCardWorker, Service
- Status viewing/sorting/filtering deleting
- ChatMessage viewing/sorting/filtering deleting (todo)
- Account > Follows view
• Updated:
- LinkBlock to sort alphabetically
- Groups to be under "Moderation" instead of "Admin" in navigation.rb
- Status in admin to have group name/link
- Reports reset button
- Group filtering/sorting
- LinkBlock filtering/sorting
- Account now has bio and few more data points in dashboard
• Updated:
- routes for admins dashboard (expenses, group categories, promotions, trending hashtags) that were in the /settings path but are now in the /admin path
- /filters to be in /settings/filters
• Removed:
- authorize_follow route
• Updated:
- Explore,Group,GroupCollection timeline controllers unauth result limits to be max 2 pages (group still empty for now)
- Max limit to be 25 (for everything, unless provided default) in BaseController
- Removed status counting in dashboard for admins
- Added limit to notifications to only 7 days ago
- Removed ability for non-logged in users to view group, group-collection timelines
- Limited account realtime search on compose, list, chat actions
- Removed fetching of user suggestions
- Removed fetching of shortcuts
- Removed featured groups, user suggestions timeline injections
- Removed group featured panel from explore layout for non logged in users
- Removed media gallery panel from profile layout
- Removed lists, suggestions, groups panel from home page
- Removed user suggestions to list page
- Updated pro_timelie in status.rb to find only from 1 hour ago
- Updated home timeline to not include groups and to find only latest from 5 days ago
- Removed search for non logged in users
• Updated:
- ListsAccountsController to check if account blocks current_account
- Lists action and controller to only allow singular account_id instead of array
• Updated:
- SortingQueryBuilder for ExploreTimeline, GroupCollectionTimeline, GroupTimeline
• TODO
- Test on a lot of data to ensure no repeats
- Test reducers/timeline updates to appending and concating non status.id sorted results
new MediaAttachment video style :playable for mp4 to make videojs work with multiple files, hiding albums, hiding bookmark collections. may need tweaks on mediaattachment for mov and other formats : todo :
removing .mov for now until we can figure out solution with videojs, added model to track username changes, got chat creation flow down, progress on bookmark collections, albums, filtering blocks/mutes from group, explore, collection timelines