zooniverse_social 1.1.0 → 1.3.1

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: 4ce008db4b4194b1f4cef2abd2d73786cfaccb4e64d2e0eb74969cb8dc49e6b0
4
- data.tar.gz: a2bf6ef01908a53aaf2f80a922672196fd90ad9e93b842fcffc047c7ad515c69
3
+ metadata.gz: 8068068ee1f38f16d374e9eda758ffa0b835a1fd415f791d4a78d48174fe7cb6
4
+ data.tar.gz: 2ce365a670b94033f77abd0d320234840b7950da921e4bb45577f4b7f50b8dd0
5
5
  SHA512:
6
- metadata.gz: e05b89fc173c200934bff8258490bccde27d60bc96815880ab2a4a3c2f00290586196d24a8688a8d02241aeaac2b76970d5d97d3a5684ed7488e4f0ac22221c4
7
- data.tar.gz: d640f5a9ca446a388b19a281b6e363d2d16563a42bdb5213d0f1b388f1ccc775fcb2347f13729ec8ae433a0558e914ef5a01f026c3b9292a9930bdb844929b74
6
+ metadata.gz: 12a591f2a3cb8970eddc81da79d0f22cab27636071ce753c6829c8206dfaf4365d74f2d06aacd4d91a56cd428babbb6cee89f9576ead8281aae145681185d519
7
+ data.tar.gz: f17ab480c28e3110409c175ccd6639f1e97ddae0e14676527885266389a5346db766ab2e643b60d51a2d7d8f89e3ec174cf042dfa11d7f51e0e05e69d9ce9c18
@@ -0,0 +1,72 @@
1
+ # For most projects, this workflow file will not need changing; you simply need
2
+ # to commit it to your repository.
3
+ #
4
+ # You may wish to alter this file to override the set of languages analyzed,
5
+ # or to provide custom queries or build logic.
6
+ #
7
+ # ******** NOTE ********
8
+ # We have attempted to detect the languages in your repository. Please check
9
+ # the `language` matrix defined below to confirm you have the correct set of
10
+ # supported CodeQL languages.
11
+ #
12
+ name: "CodeQL"
13
+
14
+ on:
15
+ push:
16
+ branches: [ "master" ]
17
+ pull_request:
18
+ schedule:
19
+ - cron: '26 11 * * 6'
20
+
21
+ jobs:
22
+ analyze:
23
+ name: Analyze
24
+ runs-on: ubuntu-latest
25
+ permissions:
26
+ actions: read
27
+ contents: read
28
+ security-events: write
29
+
30
+ strategy:
31
+ fail-fast: false
32
+ matrix:
33
+ language: [ 'ruby' ]
34
+ # CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
35
+ # Learn more about CodeQL language support at https://aka.ms/codeql-docs/language-support
36
+
37
+ steps:
38
+ - name: Checkout repository
39
+ uses: actions/checkout@v3
40
+
41
+ # Initializes the CodeQL tools for scanning.
42
+ - name: Initialize CodeQL
43
+ uses: github/codeql-action/init@v2
44
+ with:
45
+ languages: ${{ matrix.language }}
46
+ # If you wish to specify custom queries, you can do so here or in a config file.
47
+ # By default, queries listed here will override any specified in a config file.
48
+ # Prefix the list here with "+" to use these queries and those in the config file.
49
+
50
+ # Details on CodeQL's query packs refer to : https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
51
+ # queries: security-extended,security-and-quality
52
+
53
+
54
+ # Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
55
+ # If this step fails, then you should remove it and run the build manually (see below)
56
+ - name: Autobuild
57
+ uses: github/codeql-action/autobuild@v2
58
+
59
+ # ℹ️ Command-line programs to run using the OS shell.
60
+ # 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
61
+
62
+ # If the Autobuild fails above, remove it and uncomment the following three lines.
63
+ # modify them (or add more) to build your code if your project, please refer to the EXAMPLE below for guidance.
64
+
65
+ # - run: |
66
+ # echo "Run, Build Application using script"
67
+ # ./location_of_script_within_repo/buildscript.sh
68
+
69
+ - name: Perform CodeQL Analysis
70
+ uses: github/codeql-action/analyze@v2
71
+ with:
72
+ category: "/language:${{matrix.language}}"
@@ -0,0 +1,22 @@
1
+ name: Zooni CI
2
+ on:
3
+ pull_request:
4
+ push: { branches: master }
5
+ env:
6
+ RAILS_ENV: test
7
+ jobs:
8
+ test:
9
+ name: Run Tests
10
+ runs-on: ubuntu-latest
11
+ steps:
12
+ - name: Checkout code
13
+ uses: actions/checkout@v3
14
+
15
+ - name: Setup Ruby and install gems
16
+ uses: ruby/setup-ruby@v1
17
+ with:
18
+ ruby-version: '2.6' # Not needed with a .ruby-version file
19
+ bundler-cache: true # runs 'bundle install' and caches installed gems automatically
20
+
21
+ - name: Run tests
22
+ run: bundle exec rspec
data/README.md CHANGED
@@ -2,8 +2,6 @@
2
2
 
