aaf-mdqt 0.8.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|