rucaptcha 3.0.2-x86_64-darwin → 3.1.2.pre2-x86_64-darwin

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
2
  SHA256:
3
- metadata.gz: 518517dab0fefc07864f9656ed00b272432cb47594c7d8bbca11ad37cee6ed8b
4
- data.tar.gz: 8b777e3466b8bb2a506c183097b304f3af06aea93ba898d886fc74dbd9d1bd2c
3
+ metadata.gz: 8fe357964777157c22fb2dab0bdc468f0d7f1d9e879e03906992625f6602351c
4
+ data.tar.gz: 7a1b072071714def22b470beb0dedefadbb7ae4c90cdd1cc13e4d0b25f1eefd8
5
5
  SHA512:
6
- metadata.gz: 0706046757b260991cbef21ec11b970cab9028d111bc7a035791dff02ecb9bf8a477bdd842911082f1261a5c598de53cedf143e231be203d2771808f7581dfc6
7
- data.tar.gz: 1a2f18641cae5a540c62afff4d9e68193f723478f9e353de5d8b539399bdcaf42de5b05a7814c009be7a93e8be2bbc83a3e4809830815d69368f58b406ac1aa4
6
+ metadata.gz: 3ea06367e688fddc9c21965e7c83d4571ea323cbc045a065cb32b7cca7ac1832dd8e50ff1d40768d29a978c9923d220cf273a590f9a4ee574e126a6475d124d2
7
+ data.tar.gz: f38d1ee572649401fa4a88ac31994f77e8df86c84c022886aac721048f22ba247041624a73c8f5dd00c5e7ebd07d18ceb4bcc745c94fad666cee4cf5d12210d4
data/README.md CHANGED
@@ -162,3 +162,14 @@ else
162
162
  render :new
163
163
  end
164
164
  ```
165
+
166
+ ## Performance
167
+
168
+ `rake benchmark` to run benchmark test.
169
+
170
+ ```
171
+ Warming up --------------------------------------
172
+ Generate image 51.000 i/100ms
173
+ Calculating -------------------------------------
174
+ Generate image 526.350 (± 2.5%) i/s - 2.652k in 5.041681s
175
+ ```
data/Rakefile CHANGED
@@ -32,3 +32,34 @@ task :preview do
32
32
  warn "-------------------------\n#{res[0]}"
33
33
  puts res[1].pack("c*")
34
34
  end
35
+
36
+ task :memory do
37
+ require "rucaptcha"
38
+ require "memory_profiler"
39
+
40
+ RuCaptchaCore.create(5, 5)
41
+
42
+ report = MemoryProfiler.report do
43
+ 1000.times do
44
+ RuCaptchaCore.create(5, 5)
45
+ end
46
+ end
47
+
48
+ GC.start
49
+ report.pretty_print
50
+
51
+ puts "------------------------- Result Guide -------------------------"
52
+ puts "If [Total retained] have any bytes, there will have memory leak."
53
+ end
54
+
55
+ task :benchmark do
56
+ require "rucaptcha"
57
+ require "benchmark/ips"
58
+
59
+ RuCaptchaCore.create(5, 5)
60
+
61
+ Benchmark.ips do |x|
62
+ x.report("Generate image") { RuCaptchaCore.create(5, 5) }
63
+ x.compare!
64
+ end
65
+ end
@@ -7,7 +7,7 @@ module RuCaptcha
7
7
  headers["Pragma"] = "no-cache"
8
8
  data = generate_rucaptcha
9
9
 
10
- opts = { disposition: "inline", type: "image/png" }
10
+ opts = { disposition: "inline", type: "image/jpeg" }
11
11
  send_data data, opts
12
12
  end
13
13
  end
@@ -0,0 +1,3 @@
1
+ 'de-DE':
2
+ rucaptcha:
3
+ invalid: "Falsches Captcha (Wenn es nicht erkannt wird, klicken Sie darauf , um das Captcha zu aktualisieren)"
@@ -9,6 +9,6 @@ crate-type = ["cdylib"]
9
9
  [dependencies]
10
10
  image = "0.24.4"
11
11
  imageproc = "0.23.0"
12
- magnus = "0.3"
12
+ magnus = "0.4"
13
13
  rand = "0.8.5"
14
14
  rusttype = "0.9.2"
@@ -1,6 +1,6 @@
1
1
  use image::{ImageBuffer, Rgb};
2
2
  use imageproc::drawing::{draw_cubic_bezier_curve_mut, draw_text_mut};
3
- use imageproc::noise::{gaussian_noise_mut, salt_and_pepper_noise_mut};
3
+ use imageproc::noise::gaussian_noise_mut;
4
4
  use rand::{thread_rng, Rng};
5
5
  use rusttype::{Font, Scale};
6
6
  use std::io::Cursor;
@@ -195,8 +195,8 @@ impl CaptchaBuilder {
195
195
  pub fn new() -> Self {
196
196
  CaptchaBuilder {
197
197
  length: 4,
198
- width: 300,
199
- height: 100,
198
+ width: 220,
199
+ height: 70,
200
200
  complexity: 5,
201
201
  }
202
202
  }
@@ -247,15 +247,9 @@ impl CaptchaBuilder {
247
247
  ((5 * self.complexity) - 5) as u64,
248
248
  );
249
249
 
250
- salt_and_pepper_noise_mut(
251
- &mut image,
252
- ((0.001 * self.complexity as f64) - 0.001) as f64,
253
- (0.8 * self.complexity as f64) as u64,
254
- );
255
-
256
250
  let mut bytes: Vec<u8> = Vec::new();
257
251
  image
258
- .write_to(&mut Cursor::new(&mut bytes), image::ImageFormat::Png)
252
+ .write_to(&mut Cursor::new(&mut bytes), image::ImageFormat::Jpeg)
259
253
  .unwrap();
260
254
 
261
255
  Captcha { text, image: bytes }
Binary file
Binary file
Binary file
@@ -1,3 +1,3 @@
1
1
  module RuCaptcha
2
- VERSION = "3.0.2"
2
+ VERSION = "3.1.2.pre2"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rucaptcha
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.2
4
+ version: 3.1.2.pre2
5
5
  platform: x86_64-darwin
6
6
  authors:
7
7
  - Jason Lee
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-10-18 00:00:00.000000000 Z
11
+ date: 2023-01-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: railties
@@ -47,6 +47,7 @@ files:
47
47
  - README.md
48
48
  - Rakefile
49
49
  - app/controllers/ru_captcha/captcha_controller.rb
50
+ - config/locales/rucaptcha.de-DE.yml
50
51
  - config/locales/rucaptcha.en.yml
51
52
  - config/locales/rucaptcha.pt-BR.yml
52
53
  - config/locales/rucaptcha.zh-CN.yml
@@ -88,11 +89,11 @@ required_ruby_version: !ruby/object:Gem::Requirement
88
89
  version: 3.2.dev
89
90
  required_rubygems_version: !ruby/object:Gem::Requirement
90
91
  requirements:
91
- - - ">="
92
+ - - ">"
92
93
  - !ruby/object:Gem::Version
93
- version: '0'
94
+ version: 1.3.1
94
95
  requirements: []
95
- rubygems_version: 3.4.0.dev
96
+ rubygems_version: 3.3.22
96
97
  signing_key:
97
98
  specification_version: 4
98
99
  summary: Captcha Gem for Rails, which generates captcha image by Rust.