Skip to content

Conversation

@Breus
Copy link
Owner

@Breus Breus commented Jan 7, 2026

No description provided.

@Breus Breus requested a review from gavlyukovskiy January 7, 2026 21:46
@Breus Breus self-assigned this Jan 7, 2026
@github-actions
Copy link

github-actions bot commented Jan 7, 2026

Note

These results are affected by shared workloads on GitHub runners. Use the results only to detect possible regressions, but always rerun on more stable machine before making any conclusions!

Benchmark results (pull-request, 4c8815d)

Benchmark                                                           (characters)  (jsonPath)  (jsonSize)  (keyLength)  (maskedKeyProbability)  (numberOfTargetKeys)  (streamInputType)  (streamOutputType)   Mode  Cnt         Score       Error   Units
BaselineBenchmark.countBytes                                             unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4   2605931.980 ± 63104.500   ops/s
BaselineBenchmark.countBytes:gc.alloc.rate.norm                          unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4         0.001 ±     0.001    B/op
BaselineBenchmark.jacksonParseAndMask                                    unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     36844.793 ±   798.297   ops/s
BaselineBenchmark.jacksonParseAndMask:gc.alloc.rate.norm                 unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     58656.066 ±     0.030    B/op
BaselineBenchmark.jacksonParseOnly                                       unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     81221.753 ±  3557.466   ops/s
BaselineBenchmark.jacksonParseOnly:gc.alloc.rate.norm                    unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     17616.030 ±     0.014    B/op
BaselineBenchmark.regexReplace                                           unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      3752.077 ±    54.145   ops/s
BaselineBenchmark.regexReplace:gc.alloc.rate.norm                        unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     53048.646 ±     0.303    B/op
BaselineBenchmark.writeFile                                              unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      4732.485 ±   313.453   ops/s
BaselineBenchmark.writeFile:gc.alloc.rate.norm                           unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      5920.514 ±     0.296    B/op
InstanceCreationBenchmark.jsonMasker                                         N/A         N/A         N/A          N/A                     N/A                  1000                N/A                 N/A  thrpt    4      1338.328 ±    34.763   ops/s
InstanceCreationBenchmark.jsonMasker:gc.alloc.rate.norm                      N/A         N/A         N/A          N/A                     N/A                  1000                N/A                 N/A  thrpt    4   1637278.857 ±    66.306    B/op
JsonMaskerBenchmark.jsonMaskerByteArrayStreams                           unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    185167.326 ± 23389.361   ops/s
JsonMaskerBenchmark.jsonMaskerByteArrayStreams:gc.alloc.rate.norm        unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     10840.013 ±     0.001    B/op
JsonMaskerBenchmark.jsonMaskerByteArrayStreams                           unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    208726.252 ± 20276.831   ops/s
JsonMaskerBenchmark.jsonMaskerByteArrayStreams:gc.alloc.rate.norm        unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     12184.011 ±     0.001    B/op
JsonMaskerBenchmark.jsonMaskerBytes                                      unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    413509.275 ±  5454.614   ops/s
JsonMaskerBenchmark.jsonMaskerBytes:gc.alloc.rate.norm                   unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      2272.006 ±     0.001    B/op
JsonMaskerBenchmark.jsonMaskerBytes                                      unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    397508.206 ±  3288.213   ops/s
JsonMaskerBenchmark.jsonMaskerBytes:gc.alloc.rate.norm                   unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      2024.006 ±     0.001    B/op
JsonMaskerBenchmark.jsonMaskerString                                     unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    202694.572 ± 12595.515   ops/s
JsonMaskerBenchmark.jsonMaskerString:gc.alloc.rate.norm                  unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     10176.011 ±     0.001    B/op
JsonMaskerBenchmark.jsonMaskerString                                     unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    167480.935 ± 12485.920   ops/s
JsonMaskerBenchmark.jsonMaskerString:gc.alloc.rate.norm                  unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     10944.014 ±     0.001    B/op
LargeKeySetInstanceCreationBenchmark.jsonMasker                              N/A         N/A         N/A          100                     N/A                  1000                N/A                 N/A  thrpt    4       101.343 ±     2.027   ops/s
LargeKeySetInstanceCreationBenchmark.jsonMasker:gc.alloc.rate.norm           N/A         N/A         N/A          100                     N/A                  1000                N/A                 N/A  thrpt    4  32372351.292 ±     2.935    B/op
StreamTypeBenchmark.jsonMaskerStreams                                        N/A         N/A         1kb          N/A                     N/A                   N/A    ByteArrayStream     ByteArrayStream  thrpt    4    209473.907 ± 16367.512   ops/s
StreamTypeBenchmark.jsonMaskerStreams:gc.alloc.rate.norm                     N/A         N/A         1kb          N/A                     N/A                   N/A    ByteArrayStream     ByteArrayStream  thrpt    4     12184.012 ±     0.008    B/op
StreamTypeBenchmark.jsonMaskerStreams                                        N/A         N/A         1kb          N/A                     N/A                   N/A    ByteArrayStream          FileStream  thrpt    4      4257.071 ±  2212.147   ops/s
StreamTypeBenchmark.jsonMaskerStreams:gc.alloc.rate.norm                     N/A         N/A         1kb          N/A                     N/A                   N/A    ByteArrayStream          FileStream  thrpt    4      9208.576 ±     0.349    B/op
StreamTypeBenchmark.jsonMaskerStreams                                        N/A         N/A         1kb          N/A                     N/A                   N/A         FileStream     ByteArrayStream  thrpt    4     78474.585 ±  8157.643   ops/s
StreamTypeBenchmark.jsonMaskerStreams:gc.alloc.rate.norm                     N/A         N/A         1kb          N/A                     N/A                   N/A         FileStream     ByteArrayStream  thrpt    4     12336.031 ±     0.024    B/op
StreamTypeBenchmark.jsonMaskerStreams                                        N/A         N/A         1kb          N/A                     N/A                   N/A         FileStream          FileStream  thrpt    4      4358.770 ±  1570.349   ops/s
StreamTypeBenchmark.jsonMaskerStreams:gc.alloc.rate.norm                     N/A         N/A         1kb          N/A                     N/A                   N/A         FileStream          FileStream  thrpt    4      9392.564 ±     0.564    B/op
ValueMaskerBenchmark.maskWithRawValueFunction                            unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    529103.019 ± 11543.488   ops/s
ValueMaskerBenchmark.maskWithRawValueFunction:gc.alloc.rate.norm         unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      1632.004 ±     0.001    B/op
ValueMaskerBenchmark.maskWithStatic                                      unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    610118.238 ± 22788.291   ops/s
ValueMaskerBenchmark.maskWithStatic:gc.alloc.rate.norm                   unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      1272.004 ±     0.001    B/op
ValueMaskerBenchmark.maskWithTextValueFunction                           unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    516750.690 ± 13454.988   ops/s
ValueMaskerBenchmark.maskWithTextValueFunction:gc.alloc.rate.norm        unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      1776.004 ±     0.001    B/op

