Version 2.1.0.2
2014-03-24
- Improve documentation and tests. Add more examples
- Convert ExtractedString to use TypedField implementation.
- Add Link object.
- Add properties to File object.
- Fix parsing of Float and Double property values.
- Fix bugs in DNS Record object.


Version 2.1.0.1
2014-02-20
- Release draft version of documentation at http://cybox.readthedocs.org/
- Add automatic detection of SHA224, SHA384, and SHA512 hashes.
- Fix DateWithPrecision and DateTimeWithPrecision types and add tests.
- Add tests for Hostname and DomainName objects.
- Update test for SocketAddress object.
- Remove cybox.utils.nsparser.NamespaceParser.
- Add doctests to example content.
- Various typo corrections and bugfixes.


Version 2.1.0.0
2014-01-24
- Updated objects and other types to support Version 2.1 of the CybOX language.
- Add DomainName and Hostname objects.
- Added bindings for new AS, ArchiveFile, ARPCache, DomainName, Hostname, ImageFile, SMSMessage, WinHook objects
- Remove parseLiteral and exportLiteral functions from bindings.
- Remove member_data_items dictionaries from bindings.
- Standardize constructors of BaseObjectPropertyType and subclasses.
- Various typo corrections and bug fixes.
- This is just a summary of changes. For a full list of changes to support
  CybOX 2.1, see:
  https://github.com/CybOXProject/python-cybox/issues?milestone=1


CybOX 2.0 branch
----------------

