Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

prepare 5.4.2 release #117

Merged
merged 72 commits into from
Jan 5, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
72 commits
Select commit Hold shift + click to select a range
f5092af
Remove @ashanbrown from codeowners
ashanbrown Jul 24, 2018
fd63b2b
log exception stacktraces at debug level
eli-darkly Aug 2, 2018
d4be186
re-add minimal unit test
eli-darkly Aug 2, 2018
d73d66c
log exceptions at error level
eli-darkly Aug 2, 2018
94c8485
Merge pull request #75 from launchdarkly/eb/ch19339/exception-logging
eli-darkly Aug 2, 2018
ca15234
add new version of all_flags that captures more metadata
eli-darkly Aug 17, 2018
ed19523
add tests for FeatureFlagsState
eli-darkly Aug 17, 2018
73f2d89
provide as_json method that returns a hash instead of just a string
eli-darkly Aug 20, 2018
ab896b1
state can be serialized with JSON.generate
eli-darkly Aug 21, 2018
00347c6
add $valid
eli-darkly Aug 21, 2018
bdac27e
add ability to filter for only client-side flags
eli-darkly Aug 21, 2018
748b59b
Merge pull request #76 from launchdarkly/eb/ch22308/all-flags-state
eli-darkly Aug 21, 2018
50b3aa5
Merge pull request #77 from launchdarkly/eb/ch12124/client-side-filter
eli-darkly Aug 21, 2018
cee4c18
implement evaluation with explanations
eli-darkly Aug 23, 2018
d2c2ab8
misc cleanup
eli-darkly Aug 23, 2018
64a00a1
misc cleanup, more error checking
eli-darkly Aug 23, 2018
46b642b
don't keep evaluating prerequisites if one fails
eli-darkly Aug 23, 2018
855c4e2
doc comment
eli-darkly Aug 23, 2018
a0f002f
rename variation to variation_index
eli-darkly Aug 23, 2018
4ec43db
comment
eli-darkly Aug 23, 2018
9622e01
more test coverage, convenience method
eli-darkly Aug 24, 2018
7a453b0
Merge branch 'master' of github.com:launchdarkly/ruby-client
eli-darkly Aug 27, 2018
88d217e
Merge branch 'master' of github.com:launchdarkly/ruby-client
eli-darkly Aug 27, 2018
084d9ea
fix event generation for a prerequisite that is off
eli-darkly Aug 29, 2018
02b5712
fix private
eli-darkly Aug 29, 2018
53e8408
Merge pull request #78 from launchdarkly/eb/ch19976/explanations
eli-darkly Aug 29, 2018
c78db15
Merge pull request #79 from launchdarkly/eb/ch22995/prereq-off
eli-darkly Aug 29, 2018
960bb89
Merge branch 'explanation'
eli-darkly Aug 30, 2018
39d6ad1
Merge branch 'master' of github.com:launchdarkly/ruby-client
eli-darkly Aug 30, 2018
8867638
add option to reduce front-end metadata for untracked flags
eli-darkly Oct 5, 2018
7ac39ba
Merge pull request #80 from launchdarkly/eb/ch24449/less-metadata
eli-darkly Oct 5, 2018
9ea43e0
fix logic for whether a flag is tracked in all_flags_state
eli-darkly Oct 8, 2018
cbbc2ea
Merge pull request #81 from launchdarkly/eb/ch24449/less-metadata-2
eli-darkly Oct 15, 2018
c79745a
merge from public after release
LaunchDarklyCI Oct 24, 2018
cce8e84
implement file data source
eli-darkly Oct 31, 2018
22ebded
add poll interval param, tolerate single file path string, add doc co…
eli-darkly Oct 31, 2018
b864390
make listen dependency optional
eli-darkly Oct 31, 2018
789b5a4
readme
eli-darkly Oct 31, 2018
31a62c5
fix key handling and client integration, add tests
eli-darkly Oct 31, 2018
778cb6d
debugging
eli-darkly Nov 1, 2018
20dbef2
debugging
eli-darkly Nov 1, 2018
f1c00b1
add fallback polling logic, fix tests
eli-darkly Nov 1, 2018
198b843
rm debugging
eli-darkly Nov 1, 2018
c5d1823
debugging
eli-darkly Nov 2, 2018
9baffe3
debugging
eli-darkly Nov 2, 2018
4d81215
debugging
eli-darkly Nov 2, 2018
30d0cd2
debugging
eli-darkly Nov 2, 2018
8cb2ed9
comment correction
eli-darkly Nov 2, 2018
a10f973
documentation
eli-darkly Nov 2, 2018
16cf9c0
always use YAML parser
eli-darkly Nov 2, 2018
27d954e
report internal error that shouldn't happen
eli-darkly Nov 2, 2018
fd308a9
add test for multiple files
eli-darkly Nov 2, 2018
1d016bf
fix duplicate key checking (string vs. symbol problem)
eli-darkly Nov 2, 2018
c3e66d3
Don't use 'listen' in JRuby 9.1
eli-darkly Nov 2, 2018
1a36fd8
rm debugging
eli-darkly Nov 2, 2018
78ba815
better error handling in poll thread
eli-darkly Nov 2, 2018
2d29388
Merge pull request #82 from launchdarkly/eb/ch25289/file-source
eli-darkly Nov 2, 2018
38f534f
don't use Thread.raise to stop PollingProcessor thread; add test for …
eli-darkly Nov 2, 2018
4966136
Merge pull request #83 from launchdarkly/eb/ch19334/no-thread-raise
eli-darkly Nov 3, 2018
af2c98c
merge from public after release
LaunchDarklyCI Nov 3, 2018
457e85b
Merge branch 'master' of github.com:launchdarkly/ruby-client
eli-darkly Nov 5, 2018
4ad6a9b
merge from public after release
LaunchDarklyCI Nov 5, 2018
c09c166
make some dependencies less strict and remove some unused ones
eli-darkly Jan 4, 2019
a4ced95
not using thread_safe
eli-darkly Jan 4, 2019
806bb8e
add bundler version (still not sure why we need to)
eli-darkly Jan 4, 2019
9d446c8
don't need bundler version for all rubies
eli-darkly Jan 4, 2019
5516745
fix bundler version again
eli-darkly Jan 4, 2019
54add1d
try to fix bundler version again
eli-darkly Jan 4, 2019
3d4b080
yet another build fix
eli-darkly Jan 5, 2019
635adf4
commit lock file to get correct bundler
eli-darkly Jan 5, 2019
3b5b08e
update lockfile
eli-darkly Jan 5, 2019
97bb302
Merge pull request #91 from launchdarkly/eb/ch29193/dependencies
eli-darkly Jan 5, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
4 changes: 2 additions & 2 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ ruby-docker-template: &ruby-docker-template
gem install jruby-openssl; # required by bundler, no effect on Ruby MRI
fi
- run: ruby -v
- run: gem install bundler
- run: gem install bundler -v "~> 1.7"
- run: bundle install
- run: mkdir ./rspec
- run: bundle exec rspec --format progress --format RspecJunitFormatter -o ./rspec/rspec.xml spec
Expand Down Expand Up @@ -80,7 +80,7 @@ jobs:
if [[ $i == jruby* ]]; then
gem install jruby-openssl; # required by bundler, no effect on Ruby MRI
fi
gem install bundler;
gem install bundler -v "~> 1.7";
bundle install;
mv Gemfile.lock "Gemfile.lock.$i"
done
Expand Down
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,4 @@
*.a
mkmf.log
*.gem
Gemfile.lock
.DS_Store
88 changes: 88 additions & 0 deletions Gemfile.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
PATH
remote: .
specs:
ldclient-rb (5.4.1)
concurrent-ruby (~> 1.0)
faraday (>= 0.9, < 2)
faraday-http-cache (>= 1.3.0, < 3)
http_tools (~> 0.4.5)
json (>= 1.8, < 3)
net-http-persistent (~> 2.9)
semantic (~> 1.6)
socketry (~> 0.5.1)

