alexandria-book-collection-manager 0.7.4 → 0.7.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (71) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +31 -6
  3. data/.rubocop_todo.yml +33 -33
  4. data/.travis.yml +39 -0
  5. data/CHANGELOG.md +8 -0
  6. data/README.md +1 -1
  7. data/Rakefile +4 -2
  8. data/alexandria-book-collection-manager.gemspec +2 -1
  9. data/bin/alexandria +0 -10
  10. data/doc/FAQ +1 -2
  11. data/doc/dependency_decisions.yml +5 -5
  12. data/lib/alexandria.rb +3 -1
  13. data/lib/alexandria/book_providers.rb +1 -4
  14. data/lib/alexandria/book_providers/adlibris.rb +4 -20
  15. data/lib/alexandria/book_providers/amazon_aws.rb +15 -8
  16. data/lib/alexandria/book_providers/amazon_ecs_util.rb +16 -10
  17. data/lib/alexandria/book_providers/barnes_and_noble.rb +1 -1
  18. data/lib/alexandria/book_providers/douban.rb +2 -2
  19. data/lib/alexandria/book_providers/proxis.rb +6 -2
  20. data/lib/alexandria/book_providers/pseudomarc.rb +3 -1
  21. data/lib/alexandria/book_providers/siciliano.rb +24 -27
  22. data/lib/alexandria/book_providers/thalia.rb +1 -1
  23. data/lib/alexandria/book_providers/worldcat.rb +5 -3
  24. data/lib/alexandria/book_providers/z3950.rb +20 -14
  25. data/lib/alexandria/export_library.rb +15 -12
  26. data/lib/alexandria/import_library.rb +65 -65
  27. data/lib/alexandria/library_collection.rb +2 -1
  28. data/lib/alexandria/library_store.rb +18 -7
  29. data/lib/alexandria/models/book.rb +2 -1
  30. data/lib/alexandria/models/library.rb +9 -3
  31. data/lib/alexandria/preferences.rb +13 -6
  32. data/lib/alexandria/scanners/keyboard.rb +2 -2
  33. data/lib/alexandria/smart_library.rb +41 -39
  34. data/lib/alexandria/ui/acquire_dialog.rb +47 -48
  35. data/lib/alexandria/ui/alert_dialog.rb +2 -1
  36. data/lib/alexandria/ui/barcode_animation.rb +6 -5
  37. data/lib/alexandria/ui/book_properties_dialog_base.rb +7 -3
  38. data/lib/alexandria/ui/callbacks.rb +14 -7
  39. data/lib/alexandria/ui/dndable.rb +1 -1
  40. data/lib/alexandria/ui/export_dialog.rb +0 -2
  41. data/lib/alexandria/ui/icons.rb +2 -1
  42. data/lib/alexandria/ui/iconview.rb +5 -3
  43. data/lib/alexandria/ui/import_dialog.rb +6 -8
  44. data/lib/alexandria/ui/keep_bad_isbn_dialog.rb +4 -3
  45. data/lib/alexandria/ui/listview.rb +34 -31
  46. data/lib/alexandria/ui/multi_drag_treeview.rb +3 -2
  47. data/lib/alexandria/ui/new_book_dialog.rb +28 -30
  48. data/lib/alexandria/ui/new_book_dialog_manual.rb +3 -1
  49. data/lib/alexandria/ui/provider_preferences_base_dialog.rb +2 -1
  50. data/lib/alexandria/ui/sidepane_manager.rb +6 -3
  51. data/lib/alexandria/ui/smart_library_properties_dialog_base.rb +5 -3
  52. data/lib/alexandria/ui/ui_manager.rb +22 -12
  53. data/lib/alexandria/version.rb +2 -2
  54. data/po/Makefile +2 -2
  55. data/share/alexandria/glade/acquire_dialog__builder.glade +1 -1
  56. data/share/alexandria/glade/book_properties_dialog__builder.glade +1 -1
  57. data/share/alexandria/glade/new_book_dialog__builder.glade +1 -1
  58. data/share/alexandria/glade/preferences_dialog__builder.glade +1 -1
  59. data/share/gnome/help/alexandria/C/introduction.xml +0 -4
  60. data/share/gnome/help/alexandria/C/searching.xml +1 -1
  61. data/share/gnome/help/alexandria/ja/introduction.xml +0 -4
  62. data/spec/alexandria/book_providers_spec.rb +12 -16
  63. data/spec/alexandria/console_spec.rb +1 -1
  64. data/spec/alexandria/ui/main_app_spec.rb +4 -31
  65. data/spec/alexandria/ui/really_delete_dialog_spec.rb +2 -1
  66. data/tasks/spec.rake +6 -4
  67. data/util/rake/fileinstall.rb +3 -1
  68. metadata +19 -7
  69. data/dogtail/basic_run_test.py +0 -9
  70. data/lib/alexandria/book_providers/renaud.rb +0 -142
  71. data/tasks/dogtail.rake +0 -6
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 44744940c1b1d1eabd2f062869295dcbd42a67347ebc7390e4150ed406de1768
4
- data.tar.gz: c9e295c6171d7f88e118c5c998cf6d6507841e78f7dab2f65ccf1a611a8bdd0d
3
+ metadata.gz: 41c8eead00b7524b5b74feaa6ac01f063faaac747b83fccad928afa9d8b28b58
4
+ data.tar.gz: 10fd8fa88a3deab629b885c31afae79984c5c706c5ae0bab4a41c7ddd35bf12a
5
5
  SHA512:
