zoo_stream 1.0.1 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 0674a63b02c413fbd9fcf609865dd16c178e643d
4
- data.tar.gz: 025b359061bfdebc7081c2b1aeb6218cfc1e606e
2
+ SHA256:
3
+ metadata.gz: 840b8164e0225138893da451f94169ce96e3ecf3e8642b078a3206385842fd1b
4
+ data.tar.gz: b5d03163fcde4ff05db0f8e6d0fa42261f98f35252a7bc7da1e1dd7968be9711
5
5
  SHA512:
6
- metadata.gz: e48405639604ad543440f860f49284246179f33d9d5cc6d21cfadd77b5a51a9571210b03c113b3cd667104b0e3da752432489c4a743d8748fa79d32522909be8
7
- data.tar.gz: f87205f8096ebd49e71470f334a1ffb46570e5ee9e62957cd1ca4bad3e9d6e747f928154130195ef9cc939cc4ad066d3b383fb9117d7ed8a90600c4f623ba5fc
6
+ metadata.gz: 8ba86397902d56d2ec3bde85c86acbb98fd4a555e2179850a189e17170483bbedec6df97d580f61b0a9f8bfaff1ba8fc400366beefd7bd2fb673c162dca6c5c7
7
+ data.tar.gz: 454f9406e4e1c264f63213bbd6659dc5c3d25c6be44f887b4e0096649f8f3a938a7968f3d6bc80b5313c43c6ff9566920c1cb6de083c76568243c25faad4f62e
@@ -0,0 +1,17 @@
1
+ name: Zooni CI
2
+ on:
3
+ pull_request:
4
+ push: { branches: master }
5
+ jobs:
6
+ test:
7
+ name: Run Tests
8
+ runs-on: ubuntu-latest
9
+ steps:
10
+ - uses: actions/checkout@v2
11
+ - name: Setup Ruby
12
+ uses: ruby/setup-ruby@v1
13
+ with:
14
+ ruby-version: 3.0.1
15
+ bundler-cache: true
16
+ - name: Run tests
17
+ run: bundle exec rspec
data/CHANGELOG.md CHANGED
@@ -1,3 +1,8 @@
1
+ # 1.1.0
2
+
3
+ * Ruby 3 compatibility
4
+ - Update aws-sdk to v3 and only install service specific aws-sdk-kinesis
5
+
1
6
  # 1.0.1
2
7
 
3
8
  * Made compatible down to Ruby 2.0.0