GEM
remote: https://rubygems.org/
specs:
codeclimate-test-reporter (0.6.0)
simplecov (>= 0.7.1, < 1.0.0)
concurrent-ruby (1.1.4)
connection_pool (2.2.1)
diff-lcs (1.3)
docile (1.1.5)
faraday (0.15.4)
multipart-post (>= 1.2, < 3)
faraday-http-cache (2.0.0)
faraday (~> 0.8)
ffi (1.9.25)
ffi (1.9.25-java)
hitimes (1.3.0)
hitimes (1.3.0-java)
http_tools (0.4.5)
json (1.8.6)
json (1.8.6-java)
listen (3.1.5)
rb-fsevent (~> 0.9, >= 0.9.4)
rb-inotify (~> 0.9, >= 0.9.7)
ruby_dep (~> 1.2)
multipart-post (2.0.0)
net-http-persistent (2.9.4)
rake (10.5.0)
rb-fsevent (0.10.3)
rb-inotify (0.9.10)
ffi (>= 0.5.0, < 2)
redis (3.3.5)
rspec (3.7.0)
rspec-core (~> 3.7.0)
rspec-expectations (~> 3.7.0)
rspec-mocks (~> 3.7.0)
rspec-core (3.7.1)
rspec-support (~> 3.7.0)
rspec-expectations (3.7.0)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.7.0)
rspec-mocks (3.7.0)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.7.0)
rspec-support (3.7.0)
rspec_junit_formatter (0.3.0)
rspec-core (>= 2, < 4, != 2.12.0)
ruby_dep (1.5.0)
semantic (1.6.1)
simplecov (0.15.1)
docile (~> 1.1.0)
json (>= 1.8, < 3)
simplecov-html (~> 0.10.0)
simplecov-html (0.10.2)
socketry (0.5.1)
hitimes (~> 1.2)
timecop (0.9.1)

