pgdice 1.0.1 → 1.0.2

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: aa5557cff6f9f2ef5c8f73d925d6dc21d99df9300d368b05172a699893b97c22
4
- data.tar.gz: 563dc93f6915247e5ff7d5b6500d1cfdcbcb38247a871d787d0d76bfad50fffc
3
+ metadata.gz: ad12a02674afc68542e4b8038aaddcfb107eba52bc208f700ef57e880783d100
4
+ data.tar.gz: 6d384e71518d19b9e8319d6d84632ded6b3de0bcdd4fb6fa2cef80d837fc100d
5
5
  SHA512:
6
- metadata.gz: e7dbe79ec3584a45e054827acf2993d6aa02ccdae42335418cd4113c385c36a460d21c6c6cd68cbc2ced9044cfed38ff6e952735791a54a8587c65a905e0aa13
7
- data.tar.gz: fe0e0ccb8f503b7bfed31f1baf6bb1b986566f26324b35550f8c39408ae013df25439bfd6b57f268f0883e827211a13dc5332711e296612f90c8f2cd0a1a8efa
6
+ metadata.gz: 8880202263ce06487635f87118d82b723405f465a5d39f087310961e965a553b4510088bc11f23d12fb37b76faf1bc0e8d5a706b26d28ad2afcb10111cbf07c8
7
+ data.tar.gz: a3c14f23d6b52a991f7997a9d887877e58b93e8c0b8717e65ea42ade699eae5fbfd1642eea788ddcc8eefe9d9dd01a12cff540772e1d2f69281119fcb6a73cad
@@ -6,13 +6,13 @@ version: 2
6
6
  defaults: &defaults
7
7
  working_directory: ~/repo
8
8
  docker:
9
- - image: circleci/ruby:2.5.1
9
+ - image: circleci/ruby:2.6.6
10
10
  environment:
11
11
  DATABASE_HOST: 127.0.0.1
12
12
  DATABASE_USERNAME: pgdice
13
13
  PGDICE_LOG_TARGET: STDOUT
14
14
 
15
- - image: circleci/postgres:10.6-alpine-ram
15
+ - image: circleci/postgres:12.1-alpine-ram
16
16
  environment:
17
17
  POSTGRES_USER: pgdice
18
18
  POSTGRES_DB: pgdice_test
@@ -1 +1 @@
1
- ruby-2.5.1
1
+ ruby-2.6.6
@@ -2,6 +2,11 @@
2
2
  All notable changes to this project will be documented in this file.
