end_point_blank 0.2.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.
Files changed (49) hide show
  1. checksums.yaml +7 -0
  2. data/.rspec +3 -0
  3. data/.rubocop.yml +13 -0
  4. data/.ruby-version +1 -0
  5. data/README.md +64 -0
  6. data/Rakefile +12 -0
  7. data/build.sh +5 -0
  8. data/docs/superpowers/plans/2026-07-08-framework-agnostic-core.md +68 -0
  9. data/docs/superpowers/specs/2026-07-08-framework-agnostic-core-design.md +58 -0
  10. data/end_point_blank.gemspec +45 -0
  11. data/lib/end_point_blank/access_tokens.rb +72 -0
  12. data/lib/end_point_blank/authorization.rb +36 -0
  13. data/lib/end_point_blank/commands/authentication_cache.rb +95 -0
  14. data/lib/end_point_blank/commands/basic_authenticate.rb +47 -0
  15. data/lib/end_point_blank/commands/bearer_generate.rb +33 -0
  16. data/lib/end_point_blank/commands/endpoint_authorize.rb +71 -0
  17. data/lib/end_point_blank/commands/endpoint_update.rb +129 -0
  18. data/lib/end_point_blank/commands/generate_access_token.rb +46 -0
  19. data/lib/end_point_blank/commands/http.rb +45 -0
  20. data/lib/end_point_blank/commands/route_pattern_finder.rb +21 -0
  21. data/lib/end_point_blank/commands/version_finder.rb +70 -0
  22. data/lib/end_point_blank/configuration.rb +107 -0
  23. data/lib/end_point_blank/fast_json_truncator.rb +49 -0
  24. data/lib/end_point_blank/log_entry.rb +16 -0
  25. data/lib/end_point_blank/loggers/logger.rb +30 -0
  26. data/lib/end_point_blank/masking.rb +282 -0
  27. data/lib/end_point_blank/middleware/rack/report_interaction.rb +54 -0
  28. data/lib/end_point_blank/rack/env_store.rb +34 -0
  29. data/lib/end_point_blank/rack/headers.rb +11 -0
  30. data/lib/end_point_blank/rails/authenticated.rb +21 -0
  31. data/lib/end_point_blank/rails/authorized.rb +33 -0
  32. data/lib/end_point_blank/rails/railtie.rb +18 -0
  33. data/lib/end_point_blank/rails/versioned.rb +64 -0
  34. data/lib/end_point_blank/session_configuration.rb +44 -0
  35. data/lib/end_point_blank/string_truncator.rb +21 -0
  36. data/lib/end_point_blank/unauthorized_error.rb +10 -0
  37. data/lib/end_point_blank/version.rb +5 -0
  38. data/lib/end_point_blank/writers/delayed_writer.rb +110 -0
  39. data/lib/end_point_blank/writers/direct_writer.rb +18 -0
  40. data/lib/end_point_blank/writers/exception_writer.rb +50 -0
  41. data/lib/end_point_blank/writers/log_writer.rb +69 -0
  42. data/lib/end_point_blank/writers/request_writer.rb +61 -0
  43. data/lib/end_point_blank/writers/response_writer.rb +70 -0
  44. data/lib/end_point_blank/writers/shared.rb +39 -0
  45. data/lib/end_point_blank/xml_truncator.rb +89 -0
  46. data/lib/end_point_blank.rb +57 -0
  47. data/sig/end_point_blank_rack.rbs +4 -0
  48. data/test.sh +5 -0
  49. metadata +163 -0
