purplelight 0.1.16 → 0.1.17

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.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +16 -5
  3. data/lib/purplelight/version.rb +1 -1
  4. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a1f2c1ee7838cf915ed8d27f16a9445ee7c887bc15a3c1008923272a39dc7829
4
- data.tar.gz: f146bace9926e3fb0fa20afe4f22fef60d8678f7a873f729a1f593b57ed24e8d
3
+ metadata.gz: 006653025fe8b2a5afa958c08992076f171550c7e1a1da4d57442df76d0e659d
4
+ data.tar.gz: 2476b1a5c4f078b539cd83c552e7ec5938277943e46ae6412b4c04df3830a042
5
5
  SHA512:
6
- metadata.gz: 3f5342d860b66163936ba08683d5fc689af0c44bd13427780b7ebbac41b89a39ca41ba0e5d3f744f22b524a3ad47a23c3c09bf0e5b7457fb64e558b05516f5e6
7
- data.tar.gz: be99a0bc359866588513051ba124ef69746bb365e04f618dd0d36409f0937397b6ce3e7792a6300355c3990d8ecae51f50d5a2f6aceb9c8509f4c5e888ce7393
6
+ metadata.gz: d31c3447814135d0f723f6bf35e955618932971f28bdcdd15a3831daee2c8c2d6a22ad0dae0bb8af1572f0e570fdbb71cc606f31241a83ee741742a783f3a673
7
+ data.tar.gz: 30bd7c0a089f57b6f8957d93b538b5e0f698e6440b7180dea86e3922cee58e639cace618782d888284883bcd5930456bd6cda9e270b338d54caea538b0804943
data/README.md CHANGED
@@ -6,18 +6,29 @@ Snapshot MongoDB collections efficiently from Ruby with resumable, partitioned e
6
6
 
7
7
  Purplelight is published on RubyGems: [purplelight on RubyGems](https://rubygems.org/gems/purplelight).
8
8
 
9
+ Requires Ruby 3.2 or newer and MongoDB 7 or 8.
10
+
9
11
  Add to your Gemfile:
10
12
 
11
13
  ```ruby
12
- gem 'purplelight', '~> 0.1.13'
14
+ gem 'purplelight', '~> 0.1.17'
13
15
  ```
14
16
 
15
17
  Or install directly:
16
18
 
17
19
  ```bash
18
- gem install purplelight
20
+ gem install purplelight -v '~> 0.1.17'
21
+ ```
22
+
23
+ `bigdecimal`, `logger`, and the MongoDB Ruby driver are installed automatically.
24
+ To use zstd compression, add its optional backend:
25
+
26
+ ```ruby
27
+ gem 'zstd-ruby', '~> 2.0'
19
28
  ```
20
29
 
30
+ Without `zstd-ruby` or `ruby-zstds`, a requested zstd output safely falls back to gzip.
31
+
21
32
  ### Quick start
22
33
 
23
34
  ```ruby
@@ -124,8 +135,8 @@ Add optional dependencies:
124
135
  ```ruby
125
136
  # Gemfile
126
137
  group :parquet do
127
- gem 'red-arrow', '>= 24.0'
128
- gem 'red-parquet', '>= 24.0'
138
+ gem 'red-arrow', '>= 25.0'
139
+ gem 'red-parquet', '>= 25.0'
129
140
  end
130
141
  ```
131
142
 
@@ -224,7 +235,7 @@ bundle exec bin/purplelight \
224
235
  Notes:
225
236
  - Compression backend selection order is: requested format → `zstd-ruby` → `zstds` → `gzip`.
226
237
  - `--single-file` and `--by-size` update only the sharding mode/params and preserve any provided `--prefix`.
227
- Parquet multi-part sizing can be controlled via `parquet_max_rows` programmatically, or via CLI `--parquet-max-rows`.
238
+ - Parquet multi-part sizing can be controlled via `parquet_max_rows` programmatically, or via CLI `--parquet-max-rows`.
228
239
  - To increase concurrent connections, set `maxPoolSize` on your Mongo URI (used by `--uri`), e.g., `mongodb://.../?maxPoolSize=32`. A good starting point is `maxPoolSize >= --partitions`.
229
240
 
230
241
  ### Architecture
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Purplelight
4
- VERSION = '0.1.16'
4
+ VERSION = '0.1.17'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: purplelight
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.16
4
+ version: 0.1.17
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexander Nicholson