3
3
  This project adheres to [Semantic Versioning](http://semver.org/).
4
4
 
5
+ ## [v1.0.1] : 2020-01-31
6
+ ### Changes
7
+ - Added better examples/docs.
8
+ - Bump `pg` to `~> 1.2.2`
9
+
5
10
  ## [v0.4.3] : 2019-04-23
6
11
  ### Changes
7
12
  - Fix #31 where the new connection retry code was eagerly initializing the logger
data/README.md CHANGED
@@ -12,6 +12,9 @@ PgDice is a utility for creating and maintaining partitioned database tables tha
12
12
  PgDice is intended to be used by scheduled background jobs in frameworks like [Sidekiq](https://github.com/mperham/sidekiq)
13
13
  where logging and clear exception messages are crucial.
14
14
 
15
+ # Maintenance status
16
+
17
+ This project is stable and used daily in production.
15
18
 
16
19
  # Installation
17
20
 
@@ -49,6 +52,7 @@ PgDice.configure do |config|
49
52
 
50
53
  # Set a config file or build the tables manually
51
54
  config.config_file = Rails.root.join('config', 'pgdice.yml') # If you are using rails, else provide the absolute path.
55
+ config.config_file = Rails.root.join('config', 'pgdice.yml') # If you are using rails, else provide the absolute path.
52
56
  # and/or
53
57
  config.approved_tables = PgDice::ApprovedTables.new(
54
58
  PgDice::Table.new(table_name: 'comments', past: 90, future: 7, period: 'day'),
@@ -57,7 +61,6 @@ PgDice.configure do |config|
57
61
  end
58
62
  ```
59
63
 
60
-
61
64
  ### Configuration Parameters
62
65
 
63
66
  - `database_url` - **Required**: The postgres database url to connect to.
@@ -167,7 +170,6 @@ PgDice.undo_partitioning!('comments')
167
170
  This method will revert the changes made by partitioning a table. Don't rely on this
168
171
  in production if you mess up; you need to test everything thoroughly.
169
172
 
170
-
171
173
  ## Maintaining partitioned tables
172
174
 
173
175
  ### Adding more tables
@@ -184,7 +186,6 @@ PgDice.add_new_partitions('comments')
184
186
  that the partitioned table was defined with.
185
187
  - The example `comments` table we have been using was configured to always keep `7` future partitions above.
186
188
 
187
-
188
189
  ### Listing droppable partitions
189
190
 
190
191
  Sometimes you just want to know what's out there and if there are tables ready to be dropped.
@@ -201,7 +202,6 @@ PgDice.list_droppable_partitions_by_batch_size('comments')
201
202
 
202
203
  This method will show partitions that are within the configured `batch_size`.
203
204
 
204
-
205
205
  #### Notes on `list_droppable_partitions`
206
206
 
207
207
  - This method uses the `past` value from the `PgDice::Table` to determine which tables are eligible for dropping.
@@ -223,7 +223,6 @@ PgDice.drop_old_partitions('comments')
223
223
  for the `PgDice::Table`.
224
224
  - The example `comments` table has been configured with `past: 90` tables.
225
225
  So if there were 100 tables older than `today` it would drop up to `batch_size` tables.
226
-
227
226
 
228
227
  # Validation
229
228
 
@@ -256,7 +255,6 @@ PgDice.approved_tables
256
255
 
257
256
  The [ApprovedTables](lib/pgdice/approved_tables.rb) object responds to the most common enumerable methods.
258
257
 
259
-
260
258
  # Miscellaneous Notes
261
259
 
262
260
  All methods for `PgDice` take a hash which will override whatever values would have been automatically supplied.
@@ -297,9 +295,7 @@ you through what is going on.
297
295
 
298
296
  1. Full `PG::Connection` support (no more database URLs).
299
297
  1. Non time-range based partitioning. [PgParty](https://github.com/rkrage/pg_party) might be a good option!
300
-
301
-
302
-
298
+ 1. Hourly partitioning
303
299
 
304
300
  # Development
305
301
 
@@ -308,7 +304,6 @@ You can also run `bin/console` for an interactive prompt that will allow you to
308
304
 
309
305
  To install this gem onto your local machine, run `bundle exec rake install`.
310
306
 
311
-
312
307
  ## Running tests
313
308
 
314
309
  You're going to need to have postgres 10 or greater installed.
@@ -319,7 +314,6 @@ Run the following commands from your terminal. Don't run these on anything but a
319
314
  1. `createdb pgdice_test`
320
315
  1. Now you can run the tests via `guard` or `rake test`
321
316
 
322
-
323
317
  ## Contributing
324
318
 
325
319
  Bug reports and pull requests are welcome on GitHub at
@@ -327,19 +321,18 @@ Bug reports and pull requests are welcome on GitHub at
327
321
  to be a safe, welcoming space for collaboration, and contributors are expected to adhere to
328
322
  the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
329
323
 
330
-
331
324
  # License
332
325
 
333
326
  The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
334
327
 
335
328
  # Disclaimer
336
329
 
337
- There are some features in this gem which allow you to drop database tables.
330
+ There are some features in this gem which allow you to drop database tables, due to the dangerous nature of
331
+ dropping database tables, please ensure you have a tested and working backup and restore strategy.
338
332
 
339
- If you choose to use this software without a __tested and working__ backup and restore strategy in place then you
340
- are a fool and will pay the price for your negligence. THIS SOFTWARE IS PROVIDED "AS IS",
341
- WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. By using this software you agree that the creator,
342
- maintainers and any affiliated parties CANNOT BE HELD LIABLE FOR DATA LOSS OR LOSSES OF ANY KIND.
333
+ THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED.
334
+ By using this software you agree that the creator, maintainers, and any affiliated parties
335
+ CANNOT BE HELD LIABLE FOR DATA LOSS OR LOSSES OF ANY KIND.
343
336
 
344
337
  See the [LICENSE](LICENSE) for more information.
345
338
 
@@ -0,0 +1,15 @@
1
+ # Security Policy
2
+
3
+ ## Supported Versions
4
+
5
+ The versions here are currently supported for security patches.
6
+
7
+ | Version | Supported |
8
+ | ------- | ------------------ |
9
+ | latest | :white_check_mark: |
10
+ | < 1.0 | :x: |
11
+
12
+
13
+ ## Reporting a Vulnerability
14
+
15
+ Please open a new issue
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PgDice
4
- VERSION = '1.0.1'
4
+ VERSION = '1.0.2'
5
5
  end
@@ -25,18 +25,18 @@ Gem::Specification.new do |spec|
25
25
  spec.require_paths = ['lib']
26
26
 
27
27
  # Locked because we depend on internal behavior for table commenting
28
- spec.add_runtime_dependency 'pg', '~> 1.2.2', '>= 1.1.0'
29
- spec.add_runtime_dependency 'pgslice', '0.4.5'
28
+ spec.add_runtime_dependency 'pg', '~> 1.2.3', '>= 1.1.0'
29
+ spec.add_runtime_dependency 'pgslice', '0.4.6'
30
30
 
31
31
  spec.add_development_dependency 'bundler', '~> 1.16', '>= 1.16'
32
32
  spec.add_development_dependency 'coveralls', '~> 0.8.22', '>= 0.8.22'
33
- spec.add_development_dependency 'guard', '~> 2.14.2', '>= 2.14.2'
33
+ spec.add_development_dependency 'guard', '~> 2.16.2', '>= 2.14.2'
34
34
  spec.add_development_dependency 'guard-minitest', '~> 2.4.6', '>= 2.4.6'
35
35
  spec.add_development_dependency 'guard-rubocop', '~> 1.3.0', '>= 1.3.0'
36
36
  spec.add_development_dependency 'guard-shell', '~> 0.7.1', '>= 0.7.1'
37
37
  spec.add_development_dependency 'minitest', '~> 5.0', '>= 5.0'
38
38
  spec.add_development_dependency 'minitest-ci', '~> 3.4.0', '>= 3.4.0'
39
- spec.add_development_dependency 'minitest-reporters', '~> 1.3.4', '>= 1.3.4'
39
+ spec.add_development_dependency 'minitest-reporters', '~> 1.4.2', '>= 1.3.4'
40
40
  spec.add_development_dependency 'rake', '~> 10.0', '>= 10.0'
41
41
  spec.add_development_dependency 'rubocop', '0.71'
42
42
  spec.add_development_dependency 'simplecov', '~> 0.16.1', '>= 0.16.1'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pgdice
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Newell
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-01-31 00:00:00.000000000 Z
11
+ date: 2020-05-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: pg
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: 1.1.0
20
20
  - - "~>"
21
21
  - !ruby/object:Gem::Version
22
- version: 1.2.2
22
+ version: 1.2.3
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,21 +29,21 @@ dependencies:
29
29
  version: 1.1.0
30
30
  - - "~>"
31
31
  - !ruby/object:Gem::Version
32
- version: 1.2.2
32
+ version: 1.2.3
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: pgslice
35
35
  requirement: !ruby/object:Gem::Requirement
36
36
  requirements:
37
37
  - - '='
38
38
  - !ruby/object:Gem::Version
39
- version: 0.4.5
39
+ version: 0.4.6
40
40
  type: :runtime
41
41
  prerelease: false
42
42
  version_requirements: !ruby/object:Gem::Requirement
43
43
  requirements:
44
44
  - - '='
45
45
  - !ruby/object:Gem::Version
46
- version: 0.4.5
46
+ version: 0.4.6
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: bundler
49
49
  requirement: !ruby/object:Gem::Requirement
@@ -93,7 +93,7 @@ dependencies:
93
93
  version: 2.14.2
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: 2.14.2
96
+ version: 2.16.2
97
97
  type: :development
98
98
  prerelease: false
99
99
  version_requirements: !ruby/object:Gem::Requirement
@@ -103,7 +103,7 @@ dependencies:
103
103
  version: 2.14.2
104
104
  - - "~>"
105
105
  - !ruby/object:Gem::Version
106
- version: 2.14.2
106
+ version: 2.16.2
107
107
  - !ruby/object:Gem::Dependency
108
108
  name: guard-minitest
109
109
  requirement: !ruby/object:Gem::Requirement
@@ -213,7 +213,7 @@ dependencies:
213
213
  version: 1.3.4
214
214
  - - "~>"
215
215
  - !ruby/object:Gem::Version
216
- version: 1.3.4
216
+ version: 1.4.2
217
217
  type: :development
218
218
  prerelease: false
219
219
  version_requirements: !ruby/object:Gem::Requirement
@@ -223,7 +223,7 @@ dependencies:
223
223
  version: 1.3.4
224
224
  - - "~>"
225
225
  - !ruby/object:Gem::Version
226
- version: 1.3.4
226
+ version: 1.4.2
227
227
  - !ruby/object:Gem::Dependency
228
228
  name: rake
229
229
  requirement: !ruby/object:Gem::Requirement
@@ -302,6 +302,7 @@ files:
302
302
  - LICENSE
303
303
  - README.md
304
304
  - Rakefile
305
+ - SECURITY.md
305
306
  - bin/_guard-core
306
307
  - bin/console
307
308
  - bin/guard
@@ -368,7 +369,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
368
369
  - !ruby/object:Gem::Version
369
370
  version: '0'
370
371
  requirements: []
371
- rubygems_version: 3.0.3
372
+ rubygems_version: 3.0.8
372
373
  signing_key:
373
374
  specification_version: 4
374
375
  summary: Postgres table partitioning with a Ruby API!