6
- metadata.gz: 9791ac87a6456ec74446ac6a8ce2791f2c0b464c4b843ac69dad561a83bacb286716c9fa940d41b15342e9212339aaa85383e0460128823e711fbe935a1b823f
7
- data.tar.gz: b1b803f65c8b88fcfd35f50e3e1aebde2677de06343baaa4b57f359aba9cc6803240ff50d66dfc80c6fffbc1c8eae6a37574588365714e0f656cd7c513cddea2
6
+ metadata.gz: 0710b1de59aadd9a781760b23b329f4369d42dbc4c77f1dc1f6fee5643a928cccb113390595ad675b766c865f4a8651ae290e1665bed32fb6af9b501d2a2bdec
7
+ data.tar.gz: b8f0ec703fd44905365c9d66bb28ddb5b4b8e46f3bd26ad9762d99e2e7f66e7ab4634314ec4a06890e0a28fc0cbe752dde704bf03be9371bbc73c5931eb8a605
@@ -8,12 +8,16 @@ AllCops:
8
8
  Exclude:
9
9
  - 'lib/alexandria/default_preferences.rb'
10
10
  - 'pkg/**/*'
11
- TargetRubyVersion: 2.4
11
+ TargetRubyVersion: 2.5
12
12
 
13
- Layout/AlignHash:
13
+ Layout/HashAlignment:
14
14
  EnforcedColonStyle: key
15
15
  EnforcedHashRocketStyle: table
16
16
 
17
+ # Be lenient with line length
18
+ Layout/LineLength:
19
+ Max: 92
20
+
17
21
  # Don't force lonely closing parentheses
18
22
  Layout/MultilineMethodCallBraceLayout:
19
23
  EnforcedStyle: same_line
@@ -32,19 +36,27 @@ Layout/MultilineOperationIndentation:
32
36
  Layout/SpaceBeforeBlockBraces:
33
37
  EnforcedStyleForEmptyBraces: space
34
38
 
39
+ # Assume the programmer knows how bracketed block syntax works
40
+ Lint/AmbiguousBlockAssociation:
41
+ Enabled: false
42
+
35
43
  # Allow if (foo = get_foo) style
36
44
  Lint/AssignmentInCondition:
37
45
  AllowSafeAssignment: true
38
46
 
47
+ # Activate new cops from RuboCop 0.81 and 0.82
48
+ Lint/RaiseException:
49
+ Enabled: true
50
+ Layout/SpaceAroundMethodCallOperator:
51
+ Enabled: true
52
+ Lint/StructNewOverride:
53
+ Enabled: true
54
+
39
55
  # Blocks in specs can be any size
40
56
  Metrics/BlockLength:
41
57
  Exclude:
42
58
  - 'spec/**/*'
43
59
 
44
- # Be lenient with line length
45
- Metrics/LineLength:
46
- Max: 110
47
-
48
60
  Naming/AccessorMethodName:
49
61
  Enabled: false
50
62
 
@@ -56,10 +68,22 @@ Naming/RescuedExceptionsVariableName:
56
68
  Style/AndOr:
