aaf-mdqt 0.8.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 +7 -0
- data/.github/workflows/codeql-analysis.yml +70 -0
- data/.github/workflows/ruby.yml +41 -0
- data/.gitignore +25 -0
- data/.rspec +2 -0
- data/.rubocop.yml +1 -0
- data/.rubocop_todo.yml +296 -0
- data/.ruby-version +1 -0
- data/.tool-versions +1 -0
- data/.travis.yml +7 -0
- data/CHANGELOG.md +168 -0
- data/CODE_OF_CONDUCT.md +74 -0
- data/Gemfile +9 -0
- data/LICENSE.txt +21 -0
- data/Makefile +4 -0
- data/README.md +268 -0
- data/Rakefile +5 -0
- data/aaf-mdqt.gemspec +46 -0
- data/bin/console +14 -0
- data/bin/setup +8 -0
- data/cucumber.yml +2 -0
- data/exe/mdqt +174 -0
- data/lib/mdqt/cli/base.rb +190 -0
- data/lib/mdqt/cli/cache_control.rb +25 -0
- data/lib/mdqt/cli/check.rb +78 -0
- data/lib/mdqt/cli/compliance.rb +0 -0
- data/lib/mdqt/cli/defaults.rb +70 -0
- data/lib/mdqt/cli/entities.rb +47 -0
- data/lib/mdqt/cli/exists.rb +0 -0
- data/lib/mdqt/cli/get.rb +130 -0
- data/lib/mdqt/cli/list.rb +65 -0
- data/lib/mdqt/cli/ln.rb +81 -0
- data/lib/mdqt/cli/ls.rb +54 -0
- data/lib/mdqt/cli/rename.rb +75 -0
- data/lib/mdqt/cli/reset.rb +27 -0
- data/lib/mdqt/cli/services.rb +25 -0
- data/lib/mdqt/cli/transform.rb +33 -0
- data/lib/mdqt/cli/url.rb +37 -0
- data/lib/mdqt/cli/version.rb +17 -0
- data/lib/mdqt/cli.rb +24 -0
- data/lib/mdqt/client/identifier_utils.rb +51 -0
- data/lib/mdqt/client/metadata_file.rb +144 -0
- data/lib/mdqt/client/metadata_response.rb +182 -0
- data/lib/mdqt/client/metadata_service.rb +194 -0
- data/lib/mdqt/client/metadata_validator.rb +81 -0
- data/lib/mdqt/client.rb +83 -0
- data/lib/mdqt/schema/MetadataExchange.xsd +112 -0
- data/lib/mdqt/schema/mdqt_check_schema.xsd +5 -0
- data/lib/mdqt/schema/oasis-200401-wss-wssecurity-secext-1.0.xsd +195 -0
- data/lib/mdqt/schema/oasis-200401-wss-wssecurity-utility-1.0.xsd +108 -0
- data/lib/mdqt/schema/saml-schema-assertion-2.0.xsd +283 -0
- data/lib/mdqt/schema/saml-schema-metadata-2.0.xsd +337 -0
- data/lib/mdqt/schema/ws-addr.xsd +137 -0
- data/lib/mdqt/schema/ws-authorization.xsd +145 -0
- data/lib/mdqt/schema/ws-federation.xsd +471 -0
- data/lib/mdqt/schema/ws-securitypolicy-1.2.xsd +1205 -0
- data/lib/mdqt/schema/xenc-schema.xsd +136 -0
- data/lib/mdqt/schema/xml.xsd +287 -0
- data/lib/mdqt/schema/xmldsig-core-schema.xsd +309 -0
- data/lib/mdqt/version.rb +3 -0
- data/lib/mdqt.rb +5 -0
- data/lib/tasks/cucumber.rake +8 -0
- data/lib/tasks/spec.rake +5 -0
- data/lib/tasks/tests.rake +6 -0
- data/lib/tasks/yard.rake +6 -0
- metadata +332 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 3cf456b06ec7f076025cb43c27569907435711aadda8b8ff09a9afb23d825a04
|
4
|
+
data.tar.gz: e203f5f736f4384c6d4928ae5462dedfb8b417a0b7c54fa75926f1611d75dc50
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: a5564af50ba3917ac2847709eb9af32e8993a472607b17ab1b56b0a85deebd0f8be67aa1b1ea59f37e91a0dcb51b0f43ae0da4a8b7a9f26be6436b76e85bad87
|
7
|
+
data.tar.gz: 33218e40ae25b87b7020d639e46d3e95bf594299c7436917e327cd77ed96ba086f6c70bf3a02aa66c63ccbba41519dd3c3971d5c9848aa7c39404ea6c55da73c
|
@@ -0,0 +1,70 @@
|
|
1
|
+
# For most projects, this workflow file will not need changing; you simply need
|
2
|
+
# to commit it to your repository.
|
3
|
+
#
|
4
|
+
# You may wish to alter this file to override the set of languages analyzed,
|
5
|
+
# or to provide custom queries or build logic.
|
6
|
+
#
|
7
|
+
# ******** NOTE ********
|
8
|
+
# We have attempted to detect the languages in your repository. Please check
|
9
|
+
# the `language` matrix defined below to confirm you have the correct set of
|
10
|
+
# supported CodeQL languages.
|
11
|
+
#
|
12
|
+
name: "CodeQL"
|
13
|
+
|
14
|
+
on:
|
15
|
+
push:
|
16
|
+
branches: [ master ]
|
17
|
+
pull_request:
|
18
|
+
# The branches below must be a subset of the branches above
|
19
|
+
branches: [ master ]
|
20
|
+
schedule:
|
21
|
+
- cron: '17 4 * * 0'
|
22
|
+
|
23
|
+
jobs:
|
24
|
+
analyze:
|
25
|
+
name: Analyze
|
26
|
+
runs-on: ubuntu-latest
|
27
|
+
permissions:
|
28
|
+
actions: read
|
29
|
+
contents: read
|
30
|
+
security-events: write
|
31
|
+
|
32
|
+
strategy:
|
33
|
+
fail-fast: false
|
34
|
+
matrix:
|
35
|
+
language: [ 'ruby' ]
|
36
|
+
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
|
37
|
+
# Learn more about CodeQL language support at https://git.io/codeql-language-support
|
38
|
+
|
39
|
+
steps:
|
40
|
+
- name: Checkout repository
|
41
|
+
uses: actions/checkout@v2
|
42
|
+
|
43
|
+
# Initializes the CodeQL tools for scanning.
|
44
|
+
- name: Initialize CodeQL
|
45
|
+
uses: github/codeql-action/init@v1
|
46
|
+
with:
|
47
|
+
languages: ${{ matrix.language }}
|
48
|
+
# If you wish to specify custom queries, you can do so here or in a config file.
|
49
|
+
# By default, queries listed here will override any specified in a config file.
|
50
|
+
# Prefix the list here with "+" to use these queries and those in the config file.
|
51
|
+
# queries: ./path/to/local/query, your-org/your-repo/queries@main
|
52
|
+
|
53
|
+
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
|
54
|
+
# If this step fails, then you should remove it and run the build manually (see below)
|
55
|
+
- name: Autobuild
|
56
|
+
uses: github/codeql-action/autobuild@v1
|
57
|
+
|
58
|
+
# ℹ️ Command-line programs to run using the OS shell.
|
59
|
+
# 📚 https://git.io/JvXDl
|
60
|
+
|
61
|
+
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
|
62
|
+
# and modify them (or add more) to build your code if your project
|
63
|
+
# uses a compiled language
|
64
|
+
|
65
|
+
#- run: |
|
66
|
+
# make bootstrap
|
67
|
+
# make release
|
68
|
+
|
69
|
+
- name: Perform CodeQL Analysis
|
70
|
+
uses: github/codeql-action/analyze@v1
|
@@ -0,0 +1,41 @@
|
|
1
|
+
# This workflow uses actions that are not certified by GitHub.
|
2
|
+
# They are provided by a third-party and are governed by
|
3
|
+
# separate terms of service, privacy policy, and support
|
4
|
+
# documentation.
|
5
|
+
# This workflow will download a prebuilt Ruby version, install dependencies and run tests with Rake
|
6
|
+
# For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby
|
7
|
+
|
8
|
+
name: Ruby
|
9
|
+
|
10
|
+
env:
|
11
|
+
LANG: "en_GB.UTF-8"
|
12
|
+
|
13
|
+
on:
|
14
|
+
push:
|
15
|
+
branches: [ "master" ]
|
16
|
+
pull_request:
|
17
|
+
branches: [ "master" ]
|
18
|
+
|
19
|
+
permissions:
|
20
|
+
contents: read
|
21
|
+
|
22
|
+
jobs:
|
23
|
+
test:
|
24
|
+
|
25
|
+
runs-on: ubuntu-latest
|
26
|
+
strategy:
|
27
|
+
matrix:
|
28
|
+
ruby-version: ['3.0']
|
29
|
+
|
30
|
+
steps:
|
31
|
+
- uses: actions/checkout@v3
|
32
|
+
- name: Set up Ruby
|
33
|
+
# To automatically get bug fixes and new Ruby versions for ruby/setup-ruby,
|
34
|
+
# change this to (see https://github.com/ruby/setup-ruby#versioning):
|
35
|
+
# uses: ruby/setup-ruby@v1
|
36
|
+
uses: ruby/setup-ruby@55283cc23133118229fd3f97f9336ee23a179fcf # v1.146.0
|
37
|
+
with:
|
38
|
+
ruby-version: ${{ matrix.ruby-version }}
|
39
|
+
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
|
40
|
+
- name: Run tests
|
41
|
+
run: bundle exec rake features
|
data/.gitignore
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
/.bundle/
|
2
|
+
/.yardoc
|
3
|
+
/Gemfile.lock
|
4
|
+
/_yardoc/
|
5
|
+
/coverage/
|
6
|
+
/doc/
|
7
|
+
/pkg/
|
8
|
+
/spec/reports/
|
9
|
+
/tmp/
|
10
|
+
/out.xml
|
11
|
+
/out.txt
|
12
|
+
/mdqt_cache.log
|
13
|
+
*.gem
|
14
|
+
/ukfederation-mdq.pem
|
15
|
+
/mdq-beta-cert.pem
|
16
|
+
/out
|
17
|
+
/xout
|
18
|
+
out*.xml
|
19
|
+
/.idea
|
20
|
+
/*.xml
|
21
|
+
/bt
|
22
|
+
*.html
|
23
|
+
/t/aggregate.xml
|
24
|
+
/t/indiid.xml
|
25
|
+
/t/uom.xml
|
data/.rspec
ADDED
data/.rubocop.yml
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
inherit_from: .rubocop_todo.yml
|
data/.rubocop_todo.yml
ADDED
@@ -0,0 +1,296 @@
|
|
1
|
+
# This configuration was generated by
|
2
|
+
# `rubocop --auto-gen-config`
|
3
|
+
# on 2018-05-03 07:42:59 +0100 using RuboCop version 0.55.0.
|
4
|
+
# The point is for the user to remove these configuration records
|
5
|
+
# one by one as the offenses are removed from the code base.
|
6
|
+
# Note that changes in the inspected code, or installation of new
|
7
|
+
# versions of RuboCop, may require this file to be generated again.
|
8
|
+
|
9
|
+
# Offense count: 1
|
10
|
+
# Cop supports --auto-correct.
|
11
|
+
# Configuration parameters: Include, TreatCommentsAsGroupSeparators.
|
12
|
+
# Include: **/*.gemspec
|
13
|
+
Gemspec/OrderedDependencies:
|
14
|
+
Exclude:
|
15
|
+
- 'aaf-mdqt.gemspec'
|
16
|
+
|
17
|
+
# Offense count: 1
|
18
|
+
# Configuration parameters: Include.
|
19
|
+
# Include: **/*.gemspec
|
20
|
+
Gemspec/RequiredRubyVersion:
|
21
|
+
Exclude:
|
22
|
+
- 'aaf-mdqt.gemspec'
|
23
|
+
|
24
|
+
# Offense count: 1
|
25
|
+
# Cop supports --auto-correct.
|
26
|
+
Layout/CommentIndentation:
|
27
|
+
Exclude:
|
28
|
+
- 'lib/mdqt/cli/base.rb'
|
29
|
+
|
30
|
+
# Offense count: 1
|
31
|
+
# Cop supports --auto-correct.
|
32
|
+
# Configuration parameters: AllowBorderComment, AllowMarginComment.
|
33
|
+
Layout/EmptyComment:
|
34
|
+
Exclude:
|
35
|
+
- 'lib/mdqt/cli/base.rb'
|
36
|
+
|
37
|
+
# Offense count: 1
|
38
|
+
# Cop supports --auto-correct.
|
39
|
+
Layout/EmptyLineAfterMagicComment:
|
40
|
+
Exclude:
|
41
|
+
- 'aaf-mdqt.gemspec'
|
42
|
+
|
43
|
+
# Offense count: 3
|
44
|
+
# Cop supports --auto-correct.
|
45
|
+
Layout/EmptyLines:
|
46
|
+
Exclude:
|
47
|
+
- 'lib/mdqt/cli.rb'
|
48
|
+
- 'aaf-mdqt.gemspec'
|
49
|
+
- 'spec/client/client_spec.rb'
|
50
|
+
|
51
|
+
# Offense count: 3
|
52
|
+
# Cop supports --auto-correct.
|
53
|
+
# Configuration parameters: EnforcedStyle.
|
54
|
+
# SupportedStyles: empty_lines, no_empty_lines
|
55
|
+
Layout/EmptyLinesAroundBlockBody:
|
56
|
+
Exclude:
|
57
|
+
- 'exe/mdqt'
|
58
|
+
- 'spec/client/client_spec.rb'
|
59
|
+
|
60
|
+
# Offense count: 22
|
61
|
+
# Cop supports --auto-correct.
|
62
|
+
# Configuration parameters: EnforcedStyle.
|
63
|
+
# SupportedStyles: empty_lines, empty_lines_except_namespace, empty_lines_special, no_empty_lines, beginning_only, ending_only
|
64
|
+
Layout/EmptyLinesAroundClassBody:
|
65
|
+
Exclude:
|
66
|
+
- 'lib/mdqt/cli.rb'
|
67
|
+
- 'lib/mdqt/cli/base.rb'
|
68
|
+
- 'lib/mdqt/cli/defaults.rb'
|
69
|
+
- 'lib/mdqt/cli/get.rb'
|
70
|
+
- 'lib/mdqt/client.rb'
|
71
|
+
- 'lib/mdqt/client/metadata_service.rb'
|
72
|
+
|
73
|
+
# Offense count: 11
|
74
|
+
# Cop supports --auto-correct.
|
75
|
+
Layout/EmptyLinesAroundMethodBody:
|
76
|
+
Exclude:
|
77
|
+
- 'lib/mdqt/cli/base.rb'
|
78
|
+
- 'lib/mdqt/cli/get.rb'
|
79
|
+
- 'lib/mdqt/client.rb'
|
80
|
+
- 'lib/mdqt/client/metadata_service.rb'
|
81
|
+
|
82
|
+
# Offense count: 7
|
83
|
+
# Cop supports --auto-correct.
|
84
|
+
# Configuration parameters: EnforcedStyle.
|
85
|
+
# SupportedStyles: empty_lines, empty_lines_except_namespace, empty_lines_special, no_empty_lines
|
86
|
+
Layout/EmptyLinesAroundModuleBody:
|
87
|
+
Exclude:
|
88
|
+
- 'lib/mdqt.rb'
|
89
|
+
- 'lib/mdqt/cli.rb'
|
90
|
+
- 'lib/mdqt/cli/base.rb'
|
91
|
+
- 'lib/mdqt/cli/get.rb'
|
92
|
+
- 'lib/mdqt/client.rb'
|
93
|
+
- 'lib/mdqt/client/metadata_service.rb'
|
94
|
+
|
95
|
+
# Offense count: 1
|
96
|
+
# Cop supports --auto-correct.
|
97
|
+
# Configuration parameters: AllowForAlignment, ForceEqualSignAlignment.
|
98
|
+
Layout/ExtraSpacing:
|
99
|
+
Exclude:
|
100
|
+
- 'aaf-mdqt.gemspec'
|
101
|
+
|
102
|
+
# Offense count: 3
|
103
|
+
# Cop supports --auto-correct.
|
104
|
+
Layout/LeadingCommentSpace:
|
105
|
+
Exclude:
|
106
|
+
- 'exe/mdqt'
|
107
|
+
- 'lib/mdqt/client/metadata_service.rb'
|
108
|
+
|
109
|
+
# Offense count: 1
|
110
|
+
# Cop supports --auto-correct.
|
111
|
+
Layout/SpaceAfterComma:
|
112
|
+
Exclude:
|
113
|
+
- 'lib/mdqt/client/metadata_service.rb'
|
114
|
+
|
115
|
+
# Offense count: 1
|
116
|
+
# Cop supports --auto-correct.
|
117
|
+
# Configuration parameters: .
|
118
|
+
# SupportedStyles: space, no_space
|
119
|
+
Layout/SpaceAroundEqualsInParameterDefault:
|
120
|
+
EnforcedStyle: no_space
|
121
|
+
|
122
|
+
# Offense count: 1
|
123
|
+
# Cop supports --auto-correct.
|
124
|
+
# Configuration parameters: AllowForAlignment.
|
125
|
+
Layout/SpaceAroundOperators:
|
126
|
+
Exclude:
|
127
|
+
- 'aaf-mdqt.gemspec'
|
128
|
+
|
129
|
+
# Offense count: 1
|
130
|
+
# Cop supports --auto-correct.
|
131
|
+
# Configuration parameters: AllowForAlignment.
|
132
|
+
Layout/SpaceBeforeFirstArg:
|
133
|
+
Exclude:
|
134
|
+
- 'lib/mdqt/client/metadata_service.rb'
|
135
|
+
|
136
|
+
# Offense count: 2
|
137
|
+
# Cop supports --auto-correct.
|
138
|
+
# Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBraces, SpaceBeforeBlockParameters.
|
139
|
+
# SupportedStyles: space, no_space
|
140
|
+
# SupportedStylesForEmptyBraces: space, no_space
|
141
|
+
Layout/SpaceInsideBlockBraces:
|
142
|
+
Exclude:
|
143
|
+
- 'lib/mdqt/cli/get.rb'
|
144
|
+
|
145
|
+
# Offense count: 7
|
146
|
+
# Cop supports --auto-correct.
|
147
|
+
# Configuration parameters: EnforcedStyle.
|
148
|
+
# SupportedStyles: final_newline, final_blank_line
|
149
|
+
Layout/TrailingBlankLines:
|
150
|
+
Exclude:
|
151
|
+
- 'exe/mdqt'
|
152
|
+
- 'lib/mdqt/cli.rb'
|
153
|
+
- 'lib/mdqt/cli/base.rb'
|
154
|
+
- 'lib/mdqt/cli/defaults.rb'
|
155
|
+
- 'lib/mdqt/client.rb'
|
156
|
+
- 'lib/mdqt/client/metadata_service.rb'
|
157
|
+
- 'spec/client/client_spec.rb'
|
158
|
+
|
159
|
+
# Offense count: 2
|
160
|
+
# Cop supports --auto-correct.
|
161
|
+
# Configuration parameters: IgnoreEmptyBlocks, AllowUnusedKeywordArguments.
|
162
|
+
Lint/UnusedBlockArgument:
|
163
|
+
Exclude:
|
164
|
+
- 'exe/mdqt'
|
165
|
+
|
166
|
+
# Offense count: 2
|
167
|
+
# Cop supports --auto-correct.
|
168
|
+
# Configuration parameters: AllowUnusedKeywordArguments, IgnoreEmptyMethods.
|
169
|
+
Lint/UnusedMethodArgument:
|
170
|
+
Exclude:
|
171
|
+
- 'lib/mdqt/cli/base.rb'
|
172
|
+
|
173
|
+
# Offense count: 1
|
174
|
+
Lint/UselessAssignment:
|
175
|
+
Exclude:
|
176
|
+
- 'lib/mdqt/client.rb'
|
177
|
+
|
178
|
+
# Offense count: 1
|
179
|
+
# Configuration parameters: CountComments.
|
180
|
+
Metrics/MethodLength:
|
181
|
+
Max: 13
|
182
|
+
|
183
|
+
# Offense count: 8
|
184
|
+
Style/Documentation:
|
185
|
+
Exclude:
|
186
|
+
- 'spec/**/*'
|
187
|
+
- 'test/**/*'
|
188
|
+
- 'lib/mdqt.rb'
|
189
|
+
- 'lib/mdqt/cli.rb'
|
190
|
+
- 'lib/mdqt/cli/base.rb'
|
191
|
+
- 'lib/mdqt/cli/defaults.rb'
|
192
|
+
- 'lib/mdqt/cli/get.rb'
|
193
|
+
- 'lib/mdqt/client.rb'
|
194
|
+
- 'lib/mdqt/client/metadata_service.rb'
|
195
|
+
|
196
|
+
# Offense count: 1
|
197
|
+
# Cop supports --auto-correct.
|
198
|
+
Style/Encoding:
|
199
|
+
Exclude:
|
200
|
+
- 'aaf-mdqt.gemspec'
|
201
|
+
|
202
|
+
# Offense count: 2
|
203
|
+
# Cop supports --auto-correct.
|
204
|
+
Style/ExpandPathArguments:
|
205
|
+
Exclude:
|
206
|
+
- 'aaf-mdqt.gemspec'
|
207
|
+
- 'spec/spec_helper.rb'
|
208
|
+
|
209
|
+
# Offense count: 16
|
210
|
+
# Cop supports --auto-correct.
|
211
|
+
# Configuration parameters: EnforcedStyle.
|
212
|
+
# SupportedStyles: when_needed, always, never
|
213
|
+
Style/FrozenStringLiteralComment:
|
214
|
+
Enabled: false
|
215
|
+
|
216
|
+
# Offense count: 2
|
217
|
+
# Cop supports --auto-correct.
|
218
|
+
# Configuration parameters: EnforcedStyle, UseHashRocketsWithSymbolValues, PreferHashRocketsForNonAlnumEndingSymbols.
|
219
|
+
# SupportedStyles: ruby19, hash_rockets, no_mixed_keys, ruby19_no_mixed_keys
|
220
|
+
Style/HashSyntax:
|
221
|
+
Exclude:
|
222
|
+
- 'Rakefile'
|
223
|
+
- 'lib/mdqt/client/metadata_service.rb'
|
224
|
+
|
225
|
+
# Offense count: 1
|
226
|
+
# Cop supports --auto-correct.
|
227
|
+
Style/MutableConstant:
|
228
|
+
Exclude:
|
229
|
+
- 'lib/mdqt/version.rb'
|
230
|
+
|
231
|
+
# Offense count: 1
|
232
|
+
# Cop supports --auto-correct.
|
233
|
+
# Configuration parameters: Whitelist.
|
234
|
+
# Whitelist: be, be_a, be_an, be_between, be_falsey, be_kind_of, be_instance_of, be_truthy, be_within, eq, eql, end_with, include, match, raise_error, respond_to, start_with
|
235
|
+
Style/NestedParenthesizedCalls:
|
236
|
+
Exclude:
|
237
|
+
- 'lib/mdqt/client/metadata_service.rb'
|
238
|
+
|
239
|
+
# Offense count: 2
|
240
|
+
# Cop supports --auto-correct.
|
241
|
+
# Configuration parameters: PreferredDelimiters.
|
242
|
+
Style/PercentLiteralDelimiters:
|
243
|
+
Exclude:
|
244
|
+
- 'aaf-mdqt.gemspec'
|
245
|
+
|
246
|
+
# Offense count: 1
|
247
|
+
# Cop supports --auto-correct.
|
248
|
+
Style/RedundantSelf:
|
249
|
+
Exclude:
|
250
|
+
- 'lib/mdqt/cli/base.rb'
|
251
|
+
|
252
|
+
# Offense count: 37
|
253
|
+
# Cop supports --auto-correct.
|
254
|
+
# Configuration parameters: EnforcedStyle, ConsistentQuotesInMultiline.
|
255
|
+
# SupportedStyles: single_quotes, double_quotes
|
256
|
+
Style/StringLiterals:
|
257
|
+
Exclude:
|
258
|
+
- 'Rakefile'
|
259
|
+
- 'bin/console'
|
260
|
+
- 'lib/mdqt.rb'
|
261
|
+
- 'lib/mdqt/cli/base.rb'
|
262
|
+
- 'lib/mdqt/cli/get.rb'
|
263
|
+
- 'lib/mdqt/client/metadata_service.rb'
|
264
|
+
- 'lib/mdqt/version.rb'
|
265
|
+
- 'aaf-mdqt.gemspec'
|
266
|
+
- 'spec/mdqt_spec.rb'
|
267
|
+
- 'spec/spec_helper.rb'
|
268
|
+
|
269
|
+
# Offense count: 1
|
270
|
+
# Cop supports --auto-correct.
|
271
|
+
# Configuration parameters: EnforcedStyleForMultiline.
|
272
|
+
# SupportedStylesForMultiline: comma, consistent_comma, no_comma
|
273
|
+
Style/TrailingCommaInHashLiteral:
|
274
|
+
Exclude:
|
275
|
+
- 'lib/mdqt/cli/defaults.rb'
|
276
|
+
|
277
|
+
# Offense count: 3
|
278
|
+
# Cop supports --auto-correct.
|
279
|
+
# Configuration parameters: ExactNameMatch, AllowPredicates, AllowDSLWriters, IgnoreClassMethods, Whitelist.
|
280
|
+
# Whitelist: to_ary, to_a, to_c, to_enum, to_h, to_hash, to_i, to_int, to_io, to_open, to_path, to_proc, to_r, to_regexp, to_str, to_s, to_sym
|
281
|
+
Style/TrivialAccessors:
|
282
|
+
Exclude:
|
283
|
+
- 'lib/mdqt/client.rb'
|
284
|
+
- 'lib/mdqt/client/metadata_service.rb'
|
285
|
+
|
286
|
+
# Offense count: 2
|
287
|
+
# Cop supports --auto-correct.
|
288
|
+
Style/UnneededPercentQ:
|
289
|
+
Exclude:
|
290
|
+
- 'aaf-mdqt.gemspec'
|
291
|
+
|
292
|
+
# Offense count: 7
|
293
|
+
# Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns.
|
294
|
+
# URISchemes: http, https
|
295
|
+
Metrics/LineLength:
|
296
|
+
Max: 130
|
data/.ruby-version
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
3.3.5
|
data/.tool-versions
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
ruby 3.2.0
|
data/.travis.yml
ADDED
data/CHANGELOG.md
ADDED
@@ -0,0 +1,168 @@
|
|
1
|
+
# Changelog
|
2
|
+
|
3
|
+
## 0.8.0
|
4
|
+
|
5
|
+
## Breaking Changes
|
6
|
+
|
7
|
+
- MDQT now requires Ruby 3.0 or later, due to updated dependencies and their requirements
|
8
|
+
- MDQT now installs XML handling gems automatically - Nokogiri and XMLDSig are no longer optional. Nokogiri seems to be
|
9
|
+
less troublesome to install now and is needed by some useful current and planned features. Please let me know if this
|
10
|
+
causes you any problems.
|
11
|
+
|
12
|
+
## Improvements
|
13
|
+
|
14
|
+
- New HTTP library means caching should be slightly faster and HTTP2 is now supported
|
15
|
+
- MDQ base URLs should end with a slash, so slashless URLs are now normalised to include one.
|
16
|
+
|
17
|
+
## Fixes
|
18
|
+
|
19
|
+
- URLs for MDQ entity records now properly support paths - previously only MDQ services at the root path would work
|
20
|
+
|
21
|
+
## 0.7.0
|
22
|
+
|
23
|
+
### Improvements
|
24
|
+
|
25
|
+
- `mdqt check` can now (I think) cope with SAML metadata from Microsoft AD/ADFS services full of WS-* extensions.
|
26
|
+
- Tested with Ruby 3.2.0: `File.exists?` has been removed from 3.2.0 (it's been deprecated for years and I used it out of habit)
|
27
|
+
so this has been replaced in MDQT with `File.exist?` - as a result Ruby 3.2.0 onwards will work, but Ruby older than v2.2
|
28
|
+
will no longer work.
|
29
|
+
|
30
|
+
### Fixes
|
31
|
+
|
32
|
+
- The inline help synopsis for `mdqt check` has been corrected.
|
33
|
+
|
34
|
+
### Known issues
|
35
|
+
|
36
|
+
- Running mdqt without STDIN available (outside of a normal shell environment) can cause it to freeze unless
|
37
|
+
`export MDQT_STDIN=off` is set. See [Issue 8](https://github.com/Digital-Identity-Labs/mdqt/issues/8)
|
38
|
+
- Checking signatures on very large aggregate XML files can sometimes fail on M1/M2 MacOS and trying to work out why
|
39
|
+
has made me slightly balder and a lot more puzzled. See [Issue 9](https://github.com/Digital-Identity-Labs/mdqt/issues/9)
|
40
|
+
|
41
|
+
## 0.6.0
|
42
|
+
|
43
|
+
### New Features
|
44
|
+
|
45
|
+
- STDIN and pipes: Arguments (such as filenames and entity IDs) can now be piped into mdqt. This
|
46
|
+
enables pipelining, so you can chain commands together.
|
47
|
+
- The `rename` command now has a `--link` option that creates a symlink from the original
|
48
|
+
filename to the renamed file.
|
49
|
+
- The `get` command now has a `--list` option that works when `--save-to` is used, to list filenames being
|
50
|
+
written to disk.
|
51
|
+
|
52
|
+
### Improvements
|
53
|
+
|
54
|
+
- Emacs backup files (so called turd files) ending with ~ and files ending with .bak
|
55
|
+
are now ignored.
|
56
|
+
|
57
|
+
### Removed features
|
58
|
+
|
59
|
+
- `link` and `rename` now require files to be specified: you now *cannot* run `mdqt rename`
|
60
|
+
to rename everything in the current directory.
|
61
|
+
|
62
|
+
- The `--link_id` option for `get` saved a link to each downloaded file that is almost the same as the
|
63
|
+
filename - maybe this made sense in mdqt 0.1.0 but it's quite useless now. If anyone can remember what it was
|
64
|
+
actually for I'll put it back.
|
65
|
+
|
66
|
+
## 0.5.0
|
67
|
+
|
68
|
+
### New Features
|
69
|
+
|
70
|
+
- New `entities` command extracts entity IDs and sha1 hashes from metadata files on disk
|
71
|
+
- New `ln` command will create symlinks to files using their sha1 hashes
|
72
|
+
- New `ls` command will list the entity IDs of metadata files
|
73
|
+
- New `list` command lists all entity IDs available from the MDQ service
|
74
|
+
- New `services` command shows known MDQ services and aliases
|
75
|
+
- New `rename` command renames metadata files to use their sha1 hash as a name
|
76
|
+
- New `url` command shows the full url for an entity at the MDQ service
|
77
|
+
|
78
|
+
### Improvements
|
79
|
+
|
80
|
+
- Known MDQ services can be specified using simple aliases as well as URLs
|
81
|
+
- Caching is now on by default
|
82
|
+
- `--refresh` options forces downloads and ignores cached data
|
83
|
+
- Cache is cleaned whenever `get` is used, to remove expired files
|
84
|
+
- Added default service details for DFN
|
85
|
+
- Tidier output when stopped with ctrl-c
|
86
|
+
|
87
|
+
### Fixes
|
88
|
+
|
89
|
+
- Compatible with Ruby 3
|
90
|
+
- Updated dependencies to latest versions
|
91
|
+
- Improved test reliability and added more tests
|
92
|
+
- Extended timeouts to better handle slow networks
|
93
|
+
|
94
|
+
## 0.4.0
|
95
|
+
|
96
|
+
### New Features
|
97
|
+
- The `check` command will validate XML files against SAML metadata schema and verify signatures
|
98
|
+
- A `--validate` switch for `get` forces XML validation, using basic SAML2 metadata schema
|
99
|
+
- A `--tls-risky` switch for `get` disables verification of TLS certificates
|
100
|
+
|
101
|
+
### Improvements
|
102
|
+
- Connection failures now show an explanation (such as TLS problems)
|
103
|
+
|
104
|
+
### Fixes
|
105
|
+
- "Not Required" was shown when using commands that don't interact with an MDQ server
|
106
|
+
|
107
|
+
## 0.3.1
|
108
|
+
|
109
|
+
### Fixes
|
110
|
+
- A missing xmldsig gem is now handled properly *everywhere*. Hopefully.
|
111
|
+
|
112
|
+
## 0.3.0
|
113
|
+
|
114
|
+
### New Features
|
115
|
+
- Signature verification (at last!) using `--verify-with` option for get command
|
116
|
+
- A `reset` command to clear all cached metadata
|
117
|
+
- A `transform` command to convert entityID URIs to {sha1} identifiers
|
118
|
+
- The `--explain` option for `get` will show header information
|
119
|
+
- The `--save-to` option for `get` will write metadata to disk
|
120
|
+
- The `--link-id` option for `get --save-to` will create aliases
|
121
|
+
|
122
|
+
### Improvements
|
123
|
+
- Coloured feedback
|
124
|
+
- Improved README documentation
|
125
|
+
- Servers' 304 responses for cached files are handled correctly
|
126
|
+
- Invalid SHA1 transformed identitifiers can't be sent
|
127
|
+
- 500 errors at the server will be shown correctly
|
128
|
+
- Verbose mode shows MDQT version
|
129
|
+
|
130
|
+
### Fixes
|
131
|
+
- Don't show empty identifier in OK message after downloading aggregate
|
132
|
+
- Cache status in introduction text is now correct
|
133
|
+
|
134
|
+
## 0.2.1
|
135
|
+
|
136
|
+
### Fixes
|
137
|
+
- Send Accept header rather than Content-Type header 🙄
|
138
|
+
|
139
|
+
## 0.2.0
|
140
|
+
|
141
|
+
### New Features
|
142
|
+
- Option to cache HTTP requests to the MDQ service
|
143
|
+
- Supports Gzip compression by default
|
144
|
+
- Default MDQ service selection (rather crude, maybe not a good idea at all)
|
145
|
+
|
146
|
+
### Improvements
|
147
|
+
- Supports redirect responses
|
148
|
+
- Helpful error messages and status messages
|
149
|
+
- Verbose mode will show successful connection information
|
150
|
+
- Warnings about unspecified MDQ service
|
151
|
+
- Catch bad URLs for the MDQ service and fail with a better error message
|
152
|
+
|
153
|
+
### Fixes
|
154
|
+
- Aggregates are now requested with /entities not /entities/, as per spec
|
155
|
+
|
156
|
+
### Other
|
157
|
+
- First few Cucumber features to define and test the executable
|
158
|
+
- Beginning of an RSpec suit to define the API
|
159
|
+
- Minimum version of Ruby is now 2.1, but only 2.2+ is tested using CI
|
160
|
+
|
161
|
+
## 0.1.1
|
162
|
+
|
163
|
+
### Fixes
|
164
|
+
- Bug that prevented the mdqt executable from running outside a Bundler environment
|
165
|
+
|
166
|
+
## 0.1.0
|
167
|
+
|
168
|
+
- Initial release
|