redacted 0.0.5 → 1.0.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 +5 -5
- data/.claude/commands/package-audit.md +36 -0
- data/CLAUDE.md +41 -0
- data/Gemfile +3 -1
- data/lib/redacted/version.rb +1 -1
- data/redacted.gemspec +5 -5
- data/test/dummy/app/assets/config/manifest.js +1 -0
- data/test/dummy/app/views/layouts/application.html.erb +0 -2
- metadata +22 -27
- data/test/dummy/config/initializers/assets.rb +0 -8
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: 1462f0056accf358cfff05472f4cec516e9bd76a8a3d43a53b42e8b6026a469e
|
|
4
|
+
data.tar.gz: 66c7bbe23e33f59060270426602afd067129f4f3071485d97f994bfd15a7d78c
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 7b190bd23ab81227a590a2a08999ca07b4d0118694c947ae8b962988c9324d2c539b11bf74767a1d2c08dcc484f328a02ee73ed2fcb2384f5c534f8fbdb5a7e4
|
|
7
|
+
data.tar.gz: 5e5686ea98ef890ac853d27f5148b7c78f3980bec980b2e356defbec60aa02213269b3e0f594733f41ef62329d68c8b32e6d7f81a6884bbe44cbc0e61bd9319e
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# Package Audit
|
|
2
|
+
|
|
3
|
+
Check Ruby gem dependencies for security vulnerabilities and outdated packages.
|
|
4
|
+
|
|
5
|
+
## Steps
|
|
6
|
+
|
|
7
|
+
1. Update the vulnerability database and run security audit:
|
|
8
|
+
```bash
|
|
9
|
+
bundle audit update && bundle audit
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
2. Check for outdated gems:
|
|
13
|
+
```bash
|
|
14
|
+
bundle outdated
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
3. For targeted updates, use filters:
|
|
18
|
+
- `bundle outdated --filter-patch` - patch updates only (safest)
|
|
19
|
+
- `bundle outdated --filter-minor` - minor version updates
|
|
20
|
+
- `bundle outdated --filter-major` - major version updates
|
|
21
|
+
|
|
22
|
+
4. Fix vulnerabilities by updating affected gems:
|
|
23
|
+
```bash
|
|
24
|
+
bundle update <gem_name>
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
5. Run tests after updates to verify nothing broke:
|
|
28
|
+
```bash
|
|
29
|
+
rake test
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Notes
|
|
33
|
+
|
|
34
|
+
- Prioritize patch updates first, then minor, then major
|
|
35
|
+
- Review changelogs for major version updates before upgrading
|
|
36
|
+
- The audit cross-references Gemfile.lock against the Ruby Advisory Database
|
data/CLAUDE.md
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# CLAUDE.md
|
|
2
|
+
|
|
3
|
+
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
|
4
|
+
|
|
5
|
+
## Project Overview
|
|
6
|
+
|
|
7
|
+
Redacted is a Ruby gem that provides Rails view helpers to convert text into lorem ipsum while maintaining the original text's length and structure. It's useful for obscuring sensitive content in UI mockups or demos.
|
|
8
|
+
|
|
9
|
+
## Common Commands
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
# Install dependencies
|
|
13
|
+
bundle install
|
|
14
|
+
|
|
15
|
+
# Run all tests
|
|
16
|
+
rake test
|
|
17
|
+
|
|
18
|
+
# Run a single test file
|
|
19
|
+
ruby -Ilib:test test/redacted_helper_test.rb
|
|
20
|
+
|
|
21
|
+
# Build the gem
|
|
22
|
+
rake build
|
|
23
|
+
|
|
24
|
+
# Generate documentation
|
|
25
|
+
rake rdoc
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Architecture
|
|
29
|
+
|
|
30
|
+
This is a Rails engine gem with the following structure:
|
|
31
|
+
|
|
32
|
+
- **lib/redacted.rb** - Entry point, loads dependencies (ffaker, nokogiri) and conditionally loads Rails integration
|
|
33
|
+
- **lib/redacted/action_view/helpers.rb** - Core functionality: view helper methods (`redact`, `redact_text`, `redact_paragraphs`, `redact_html`, `ascii_redact`)
|
|
34
|
+
- **lib/redacted/railtie.rb** - Integrates helpers into ActionView
|
|
35
|
+
- **lib/redacted/engine.rb** - Rails engine for serving the CSS asset
|
|
36
|
+
|
|
37
|
+
The gem uses FFaker to generate lorem ipsum text and Nokogiri to parse/traverse HTML while preserving structure.
|
|
38
|
+
|
|
39
|
+
## Testing
|
|
40
|
+
|
|
41
|
+
Tests are in `test/` using Minitest with ActionView::TestCase. The `test/dummy/` directory contains a minimal Rails app for integration testing.
|
data/Gemfile
CHANGED
data/lib/redacted/version.rb
CHANGED
data/redacted.gemspec
CHANGED
|
@@ -18,10 +18,10 @@ Gem::Specification.new do |spec|
|
|
|
18
18
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
|
19
19
|
spec.require_paths = ["lib"]
|
|
20
20
|
|
|
21
|
-
spec.add_dependency "ffaker", "
|
|
22
|
-
spec.add_dependency "nokogiri", "
|
|
23
|
-
spec.add_dependency "railties", ">=
|
|
21
|
+
spec.add_dependency "ffaker", ">= 2.8"
|
|
22
|
+
spec.add_dependency "nokogiri", ">= 1.13"
|
|
23
|
+
spec.add_dependency "railties", ">= 5.2"
|
|
24
24
|
|
|
25
|
-
spec.add_development_dependency "bundler", "
|
|
26
|
-
spec.add_development_dependency "rails", ">=
|
|
25
|
+
spec.add_development_dependency "bundler", ">= 1.6"
|
|
26
|
+
spec.add_development_dependency "rails", ">= 5.2"
|
|
27
27
|
end
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//= link_directory ../stylesheets .css
|
metadata
CHANGED
|
@@ -1,75 +1,69 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: redacted
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0
|
|
4
|
+
version: 1.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Kurt Funai
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2026-01-04 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: ffaker
|
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
|
16
16
|
requirements:
|
|
17
|
-
- - "
|
|
17
|
+
- - ">="
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
19
|
version: '2.8'
|
|
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
26
|
version: '2.8'
|
|
27
27
|
- !ruby/object:Gem::Dependency
|
|
28
28
|
name: nokogiri
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
|
30
30
|
requirements:
|
|
31
|
-
- - "
|
|
31
|
+
- - ">="
|
|
32
32
|
- !ruby/object:Gem::Version
|
|
33
|
-
version: '1.
|
|
33
|
+
version: '1.13'
|
|
34
34
|
type: :runtime
|
|
35
35
|
prerelease: false
|
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
37
|
requirements:
|
|
38
|
-
- - "
|
|
38
|
+
- - ">="
|
|
39
39
|
- !ruby/object:Gem::Version
|
|
40
|
-
version: '1.
|
|
40
|
+
version: '1.13'
|
|
41
41
|
- !ruby/object:Gem::Dependency
|
|
42
42
|
name: railties
|
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
|
44
44
|
requirements:
|
|
45
45
|
- - ">="
|
|
46
46
|
- !ruby/object:Gem::Version
|
|
47
|
-
version: '
|
|
48
|
-
- - "<"
|
|
49
|
-
- !ruby/object:Gem::Version
|
|
50
|
-
version: '6.0'
|
|
47
|
+
version: '5.2'
|
|
51
48
|
type: :runtime
|
|
52
49
|
prerelease: false
|
|
53
50
|
version_requirements: !ruby/object:Gem::Requirement
|
|
54
51
|
requirements:
|
|
55
52
|
- - ">="
|
|
56
53
|
- !ruby/object:Gem::Version
|
|
57
|
-
version: '
|
|
58
|
-
- - "<"
|
|
59
|
-
- !ruby/object:Gem::Version
|
|
60
|
-
version: '6.0'
|
|
54
|
+
version: '5.2'
|
|
61
55
|
- !ruby/object:Gem::Dependency
|
|
62
56
|
name: bundler
|
|
63
57
|
requirement: !ruby/object:Gem::Requirement
|
|
64
58
|
requirements:
|
|
65
|
-
- - "
|
|
59
|
+
- - ">="
|
|
66
60
|
- !ruby/object:Gem::Version
|
|
67
61
|
version: '1.6'
|
|
68
62
|
type: :development
|
|
69
63
|
prerelease: false
|
|
70
64
|
version_requirements: !ruby/object:Gem::Requirement
|
|
71
65
|
requirements:
|
|
72
|
-
- - "
|
|
66
|
+
- - ">="
|
|
73
67
|
- !ruby/object:Gem::Version
|
|
74
68
|
version: '1.6'
|
|
75
69
|
- !ruby/object:Gem::Dependency
|
|
@@ -78,14 +72,14 @@ dependencies:
|
|
|
78
72
|
requirements:
|
|
79
73
|
- - ">="
|
|
80
74
|
- !ruby/object:Gem::Version
|
|
81
|
-
version: '
|
|
75
|
+
version: '5.2'
|
|
82
76
|
type: :development
|
|
83
77
|
prerelease: false
|
|
84
78
|
version_requirements: !ruby/object:Gem::Requirement
|
|
85
79
|
requirements:
|
|
86
80
|
- - ">="
|
|
87
81
|
- !ruby/object:Gem::Version
|
|
88
|
-
version: '
|
|
82
|
+
version: '5.2'
|
|
89
83
|
description: Allows a user to turn any string of text into a redacted block of the
|
|
90
84
|
same size.
|
|
91
85
|
email:
|
|
@@ -94,7 +88,9 @@ executables: []
|
|
|
94
88
|
extensions: []
|
|
95
89
|
extra_rdoc_files: []
|
|
96
90
|
files:
|
|
91
|
+
- ".claude/commands/package-audit.md"
|
|
97
92
|
- ".gitignore"
|
|
93
|
+
- CLAUDE.md
|
|
98
94
|
- Gemfile
|
|
99
95
|
- LICENSE.txt
|
|
100
96
|
- README.md
|
|
@@ -108,6 +104,7 @@ files:
|
|
|
108
104
|
- lib/redacted/version.rb
|
|
109
105
|
- redacted.gemspec
|
|
110
106
|
- test/dummy/Rakefile
|
|
107
|
+
- test/dummy/app/assets/config/manifest.js
|
|
111
108
|
- test/dummy/app/assets/images/.keep
|
|
112
109
|
- test/dummy/app/assets/javascripts/application.js
|
|
113
110
|
- test/dummy/app/assets/stylesheets/application.css
|
|
@@ -130,7 +127,6 @@ files:
|
|
|
130
127
|
- test/dummy/config/environments/development.rb
|
|
131
128
|
- test/dummy/config/environments/production.rb
|
|
132
129
|
- test/dummy/config/environments/test.rb
|
|
133
|
-
- test/dummy/config/initializers/assets.rb
|
|
134
130
|
- test/dummy/config/initializers/backtrace_silencers.rb
|
|
135
131
|
- test/dummy/config/initializers/cookies_serializer.rb
|
|
136
132
|
- test/dummy/config/initializers/filter_parameter_logging.rb
|
|
@@ -155,7 +151,7 @@ homepage: http://kurtfunai.com
|
|
|
155
151
|
licenses:
|
|
156
152
|
- MIT
|
|
157
153
|
metadata: {}
|
|
158
|
-
post_install_message:
|
|
154
|
+
post_install_message:
|
|
159
155
|
rdoc_options: []
|
|
160
156
|
require_paths:
|
|
161
157
|
- lib
|
|
@@ -170,13 +166,13 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
170
166
|
- !ruby/object:Gem::Version
|
|
171
167
|
version: '0'
|
|
172
168
|
requirements: []
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
signing_key:
|
|
169
|
+
rubygems_version: 3.5.11
|
|
170
|
+
signing_key:
|
|
176
171
|
specification_version: 4
|
|
177
172
|
summary: Convert strings into redacted text.
|
|
178
173
|
test_files:
|
|
179
174
|
- test/dummy/Rakefile
|
|
175
|
+
- test/dummy/app/assets/config/manifest.js
|
|
180
176
|
- test/dummy/app/assets/images/.keep
|
|
181
177
|
- test/dummy/app/assets/javascripts/application.js
|
|
182
178
|
- test/dummy/app/assets/stylesheets/application.css
|
|
@@ -199,7 +195,6 @@ test_files:
|
|
|
199
195
|
- test/dummy/config/environments/development.rb
|
|
200
196
|
- test/dummy/config/environments/production.rb
|
|
201
197
|
- test/dummy/config/environments/test.rb
|
|
202
|
-
- test/dummy/config/initializers/assets.rb
|
|
203
198
|
- test/dummy/config/initializers/backtrace_silencers.rb
|
|
204
199
|
- test/dummy/config/initializers/cookies_serializer.rb
|
|
205
200
|
- test/dummy/config/initializers/filter_parameter_logging.rb
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
# Be sure to restart your server when you modify this file.
|
|
2
|
-
|
|
3
|
-
# Version of your assets, change this if you want to expire all your assets.
|
|
4
|
-
Rails.application.config.assets.version = '1.0'
|
|
5
|
-
|
|
6
|
-
# Precompile additional assets.
|
|
7
|
-
# application.js, application.css, and all non-JS/CSS in app/assets folder are already added.
|
|
8
|
-
# Rails.application.config.assets.precompile += %w( search.js )
|