Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Jun 1, 2008
  1. @racke
Commits on May 18, 2008
  1. This commit was manufactured by cvs2svn to create branch

    cvs2svn authored
    'STABLE_5_6-branch'.
  2. @docelic

    * Remove NOT NULL constraint for Postgres userdb table and allow

    docelic authored
      Postgres setups to work correctly out of the box.
  3. @jonjensen

    Fix regression in composite primary key DBI module.

    jonjensen authored
    Unit test 154 broke due to a hashref being modified directly instead of
    copied.
    
    Also note incompatible change in UPGRADE document.
Commits on May 17, 2008
  1. @jonjensen

    Update copyright year.

    jonjensen authored
  2. @jonjensen
  3. @jonjensen

    Standardize indents for commented debug statements.

    jonjensen authored
    Disable error log output for normal searches.
    
    Clarify origin of module.
Commits on May 15, 2008
  1. @racke

    fix package name

    racke authored
  2. @racke
  3. @racke

    new upstream release

    racke authored
Commits on May 14, 2008
  1. @perusionmike

    * Remove QueryUPS shipping options from standard catalog, allow

    perusionmike authored
      the module to be missing.
Commits on May 13, 2008
  1. @jonjensen
  2. @jonjensen
  3. @jonjensen
  4. @jonjensen

    Change syntax for option to use custom SQL as a counter.

    jonjensen authored
    Resolves syntax conflict with MySQL pseudo-counters:
    
        db_name:table_name(column_name)
    
    Syntax is now:
    
        dbname:SELECT function_name(args)
  5. @jonjensen

    Optimize empty [perl] blocks.

    jonjensen authored
    Skip costly eval of code entirely if perl tag was called with no code,
    as is often done for the side-effect of opening database handles.
Commits on May 12, 2008
  1. @perusionmike
Commits on May 11, 2008
  1. @perusionmike

    * Make MySQL do right thing with mod_time by setting to PREFER_NULL and

    perusionmike authored
      making the widget in the table editor be 'value'.
Commits on May 10, 2008
  1. @perusionmike

    * Make date widget formatting shorthand apply to time widget as well.

    perusionmike authored
    * User widgets called time* are unaffected if they don't use a non-word
      character in the callout.
    
    * Examples:
    
    		time.ampm    { type => 'time', ampm => 1 }
    		time.blank   { type => 'time', blank => 1 }
            time.8-23    { type => 'time', start_hour => 8, end_hour => 23 }
            time.half    { type => 'time', minutes => 'half_hourly' }
  2. @perusionmike

    * Add type_empty parameter to table editor. This allows the selection…

    perusionmike authored
    … of a
    
      different widget type if the length of the data is zero.
    
      Found on the extended page of the meta editor for the field.
    
      An example of use would be a "created" field in a table, which is a
      DATETIME type. If the value of the field is the empty string or NULL,
      set type_empty to "datetime" to put a date widget in. Make the normal
      widget type be "value", which allows you to just display the data when
      the value is already set.
  3. @racke
  4. @perusionmike
Commits on May 7, 2008
  1. @jonjensen

    Add new iclint tool for checking ITL syntax (roughly).

    jonjensen authored
    By Greg Sabino Mullane.
  2. @perusionmike
Commits on May 6, 2008
  1. @msjohns1

    * Added commented-out description and pragma usage for new dml pragma

    msjohns1 authored
      in catalog.cfg from Mike.
    
    * Removed the option available in some polymorphs of set_slice that allowed
      key/value pairs to be passed in as a simple array.
  2. @perusionmike

    * Add IniConf.pm back in as a static distributed module. Since it

    perusionmike authored
      is no longer updated, this should be riskfree.
    
      Long term look at switching to another format, since all this is
      used for is setting defaults for MakeCat.
  3. @jonjensen
  4. @jonjensen
  5. @jonjensen
Commits on May 5, 2008
  1. @jonjensen
  2. @msjohns1

    Extend set_slice() to allow control of upsert behavior.

    msjohns1 authored
    Calls to set_slice() are forced to use the upsert model of data
    manipulation.  This can be a highly desirable editing model, but it also
    has disadvantages, particularly in the context of the 'set' and 'autoset'
    form actions, which imply--but don't enforce--a distinction between
    insert and update at the data-storage level.
    
    The effects on insert can be particularly insidious, where one faces
    having the assumed behavior on duplicate primary keys thwarted by a
    surreptitious conversion to a SQL update. In such an instance, instead of
    existing data being protected by a duplicate PK error, the extant record
    is replaced by the data from the insert. Detecting this condition,
    particularly on a large table, is virtually impossible.
    
    While the results of an update-to-insert adjustment are more benign, it
    still presents a nuisance if a strict update is intended. To correct it,
    one merely needs to delete the newly created, unanticipated row, and such
    behavior does not destroy existing data.
    
    To enforce update or insert, set_slice()'s $key arg can be optionally
    passed as an array ref, essentially replacing the existing call:
    
      set_slice($key,$fary,$vary)
    
    with
    
      set_slice([$opt, $key],$fary,$vary)
    
    where $opt->{dml} is set to the desired value. $opt as a hash ref is
    used so that any possible future opt-style params can simply be loaded
    into the existing calling structure.
    
    Change details:
    
    * Default behavior for set_slice() is 'upsert'. If you do nothing to
      your code or catalog, the behavior remains unchanged.
    
    * $opt->{dml} can be 'insert', 'update', or anything else. If it's
      anything else, it has no specific behavior currently. It defaults the
      value 'upsert' just to be somewhat self-documenting and open up the
      possibility of behaviors based on that value in the future.
    
    * Despite the decision to key it off of 'dml', this has no effect on
      deletes. Deletes have no ambiguous behavior, reflected in the fact that
      deletes have their own dedicated method.
    
    * Change only has core impact when processing requests through
      Vend::Data::update_data(). However, any direct calls to set_slice() may
      avail themselves of the new feature simply by overloading the $key arg
      in the same fashion.
    
    * Behavior of Vend::Data::update_data() can be in three modes,
      controllable by the new 'dml' pragma.
    
      + No pragma setting works in current mode, with upsert behavior.
    
      + Pragma 'dml=preserve' restricts inserts to insert-only, but allows
        the fall-through behavior from update to insert. As the name preserve
        implies, it means no existing data can be clobbered.
    
        The advantage to preserve is the easy use of set_slice() as a
        record-cloning operation. In the table editor, one can clone a
        record by simply changing the PK. Without this behavior, one must
        completely re-enter existing data to the new key's name to clone.
    
      + Pragma 'dml=strict' forces update or insert to only perform the
        requested action.
Commits on Apr 30, 2008
  1. @jonjensen
  2. @docelic

    * Make the existing simple html2text filter to also strip

    docelic authored
      italic, bold and underline from input
Commits on Apr 28, 2008
  1. @jonjensen

    Release text changes:

    jonjensen authored
    * Update minimum Perl version required note to 5.8.0.
    
    * Update credits: Show icdevgroup people only once; add missing icdevgroup
    people; streamline acknowledgements to reflect many years of icdevgroup
    maintenance. (Stefan, feel free to revert my paragraph removal if you like.
    It seems appropriate, but if you disagree that's fine.)
Something went wrong with that request. Please try again.