Benchmark results (master, f5bdfce)

Benchmark                                                           (characters)  (jsonPath)  (jsonSize)  (keyLength)  (maskedKeyProbability)  (numberOfTargetKeys)  (streamInputType)  (streamOutputType)   Mode  Cnt         Score       Error   Units
BaselineBenchmark.countBytes                                             unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4   2600509.045 ± 63618.802   ops/s
BaselineBenchmark.countBytes:gc.alloc.rate.norm                          unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4         0.001 ±     0.001    B/op
BaselineBenchmark.jacksonParseAndMask                                    unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     37102.176 ±   994.284   ops/s
BaselineBenchmark.jacksonParseAndMask:gc.alloc.rate.norm                 unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     58496.744 ±     8.770    B/op
BaselineBenchmark.jacksonParseOnly                                       unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     81331.384 ±  1431.336   ops/s
BaselineBenchmark.jacksonParseOnly:gc.alloc.rate.norm                    unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     17832.030 ±     0.015    B/op
BaselineBenchmark.regexReplace                                           unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      3715.627 ±    55.355   ops/s
BaselineBenchmark.regexReplace:gc.alloc.rate.norm                        unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     53048.652 ±     0.303    B/op
BaselineBenchmark.writeFile                                              unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      5637.857 ±   654.781   ops/s
BaselineBenchmark.writeFile:gc.alloc.rate.norm                           unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      5920.431 ±     0.265    B/op
InstanceCreationBenchmark.jsonMasker                                         N/A         N/A         N/A          N/A                     N/A                  1000                N/A                 N/A  thrpt    4      1264.981 ±   148.216   ops/s
InstanceCreationBenchmark.jsonMasker:gc.alloc.rate.norm                      N/A         N/A         N/A          N/A                     N/A                  1000                N/A                 N/A  thrpt    4   1637280.565 ±    87.278    B/op
JsonMaskerBenchmark.jsonMaskerByteArrayStreams                           unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    193001.078 ± 14982.518   ops/s
JsonMaskerBenchmark.jsonMaskerByteArrayStreams:gc.alloc.rate.norm        unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     10840.012 ±     0.001    B/op
JsonMaskerBenchmark.jsonMaskerByteArrayStreams                           unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    189735.956 ±  9984.462   ops/s
JsonMaskerBenchmark.jsonMaskerByteArrayStreams:gc.alloc.rate.norm        unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     12184.012 ±     0.001    B/op
JsonMaskerBenchmark.jsonMaskerBytes                                      unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    395566.722 ± 10276.986   ops/s
JsonMaskerBenchmark.jsonMaskerBytes:gc.alloc.rate.norm                   unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      2272.006 ±     0.001    B/op
JsonMaskerBenchmark.jsonMaskerBytes                                      unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    403973.520 ± 13197.882   ops/s
JsonMaskerBenchmark.jsonMaskerBytes:gc.alloc.rate.norm                   unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      2024.006 ±     0.001    B/op
JsonMaskerBenchmark.jsonMaskerString                                     unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    196174.077 ± 15123.477   ops/s
JsonMaskerBenchmark.jsonMaskerString:gc.alloc.rate.norm                  unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     10176.012 ±     0.001    B/op
JsonMaskerBenchmark.jsonMaskerString                                     unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    181677.798 ± 24958.055   ops/s
JsonMaskerBenchmark.jsonMaskerString:gc.alloc.rate.norm                  unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     10944.013 ±     0.002    B/op
LargeKeySetInstanceCreationBenchmark.jsonMasker                              N/A         N/A         N/A          100                     N/A                  1000                N/A                 N/A  thrpt    4        95.779 ±     8.606   ops/s
LargeKeySetInstanceCreationBenchmark.jsonMasker:gc.alloc.rate.norm           N/A         N/A         N/A          100                     N/A                  1000                N/A                 N/A  thrpt    4  32372352.614 ±     5.858    B/op
StreamTypeBenchmark.jsonMaskerStreams                                        N/A         N/A         1kb          N/A                     N/A                   N/A    ByteArrayStream     ByteArrayStream  thrpt    4    209952.358 ± 12810.750   ops/s
StreamTypeBenchmark.jsonMaskerStreams:gc.alloc.rate.norm                     N/A         N/A         1kb          N/A                     N/A                   N/A    ByteArrayStream     ByteArrayStream  thrpt    4     12184.012 ±     0.007    B/op
StreamTypeBenchmark.jsonMaskerStreams                                        N/A         N/A         1kb          N/A                     N/A                   N/A    ByteArrayStream          FileStream  thrpt    4      4599.314 ±   999.467   ops/s
StreamTypeBenchmark.jsonMaskerStreams:gc.alloc.rate.norm                     N/A         N/A         1kb          N/A                     N/A                   N/A    ByteArrayStream          FileStream  thrpt    4      9208.532 ±     0.323    B/op
StreamTypeBenchmark.jsonMaskerStreams                                        N/A         N/A         1kb          N/A                     N/A                   N/A         FileStream     ByteArrayStream  thrpt    4     80094.434 ±  6174.843   ops/s
StreamTypeBenchmark.jsonMaskerStreams:gc.alloc.rate.norm                     N/A         N/A         1kb          N/A                     N/A                   N/A         FileStream     ByteArrayStream  thrpt    4     12336.031 ±     0.020    B/op
StreamTypeBenchmark.jsonMaskerStreams                                        N/A         N/A         1kb          N/A                     N/A                   N/A         FileStream          FileStream  thrpt    4      4282.385 ±   967.978   ops/s
StreamTypeBenchmark.jsonMaskerStreams:gc.alloc.rate.norm                     N/A         N/A         1kb          N/A                     N/A                   N/A         FileStream          FileStream  thrpt    4      9392.571 ±     0.343    B/op
ValueMaskerBenchmark.maskWithRawValueFunction                            unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    592165.860 ± 16070.146   ops/s
ValueMaskerBenchmark.maskWithRawValueFunction:gc.alloc.rate.norm         unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      1632.004 ±     0.001    B/op
ValueMaskerBenchmark.maskWithStatic                                      unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    645584.225 ± 18991.536   ops/s
ValueMaskerBenchmark.maskWithStatic:gc.alloc.rate.norm                   unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      1272.004 ±     0.001    B/op
ValueMaskerBenchmark.maskWithTextValueFunction                           unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    521359.506 ± 33866.502   ops/s
ValueMaskerBenchmark.maskWithTextValueFunction:gc.alloc.rate.norm        unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      1848.004 ±     0.001    B/op

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request significantly revamps the README to make it more user-friendly and visually appealing. The changes transform the documentation from a technical reference into an engaging, well-structured guide that better showcases the library's value proposition.

Key changes:

  • Added visual enhancements including centered header, emojis, and comparison table
  • Reorganized content with clear sections and table of contents for better navigation
  • Added quick start guide and practical use cases upfront to help users get started faster

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@Breus Breus enabled auto-merge (squash) January 8, 2026 10:09
@sonarqubecloud
Copy link

sonarqubecloud bot commented Jan 8, 2026

@Breus Breus merged commit c594b89 into master Jan 8, 2026
5 checks passed
@Breus Breus deleted the revamped-readme branch January 8, 2026 10:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants