discourse: 2.9.0.beta14 -> 3.1.0.beta2

This commit is contained in:
talyz 2023-02-09 15:09:30 +01:00
parent aef5ef0108
commit 8fb5bab784
No known key found for this signature in database
GPG Key ID: 2DED2151F4671A2B
5 changed files with 472 additions and 386 deletions

View File

@ -615,6 +615,7 @@ in
s3_endpoint = null;
s3_http_continue_timeout = null;
s3_install_cors_rule = null;
s3_asset_cdn_url = null;
max_user_api_reqs_per_minute = 20;
max_user_api_reqs_per_day = 2880;
@ -647,6 +648,9 @@ in
multisite_config_path = "config/multisite.yml";
enable_long_polling = null;
long_polling_interval = null;
preload_link_header = false;
redirect_avatar_requests = false;
pg_force_readonly_mode = false;
};
services.redis.servers.discourse =
@ -1011,6 +1015,7 @@ in
notification_email = cfg.mail.notificationEmailAddress;
contact_email = cfg.mail.contactEmailAddress;
};
security.force_https = tlsEnabled;
email = {
manual_polling_enabled = cfg.mail.incoming.enable;
reply_by_email_enabled = cfg.mail.incoming.enable;

View File

@ -8,7 +8,7 @@
, bundlerEnv
, callPackage
, ruby
, ruby_3_1
, replace
, gzip
, gnutar
@ -37,22 +37,23 @@
, yarn
, fixup_yarn_lock
, nodePackages
, nodejs-14_x
, nodejs-16_x
, plugins ? []
}@args:
let
version = "2.9.0.beta14";
version = "3.1.0.beta2";
src = fetchFromGitHub {
owner = "discourse";
repo = "discourse";
rev = "v${version}";
sha256 = "sha256-rdH6tALfhZyCGq1dtOQyuRlEYHSmWgvSz2qG6jrwPu0=";
sha256 = "sha256-wkNTm5/QyujPcMUrnc6eWmjhrRQAthhmejmjpy6zmbE=";
};
ruby = ruby_3_1;
runtimeDeps = [
# For backups, themes and assets
rubyEnv.wrappedRuby
@ -198,7 +199,7 @@ let
yarnOfflineCache = fetchYarnDeps {
yarnLock = src + "/app/assets/javascripts/yarn.lock";
sha256 = "1rj8bbhmrnnhaiqw2bik8dilk7g35yhis5p7yww57zy4k5ghjvlw";
sha256 = "0ryc4p5s35mzg1p71z98x5fvr5fpldmgghdi1viha4ckbpv153lw";
};
nativeBuildInputs = runtimeDeps ++ [
@ -207,7 +208,7 @@ let
nodePackages.uglify-js
nodePackages.terser
yarn
nodejs-14_x
nodejs-16_x
];
outputs = [ "out" "javascripts" ];

View File

@ -1,51 +1,51 @@
# frozen_string_literal: true
source 'https://rubygems.org'
source "https://rubygems.org"
# if there is a super emergency and rubygems is playing up, try
#source 'http://production.cf.rubygems.org'
gem 'bootsnap', require: false, platform: :mri
gem "bootsnap", require: false, platform: :mri
def rails_master?
ENV["RAILS_MASTER"] == '1'
ENV["RAILS_MASTER"] == "1"
end
if rails_master?
gem 'arel', git: 'https://github.com/rails/arel.git'
gem 'rails', git: 'https://github.com/rails/rails.git'
gem "arel", git: "https://github.com/rails/arel.git"
gem "rails", git: "https://github.com/rails/rails.git"
else
# NOTE: Until rubygems gives us optional dependencies we are stuck with this needing to be explicit
# this allows us to include the bits of rails we use without pieces we do not.
#
# To issue a rails update bump the version number here
rails_version = '7.0.3.1'
gem 'actionmailer', rails_version
gem 'actionpack', rails_version
gem 'actionview', rails_version
gem 'activemodel', rails_version
gem 'activerecord', rails_version
gem 'activesupport', rails_version
gem 'railties', rails_version
gem 'sprockets-rails'
rails_version = "7.0.4.1"
gem "actionmailer", rails_version
gem "actionpack", rails_version
gem "actionview", rails_version
gem "activemodel", rails_version
gem "activerecord", rails_version
gem "activesupport", rails_version
gem "railties", rails_version
gem "sprockets-rails"
end
gem 'json'
gem "json"
# TODO: At the moment Discourse does not work with Sprockets 4, we would need to correct internals
# This is a desired upgrade we should get to.
gem 'sprockets', '3.7.2'
# We intend to drop sprockets rather than upgrade to 4.x
gem "sprockets", git: "https://github.com/rails/sprockets", branch: "3.x"
# this will eventually be added to rails,
# allows us to precompile all our templates in the unicorn master
gem 'actionview_precompiler', require: false
gem "actionview_precompiler", require: false
gem 'discourse-seed-fu'
gem "discourse-seed-fu"
gem 'mail', git: 'https://github.com/discourse/mail.git'
gem 'mini_mime'
gem 'mini_suffix'
gem "mail", git: "https://github.com/discourse/mail.git"
gem "mini_mime"
gem "mini_suffix"
gem 'redis'
gem "redis"
# This is explicitly used by Sidekiq and is an optional dependency.
# We tell Sidekiq to use the namespace "sidekiq" which triggers this
@ -53,79 +53,79 @@ gem 'redis'
# redis namespace support is optional
# We already namespace stuff in DiscourseRedis, so we should consider
# just using a single implementation in core vs having 2 namespace implementations
gem 'redis-namespace'
gem "redis-namespace"
# NOTE: AM serializer gets a lot slower with recent updates
# we used an old branch which is the fastest one out there
# are long term goal here is to fork this gem so we have a
# better maintained living fork
gem 'active_model_serializers', '~> 0.8.3'
gem "active_model_serializers", "~> 0.8.3"
gem 'http_accept_language', require: false
gem "http_accept_language", require: false
gem 'discourse-fonts', require: 'discourse_fonts'
gem "discourse-fonts", require: "discourse_fonts"
gem 'message_bus'
gem "message_bus"
gem 'rails_multisite'
gem "rails_multisite"
gem 'fast_xs', platform: :ruby
gem "fast_xs", platform: :ruby
gem 'xorcist'
gem "xorcist"
gem 'fastimage'
gem "fastimage"
gem 'aws-sdk-s3', require: false
gem 'aws-sdk-sns', require: false
gem 'excon', require: false
gem 'unf', require: false
gem "aws-sdk-s3", require: false
gem "aws-sdk-sns", require: false
gem "excon", require: false
gem "unf", require: false
gem 'email_reply_trimmer'
gem "email_reply_trimmer"
gem 'image_optim'
gem 'multi_json'
gem 'mustache'
gem 'nokogiri'
gem 'loofah'
gem 'css_parser', require: false
gem "image_optim"
gem "multi_json"
gem "mustache"
gem "nokogiri"
gem "loofah"
gem "css_parser", require: false
gem 'omniauth'
gem 'omniauth-facebook'
gem 'omniauth-twitter'
gem 'omniauth-github'
gem "omniauth"
gem "omniauth-facebook"
gem "omniauth-twitter"
gem "omniauth-github"
gem 'omniauth-oauth2', require: false
gem "omniauth-oauth2", require: false
gem 'omniauth-google-oauth2'
gem "omniauth-google-oauth2"
# pending: https://github.com/ohler55/oj/issues/789
gem 'oj', '3.13.14'
gem "oj", "3.13.14"
gem 'pg'
gem 'mini_sql'
gem 'pry-rails', require: false
gem 'pry-byebug', require: false
gem 'r2', require: false
gem 'rake'
gem "pg"
gem "mini_sql"
gem "pry-rails", require: false
gem "pry-byebug", require: false
gem "r2", require: false
gem "rake"
gem 'thor', require: false
gem 'diffy', require: false
gem 'rinku'
gem 'sidekiq'
gem 'mini_scheduler'
gem "thor", require: false
gem "diffy", require: false
gem "rinku"
gem "sidekiq"
gem "mini_scheduler"
gem 'execjs', require: false
gem 'mini_racer'
gem "execjs", require: false
gem "mini_racer"
gem 'highline', require: false
gem "highline", require: false
gem 'rack'
gem "rack"
gem 'rack-protection' # security
gem 'cbor', require: false
gem 'cose', require: false
gem 'addressable'
gem 'json_schemer'
gem "rack-protection" # security
gem "cbor", require: false
gem "cose", require: false
gem "addressable"
gem "json_schemer"
gem "net-smtp", require: false
gem "net-imap", require: false
@ -135,138 +135,147 @@ gem "digest", require: false
# Gems used only for assets and not required in production environments by default.
# Allow everywhere for now cause we are allowing asset debugging in production
group :assets do
gem 'uglifier'
gem "uglifier"
end
group :test do
gem 'capybara', require: false
gem 'webmock', require: false
gem 'fakeweb', require: false
gem 'minitest', require: false
gem 'simplecov', require: false
gem 'selenium-webdriver', require: false
gem "capybara", require: false
gem "webmock", require: false
gem "fakeweb", require: false
gem "minitest", require: false
gem "simplecov", require: false
gem "selenium-webdriver", require: false
gem "test-prof"
gem 'webdrivers', require: false
gem "webdrivers", require: false
end
group :test, :development do
gem 'rspec'
gem 'listen', require: false
gem 'certified', require: false
gem 'fabrication', require: false
gem 'mocha', require: false
gem "rspec"
gem "listen", require: false
gem "certified", require: false
gem "fabrication", require: false
gem "mocha", require: false
gem 'rb-fsevent', require: RUBY_PLATFORM =~ /darwin/i ? 'rb-fsevent' : false
gem "rb-fsevent", require: RUBY_PLATFORM =~ /darwin/i ? "rb-fsevent" : false
gem 'rspec-rails'
gem "rspec-rails"
gem 'shoulda-matchers', require: false
gem 'rspec-html-matchers'
gem 'byebug', require: ENV['RM_INFO'].nil?, platform: :mri
gem 'rubocop-discourse', require: false
gem 'parallel_tests'
gem "shoulda-matchers", require: false
gem "rspec-html-matchers"
gem "byebug", require: ENV["RM_INFO"].nil?, platform: :mri
gem "rubocop-discourse", require: false
gem "parallel_tests"
gem 'rswag-specs'
gem "rswag-specs"
gem 'annotate'
gem "annotate"
gem "syntax_tree"
gem "syntax_tree-disable_ternary"
end
group :development do
gem 'ruby-prof', require: false, platform: :mri
gem 'bullet', require: !!ENV['BULLET']
gem 'better_errors', platform: :mri, require: !!ENV['BETTER_ERRORS']
gem 'binding_of_caller'
gem 'yaml-lint'
gem "ruby-prof", require: false, platform: :mri
gem "bullet", require: !!ENV["BULLET"]
gem "better_errors", platform: :mri, require: !!ENV["BETTER_ERRORS"]
gem "binding_of_caller"
gem "yaml-lint"
end
if ENV["ALLOW_DEV_POPULATE"] == "1"
gem 'discourse_dev_assets'
gem 'faker', "~> 2.16"
gem "discourse_dev_assets"
gem "faker", "~> 2.16"
else
group :development, :test do
gem 'discourse_dev_assets'
gem 'faker', "~> 2.16"
gem "discourse_dev_assets"
gem "faker", "~> 2.16"
end
end
# this is an optional gem, it provides a high performance replacement
# to String#blank? a method that is called quite frequently in current
# ActiveRecord, this may change in the future
gem 'fast_blank', platform: :ruby
gem "fast_blank", platform: :ruby
# this provides a very efficient lru cache
gem 'lru_redux'
gem "lru_redux"
gem 'htmlentities', require: false
gem "htmlentities", require: false
# IMPORTANT: mini profiler monkey patches, so it better be required last
# If you want to amend mini profiler to do the monkey patches in the railties
# we are open to it. by deferring require to the initializer we can configure discourse installs without it
gem 'rack-mini-profiler', require: ['enable_rails_patches']
gem "rack-mini-profiler", require: ["enable_rails_patches"]
gem 'unicorn', require: false, platform: :ruby
gem 'puma', require: false
gem 'rbtrace', require: false, platform: :mri
gem 'gc_tracer', require: false, platform: :mri
gem "unicorn", require: false, platform: :ruby
gem "puma", require: false
gem "rbtrace", require: false, platform: :mri
gem "gc_tracer", require: false, platform: :mri
# required for feed importing and embedding
gem 'ruby-readability', require: false
gem "ruby-readability", require: false
# rss gem is a bundled gem from Ruby 3 onwards
gem 'rss', require: false
gem "rss", require: false
gem 'stackprof', require: false, platform: :mri
gem 'memory_profiler', require: false, platform: :mri
gem "stackprof", require: false, platform: :mri
gem "memory_profiler", require: false, platform: :mri
gem 'cppjieba_rb', require: false
gem "cppjieba_rb", require: false
gem 'lograge', require: false
gem 'logstash-event', require: false
gem 'logstash-logger', require: false
gem 'logster'
gem "lograge", require: false
gem "logstash-event", require: false
gem "logstash-logger", require: false
gem "logster"
# NOTE: later versions of sassc are causing a segfault, possibly dependent on processer architecture
# and until resolved should be locked at 2.0.1
gem 'sassc', '2.0.1', require: false
gem "sassc", "2.0.1", require: false
gem "sassc-rails"
gem 'rotp', require: false
gem "rotp", require: false
gem 'rqrcode'
gem "rqrcode"
gem 'rubyzip', require: false
gem "rubyzip", require: false
gem 'sshkey', require: false
gem "sshkey", require: false
gem 'rchardet', require: false
gem 'lz4-ruby', require: false, platform: :ruby
gem "rchardet", require: false
gem "lz4-ruby", require: false, platform: :ruby
gem 'sanitize'
gem "sanitize"
if ENV["IMPORT"] == "1"
gem 'mysql2'
gem 'redcarpet'
gem "mysql2"
gem "redcarpet"
# NOTE: in import mode the version of sqlite can matter a lot, so we stick it to a specific one
gem 'sqlite3', '~> 1.3', '>= 1.3.13'
gem 'ruby-bbcode-to-md', git: 'https://github.com/nlalonde/ruby-bbcode-to-md'
gem 'reverse_markdown'
gem 'tiny_tds'
gem 'csv'
gem "sqlite3", "~> 1.3", ">= 1.3.13"
gem "ruby-bbcode-to-md", git: "https://github.com/nlalonde/ruby-bbcode-to-md"
gem "reverse_markdown"
gem "tiny_tds"
gem "csv"
gem 'parallel', require: false
gem "parallel", require: false
end
gem 'webpush', require: false
gem 'colored2', require: false
gem 'maxminddb'
gem "web-push"
gem "colored2", require: false
gem "maxminddb"
gem 'rails_failover', require: false
gem "rails_failover", require: false
gem 'faraday'
gem 'faraday-retry'
gem "faraday"
gem "faraday-retry"
# workaround for faraday-net_http, see
# https://github.com/ruby/net-imap/issues/16#issuecomment-803086765
gem 'net-http'
gem "net-http"
# workaround for prometheus-client
gem "webrick", require: false
# Workaround until Ruby ships with cgi version 0.3.6 or higher.
gem "cgi", ">= 0.3.6", require: false

View File

@ -5,28 +5,37 @@ GIT
mail (2.8.0.edge)
mini_mime (>= 0.1.1)
GIT
remote: https://github.com/rails/sprockets
revision: f4d3dae71ef29c44b75a49cfbf8032cce07b423a
branch: 3.x
specs:
sprockets (3.7.2)
concurrent-ruby (~> 1.0)
rack (> 1, < 3)
GEM
remote: https://rubygems.org/
specs:
actionmailer (7.0.3.1)
actionpack (= 7.0.3.1)
actionview (= 7.0.3.1)
activejob (= 7.0.3.1)
activesupport (= 7.0.3.1)
actionmailer (7.0.4.1)
actionpack (= 7.0.4.1)
actionview (= 7.0.4.1)
activejob (= 7.0.4.1)
activesupport (= 7.0.4.1)
mail (~> 2.5, >= 2.5.4)
net-imap
net-pop
net-smtp
rails-dom-testing (~> 2.0)
actionpack (7.0.3.1)
actionview (= 7.0.3.1)
activesupport (= 7.0.3.1)
actionpack (7.0.4.1)
actionview (= 7.0.4.1)
activesupport (= 7.0.4.1)
rack (~> 2.0, >= 2.2.0)
rack-test (>= 0.6.3)
rails-dom-testing (~> 2.0)
rails-html-sanitizer (~> 1.0, >= 1.2.0)
actionview (7.0.3.1)
activesupport (= 7.0.3.1)
actionview (7.0.4.1)
activesupport (= 7.0.4.1)
builder (~> 3.1)
erubi (~> 1.4)
rails-dom-testing (~> 2.0)
@ -35,15 +44,15 @@ GEM
actionview (>= 6.0.a)
active_model_serializers (0.8.4)
activemodel (>= 3.0)
activejob (7.0.3.1)
activesupport (= 7.0.3.1)
activejob (7.0.4.1)
activesupport (= 7.0.4.1)
globalid (>= 0.3.6)
activemodel (7.0.3.1)
activesupport (= 7.0.3.1)
activerecord (7.0.3.1)
activemodel (= 7.0.3.1)
activesupport (= 7.0.3.1)
activesupport (7.0.3.1)
activemodel (7.0.4.1)
activesupport (= 7.0.4.1)
activerecord (7.0.4.1)
activemodel (= 7.0.4.1)
activesupport (= 7.0.4.1)
activesupport (7.0.4.1)
concurrent-ruby (~> 1.0, >= 1.0.2)
i18n (>= 1.6, < 2)
minitest (>= 5.1)
@ -82,7 +91,7 @@ GEM
bootsnap (1.15.0)
msgpack (~> 1.2)
builder (3.2.4)
bullet (7.0.4)
bullet (7.0.7)
activesupport (>= 3.0.0)
uniform_notifier (~> 1.11)
byebug (11.1.3)
@ -97,11 +106,11 @@ GEM
xpath (~> 3.2)
cbor (0.5.9.6)
certified (1.0.0)
childprocess (4.1.0)
cgi (0.3.6)
chunky_png (1.4.0)
coderay (1.1.3)
colored2 (3.1.2)
concurrent-ruby (1.1.10)
concurrent-ruby (1.2.0)
connection_pool (2.3.0)
cose (1.3.0)
cbor (~> 0.5.9)
@ -110,12 +119,13 @@ GEM
crack (0.4.5)
rexml
crass (1.0.6)
css_parser (1.12.0)
css_parser (1.14.0)
addressable
date (3.3.3)
debug_inspector (1.1.0)
diff-lcs (1.5.0)
diffy (3.4.2)
digest (3.1.0)
digest (3.1.1)
discourse-fonts (0.0.9)
discourse-seed-fu (2.3.12)
activerecord (>= 3.1)
@ -127,15 +137,15 @@ GEM
ecma-re-validator (0.4.0)
regexp_parser (~> 2.2)
email_reply_trimmer (0.1.13)
erubi (1.11.0)
excon (0.94.0)
erubi (1.12.0)
excon (0.97.2)
execjs (2.8.1)
exifr (1.3.10)
fabrication (2.30.0)
faker (2.23.0)
i18n (>= 1.8.11, < 2)
fakeweb (1.3.0)
faraday (2.7.1)
faraday (2.7.4)
faraday-net_http (>= 2.0, < 3.1)
ruby2_keywords (>= 0.0.4)
faraday-net_http (3.0.2)
@ -147,14 +157,14 @@ GEM
ffi (1.15.5)
fspath (3.1.2)
gc_tracer (1.5.1)
globalid (1.0.0)
globalid (1.0.1)
activesupport (>= 5.0)
guess_html_encoding (0.0.11)
hana (1.3.7)
hashdiff (1.0.1)
hashie (5.0.0)
highline (2.0.3)
hkdf (0.3.0)
highline (2.1.0)
hkdf (1.0.0)
htmlentities (4.3.4)
http_accept_language (2.1.1)
i18n (1.12.0)
@ -168,7 +178,7 @@ GEM
image_size (3.2.0)
in_threads (1.6.0)
jmespath (1.6.2)
json (2.6.2)
json (2.6.3)
json-schema (3.0.0)
addressable (>= 2.8)
json_schemer (0.2.23)
@ -176,15 +186,10 @@ GEM
hana (~> 1.3)
regexp_parser (~> 2.0)
uri_template (~> 0.7)
jwt (2.5.0)
jwt (2.6.0)
kgio (2.11.4)
libv8-node (16.10.0.0)
libv8-node (16.10.0.0-aarch64-linux)
libv8-node (16.10.0.0-arm64-darwin)
libv8-node (16.10.0.0-x86_64-darwin)
libv8-node (16.10.0.0-x86_64-darwin-19)
libv8-node (16.10.0.0-x86_64-linux)
listen (3.7.1)
listen (3.8.0)
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
literate_randomizer (0.4.0)
@ -197,7 +202,7 @@ GEM
logstash-logger (0.26.1)
logstash-event (~> 1.2)
logster (2.11.3)
loofah (2.19.0)
loofah (2.19.1)
crass (~> 1.0.2)
nokogiri (>= 1.5.9)
lru_redux (1.1.0)
@ -205,11 +210,11 @@ GEM
matrix (0.4.2)
maxminddb (0.1.22)
memory_profiler (1.0.1)
message_bus (4.3.0)
message_bus (4.3.2)
rack (>= 1.1.3)
method_source (1.0.0)
mini_mime (1.1.2)
mini_portile2 (2.8.0)
mini_portile2 (2.8.1)
mini_racer (0.6.3)
libv8-node (~> 16.10.0.0)
mini_scheduler (0.15.0)
@ -217,35 +222,28 @@ GEM
mini_sql (1.4.0)
mini_suffix (0.3.3)
ffi (~> 1.9)
minitest (5.16.3)
minitest (5.17.0)
mocha (2.0.2)
ruby2_keywords (>= 0.0.5)
msgpack (1.6.0)
multi_json (1.15.0)
multi_xml (0.6.0)
mustache (1.1.1)
net-http (0.2.2)
net-http (0.3.2)
uri
net-imap (0.3.1)
net-imap (0.3.4)
date
net-protocol
net-pop (0.1.2)
net-protocol
net-protocol (0.1.3)
net-protocol (0.2.1)
timeout
net-smtp (0.3.3)
net-protocol
nio4r (2.5.8)
nokogiri (1.13.9)
nokogiri (1.14.0)
mini_portile2 (~> 2.8.0)
racc (~> 1.4)
nokogiri (1.13.9-aarch64-linux)
racc (~> 1.4)
nokogiri (1.13.9-arm64-darwin)
racc (~> 1.4)
nokogiri (1.13.9-x86_64-darwin)
racc (~> 1.4)
nokogiri (1.13.9-x86_64-linux)
racc (~> 1.4)
oauth (1.1.0)
oauth-tty (~> 1.0, >= 1.0.1)
snaky_hash (~> 2.0)
@ -281,18 +279,19 @@ GEM
omniauth-twitter (1.4.0)
omniauth-oauth (~> 1.1)
rack
openssl (3.0.1)
openssl (3.0.2)
openssl-signature_algorithm (1.2.1)
openssl (> 2.0, < 3.1)
optimist (3.0.1)
parallel (1.22.1)
parallel_tests (4.0.0)
parallel_tests (4.1.0)
parallel
parser (3.1.3.0)
parser (3.2.0.0)
ast (~> 2.4.1)
pg (1.4.5)
prettier_print (1.2.0)
progress (3.6.0)
pry (0.14.1)
pry (0.14.2)
coderay (~> 1.1)
method_source (~> 1.0)
pry-byebug (3.10.1)
@ -300,23 +299,23 @@ GEM
pry (>= 0.13, < 0.15)
pry-rails (0.3.9)
pry (>= 0.10.4)
public_suffix (5.0.0)
puma (6.0.0)
public_suffix (5.0.1)
puma (6.0.2)
nio4r (~> 2.0)
r2 (0.2.7)
racc (1.6.0)
rack (2.2.4)
racc (1.6.2)
rack (2.2.6.2)
rack-mini-profiler (3.0.0)
rack (>= 1.2.0)
rack-protection (3.0.4)
rack-protection (3.0.5)
rack
rack-test (2.0.2)
rack (>= 1.3)
rails-dom-testing (2.0.3)
activesupport (>= 4.2.0)
nokogiri (>= 1.6)
rails-html-sanitizer (1.4.3)
loofah (~> 2.3)
rails-html-sanitizer (1.5.0)
loofah (~> 2.19, >= 2.19.1)
rails_failover (0.8.1)
activerecord (> 6.0, < 7.1)
concurrent-ruby
@ -324,9 +323,9 @@ GEM
rails_multisite (4.0.1)
activerecord (> 5.0, < 7.1)
railties (> 5.0, < 7.1)
railties (7.0.3.1)
actionpack (= 7.0.3.1)
activesupport (= 7.0.3.1)
railties (7.0.4.1)
actionpack (= 7.0.4.1)
activesupport (= 7.0.4.1)
method_source
rake (>= 12.2)
thor (~> 1.0)
@ -342,15 +341,15 @@ GEM
msgpack (>= 0.4.3)
optimist (>= 3.0.0)
rchardet (1.8.0)
redis (4.7.1)
redis-namespace (1.9.0)
redis (4.8.0)
redis-namespace (1.10.0)
redis (>= 4)
regexp_parser (2.6.1)
regexp_parser (2.6.2)
request_store (1.5.1)
rack (>= 1.4)
rexml (3.2.5)
rinku (2.0.6)
rotp (6.2.1)
rotp (6.2.2)
rqrcode (2.1.2)
chunky_png (~> 1.0)
rqrcode_core (~> 1.0)
@ -361,13 +360,13 @@ GEM
rspec-mocks (~> 3.12.0)
rspec-core (3.12.0)
rspec-support (~> 3.12.0)
rspec-expectations (3.12.0)
rspec-expectations (3.12.2)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.12.0)
rspec-html-matchers (0.10.0)
nokogiri (~> 1)
rspec (>= 3.0.0.a)
rspec-mocks (3.12.0)
rspec-mocks (3.12.3)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.12.0)
rspec-rails (6.0.1)
@ -386,24 +385,27 @@ GEM
json-schema (>= 2.2, < 4.0)
railties (>= 3.1, < 7.1)
rspec-core (>= 2.14)
rubocop (1.39.0)
rubocop (1.44.0)
json (~> 2.3)
parallel (~> 1.10)
parser (>= 3.1.2.1)
parser (>= 3.2.0.0)
rainbow (>= 2.2.2, < 4.0)
regexp_parser (>= 1.8, < 3.0)
rexml (>= 3.2.5, < 4.0)
rubocop-ast (>= 1.23.0, < 2.0)
rubocop-ast (>= 1.24.1, < 2.0)
ruby-progressbar (~> 1.7)
unicode-display_width (>= 1.4.0, < 3.0)
rubocop-ast (1.23.0)
unicode-display_width (>= 2.4.0, < 3.0)
rubocop-ast (1.24.1)
parser (>= 3.1.1.0)
rubocop-discourse (3.0)
rubocop-capybara (2.17.0)
rubocop (~> 1.41)
rubocop-discourse (3.0.3)
rubocop (>= 1.1.0)
rubocop-rspec (>= 2.0.0)
rubocop-rspec (2.15.0)
rubocop-rspec (2.18.1)
rubocop (~> 1.33)
ruby-prof (1.4.3)
rubocop-capybara (~> 2.17)
ruby-prof (1.4.5)
ruby-progressbar (1.11.0)
ruby-readability (0.7.0)
guess_html_encoding (>= 0.0.4)
@ -422,18 +424,17 @@ GEM
sprockets (> 3.0)
sprockets-rails
tilt
selenium-webdriver (4.6.1)
childprocess (>= 0.5, < 5.0)
selenium-webdriver (4.8.0)
rexml (~> 3.2, >= 3.2.5)
rubyzip (>= 1.2.2, < 3.0)
websocket (~> 1.0)
shoulda-matchers (5.2.0)
shoulda-matchers (5.3.0)
activesupport (>= 5.2.0)
sidekiq (6.5.8)
connection_pool (>= 2.2.5, < 3)
rack (~> 2.0)
redis (>= 4.5.0, < 5)
simplecov (0.21.2)
simplecov (0.22.0)
docile (~> 1.1)
simplecov-html (~> 0.11)
simplecov_json_formatter (~> 0.1)
@ -442,19 +443,19 @@ GEM
snaky_hash (2.0.1)
hashie
version_gem (~> 1.1, >= 1.1.1)
sprockets (3.7.2)
concurrent-ruby (~> 1.0)
rack (> 1, < 3)
sprockets-rails (3.4.2)
actionpack (>= 5.2)
activesupport (>= 5.2)
sprockets (>= 3.0.0)
sshkey (2.0.0)
stackprof (0.2.22)
test-prof (1.0.11)
stackprof (0.2.23)
syntax_tree (5.2.0)
prettier_print (>= 1.2.0)
syntax_tree-disable_ternary (1.0.0)
test-prof (1.1.0)
thor (1.2.1)
tilt (2.0.11)
timeout (0.3.0)
timeout (0.3.1)
tzinfo (2.0.5)
concurrent-ruby (~> 1.0)
uglifier (4.2.0)
@ -462,14 +463,18 @@ GEM
unf (0.1.4)
unf_ext
unf_ext (0.0.8.2)
unicode-display_width (2.3.0)
unicode-display_width (2.4.2)
unicorn (6.1.0)
kgio (~> 2.6)
raindrops (~> 0.7)
uniform_notifier (1.16.0)
uri (0.11.0)
uri (0.12.0)
uri_template (0.7.0)
version_gem (1.1.1)
web-push (3.0.0)
hkdf (~> 1.0)
jwt (~> 2.0)
openssl (~> 3.0)
webdrivers (5.2.0)
nokogiri (~> 1.6)
rubyzip (>= 1.3.0)
@ -478,28 +483,26 @@ GEM
addressable (>= 2.8.0)
crack (>= 0.3.2)
hashdiff (>= 0.4.0, < 2.0.0)
webpush (1.1.0)
hkdf (~> 0.2)
jwt (~> 2.0)
webrick (1.7.0)
websocket (1.2.9)
xorcist (1.1.3)
xpath (3.2.0)
nokogiri (~> 1.8)
yaml-lint (0.0.10)
yaml-lint (0.1.2)
zeitwerk (2.6.6)
PLATFORMS
ruby
DEPENDENCIES
actionmailer (= 7.0.3.1)
actionpack (= 7.0.3.1)
actionview (= 7.0.3.1)
actionmailer (= 7.0.4.1)
actionpack (= 7.0.4.1)
actionview (= 7.0.4.1)
actionview_precompiler
active_model_serializers (~> 0.8.3)
activemodel (= 7.0.3.1)
activerecord (= 7.0.3.1)
activesupport (= 7.0.3.1)
activemodel (= 7.0.4.1)
activerecord (= 7.0.4.1)
activesupport (= 7.0.4.1)
addressable
annotate
aws-sdk-s3
@ -512,6 +515,7 @@ DEPENDENCIES
capybara
cbor
certified
cgi (>= 0.3.6)
colored2
cose
cppjieba_rb
@ -583,7 +587,7 @@ DEPENDENCIES
rack-protection
rails_failover
rails_multisite
railties (= 7.0.3.1)
railties (= 7.0.4.1)
rake
rb-fsevent
rbtrace
@ -609,20 +613,23 @@ DEPENDENCIES
shoulda-matchers
sidekiq
simplecov
sprockets (= 3.7.2)
sprockets!
sprockets-rails
sshkey
stackprof
syntax_tree
syntax_tree-disable_ternary
test-prof
thor
uglifier
unf
unicorn
web-push
webdrivers
webmock
webpush
webrick
xorcist
yaml-lint
BUNDLED WITH
2.3.25
2.4.6