57
69
  EnforcedStyle: conditionals
58
70
 
71
+ # Activate new cop from RuboCop 0.82
72
+ Style/ExponentialNotation:
73
+ Enabled: true
74
+
59
75
  # Require at least two dependent lines before suggesting a guard clause
60
76
  Style/GuardClause:
61
77
  MinBodyLength: 2
62
78
 
79
+ # Activate new cops from RuboCop 0.80
80
+ Style/HashEachMethods:
81
+ Enabled: true
82
+ Style/HashTransformKeys:
83
+ Enabled: true
84
+ Style/HashTransformValues:
85
+ Enabled: true
86
+
63
87
  # Not all objects that handle #== 0 also handle #zero?
64
88
  Style/NumericPredicate:
65
89
  Enabled: false
@@ -71,6 +95,7 @@ Style/Next:
71
95
  # Use older RuboCop default
72
96
  Style/PercentLiteralDelimiters:
73
97
  PreferredDelimiters:
98
+ '%W': ()
74
99
  '%w': ()
75
100
 
76
101
  # Allow explicit return with multiple return values
@@ -1,6 +1,6 @@
1
1
  # This configuration was generated by
2
2
  # `rubocop --auto-gen-config`
3
- # on 2019-10-16 21:37:35 +0200 using RuboCop version 0.75.1.
3
+ # on 2020-02-22 15:02:18 +0100 using RuboCop version 0.80.0.
4
4
  # The point is for the user to remove these configuration records
5
5
  # one by one as the offenses are removed from the code base.
6
6
  # Note that changes in the inspected code, or installation of new
@@ -28,7 +28,7 @@ Lint/UselessAccessModifier:
28
28
  Exclude:
29
29
  - 'lib/alexandria/logging.rb'
30
30
 
31
- # Offense count: 162
31
+ # Offense count: 160
32
32
  Metrics/AbcSize:
33
33
  Max: 159
34
34
 
@@ -36,38 +36,38 @@ Metrics/AbcSize:
36
36
  # Configuration parameters: CountComments, ExcludedMethods.
37
37
  # ExcludedMethods: refine
38
38
  Metrics/BlockLength:
39
- Max: 66
39
+ Max: 67
40
40
 
41
41
  # Offense count: 8
42
42
  # Configuration parameters: CountBlocks.
43
43
  Metrics/BlockNesting:
44
44
  Max: 5
45
45
 
46
- # Offense count: 32
46
+ # Offense count: 31
47
47
  # Configuration parameters: CountComments.
48
48
  Metrics/ClassLength:
49
- Max: 985
49
+ Max: 994
50
50
 
51
- # Offense count: 65
51
+ # Offense count: 63
52
52
  Metrics/CyclomaticComplexity:
53
53
  Max: 22
54
54
 
55
- # Offense count: 212
55
+ # Offense count: 214
56
56
  # Configuration parameters: CountComments, ExcludedMethods.
57
57
  Metrics/MethodLength:
58
- Max: 109
58
+ Max: 113
59
59
 
60
60
  # Offense count: 1
61
61
  # Configuration parameters: CountComments.
62
62
  Metrics/ModuleLength:
63
- Max: 340
63
+ Max: 346
64
64
 
65
65
  # Offense count: 10
66
66
  # Configuration parameters: CountKeywordArgs.
67
67
  Metrics/ParameterLists:
68
68
  Max: 7
69
69
 
70
- # Offense count: 63
70
+ # Offense count: 61
71
71
  Metrics/PerceivedComplexity:
72
72
  Max: 23
73
73
 
@@ -82,8 +82,8 @@ Naming/BinaryOperatorParameterName:
82
82
  - 'lib/alexandria/ui/multi_drag_treeview.rb'
83
83
 
84
84
  # Offense count: 13
85
- # Configuration parameters: Blacklist.
86
- # Blacklist: (?-mix:(^|\s)(EO[A-Z]{1}|END)(\s|$))
85
+ # Configuration parameters: ForbiddenDelimiters.
86
+ # ForbiddenDelimiters: (?-mix:(^|\s)(EO[A-Z]{1}|END)(\s|$))
87
87
  Naming/HeredocDelimiterNaming:
88
88
  Exclude:
89
89
  - 'Rakefile'
