1.1/src/Changes

- Changes in 1.1
- Enhancements
  - AFS::Command::VOS->status()
  - AFS::Object::VLDB data is now keyed on volume ID, as well as name
- Bugs
  - AFS::Command::BOS->status
  - AFS::Command::FS->(several methods)
  - AFS::Command::FS->lsmount
  - AFS::Command::FS->sysname

# Changes in 1.1

# Enhancements

## AFS::Command::VOS->status()

This method now parses the individual transaction stanzas, and the API provides access to objects that encapsulate each of them. So, instead of just finding out how many transactions are active, you can analyze each of them in detail.

## AFS::Object::VLDB data is now keyed on volume ID, as well as name

This changes the way the AFS::Object::VLDB data can be extracted. In 1.0, the API allowed AFS::Object::VLDBEntry object to be queried only by name, but 3 new methods calls allow this data to be queried by numeric ID as well as name:

        getVLDBEntryById($id)
        getVLDBEntryByName($name)
        getVolumeIds()

The API for getVLDBEntry has changed, and the single argument usage:

        getVLDBEntry($name)         # DEPRECATED!!!!

has been deprecated. If warnings are enabled (perl -w), then the API will carp at you. In the next release (1.2), that usage will no longer be supported. Upgrade your code, or pay the price.

The new usage of getVLDBEntry is one of:

        getVLDBEntry( name => $name )
        getVLDBEntry( id => $id )

The internal method `_addEntry()` now manages the data by id as well as name, but you're not supposed to know that anyway...

# Bugs

## AFS::Command::BOS->status

When querying a specific instance, if it wasn't there, the API would try to add an undefined instance object to the result, and croak. Now, you just get a result object with no instances.

## AFS::Command::FS->(several methods)

If you pass a list of paths to methods such as `whichcell(),` then the error handling was a bit intrusive. The way it used to work, in 1.0, was to return an error if we didn't see output for one or more of the paths. Now, the code is more forgiving, and if have no idea what happened for one of the given paths, we'll return a Path object for that path which has a generic error.

## AFS::Command::FS->lsmount

The ``File 'foo' doesn't exist'' error message wasn't trapped as a recognized error. It is now.

## AFS::Command::FS->sysname

The pattern matching was a bit greedy and the trailing single quote was showing up in the returned sysname value.