Compare commits

...
Sign in to create a new pull request.

44 commits

Author SHA1 Message Date
Fedora Release Engineering
b8fc5a9441 Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild 2026-01-16 03:34:36 +00:00
Fedora Release Engineering
a3695abcb2 Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-23 16:53:09 +00:00
Fedora Release Engineering
f112a0f651 Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-16 10:50:27 +00:00
Mamoru TASAKA
8c763f8b71 fix release 2024-11-16 22:25:03 +09:00
Mamoru TASAKA
cf2fbbc709 merge 2024-11-16 22:24:45 +09:00
Mamoru TASAKA
9d50be6983 Add missing syck file import (bug 2326632) 2024-11-16 22:23:59 +09:00
Fedora Release Engineering
d2559b8932 Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-17 16:49:30 +00:00
Fedora Release Engineering
a8933bce15 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-22 22:53:05 +00:00
Fedora Release Engineering
88042ee451 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-19 12:39:42 +00:00
Mamoru TASAKA
b63ee98611 SPDX migration 2024-01-02 18:01:19 +09:00
Mamoru TASAKA
0349271a51 Disable z3950x provider test 2023-12-22 10:40:30 +09:00
Fedora Release Engineering
947f75e453 Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-19 13:06:19 +00:00
Mamoru TASAKA
ec1b9cf5e3 rename release macro to make rpmdev-bumprelease work 2023-03-13 10:05:13 +09:00
Fedora Release Engineering
5cc7e2cad2 Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-18 21:34:33 +00:00
Mamoru TASAKA
7d5f337c86 Backport some changes on upstream git for ruby3.2 File.exists? removal 2022-10-17 23:31:14 +09:00
Fedora Release Engineering
592afbdb17 Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-20 20:37:33 +00:00
Mamoru TASAKA
877ceffb5d remove upstreamed patch 2022-02-27 21:11:29 +09:00
Mamoru TASAKA
0d3cb1fd23 upload source 2022-02-27 21:10:35 +09:00
Mamoru TASAKA
52e3400d08 Update to 0.7.9 2022-02-27 21:09:36 +09:00
Fedora Release Engineering
9a9d8197e9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-19 21:06:14 +00:00
Kevin Fenzi
1e57f5d879 Rebuild for hiredis 1.0.2 2022-01-17 13:38:25 -08:00
Mamoru TASAKA
60302143ca Switch to image_size gem, specify explicitly
Disable 1 failing test
2021-08-27 11:18:08 +09:00
Fedora Release Engineering
9ffc68f6b9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-21 17:25:31 +00:00
Fedora Release Engineering
94fbbb397a - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-21 12:30:11 +00:00
Mamoru TASAKA
aef688435c add upstream ref 2021-03-13 23:57:51 +09:00
Mamoru TASAKA
dc5c9f459a set XDG_CONFIG_HOME for test suite 2021-03-07 21:34:59 +09:00
Mamoru TASAKA
7337d4b9ae Simply use rake spec, and fake bundler / simplecov 2021-03-05 21:45:46 +09:00
Mamoru TASAKA
a2f00dbe29 add upstream reference 2021-03-05 21:24:23 +09:00
Mamoru TASAKA
ea4e394c9f fix release 2021-03-05 20:52:18 +09:00
Mamoru TASAKA
c556742dba Once reset search text when adding new book (bug 1909500)
Enable test, fix Fedora specific patch (errors detected with the test)
2021-03-05 20:51:58 +09:00
Mamoru TASAKA
d71de5ff9a Once reset search text when adding new book (bug 1909500) 2021-03-05 14:41:05 +09:00
Fedora Release Engineering
a2d86b41c4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-25 23:58:00 +00:00
Mamoru TASAKA
10c87e16d3 wrap ruby 3.0 newly dependency with macro 2021-01-07 20:26:53 +09:00
Vít Ondruch
debc316777 Add ReXML dependency needed for Ruby 3.0.
Ruby 3.0 moved ReXML out from StdLib to bundled gem. Therefore the ReXML
dependency now needs to be explicit. Asked upstream to used Nokogiri
instead (since it is going to be dependency anyway):

