2011-10-15 13:54:34 PDT
Found some new issues and fixed them. Now there are fixes for
all open issues.
The good
Short list of what has been fixed:
* Backward incompatible changes in MySQL and PHP. Minimum system requirements haven't changed an OpenBiblio should now run fine on MySQL 5.5 and PHP 5.3 (and even PHP 5.4).
* [Circulation] issues introduced in 0.7.0: 45, 46, 50, 51, 54 (Override Due Date and rewritten scripts for Check In and Check Out that use timestamp date calculations)
* [Circulation] issues introduced in older versions: 17, 22, 55, 56.
* [Cataloging] Issue 2: allow characters -/._ in barcodes, make barcode validation optional.
* [Cataloging] Issue 3
* [Cataloging, OPAC Search] Issue 42
https://bitbucket.org/mstetson/obiblio/issue/42/author-search-incomplete-results
* Based on the fix for issue 42, other search types have been modified
* New search type: Call Number search (default in barcode lookup)
* New search type: Keyword search (default)
* Bonus: new PDF layouts for labels and member cards
Complete list of changes:
https://bitbucket.org/jgvdweij/obiblio/changesets
The bad
* Issue 1 is fixed in 1.0-wip, will not be fixed for 0.7 so this is not 100% MARC compatible.
* UTF-8 support is incomplete. Reports system only shows characters that can be translated to single byte. Issue 19 search case sensitive?
* OpenBiblio doesn't scale well. Author search is a bit faster with the fixes for issue 42 and changes for improving query speed. Other search types now return more hits, but are slower than before.
Fundamentally the queries are: select * from table where table.field like '%word%';
queries in this form do not use an index
Still acceptable on very old hardware, with a database of 20.000 imported full MARC records.
See first message on this thread for an idea how to change OpenBiblio to take away the scale problem.
The ugly
* With the fix for issue 42 BiblioSearchQuery needs many additional changes to keep query speed acceptable.
But on the other hand, compared to 1.0-wip it finds more hits (issue 42 also applies to 1.0-wip, for all search types) and it doesn't use temporary tables.
* OpenBiblio's OPAC works different than experienced users of library catalogs might expect. It might be good that searching for "law" finds "lawyer", but is it good that "sea" finds "research"?
But on the other hand, no one ever complained about this (perhaps using web search engines makes us more tolerant for bad results?). And the catalog is really simple to use for novices.
* Timezone problems: fix 15 is only a temporary workaround
https://sourceforge.net/projects/obiblio/forums/forum/164978/topic/4700926?message=10732739
Testing
Short guide for testing:
get
https://bitbucket.org/jgvdweij/obiblio/get/tip.zip
follow install_instructions.html (not updated, but roughly OK)
Run install
* Mandatory for upgrading from OpenBiblio 0.6.1 or older versions
* Recommended for upgrading from 0.7.0 (0.7.0 was not an official release, only the source code has been published).
Test suite (automatic testing)
The test suite is not updated to test features introduced in 0.7, but running the tests is possible.
* rename folder obiblio to openbiblio
* browser should allow popups from the URL OpenBiblio is on
* run /openbiblio/tests (deletes all information from the database!)
* (sometimes) reduce Selenium speed slider
* (sometimes) close browser and restart test from the beginning
Manual testing
It might be helpful to read the messages published with the changesets: these say what issue they fix.
https://bitbucket.org/jgvdweij/obiblio/changesets
http://bitbucket.org/mstetson/obiblio/issues
Status for the majority of the fixed issues has not been adjusted. Please act on this, when you can confirm or reject a fix.
Tested succesfully on
XAMPP for Linux 149a: Apache 2.0.52, MySQL 4.0.21, PHP 4.3.9
XAMPP for Linux 173a: Apache 2.2.14, MySQL 5.1.41, PHP 5.3.1
EasyPHP 5.4alfa3 on Windows 7: Apache 2.2.19 VC9, MySQL 5.5.13, PHP 5.4.0 alpha3 VC9