@@ -98,23 +98,10 @@ Naming/MemoizedInstanceVariableName:
98
98
  Exclude:
99
99
  - 'lib/alexandria/logging.rb'
100
100
 
101
- # Offense count: 4
102
- # Configuration parameters: NamePrefix, NamePrefixBlacklist, NameWhitelist, MethodDefinitionMacros.
103
- # NamePrefix: is_, has_, have_
104
- # NamePrefixBlacklist: is_, has_, have_
105
- # NameWhitelist: is_a?
106
- # MethodDefinitionMacros: define_method, define_singleton_method
107
- Naming/PredicateName:
108
- Exclude:
109
- - 'spec/**/*'
110
- - 'lib/alexandria/book_providers/amazon_ecs_util.rb'
111
- - 'lib/alexandria/ui/smart_library_properties_dialog_base.rb'
112
- - 'lib/alexandria/web_themes.rb'
113
-
114
101
  # Offense count: 10
115
102
  # Configuration parameters: MinNameLength, AllowNamesEndingInNumbers, AllowedNames, ForbiddenNames.
116
- # AllowedNames: io, id, to, by, on, in, at, ip, db
117
- Naming/UncommunicativeMethodParamName:
103
+ # AllowedNames: io, id, to, by, on, in, at, ip, db, os, pp
104
+ Naming/MethodParameterName:
118
105
  Exclude:
119
106
  - 'lib/alexandria/book_providers/amazon_ecs_util.rb'
120
107
  - 'lib/alexandria/book_providers/proxis.rb'
@@ -124,6 +111,19 @@ Naming/UncommunicativeMethodParamName:
124
111
  - 'lib/alexandria/ui/init.rb'
125
112
  - 'util/rake/fileinstall.rb'
126
113
 
114
+ # Offense count: 4
115
+ # Configuration parameters: NamePrefix, ForbiddenPrefixes, AllowedMethods, MethodDefinitionMacros.
116
+ # NamePrefix: is_, has_, have_
117
+ # ForbiddenPrefixes: is_, has_, have_
118
+ # AllowedMethods: is_a?
119
+ # MethodDefinitionMacros: define_method, define_singleton_method
120
+ Naming/PredicateName:
121
+ Exclude:
122
+ - 'spec/**/*'
123
+ - 'lib/alexandria/book_providers/amazon_ecs_util.rb'
124
+ - 'lib/alexandria/ui/smart_library_properties_dialog_base.rb'
125
+ - 'lib/alexandria/web_themes.rb'
126
+
127
127
  # Offense count: 1
128
128
  RSpec/DescribeClass:
129
129
  Exclude:
@@ -162,10 +162,9 @@ RSpec/InstanceVariable:
162
162
  Exclude:
163
163
  - 'spec/alexandria/export_library_spec.rb'
164
164
 
165
- # Offense count: 3
165
+ # Offense count: 2
166
166
  RSpec/MultipleDescribes:
167
167
  Exclude:
168
- - 'spec/alexandria/ui/main_app_spec.rb'
169
168
  - 'spec/alexandria/ui/ui_utilities_spec.rb'
170
169
  - 'spec/alexandria/utilities_spec.rb'
171
170
 
@@ -176,7 +175,7 @@ RSpec/MultipleExpectations:
176
175
 
177
176
  # Offense count: 34
178
177
  # Cop supports --auto-correct.
179
- # Configuration parameters: Strict, EnforcedStyle.
178
+ # Configuration parameters: Strict, EnforcedStyle, AllowedExplicitMatchers.
180
179
  # SupportedStyles: inflected, explicit
181
180
  RSpec/PredicateMatcher:
182
181
  Exclude:
@@ -217,13 +216,14 @@ Style/CommentedKeyword:
217
216
  - 'lib/alexandria/ui/new_book_dialog.rb'
218
217
  - 'util/rake/fileinstall.rb'
219
218
 
220
- # Offense count: 113
219
+ # Offense count: 112
221
220
  Style/Documentation:
222
221
  Enabled: false
223
222
 
224
- # Offense count: 1
223
+ # Offense count: 2
225
224
  Style/DoubleNegation:
226
225
  Exclude:
226
+ - 'lib/alexandria/ui/import_dialog.rb'
227
227
  - 'lib/alexandria/ui/listview.rb'
228
228
 
