arturo 3.0.1 → 4.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 414a786d1d81cd18b31b5d54bc7df6b9c820d13106dcf471721d7383c28e75e8
4
- data.tar.gz: b42410fd7c9df45c1875958f335e5434a856e154c322b88819dfa20f4eb22877
3
+ metadata.gz: d10fff2eec2850ddf264d8c718160e17d05a1d04c2c0b62cab1c4fb6f6cecf0d
4
+ data.tar.gz: d10b0bcbd89d7e63c3e27c6ae679d44ebae9f6287174f078205bd44e6fb402b2
5
5
  SHA512:
6
- metadata.gz: 3044307df2f849112c60bb859ab52b2151634ff891442b1e93328f270ad4adb1ddbb8e1da63e5317ad3b5d365d6c3de3761024e585216f5c7a8a20de5af0aa2a
7
- data.tar.gz: 592a564c1af2f63d80523f9a41c412bb882dabc14195dc3a1dd73d88220b2e74e1d17c5b4edc444d4a9f3f74b0650e6d5f3bb7e4244765fcbf073a1be2f6dfc3
6
+ metadata.gz: 3e1d5c33c1fd71d8e1d927db48fbf8a68d3479736752c78ff057255e32c29886c2ef511797520b1ce6d22272e470ac97c60edc6519ec95b3a1a300344a2f388f
7
+ data.tar.gz: f2f7a5ed46507f91872d5ac798cbf2811e460f795a57f11acd71d367e9545479934b885300584976641aa2474777e8a5310be90b04ad1f474aea2d7b9f0d7bd7
data/CHANGELOG.md CHANGED
@@ -1,5 +1,10 @@
1
1
  ## Unreleased
2
2
 
3
+ ## v4.0.0
4
+ Stops loading the Rails engine automatically. If you are using the engine, you need to require it explicitly by adding `require 'arturo/engine'` to `application.rb`.
5
+ Adds support for Ruby 3.3.
6
+ Returns false immediately for `feature_enabled_for?` calls with `nil` recipients.
7
+
3
8
  ## v3.0.0
4
9
 
5
10
  Converts the Feature model into a mixin that should be used by services via a model generator.
@@ -1,4 +1,4 @@
1
1
  # frozen_string_literal: true
2
2
  module Arturo
3
- VERSION = '3.0.1'
3
+ VERSION = '4.0.0'
4
4
  end
data/lib/arturo.rb CHANGED
@@ -6,7 +6,6 @@ require_relative 'arturo/feature_methods'
6
6
  require_relative 'arturo/feature_availability'
7
7
  require_relative 'arturo/feature_management'
8
8
  require_relative 'arturo/feature_caching'
9
- require_relative 'arturo/engine' if defined?(Rails)
10
9
 
11
10
  module Arturo
12
11
  class << self
@@ -15,6 +14,8 @@ module Arturo
15
14
  # @param [#id] recipient
16
15
  # @return [true,false] whether the feature exists and is enabled for the recipient
17
16
  def feature_enabled_for?(feature_name, recipient)
17
+ return false if recipient.nil?
18
+
18
19
  f = self::Feature.to_feature(feature_name)
19
20
  f && f.enabled_for?(recipient)
20
21
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: arturo
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.1
4
+ version: 4.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James A. Rosen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-11-03 00:00:00.000000000 Z
11
+ date: 2024-04-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
@@ -186,7 +186,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
186
186
  - !ruby/object:Gem::Version
187
187
  version: '0'
188
188
  requirements: []
189
- rubygems_version: 3.0.3.1
189
+ rubygems_version: 3.5.3
190
190
  signing_key:
191
191
  specification_version: 4
192
192
  summary: Feature sliders, wrapped up in an engine