Release Notes for Current DLXS Release

From DLXS Documentation

Revision as of 16:25, 12 August 2008 by Pfarber (Talk | contribs)
Jump to: navigation, search

Main Page > Release Notes for Current DLXS Release

Contents

General Information

TextClass is substantially identical to release 13 except for bug fixes as noted below. ImageClass provides new image viewing functionality. FindaidClass improves handling of the EAD DTD and includes subject browsing. BibClass is unchanged and is being de-emphasized.

Release 14 is comprised of:


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_6_7) 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

  • AuthNZ.pm
    • IE needs escaped return login url parameter to be the last cgi param. So now it is.
    • Implementation of session stored return login url. Ran into a problem with long URLs in IE, so had to do this.
  • CollsInfo.pm
    • removed setting of utf8flag for data out of utf8 mysql table
    • Added StoreFieldValue routine. It allows middleware to update a Collmgr field value for a single collection and for the current user (production, release, dev/user). The benefit of doing it in Collsinfo is that the cio knows about the current user, making it easy to update only the current user's row.
  • DLXSApp.pm
    • emit full path to main XML template for <TemplateName> element
    • changed TemplateName to TemplatePath
  • DbUtils.pm
    • added random id generation for bookbagdb table. not using auto increment anymore. avoiding potential replication conflicts.
    • changed related to the upgrade of dbd::mysql. basically, stop throwing the utf8 switch on data coming out of mysql.
    • adding quoting of table names, though not exhaustively.
    • fixed a bug. optimizeTable would in some cases alter column to be varchar with not enough chars.
  • DlpsSession.pm
    • Changed GetCookieDomain to use $cgi->virtual_host() instead of $ENV{HTTP_HOST} because the env variable includes the port but $cgi->virtual_host does not. Port number should not be specified in cookie domains.
  • DlpsUtils.pm
    • Changed SoftASSERT so that it forwards the return value from ASSERT.
    • new feedback cgi code. generalized for use outside of just mdp.
    • remove duplicate code
    • Add RemoveXMLPi for Kwic processing
    • Added a simple routine called DebugOut that prints a string within a div (class=debug). Optionally include the name of the sub/method being debugged just by throwing a switch.
    • Moved binmode statement out of dlpsutils (where it messed up image class, probably due to double encoding) and put it in collmgr where needed most.
    • Implementation of session stored return login url. Ran into a problem with long URLs in IE, so had to do this.
    • Added sub CarryOverNeededAuthRetParams. (All other params were being dropped when processing a key_authret param, making Athens auth fail.)
    • no longer deleting key_authret from session once used, because in rare cases it is used again.
    • make no referring URL "Assertion Fail Report" not send email
  • ItemView.cfg
    • add note about pdfopt
    • add defaults for jpg as a image format source type
  • ItemView.pm
    • Add code to set and get the $targetImageFormat so that the DeliverFileHandler knows what format to deliver. It has a different signature that asks for the format but the handlers are called generaiclly and do not receive the format as a parameter form the caller so ...
  • ItemViewApp.pm
    • Set defaultpageview if no view is set in ValidityChecks
    • fix path to cached image to include host when mode is remote
  • LibGlobals.cfg
    • new feedback cgi code. generalized for use outside of just mdp.
  • LibVersion.pm
    • $LibVersion::VERSION = 4.1201; $LibVersion::DLXS_CDROM = '14';
    • 14
  • ProcIns.pm
    • Allow string refs for handlers that are subroutines as has well as those that are object emthods
    • Removed StripPIPairContents etc. obsolete
    • add GetPIs
  • XPat.pm
    • m,,gs to get all the error messages back from xpat
  • XsltPIFiller.pm
    • url for Atom/Rss
    • changed TemplateName to TemplatePath
    • changed TemplateName to TemplatePath
    • removed setting of utf8flag for browse list data.
  • oaiGlobals.conf
    • new
  • stripdoctype.pl
    • regex will strip complicated DOCTYPE declarations
    • moved to $DLXSROOT/bin/f/findaid instead of ../lib since this is findaid specific
  • BookBag/BookBagIC.pm
    • added new method for checking ownership of bookbag
  • BookBagItem/BBItemTC.pm
    • Use maintitle, mainauthor, mainheader to add to bookbag
  • DLXSApp/FullTextApp.pm
    • added podBindings sub
    • fix for debug=xsltwrite without remote user. Now using REMOTE_USER if defined or $ENV{'DLPS_DEV'} if its defined and not 1 otherwise using "anonymous"
  • DLXSClass/FullTextClass.pm
    • Removed line that was stripping out spaces in idno in RestrictBaseQuery. This was causing kwic view queries where the <eadid> contained a space to fail.
  • Stats/Config.pm
    • Explicitly specify the format of the config file.
    • Add method to return config file name.
  • Stats/DB.pm
    • Add method delete_expired_counter_requests()
    • Modify query to add a COUNTER job to use 99999 if institution is undefined.
  • Stats/MainPage.pm
    • State that COUNTER reports are available starting in May 2007.
    • Big rewrite to display aggregate stats rows. Also combined some code and got rid of the extra.
    • New code to do COUNTER Database Report 1; also, auth algorithm changed again to show aggregate stats *and* stats for a user's institution if their institution can be determined from their IP address.
    • Add an additional message to COUNTER request feedback.
    • Correct name of DR1.
    • Don't provide DR1 yet - its not ready.
    • Show COUNTER section in form if user is logged in but IP address is unrecognized.
    • Slight modification: If we know the user's institution, but they do not have stats for a given collection and time period, default to 0 for all counts so a row is still displayed for them in the results page with zeros in all fields.
  • Stats/Resource.pm
    • Get 'public' attribute from config files to determine if a collection is public or not.
    • Allow upper- or lower-case for report types in config file.
  • Stats/Map/Auth.pm
    • Constructor now takes Stats::Config object.
  • Stats/Map/Titles/colldb.pm
    • Temporarily set $ENV{'HTTP_HOST'} to $$self{'host'}, which is set from the query "SELECT DISTINCT host FROM Collection WHERE userid = 'production' and collid = ..." in case $ENV{'HTTP_HOST'} is not set.
  • Stats/Reports/COUNTER.pm
    • Include support for COUNTER Database Report 1.
  • Stats/Reports/COUNTER/BR1.pm
    • Clean up Database Report 1 a bit.
  • Stats/Reports/COUNTER/BR2.pm
    • Clean up Database Report 1 a bit.
  • Stats/Reports/COUNTER/BR5.pm
    • Clean up Database Report 1 a bit.
  • Stats/Reports/COUNTER/DR1.pm
    • Add module for COUNTER Database Report 1.
    • Clean up Database Report 1 a bit.
  • Stats/Reports/COUNTER/Report1.pm through Stats/Reports/COUNTER/Report5.pm
    • Pass Stats::Config object to COUNTER creation methods rather than creating other Stats::Config files within these methods.
    • Now must pass Stats::Config object to Stats::Map::Auth constructor.
    • Return undef if Resource object is not created in the 'match_collid_to_resource()' method - which, in this case, happened because I had removed the collid from the stats config.
    • Clean up Database Report 1 a bit.
  • Stats/Reports/COUNTER/ReportTools.pm
    • Die if location of COUNTER reports cannot be obtained from the config file.
    • Pass Stats::Config object to COUNTER creation methods rather than creating other Stats::Config files within these methods.
    • Include support for COUNTER Database Report 1.
  • Stats/Reports/Custom/Excel.pm
    • Big rewrite to include aggregate stats rows and use the same struct that is created for HTML reports.
    • Get rid of 'aggregate_only' concept.
  • Stats/Reports/Custom/Tools.pm
    • Remove file - no longer needed
  • Stats/Tools/AuthTools.pm
    • Just added comment.
    • Now all users are allowed, but if they are not recognized then they can only see aggregate stats for public collections.
  • Stats/Tools/DateTools.pm
    • Fix bug in day() method that returns the current day of the month (it was erroneously adding 1).
  • Stats/Tools/ResourceTools.pm
    • Big modification to allow unrecognized users to see public collections (aggregate stats only).
    • Bug fix: empty the list of coll ids previously built before grabbing all coll ids in the cache, because we don't want to include any that aren't in the cache (but were, say, in the AUTHZD_COLL variable).
    • When doing regular expression with coll IDs, use /^..$/ to get the exact coll ID.
    • Get rid of 'aggregate_only' concept. Return an array of all coll ids for which the user is an admin.
  • Stats/XML/BuildXML.pm
    • This is now used for the Excel custom reports as well as the HTML reports. Now includes aggregate stats rows.
    • Get rid of 'aggregate_only' concept.
    • utf-8 encode collection name before passing to LibXML method.
    • Fix use of utf8::upgrade for collection name
    • Slight modification: If we know the user's institution, but they do not have stats for a given collection and time period, default to 0 for all counts so a row is still displayed for them in the results page with zeros in all fields.
  • upgrade_6_7
    • Initial
  • upgrade_6_7.cfg
    • Initial
    • add nameresolver, oai, oaisets table creation
  • BrowseUpdate.pm
    • Insertion is now skipped if browse field has no value. Also, field value counts are tallied and reported.
  • browseutils.cfg
    • added "an"
  • ub
    • more input checking
  • updatebrowsedb.pl
    • Insertion is now skipped if browse field has no value. Also, field value counts are tallied and reported.
    • more input checking
  • BrowseUpdate/ImageMysqlBU.pm
    • Added a comment about browse_split.
    • commented out a debug statement.
  • main.cfg
    • remove misc/db CSV related opertations
    • remove replace( "$DLXSROOT/bin/i/image/html2tab.pl", qq{\#!/l/local/bin/perl}, $perlhashbang );
    • remove replace( "$DLXSROOT/bin/i/image/tab2html.pl", qq{\#!/l/local/bin/perl}, $perlhashbang );
    • restore Text::CSV_XS
    • remove ["Net::hostent", 1.01] it is part of Perl
    • update Text::CSV_XS should be 0.23
    • Removed all references to outdated validate.pl script Changed references for samplefa.*inp files to new file names samplefa.ead2002.dcl and samplef.concat.ead.dcl
    • fixed move of fixdoctype.pl from s/samplefa to f/findaid
    • remove replace( "$DLXSROOT/bin/f/findaid/isolat128bit.pl", qq{\#!/l/local/bin/perl}, $perlhashbang );
    • removed sampletc obsolete (now just sampletc_utf8)
    • add setup_newcoll for findaidclass
    • Added section for findaid demofa collection
    • ["XML::LibXSLT", 1.63], ["XML::LibXML", 1.65], from ["XML::LibXSLT", 1.58], ["XML::LibXML", 1.58],
    • sru, broker20 optional, broker20 deprecated
  • dlxsglobals.xml
    • url for Atom/Rss
    • changed TemplateName to TemplatePath
    • changed TemplateName to TemplatePath
    • mtag changes
  • feedback.xsl
    • new feedback cgi code. generalized for use outside of just mdp.
    • these files were moved to web/i/image.
  • transform.xml
    • add <xsl:strip-space/>
    • <xsl:strip-space elements="*"/>
  • transform_xhtml.xml
    • add <xsl:strip-space/>
    • <xsl:strip-space elements="*"/>
  • transform_xml.xml
    • add <xsl:strip-space/>
    • <xsl:strip-space elements="*"/>
  • xsl2htmlutils.xsl
    • bboru changes via email from Wisconsin: added test for value of key('get-lookup',Label) else it returns an empty value if there is a dot in the Label value, as in 'etc.' <xsl:when test="contains(Label,'.') and key('get-lookup',Label)"> <xsl:when test="contains(Label,'.')"> use 'selected' for valid xhtml <xsl:attribute name="selected">selected</xsl:attribute> <xsl:attribute name="selected">true</xsl:attribute>
  • css/feedback.css
    • new feedback cgi code. generalized for use outside of just mdp.
    • these files were moved to web/i/image.
  • js/feedback.js
    • new feedback cgi code. generalized for use outside of just mdp.
    • these files were moved to web/i/image.

TextClass

XML template and XSL stylesheet changes

CGI/Middleware

ImageClass

CGI/Middleware

Known Problems


Speed/Performance Enhancements

Other

Data Preparation

Speed/Performance Enhancements

Other

BibClass

Oai

broker20

  • No changes.


Collmgr

  • Supports version 7.0 database for DLXS release14.

FindaidClass

XML template and XSL stylesheet changes

CGI/Middleware

XClass

  • No changes.

METS Pageturner and Collection Builder

  • Continuing development work in Pageturner. New application: Collection Builder allowing users to add items to a personal collection via widgets in Pageturner. These applications are not part of DLXS. They use a different code base mainly under DLXSROOT/{web,bin,cgi}/m/mdp and DLXSROOT/lib/App. Stub routines are required in Pageturner to abstract the database connections and an installation of Solr/Lucene is required to support the collection search in Collection Builder. The user interface makes extensive use of Yahoo User Interface (YUI) functionality.

Top

Personal tools