https://github.com/mvz/alexandria-book-collection-manager/issues/124
2021-01-07 09:56:43 +01:00
Mamoru TASAKA
e04104a2e2 0.7.8 2020-12-03 15:34:27 +09:00
Mamoru TASAKA
375c0336bb upload source 2020-11-03 00:58:27 +09:00
Mamoru TASAKA
94e895a0c2 0.7.6 2020-11-03 00:57:18 +09:00
Mamoru TASAKA
65ea9a22a5 0.7.5
Once revert upstream change about setting initial visibility to false
  (upstream bug 86)
2020-10-30 15:48:21 +09:00
Mamoru TASAKA
fae9920169 anyway upload source 2020-10-17 16:29:27 +09:00
Mamoru TASAKA
db296ffd5f 0.7.5 preparation, need debugging because it is not working properly 2020-10-17 16:27:50 +09:00
Mamoru TASAKA
670853b9ef syck is needed, adding to Requires again 2020-08-09 13:22:34 +09:00
Fedora Release Engineering
55e570f36a - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-27 11:54:36 +00:00
Mamoru TASAKA
d1a6a4e616 Fix Requires, expecially, add R: rubygem(gtk3) (bug 1833761) 2020-05-11 14:47:08 +09:00
Fedora Release Engineering
69e77196fa - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-01-28 11:24:12 +00:00
14 changed files with 296 additions and 118 deletions

7
.gitignore vendored
View file

@ -1,6 +1 @@
alexandria-0.6.6.tar.gz
/alexandria-0.6.6-svn1154_trunk.tar.gz
/alexandria-0.6.7.tar.gz
/alexandria-0.6.8.tar.gz
/alexandria-0.6.9.tar.gz
/alexandria-0.7.4.tar.gz
/alexandria-*.tar.gz

View file

@ -1,11 +0,0 @@
--- alexandria-book-collection-manager-0.7.4/lib/alexandria/preferences.rb.negative 2019-10-25 01:20:07.000000000 +0900
+++ alexandria-book-collection-manager-0.7.4/lib/alexandria/preferences.rb 2020-01-04 14:09:13.773911633 +0900
@@ -239,7 +239,7 @@ module Alexandria
true
elsif value == "false" # bool
false
- elsif /^[0-9]+$/.match?(value) # int
+ elsif /^-?[0-9]+$/.match?(value) # int
value.to_i
elsif value =~ /^\[(.*)\]$/ # list (assume of type String)
Regexp.last_match[1].split(",")

View file

@ -1,22 +0,0 @@
--- alexandria-book-collection-manager-0.7.4/lib/alexandria/ui/new_book_dialog.rb.nothread 2020-01-03 17:37:42.394366241 +0900
+++ alexandria-book-collection-manager-0.7.4/lib/alexandria/ui/new_book_dialog.rb 2020-01-04 13:24:08.240415691 +0900
@@ -279,15 +279,17 @@ module Alexandria
get_images_async
false # continue == false if you get to here. Stop timeout.
end
- else
+ elsif @find_thread
# Stop if the book find thread has stopped.
@find_thread.alive?
+ else
+ true
end
# continue == false if @find_error OR if results are returned
# timeout ends if continue is false!
unless continue
- unless @find_thread.alive? # This happens after find_thread is done
+ unless (@find_thread && @find_thread.alive?) # This happens after find_thread is done
unless @destroyed
# GLib::Source.remove(progress_pulsing)
# @progressbar.hide

View file

@ -6,11 +6,11 @@ diff -urp alexandria-book-collection-manager-0.7.4.old/lib/alexandria/ui/book_pr
@button_box.set_child_secondary(help_button, true)
- @entry_title.text = @book_properties_dialog.title = book.title
+ book_title = book.title.force_encoding('UTF-8')
+ book_title = book.title.dup.force_encoding('UTF-8')
+ @entry_title.text = @book_properties_dialog.title = book_title
@entry_isbn.text = (book.isbn || "")
- @entry_publisher.text = book.publisher
+ @entry_publisher.text = book.publisher.force_encoding('UTF-8')
+ @entry_publisher.text = book.publisher.dup.force_encoding('UTF-8')
@entry_publish_date.text = book.publishing_year.to_s
@entry_publish_date.signal_connect("focus-out-event") do
text = @entry_publish_date.text
@ -19,7 +19,7 @@ diff -urp alexandria-book-collection-manager-0.7.4.old/lib/alexandria/ui/book_pr
end
end
- @entry_edition.text = book.edition
+ @entry_edition.text = book.edition.force_encoding('UTF-8')
+ @entry_edition.text = book.edition ? book.edition.dup.force_encoding('UTF-8') : ""
if book.tags
@entry_tags.text = book.tags.join(",") # tags are comma-separated
end

View file

@ -1,6 +1,6 @@
--- alexandria-book-collection-manager-0.7.4/lib/alexandria/export_library.rb.csv 2020-01-03 16:24:11.989122168 +0900
+++ alexandria-book-collection-manager-0.7.4/lib/alexandria/export_library.rb 2020-01-03 16:37:23.739363736 +0900
@@ -110,12 +110,12 @@
--- alexandria-book-collection-manager-0.7.5/lib/alexandria/export_library.rb.export_csv 2020-10-17 15:49:16.241200513 +0900
+++ alexandria-book-collection-manager-0.7.5/lib/alexandria/export_library.rb 2020-10-17 16:01:18.184960155 +0900
@@ -108,12 +108,12 @@ module Alexandria
io.puts "<TITLE>#{book.title} </TITLE>"
# put a link to the book's cover. only works on iPod 5G and above(?).
if File.exist?(cover(book))
@ -15,9 +15,9 @@
+ io.puts book.authors.join(", ").force_encoding('UTF-8')
+ io.puts book.edition.force_encoding('UTF-8')
io.puts((book.isbn || ""))
# we need to close the files so the iPod can be ejected/unmounted without us closing Alexandria
io.close
@@ -379,8 +379,8 @@
# we need to close the files so the iPod can be ejected/unmounted
# without us closing Alexandria
@@ -380,8 +380,8 @@ module Alexandria
end
end
bibtex << "\",\n"
@ -25,6 +25,6 @@
- bibtex << "publisher = \"#{latex_escape(book.publisher)}\",\n"
+ bibtex << "title = \"#{latex_escape(book.title.force_encoding('UTF-8'))}\",\n"
+ bibtex << "publisher = \"#{latex_escape(book.publisher.force_encoding('UTF-8'))}\",\n"
bibtex << "OPTnote = \"#{latex_escape(book.notes)}\",\n" if book.notes && !book.notes.empty?
# year is a required field in bibtex @BOOK
bibtex << "year = " + (book.publishing_year || '"n/a"').to_s + "\n"
if book.notes && !book.notes.empty?
bibtex << "OPTnote = \"#{latex_escape(book.notes)}\",\n"
end

View file

@ -0,0 +1,22 @@
--- alexandria-book-collection-manager-0.7.6/lib/alexandria/ui/new_book_dialog.rb.nothread 2020-11-03 00:29:34.194485720 +0900
+++ alexandria-book-collection-manager-0.7.6/lib/alexandria/ui/new_book_dialog.rb 2020-11-03 00:34:01.426386821 +0900
@@ -281,15 +281,17 @@ module Alexandria
get_images_async
false # continue == false if you get to here. Stop timeout.
end
- else
+ elsif @find_thread
# Stop if the book find thread has stopped.
@find_thread.alive?
+ else
+ true
end
# continue == false if @find_error OR if results are returned
# timeout ends if continue is false!
# @find_thread.alive? happens after find_thread is done
- unless continue || @find_thread.alive? || @destroyed
+ unless continue || (@find_thread && @find_thread.alive?) || @destroyed
notify_end_add_by_isbn
@button_add.sensitive = false
end

View file

@ -0,0 +1,10 @@
--- alexandria-book-collection-manager-0.7.8/lib/alexandria/export_library.rb.image_size 2020-11-29 20:50:34.000000000 +0900
+++ alexandria-book-collection-manager-0.7.8/lib/alexandria/export_library.rb 2021-08-27 11:09:49.794917238 +0900
@@ -5,6 +5,7 @@
# See the file README.md for authorship and licensing information.
require "csv"
+gem "image_size"
require "image_size"
require "tmpdir"

View file