View File

@ -5,10 +5,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1wdh4av6w6calnvvms6r8w3k3gaw0xy1lgsrjjf5d5gxq09nk7y7";
sha256 = "1v4ra6jx4bynzj3im6fjbyyy1h6582qg72r6i42myls84z75qsxk";
type = "gem";
};
version = "7.0.3.1";
version = "7.0.4.1";
};
actionpack = {
dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"];
@ -16,10 +16,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1f9y1qjnrwbwab3hf6nzlpr4v1fr1wq39l6dw3i1y3i6n8w04sb5";
sha256 = "1g823r92w9c1si2mxd82mibdva1fyw0ccin0dc2bpbszk6zfyxrh";
type = "gem";
};
version = "7.0.3.1";
version = "7.0.4.1";
};
actionview = {
dependencies = ["activesupport" "builder" "erubi" "rails-dom-testing" "rails-html-sanitizer"];
@ -27,10 +27,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1csycx6zlzrp6pw58s4nkm2qaz720cdhgxjkwjsd0qla75kvsyln";
sha256 = "1pfnbkq1hzzxzrnc0m1dd0l2cad6x041dfv3ndrkk5llcjarphx2";
type = "gem";
};
version = "7.0.3.1";
version = "7.0.4.1";
};
actionview_precompiler = {
dependencies = ["actionview"];
@ -60,10 +60,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "03hn978lx6lasac267mincy6wwcir5gyix7gwrbvvk7rg7bsbmbk";
sha256 = "0yrjvd2w3l6fd5s984hn885dwcxj078ggfbbr1cpynjnqxrvvm6f";
type = "gem";
};
version = "7.0.3.1";
version = "7.0.4.1";
};
activemodel = {
dependencies = ["activesupport"];
@ -71,10 +71,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0s9gjs1a49n7rfhz84glw6w62swlrqdqjhs8421kaa72iwxavq16";
sha256 = "0y1v2jy4cwi6dkd9yr399kw53smaiyiqx7bsnljwmsz98g125sdw";
type = "gem";
};
version = "7.0.3.1";
version = "7.0.4.1";
};
activerecord = {
dependencies = ["activemodel" "activesupport"];
@ -82,10 +82,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1lb838wvarms8bs8hvfkccdsp4cjc0y9wjsxvw71h4ir3mys4jqg";
sha256 = "1c3wvrym6ib2a6ljc4n572gsrr46hazp7f0zijm8jdc8zp3yx5vi";
type = "gem";
};
version = "7.0.3.1";
version = "7.0.4.1";
};
activesupport = {
dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo"];
@ -93,10 +93,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "15lbq28v48i6q118p02m5zs9c63y1kv2h5krb3ss6q2vyaxhnfz7";
sha256 = "1j0ms94ng1hsxb37aar5j3n4mabjqvjkcl70adjrqib7grriyq7b";
type = "gem";
};
version = "7.0.3.1";
version = "7.0.4.1";
};
addressable = {
dependencies = ["public_suffix"];
@ -262,10 +262,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1f2phbpsiw8zwmmb1h6s82c4s2banzd04ch7vn6pdz91map233l1";
sha256 = "0hyz68j0z0j24vcrs43swmlykhzypayv34kzrsbxda5lbi83gynm";
type = "gem";
};
version = "7.0.4";
version = "7.0.7";
};
byebug = {
groups = ["development" "test"];
@ -312,15 +312,15 @@
};
version = "1.0.0";
};
childprocess = {
groups = ["default" "test"];
cgi = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1lvcp8bsd35g57f7wz4jigcw2sryzzwrpcgjwwf3chmjrjcww5in";
sha256 = "18zc1z8va9j1gcv131p605wmkvn1p5958mmvvy7v45ki8c0w7qn5";
type = "gem";
};
version = "4.1.0";
version = "0.3.6";
};
chunky_png = {
groups = ["default"];
@ -361,10 +361,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0s4fpn3mqiizpmpy2a24k4v365pv75y50292r8ajrv4i1p5b2k14";
sha256 = "1qnsflsbjj38im8xq35g0vihlz96h09wjn2dad5g543l3vvrkrx5";
type = "gem";
};
version = "1.1.10";
version = "1.2.0";
};
connection_pool = {
groups = ["default"];
@ -424,10 +424,20 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1107j3frhmcd95wcsz0rypchynnzhnjiyyxxcl6dlmr2lfy08z4b";
sha256 = "04q1vin8slr3k8mp76qz0wqgap6f9kdsbryvgfq9fljhrm463kpj";
type = "gem";
};
version = "1.12.0";
version = "1.14.0";
};
date = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "03skfikihpx37rc27vr3hwrb057gxnmdzxhmzd4bf4jpkl0r55w1";
type = "gem";
};
version = "3.3.3";
};
debug_inspector = {
groups = ["default" "development"];
@ -464,10 +474,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "00vwzvxgby22h7jhwadqqf9ssbkp3ag2pl4g7q3zf1y8mlk7rk39";
sha256 = "01qkpbkxq83ip3iysfh2kjrg9sh2n2q91prhyxh3vq10lcfzv9l1";
type = "gem";
};
version = "3.1.0";
version = "3.1.1";
};
discourse-fonts = {
groups = ["default"];
@ -541,20 +551,20 @@
}];
source = {
remotes = ["https://rubygems.org"];
sha256 = "11bz1v1cxabm8672gabrw542zyg51dizlcvdck6vvwzagxbjv9zx";
sha256 = "08s75vs9cxlc4r1q2bjg4br8g9wc5lc5x5vl0vv4zq5ivxsdpgi7";
type = "gem";
};
version = "1.11.0";
version = "1.12.0";
};
excon = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "094kbi32i56p08348b95amg9dz5c9prn5jywhkcghsd3d6kll981";
sha256 = "17prxavwwskpv7dfl3npl0pgqiqg99rrmakqj1n4m5hl69jqz8y4";
type = "gem";
};
version = "0.94.0";
version = "0.97.2";
};
execjs = {
groups = ["assets" "default"];
@ -613,10 +623,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1wyz9ab0mzi84gpf81fs19vrixglmmxi25k6n1mn9h141qmsp590";
sha256 = "1f20vjx0ywx0zdb4dfx4cpa7kd51z6vg7dw5hs35laa45dy9g9pj";
type = "gem";
};
version = "2.7.1";
version = "2.7.4";
};
faraday-net_http = {
groups = ["default"];
@ -725,10 +735,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1n5yc058i8xhi1fwcp1w7mfi6xaxfmrifdb4r4hjfff33ldn8lqj";
sha256 = "040bxzfd7mz1p6z4bc9vk5yrf762hdllvf98hmk848fq28xc5dsk";
type = "gem";
};
version = "1.0.0";
version = "1.0.1";
};
guess_html_encoding = {
groups = ["default"];
@ -775,20 +785,20 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0yclf57n2j3cw8144ania99h1zinf8q3f5zrhqa754j6gl95rp9d";
sha256 = "1f8cr014j7mdqpdb9q17fp5vb5b8n1pswqaif91s3ylg5x3pygfn";
type = "gem";
};
version = "2.0.3";
version = "2.1.0";
};
hkdf = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "04fixg0a51n4vy0j6c1hvisa2yl33m3jrrpxpb5sq6j511vjriil";
sha256 = "03g3yvfnlcjv2qw3b3yahg0x7zhwcd1bwxyj6gbn5jrc7k4kfrqg";
type = "gem";
};
version = "0.3.0";
version = "1.0.0";
};
htmlentities = {
groups = ["default"];
@ -867,10 +877,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0yk5d10yvspkc5jyvx9gc1a9pn1z8v4k2hvjk1l88zixwf3wf3cl";
sha256 = "0nalhin1gda4v8ybk6lq8f407cgfrj6qzn234yra4ipkmlbfmal6";
type = "gem";
};
version = "2.6.2";
version = "2.6.3";
};
json-schema = {
dependencies = ["addressable"];
@ -899,10 +909,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0kcmnx6rgjyd7sznai9ccns2nh7p7wnw3mi8a7vf2wkm51azwddq";
sha256 = "1x8zp1a2pnngxh7631s0kn0r665qkwzfp16kifmp93r4zj6ci8v8";
type = "gem";
};
version = "2.5.0";
version = "2.6.0";
};
kgio = {
groups = ["default"];
@ -936,10 +946,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0agybr37wpjv3xy4ipcmsvsibgdgphzrwbvcj4vfiykpmakwm01v";
sha256 = "13rgkfar8pp31z1aamxf5y7cfq88wv6rxxcwy7cmm177qq508ycn";
type = "gem";
};
version = "3.7.1";
version = "3.8.0";
};
literate_randomizer = {
groups = ["default" "development"];
@ -999,10 +1009,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1fpyk1965py77al7iadkn5dibwgvybknkr7r8bii2dj73wvr29rh";
sha256 = "08qhzck271anrx9y6qa6mh8hwwdzsgwld8q0000rcd7yvvpnjr3c";
type = "gem";
};
version = "2.19.0";
version = "2.19.1";
};
lru_redux = {
groups = ["default"];
@ -1083,10 +1093,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "039ab2bbzxhfgy3w7wrxznqzjyikiqm6dnl36pk7cmkb1d30fxdk";
sha256 = "07acv6l89b1c0d3dfq84jb0vzbv489agcw60n7rnvk10y4x58bn5";
type = "gem";
};
version = "4.3.0";
version = "4.3.2";
};
method_source = {
groups = ["default" "development" "test"];
@ -1113,10 +1123,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0rapl1sfmfi3bfr68da4ca16yhc0pp93vjwkj7y3rdqrzy3b41hy";
sha256 = "1af4yarhbbx62f7qsmgg5fynrik0s36wjy3difkawy536xg343mp";
type = "gem";
};
version = "2.8.0";
version = "2.8.1";
};
mini_racer = {
dependencies = ["libv8-node"];
@ -1166,10 +1176,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0516ypqlx0mlcfn5xh7qppxqc3xndn1fnadxawa8wld5dkcimy30";
sha256 = "1kjy67qajw4rnkbjs5jyk7kc3lyhz5613fwj1i8f6ppdk4zampy0";
type = "gem";
};
version = "5.16.3";
version = "5.17.0";
};
mocha = {
dependencies = ["ruby2_keywords"];
@ -1232,21 +1242,21 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1j4f0wgyps0qyms4p6fjqva63xy13wvy7bx5qg5gmzzwm3kqs1fr";
sha256 = "0y55ib1v2b8prqfi9ij7hca60b1j94s2bzr6vskwi3i5735472wq";
type = "gem";
};
version = "0.2.2";
version = "0.3.2";
};
net-imap = {
dependencies = ["net-protocol"];
dependencies = ["date" "net-protocol"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1s1d01q6mljiiv6y2w6znmhmnm2b5lkw8d13wip9x23a820z8cjw";
sha256 = "1d996zf3g8xz244791b0qsl9vr7zg4lqnnmf9k2kshr9lki5jam8";
type = "gem";
};
version = "0.3.1";
version = "0.3.4";
};
net-pop = {
dependencies = ["net-protocol"];
@ -1265,10 +1275,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "051cc82dl41a66c9sxv4lx4slqk7sz1v4iy0hdk6gpjyjszf4hxd";
sha256 = "0dxckrlw4q1lcn3qg4mimmjazmg9bma5gllv72f8js3p36fb3b91";
type = "gem";
};
version = "0.1.3";
version = "0.2.1";
};
net-smtp = {
dependencies = ["net-protocol"];
@ -1297,10 +1307,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0cam1455nmi3fzzpa9ixn2hsim10fbprmj62ajpd6d02mwdprwwn";
sha256 = "1fqld4wnamj7awdr1lwdifpylqdrrg5adm8xj2jl9sc5ms3nxjjm";
type = "gem";
};
version = "1.13.9";
version = "1.14.0";
};
oauth = {
dependencies = ["oauth-tty" "snaky_hash" "version_gem"];
@ -1427,10 +1437,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0n2fhxa2alw3qxhg6qlxs0v6f8rsadhp6r6sv33i9fh793k2zpr3";
sha256 = "0mcg47zz4w902cq6c8cdj62npawgwq68sfh7n7aqy7vm3pgvls9h";
type = "gem";
};
version = "3.0.1";
version = "3.0.2";
};
openssl-signature_algorithm = {
dependencies = ["openssl"];
@ -1473,10 +1483,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0xr8406nknbg2z561m3nkny51zkhpd02ng0fbjc9jaachp7ksz1y";
sha256 = "1p0y8cgdmfwyg7plwlsjf9afshm81wj9ah8nprmpfrv28adg3vn6";
type = "gem";
};
version = "4.0.0";
version = "4.1.0";
};
parser = {
dependencies = ["ast"];
@ -1484,10 +1494,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "17qfhjvnr9q2gp1gfdl6kndy2mb6qdwsls3vnjhb1h8ddimdm4s5";
sha256 = "0zk8mdyr0322r11d63rcp5jhz4lakxilhvyvdv0ql5dw4lb83623";
type = "gem";
};
version = "3.1.3.0";
version = "3.2.0.0";
};
pg = {
groups = ["default"];
@ -1499,6 +1509,16 @@
};
version = "1.4.5";
};
prettier_print = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1bbw4czjr2ch6m57rgjib5a35hx3g18975vwzm2iwq13pvdj9hzk";
type = "gem";
};
version = "1.2.0";
};
progress = {
groups = ["default"];
platforms = [];
@ -1515,10 +1535,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0m445x8fwcjdyv2bc0glzss2nbm1ll51bq45knixapc7cl3dzdlr";
sha256 = "0k9kqkd9nps1w1r1rb7wjr31hqzkka2bhi8b518x78dcxppm9zn4";
type = "gem";
};
version = "0.14.1";
version = "0.14.2";
};
pry-byebug = {
dependencies = ["byebug" "pry"];
@ -1547,10 +1567,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0sqw1zls6227bgq38sxb2hs8nkdz4hn1zivs27mjbniswfy4zvi6";
sha256 = "0hz0bx2qs2pwb0bwazzsah03ilpf3aai8b7lk7s35jsfzwbkjq35";
type = "gem";
};
version = "5.0.0";
version = "5.0.1";
};
puma = {
dependencies = ["nio4r"];
@ -1558,10 +1578,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1yabmxmqprb2x58awiasidsiwpplscmyar9dzwh5l8jgaw4i3wra";
sha256 = "15hj8r6wp23k187ajmp13kldk53ygm84q4caq7nlndrn8jlcsps0";
type = "gem";
};
version = "6.0.0";
version = "6.0.2";
};
r2 = {
groups = ["default"];
@ -1578,10 +1598,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0la56m0z26j3mfn1a9lf2l03qx1xifanndf9p3vx1azf6sqy7v9d";
sha256 = "09jgz6r0f7v84a7jz9an85q8vvmp743dqcsdm3z9c8rqcqv6pljq";
type = "gem";
};
version = "1.6.0";
version = "1.6.2";
};
rack = {
groups = ["default" "development" "test"];
@ -1592,10 +1612,10 @@
}];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0axc6w0rs4yj0pksfll1hjgw1k6a5q0xi2lckh91knfb72v348pa";
sha256 = "0qvp6h2abmlsl4sqjsvac03cr2mxq6143gbx4kq52rpazp021qsb";
type = "gem";
};
version = "2.2.4";
version = "2.2.6.2";
};
rack-mini-profiler = {
dependencies = ["rack"];
@ -1614,10 +1634,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1kljmw1lhzqjcwnwadr5m2khii0h2lsah447zb9vgirrv5jszg9h";
sha256 = "1a12m1mv8dc0g90fs1myvis8vsgr427k1arg1q4a9qlfw6fqyhis";
type = "gem";
};
version = "3.0.4";
version = "3.0.5";
};
rack-test = {
dependencies = ["rack"];
@ -1647,10 +1667,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1mj0b7ay10a2fgwj70kjw7mlyrp7a5la8lx8zmwhy40bkansdfrf";
sha256 = "0ygav4xyq943qqyhjmi3mzirn180j565mc9h5j4css59x1sn0cmz";
type = "gem";
};
version = "1.4.3";
version = "1.5.0";
};
rails_failover = {
dependencies = ["activerecord" "concurrent-ruby" "railties"];
@ -1680,10 +1700,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0lnrhx0sdixz5xm2vi482ngs4alh8l725kh96v6mfk0x0qlbdsaw";
sha256 = "0q8as8yq6ni256fc6bmcqmdch1bksbhsg5lmaqmi4bpi33f06g01";
type = "gem";
};
version = "7.0.3.1";
version = "7.0.4.1";
};
rainbow = {
groups = ["default" "development" "test"];
@ -1772,10 +1792,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1xid9av3apfz5mszwqgl6v0n58g6038lsfdz0p53xb9ywpa5dcpc";
sha256 = "0i4a8hxxcxci3n8hhlm9a8wa7a9m58r6sjvh4749v7362i8cy010";
type = "gem";
};
version = "4.7.1";
version = "4.8.0";
};
redis-namespace = {
dependencies = ["redis"];
@ -1783,20 +1803,20 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "04l61lpb3s2xkwj36l7b543lhciv19z514kxnmnbh5fg70grc8q9";
sha256 = "154dfnrjpbv7fhwhfrcnp6jn9qv5qaj3mvlvbgkl7qy5qsknw71c";
type = "gem";
};
version = "1.9.0";
version = "1.10.0";
};
regexp_parser = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0rj7xcg7bkfw6y0h4wg8y3s4nmks9qrzdxag4zaw41xjqfanlysf";
sha256 = "0zjg29w5zvar7by1kqck3zilbdzm5iz3jp5d1zn3970krskfazh2";
type = "gem";
};
version = "2.6.1";
version = "2.6.2";
};
request_store = {
dependencies = ["rack"];
@ -1834,10 +1854,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "10fi6g1nn97cg2m2jmh9cwxcd90gd4hn7b71hdr3kh76c0rmpqp7";
sha256 = "10mmzc85y7andsich586ndykw678qn1ns2wpjxrg0sc0gr4w3pig";
type = "gem";
};
version = "6.2.1";
version = "6.2.2";
};
rqrcode = {
dependencies = ["chunky_png" "rqrcode_core"];
@ -1888,10 +1908,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0qldsmjhqr4344zdlamzggr3y98wdk2c4hihkhwx8imk800gkl8v";
sha256 = "03ba3lfdsj9zl00v1yvwgcx87lbadf87livlfa5kgqssn9qdnll6";
type = "gem";
};
version = "3.12.0";
version = "3.12.2";
};
rspec-html-matchers = {
dependencies = ["nokogiri" "rspec"];
@ -1910,10 +1930,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1yvwnb0x5d6d4ff3wlgahk0wcw72ic51gd2snr1xxc5ify41kabv";
sha256 = "0sq2cc9pm5gq411y7iwfvzbmgv3g91lyf7y7cqn1lr3yf1v122nc";
type = "gem";
};
version = "3.12.0";
version = "3.12.3";
};
rspec-rails = {
dependencies = ["actionpack" "activesupport" "railties" "rspec-core" "rspec-expectations" "rspec-mocks" "rspec-support"];
@ -1964,10 +1984,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0ggxkq68ddxmynr2lyrvzr8qbrdvc2irxlx9ihxmvdpkg1vimr3w";
sha256 = "0a2j57r6pvngqlzkmww031gs5isax3nsr9n7cbfpqnh34ljh2lk1";
type = "gem";
};
version = "1.39.0";
version = "1.44.0";
};
rubocop-ast = {
dependencies = ["parser"];
@ -1975,10 +1995,21 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1qiq3q66w57im0ryrvnd1yq0g2s2safhywpv94441kvc1amayjzy";
sha256 = "1pdzabz95hv3z5sfbkfqa8bdybsfl13gv7rjb32v3ss8klq99lbd";
type = "gem";
};
version = "1.23.0";
version = "1.24.1";
};
rubocop-capybara = {
dependencies = ["rubocop"];
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1h4qcjkz0365qlhi7y1ni94qj14k397cad566zygm20p15ypbp5v";
type = "gem";
};
version = "2.17.0";
};
rubocop-discourse = {
dependencies = ["rubocop" "rubocop-rspec"];
@ -1986,21 +2017,21 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1afsyw78pkv1ry5x5ww0krv75lg2lnv7b72sy9bbk6ni87fzsk1q";
sha256 = "0m6jqyh44vfibqcnxi0xz69xgrbf8vpps90h6al5qdbibm9dmajd";
type = "gem";
};
version = "3.0";
version = "3.0.3";
};
rubocop-rspec = {
dependencies = ["rubocop"];
dependencies = ["rubocop" "rubocop-capybara"];
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0pj53m5zcrgyhb2zsjxqsav9sm9s8jh0mgk8c1qckaxy3dkwfxm4";
sha256 = "1vmmin3ymgq7bhv2hl4pd0zpwawy709p816axc4vi67w61b4bij1";
type = "gem";
};
version = "2.15.0";
version = "2.18.1";
};
ruby-prof = {
groups = ["development"];
@ -2011,10 +2042,10 @@
}];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1r3xalp91l07m0cwllcxjzg6nkviiqnxkcbgg5qnzsdji6rgy65m";
sha256 = "09n13bzm1p956z318xx1v7ikqdp2i971v7p3kwf3170axz368ccy";
type = "gem";
};
version = "1.4.3";
version = "1.4.5";
};
ruby-progressbar = {
groups = ["default" "development" "test"];
@ -2091,15 +2122,15 @@
version = "2.1.2";
};
selenium-webdriver = {
dependencies = ["childprocess" "rexml" "rubyzip" "websocket"];
dependencies = ["rexml" "rubyzip" "websocket"];
groups = ["test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1wj32kci0v4r7a5rdiq7yrf1763k2ap01dp09flr56hgnb75asx8";
sha256 = "1dkcyq2hfvf4wdj7q5cqqlka1dw6gz28dckxf4r17jmd53ymwg28";
type = "gem";
};
version = "4.6.1";
version = "4.8.0";
};
shoulda-matchers = {
dependencies = ["activesupport"];
@ -2107,10 +2138,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "11hv1xk153sspi6iif7a2m64shshpjr37l44c8qnqlfpzv0dxlm2";
sha256 = "11igjgh16dl5pwqizdmclzlzpv7mbmnh8fx7m9b5kfsjhwxqdfpn";
type = "gem";
};
version = "5.2.0";
version = "5.3.0";
};
sidekiq = {
dependencies = ["connection_pool" "rack" "redis"];
@ -2129,10 +2160,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1hrv046jll6ad1s964gsmcq4hvkr3zzr6jc7z1mns22mvfpbc3cr";
sha256 = "198kcbrjxhhzca19yrdcd6jjj9sb51aaic3b0sc3pwjghg3j49py";
type = "gem";
};
version = "0.21.2";
version = "0.22.0";
};
simplecov-html = {
groups = ["default" "test"];
@ -2170,9 +2201,11 @@
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "182jw5a0fbqah5w9jancvfmjbk88h8bxdbwnl4d3q809rpxdg8ay";
type = "gem";
fetchSubmodules = false;
rev = "f4d3dae71ef29c44b75a49cfbf8032cce07b423a";
sha256 = "0ps1zb411nrwih0rdp6vrnx0n4n18jcwks2x06iw52gvswlv49ry";
type = "git";
url = "https://github.com/rails/sprockets";
};
version = "3.7.2";
};
@ -2206,20 +2239,41 @@
}];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0v7nk5i3fa63h6clfr5vbr0y91v3kxkaxh6gbdx583pn982avdlc";
sha256 = "02r3a3ny27ljj19bzmxscw2vlmk7sw1p4ppbl2i69g17khi0p4sw";
type = "gem";
};
version = "0.2.22";
version = "0.2.23";
};
syntax_tree = {
dependencies = ["prettier_print"];
groups = ["development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1sqjjz3ja2563p4dgw46wfx0knpcp176gfvx8gfmkv8h166qnkqg";
type = "gem";
};
version = "5.2.0";
};
syntax_tree-disable_ternary = {
groups = ["development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0gdi6zx4hqpxd81zas3dlw1jrdp98fvsqj4p7f42x5lhpfzz04zc";
type = "gem";
};
version = "1.0.0";
};
test-prof = {
groups = ["test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "08f6lj1yh1ykwdaz5zkqpj5hn4vl4vid2x74k135cbggw3j9grdq";
sha256 = "15fcfjplc1zqahrha6rxgwnmjlyp41qkj4369fbxdfp0iaxb15pg";
type = "gem";
};
version = "1.0.11";
version = "1.1.0";
};
thor = {
groups = ["default" "development" "test"];
@ -2246,10 +2300,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "00cy93b6803j3aw5nail4l0zdrj54i5n2dlk6j9z998swcjbv3b2";
sha256 = "0lnh0kr7f43m1cjzc2jvggfsl1rzsaj2rd3pn6vp7mcqliymzaza";
type = "gem";
};
version = "0.3.0";
version = "0.3.1";
};
tzinfo = {
dependencies = ["concurrent-ruby"];
@ -2299,10 +2353,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0ra70s8prfacpqwj5v2mqn1rbfz6xds3n9nsr9cwzs3z2c0wm5j7";
sha256 = "1gi82k102q7bkmfi7ggn9ciypn897ylln1jk9q67kjhr39fj043a";
type = "gem";
};
version = "2.3.0";
version = "2.4.2";
};
unicorn = {
dependencies = ["kgio" "raindrops"];
@ -2336,10 +2390,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1w00162maixmqp7nwm8mmbvwnnpmjilwbim8yk2ypxy3x3ih6l69";
sha256 = "11c4n5rri8d45c47krpg76n98mqh36l0kp2qrkb4dxnkp4flay6y";
type = "gem";
};
version = "0.11.0";
version = "0.12.0";
};
uri_template = {
groups = ["default"];
@ -2361,6 +2415,17 @@
};
version = "1.1.1";
};
web-push = {
dependencies = ["hkdf" "jwt" "openssl"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1jsximg9v44rpclhjxp03fxk68jx675pghwxc66wj7rn9h9fc54i";
type = "gem";
};
version = "3.0.0";
};
webdrivers = {
dependencies = ["nokogiri" "rubyzip" "selenium-webdriver"];
groups = ["test"];
@ -2383,16 +2448,15 @@
};
version = "3.18.1";
};
webpush = {
dependencies = ["hkdf" "jwt"];
webrick = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1z9ma580q80czw46gi1bvsr2iwxr63aiyr7i9gilav6hbhg3sxv3";
sha256 = "1d4cvgmxhfczxiq5fr534lmizkhigd15bsx5719r5ds7k7ivisc7";
type = "gem";
};
version = "1.1.0";
version = "1.7.0";
};
websocket = {
groups = ["default" "test"];
@ -2430,10 +2494,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1m9n4sg7i0334yac7dcrhnhv5rzvrccgnh687n9x77ba3awk4yx1";
sha256 = "12jc68af2mwdkr9iqay2v6qgq47yk5g82sd171riibk62wbhp5p3";
type = "gem";
};
version = "0.0.10";
version = "0.1.2";
};
zeitwerk = {
groups = ["default" "development" "test"];