PLATFORMS
java
ruby

DEPENDENCIES
bundler (~> 1.7)
codeclimate-test-reporter (~> 0)
connection_pool (>= 2.1.2)
ldclient-rb!
listen (~> 3.0)
rake (~> 10.0)
redis (~> 3.3.5)
rspec (~> 3.2)
rspec_junit_formatter (~> 0.3.0)
timecop (~> 0.9.1)

BUNDLED WITH
1.17.3
6 changes: 2 additions & 4 deletions ldclient-rb.gemspec
Original file line number Diff line number Diff line change
Expand Up @@ -34,11 +34,9 @@ Gem::Specification.new do |spec|
spec.add_runtime_dependency "json", [">= 1.8", "< 3"]
spec.add_runtime_dependency "faraday", [">= 0.9", "< 2"]
spec.add_runtime_dependency "faraday-http-cache", [">= 1.3.0", "< 3"]
spec.add_runtime_dependency "semantic", "~> 1.6.0"
spec.add_runtime_dependency "thread_safe", "~> 0.3"
spec.add_runtime_dependency "semantic", "~> 1.6"
spec.add_runtime_dependency "net-http-persistent", "~> 2.9"
spec.add_runtime_dependency "concurrent-ruby", "~> 1.0.4"
spec.add_runtime_dependency "hashdiff", "~> 0.2"
spec.add_runtime_dependency "concurrent-ruby", "~> 1.0"
spec.add_runtime_dependency "http_tools", '~> 0.4.5'
spec.add_runtime_dependency "socketry", "~> 0.5.1"
end
12 changes: 6 additions & 6 deletions lib/ldclient-rb/cache_store.rb
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
require "thread_safe"
require "concurrent/map"

module LaunchDarkly
# A thread-safe in-memory store suitable for use
# with the Faraday caching HTTP client. Uses the
# Threadsafe gem as the underlying cache.
#
# A thread-safe in-memory store suitable for use with the Faraday caching HTTP client. Uses the
# concurrent-ruby gem's Map as the underlying cache.
#
# @see https://github.com/plataformatec/faraday-http-cache
# @see https://github.com/ruby-concurrency/thread_safe
# @see https://github.com/ruby-concurrency
#
class ThreadSafeMemoryStore
#
# Default constructor
#
# @return [ThreadSafeMemoryStore] a new store
def initialize
@cache = ThreadSafe::Cache.new
@cache = Concurrent::Map.new
end

#
Expand Down
1 change: 0 additions & 1 deletion lib/ldclient-rb/redis_store.rb
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
require "concurrent/atomics"
require "json"
require "thread_safe"

module LaunchDarkly
#
Expand Down