data/Dockerfile ADDED
@@ -0,0 +1,19 @@
1
+ FROM ruby:3.1-slim
2
+
3
+ WORKDIR /app
4
+
5
+ RUN apt-get update && apt-get -y upgrade && \
6
+ apt-get install --no-install-recommends -y \
7
+ # git is required for installing gems
8
+ git && \
9
+ apt-get clean && rm -rf /var/lib/apt/lists/*
10
+
11
+ # ensure we use a newer version of rubygems / bundler
12
+ RUN gem update --system
13
+
14
+ ADD ./Gemfile /app/
15
+ ADD ./zoo_stream.gemspec /app/
16
+ ADD ./ /app
17
+
18
+ RUN bundle config --global jobs `cat /proc/cpuinfo | grep processor | wc -l | xargs -I % expr % - 1`
19
+ RUN bundle install
data/README.md CHANGED
@@ -28,7 +28,7 @@ You can either configure this gem using environment variables:
28
28
  Or programmatically (not recommended):
29
29
 
30
30
  ```ruby
31
- ZooStream.publisher = ZooStream::KinesisPublisher.new("zooniverse-production")
31
+ ZooStream.publisher = ZooStream::KinesisPublisher.new(stream_name: "zooniverse-production")
32
32
  ZooStream.source = "my-application"
33
33
  ```
34
34
 
@@ -51,10 +51,22 @@ If you don't set a stream name, **this gem will silently ignore all `#publish` m
51
51
 
52
52
  ## Development
53
53
 
54
- After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake test` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
54
+ After checking out the repo, run `bin/setup` to install dependencies. Then, run `bundle exec rspec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
55
55
 
56
56
  To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
57
57
 
58
+ Use docker & compose to setup the dev env
59
+
60
+ ```shell
61
+ docker-compose build
62
+ ```
63
+
64
+ Run a bash shell inside the new container
65
+
66
+ ```shell
67
+ docker-compose run --service-ports --rm zoo_stream bash
68
+ ```
69
+
58
70
  ## Contributing
59
71
 
60
72
  Bug reports and pull requests are welcome on GitHub at https://github.com/zooniverse/zoo_stream. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
@@ -0,0 +1,11 @@
1
+ version: '3'
2
+ services:
3
+ zoo_stream:
4
+ build:
5
+ context: .
6
+ volumes:
7
+ - ./:/app
8
+ - gem_cache:/usr/local/bundle
9
+
10
+ volumes:
11
+ gem_cache:
@@ -1,4 +1,4 @@
1
- require 'aws-sdk'
1
+ require 'aws-sdk-kinesis'
2
2
 
3
3
  module ZooStream
4
4
  class KinesisPublisher
@@ -11,7 +11,7 @@ module ZooStream
11
11
 
12
12
  def publish(event, shard_by: nil)
13
13
  raise ArgumentError, "Must specify shard_by" unless shard_by
14
-
14
+
15
15
  client.put_record(
16
16
  stream_name: stream_name,
17
17
  partition_key: shard_by,
@@ -1,3 +1,3 @@
1
1
  module ZooStream
2
- VERSION = "1.0.1"
2
+ VERSION = "1.1.0"
3
3
  end
data/zoo_stream.gemspec CHANGED
@@ -19,9 +19,9 @@ Gem::Specification.new do |spec|
19
19
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
20
20
  spec.require_paths = ["lib"]
21
21
 
22
- spec.add_dependency 'aws-sdk'
22
+ spec.add_dependency 'aws-sdk-kinesis', '~> 1'
23
23
 
24
- spec.add_development_dependency "bundler", "~> 1.11"
25
- spec.add_development_dependency "rake", "~> 10.0"
26
- spec.add_development_dependency "rspec", "~> 3.0"
24
+ spec.add_development_dependency 'bundler', '~> 2.2'
25
+ spec.add_development_dependency 'rake'
26
+ spec.add_development_dependency 'rspec'
27
27
  end
metadata CHANGED
@@ -1,71 +1,71 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zoo_stream
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marten Veldthuis
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-02-23 00:00:00.000000000 Z
11
+ date: 2025-02-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: aws-sdk
14
+ name: aws-sdk-kinesis
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
19
+ version: '1'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ">="
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0'
26
+ version: '1'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.11'
33
+ version: '2.2'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '1.11'
40
+ version: '2.2'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: '10.0'
47
+ version: '0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: '10.0'
54
+ version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rspec
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - "~>"
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
- version: '3.0'
61
+ version: '0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - "~>"
66
+ - - ">="
67
67
  - !ruby/object:Gem::Version
68
- version: '3.0'
68
+ version: '0'
69
69
  description: A wrapper around AWS Kinesis client to make sure all our applications
70
70
  publish messages with a consistent format.
71
71
  email:
@@ -74,17 +74,19 @@ executables: []
74
74
  extensions: []
75
75
  extra_rdoc_files: []
76
76
  files:
77
+ - ".github/workflows/run_tests_CI.yml"
77
78
  - ".gitignore"
78
79
  - ".rspec"
79
- - ".travis.yml"
80
80
  - CHANGELOG.md
81
81
  - CODE_OF_CONDUCT.md
82
+ - Dockerfile
82
83
  - Gemfile
83
84
  - LICENSE.txt
84
85
  - README.md
85
86
  - Rakefile
86
87
  - bin/console
87
88
  - bin/setup
89
+ - docker-compose.yml
88
90
  - lib/zoo_stream.rb
89
91
  - lib/zoo_stream/event.rb
90
92
  - lib/zoo_stream/kinesis_publisher.rb
@@ -94,7 +96,7 @@ homepage: https://github.com/zooniverse/zoo_stream
94
96
  licenses:
95
97
  - MIT
96
98
  metadata: {}
97
- post_install_message:
99
+ post_install_message:
98
100
  rdoc_options: []
99
101
  require_paths:
100
102
  - lib
@@ -109,9 +111,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
109
111
  - !ruby/object:Gem::Version
110
112
  version: '0'
111
113
  requirements: []
112
- rubyforge_project:
113
- rubygems_version: 2.5.2
114
- signing_key:
114
+ rubygems_version: 3.5.22
115
+ signing_key:
115
116
  specification_version: 4
116
117
  summary: Simplified and customized Kinesis publisher
117
118
  test_files: []
data/.travis.yml DELETED
@@ -1,4 +0,0 @@
1
- language: ruby
2
- rvm:
3
- - 2.3.0
4
- before_install: gem install bundler -v 1.11.2