Release Notes for Current DLXS Release
From DLXS Documentation
Main Page > Release Notes for Current DLXS Release
Contents |
General Information Release_15
TextClass is substantially identical to release 14 except for enhancements and bug fixes as noted below. Note that searching for the string Release_15 will produce a list of changes to this wiki that are relevant to DLXS Release 15.
Highlights of release 15 include:
- Pageturner
- Other stuff
- More stuff
Release 15 is comprised of:
- BibClass version 3.10.0
- Oai version 1.2.0
- IdResolver 1.2.0
- Collmgr version 3.5.0
- FindaidClass version 6.8.0
- ImageClass version 5.1.0
- Lib version 4.20.0
- TextClass version 4.14.0
- XClass version 2.2.5
- XPAT version 5.3.2
- SRU version 1.3.0
- Stats version 1.5.0
- dlxsd version 1.0.3
- Other items released
- mrsid_retrieve version 1.3.1
- tif2web version 1.0.4
- kakadu version 4.0.2
- cjpeg version 6b
- dlps-auth version 1.5
- xpatutf8check version 1.0
- utf8conditioner version 1.0.1
Known Problems
- None
Database Installation Notes
MySQL is the supported database type. In order to run DLXS you will need to have a MySQL server installed. Sample data is delivered in the form of a MySQL dump file which can be directly imported into a MySQL database. The database upgrade script (upgrade_7_8) operates only on a MySQL database. These issues are documented in detail in the installation instructions and the upgrade instructions.
New and Changed Functionality
XPAT
- No changes.
Lib
DlpsUtils.pm
- Make no referring URL Assertion Failure Report not send email
- Now log Assertion Failure Reports
- If $keyValuePairs are not requested, an array is returned. Fixed bug that returned array in arbitrary order instead of in order they were listed in Collmgr.
- Updated to display feedback form with captcha on AFR error page
- Added noAssert option to MkdirPath() to prevent inf. loop
- sub BuildClassCacheWebPath (for emitting in XML).
- Added RemoveTrailingHalfEntities + RemoveLeadingHalfEntities; rewrote RemoveLeadingAndTrailingHalfTags to use both.
- During fallback, check any dirs listed in the 'customfallbackwebdirs' filed in collmgr (after checking group dirs, but before checking class dirs).
- Fallback: Grab values from LibGlobals for values that are undef or not passed in from app modules.
LibGlobals.cfg
- Updated to read in the AFR error message from a (HTML) file
- changed path to systemerrorfeedback.html file, adding f/feedback.
- ScriptNames, used in search forms, now have vlaues defined here instead of in web/lib/dlxsglobals.xml.
DlpsUtils.pm, LibGlobals.cfg
- rewrite reCAPTCHA code to use a global hash for pub/priv keys in LibGlobals and add access routines in DlpsUtils.pm
XsltPIFiller/FullTextAppXsltPIFiller.pm
- added initialize and field for subclass gSortFields
BookBag.pm
- Remove underscore from file extension for download file.
DbUtils.pm
- Backticked a table names and column names in a bunch of places.
CollsInfo.pm, DLXSApp/FullTextApp.pm, DLXSClass/FullTextClass.pm, XsltPIFiller/FullTextAppXsltPIFiller.pm
- Fix linking to be relative to preserve https
XsltPIFiller/FullTextAppXsltPIFiller.pm
- fix linking to be relative to preserve https
- BuildHelpLink_XML: more flexibility for location of help files.
- Use fallback to find the appropriate help dir. Then use logic to find the best file within that dir.
- BuildPdfLink_XML: fixed algorithm to find best help file in the fallback help dir.
ItemView.cfg, ItemView.pm, ItemViewApp.pm
- Serving full item PDFs (if available in the repository).
Stats/Reports/COUNTER/ReportTools.pm
- Display title ID if title name cannot be determined, rather than just skipping that title.
DLXSApp.pm, ItemAuth.pm, DLXSApp/FullTextApp.pm, DLXSClass/FullTextClass.pm, XsltPIFiller/FullTextAppXsltPIFiller.pm
- Moved item-level auth checking into module ItemAuth.pm, for use in auxillary cgi scripts.
DLXSApp.pm, DLXSApp/FullTextApp.pm, DLXSClass/FullTextClass.pm, XsltPIFiller/FullTextAppXsltPIFiller.pm
- Revert ItemAuth changes
DLXSApp.pm, DLXSApp/FullTextApp.pm
- Re-virtualized ItemLevelRestrictionTestHook here.
- Put sub ItemLevelRestrictionTestHook back here.
DLXSApp/FullTextApp.pm
- Fixes in ItemLevelRestrictionTestHook.
ItemAuth.pm
- TestItemLevelRestriction:: test whether the appObject is defined before calling methods on it; otherwise use provided default values.
Stats/DB.pm, Stats/MainPage.pm, Stats/Resource.pm, Stats/Reports/COUNTER/BR1.pm, Stats/Reports/COUNTER/BR2.pm, Stats/Reports/COUNTER/BR5.pm, Stats/Reports/COUNTER/DR1.pm, Stats/Tools/ResourceTools.pm, Stats/XML/BuildXML.pm
- Changes to record stats by year/month now instead of year/month/day, to reduce the number of rows in the database.
XsltPIFiller.pm
- Decode browse values as UTF-8 before they're written to the XML output (so multi-byte characters are represented correctly).
- Checks whether the browse value is already unicode (uft-8 flag is set) before decode it as unicode; for some reason, for serialissue, the flag is already set in production, but not in development(?).
- sub BuildScriptNames_XML
testUTF8.pl
- Program to test DBI connection/charset issues.
XsltPIFiller/FullTextAppXsltPIFiller.pm
- sub BuildCacheWebPath. To emit the href to the cache in the XML, instead of forcing XSLT to munge it from the path on disk.
LibGlobals.cfg, XsltPIFiller.pm
- Typo in gScriptNameFindaid.
CioFactory.pm, DlpsUtils.pm, GroupsInfo.pm
- Examine AUTHZD_COLL for groupids, then populate authzd coll list with its member collids. (Allows Cory to only make one access control rule for large groups.)
DLXSApp.pm, DlpsUtils.pm, XsltPIFiller.pm
- More generic handling of browse navigation --- UI is able to present non-[a-z] characters. Most of these are UTF8 characters; query parameters are now protected accordingly. Modified DlpsUtils::RemoveLeadingAndTrailingHalfEntities to ignore partial entity-like strings that have spaces in them.
XsltPIFiller/FullTextAppXsltPIFiller.pm
- Emit 'crosscollection.search.title.str' (via langmap.en.xml) for TITLE_XML PI when xcollmode=colls to give title in <head> of page=home or page=browsecolls.
Stats/MainPage.pm
- Don't hard-code years for custom report. Do from 2006 to year().
XsltPIFiller/FullTextAppXsltPIFiller.pm
- Change 'amount' pulldown building to reflect values that are in the map starting at 5 in increments of 5 up to 120
ItemView.cfg, ItemView.pm, ItemViewApp.pm
- changes to make pageview work like pageturner.
ItemView.pm
- Using the collmgr configurable display sizes.
DLXSApp.pm, XsltPIFiller.pm
- DLXSApp.pm - GetBrowseInfo: sort results of ItemBrowseCount scan so [a-z] are guaranteed to come first XsltPIFiller.pm - BuildBrowseNav_XML: more accurate calculation of initial single-letter browse list (avoiding conflicts between how MySQL and Perl see some unicode characters)
ItemView.pm
- dynamic page config.
ItemView.pm
- 1. changed quality from 85 to 100 so picture would be sharper. 2. Put in a check so that the defaultPage size is one available from the dynamically computed amounts.
DLXSApp/FullTextApp.pm
- Different ways to sort idnos follr picklists; SPO (by default) will use index order, but the default will be to sort by idno.
- Changed FullTextApp::HandlePicklistPage to use array of array refs instead of hash to maintain order and updated all calling code
- Refactored and merged picklist logic with base class picklist logic
- All SPO picklist customization using new Volume/Issue mode
DlpsUtils.pm, ItemAuth.pm, XsltPIFiller.pm, XsltPIFiller/FullTextAppXsltPIFiller.pm
- New collmgr field to disable quickbrowse in dynamic browse page; fixed an authorization issue (related to reusing AUTHZD environment variable), so now picklists conditionally show PDF link; some SPO picklist customization (to work with PDF links)
DLXSApp.pm
- Pass arguments that enable custom fallback functionality in DlpsUtils.pm.
LibGlobals.cfg
- Put fallback variables here in case they aren't defined at the class level.
BrowseUpdate/FindaidBU.pm
- Added ability to generate subject browse XXX: TODO refactor subroutines ProssesAuthorField etc so we don't need separate subroutines, but just call have an if subject at place its needed
- Redid code for subject browse for cleaner code.
- Added $field as a parameter to FilterRegion so that if region is subject we don't filter out persnames, corpnames etc.
updatebrowsedb.pl, BrowseUpdate.pm
- Explicitly encode browse values as UTF-8 before writing them to the database tables.
BrowseUpdate.pm
- Modified MaybeEncode to test for utf8 flag on $value if utf8 flag is set, we shouldn't need to encode the data as utf8 if utf8 flag is not set, we now encode the data as utf8 and then set the utf8 flag to tell perl that it now has utf8
- Removed check for utf8 flag. $value = encode( "utf8", $value ) works correctly whether the input data has the utf8 flag set or not (assuming anything under decimal 255 is encoded in ascii/latin1). The problem was simply that the call to encode always unsets the utf8 flag and the solution (since we just converted to utf8) is to set it.
- Moved first and second letter lists to initialization method for easy override.
- Calculation of item browse counts now works off values aggregated from ItemBrowse values instead of looping through 'a'..'z' lists.
- - PopulateCountTable: transliterate ItemBrowse values (e.g. zó -> zo) - TruncateValueIntelligently: only remove trailing half entities - ReplaceIntoBrowseTable: call TruncateValueIntelligently on $value (regardless of use of I2)
- Restored punctuation to values in ItemBrowse; use a temporary table in PopulateCountTable to stage cleaned values before doing counts. TextClass subject queries need the original value to be successfull.
BrowseUpdate/ImageMysqlBU.pm
- Moved first and second letter lists to initialization method for easy override. Overridden to add second character of ".".
BrowseDoubleLayerNav.xsl
- Have layout better handle scenarios where there are >26 items in the navbar.
dlxsglobals.xml
- ScriptNames now populated by a PI for greater application control (in this case, to substitute the Shibboleth script alias).
- New collmgr field to disable quickbrowse in dynamic browse page; fixed an authorization issue (related to reusing AUTHZD environment variable), so now picklists conditionally show PDF link; some SPO picklist customization (to work with PDF links)
TextClass
web/t/text
- some file name
- message
ImageClass
CGI/Middleware
Known Problems
- None known so far.
Enhancements
Data Preparation
Enhancements
BibClass
cgi/b/bib
Oai
IdResolver
- added bin/n/nameresolver
- cvstag.idresolver
- new error message when nameresolver can't find an ID.
- IDResolver.pm
Collmgr
- Supports database version 8.0 for DLXS release 15.
- Added info about recordcount and mediacount
- collmgr-fields.html
- Changed documentation for browsefields to include Findaid Class subject searching and to document that first field on browsefields list is used for default browse page in Text and Findaid Class
- collmgr-fields.html
- Documented field_rel_weight for relevance ranking
- collmgr-fields.html
- Make $gReleaseUserHost quod.lib.umich.edu for us and 0 for partners. Force $gLogin to dlxsadm on this host to support dlxsadm on production host (collmgr must be in the ACL for that host to protect access to collmgr to just those who can authenticate to a production host). Add color effects when running as dlxsadm.
- addcoll.tpl
- addfields.tpl
- addgroup.tpl
- badidwarning.tpl
- checkinconfirm.tpl
- checkingroupwarning.tpl
- checkinwarning.tpl
- checkoutlist.tpl
- collmgr-dlxsadm.css
- collmgr-user.css
- collmgr.css
- collmgrdown.tpl
- contdeletefields.tpl
- deletefields.tpl
- displayclassesforrelease.tpl
- displayclassselection.tpl
- edit.fs.tpl
- insertcollidwarning.tpl
- insertwarning.tpl
- login.tpl
- mainmenu.tpl
- removeconfirm.tpl
- selectionwarning.tpl
- updatecoll.tpl
- updategroup.tpl
- viewlist.tpl
- viewreadonlycoll.tpl
- viewreadonlylist.tpl
- Corrected description of pageviewhost based on the changes to make pageview work more like pageturner.
- collmgr-fields.html
- More documentation for defatulpagesize.
- collmgr-fields.html
- New field for the image sizes to display.
- collmgr-fields.html
- Update secondarytitle documenation. This field only implemented in bibclass.
- collmgr-fields.html
- Updated collmgr-fields.html (collmgr documentation) for new field "quickbrowse"
- collmgr-fields.html
- New collmgr field to disable quickbrowse in dynamic browse page; fixed an authorization issue (related to reusing AUTHZD environment variable), so now picklists conditionally show PDF link; some SPO picklist customization (to work with PDF links)
- collmgr-fields.html
- Added customfallbackwebdirs.
- collmgr-fields.html
- version 8.0
- collmgr.cfg
- Added the functionality for a group to have hold capability.
- collmgr
- Fixed bug introduced during hold that was only one collid into the GroupColl table.
- collmgr
- After 5 sconds of waiting if dbexist is still there remove it and go on.
- collmgr
- Add debug=env
- collmgr
- Make $gReleaseUserHost quod.lib.umich.edu for us and 0 for partners. Force $gLogin to dlxsadm on this host to support dlxsadm on production host (collmgr must be in the ACL for that host to protect access to collmgr to just those who can authenticate to a production host). Add color effects when running as dlxsadm.
- collmgr
- collmgr.cfg
- logout
- Only count hits with HTTP status 200.
- stats_driver.pl
- Change to record stats by year/month rather than year/month/day, to reduce the number of rows in the database.
- stats_driver.pl
FindaidClass
Findaid Class Summary
Stats