Version 2.0.1.4
2014-01-23
- Add support for Encryption packaging on Artifact objects.
- [#70] Improve and consolidate parsing of numeric types.


Version 2.0.1.3
2013-12-24
- Fix bug the prevented removing objects from an EntityList.
- Explicitly set some 'datatype' attributes on output.
- Format Action timestamps correctly on XML output.
- Handle imports for duplicate "Time" classes.


Version 2.0.1.2
2013-11-06
- Use tox for cross-version automated testing.
- Convert Action and related types to use TypedField implementation.
- Convert DateRange type to use TypedField implementation.
- Add Frequency type.
- Register concrete implementations of Account-related classes in the
  parent bindings.
- Add support for Events.
- Allow recursive definition of Events in bindings.
- Improve output of date strings.
- Improve JSON handling of empty lists (for input and output).
- Improve namespace handling for XML output.
- Fix errors where incorrect types were being used in the bindings.
- [#16] Use correct binding class.
- Fix typos.


Version 2.0.1.1
2013-10-07
- Minor bugfixes and documentation updates.


Version 2.0.1.0
2013-09-20
- Updated to support Version 2.0.1 of the CybOX language.
- Add support for language "update" versions (in addition to "major" and
  "minor" versions).
- Update how delimiter-separated lists within Properties are handled.
- Correct errors in auto-generated bindings.


Version 2.0.0.1
2013-09-13
- Add API object.
- Improve Python 2.6 support
- Standardize Object test functions.
- Use Version 4 UUIDs rather than Version 1 UUIDs when creating random IDs.
- Include ID namespace by default on export.
- Allow new namespaces to be added to metadata.
- Various typo/bug fixes.


Version 2.0.0
2013-08-27
- First non-beta release!
- Convert MeasureSource, DigitalSignature, Contributor, Personnel types to use
  TypedField implementation.
- Convert all existing objects to use TypedField implementation.
- Add Account, UserAccount, GUIObject, GUIWindow, GUIDialogBox, WinEventLog,
  Volume, WinVolume, Disk, DiskPartition objects.
- Add Base64Binary and Name object property types.
- Add DataSegment type.
- Add equality checks using TypedFields.
- Clean up Entity and EntityList classes.
- Allow TypedFields to have multiplicity >1.
- Simplify implementation of BaseObjectPropertyType subclasses.
- Add default to_obj, to_dict, from_obj, and from_dict functions on the base
  Entity class.
- Allow custom callbacks to be run after setting a TypedField on a type.
- Allow specifying which TypedFields should be used in comparisons.
- Restructure imports to collapse the cybox.common and cybox.core packages.
- Expand examples.
- [#46] [#48] [#49] [#51] Typo/bug fixes.
- Various other typo corrections, bug fixes, and style fixes.


Version 2.0.0b6
2013-07-29
- Add DomainSpecificObjectProperties.
- Set huge_tree=True in ETCompatXMLParser.
- More tweaks to XML output options.
- Typo fixes


Version 2.0.0b5
2013-07-12
- Add functionality to import an implementation class from an outside library.
- Improve handling of comma-delimited lists in properties.
- More namespace handling improvements.
- Simplify EntityLists.
- Tweaks to XML output.
- Various typo fixes.


Version 2.0.0b4
2013-06-25
- Add support for CustomProperties in ObjectProperties
- Update Observable to properly handle ID and IDREFs.
- Improve namespace handling (again).
- Improve unicode support.
- Add X509Certificate object.


Version 2.0.0b3
2013-06-17
- Update how RelatedObjects are created and handle.
- Update Observable type.
- Update Action and related types.
- Add PlatformSpecification, ExtractedFeatures type.
- Add Packer and PackerList types.
- Add VersionInfoResource to PEResourceList type.
- Add Record_Data to DNSRecord object.
- Update File, HTTPSession, Pipe, Port, WinDriver objects.
- Convert ExtractStringList to an EntityList.
- Allow Properties to specify when to output their datatype.
- Properly escape XML-reserved characters.
- Convert several "is None" checks to empty-list checks.
- Standardize how superclass functions are called.
- Handle Unicode strings correctly, always output UTF-8.
- Make each class responsible for its own namespace.
- Allow adding arbitrary namespaces when outputting XML.
- Extract namespaces from object metadata dictionary.
- Add and expand automated tests.
- Various bugfixes and typo corrections.


Version 2.0.0b2
2013-05-16
- Add HTTPSession, WhoisEntry objects.
- Add Double, Float, Long, NonNegativeInteger, Date, Time properties.
- Update Personnel, Contributor, DateRange, MeasureSource, AssociatedObject
  types for CybOX 2.0.
- Update WinFile, WinExecutableFile, WinDriver, WinEvent, WinHandle, WinMutex,
  WinKernelHook, WinProcess, WinRegistryKey, WinService, Library, Pipe,
  WinPipe, NetworkSocket, System, WinSystem, and WinNetworkShare objects for
  CybOX 2.0.
- Add ActionReference type.
- Update ToolInformation, ToolInformationList, ByteRun(s) types.
- Convert DNSResourceRecords, StreamList, EnvironmentVariableList types
  to EntityList.
- Allow subclass instantiation in to_obj/from_obj functions.
- Fix datatype on Property classes
- Add initial TypedField implementation to reduce repetitive code.
- Convert File object to use TypedFields
- Add support for caches when reading a file that contains idrefs.
- Don't print anything to STDOUT.
- Add copyright statement to all files.
- Improve namespace parsing and output code.
- Improve automated tests.
- [#19] [#20] [#21] [#22] [#24] Typo fixes.
- Bugfixes in [#23] Memory and [#25] Process types.
- Various bug and style fixes.


Version 2.0.0b1
2013-04-29
- Add DNSQuery, DNSRecord, SocketAddress objects.
- Add 'title' and 'description' to Observables.
- Update StructuredText type with simpler structure.
- Update ExtractedString(s) and EnvironmentVariable(s) types.
- Update EmailMessage, File, Port, and Process objects.
- Extract PatternFieldGroup attributes into a separate class.
- Support lists of values within Properties.
- Support ControlledVocabularyStrings.
- Wrap content in CDATA where appropriate.
- Allow EntityList to enforce the type of objects that are added to it.
- Make XML output more readable. Don't output default attributes.
- Use proper prefixes in auto-generated IDs.
- Update helper.py.
- Improve automated tests.
- Various bugfixes, typo corrections, and style fixes.


Version 2.0.0a1
2013-04-18
- Major updates to support new language features and changes.
  - Rename "Attributes" to "Properties".
  - Rename "DefinedObject" to "ObjectProperties".
  - Remove "StatefulMeasure".
- Update File, Mutex, Address, EmailMessage, and Artifact objects.
- Add EntityList type to handle collections of a single type.
- Properly handle xsi:type to determine Object type.
- Add proper object namespaces to XML output.
- Correctly test whether properties are equal.
- Recreated GenerateDS bindings to support CybOX 2.0.
- Various tweaks to bindings.


CybOX 1.0 branch
----------------

Version 1.0.0b3
2013-04-19
- Add Packer_List and Peak_Entropy attribute to FileObject.
- [#14] Fixed typo.


Version 1.0.0b2
2013-04-17
- Improve handling of list-style elements (those with maxOccurs>1).
- Improve ToolInformation, ToolInformationList, and Hash types.
- Make WinDriver object easier to use.
- Add support for DomainSpecificObjectAttributes on Objects.
- Various bugfixes and typo corrections.


Version 1.0.0b1
2013-04-12
- First (beta) release on PyPI
- Compatible with CybOX 1.0