3
3
  Social media aggregation service for the Zooniverse
4
4
 
5
- [![Build Status](https://travis-ci.org/zooniverse/Social.svg?branch=master)](https://travis-ci.org/zooniverse/Social)
6
-
7
5
  ## Installation
8
6
 
9
7
  Add this line to your application's Gemfile:
@@ -22,10 +20,23 @@ Or install it yourself as:
22
20
 
23
21
  ## Usage
24
22
 
25
- TODO: Write usage instructions here
23
+ ### Boot the application
24
+ Run the app via the rackup cmd, <https://github.com/sinatra/sinatra#serving-a-modular-application>
25
+
26
+ `bundle exec rackup -p 4567`
27
+
28
+ ### Install dependencies
29
+ `bundle install`
30
+
31
+ ### Test the app
32
+ `bundle exec rspec`
33
+
34
+ ### Publishing to [RubyGems](https://rubygems.org/)
35
+ `rake build` - to create the new gem version locally
36
+ `rake release` - to tag the gem and release it to RubyGems
26
37
 
27
38
  ## License
28
39
 
29
- Copyright 2016 by the Zooniverse
40
+ Copyright 2023 by the Zooniverse
30
41
 
31
42
  The gem is available as open source under the terms of the [Apache License v2](https://opensource.org/licenses/Apache-2.0).
@@ -1,8 +1,9 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'concurrent'
2
4
 
3
5
  require 'zooniverse_social/posts'
4
6
  require 'zooniverse_social/statuses'
5
- require 'zooniverse_social/tweets'
6
7
  require 'zooniverse_social/task_observer'
7
8
 
8
9
  module ZooniverseSocial
@@ -11,22 +12,17 @@ module ZooniverseSocial
11
12
  @posts ||= Posts.new
12
13
  end
13
14
 
14
- def self.tweets
15
- @tweets ||= Tweets.new
16
- end
17
-
18
15
  def self.statuses
19
16
  @statuses ||= Statuses.new
20
17
  end
21
18
 
22
19
  def self.sources
23
- [posts, tweets, statuses]
20
+ [posts, statuses]
24
21
  end
25
22
 
26
23
  def self.current
27
24
  {
28
25
  posts: posts.data,
29
- tweets: tweets.data,
30
26
  statuses: statuses.data
31
27
  }
32
28
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module ZooniverseSocial
2
- VERSION = '1.1.0'
4
+ VERSION = '1.3.1'
3
5
  end
@@ -1,4 +1,5 @@
1
- # coding: utf-8
1
+ # frozen_string_literal: true
2
+
2
3
  lib = File.expand_path('../lib', __FILE__)
3
4
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
5
  require 'zooniverse_social/version'
@@ -19,18 +20,17 @@ Gem::Specification.new do |spec|
19
20
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
20
21
  spec.require_paths = ['lib']
21
22
 
22
- spec.add_runtime_dependency 'puma'
23
- spec.add_runtime_dependency 'sinatra', '~> 1.4'
24
- spec.add_runtime_dependency 'twitter', '~> 5.16'
25
- spec.add_runtime_dependency 'faraday', '~> 0.9'
26
23
  spec.add_runtime_dependency 'concurrent-ruby', '~> 1.0'
27
24
  spec.add_runtime_dependency 'concurrent-ruby-ext', '~> 1.0'
25
+ spec.add_runtime_dependency 'faraday', '~> 0.9'
26
+ spec.add_runtime_dependency 'puma'
27
+ spec.add_runtime_dependency 'sinatra', '>= 2.2'
28
28
 
29
- spec.add_development_dependency 'bundler', '~> 1.12'
30
- spec.add_development_dependency 'rake', '~> 10.0'
31
- spec.add_development_dependency 'rspec', '~> 3.4'
32
- spec.add_development_dependency 'rspec-its', '~> 1.2'
33
- spec.add_development_dependency 'rack-test', '~> 0.6'
34
- spec.add_development_dependency 'webmock', '~> 2.1'
29
+ spec.add_development_dependency 'bundler'
35
30
  spec.add_development_dependency 'pry'
31
+ spec.add_development_dependency 'rack-test'
32
+ spec.add_development_dependency 'rake'
33
+ spec.add_development_dependency 'rspec'
34
+ spec.add_development_dependency 'rspec-its'
35
+ spec.add_development_dependency 'webmock'
36
36
  end
metadata CHANGED
@@ -1,57 +1,43 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zooniverse_social
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Parrish
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-07-21 00:00:00.000000000 Z
11
+ date: 2023-05-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: puma
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: '0'
20
- type: :runtime
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ">="
25
- - !ruby/object:Gem::Version
26
- version: '0'
27
- - !ruby/object:Gem::Dependency
28
- name: sinatra
14
+ name: concurrent-ruby
29
15
  requirement: !ruby/object:Gem::Requirement
30
16
  requirements:
31
17
  - - "~>"
32
18
  - !ruby/object:Gem::Version
33
- version: '1.4'
19
+ version: '1.0'
34
20
  type: :runtime
35
21
  prerelease: false
36
22
  version_requirements: !ruby/object:Gem::Requirement
37
23
  requirements:
38
24
  - - "~>"
39
25
  - !ruby/object:Gem::Version
40
- version: '1.4'
26
+ version: '1.0'
41
27
  - !ruby/object:Gem::Dependency
42
- name: twitter
28
+ name: concurrent-ruby-ext
43
29
  requirement: !ruby/object:Gem::Requirement
44
30
  requirements:
45
31
  - - "~>"
46
32
  - !ruby/object:Gem::Version
47
- version: '5.16'
33
+ version: '1.0'
48
34
  type: :runtime
49
35
  prerelease: false
50
36
  version_requirements: !ruby/object:Gem::Requirement
51
37
  requirements:
52
38
  - - "~>"
53
39
  - !ruby/object:Gem::Version
54
- version: '5.16'
40
+ version: '1.0'
55
41
  - !ruby/object:Gem::Dependency
56
42
  name: faraday
57
43
  requirement: !ruby/object:Gem::Requirement
@@ -67,119 +53,119 @@ dependencies:
67
53
  - !ruby/object:Gem::Version
68
54
  version: '0.9'
69
55
  - !ruby/object:Gem::Dependency
70
- name: concurrent-ruby
56
+ name: puma
71
57
  requirement: !ruby/object:Gem::Requirement
72
58
  requirements:
73
- - - "~>"
59
+ - - ">="
74
60
  - !ruby/object:Gem::Version
75
- version: '1.0'
61
+ version: '0'
76
62
  type: :runtime
77
63
  prerelease: false
78
64
  version_requirements: !ruby/object:Gem::Requirement
79
65
  requirements:
80
- - - "~>"
66
+ - - ">="
81
67
  - !ruby/object:Gem::Version
82
- version: '1.0'
68
+ version: '0'
83
69
  - !ruby/object:Gem::Dependency
84
- name: concurrent-ruby-ext
70
+ name: sinatra
85
71
  requirement: !ruby/object:Gem::Requirement
86
72
  requirements:
87
- - - "~>"
73
+ - - ">="
88
74
  - !ruby/object:Gem::Version
89
- version: '1.0'
75
+ version: '2.2'
90
76
  type: :runtime
91
77
  prerelease: false
92
78
  version_requirements: !ruby/object:Gem::Requirement
93
79
  requirements:
94
- - - "~>"
80
+ - - ">="
95
81
  - !ruby/object:Gem::Version
96
- version: '1.0'
82
+ version: '2.2'
97
83
  - !ruby/object:Gem::Dependency
98
84
  name: bundler
99
85
  requirement: !ruby/object:Gem::Requirement
100
86
  requirements:
101
- - - "~>"
87
+ - - ">="
102
88
  - !ruby/object:Gem::Version
103
- version: '1.12'
89
+ version: '0'
104
90
  type: :development
105
91
  prerelease: false
106
92
  version_requirements: !ruby/object:Gem::Requirement
107
93
  requirements:
108
- - - "~>"
94
+ - - ">="
109
95
  - !ruby/object:Gem::Version
110
- version: '1.12'
96
+ version: '0'
111
97
  - !ruby/object:Gem::Dependency
112
- name: rake
98
+ name: pry
113
99
  requirement: !ruby/object:Gem::Requirement
114
100
  requirements:
115
- - - "~>"
101
+ - - ">="
116
102
  - !ruby/object:Gem::Version
117
- version: '10.0'
103
+ version: '0'
118
104
  type: :development
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
107
  requirements:
122
- - - "~>"
108
+ - - ">="
123
109
  - !ruby/object:Gem::Version
124
- version: '10.0'
110
+ version: '0'
125
111
  - !ruby/object:Gem::Dependency
126
- name: rspec
112
+ name: rack-test
127
113
  requirement: !ruby/object:Gem::Requirement
128
114
  requirements:
129
- - - "~>"
115
+ - - ">="
130
116
  - !ruby/object:Gem::Version
131
- version: '3.4'
117
+ version: '0'
132
118
  type: :development
133
119
  prerelease: false
134
120
  version_requirements: !ruby/object:Gem::Requirement
135
121
  requirements:
136
- - - "~>"
122
+ - - ">="
137
123
  - !ruby/object:Gem::Version
138
- version: '3.4'
124
+ version: '0'
139
125
  - !ruby/object:Gem::Dependency
140
- name: rspec-its
126
+ name: rake
141
127
  requirement: !ruby/object:Gem::Requirement
142
128
  requirements:
143
- - - "~>"
129
+ - - ">="
144
130
  - !ruby/object:Gem::Version
145
- version: '1.2'
131
+ version: '0'
146
132
  type: :development
147
133
  prerelease: false
148
134
  version_requirements: !ruby/object:Gem::Requirement
149
135
  requirements:
150
- - - "~>"
136
+ - - ">="
151
137
  - !ruby/object:Gem::Version
152
- version: '1.2'
138
+ version: '0'
153
139
  - !ruby/object:Gem::Dependency
154
- name: rack-test
140
+ name: rspec
155
141
  requirement: !ruby/object:Gem::Requirement
156
142
  requirements:
157
- - - "~>"
143
+ - - ">="
158
144
  - !ruby/object:Gem::Version
159
- version: '0.6'
145
+ version: '0'
160
146
  type: :development
161
147
  prerelease: false
162
148
  version_requirements: !ruby/object:Gem::Requirement
163
149
  requirements:
164
- - - "~>"
150
+ - - ">="
165
151
  - !ruby/object:Gem::Version
166
- version: '0.6'
152
+ version: '0'
167
153
  - !ruby/object:Gem::Dependency
168
- name: webmock
154
+ name: rspec-its
169
155
  requirement: !ruby/object:Gem::Requirement
170
156
  requirements:
171
- - - "~>"
157
+ - - ">="
172
158
  - !ruby/object:Gem::Version
173
- version: '2.1'
159
+ version: '0'
174
160
  type: :development
175
161
  prerelease: false
176
162
  version_requirements: !ruby/object:Gem::Requirement
177
163
  requirements:
178
- - - "~>"
164
+ - - ">="
179
165
  - !ruby/object:Gem::Version
180
- version: '2.1'
166
+ version: '0'
181
167
  - !ruby/object:Gem::Dependency
182
- name: pry
168
+ name: webmock
183
169
  requirement: !ruby/object:Gem::Requirement
184
170
  requirements:
185
171
  - - ">="
@@ -199,9 +185,10 @@ executables: []
199
185
  extensions: []
200
186
  extra_rdoc_files: []
201
187
  files:
188
+ - ".github/workflows/codeql-analysis.yml"
189
+ - ".github/workflows/run_tests_CI.yml"
202
190
  - ".gitignore"
203
191
  - ".rspec"
204
- - ".travis.yml"
205
192
  - Gemfile
206
193
  - LICENSE
207
194
  - README.md
@@ -215,7 +202,6 @@ files:
215
202
  - lib/zooniverse_social/server.rb
216
203
  - lib/zooniverse_social/statuses.rb
217
204
  - lib/zooniverse_social/task_observer.rb
218
- - lib/zooniverse_social/tweets.rb
219
205
  - lib/zooniverse_social/updater.rb
220
206
  - lib/zooniverse_social/version.rb
221
207
  - zooniverse_social.gemspec
@@ -238,7 +224,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
238
224
  - !ruby/object:Gem::Version
239
225
  version: '0'
240
226
  requirements: []
241
- rubygems_version: 3.0.3
227
+ rubygems_version: 3.1.4
242
228
  signing_key:
243
229
  specification_version: 4
244
230
  summary: Social media aggregation service for the Zooniverse
data/.travis.yml DELETED
@@ -1,7 +0,0 @@
1
- language: ruby
2
- sudo: false
3
- cache:
4
- - bundler
5
- rvm:
6
- - 2.6
7
- script: bundle exec rspec
@@ -1,25 +0,0 @@
1
- require 'twitter'
2
-
3
- module ZooniverseSocial
4
- class Tweets
5
- attr_reader :data
6
-
7
- def initialize
8
- @twitter = Twitter::REST::Client.new({
9
- consumer_key: ENV.fetch('TWITTER_KEY'),
10
- consumer_secret: ENV.fetch('TWITTER_SECRET')
11
- })
12
-
13
- update
14
- end
15
-
16
- def update
17
- @data = @twitter.search('from:the_zooniverse', result_type: 'recent').take(3).collect do |tweet|
18
- tweet.to_h.tap do |hash|
19
- appended = hash.dig :entities, :urls, 0, :url
20
- hash[:text].sub!(/\s?#{ appended }/, '') if appended
21
- end
22
- end
23
- end
24
- end
25
- end