fast_toml 0.2.0 → 0.3.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 +4 -4
- data/Cargo.lock +9 -7
- data/Rakefile +0 -1
- data/ext/fast_toml/Cargo.toml +17 -1
- data/lib/fast_toml/version.rb +1 -1
- data/lib/fast_toml.rb +7 -1
- data/rakelib/benchmark.rake +2 -2
- data/rakelib/env.rake +6 -0
- metadata +9 -8
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 9ce6b2fdd996e28537c28dbaeab6bcb03c678590ab33323308e91d6f5b1d87ca
|
|
4
|
+
data.tar.gz: 1ae0fb254b3bfe3ccaacb58317a9a97034328e50ab4ea50f8a68409705f3de0e
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: b54db7122904b9c138ac7a9651c5d94edd852ce84a02c2450e0c90181d1f2f537a402feea5f657aabdb6aad79567591a3d01525df4120f165d23bcae43b87be5
|
|
7
|
+
data.tar.gz: a971b475d7968d130af93b33625b6dddb3fd4f38b648d2c98ea237af7558f1929565051342f4401d33301002057b2f930ba08012a55ce8745de25d77fd92437e
|
data/Cargo.lock
CHANGED
|
@@ -77,9 +77,11 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
|
|
|
77
77
|
|
|
78
78
|
[[package]]
|
|
79
79
|
name = "fast_toml"
|
|
80
|
-
version = "0.
|
|
80
|
+
version = "0.3.0"
|
|
81
81
|
dependencies = [
|
|
82
82
|
"magnus",
|
|
83
|
+
"rb-sys",
|
|
84
|
+
"rb-sys-env",
|
|
83
85
|
"toml",
|
|
84
86
|
]
|
|
85
87
|
|
|
@@ -330,9 +332,9 @@ dependencies = [
|
|
|
330
332
|
|
|
331
333
|
[[package]]
|
|
332
334
|
name = "toml"
|
|
333
|
-
version = "0.8.
|
|
335
|
+
version = "0.8.14"
|
|
334
336
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
335
|
-
checksum = "
|
|
337
|
+
checksum = "6f49eb2ab21d2f26bd6db7bf383edc527a7ebaee412d17af4d40fdccd442f335"
|
|
336
338
|
dependencies = [
|
|
337
339
|
"serde",
|
|
338
340
|
"serde_spanned",
|
|
@@ -351,9 +353,9 @@ dependencies = [
|
|
|
351
353
|
|
|
352
354
|
[[package]]
|
|
353
355
|
name = "toml_edit"
|
|
354
|
-
version = "0.22.
|
|
356
|
+
version = "0.22.14"
|
|
355
357
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
356
|
-
checksum = "
|
|
358
|
+
checksum = "f21c7aaf97f1bd9ca9d4f9e73b0a6c74bd5afef56f2bc931943a6e1c37e04e38"
|
|
357
359
|
dependencies = [
|
|
358
360
|
"indexmap",
|
|
359
361
|
"serde",
|
|
@@ -434,9 +436,9 @@ checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
|
|
|
434
436
|
|
|
435
437
|
[[package]]
|
|
436
438
|
name = "winnow"
|
|
437
|
-
version = "0.6.
|
|
439
|
+
version = "0.6.13"
|
|
438
440
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
439
|
-
checksum = "
|
|
441
|
+
checksum = "59b5e5f6c299a3c7890b876a2a587f3115162487e704907d9b6cd29473052ba1"
|
|
440
442
|
dependencies = [
|
|
441
443
|
"memchr",
|
|
442
444
|
]
|
data/Rakefile
CHANGED
data/ext/fast_toml/Cargo.toml
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[package]
|
|
2
2
|
name = "fast_toml"
|
|
3
|
-
version = "0.
|
|
3
|
+
version = "0.3.0"
|
|
4
4
|
edition = "2021"
|
|
5
5
|
authors = ["Guilherme Carreiro <karreiro@gmail.com>"]
|
|
6
6
|
license = "MIT"
|
|
@@ -12,3 +12,19 @@ crate-type = ["cdylib"]
|
|
|
12
12
|
[dependencies]
|
|
13
13
|
magnus = "0.6.4"
|
|
14
14
|
toml = "0.8.13"
|
|
15
|
+
rb-sys = { version = "0.9.85", features = [
|
|
16
|
+
"bindgen-rbimpls",
|
|
17
|
+
"bindgen-deprecated-types",
|
|
18
|
+
"stable-api-compiled-fallback",
|
|
19
|
+
] }
|
|
20
|
+
|
|
21
|
+
[dev-dependencies]
|
|
22
|
+
rb-sys = { version = "0.9.85", features = [
|
|
23
|
+
"link-ruby",
|
|
24
|
+
"bindgen-rbimpls",
|
|
25
|
+
"bindgen-deprecated-types",
|
|
26
|
+
"stable-api-compiled-fallback",
|
|
27
|
+
] }
|
|
28
|
+
|
|
29
|
+
[build-dependencies]
|
|
30
|
+
rb-sys-env = { version = "0.1.2" }
|
data/lib/fast_toml/version.rb
CHANGED
data/lib/fast_toml.rb
CHANGED
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
3
|
require_relative 'fast_toml/version'
|
|
4
|
-
|
|
4
|
+
|
|
5
|
+
begin
|
|
6
|
+
RUBY_VERSION =~ /(\d+\.\d+)/
|
|
7
|
+
require_relative "fast_toml/#{Regexp.last_match(1)}/fast_toml"
|
|
8
|
+
rescue LoadError
|
|
9
|
+
require_relative 'fast_toml/fast_toml'
|
|
10
|
+
end
|
|
5
11
|
|
|
6
12
|
module FastToml
|
|
7
13
|
class Error < StandardError; end
|
data/rakelib/benchmark.rake
CHANGED
|
@@ -26,7 +26,7 @@ TOML
|
|
|
26
26
|
|
|
27
27
|
namespace :benchmark do
|
|
28
28
|
desc 'Benchmark different TOML parsers (ips)'
|
|
29
|
-
task :
|
|
29
|
+
task ips: :env do
|
|
30
30
|
Benchmark.ips do |x|
|
|
31
31
|
x.report('fast_toml') { FastToml.parse(TOML_INPUT) }
|
|
32
32
|
x.report('toml') { TOML::Parser.new(TOML_INPUT).parsed }
|
|
@@ -39,7 +39,7 @@ namespace :benchmark do
|
|
|
39
39
|
end
|
|
40
40
|
|
|
41
41
|
desc 'Benchmark different TOML parsers (ms)'
|
|
42
|
-
task :
|
|
42
|
+
task ms: :env do
|
|
43
43
|
n = 5_000
|
|
44
44
|
|
|
45
45
|
Benchmark.bm(20) do |x|
|
data/rakelib/env.rake
ADDED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: fast_toml
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.3.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Guilherme Carreiro
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2024-06-
|
|
11
|
+
date: 2024-06-06 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: rb_sys
|
|
@@ -16,14 +16,14 @@ dependencies:
|
|
|
16
16
|
requirements:
|
|
17
17
|
- - '='
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: 0.9.
|
|
19
|
+
version: 0.9.85
|
|
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.9.
|
|
26
|
+
version: 0.9.85
|
|
27
27
|
description: A fast TOML parser.
|
|
28
28
|
email:
|
|
29
29
|
- karreiro@gmail.com
|
|
@@ -45,6 +45,7 @@ files:
|
|
|
45
45
|
- lib/fast_toml.rb
|
|
46
46
|
- lib/fast_toml/version.rb
|
|
47
47
|
- rakelib/benchmark.rake
|
|
48
|
+
- rakelib/env.rake
|
|
48
49
|
homepage: https://github.com/karreiro/fast_toml
|
|
49
50
|
licenses:
|
|
50
51
|
- MIT
|
|
@@ -54,7 +55,7 @@ metadata:
|
|
|
54
55
|
homepage_uri: https://github.com/karreiro/fast_toml
|
|
55
56
|
source_code_uri: https://github.com/karreiro/fast_toml
|
|
56
57
|
rubygems_mfa_required: 'true'
|
|
57
|
-
post_install_message:
|
|
58
|
+
post_install_message:
|
|
58
59
|
rdoc_options: []
|
|
59
60
|
require_paths:
|
|
60
61
|
- lib
|
|
@@ -69,8 +70,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
69
70
|
- !ruby/object:Gem::Version
|
|
70
71
|
version: 3.3.11
|
|
71
72
|
requirements: []
|
|
72
|
-
rubygems_version: 3.5.
|
|
73
|
-
signing_key:
|
|
73
|
+
rubygems_version: 3.5.9
|
|
74
|
+
signing_key:
|
|
74
75
|
specification_version: 4
|
|
75
76
|
summary: A fast TOML parser.
|
|
76
77
|
test_files: []
|