229
229
  # Offense count: 10
@@ -236,7 +236,7 @@ Style/FormatStringToken:
236
236
  - 'lib/alexandria/ui/listview.rb'
237
237
  - 'lib/alexandria/ui/new_book_dialog.rb'
238
238
 
239
- # Offense count: 34
239
+ # Offense count: 27
240
240
  # Configuration parameters: MinBodyLength.
241
241
  Style/GuardClause:
242
242
  Enabled: false
@@ -0,0 +1,39 @@
1
+ language: ruby
2
+
3
+ dist: xenial
4
+
5
+ services:
6
+ - xvfb
7
+
8
+ before_install:
9
+ - sudo apt-get update
10
+ # Needed for gtk3 gem
11
+ - sudo apt-get install libgtk-3-dev
12
+ # Needed for gstreamer gem
13
+ - sudo apt-get install libgstreamer1.0-dev
14
+ # Needed for GooCanvas::Canvas widget
15
+ - sudo apt-get install libgoocanvas-2.0-dev
16
+ # Needed for zoom gem
17
+ - sudo apt-get install libyaz-dev
18
+ # Needed for intltool-merge executable
19
+ - sudo apt-get install intltool
20
+ # Needed for gconftool-2 executable
21
+ - sudo apt-get install gconf2
22
+ # Needed to provide A11y dbus service to silence warnings
23
+ - sudo apt-get install at-spi2-core
24
+ # Needed to set up sound player pipeline
25
+ - sudo apt-get install gstreamer1.0-plugins-good
26
+ # Needed to play sound
27
+ - sudo apt-get install pulseaudio
28
+
29
+ cache:
30
+ bundler: true
31
+
32
+ rvm:
33
+ - 2.5
34
+ - 2.6
35
+ - 2.7
36
+
37
+ branches:
38
+ only:
39
+ - master
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.7.5 / 2020-05-11
4
+
5
+ * Avoid crash when opening Import dialog
6
+ * Avoid crash during export
7
+ * Add support for Ruby 2.7
8
+ * Drop support for Ruby 2.4
9
+ * Remove broken Renaud provider
10
+
3
11
  ## 0.7.4 / 2019-10-24
4
12
 
5
13
  * Drop support for Ruby 2.3
data/README.md CHANGED
@@ -161,7 +161,7 @@ Unless otherwise noted, the following license applies to all files that are
161
161
  part of Alexandria:
162
162
 
163
163
  Copyright (C) 2004 Laurent Sansonetti
164
- Copyright (C) 2005-2010,2014-2019 Alexandria Contributors
164
+ Copyright (C) 2005-2010,2014-2020 Alexandria Contributors
165
165
 
166
166
  Alexandria is free software; you can redistribute it and/or modify it under the
167
167
  terms of the GNU General Public License as published by the Free Software
data/Rakefile CHANGED
@@ -223,7 +223,9 @@ end
223
223
  task :gconf do
224
224
  return if ENV["GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL"]
225
225
 
226
- raise "gconftool-2 cannot be found, is GConf2 correctly installed?" unless system("which gconftool-2")
226
+ unless system("which gconftool-2")
227
+ raise "gconftool-2 cannot be found, is GConf2 correctly installed?"
228
+ end
227
229
 
228
230
  ENV["GCONF_CONFIG_SOURCE"] = `gconftool-2 --get-default-source`.chomp
229
231
  Dir["schemas/*.schemas"].each do |schema|
@@ -244,4 +246,4 @@ task install: [:pre_install, :install_package, :post_install]
244
246
  desc "Uninstall Alexandria"
245
247
  task uninstall: [:uninstall_package] # TODO: gconf etc...
246
248
 
247
- task default: [:spec, :dogtail]
249
+ task default: [:spec]
@@ -7,7 +7,7 @@ Gem::Specification.new do |s|
7
7
  s.version = Alexandria::VERSION
8
8
 
9
9
  s.summary = "GNOME application for managing collections of books"
10
- s.required_ruby_version = ">= 2.4.0"
10
+ s.required_ruby_version = ">= 2.5.0"
11
11
 
