This generally only covers changes to APIs that existed in the prior release. For overviews of architectural changes and additions you should consult the class diagrams that accompany the release.

Breaking Changes between 1.0.1 and .9

  • Added Contact.GetAttributes function.
  • Added ILabeledPropertyCollection.GetNameAt
  • Added implicit cast operators for the TypeBuilder to Type conversions for types like Name, EmailAddress, PhysicalAddress, etc. This makes property setting syntax a bit less burdensome in languages like C#.
  • (New in 1.0.1) Renamed ContactTypes.Business to ContactTypes.Organization, along with the associated file extensions, due to strong customer feedback.

Breaking Changes between .8 and .9

  • Renamed ContactManager.Import to ContactManager.AddContact.
  • The interop namespace is no longer public. It's functionality is still available through the ContactBridge project but the current release isn't so much wrapping the COM APIs as it is reimplementing the functionality. As such what's left of the namespace has been internalized.
  • FxCop property and class name cleanup, including:
    • Certificate/CertificateBuilder: Type -> ValueType, ThumbPrint|Type| -> Thumbprint|Type|
    • ContactType -> ContactTypes
    • EmailAddress/EmailAddressBuilder: Type -> AddressType
    • Name/NameBuilder: NickName -> Nickname
    • ContactCommitOptions.ForceSyncStorageWithFormattedName no longer includes the non-force flag value.
    • ContactCollectionChangedEventHandler -> EventHandler<ContactCollectionChangedEventArgs>
  • Replaced engendered PersonLabels with androgenous versions, e.g. Mother/Father -> Parent, Brother/Sister -> Sibling.
  • Changed the properties that are exposed on Person and PersonBuilder so that they don't affect each other as directly. A loaded Contact is no longer available from Person.

Breaking Changes between .8 and Contacts Bridge 1.0

  • Removed ContactManager constructors that allow for different RootDirectories
  • Removed ContactType enumeration and property from Contact
    • By extension, ContactCollection support for types other than .contact has been removed.
  • Removed GroupView and MapiGroupView
  • Removed managed shims atop IContactPropertyCollection and IContactManager - implementations are now direct callthroughs to Vista COM APIs (Not API breaking, but will result in different behaviors).

Breaking Changes between .1 and .8

  • Renamed ContactManager.Load to ContactManager.GetContact
  • Person struct changed to add strong-typing to the PersonId format.
  • ILabeledPropertyCollection interface changed to have more indexer overloads so XAML will parse it.
  • Renamed ContactCommitOptions.Default to ContactCommitOptions.None (FxCop)
  • (Please add any others)

Last edited Sep 2, 2008 at 4:47 PM by JoeCastro, version 16

Comments

No comments yet.