berkeley_library-tind 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (162) hide show
  1. checksums.yaml +7 -0
  2. data/.github/workflows/build.yml +18 -0
  3. data/.gitignore +388 -0
  4. data/.idea/inspectionProfiles/Project_Default.xml +20 -0
  5. data/.idea/misc.xml +4 -0
  6. data/.idea/modules.xml +8 -0
  7. data/.idea/tind.iml +138 -0
  8. data/.idea/vcs.xml +6 -0
  9. data/.rubocop.yml +334 -0
  10. data/.ruby-version +1 -0
  11. data/.simplecov +8 -0
  12. data/.yardopts +1 -0
  13. data/CHANGES.md +58 -0
  14. data/Dockerfile +57 -0
  15. data/Gemfile +3 -0
  16. data/Jenkinsfile +18 -0
  17. data/LICENSE.md +21 -0
  18. data/README.md +73 -0
  19. data/Rakefile +20 -0
  20. data/berkeley_library-tind.gemspec +50 -0
  21. data/bin/tind-export +14 -0
  22. data/docker-compose.yml +15 -0
  23. data/lib/berkeley_library/tind.rb +3 -0
  24. data/lib/berkeley_library/tind/api.rb +1 -0
  25. data/lib/berkeley_library/tind/api/api.rb +132 -0
  26. data/lib/berkeley_library/tind/api/api_exception.rb +131 -0
  27. data/lib/berkeley_library/tind/api/collection.rb +82 -0
  28. data/lib/berkeley_library/tind/api/date_range.rb +67 -0
  29. data/lib/berkeley_library/tind/api/format.rb +32 -0
  30. data/lib/berkeley_library/tind/api/search.rb +100 -0
  31. data/lib/berkeley_library/tind/config.rb +103 -0
  32. data/lib/berkeley_library/tind/export.rb +1 -0
  33. data/lib/berkeley_library/tind/export/column.rb +54 -0
  34. data/lib/berkeley_library/tind/export/column_group.rb +144 -0
  35. data/lib/berkeley_library/tind/export/column_group_list.rb +131 -0
  36. data/lib/berkeley_library/tind/export/column_width_calculator.rb +76 -0
  37. data/lib/berkeley_library/tind/export/config.rb +154 -0
  38. data/lib/berkeley_library/tind/export/csv_exporter.rb +29 -0
  39. data/lib/berkeley_library/tind/export/export.rb +47 -0
  40. data/lib/berkeley_library/tind/export/export_command.rb +168 -0
  41. data/lib/berkeley_library/tind/export/export_exception.rb +8 -0
  42. data/lib/berkeley_library/tind/export/export_format.rb +67 -0
  43. data/lib/berkeley_library/tind/export/exporter.rb +105 -0
  44. data/lib/berkeley_library/tind/export/filter.rb +52 -0
  45. data/lib/berkeley_library/tind/export/no_results_error.rb +7 -0
  46. data/lib/berkeley_library/tind/export/ods_exporter.rb +138 -0
  47. data/lib/berkeley_library/tind/export/row.rb +24 -0
  48. data/lib/berkeley_library/tind/export/row_metrics.rb +18 -0
  49. data/lib/berkeley_library/tind/export/table.rb +175 -0
  50. data/lib/berkeley_library/tind/export/table_metrics.rb +116 -0
  51. data/lib/berkeley_library/tind/marc.rb +1 -0
  52. data/lib/berkeley_library/tind/marc/xml_reader.rb +144 -0
  53. data/lib/berkeley_library/tind/module_info.rb +14 -0
  54. data/lib/berkeley_library/util/arrays.rb +178 -0
  55. data/lib/berkeley_library/util/logging.rb +1 -0
  56. data/lib/berkeley_library/util/ods/spreadsheet.rb +170 -0
  57. data/lib/berkeley_library/util/ods/xml/content_doc.rb +26 -0
  58. data/lib/berkeley_library/util/ods/xml/document_node.rb +57 -0
  59. data/lib/berkeley_library/util/ods/xml/element_node.rb +106 -0
  60. data/lib/berkeley_library/util/ods/xml/loext/table_protection.rb +26 -0
  61. data/lib/berkeley_library/util/ods/xml/manifest/file_entry.rb +42 -0
  62. data/lib/berkeley_library/util/ods/xml/manifest/manifest.rb +73 -0
  63. data/lib/berkeley_library/util/ods/xml/manifest_doc.rb +26 -0
  64. data/lib/berkeley_library/util/ods/xml/namespace.rb +46 -0
  65. data/lib/berkeley_library/util/ods/xml/office/automatic_styles.rb +181 -0
  66. data/lib/berkeley_library/util/ods/xml/office/body.rb +17 -0
  67. data/lib/berkeley_library/util/ods/xml/office/document_content.rb +98 -0
  68. data/lib/berkeley_library/util/ods/xml/office/document_styles.rb +39 -0
  69. data/lib/berkeley_library/util/ods/xml/office/font_face_decls.rb +30 -0
  70. data/lib/berkeley_library/util/ods/xml/office/scripts.rb +17 -0
  71. data/lib/berkeley_library/util/ods/xml/office/spreadsheet.rb +37 -0
  72. data/lib/berkeley_library/util/ods/xml/office/styles.rb +39 -0
  73. data/lib/berkeley_library/util/ods/xml/style/cell_style.rb +58 -0
  74. data/lib/berkeley_library/util/ods/xml/style/column_style.rb +36 -0
  75. data/lib/berkeley_library/util/ods/xml/style/default_style.rb +31 -0
  76. data/lib/berkeley_library/util/ods/xml/style/family.rb +85 -0
  77. data/lib/berkeley_library/util/ods/xml/style/font_face.rb +46 -0
  78. data/lib/berkeley_library/util/ods/xml/style/paragraph_properties.rb +30 -0
  79. data/lib/berkeley_library/util/ods/xml/style/row_style.rb +37 -0
  80. data/lib/berkeley_library/util/ods/xml/style/style.rb +44 -0
  81. data/lib/berkeley_library/util/ods/xml/style/table_cell_properties.rb +40 -0
  82. data/lib/berkeley_library/util/ods/xml/style/table_column_properties.rb +30 -0
  83. data/lib/berkeley_library/util/ods/xml/style/table_properties.rb +25 -0
  84. data/lib/berkeley_library/util/ods/xml/style/table_row_properties.rb +28 -0
  85. data/lib/berkeley_library/util/ods/xml/style/table_style.rb +27 -0
  86. data/lib/berkeley_library/util/ods/xml/style/text_properties.rb +52 -0
  87. data/lib/berkeley_library/util/ods/xml/styles_doc.rb +26 -0
  88. data/lib/berkeley_library/util/ods/xml/table/named_expressions.rb +17 -0
  89. data/lib/berkeley_library/util/ods/xml/table/repeatable.rb +38 -0
  90. data/lib/berkeley_library/util/ods/xml/table/table.rb +193 -0
  91. data/lib/berkeley_library/util/ods/xml/table/table_cell.rb +46 -0
  92. data/lib/berkeley_library/util/ods/xml/table/table_column.rb +43 -0
  93. data/lib/berkeley_library/util/ods/xml/table/table_row.rb +136 -0
  94. data/lib/berkeley_library/util/ods/xml/text/p.rb +118 -0
  95. data/lib/berkeley_library/util/paths.rb +111 -0
  96. data/lib/berkeley_library/util/stringios.rb +30 -0
  97. data/lib/berkeley_library/util/strings.rb +42 -0
  98. data/lib/berkeley_library/util/sys_exits.rb +15 -0
  99. data/lib/berkeley_library/util/times.rb +22 -0
  100. data/lib/berkeley_library/util/uris.rb +44 -0
  101. data/lib/berkeley_library/util/uris/appender.rb +162 -0
  102. data/lib/berkeley_library/util/uris/requester.rb +62 -0
  103. data/lib/berkeley_library/util/uris/validator.rb +32 -0
  104. data/rakelib/bundle.rake +8 -0
  105. data/rakelib/coverage.rake +11 -0
  106. data/rakelib/gem.rake +54 -0
  107. data/rakelib/rubocop.rake +18 -0
  108. data/rakelib/spec.rake +2 -0
  109. data/spec/.rubocop.yml +40 -0
  110. data/spec/berkeley_library/tind/api/api_exception_spec.rb +91 -0
  111. data/spec/berkeley_library/tind/api/api_spec.rb +143 -0
  112. data/spec/berkeley_library/tind/api/collection_spec.rb +74 -0
  113. data/spec/berkeley_library/tind/api/date_range_spec.rb +110 -0
  114. data/spec/berkeley_library/tind/api/format_spec.rb +54 -0
  115. data/spec/berkeley_library/tind/api/search_spec.rb +364 -0
  116. data/spec/berkeley_library/tind/config_spec.rb +86 -0
  117. data/spec/berkeley_library/tind/export/column_group_spec.rb +29 -0
  118. data/spec/berkeley_library/tind/export/column_spec.rb +43 -0
  119. data/spec/berkeley_library/tind/export/config_spec.rb +206 -0
  120. data/spec/berkeley_library/tind/export/export_command_spec.rb +169 -0
  121. data/spec/berkeley_library/tind/export/export_format_spec.rb +59 -0
  122. data/spec/berkeley_library/tind/export/export_matcher.rb +112 -0
  123. data/spec/berkeley_library/tind/export/export_spec.rb +150 -0
  124. data/spec/berkeley_library/tind/export/exporter_spec.rb +125 -0
  125. data/spec/berkeley_library/tind/export/row_spec.rb +118 -0
  126. data/spec/berkeley_library/tind/export/table_spec.rb +322 -0
  127. data/spec/berkeley_library/tind/marc/xml_reader_spec.rb +93 -0
  128. data/spec/berkeley_library/util/arrays_spec.rb +340 -0
  129. data/spec/berkeley_library/util/ods/spreadsheet_spec.rb +124 -0
  130. data/spec/berkeley_library/util/ods/xml/content_doc_spec.rb +121 -0
  131. data/spec/berkeley_library/util/ods/xml/manifest/file_entry_spec.rb +27 -0
  132. data/spec/berkeley_library/util/ods/xml/manifest/manifest_spec.rb +33 -0
  133. data/spec/berkeley_library/util/ods/xml/office/document_content_spec.rb +60 -0
  134. data/spec/berkeley_library/util/ods/xml/style/automatic_styles_spec.rb +37 -0
  135. data/spec/berkeley_library/util/ods/xml/style/family_spec.rb +57 -0
  136. data/spec/berkeley_library/util/ods/xml/table/table_row_spec.rb +179 -0
  137. data/spec/berkeley_library/util/ods/xml/table/table_spec.rb +218 -0
  138. data/spec/berkeley_library/util/paths_spec.rb +90 -0
  139. data/spec/berkeley_library/util/stringios_spec.rb +34 -0
  140. data/spec/berkeley_library/util/strings_spec.rb +27 -0
  141. data/spec/berkeley_library/util/times_spec.rb +39 -0
  142. data/spec/berkeley_library/util/uris_spec.rb +118 -0
  143. data/spec/data/collection-names.txt +438 -0
  144. data/spec/data/collections.json +4827 -0
  145. data/spec/data/disjoint-records.xml +187 -0
  146. data/spec/data/record-184453.xml +58 -0
  147. data/spec/data/record-184458.xml +63 -0
  148. data/spec/data/record-187888.xml +78 -0
  149. data/spec/data/records-api-search-cjk-p1.xml +6381 -0
  150. data/spec/data/records-api-search-cjk-p2.xml +5 -0
  151. data/spec/data/records-api-search-p1.xml +4506 -0
  152. data/spec/data/records-api-search-p2.xml +4509 -0
  153. data/spec/data/records-api-search-p3.xml +4506 -0
  154. data/spec/data/records-api-search-p4.xml +4509 -0
  155. data/spec/data/records-api-search-p5.xml +4506 -0
  156. data/spec/data/records-api-search-p6.xml +2436 -0
  157. data/spec/data/records-api-search-p7.xml +5 -0
  158. data/spec/data/records-api-search.xml +234 -0
  159. data/spec/data/records-manual-search.xml +547 -0
  160. data/spec/spec_helper.rb +30 -0
  161. data/test/profile/table_from_records_profile.rb +46 -0
  162. metadata +585 -0