metadata ADDED
@@ -0,0 +1,163 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: end_point_blank
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.2.0
5
+ platform: ruby
6
+ authors:
7
+ - Robert A. Lasch
8
+ bindir: exe
9
+ cert_chain: []
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
+ dependencies:
12
+ - !ruby/object:Gem::Dependency
13
+ name: excon
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - "~>"
17
+ - !ruby/object:Gem::Version
18
+ version: '1.0'
19
+ type: :runtime
20
+ prerelease: false
21
+ version_requirements: !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - "~>"
24
+ - !ruby/object:Gem::Version
25
+ version: '1.0'
26
+ - !ruby/object:Gem::Dependency
27
+ name: rack
28
+ requirement: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ version: '0'
40
+ - !ruby/object:Gem::Dependency
41
+ name: rexml
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
47
+ type: :runtime
48
+ prerelease: false
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ - !ruby/object:Gem::Dependency
55
+ name: base64
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: '0'
61
+ type: :runtime
62
+ prerelease: false
63
+ version_requirements: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ version: '0'
68
+ - !ruby/object:Gem::Dependency
69
+ name: debug
70
+ requirement: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: 1.0.0
75
+ type: :development
76
+ prerelease: false
77
+ version_requirements: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - ">="
80
+ - !ruby/object:Gem::Version
81
+ version: 1.0.0
82
+ description: EndPointBlank client library for Ruby. A framework-agnostic core runs
83
+ in plain Ruby / Sinatra, with Rails supported as an auto-loaded adapter. Provides
84
+ API endpoint tracking, authorization, and error/request/response/log reporting.
85
+ email:
86
+ - rlasch@gmail.com
87
+ executables: []
88
+ extensions: []
89
+ extra_rdoc_files: []
90
+ files:
91
+ - ".rspec"
92
+ - ".rubocop.yml"
93
+ - ".ruby-version"
94
+ - README.md
95
+ - Rakefile
96
+ - build.sh
97
+ - docs/superpowers/plans/2026-07-08-framework-agnostic-core.md
98
+ - docs/superpowers/specs/2026-07-08-framework-agnostic-core-design.md
99
+ - end_point_blank.gemspec
100
+ - lib/end_point_blank.rb
101
+ - lib/end_point_blank/access_tokens.rb
102
+ - lib/end_point_blank/authorization.rb
103
+ - lib/end_point_blank/commands/authentication_cache.rb
104
+ - lib/end_point_blank/commands/basic_authenticate.rb
105
+ - lib/end_point_blank/commands/bearer_generate.rb
106
+ - lib/end_point_blank/commands/endpoint_authorize.rb
107
+ - lib/end_point_blank/commands/endpoint_update.rb
108
+ - lib/end_point_blank/commands/generate_access_token.rb
109
+ - lib/end_point_blank/commands/http.rb
110
+ - lib/end_point_blank/commands/route_pattern_finder.rb
111
+ - lib/end_point_blank/commands/version_finder.rb
112
+ - lib/end_point_blank/configuration.rb
113
+ - lib/end_point_blank/fast_json_truncator.rb
114
+ - lib/end_point_blank/log_entry.rb
115
+ - lib/end_point_blank/loggers/logger.rb
116
+ - lib/end_point_blank/masking.rb
117
+ - lib/end_point_blank/middleware/rack/report_interaction.rb
118
+ - lib/end_point_blank/rack/env_store.rb
119
+ - lib/end_point_blank/rack/headers.rb
120
+ - lib/end_point_blank/rails/authenticated.rb
121
+ - lib/end_point_blank/rails/authorized.rb
122
+ - lib/end_point_blank/rails/railtie.rb
123
+ - lib/end_point_blank/rails/versioned.rb
124
+ - lib/end_point_blank/session_configuration.rb
125
+ - lib/end_point_blank/string_truncator.rb
126
+ - lib/end_point_blank/unauthorized_error.rb
127
+ - lib/end_point_blank/version.rb
128
+ - lib/end_point_blank/writers/delayed_writer.rb
129
+ - lib/end_point_blank/writers/direct_writer.rb
130
+ - lib/end_point_blank/writers/exception_writer.rb
131
+ - lib/end_point_blank/writers/log_writer.rb
132
+ - lib/end_point_blank/writers/request_writer.rb
133
+ - lib/end_point_blank/writers/response_writer.rb
134
+ - lib/end_point_blank/writers/shared.rb
135
+ - lib/end_point_blank/xml_truncator.rb
136
+ - sig/end_point_blank_rack.rbs
137
+ - test.sh
138
+ homepage: https://github.com/EndPointBlank/end_point_blank_rails
139
+ licenses: []
140
+ metadata:
141
+ allowed_push_host: https://rubygems.org
142
+ homepage_uri: https://github.com/EndPointBlank/end_point_blank_rails
143
+ source_code_uri: https://github.com/EndPointBlank/end_point_blank_rails
144
+ changelog_uri: https://github.com/EndPointBlank/end_point_blank_rails/releases
145
+ rdoc_options: []
146
+ require_paths:
147
+ - lib
148
+ required_ruby_version: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: 3.4.2
153
+ required_rubygems_version: !ruby/object:Gem::Requirement
154
+ requirements:
155
+ - - ">="
156
+ - !ruby/object:Gem::Version
157
+ version: '0'
158
+ requirements: []
159
+ rubygems_version: 4.0.7
160
+ specification_version: 4
161
+ summary: Ruby/Rails client for EndPointBlank — endpoint tracking, authorization, and
162
+ error/request/response/log reporting.
163
+ test_files: []