Thu Jul 19 01:41:03 2001 We are proud to announce the first beta release leading to Interchange 4.8. This is the best Interchange we have ever produced, and it has many, many, improvements and fixes over 4.6 while maintaining a high degree of compatibility. The new "Foundation" demo catalog simplifies many aspects of HTML for generating catalogs. Uses CSS to define colors, font styles, and other parameters. Includes components that drop in with the page editor to provide configurable feature additions on a page-by-page basis. You can download it here: http://ftp.interchange.redhat.com/pub/interchange/4.7/ Here are the highlights -- there are actually many, many, more changes and additions. See the WHATSNEW file for an extensive account of changes. Many are documented in new documentation available at: http://interchange.redhat.com/cgi-bin/ic/dev-4.8/index Server Core ----------- * New pre-forked server mode uses Apache-style multiple server dispatch to dramatically increase performance on busy systems. Measurements show improvements of up to 7X in server overhead. * New SOAP protocol support allows two-way communication with all sorts of other web "objects". * Server should now always run safely in the Foreground. * Full pedantic HTML 4 compliance (ability to change URL data separator). Database -------- * Transactions now fully supported. Can open a transaction-capable database in transactions mode [flag type=transactions table="table"] and it will commit all changes not done in transaction mode and reopen under transaction constraints. [flag type=commit table=table] commits, [flag type=rollback table=table] rolls back. Order routing support included. * Can reference foreign keys with [data table=foo col=bar key=baz foreign=buz]. * Improve autonumbering support to automatically use sequences or autonumber field types. * All base-table database updates done by UserDB and UI are now done in one query via set_slice. Extra-table values still use set_field. * Can preload database tables with read-only start text, e.g. a base country or state file, or in the UI with icmenu and ichelp. * Add INDEX directive for SQL databases -- no need to define custom SQL. * Added SDBM database option for those poor Solaris folks. * Added database attributes and logic to fall back to a second database server. Transactions and Payments ------------ * Standard payment gateway support for 5 major payment gateways, with support for multiple instances of accounts, common parameters for easy gateway changes, and much more. Payment gateways are much more programmable with addition of an explicit [charge ...] tag which can implement returns, voids, split payments, and other special handling. * Encryption is much more automatically handled -- if you use GPG or PGP, all you typically have to do is supply and encryption key ID from your keyring. Product Display --------------- * Improved option handling. Matrix items can have separate inventory and option combinations, yet share common data and are only show once on search lists. Any item can have multiple and infinitely varying options, i.e. you are not constrained to "size" and "color" and whatever fields you define in the database. UI support for each of these. * Alpha state modular options that can use modular bills of materials generated by ERP systems. * [tree] tag allows you to build product display trees and display exploding lists. * New [image] tag allows automated product image handling including auto-sizing and alt/title generation. Programming ----------- * New options to the [perl] tag that make it a bit easier to work with when debugging. * Solved the great [if ] [othertag][else][/else][/othertag] [else] [/else] [/if] problem. The behavior should be much improved in [if ...] tags. Will not now snarf the [else] from another tag that uses that. * All usertags can be used in embedded perl without "tables" or other Safe stuff. Forms ----- * Added new mv_form_profile variable that sets profiles with any action. Designed for easy checking of variables in submits. * New format check routines, largely intended to work with new mv_form_profile capability: regex, length, unique, defined. I18N (Internationalization) --------------------------- * Major work on localization, largely done by Stefan Hornburg. Most of the UI messages are localized, and translation files produced which give a skeleton for further work on other domains. * Add de_DE (German) UI locale by Stefan. * Add da_DK (Danish) UI locale by Kim Lauritz Christensen . * Add nl_NL (Dutch) UI locale by Ton Verhagen. * Non ISO-8859 data can be entered in table editor. Miscellaneous ------------- * Instituted VAT and extended taxing, including UI support. * Net::SMTP can be used instead of Sendmail to send mail. * Fixed most of UI so it can operate without cookies. * Add new tag "assign". It allows you to assign to subtotal, shipping, handling, and salestax. Security -------- * New [restrict] tag allows only certain tags to run within a region -- default with no arguments is [page ...], [area ...], and [value ...]. * Many password/user checking improvements, better logging. * Logging directive allows direct logging of all UI activity for tracing. * Improved checking of tags embedded in database items. * Disallow admin UI access by default when there is no 'access' database. Admin Interface --------------- * Added a "wizard" which allows step-by-step definition of many parts of a standard catalog, including shipping, tax definition, and payment gateway. Based on menus -- will be extended as time goes on. * New [table-editor] tag allows easy generation of form-based data entry; it is used on almost all UI screens that generate data entry. Wizard mode (used in the new Wizard) allows collection of data with error checking, Next/Back/Cancel processing, and much more. * Move UI menus into icmenu database. This allows enabling and disabling items, even on a user-by-user basis. * Improved page and template editors allow creation of templates and definition of new components with auto-generated component menus. Can limit editors control on a page-by-page basis. Packaging/Portability --------------------- * Debian packages can produce a demo. * Runs on Windows if Cygwin toolset and Perl are installed. * Verified to run on Mac OS X. * RPM specfile reworked to build 3 RPMs: core and foundation skeleton (architecture-independent) and foundation live demo (i386). For Red Hat Linux 7.x users, we've made RPM packages of the CPAN Perl modules that Interchange uses (and some others we find handy): http://ftp.interchange.redhat.com/pub/perl/ As always, we look forward to feedback on the interchange-users list. The Interchange Team