@@ -0,0 +1,30 @@
1
+ # ------------------------------------------------------------
2
+ # Simplecov
3
+
4
+ require 'colorize'
5
+ require 'simplecov' if ENV['COVERAGE']
6
+
7
+ # ------------------------------------------------------------
8
+ # RSpec
9
+
10
+ require 'webmock/rspec'
11
+
12
+ RSpec.configure do |config|
13
+ config.color = true
14
+ config.tty = true
15
+ config.formatter = :documentation
16
+ config.before(:each) { WebMock.disable_net_connect!(allow_localhost: true) }
17
+ config.after(:each) { WebMock.allow_net_connect! }
18
+ config.mock_with :rspec do |mocks|
19
+ mocks.verify_partial_doubles = true
20
+ end
21
+ config.shared_context_metadata_behavior = :apply_to_host_groups
22
+ end
23
+
24
+ # ------------------------------------------------------------
25
+ # Code under test
26
+
27
+ require 'berkeley_library/tind'
28
+
29
+ FileUtils.mkdir_p('log')
30
+ BerkeleyLibrary::Logging.logger = BerkeleyLibrary::Logging::Loggers.new_readable_logger('log/test.log')
@@ -0,0 +1,46 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ project_root = File.expand_path('../..', __dir__)
4
+
5
+ ENV['BUNDLE_GEMFILE'] ||= File.join(project_root, 'Gemfile')
6
+ require 'bundler/setup'
7
+ require 'ruby-prof'
8
+ require 'time'
9
+ require 'berkeley_library/tind/marc/xml_reader'
10
+ require 'berkeley_library/tind/export/table'
11
+
12
+ def timestamp
13
+ Time.now.iso8601
14
+ end
15
+
16
+ def html_report_path
17
+ "/tmp/profile-#{timestamp}.html"
18
+ end
19
+
20
+ def records
21
+ @records ||= begin
22
+ input_file_path = File.join(project_root, 'spec/data/records-api-search-p1.xml')
23
+ BerkeleyLibrary::TIND::MARC::XMLReader.new(input_file_path, freeze: true).to_a
24
+ end
25
+ end
26
+
27
+ def do_profile
28
+ RubyProf.start
29
+ BerkeleyLibrary::TIND::Export::Table.from_records(records)
30
+ RubyProf.stop
31
+ end
32
+
33
+ def print_text_report(result)
34
+ RubyProf::FlatPrinter.new(result).print($stdout)
35
+ end
36
+
37
+ def show_html_report(result)
38
+ File.open(html_report_path, 'w') do |f|
39
+ RubyProf::GraphHtmlPrinter.new(result).print(f)
40
+ `open #{f.path}`
41
+ end
42
+ end
43
+
44
+ result = do_profile
45
+ print_text_report(result)
46
+ show_html_report(result)
metadata ADDED
@@ -0,0 +1,585 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: berkeley_library-tind
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.4.0
5
+ platform: ruby
6
+ authors:
7
+ - David Moles
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2021-08-19 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: berkeley_library-logging
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '0.2'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '0.2'
27
+ - !ruby/object:Gem::Dependency
28
+ name: berkeley_library-marc
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '0.2'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '0.2'
41
+ - !ruby/object:Gem::Dependency
42
+ name: ice_nine
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '0.11'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '0.11'
55
+ - !ruby/object:Gem::Dependency
56
+ name: marc
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '1.0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '1.0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rchardet
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '1.8'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '1.8'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rest-client
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '2.1'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '2.1'
97
+ - !ruby/object:Gem::Dependency
98
+ name: rubyzip
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '2.3'
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '2.3'
111
+ - !ruby/object:Gem::Dependency
112
+ name: typesafe_enum
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: '0.3'
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: '0.3'
125
+ - !ruby/object:Gem::Dependency
126
+ name: bundle-audit
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: '0.1'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '0.1'
139
+ - !ruby/object:Gem::Dependency
140
+ name: ci_reporter_rspec
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: '1.0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - "~>"
151
+ - !ruby/object:Gem::Version
152
+ version: '1.0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: colorize
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: '0.8'
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "~>"
165
+ - !ruby/object:Gem::Version
166
+ version: '0.8'
167
+ - !ruby/object:Gem::Dependency
168
+ name: dotenv
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - "~>"
172
+ - !ruby/object:Gem::Version
173
+ version: '2.7'
174
+ type: :development
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - "~>"
179
+ - !ruby/object:Gem::Version
180
+ version: '2.7'
181
+ - !ruby/object:Gem::Dependency
182
+ name: listen
183
+ requirement: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - ">="
186
+ - !ruby/object:Gem::Version
187
+ version: 3.0.5
188
+ - - "<"
189
+ - !ruby/object:Gem::Version
190
+ version: '3.2'
191
+ type: :development
192
+ prerelease: false
193
+ version_requirements: !ruby/object:Gem::Requirement
194
+ requirements:
195
+ - - ">="
196
+ - !ruby/object:Gem::Version
197
+ version: 3.0.5
198
+ - - "<"
199
+ - !ruby/object:Gem::Version
200
+ version: '3.2'
201
+ - !ruby/object:Gem::Dependency
202
+ name: rake
203
+ requirement: !ruby/object:Gem::Requirement
204
+ requirements:
205
+ - - "~>"
206
+ - !ruby/object:Gem::Version
207
+ version: '13.0'
208
+ type: :development
209
+ prerelease: false
210
+ version_requirements: !ruby/object:Gem::Requirement
211
+ requirements:
212
+ - - "~>"
213
+ - !ruby/object:Gem::Version
214
+ version: '13.0'
215
+ - !ruby/object:Gem::Dependency
216
+ name: roo
217
+ requirement: !ruby/object:Gem::Requirement
218
+ requirements:
219
+ - - "~>"
220
+ - !ruby/object:Gem::Version
221
+ version: '2.8'
222
+ type: :development
223
+ prerelease: false
224
+ version_requirements: !ruby/object:Gem::Requirement
225
+ requirements:
226
+ - - "~>"
227
+ - !ruby/object:Gem::Version
228
+ version: '2.8'
229
+ - !ruby/object:Gem::Dependency
230
+ name: rspec
231
+ requirement: !ruby/object:Gem::Requirement
232
+ requirements:
233
+ - - "~>"
234
+ - !ruby/object:Gem::Version
235
+ version: '3.10'
236
+ type: :development
237
+ prerelease: false
238
+ version_requirements: !ruby/object:Gem::Requirement
239
+ requirements:
240
+ - - "~>"
241
+ - !ruby/object:Gem::Version
242
+ version: '3.10'
243
+ - !ruby/object:Gem::Dependency
244
+ name: rubocop
245
+ requirement: !ruby/object:Gem::Requirement
246
+ requirements:
247
+ - - '='
248
+ - !ruby/object:Gem::Version
249
+ version: '1.11'
250
+ type: :development
251
+ prerelease: false
252
+ version_requirements: !ruby/object:Gem::Requirement
253
+ requirements:
254
+ - - '='
255
+ - !ruby/object:Gem::Version
256
+ version: '1.11'
257
+ - !ruby/object:Gem::Dependency
258
+ name: rubocop-rake
259
+ requirement: !ruby/object:Gem::Requirement
260
+ requirements:
261
+ - - "~>"
262
+ - !ruby/object:Gem::Version
263
+ version: '0.5'
264
+ type: :development
265
+ prerelease: false
266
+ version_requirements: !ruby/object:Gem::Requirement
267
+ requirements:
268
+ - - "~>"
269
+ - !ruby/object:Gem::Version
270
+ version: '0.5'
271
+ - !ruby/object:Gem::Dependency
272
+ name: rubocop-rspec
273
+ requirement: !ruby/object:Gem::Requirement
274
+ requirements:
275
+ - - "~>"
276
+ - !ruby/object:Gem::Version
277
+ version: '2.2'
278
+ type: :development
279
+ prerelease: false
280
+ version_requirements: !ruby/object:Gem::Requirement
281
+ requirements:
282
+ - - "~>"
283
+ - !ruby/object:Gem::Version
284
+ version: '2.2'
285
+ - !ruby/object:Gem::Dependency
286
+ name: ruby-prof
287
+ requirement: !ruby/object:Gem::Requirement
288
+ requirements:
289
+ - - "~>"
290
+ - !ruby/object:Gem::Version
291
+ version: 0.17.0
292
+ type: :development
293
+ prerelease: false
294
+ version_requirements: !ruby/object:Gem::Requirement
295
+ requirements:
296
+ - - "~>"
297
+ - !ruby/object:Gem::Version
298
+ version: 0.17.0
299
+ - !ruby/object:Gem::Dependency
300
+ name: simplecov
301
+ requirement: !ruby/object:Gem::Requirement
302
+ requirements:
303
+ - - "~>"
304
+ - !ruby/object:Gem::Version
305
+ version: '0.21'
306
+ type: :development
307
+ prerelease: false
308
+ version_requirements: !ruby/object:Gem::Requirement
309
+ requirements:
310
+ - - "~>"
311
+ - !ruby/object:Gem::Version
312
+ version: '0.21'
313
+ - !ruby/object:Gem::Dependency
314
+ name: simplecov-rcov
315
+ requirement: !ruby/object:Gem::Requirement
316
+ requirements:
317
+ - - "~>"
318
+ - !ruby/object:Gem::Version
319
+ version: '0.2'
320
+ type: :development
321
+ prerelease: false
322
+ version_requirements: !ruby/object:Gem::Requirement
323
+ requirements:
324
+ - - "~>"
325
+ - !ruby/object:Gem::Version
326
+ version: '0.2'
327
+ - !ruby/object:Gem::Dependency
328
+ name: webmock
329
+ requirement: !ruby/object:Gem::Requirement
330
+ requirements:
331
+ - - "~>"
332
+ - !ruby/object:Gem::Version
333
+ version: '3.12'
334
+ type: :development
335
+ prerelease: false
336
+ version_requirements: !ruby/object:Gem::Requirement
337
+ requirements:
338
+ - - "~>"
339
+ - !ruby/object:Gem::Version
340
+ version: '3.12'
341
+ description: UC Berkeley Library utility gem for working with the TIND DA digital
342
+ archive.
343
+ email: dmoles@berkeley.edu
344
+ executables:
345
+ - tind-export
346
+ extensions: []
347
+ extra_rdoc_files: []
348
+ files:
349
+ - ".github/workflows/build.yml"
350
+ - ".gitignore"
351
+ - ".idea/inspectionProfiles/Project_Default.xml"
352
+ - ".idea/misc.xml"
353
+ - ".idea/modules.xml"
354
+ - ".idea/tind.iml"
355
+ - ".idea/vcs.xml"
356
+ - ".rubocop.yml"
357
+ - ".ruby-version"
358
+ - ".simplecov"
359
+ - ".yardopts"
360
+ - CHANGES.md
361
+ - Dockerfile
362
+ - Gemfile
363
+ - Jenkinsfile
364
+ - LICENSE.md
365
+ - README.md
366
+ - Rakefile
367
+ - berkeley_library-tind.gemspec
368
+ - bin/tind-export
369
+ - docker-compose.yml
370
+ - lib/berkeley_library/tind.rb
371
+ - lib/berkeley_library/tind/api.rb
372
+ - lib/berkeley_library/tind/api/api.rb
373
+ - lib/berkeley_library/tind/api/api_exception.rb
374
+ - lib/berkeley_library/tind/api/collection.rb
375
+ - lib/berkeley_library/tind/api/date_range.rb
376
+ - lib/berkeley_library/tind/api/format.rb
377
+ - lib/berkeley_library/tind/api/search.rb
378
+ - lib/berkeley_library/tind/config.rb
379
+ - lib/berkeley_library/tind/export.rb
380
+ - lib/berkeley_library/tind/export/column.rb
381
+ - lib/berkeley_library/tind/export/column_group.rb
382
+ - lib/berkeley_library/tind/export/column_group_list.rb
383
+ - lib/berkeley_library/tind/export/column_width_calculator.rb
384
+ - lib/berkeley_library/tind/export/config.rb
385
+ - lib/berkeley_library/tind/export/csv_exporter.rb
386
+ - lib/berkeley_library/tind/export/export.rb
387
+ - lib/berkeley_library/tind/export/export_command.rb
388
+ - lib/berkeley_library/tind/export/export_exception.rb
389
+ - lib/berkeley_library/tind/export/export_format.rb
390
+ - lib/berkeley_library/tind/export/exporter.rb
391
+ - lib/berkeley_library/tind/export/filter.rb
392
+ - lib/berkeley_library/tind/export/no_results_error.rb
393
+ - lib/berkeley_library/tind/export/ods_exporter.rb
394
+ - lib/berkeley_library/tind/export/row.rb
395
+ - lib/berkeley_library/tind/export/row_metrics.rb
396
+ - lib/berkeley_library/tind/export/table.rb
397
+ - lib/berkeley_library/tind/export/table_metrics.rb
398
+ - lib/berkeley_library/tind/marc.rb
399
+ - lib/berkeley_library/tind/marc/xml_reader.rb
400
+ - lib/berkeley_library/tind/module_info.rb
401
+ - lib/berkeley_library/util/arrays.rb
402
+ - lib/berkeley_library/util/logging.rb
403
+ - lib/berkeley_library/util/ods/spreadsheet.rb
404
+ - lib/berkeley_library/util/ods/xml/content_doc.rb
405
+ - lib/berkeley_library/util/ods/xml/document_node.rb
406
+ - lib/berkeley_library/util/ods/xml/element_node.rb
407
+ - lib/berkeley_library/util/ods/xml/loext/table_protection.rb
408
+ - lib/berkeley_library/util/ods/xml/manifest/file_entry.rb
409
+ - lib/berkeley_library/util/ods/xml/manifest/manifest.rb
410
+ - lib/berkeley_library/util/ods/xml/manifest_doc.rb
411
+ - lib/berkeley_library/util/ods/xml/namespace.rb
412
+ - lib/berkeley_library/util/ods/xml/office/automatic_styles.rb
413
+ - lib/berkeley_library/util/ods/xml/office/body.rb
414
+ - lib/berkeley_library/util/ods/xml/office/document_content.rb
415
+ - lib/berkeley_library/util/ods/xml/office/document_styles.rb
416
+ - lib/berkeley_library/util/ods/xml/office/font_face_decls.rb
417
+ - lib/berkeley_library/util/ods/xml/office/scripts.rb
418
+ - lib/berkeley_library/util/ods/xml/office/spreadsheet.rb
419
+ - lib/berkeley_library/util/ods/xml/office/styles.rb
420
+ - lib/berkeley_library/util/ods/xml/style/cell_style.rb
421
+ - lib/berkeley_library/util/ods/xml/style/column_style.rb
422
+ - lib/berkeley_library/util/ods/xml/style/default_style.rb
423
+ - lib/berkeley_library/util/ods/xml/style/family.rb
424
+ - lib/berkeley_library/util/ods/xml/style/font_face.rb
425
+ - lib/berkeley_library/util/ods/xml/style/paragraph_properties.rb
426
+ - lib/berkeley_library/util/ods/xml/style/row_style.rb
427
+ - lib/berkeley_library/util/ods/xml/style/style.rb
428
+ - lib/berkeley_library/util/ods/xml/style/table_cell_properties.rb
429
+ - lib/berkeley_library/util/ods/xml/style/table_column_properties.rb
430
+ - lib/berkeley_library/util/ods/xml/style/table_properties.rb
431
+ - lib/berkeley_library/util/ods/xml/style/table_row_properties.rb
432
+ - lib/berkeley_library/util/ods/xml/style/table_style.rb
433
+ - lib/berkeley_library/util/ods/xml/style/text_properties.rb
434
+ - lib/berkeley_library/util/ods/xml/styles_doc.rb
435
+ - lib/berkeley_library/util/ods/xml/table/named_expressions.rb
436
+ - lib/berkeley_library/util/ods/xml/table/repeatable.rb
437
+ - lib/berkeley_library/util/ods/xml/table/table.rb
438
+ - lib/berkeley_library/util/ods/xml/table/table_cell.rb
439
+ - lib/berkeley_library/util/ods/xml/table/table_column.rb
440
+ - lib/berkeley_library/util/ods/xml/table/table_row.rb
441
+ - lib/berkeley_library/util/ods/xml/text/p.rb
442
+ - lib/berkeley_library/util/paths.rb
443
+ - lib/berkeley_library/util/stringios.rb
444
+ - lib/berkeley_library/util/strings.rb
445
+ - lib/berkeley_library/util/sys_exits.rb
446
+ - lib/berkeley_library/util/times.rb
447
+ - lib/berkeley_library/util/uris.rb
448
+ - lib/berkeley_library/util/uris/appender.rb
449
+ - lib/berkeley_library/util/uris/requester.rb
450
+ - lib/berkeley_library/util/uris/validator.rb
451
+ - rakelib/bundle.rake
452
+ - rakelib/coverage.rake
453
+ - rakelib/gem.rake
454
+ - rakelib/rubocop.rake
455
+ - rakelib/spec.rake
456
+ - spec/.rubocop.yml
457
+ - spec/berkeley_library/tind/api/api_exception_spec.rb
458
+ - spec/berkeley_library/tind/api/api_spec.rb
459
+ - spec/berkeley_library/tind/api/collection_spec.rb
460
+ - spec/berkeley_library/tind/api/date_range_spec.rb
461
+ - spec/berkeley_library/tind/api/format_spec.rb
462
+ - spec/berkeley_library/tind/api/search_spec.rb
463
+ - spec/berkeley_library/tind/config_spec.rb
464
+ - spec/berkeley_library/tind/export/column_group_spec.rb
465
+ - spec/berkeley_library/tind/export/column_spec.rb
466
+ - spec/berkeley_library/tind/export/config_spec.rb
467
+ - spec/berkeley_library/tind/export/export_command_spec.rb
468
+ - spec/berkeley_library/tind/export/export_format_spec.rb
469
+ - spec/berkeley_library/tind/export/export_matcher.rb
470
+ - spec/berkeley_library/tind/export/export_spec.rb
471
+ - spec/berkeley_library/tind/export/exporter_spec.rb
472
+ - spec/berkeley_library/tind/export/row_spec.rb
473
+ - spec/berkeley_library/tind/export/table_spec.rb
474
+ - spec/berkeley_library/tind/marc/xml_reader_spec.rb
475
+ - spec/berkeley_library/util/arrays_spec.rb
476
+ - spec/berkeley_library/util/ods/spreadsheet_spec.rb
477
+ - spec/berkeley_library/util/ods/xml/content_doc_spec.rb
478
+ - spec/berkeley_library/util/ods/xml/manifest/file_entry_spec.rb
479
+ - spec/berkeley_library/util/ods/xml/manifest/manifest_spec.rb
480
+ - spec/berkeley_library/util/ods/xml/office/document_content_spec.rb
481
+ - spec/berkeley_library/util/ods/xml/style/automatic_styles_spec.rb
482
+ - spec/berkeley_library/util/ods/xml/style/family_spec.rb
483
+ - spec/berkeley_library/util/ods/xml/table/table_row_spec.rb
484
+ - spec/berkeley_library/util/ods/xml/table/table_spec.rb
485
+ - spec/berkeley_library/util/paths_spec.rb
486
+ - spec/berkeley_library/util/stringios_spec.rb
487
+ - spec/berkeley_library/util/strings_spec.rb
488
+ - spec/berkeley_library/util/times_spec.rb
489
+ - spec/berkeley_library/util/uris_spec.rb
490
+ - spec/data/collection-names.txt
491
+ - spec/data/collections.json
492
+ - spec/data/disjoint-records.xml
493
+ - spec/data/record-184453.xml
494
+ - spec/data/record-184458.xml
495
+ - spec/data/record-187888.xml
496
+ - spec/data/records-api-search-cjk-p1.xml
497
+ - spec/data/records-api-search-cjk-p2.xml
498
+ - spec/data/records-api-search-p1.xml
499
+ - spec/data/records-api-search-p2.xml
500
+ - spec/data/records-api-search-p3.xml
501
+ - spec/data/records-api-search-p4.xml
502
+ - spec/data/records-api-search-p5.xml
503
+ - spec/data/records-api-search-p6.xml
504
+ - spec/data/records-api-search-p7.xml
505
+ - spec/data/records-api-search.xml
506
+ - spec/data/records-manual-search.xml
507
+ - spec/spec_helper.rb
508
+ - test/profile/table_from_records_profile.rb
509
+ homepage: https://github.com/BerkeleyLibrary/tind
510
+ licenses:
511
+ - MIT
512
+ metadata: {}
513
+ post_install_message:
514
+ rdoc_options: []
515
+ require_paths:
516
+ - lib
517
+ required_ruby_version: !ruby/object:Gem::Requirement
518
+ requirements:
519
+ - - ">="
520
+ - !ruby/object:Gem::Version
521
+ version: '2.7'
522
+ required_rubygems_version: !ruby/object:Gem::Requirement
523
+ requirements:
524
+ - - ">="
525
+ - !ruby/object:Gem::Version
526
+ version: '0'
527
+ requirements: []
528
+ rubygems_version: 3.1.6
529
+ signing_key:
530
+ specification_version: 4
531
+ summary: TIND DA utilities for the UC Berkeley Library
532
+ test_files:
533
+ - spec/.rubocop.yml
534
+ - spec/berkeley_library/tind/api/api_exception_spec.rb
535
+ - spec/berkeley_library/tind/api/api_spec.rb
536
+ - spec/berkeley_library/tind/api/collection_spec.rb
537
+ - spec/berkeley_library/tind/api/date_range_spec.rb
538
+ - spec/berkeley_library/tind/api/format_spec.rb
539
+ - spec/berkeley_library/tind/api/search_spec.rb
540
+ - spec/berkeley_library/tind/config_spec.rb
541
+ - spec/berkeley_library/tind/export/column_group_spec.rb
542
+ - spec/berkeley_library/tind/export/column_spec.rb
543
+ - spec/berkeley_library/tind/export/config_spec.rb
544
+ - spec/berkeley_library/tind/export/export_command_spec.rb
545
+ - spec/berkeley_library/tind/export/export_format_spec.rb
546
+ - spec/berkeley_library/tind/export/export_matcher.rb
547
+ - spec/berkeley_library/tind/export/export_spec.rb
548
+ - spec/berkeley_library/tind/export/exporter_spec.rb
549
+ - spec/berkeley_library/tind/export/row_spec.rb
550
+ - spec/berkeley_library/tind/export/table_spec.rb
551
+ - spec/berkeley_library/tind/marc/xml_reader_spec.rb
552
+ - spec/berkeley_library/util/arrays_spec.rb
553
+ - spec/berkeley_library/util/ods/spreadsheet_spec.rb
554
+ - spec/berkeley_library/util/ods/xml/content_doc_spec.rb
555
+ - spec/berkeley_library/util/ods/xml/manifest/file_entry_spec.rb
556
+ - spec/berkeley_library/util/ods/xml/manifest/manifest_spec.rb
557
+ - spec/berkeley_library/util/ods/xml/office/document_content_spec.rb
558
+ - spec/berkeley_library/util/ods/xml/style/automatic_styles_spec.rb
559
+ - spec/berkeley_library/util/ods/xml/style/family_spec.rb
560
+ - spec/berkeley_library/util/ods/xml/table/table_row_spec.rb
561
+ - spec/berkeley_library/util/ods/xml/table/table_spec.rb
562
+ - spec/berkeley_library/util/paths_spec.rb
563
+ - spec/berkeley_library/util/stringios_spec.rb
564
+ - spec/berkeley_library/util/strings_spec.rb
565
+ - spec/berkeley_library/util/times_spec.rb
566
+ - spec/berkeley_library/util/uris_spec.rb
567
+ - spec/data/collection-names.txt
568
+ - spec/data/collections.json
569
+ - spec/data/disjoint-records.xml
570
+ - spec/data/record-184453.xml
571
+ - spec/data/record-184458.xml
572
+ - spec/data/record-187888.xml
573
+ - spec/data/records-api-search-cjk-p1.xml
574
+ - spec/data/records-api-search-cjk-p2.xml
575
+ - spec/data/records-api-search-p1.xml
576
+ - spec/data/records-api-search-p2.xml
577
+ - spec/data/records-api-search-p3.xml
578
+ - spec/data/records-api-search-p4.xml
579
+ - spec/data/records-api-search-p5.xml
580
+ - spec/data/records-api-search-p6.xml
581
+ - spec/data/records-api-search-p7.xml
582
+ - spec/data/records-api-search.xml
583
+ - spec/data/records-manual-search.xml
584
+ - spec/spec_helper.rb
585
+ - test/profile/table_from_records_profile.rb