diff --git a/Gemfile b/Gemfile index c4ec043f..76fe5fd5 100644 --- a/Gemfile +++ b/Gemfile @@ -2,7 +2,9 @@ source 'https://rubygems.org' -gem 'rails', '~> 7.1.2' +# gem 'rails', '~> 7.1.2' +# gem "rails", "~> 7.2.1", ">= 7.2.1.2" +gem 'rails', '~> 8.0.1' gem 'rack-cors', require: 'rack/cors' # Bundle edge Rails instead: @@ -16,8 +18,9 @@ gem 'slim-rails' #gem 'jsonapi-serializers', path: '/home/benjamin/development/rails/components/jsonapi-serializers' gem 'jsonapi-serializers', github: 'bterkuile/jsonapi-serializers' gem 'ruby-handlebars' + group :assets do - gem 'bourbon' #, '4.0.2' #animation keyframes + # gem 'bourbon' #, '4.0.2' #animation keyframes gem 'coffee-rails', '>= 5.0.0' gem 'sass-rails' #, '~> 5.0.0' #gem 'twitter-bootstrap-rails' @@ -59,6 +62,7 @@ end # gem 'couchbase-structures', github: 'bterkuile/couchbase-structures' #gem 'couch_potato', '>= 1.7.1' #, github: 'bterkuile/couch_potato' +gem 'mutex_m' # this is because the httpclient 2.8.3 requires it, and that one requires mutex_m, which is removed in ruby 3.4 gem 'couch_potato', github: 'langalex/couch_potato', branch: :main #gem 'simply_stored', path: '~/development/rails/components/simply_stored' #, github: 'bterkuile/simply_stored' gem 'simply_stored', github: 'bterkuile/simply_stored', branch: :master @@ -108,8 +112,8 @@ group :development do gem 'letter_opener' # gem 'thin' gem 'faye' - gem 'spring' - gem 'spring-commands-rspec' + #gem 'spring' + #gem 'spring-commands-rspec' #gem 'web-console', '~> 2.0.0' gem 'foreman', require: false #gem 'capistrano', require: false diff --git a/Gemfile.lock b/Gemfile.lock index 6b6903e1..6c50c0f2 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,6 +1,6 @@ GIT remote: https://github.com/bterkuile/cmtool.git - revision: 3aa204aa303c7c0579a00cf0b638e5e733ff8319 + revision: 54e295836f8843866a12aa84f1d4fa7125751fb8 branch: master specs: cmtool (2.0.0) @@ -32,7 +32,7 @@ GIT GIT remote: https://github.com/bterkuile/simply_stored.git - revision: e95c81fa4a2783d3c44d532a0bb2adcc6c43b089 + revision: 284607e973802ef46d7b47409bcf4beed7c0984c branch: master specs: simply_stored (1.0.0) @@ -41,95 +41,110 @@ GIT GIT remote: https://github.com/langalex/couch_potato.git - revision: 32fc825679a7a4c20413837735068c0f58da3fa5 + revision: 1ca5bfa39ff6d88f12f97c9ec2cae9d8cb5c2fe1 branch: main specs: couch_potato (1.7.1) - activemodel (>= 5.0, < 7.0) + activemodel (>= 5.0) couchrest (~> 2.0.1) json (~> 2.3) GEM remote: https://rubygems.org/ specs: - ace-rails-ap (4.4) - actioncable (6.1.4.4) - actionpack (= 6.1.4.4) - activesupport (= 6.1.4.4) + ace-rails-ap (4.5) + actioncable (8.0.1) + actionpack (= 8.0.1) + activesupport (= 8.0.1) nio4r (~> 2.0) websocket-driver (>= 0.6.1) - actionmailbox (6.1.4.4) - actionpack (= 6.1.4.4) - activejob (= 6.1.4.4) - activerecord (= 6.1.4.4) - activestorage (= 6.1.4.4) - activesupport (= 6.1.4.4) - mail (>= 2.7.1) - actionmailer (6.1.4.4) - actionpack (= 6.1.4.4) - actionview (= 6.1.4.4) - activejob (= 6.1.4.4) - activesupport (= 6.1.4.4) - mail (~> 2.5, >= 2.5.4) - rails-dom-testing (~> 2.0) - actionpack (6.1.4.4) - actionview (= 6.1.4.4) - activesupport (= 6.1.4.4) - rack (~> 2.0, >= 2.0.9) - rack-test (>= 0.6.3) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.0, >= 1.2.0) - actiontext (6.1.4.4) - actionpack (= 6.1.4.4) - activerecord (= 6.1.4.4) - activestorage (= 6.1.4.4) - activesupport (= 6.1.4.4) + zeitwerk (~> 2.6) + actionmailbox (8.0.1) + actionpack (= 8.0.1) + activejob (= 8.0.1) + activerecord (= 8.0.1) + activestorage (= 8.0.1) + activesupport (= 8.0.1) + mail (>= 2.8.0) + actionmailer (8.0.1) + actionpack (= 8.0.1) + actionview (= 8.0.1) + activejob (= 8.0.1) + activesupport (= 8.0.1) + mail (>= 2.8.0) + rails-dom-testing (~> 2.2) + actionpack (8.0.1) + actionview (= 8.0.1) + activesupport (= 8.0.1) nokogiri (>= 1.8.5) - actionview (6.1.4.4) - activesupport (= 6.1.4.4) + rack (>= 2.2.4) + rack-session (>= 1.0.1) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + useragent (~> 0.16) + actiontext (8.0.1) + actionpack (= 8.0.1) + activerecord (= 8.0.1) + activestorage (= 8.0.1) + activesupport (= 8.0.1) + globalid (>= 0.6.0) + nokogiri (>= 1.8.5) + actionview (8.0.1) + activesupport (= 8.0.1) builder (~> 3.1) - erubi (~> 1.4) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.1, >= 1.2.0) - active_attr (0.15.4) - actionpack (>= 3.0.2, < 7.1) - activemodel (>= 3.0.2, < 7.1) - activesupport (>= 3.0.2, < 7.1) - active_decorator (1.4.0) + erubi (~> 1.11) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + active_attr (0.17.1) + actionpack (>= 3.0.2, < 8.1) + activemodel (>= 3.0.2, < 8.1) + activesupport (>= 3.0.2, < 8.1) + active_decorator (1.4.1) activesupport - activejob (6.1.4.4) - activesupport (= 6.1.4.4) + activejob (8.0.1) + activesupport (= 8.0.1) globalid (>= 0.3.6) - activemodel (6.1.4.4) - activesupport (= 6.1.4.4) - activerecord (6.1.4.4) - activemodel (= 6.1.4.4) - activesupport (= 6.1.4.4) - activestorage (6.1.4.4) - actionpack (= 6.1.4.4) - activejob (= 6.1.4.4) - activerecord (= 6.1.4.4) - activesupport (= 6.1.4.4) - marcel (~> 1.0.0) - mini_mime (>= 1.1.0) - activesupport (6.1.4.4) - concurrent-ruby (~> 1.0, >= 1.0.2) + activemodel (8.0.1) + activesupport (= 8.0.1) + activerecord (8.0.1) + activemodel (= 8.0.1) + activesupport (= 8.0.1) + timeout (>= 0.4.0) + activestorage (8.0.1) + actionpack (= 8.0.1) + activejob (= 8.0.1) + activerecord (= 8.0.1) + activesupport (= 8.0.1) + marcel (~> 1.0) + activesupport (8.0.1) + base64 + benchmark (>= 0.3) + bigdecimal + concurrent-ruby (~> 1.0, >= 1.3.1) + connection_pool (>= 2.2.5) + drb i18n (>= 1.6, < 2) + logger (>= 1.4.2) minitest (>= 5.1) - tzinfo (~> 2.0) - zeitwerk (~> 2.3) - addressable (2.8.0) - public_suffix (>= 2.0.2, < 5.0) - bcrypt (3.1.16) - bourbon (7.0.0) + securerandom (>= 0.3) + tzinfo (~> 2.0, >= 2.0.5) + uri (>= 0.13.1) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + base64 (0.2.0) + bcrypt (3.1.20) + benchmark (0.4.0) + bigdecimal (3.1.9) + bourbon (7.3.0) thor (~> 1.0) - builder (3.2.4) - cancancan (3.3.0) - capybara (3.36.0) + builder (3.3.0) + cancancan (3.6.1) + capybara (3.40.0) addressable matrix mini_mime (>= 0.1.3) - nokogiri (~> 1.8) + nokogiri (~> 1.11) rack (>= 1.6.0) rack-test (>= 0.6.3) regexp_parser (>= 1.5, < 3.0) @@ -137,6 +152,8 @@ GEM capybara-screenshot (1.0.26) capybara (>= 1.0, < 4) launchy + childprocess (5.1.0) + logger (~> 1.5) chunky_png (1.4.0) climate_control (0.2.0) cliver (0.3.2) @@ -148,73 +165,62 @@ GEM coffee-script-source execjs coffee-script-source (1.12.2) - concurrent-ruby (1.1.9) - cookiejar (0.3.3) + concurrent-ruby (1.3.5) + connection_pool (2.5.0) + cookiejar (0.3.4) couchrest (2.0.1) httpclient (~> 2.8) mime-types (>= 1.15) multi_json (~> 1.7) - crack (0.4.5) + crack (1.0.0) + bigdecimal rexml crass (1.0.6) - cucumber-gherkin (14.2.0) - cucumber-messages (~> 12.4, >= 12.4.0) - cucumber-messages (12.4.0) - protobuf-cucumber (~> 3.10, >= 3.10.8) - devise (4.8.1) + cucumber-gherkin (30.0.4) + cucumber-messages (> 25, < 28) + cucumber-messages (27.2.0) + cuke_modeler (3.23.0) + cucumber-gherkin (< 31.0) + date (3.4.1) + devise (4.9.4) bcrypt (~> 3.0) orm_adapter (~> 0.1) railties (>= 4.1.0) responders warden (~> 1.2.3) - devise-i18n (1.10.1) - devise (>= 4.8.0) - diff-lcs (1.5.0) - docile (1.4.0) + devise-i18n (1.12.1) + devise (>= 4.9.0) + diff-lcs (1.5.1) + docile (1.4.1) + drb (2.2.1) em-http-request (1.1.7) addressable (>= 2.3.4) cookiejar (!= 0.3.1) em-socksify (>= 0.3) eventmachine (>= 1.0.3) http_parser.rb (>= 0.6.0) - em-socksify (0.3.2) + em-socksify (0.3.3) + base64 eventmachine (>= 1.0.0.beta.4) - email_validator (2.2.3) + email_validator (2.2.4) activemodel - erubi (1.10.0) + erubi (1.13.1) eventmachine (1.2.7) - exception_notification (4.5.0) - actionmailer (>= 5.2, < 8) - activesupport (>= 5.2, < 8) - execjs (2.8.1) - factory_bot (6.2.0) - activesupport (>= 5.0.0) - factory_bot_rails (6.2.0) - factory_bot (~> 6.2.0) + exception_notification (4.1.1) + actionmailer (>= 3.0.4) + activesupport (>= 3.0.4) + execjs (2.10.0) + factory_bot (6.5.1) + activesupport (>= 6.1.0) + factory_bot_rails (6.4.4) + factory_bot (~> 6.5) railties (>= 5.0.0) - faraday (1.9.3) - faraday-em_http (~> 1.0) - faraday-em_synchrony (~> 1.0) - faraday-excon (~> 1.1) - faraday-httpclient (~> 1.0) - faraday-multipart (~> 1.0) - faraday-net_http (~> 1.0) - faraday-net_http_persistent (~> 1.0) - faraday-patron (~> 1.0) - faraday-rack (~> 1.0) - faraday-retry (~> 1.0) - ruby2_keywords (>= 0.0.4) - faraday-em_http (1.0.0) - faraday-em_synchrony (1.0.0) - faraday-excon (1.1.0) - faraday-httpclient (1.0.1) - faraday-multipart (1.0.3) - multipart-post (>= 1.2, < 3) - faraday-net_http (1.0.1) - faraday-net_http_persistent (1.2.0) - faraday-patron (1.0.0) - faraday-rack (1.0.0) - faraday-retry (1.0.3) + faraday (2.12.2) + faraday-net_http (>= 2.0, < 3.5) + json + logger + faraday-net_http (3.4.0) + net-http (>= 0.5.0) faye (1.4.0) cookiejar (>= 0.3.0) em-http-request (>= 1.1.6) @@ -223,38 +229,47 @@ GEM multi_json (>= 1.0.0) rack (>= 1.0.0) websocket-driver (>= 0.5.1) - faye-websocket (0.11.1) + faye-websocket (0.11.3) eventmachine (>= 0.12.0) websocket-driver (>= 0.5.1) - ffi (1.15.5) - font-awesome-rails (4.7.0.8) - railties (>= 3.2, < 8.0) - foreman (0.87.2) + ffi (1.17.1-aarch64-linux-gnu) + ffi (1.17.1-x86_64-darwin) + ffi (1.17.1-x86_64-linux-gnu) + font-awesome-rails (4.7.0.9) + railties (>= 3.2, < 9.0) + foreman (0.88.1) foundation-rails (5.5.3.2) railties (>= 3.1.0) sass (>= 3.3.0, < 3.5) fuubar (2.5.1) rspec-core (~> 3.0) ruby-progressbar (~> 1.4) - globalid (1.0.0) - activesupport (>= 5.0) - hashdiff (1.0.1) + globalid (1.2.1) + activesupport (>= 6.1) + hashdiff (1.1.2) hashie (5.0.0) http_parser.rb (0.8.0) httpclient (2.8.3) - i18n (1.9.1) + i18n (1.14.7) concurrent-ruby (~> 1.0) + io-console (0.8.0) + irb (1.15.1) + pp (>= 0.6.0) + rdoc (>= 4.0.0) + reline (>= 0.4.2) iso_country_codes (0.7.8) - jquery-rails (4.4.0) + jquery-rails (4.6.0) rails-dom-testing (>= 1, < 3) railties (>= 4.2.0) thor (>= 0.14, < 2.0) - jquery-ui-rails (6.0.1) + jquery-ui-rails (7.0.0) railties (>= 3.2.16) - js-routes (2.2.1) - railties (>= 4) - json (2.6.1) - jwt (2.3.0) + js-routes (2.3.4) + railties (>= 5) + sorbet-runtime + json (2.10.0) + jwt (2.10.1) + base64 kaminari (1.2.2) activesupport (>= 4.1.0) kaminari-actionview (= 1.2.2) @@ -267,53 +282,77 @@ GEM activerecord kaminari-core (= 1.2.2) kaminari-core (1.2.2) - launchy (2.5.0) - addressable (~> 2.7) - letter_opener (1.7.0) - launchy (~> 2.2) - loofah (2.13.0) + launchy (3.1.0) + addressable (~> 2.8) + childprocess (~> 5.0) + logger (~> 1.6) + letter_opener (1.10.0) + launchy (>= 2.2, < 4) + logger (1.6.5) + loofah (2.24.0) crass (~> 1.0.2) - nokogiri (>= 1.5.9) - mail (2.7.1) + nokogiri (>= 1.12.0) + mail (2.8.1) mini_mime (>= 0.1.1) - marcel (1.0.2) + net-imap + net-pop + net-smtp + marcel (1.0.4) matrix (0.4.2) - method_source (1.0.0) - middleware (0.1.0) - mime-types (3.4.1) + method_source (1.1.0) + mime-types (3.6.0) + logger mime-types-data (~> 3.2015) - mime-types-data (3.2022.0105) + mime-types-data (3.2025.0204) mimemagic (0.3.10) nokogiri (~> 1) rake - mini_magick (4.11.0) - mini_mime (1.1.2) - minitest (5.15.0) + mini_magick (5.1.2) + benchmark + logger + mini_mime (1.1.5) + minitest (5.25.4) multi_json (1.15.0) - multi_xml (0.6.0) - multipart-post (2.1.1) + multi_xml (0.7.1) + bigdecimal (~> 3.1) + mutex_m (0.3.0) naught (1.1.0) - nio4r (2.5.8) - nokogiri (1.13.1-x86_64-darwin) + net-http (0.6.0) + uri + net-imap (0.5.6) + date + net-protocol + net-pop (0.1.2) + net-protocol + net-protocol (0.2.2) + timeout + net-smtp (0.5.1) + net-protocol + nio4r (2.7.4) + nokogiri (1.18.2-aarch64-linux-gnu) racc (~> 1.4) - nokogiri (1.13.1-x86_64-linux) + nokogiri (1.18.2-x86_64-darwin) racc (~> 1.4) - oauth2 (1.4.7) - faraday (>= 0.8, < 2.0) + nokogiri (1.18.2-x86_64-linux-gnu) + racc (~> 1.4) + oauth2 (2.0.9) + faraday (>= 0.17.3, < 3.0) jwt (>= 1.0, < 3.0) - multi_json (~> 1.3) multi_xml (~> 0.5) - rack (>= 1.2, < 3) - omniauth (1.9.1) + rack (>= 1.2, < 4) + snaky_hash (~> 2.0) + version_gem (~> 1.1) + omniauth (1.9.2) hashie (>= 3.4.6) rack (>= 1.6.2, < 3) - omniauth-facebook (9.0.0) - omniauth-oauth2 (~> 1.2) + omniauth-facebook (10.0.0) + bigdecimal + omniauth-oauth2 (>= 1.2, < 3) omniauth-instagram (1.3.0) omniauth (~> 1) omniauth-oauth2 (~> 1) - omniauth-oauth2 (1.7.2) - oauth2 (~> 1.4) + omniauth-oauth2 (1.7.3) + oauth2 (>= 1.4, < 3) omniauth (>= 1.9, < 3) orm_adapter (0.5.0) paperclip (6.1.0) @@ -329,96 +368,104 @@ GEM capybara (>= 2.1, < 4) cliver (~> 0.3.1) websocket-driver (>= 0.2.0) - protobuf-cucumber (3.10.8) - activesupport (>= 3.2) - middleware - thor - thread_safe - pry (0.14.1) + pp (0.6.2) + prettyprint + prettyprint (0.2.0) + pry (0.15.2) coderay (~> 1.1) method_source (~> 1.0) - pry-doc (1.3.0) + pry-doc (1.5.0) pry (~> 0.11) yard (~> 0.9.11) - pry-rails (0.3.9) - pry (>= 0.10.4) - public_suffix (4.0.6) - puma (4.3.10) + pry-rails (0.3.11) + pry (>= 0.13.0) + psych (5.2.3) + date + stringio + public_suffix (6.0.1) + puma (6.6.0) nio4r (~> 2.0) - racc (1.6.0) - rack (2.2.3) - rack-cors (1.1.1) + racc (1.8.1) + rack (2.2.10) + rack-cors (2.0.2) rack (>= 2.0.0) - rack-test (1.1.0) - rack (>= 1.0, < 3) - rails (6.1.4.4) - actioncable (= 6.1.4.4) - actionmailbox (= 6.1.4.4) - actionmailer (= 6.1.4.4) - actionpack (= 6.1.4.4) - actiontext (= 6.1.4.4) - actionview (= 6.1.4.4) - activejob (= 6.1.4.4) - activemodel (= 6.1.4.4) - activerecord (= 6.1.4.4) - activestorage (= 6.1.4.4) - activesupport (= 6.1.4.4) + rack-session (1.0.2) + rack (< 3) + rack-test (2.2.0) + rack (>= 1.3) + rackup (1.0.1) + rack (< 3) + webrick + rails (8.0.1) + actioncable (= 8.0.1) + actionmailbox (= 8.0.1) + actionmailer (= 8.0.1) + actionpack (= 8.0.1) + actiontext (= 8.0.1) + actionview (= 8.0.1) + activejob (= 8.0.1) + activemodel (= 8.0.1) + activerecord (= 8.0.1) + activestorage (= 8.0.1) + activesupport (= 8.0.1) bundler (>= 1.15.0) - railties (= 6.1.4.4) - sprockets-rails (>= 2.0.0) - rails-controller-testing (1.0.5) - actionpack (>= 5.0.1.rc1) - actionview (>= 5.0.1.rc1) - activesupport (>= 5.0.1.rc1) - rails-dom-testing (2.0.3) - activesupport (>= 4.2.0) + railties (= 8.0.1) + rails-dom-testing (2.2.0) + activesupport (>= 5.0.0) + minitest nokogiri (>= 1.6) - rails-html-sanitizer (1.4.2) - loofah (~> 2.3) - railties (6.1.4.4) - actionpack (= 6.1.4.4) - activesupport (= 6.1.4.4) - method_source - rake (>= 0.13) - thor (~> 1.0) - rake (13.0.6) - regexp_parser (2.2.0) - responders (3.0.1) - actionpack (>= 5.0) - railties (>= 5.0) - rexml (3.2.5) - rqrcode (2.1.0) + rails-html-sanitizer (1.6.2) + loofah (~> 2.21) + nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0) + railties (8.0.1) + actionpack (= 8.0.1) + activesupport (= 8.0.1) + irb (~> 1.13) + rackup (>= 1.0.0) + rake (>= 12.2) + thor (~> 1.0, >= 1.2.2) + zeitwerk (~> 2.6) + rake (13.2.1) + rdoc (6.12.0) + psych (>= 4.0.0) + regexp_parser (2.10.0) + reline (0.6.0) + io-console (~> 0.5) + responders (3.1.1) + actionpack (>= 5.2) + railties (>= 5.2) + rexml (3.4.0) + rqrcode (2.2.0) chunky_png (~> 1.0) rqrcode_core (~> 1.0) rqrcode_core (1.2.0) - rspec (3.10.0) - rspec-core (~> 3.10.0) - rspec-expectations (~> 3.10.0) - rspec-mocks (~> 3.10.0) - rspec-core (3.10.2) - rspec-support (~> 3.10.0) - rspec-expectations (3.10.2) + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-core (3.13.3) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.3) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.10.0) - rspec-its (1.3.0) - rspec-core (>= 3.0.0) - rspec-expectations (>= 3.0.0) - rspec-mocks (3.10.3) + rspec-support (~> 3.13.0) + rspec-its (2.0.0) + rspec-core (>= 3.13.0) + rspec-expectations (>= 3.13.0) + rspec-mocks (3.13.2) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.10.0) - rspec-rails (5.1.0) - actionpack (>= 5.2) - activesupport (>= 5.2) - railties (>= 5.2) - rspec-core (~> 3.10) - rspec-expectations (~> 3.10) - rspec-mocks (~> 3.10) - rspec-support (~> 3.10) - rspec-support (3.10.3) - ruby-handlebars (0.4.0) + rspec-support (~> 3.13.0) + rspec-rails (7.1.1) + actionpack (>= 7.0) + activesupport (>= 7.0) + railties (>= 7.0) + rspec-core (~> 3.13) + rspec-expectations (~> 3.13) + rspec-mocks (~> 3.13) + rspec-support (~> 3.13) + rspec-support (3.13.2) + ruby-handlebars (0.4.1) parslet (~> 1.6, >= 1.6.2) - ruby-progressbar (1.11.0) - ruby2_keywords (0.0.5) + ruby-progressbar (1.13.0) sass (3.4.25) sass-rails (6.0.0) sassc-rails (~> 2.1, >= 2.1.1) @@ -430,66 +477,73 @@ GEM sprockets (> 3.0) sprockets-rails tilt - simplecov (0.21.2) + securerandom (0.4.1) + simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) simplecov_json_formatter (~> 0.1) - simplecov-html (0.12.3) - simplecov_json_formatter (0.1.3) - slim (4.1.0) - temple (>= 0.7.6, < 0.9) - tilt (>= 2.0.6, < 2.1) - slim-rails (3.3.0) + simplecov-html (0.13.1) + simplecov_json_formatter (0.1.4) + slim (5.2.1) + temple (~> 0.10.0) + tilt (>= 2.1.0) + slim-rails (3.7.0) actionpack (>= 3.1) railties (>= 3.1) - slim (>= 3.0, < 5.0) - spring (4.0.0) - spring-commands-rspec (1.0.4) - spring (>= 0.9.1) - sprockets (4.0.2) + slim (>= 3.0, < 6.0, != 5.0.0) + snaky_hash (2.0.1) + hashie + version_gem (~> 1.1, >= 1.1.1) + sorbet-runtime (0.5.11813) + sprockets (4.2.1) concurrent-ruby (~> 1.0) - rack (> 1, < 3) - sprockets-rails (3.4.2) - actionpack (>= 5.2) - activesupport (>= 5.2) + rack (>= 2.2.4, < 4) + sprockets-rails (3.5.2) + actionpack (>= 6.1) + activesupport (>= 6.1) sprockets (>= 3.0.0) - sucker_punch (3.0.1) + stringio (3.1.2) + sucker_punch (3.2.0) concurrent-ruby (~> 1.0) - temple (0.8.2) + temple (0.10.3) terrapin (0.6.0) climate_control (>= 0.0.3, < 1.0) test_squad (0.1.3) rails - thor (1.2.1) - thread_safe (0.3.6) - tilt (2.0.10) - timecop (0.9.4) - tinymce-rails (5.10.2) + thor (1.3.2) + tilt (2.6.0) + timecop (0.9.10) + timeout (0.4.3) + tinymce-rails (7.6.1) railties (>= 3.1.1) - turnip (4.3.0) - cucumber-gherkin (~> 14.0) + turnip (4.4.1) + cuke_modeler (~> 3.15) rspec (>= 3.0, < 4.0) - tzinfo (2.0.4) + tzinfo (2.0.6) concurrent-ruby (~> 1.0) - uglifier (4.2.0) + uglifier (4.2.1) execjs (>= 0.3.0, < 3) + uri (1.0.2) + useragent (0.16.11) + version_gem (1.1.4) warden (1.2.9) rack (>= 2.0.9) - webmock (3.14.0) + webmock (3.25.0) addressable (>= 2.8.0) crack (>= 0.3.2) hashdiff (>= 0.4.0, < 2.0.0) - webrick (1.7.0) - websocket-driver (0.7.5) + webrick (1.9.1) + websocket-driver (0.7.7) + base64 websocket-extensions (>= 0.1.0) websocket-extensions (0.1.5) xpath (3.2.0) nokogiri (~> 1.8) - yard (0.9.27) - webrick (~> 1.7.0) - zeitwerk (2.5.4) + yard (0.9.37) + zeitwerk (2.7.1) PLATFORMS + aarch64-linux x86_64-darwin-21 x86_64-linux @@ -497,7 +551,6 @@ DEPENDENCIES ace-rails-ap active_attr active_decorator - bourbon cancancan capybara-screenshot cmtool! @@ -522,6 +575,7 @@ DEPENDENCIES launchy letter_opener mini_magick + mutex_m naught omniauth-facebook omniauth-instagram @@ -530,10 +584,9 @@ DEPENDENCIES poltergeist pry-doc pry-rails - puma (~> 4.3.10) + puma (>= 5.0) rack-cors - rails (~> 6.1.0) - rails-controller-testing + rails (~> 8.0.1) rqrcode rspec-its rspec-rails @@ -542,8 +595,6 @@ DEPENDENCIES simplecov simply_stored! slim-rails - spring - spring-commands-rspec sucker_punch test_squad timecop @@ -552,4 +603,4 @@ DEPENDENCIES webmock BUNDLED WITH - 2.3.6 + 2.6.2 diff --git a/README.md b/README.md index 80e215bc..139c2765 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,25 @@ Mozo server backend README ===================================== +Start the server for development: +---------------------- +### Start couchdb +Since in the Fedora Asahi on Macbook M1, couchdb is not an available package, it is build locally and started there: +``` +cd ~/projects/couchdb/couchdb +./dev/run --admin=admin:admin +``` + +### Start rails +Note that the couchdb admin password can be changed for better security: +``` +COUCHDB_ADMIN_PASSWORD=admin rails s +``` + +### Access the server +The server should now be accessible using: +https://localhost:3002/ + TODO: ------------------ ### Supplier app @@ -15,6 +34,17 @@ TODO: Application architecture ----------------------------------------------- +Developing using SSL +------------------------- +When reading this, hopefully there will be a nice standardized solution, better than found at the time of writing this (2025-02-10) +A nice solution seems to be using: +* https://github.com/puma/puma-dev +The fast and dirty way, without trusting certificates will be: +https://spaquet.medium.com/setting-up-ssl-on-localhost-for-rails-development-with-puma-211574dbfb87 + +Also take a look at: +https://jfbcodes.medium.com/using-rails-with-ssl-on-localhost-52d60f14a382 + Building the product ------------------------------------------ 1. Set the current routes to mozo-supplier client code (TODO: make way diff --git a/app/assets/images/supplier/flags/flag-en.png b/app/assets/images/supplier/flags/flag-en.png old mode 100755 new mode 100644 diff --git a/app/assets/images/supplier/flags/flag-nl.png b/app/assets/images/supplier/flags/flag-nl.png old mode 100755 new mode 100644 diff --git a/app/assets/images/user/flags/flag-en.png b/app/assets/images/user/flags/flag-en.png old mode 100755 new mode 100644 diff --git a/app/assets/images/user/flags/flag-nl.png b/app/assets/images/user/flags/flag-nl.png old mode 100755 new mode 100644 diff --git a/app/models/page.rb b/app/models/page.rb index ac738f61..caeb01ed 100644 --- a/app/models/page.rb +++ b/app/models/page.rb @@ -1,3 +1,4 @@ +require 'null_model' class Page include Cmtool::Includes::Page include ActiveModel::SerializerSupport diff --git a/bin/build_mobile_app.rb b/bin/build_mobile_app.rb old mode 100755 new mode 100644 diff --git a/bin/dedigest_assets b/bin/dedigest_assets old mode 100755 new mode 100644 diff --git a/bin/development_build b/bin/development_build old mode 100755 new mode 100644 diff --git a/bin/migrate_translations.rb b/bin/migrate_translations.rb old mode 100755 new mode 100644 diff --git a/bin/rails b/bin/rails old mode 100755 new mode 100644 diff --git a/bin/rake b/bin/rake old mode 100755 new mode 100644 diff --git a/bin/rspec b/bin/rspec old mode 100755 new mode 100644 diff --git a/bin/set_translations_to_apps.rb b/bin/set_translations_to_apps.rb old mode 100755 new mode 100644 diff --git a/bin/setup b/bin/setup old mode 100755 new mode 100644 diff --git a/bin/spring b/bin/spring old mode 100755 new mode 100644 diff --git a/bin/test_prepare b/bin/test_prepare old mode 100755 new mode 100644 diff --git a/bin/user_asset_corrections b/bin/user_asset_corrections old mode 100755 new mode 100644 diff --git a/build b/build old mode 100755 new mode 100644 diff --git a/config/application.rb b/config/application.rb index 625c2d40..d005fda0 100644 --- a/config/application.rb +++ b/config/application.rb @@ -227,6 +227,7 @@ module Qwaiter # Custom directories with classes and modules you want to be autoloadable. # config.autoload_paths += %W(#{config.root}/extras) + config.autoload_paths << Rails.root.join('app/services').to_s # Only load the plugins named here, in the order given (default is alphabetical). # :all can be used as a placeholder for all plugins not explicitly named. @@ -254,7 +255,8 @@ module Qwaiter # Enable escaping HTML in JSON. config.active_support.escape_html_entities_in_json = true - initializer 'mozo.cmtool', after: 'cmtool.build_menu' do + # initializer 'mozo.cmtool', after: 'cmtool.build_menu' do + config.after_initialize do Cmtool::Menu.register do before :users do group label: :mozo do # Allow other tools to inject into the mozo menu diff --git a/config/couchdb.yml b/config/couchdb.yml index 7e692a84..c2feed59 100644 --- a/config/couchdb.yml +++ b/config/couchdb.yml @@ -1,13 +1,13 @@ development: validation_framework: :active_model #optional #database: "http://mozo:secret@localhost:5984/qwaiter_development" - database: "http://admin:<%= ENV['COUCHDB_ADMIN_PASSWORD']%>@localhost:5984/mozo_development" + database: "http://admin:<%= ENV['COUCHDB_ADMIN_PASSWORD']%>@localhost:15984/mozo_development" #database: mozo_development test: validation_framework: :active_model #optional #database: "http://mozo:secret@localhost:5984/qwaiter_test" #Testing can only be done as couchdb admin, since it requires creating and destroying the database - database: "http://admin:<%= ENV['COUCHDB_ADMIN_PASSWORD']%>@localhost:5984/mozo_test" + database: "http://admin:<%= ENV['COUCHDB_ADMIN_PASSWORD']%>@localhost:15984/mozo_test" # database: "http://admin:secret@localhost:5984/qwaiter_test" production: validation_framework: :active_model #optional diff --git a/config/initializers/mustache_template_handler.rb b/config/initializers/mustache_template_handler.rb index 3bc0833c..1e1b6717 100644 --- a/config/initializers/mustache_template_handler.rb +++ b/config/initializers/mustache_template_handler.rb @@ -1,12 +1,12 @@ -module MustacheTemplateHandler - def self.call(template, source) - binding.pry - if template.locals.include? :locals - "Mustache.render(#{template.source.inspect}, locals).html_safe" - else - "#{template.source.inspect}.html_safe" - end - end -end -ActionView::Template.register_template_handler(:mustache, MustacheTemplateHandler) -ActionController::Base.view_paths << Rails.root.join('app', 'templates') +# module MustacheTemplateHandler +# def self.call(template, source) +# binding.pry +# if template.locals.include? :locals +# "Mustache.render(#{template.source.inspect}, locals).html_safe" +# else +# "#{template.source.inspect}.html_safe" +# end +# end +# end +# ActionView::Template.register_template_handler(:mustache, MustacheTemplateHandler) +# ActionController::Base.view_paths << Rails.root.join('app', 'templates') diff --git a/config/puma.rb b/config/puma.rb index 7a1660c7..b3bb34c3 100644 --- a/config/puma.rb +++ b/config/puma.rb @@ -22,8 +22,8 @@ port ENV.fetch("PORT") { 3001 } environment ENV.fetch("RAILS_ENV") { "development" } if ENV['RAILS_ENV'] == 'development' - localhost_key = "#{File.join('config', 'certs-local', 'localhost-key.pem')}" - localhost_crt = "#{File.join('config', 'certs-local', 'localhost.pem')}" + localhost_key = "#{File.join('config', 'certs-local', 'localhost.key')}" + localhost_crt = "#{File.join('config', 'certs-local', 'localhost.crt')}" # To be able to use rake etc ssl_bind '0.0.0.0', 3002, { key: localhost_key, diff --git a/drb_counter/drb_counter.rb b/drb_counter/drb_counter.rb old mode 100755 new mode 100644 diff --git a/drb_counter/rebuild-docker.sh b/drb_counter/rebuild-docker.sh old mode 100755 new mode 100644 diff --git a/expose.sh b/expose.sh old mode 100755 new mode 100644 diff --git a/faye/rebuild-docker.sh b/faye/rebuild-docker.sh old mode 100755 new mode 100644 diff --git a/make_mobile b/make_mobile old mode 100755 new mode 100644 diff --git a/mdocker b/mdocker old mode 100755 new mode 100644 diff --git a/vendor/assets/images/images/ui-bg_diamond_10_4f4221_10x8.png b/vendor/assets/images/images/ui-bg_diamond_10_4f4221_10x8.png old mode 100755 new mode 100644 diff --git a/vendor/assets/images/images/ui-bg_diamond_20_372806_10x8.png b/vendor/assets/images/images/ui-bg_diamond_20_372806_10x8.png old mode 100755 new mode 100644 diff --git a/vendor/assets/images/images/ui-bg_diamond_25_675423_10x8.png b/vendor/assets/images/images/ui-bg_diamond_25_675423_10x8.png old mode 100755 new mode 100644 diff --git a/vendor/assets/images/images/ui-bg_diamond_25_d5ac5d_10x8.png b/vendor/assets/images/images/ui-bg_diamond_25_d5ac5d_10x8.png old mode 100755 new mode 100644 diff --git a/vendor/assets/images/images/ui-bg_diamond_8_261803_10x8.png b/vendor/assets/images/images/ui-bg_diamond_8_261803_10x8.png old mode 100755 new mode 100644 diff --git a/vendor/assets/images/images/ui-bg_diamond_8_443113_10x8.png b/vendor/assets/images/images/ui-bg_diamond_8_443113_10x8.png old mode 100755 new mode 100644 diff --git a/vendor/assets/images/images/ui-bg_flat_75_ddd4b0_40x100.png b/vendor/assets/images/images/ui-bg_flat_75_ddd4b0_40x100.png old mode 100755 new mode 100644 diff --git a/vendor/assets/images/images/ui-bg_highlight-hard_65_fee4bd_1x100.png b/vendor/assets/images/images/ui-bg_highlight-hard_65_fee4bd_1x100.png old mode 100755 new mode 100644 diff --git a/vendor/assets/images/images/ui-icons_070603_256x240.png b/vendor/assets/images/images/ui-icons_070603_256x240.png old mode 100755 new mode 100644 diff --git a/vendor/assets/images/images/ui-icons_e8e2b5_256x240.png b/vendor/assets/images/images/ui-icons_e8e2b5_256x240.png old mode 100755 new mode 100644 diff --git a/vendor/assets/images/images/ui-icons_e9cd86_256x240.png b/vendor/assets/images/images/ui-icons_e9cd86_256x240.png old mode 100755 new mode 100644 diff --git a/vendor/assets/images/images/ui-icons_efec9f_256x240.png b/vendor/assets/images/images/ui-icons_efec9f_256x240.png old mode 100755 new mode 100644 diff --git a/vendor/assets/images/images/ui-icons_f2ec64_256x240.png b/vendor/assets/images/images/ui-icons_f2ec64_256x240.png old mode 100755 new mode 100644 diff --git a/vendor/assets/images/images/ui-icons_f9f2bd_256x240.png b/vendor/assets/images/images/ui-icons_f9f2bd_256x240.png old mode 100755 new mode 100644 diff --git a/vendor/assets/images/images/ui-icons_ff7519_256x240.png b/vendor/assets/images/images/ui-icons_ff7519_256x240.png old mode 100755 new mode 100644 diff --git a/vendor/assets/stylesheets/jquery-ui-1.8.23.custom.css b/vendor/assets/stylesheets/jquery-ui-1.8.23.custom.css old mode 100755 new mode 100644