diff --git a/.github/stale.yml b/.github/stale.yml new file mode 100644 index 0000000..03407b3 --- /dev/null +++ b/.github/stale.yml @@ -0,0 +1,17 @@ +# Number of days of inactivity before an issue becomes stale +daysUntilStale: 60 +# Number of days of inactivity before a stale issue is closed +daysUntilClose: false +# Issues with these labels will never be considered stale +exemptLabels: + - pinned + - security +# Label to use when marking an issue as stale +staleLabel: stale +# Comment to post when marking an issue as stale. Set to `false` to disable +markComment: > + This issue has been automatically marked as stale because it has not had + recent activity. It might be closed if no further activity occurs. Thank you + for your contributions. +# Comment to post when closing a stale issue. Set to `false` to disable +closeComment: false diff --git a/.github_changelog_generator b/.github_changelog_generator new file mode 100644 index 0000000..eac0962 --- /dev/null +++ b/.github_changelog_generator @@ -0,0 +1,2 @@ +issues=false +exclude-labels=infrastructure diff --git a/.gitignore b/.gitignore index 18dd8a3..325c3c9 100644 --- a/.gitignore +++ b/.gitignore @@ -18,4 +18,3 @@ spec/examples.txt .rvmrc .ruby-version .ruby-gemset -.bundle diff --git a/.rubocop.yml b/.rubocop.yml index 5460257..b075a8f 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -1,8 +1,5 @@ require: - solidus_dev_support/rubocop -Layout/LineLength: - Enabled: false - -RSpec/NestedGroups: - Max: 4 +AllCops: + NewCops: disable diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..825c32f --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1 @@ +# Changelog diff --git a/LICENSE b/LICENSE index c27f1cf..98ef0df 100644 --- a/LICENSE +++ b/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 2020 [name of plugin creator] +Copyright (c) 2021 [name of plugin creator] All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/bin/sandbox b/bin/sandbox index 9c9392b..c414acc 100755 --- a/bin/sandbox +++ b/bin/sandbox @@ -67,12 +67,12 @@ unbundled bundle install --gemfile Gemfile unbundled bundle exec rake db:drop db:create -unbundled bundle exec rails generate spree:install \ +unbundled bundle exec rails generate solidus:install \ --auto-accept \ --user_class=Spree::User \ --enforce_available_locales=true \ --with-authentication=false \ - --payment-method=none + --payment-method=none \ $@ unbundled bundle exec rails generate solidus:auth:install diff --git a/lib/generators/solidus_tracking/install/install_generator.rb b/lib/generators/solidus_tracking/install/install_generator.rb index 70cddce..e428a9a 100644 --- a/lib/generators/solidus_tracking/install/install_generator.rb +++ b/lib/generators/solidus_tracking/install/install_generator.rb @@ -3,11 +3,25 @@ module SolidusTracking module Generators class InstallGenerator < Rails::Generators::Base + class_option :auto_run_migrations, type: :boolean, default: false source_root File.expand_path('templates', __dir__) def copy_initializer template 'initializer.rb', 'config/initializers/solidus_tracking.rb' end + + def add_migrations + run 'bin/rails railties:install:migrations FROM=solidus_tracking' + end + + def run_migrations + run_migrations = options[:auto_run_migrations] || ['', 'y', 'Y'].include?(ask('Would you like to run the migrations now? [Y/n]')) # rubocop:disable Layout/LineLength + if run_migrations + run 'bin/rails db:migrate' + else + puts 'Skipping bin/rails db:migrate, don\'t forget to run it!' # rubocop:disable Rails/Output + end + end end end end diff --git a/lib/solidus_tracking.rb b/lib/solidus_tracking.rb index c93ab47..1205882 100644 --- a/lib/solidus_tracking.rb +++ b/lib/solidus_tracking.rb @@ -1,11 +1,9 @@ # frozen_string_literal: true -require 'solidus_core' -require 'solidus_support' - +require 'solidus_tracking/configuration' require 'solidus_tracking/version' require 'solidus_tracking/engine' -require 'solidus_tracking/configuration' + require 'solidus_tracking/serializer/base' require 'solidus_tracking/serializer/address' require 'solidus_tracking/serializer/order' diff --git a/lib/solidus_tracking/configuration.rb b/lib/solidus_tracking/configuration.rb index a890daf..bb4930b 100644 --- a/lib/solidus_tracking/configuration.rb +++ b/lib/solidus_tracking/configuration.rb @@ -42,4 +42,16 @@ def event_klass!(name) event_klass(name) || raise(UnregisteredEventError, name) end end + + class << self + def configuration + @configuration ||= Configuration.new + end + + alias config configuration + + def configure + yield configuration + end + end end diff --git a/lib/solidus_tracking/engine.rb b/lib/solidus_tracking/engine.rb index 6175228..0a5b71d 100644 --- a/lib/solidus_tracking/engine.rb +++ b/lib/solidus_tracking/engine.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true -require 'spree/core' -require 'solidus_tracking' +require 'solidus_core' +require 'solidus_support' module SolidusTracking class Engine < Rails::Engine diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 07e3ca7..e295b71 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -18,9 +18,7 @@ # in spec/support/ and its subdirectories. Dir["#{__dir__}/support/**/*.rb"].sort.each { |f| require f } -# Will load Solidus core factory first and then the ones -# defined in `lib/solidus_tracking/testing_support/factories.rb`. -# and `lib/solidus_tracking/testing_support/factories`. +# Requires factories defined in lib/solidus_tracking/testing_support/factories.rb SolidusDevSupport::TestingSupport::Factories.load_for(SolidusTracking::Engine) RSpec.configure do |config|