12
12
  s.authors = [
13
13
  "Alexander McCormmach",
@@ -51,6 +51,7 @@ Gem::Specification.new do |s|
51
51
  s.add_runtime_dependency("htmlentities", ["~> 4.3"])
52
52
  s.add_runtime_dependency("image_size", ["~> 2.0"])
53
53
  s.add_runtime_dependency("marc", ["~> 1.0.0"])
54
+ s.add_runtime_dependency("psych", ["~> 3.1.0"])
54
55
  s.add_runtime_dependency("zoom", ["~> 0.5.0"])
55
56
 
56
57
  s.add_development_dependency("gnome_app_driver", ["~> 0.2.1"])
@@ -20,16 +20,6 @@ OptionParser.new do |opts|
20
20
  puts Alexandria.list_books_on_console
21
21
  exit
22
22
  end
23
- # opts.on("--output FORMAT",
24
- # "Output library as FORMAT: csv|xml|yaml; use with --library or omit for ALL") do |val|
25
- # options.format = val
26
- # exit
27
- # end
28
- # opts.on("--library LIBRARY",
29
- # "Used with --output to pick a library to output") do |val|
30
- # options.library = val
31
- # exit
32
- # end
33
23
  opts.on("-d", "--debug", "Run in debug mode") do
34
24
  $DEBUG = true
35
25
  end
data/doc/FAQ CHANGED
@@ -290,8 +290,7 @@ Question: I prefer to have the field "Author" as "Surname, Name" instead
290
290
  of "Name Surname".
291
291
 
292
292
  Answer: Alexandria relies on what the providers say:
293
- some providers report "Surname, Name": Renaud,
294
- some "Surname Name": Webster.it, Ibs.it,
293
+ some providers report "Surname Name": Webster.it, Ibs.it,
295
294
  some "Name Surname": Bn, Thalia, Bol.it, Adlibris, L Siciliano, Worldcat,
296
295
  and some without any rule: Amazon, Proxis.
297
296
  You can change, in the preferences, the order in which the providers are
@@ -1,29 +1,29 @@
1
1
  ---
2
- - - :whitelist
2
+ - - :permit
3
3
  - LGPL-3+
4
4
  - :who:
5
5
  :why:
6
6
  :versions: []
7
7
  :when: 2017-07-23 05:51:53.629753437 Z
8
- - - :whitelist
8
+ - - :permit
9
9
  - LGPL-2.1+
10
10
  - :who:
11
11
  :why:
12
12
  :versions: []
13
13
  :when: 2017-07-23 05:52:02.088395832 Z
14
- - - :whitelist
14
+ - - :permit
15
15
  - MIT
16
16
  - :who:
17
17
  :why:
18
18
  :versions: []
19
19
  :when: 2017-07-23 05:52:06.806192042 Z
20
- - - :whitelist
20
+ - - :permit
21
21
  - LGPLv2+
22
22
  - :who:
23
23
  :why:
24
24
  :versions: []
25
25
  :when: 2017-07-23 05:52:24.618189811 Z
26
- - - :whitelist
26
+ - - :permit
27
27
  - ruby
28
28
  - :who:
29
29
  :why:
@@ -22,7 +22,9 @@ require "alexandria/about"
22
22
 
23
23
  module Alexandria
24
24
  def self.set_proxy
25
- ENV["http_proxy"] = nil if !ENV["http_proxy"].nil? && URI.parse(ENV["http_proxy"]).userinfo.nil?
25
+ if !ENV["http_proxy"].nil? && URI.parse(ENV["http_proxy"]).userinfo.nil?
26
+ ENV["http_proxy"] = nil
27
+ end
26
28
  end
27
29
 
28
30
  def self.set_log_level
@@ -67,7 +67,7 @@ module Alexandria
67
67
  log.info { "found at " + factory.fullname }
68
68
  instance.changed
69
69
  instance.notify_observers(:found, factory.fullname) # new
70
- return results
70
+ results
71
71
  end
72
72
  rescue StandardError => ex
73
73
  if ex.is_a? NoResultsError
@@ -291,9 +291,6 @@ module Alexandria
291
291
 
292
292
  require "alexandria/book_providers/douban" # only requires YAML
293
293
 
294
- # require 'alexandria/book_providers/renaud'
295
- log.info { "Not loading Renaud (provider not functional)" }
296
-
297
294
  # Amazon AWS (Amazon Associates Web Services) provider, needs hpricot
298
295
  require "alexandria/book_providers/amazon_aws"
299
296