@ -0,0 +1,15 @@
diff -urp '--exclude=*~' alexandria-book-collection-manager-0.7.8/lib/alexandria/ui/ui_manager.rb alexandria-book-collection-manager-0.7.8.new/lib/alexandria/ui/ui_manager.rb
--- alexandria-book-collection-manager-0.7.8/lib/alexandria/ui/ui_manager.rb 2021-03-05 00:06:46.604012398 +0900
+++ alexandria-book-collection-manager-0.7.8.new/lib/alexandria/ui/ui_manager.rb 2021-03-04 23:53:11.560895622 +0900
@@ -569,7 +569,10 @@ module Alexandria
end
@iconview.unfreeze
@listview.unfreeze # NEW
- select_a_book(book) if [Library::BOOK_ADDED, Library::BOOK_UPDATED].include? kind
+ if [Library::BOOK_ADDED, Library::BOOK_UPDATED].include? kind
+ on_clear_search_results
+ select_a_book(book)
+ end
elsif selected_library.is_a?(SmartLibrary)
refresh_books
end

View file

@ -4,8 +4,8 @@
rule ".omf" => [".omf.in"] do |t|
path = File.join(@gnome_helpfiles_dir, @projectname,
locale_for(t.name), "#{@projectname}.xml")
- data = IO.read(t.source)
+ data = IO.read(t.source, :encoding => "BINARY")
- data = File.read(t.source)
+ data = File.read(t.source, :encoding => "BINARY")
data.sub!(/PATH_TO_DOC_FILE/, path)
puts "Generating #{t.name}..."
- File.open(t.name, "w") { |io| io.puts data }

View file

@ -8,8 +8,8 @@
+ # prevent crash...
super(parent,
format(_("The book '%s' already exists in '%s'. Would you like " \
- "to replace it?"), book.title, library.name),
+ "to replace it?"), book.title, library.name).dup.map!{|str| str.force_encoding("UTF-8")},
- "to replace it?"), book.title, library.name),
+ "to replace it?"), book.title, library.name).dup.force_encoding("UTF-8"),
Gtk::Stock::DIALOG_QUESTION,
[[_("_Skip"), Gtk::ResponseType::CANCEL],
[_("_Replace"), Gtk::ResponseType::OK]],
@ -22,7 +22,7 @@
- iter[Columns::AUTHORS] = book.authors.join(", ")
+ # Don't know why, however force_encoding seems needed here to
+ # prevent crash...
+ iter[Columns::AUTHORS] = book.authors.dup.map!{|str| str.force_encoding("UTF-8")}.join(", ")
+ iter[Columns::AUTHORS] = book.authors.dup.map!{|str| str.dup.force_encoding("UTF-8")}.join(", ")
iter[Columns::ISBN] = book.isbn.to_s
iter[Columns::PUBLISHER] = book.publisher
iter[Columns::PUBLISH_DATE] = book.publishing_year.to_s

View file

@ -1,7 +1,7 @@
--- alexandria-book-collection-manager-0.7.4/lib/alexandria/library_store.rb.broken_yaml 2019-10-25 01:20:07.000000000 +0900
+++ alexandria-book-collection-manager-0.7.4/lib/alexandria/library_store.rb 2020-01-07 14:39:45.495305334 +0900
--- alexandria-book-collection-manager-0.7.6/lib/alexandria/library_store.rb.broken_yaml 2020-11-01 21:35:07.000000000 +0900
+++ alexandria-book-collection-manager-0.7.6/lib/alexandria/library_store.rb 2020-11-03 00:26:24.240552377 +0900
@@ -48,8 +48,23 @@ module Alexandria
Dir["*" + Library::EXT[:book]].each do |filename|
Dir["*" + Library::EXT[:book]].sort.each do |filename|
test[1] = filename if (test[0]).zero?
+ book_valid_p = true
@ -33,21 +33,22 @@
old_isbn = book.isbn
old_pub_year = book.publishing_year
begin
@@ -170,6 +185,8 @@ module Alexandria
@@ -181,6 +196,9 @@ module Alexandria
private
def regularize_book_from_yaml(name)
+ require 'syck/constants'
+ require 'syck/encoding'
+
text = IO.read(name)
text = File.read(name)
# Code to remove the mystery string in books imported from Amazon
@@ -192,7 +209,7 @@ module Alexandria
@@ -203,7 +221,7 @@ module Alexandria
end
# TODO: Ensure book loading passes through Book#initialize
- book = YAML.safe_load(text, permitted_classes: [Book, Time])
+ book = YAML.safe_load(Syck::unescape(text), permitted_classes: [Book, Time])
- book = Book.from_yaml(text)
+ book = Book.from_yaml(Syck::unescape(text))
unless book.isbn.class == String
unless book.isbn.instance_of? String
# HACK
md = /isbn: (.+)/.match(text)

View file

@ -1,5 +1,5 @@
--- alexandria-book-collection-manager-0.7.4/lib/alexandria/book_providers/z3950.rb.zoom_count 2019-10-25 01:20:07.000000000 +0900
+++ alexandria-book-collection-manager-0.7.4/lib/alexandria/book_providers/z3950.rb 2020-01-04 13:59:39.224201295 +0900
--- alexandria-book-collection-manager-0.7.4/lib/alexandria/book_providers/z3950_provider.rb.zoom_count 2019-10-25 01:20:07.000000000 +0900
+++ alexandria-book-collection-manager-0.7.4/lib/alexandria/book_providers/z3950_provider.rb 2020-01-04 13:59:39.224201295 +0900
@@ -149,7 +149,11 @@ module Alexandria
conn.preferred_record_syntax = prefs["record_syntax"]

View file

@ -1,9 +1,14 @@
%define majorver 0.7.4
%define BothRequires() \
Requires: %{*} \
BuildRequires: %{*} \
%{nil}
%define majorver 0.7.9
%undefine minorver
%undefine ifpre
%define fedorarel 1
%define rel %{?ifpre:0.}%{fedorarel}%{?minorver:.%minorver}
%define baserelease 12
%define rel %{?ifpre:0.}%{baserelease}%{?minorver:.%minorver}
@ -12,7 +17,10 @@ Version: %{majorver}
Release: %{rel}%{?dist}
Summary: Book collection manager
License: GPLv2+
# Overall GPL-2.0-or-later
# share/gnome/help/alexandria/C/alexandria.xml GFDL-1.2-or-later
# SPDX confirmed
License: GPL-2.0-or-later AND GPL-2.0-or-later
URL: https://github.com/mvz/alexandria-book-collection-manager/
Source0: %{url}/archive/v%{version}/%{name}-%{version}%{?minorver:-%{minorver}}.tar.gz
# Patches discussing with the upstream
@ -31,7 +39,7 @@ Patch3: alexandria-0.7.4-dont_use_thread_when_adding_file_by_isdn.patch
# Upstream patches
# Patches not submitted to the upstream
# Force encoding type to make rake happy
Patch14: alexandria-0.7.4-ascii-fix.patch
Patch14: alexandria-0.7.9-ascii-fix.patch
# Fix kcode issues with 1.9
# Well, with the original fix, some strange failure on startup
# happens on ja_JP.utf8...
@ -40,31 +48,33 @@ Patch14: alexandria-0.7.4-ascii-fix.patch
# a. loading yaml file generated by ruby 18x will show garbage characters
# b. moving book entry to another library which also contains the
# same book will cause crash..
Patch18: alexandria-0.7.4-utf8-convert.patch
Patch18: alexandria-0.7.9-utf8-convert.patch
# More UTF-8 fix on ruby 1.9, when exporting library to HTML
# (bug 819188)
Patch19: alexandria-0.7.4-export-to-HTML-with-ruby19.patch
# More UTF-8 fix on ruby 1.9, when exporting library to csv
# or bibtex
Patch20: alexandria-0.7.4-export-to-CSV-bintex-with-ruby19.patch
Patch20: alexandria-0.7.5-export-to-CSV-bintex-with-ruby19.patch
# Remove garbage character with icon view on multibyte locate
Patch21: alexandria-0.7.4-iconview-multibyte.patch
# Split Patch18 into two patches, one for lib/alexandria/models/library.rb
# (this file) and other. Also handle broken yaml file correctly and let
# user redownload it
# (bug 861740)
Patch22: alexandria-0.7.4-yaml-unescape.patch
Patch22: alexandria-0.7.9-yaml-unescape.patch
# Add a feature to remove broken yaml files at startup when requested
# (bug 869556)
Patch23: alexandria-0.7.4-delete-broken-yaml.patch
# Handle the case thread was not created with adding new book
Patch25: alexandria-0.7.4-newbook-nothread.patch
Patch25: alexandria-0.7.6-newbook-nothread.patch
# Make z3950 provider work
# ZOOM::Connection.count must be string
Patch26: alexandria-0.7.4-z3950-zoom-count.patch
Patch26: alexandria-0.7.9-z3950-zoom-count.patch
# Read negative value as integer in case position has such value
# (bug 1014295)
Patch27: alexandria-0.7.4-negative-value.patch
# https://github.com/mvz/alexandria-book-collection-manager/issues/135
# Applied in 0.7.9
#Patch27: alexandria-0.7.6-negative-value.patch
# Specify goocanvas version (bug 1024931)
# This is obsolete with 0.7.4. 0.7.4 uses goocanvas2 with introspection
# Make glade2 translatable text actually translated (i10ned)
@ -73,6 +83,11 @@ Patch29: alexandria-0.7.4-glade-gettext.patch
Patch30: alexandria-0.7.4-title-force-encoding.patch
# Remove undefined / unneeded method
Patch31: alexandria-0.7.4-remove-undefined-method.patch
# Once reset search text when adding new book (bug 1909500)
# https://github.com/mvz/alexandria-book-collection-manager/issues/106
Patch32: alexandria-0.7.8-reset-search-when-adding-new-book.patch
# Explicitly specify image_size gem
Patch33: alexandria-0.7.8-explicitly-specify_gem_image_size.patch
BuildArch: noarch
@ -89,31 +104,42 @@ BuildRequires: gettext
BuildRequires: intltool
# From 0.7.4
BuildRequires: rubygem(rspec)
# Needed since Ruby 3.0.
# https://github.com/mvz/alexandria-book-collection-manager/issues/124
%BothRequires rubygem(rexml)
# rspec test
BuildRequires: %{_bindir}/xvfb-run
BuildRequires: %{_bindir}/ping
BuildRequires: rubygem(webmock)
BuildRequires: rubygem(json)
BuildRequires: rubygem(pry)
BuildRequires: gstreamer1-plugins-base
# autoaudiosink
BuildRequires: gstreamer1-plugins-good
# Amazon AWS v3 -> v4 switch
# AWS v4 is supported by alexandria itself
# But hpricot is still needed
# 0.7.9 uses nokogiri instead of hpricot
#Requires: ruby(amazon)
Requires: rubygem(gettext)
Requires: rubygem(hpricot)
Requires: rubygem(htmlentities)
Requires: ruby(imagesize)
%BothRequires rubygem(gettext)
%BothRequires rubygem(htmlentities)
%BothRequires rubygem(image_size)
%BothRequires rubygem(nokogiri)
# Dependency removed on 0.6.4b1
#Requires: ruby(mechanize)
# Kill ruby(revolution) dependency
#Requires: ruby(revolution)
%BothRequires rubygem(psych)
# ruby(zoom) -> rubygem(zoom) switch
#Requires: ruby(zoom)
Requires: rubygem(zoom) >= 0.3.0
Requires: rubygem(marc)
%BothRequires rubygem(zoom) >= 0.3.0
%BothRequires rubygem(marc)
# Killed on 0.6.8
#Requires: ruby(gconf2)
# Explicitly
Requires: GConf2
Requires: rubygem(gdk_pixbuf2)
Requires: rubygem(glib2)
%BothRequires rubygem(gdk_pixbuf2)
%BothRequires rubygem(glib2)
# Killed on 0.6.8
#Requires: ruby(gnome2)
#Requires: ruby(libglade2)
@ -121,12 +147,11 @@ Requires: rubygem(glib2)
# Requires: rubygem(goocanvas)
# The above needs more explicit
# With 0.7.4 this dependency changed, goocanvas2 + introspection
Requires: rubygem(goocanvas)
%BothRequires rubygem(goocanvas) >= 2
%BothRequires rubygem(gstreamer)
%BothRequires rubygem(gtk3)
# Uses syck (bug 922217)
# Once kill this with 0.7.4
%if 0%{?fedora} < 32
Requires: rubygem(syck)
%endif
%BothRequires rubygem(syck)
Requires(pre): GConf2
Requires(post): GConf2
@ -139,23 +164,29 @@ Alexandria is a GNOME application to help you manage your book collection.
%setup -q -n %{name}-book-collection-manager-%{majorver}%{?minorver:-%{?minorver}}
# Check if patch2 issue is fixed in rev 1154
#%%patch2 -p0 -b .up25348
%patch3 -p1 -b .up28263.isdn
#%%patch4 -p0 -b .up29479.search
%patch14 -p1 -b .ascii
#%%patch15 -p1 -b .kcodefix
%patch18 -p1 -b .ruby19_utf8
%patch19 -p1 -b .export_html
%patch20 -p1 -b .export_csv
%patch21 -p1 -b .icon_kanji
%patch22 -p1 -b .broken_yaml
%patch23 -p1 -b .delete_yaml
%patch25 -p1 -b .nothread
%patch26 -p1 -b .z3950_count
%patch27 -p1 -b .negative
%patch29 -p1 -b .gettext
%patch30 -p1 -b .utf8_2
%patch31 -p1 -b .undefined_method
#%%patch -P2 -p0 -b .up25348
%patch -P3 -p1 -b .up28263.isdn
#%%patch -P4 -p0 -b .up29479.search
%patch -P14 -p1 -b .ascii -Z
#%%patch -P15 -p1 -b .kcodefix
%patch -P18 -p1 -b .ruby19_utf8 -Z
%patch -P19 -p1 -b .export_html -Z
%patch -P20 -p1 -b .export_csv -Z
%patch -P21 -p1 -b .icon_kanji -Z
%patch -P22 -p1 -b .broken_yaml -Z
%patch -P23 -p1 -b .delete_yaml -Z
%patch -P25 -p1 -b .nothread -Z
%patch -P26 -p1 -b .z3950_count -Z
#%%patch -P27 -p1 -b .negative -Z
%patch -P29 -p1 -b .gettext -Z
%patch -P30 -p1 -b .utf8_2 -Z
%patch -P31 -p1 -b .undefined_method -Z
%patch -P32 -p1 -b .reset_search -Z
%patch -P33 -p1 -b .image_size -Z
# Part of https://github.com/mvz/alexandria-book-collection-manager/commit/d9116e99242c209129bf09c3c1ad9a4ff6fdcf44
# Needed for ruby3.2 - removes File.exists?
sed -i util/rake/gettextgenerate.rb -e 's|unless FileTest.exists.*$||'
# Embed Fedora EVR
%{__sed} -i.evr \
@ -183,9 +214,6 @@ rake install_package_staging \
RUBYLIBDIR=%{ruby_vendorlibdir}
desktop-file-install \
%if 0%{?fedora} < 19
--vendor fedora \
%endif
--dir $RPM_BUILD_ROOT%{_datadir}/applications/ \
--delete-original \
$RPM_BUILD_ROOT%{_datadir}/applications/%{name}.desktop
@ -248,6 +276,53 @@ EOF
%find_lang %{name}
%check
export LANG=C.utf8
# Tweak config path for %%check
sed -i.testsuite lib/alexandria/config.rb \
-e 's|/usr/share|%{buildroot}%{_datadir}|'
# Kill tests which needs network
disable_test() {
sed -i.testsuite $1 -e "\@$2@s|it|xit|"
}
rm -rf .config/gconf
mkdir -p .config/gconf
export XDG_CONFIG_HOME=$(pwd)/.config
# fake bundler
mkdir -p FAKE/bundler
touch FAKE/bundler/setup.rb
touch FAKE/simplecov.rb
export RUBYLIB=$(pwd)/FAKE
# Disable z3950 provider test
disable_test spec/alexandria/book_providers/bl_provider_spec.rb "works"
ping -w3 www.google.co.jp && \
{
# Need taking a look at this
disable_test spec/alexandria/book_providers/loc_provider_spec.rb "works for a book";
true;
} \
|| \
{
disable_test spec/alexandria/book_providers/thalia_provider_spec.rb "works when searching by ISBN";
disable_test spec/alexandria/book_providers/loc_provider_spec.rb "works for a book";
disable_test spec/alexandria/book_providers/sbn_provider_spec.rb "works";
sed -i spec/alexandria/book_providers_spec.rb -e "\@Alexandria::BookProviders::SBNProvider@{n;s|it|xit|}";
}
xvfb-run \
-s "-screen 0 640x480x24" \
rake spec:unit
find . -name \*.testsuite | while read f
do
mv ${f} ${f%.testsuite}
done
%pre
%gconf_schema_prepare %{name}
@ -258,7 +333,7 @@ EOF
%gconf_schema_remove %{name}
%files -f %{name}.lang
%doc COPYING
%license COPYING
%doc ChangeLog*
%doc INSTALL.md
%doc README*
@ -284,6 +359,100 @@ EOF
%{_datadir}/icons/hicolor/*/apps/%{name}.*
%changelog
* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.9-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.9-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.9-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Sat Nov 16 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 0.7.9-9
- Add missing syck file import (bug 2326632)
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.9-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.9-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.9-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Tue Jan 2 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 0.7.9-5
- SPDX migration
* Fri Dec 22 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 0.7.9-4
- Disable z3950x provider test
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.9-3.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.9-2.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Mon Oct 17 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 0.7.9-2
- Backport some changes on upstream git for ruby3.2 File.exists? removal
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.9-1.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Sun Feb 27 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 0.7.9-1
- 0.7.9
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.8-6.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Mon Jan 17 2022 Kevin Fenzi <kevin@scrye.com> - 0.7.8-6.1
- Rebuild for hiredis 1.0.2
* Fri Aug 27 2021 Mamoru TASAKA <mtasaka@fedoraproject.org> - 0.7.8-6
- Switch to image_size gem, specify explicitly
- Disable 1 failing test
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.8-5.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Sun Mar 7 2021 Mamoru TASAKA <mtasaka@fedoraproject.org> - 0.7.8-5
- set XDG_CONFIG_HOME for test suite
* Fri Mar 5 2021 Mamoru TASAKA <mtasaka@fedoraproject.org> - 0.7.8-4
- Simply use rake spec, and fake bundler / simplecov
* Fri Mar 5 2021 Mamoru TASAKA <mtasaka@fedoraproject.org> - 0.7.8-3
- Once reset search text when adding new book (bug 1909500)
- Enable test, fix Fedora specific patch (errors detected with the test)
* Mon Jan 25 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.8-2.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Thu Jan 7 2021 Vít Ondruch <vondruch@redhat.com> - 0.7.8-2
- Add ReXML dependency needed for Ruby 3.0.
* Thu Dec 3 2020 Mamoru TASAKA <mtasaka@fedoraproject.org> - 0.7.8-1
- 0.7.8
* Mon Nov 2 2020 Mamoru TASAKA <mtasaka@fedoraproject.org> - 0.7.6-1
- 0.7.6
* Fri Oct 30 2020 Mamoru TASAKA <mtasaka@fedoraproject.org> - 0.7.5-1
- 0.7.5
- Once revert upstream change about setting initial visibility to false
(upstream bug 86)
* Sun Aug 9 2020 Mamoru TASAKA <mtasaka@fedoraproject.org> - 0.7.4-3
- syck is needed, adding to Requires again
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.4-2.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Mon May 11 2020 Mamoru TASAKA <mtasaka@fedoraproject.org> - 0.7.4-2
- Fix Requires, expecially, add R: rubygem(gtk3) (bug 1833761)
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.4-1.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Wed Jan 15 2020 Mamoru TASAKA <mtasaka@fedoraproject.org> - 0.7.4-1
- 0.7.4, move to github mvz fork

View file

@ -1,2 +1 @@
SHA512 (alexandria-0.6.9.tar.gz) = d4a972d3a276bfd2ba36b7da6425230e16139f5a8f5174f059a6046f16fcc43299872f5082d87dc2b69d1c0b568ba652d4ab4d545a4b7c35a615ebd4e707dbd7
SHA512 (alexandria-0.7.4.tar.gz) = 7bbb6e8b201dbd7d4547dbc546b6ec7affed765baa57dcfd3448cb3fb2f2557150bd7649a238fd85b568dba3c48a9805977d42cb7347df6df31aba03ec2da953
SHA512 (alexandria-0.7.9.tar.gz) = c1619b68778c1b94b6dff32c7be698afe29488c96c1719fcf65b6a03b3078c58053a5e76e9771a00a06dc654f95329af381c6659521f137df8eccca351811a18