<?xml version="1.0" encoding="ISO-8859-1"?>

<document>
 <properties>
  <title>Java date and time API - Upgrade from 1.0 to 1.1</title>
  <author>Stephen Colebourne</author>
 </properties>

<body>

<section name="Upgrade">
<p>
These are the release notes and advice for upgrading Joda-Time from
version 1.0 to version 1.1.
<source>
Joda-Time version 1.1
---------------------

Joda-Time is a date and time handling library that seeks to replace the JDK
Date and Calendar classes.

This is the second full release of Joda-Time.

We recommend JDK 1.3 or later, and have performed no testing on earlier JDKs.

Joda-Time is licensed under the business-friendly Apache License Version 2.
This is the same license as all of Apache, plus other open source projects such as Spring.
The intent is to make the code available to the Java community with the minimum
of restrictions. If the license cause you problems please contact the mailing list.


Incompatible changes since 1.0
------------------------------
Binary compatible - Yes
  - v1.0 and v1.1 are binary compatible in their public and protected API

Source compatible - Yes
  - v1.0 and v1.1 are source compatible in their public and protected API

Serialization compatible - Yes, except:
  - DateTime.Property, DateMidnight.Property and MutableDateTime.Property
   serialization formats have changed to fix a bug.
    Please note that this only affects the property classes, and not DateTime,
   DateMidnight or MutableDateTime themselves
    It is unlikely that you serialized one of these classes

Data compatible - Yes, except:
  - Removed time zones Asia/Riyadh87, Asia/Riyadh88 and Asia/Riyadh89.
   These should not have been included in the 1.0 release, and do not represent
   genuine time zones. It is unlikely that you used them.
   If you do want to use them, please contact the joda-interest mailing list


Warnings since 1.0
------------------
ReadablePartial now has a comment recommending that all implementations
should also implement Comparable.
This is most easily achieved by extending AbstractPartial.


Deprecations since 1.0
----------------------
None


Bug fixes since 1.0
-------------------
- Date and Time (ZoneInfoCompiler)
  Greek summer time was incorrect due to a comment parsing bug.
  This disabled DST (summer time) for Europe/Athens after 1980.

- DateTimeFormat
  Parsing of two digit year by DateTimeFormat supports parsing of more or less
  than two digits, for compatibility with java.text.SimpleDateFormat. If not
  two digits or if sign character is present, then year is parsed as absolute.

- GJChronology
  Range duration field of dayOfMonth was not consistent with monthOfYear. This
  bug manifested itself when adding/subtracting periods to partials.

- DateTimeParserBucket
  Fixed parsing date where format includes era. Era must be set and rounded
  before any other fields.

- PeriodFormatterBuilder
  Formatters that had fields which required a zero to be printed were not being
  parsed.

- DateTime.Property, DateMidnight.Property and MutableDateTime.Property
  Could previously only be serialized in UTC.
  The serialization format has been changed to be simpler and more reliable.
  Unfortunately, this was an incompatible change to the serialization format.

- DateTimeFormatterBuilder/PeriodFormatterBuilder
  Number parser would accept multiple sign characters as valid.

- YearMonthDay/TimeOfDay.withChronologyRetainFields
  Previously, switching chronology did not validate the fields, so you could
  end up with an object in an invalid state, such as a YearMonthDay where
  dayOfMonth=31 with Coptic.
  This method can now throw an IllegalArgumentException

- Chronologies
  Overflowed calculations involving year throw ArithmeticException rather than
  produce a bogus result.

- DateTimeFormatterBuilder.canBuildFormatter()
  Previously this method always returned false.


Enhancements since 1.0
----------------------
- Partial
  New immutable implementation of ReadablePartial.
  This implementation is flexible as to the fields that it stores.
  Thus, if you want a partial holding just a year and monthOfYear (perhaps
  for a credit card expiry date), then this class can be used.
  Full support for almost all truncated and reduced precision ISO output
  formats is available via use of this class.

- DateTime/DateMidnight/MutableDateTime/YearMonthDay/TimeOfDay
  Added convenience plusXxx() and minusXxx() methods to add/subtract a period
  For example, dt.plus(Period.days(6)) can now be replaced by dt.plusDays(6)

- DateTime/DateMidnight/MutableDateTime/YearMonthDay/TimeOfDay
  Added convenience toString() method that takes a DateTimeFormatter
  For example, dt.toString(DateTimeFormat.shortDateTime())

- YearMonthDay/TimeOfDay/AbstractPartial
  Enabled comparisons using Comparable interface
  Added compareTo/isEqual/isAfter/isBefore methods
  These methods were added to AbstractPartial, and are thus available to
  all implementations of ReadablePartial

- YearMonthDay/TimeOfDay
  Extra time zone constructor
  Allows current date and time to be accurately obtained

- DateTime/DateMidnight/MutableDateTime/YearMonthDay/TimeOfDay Property
  Added new method to property class - getAsString()
  Gets the value as a string, not using text values like 'Monday' or 'January'

- Period
  Added constructors to create a Period from two ReadablePartials, such as
  YearMonthDay or TimeOfDay

- Period
  Added factory to create a Period from two ReadablePartials using an
  alternative, field-based, calculation

- DateTimeUtils
  Added isContiguous(ReadablePartial) to test if a partial is contiguous
  (see the method for the definition)

- PeriodType
  Added factory method forFields() to allow a PeriodType to be obtained
  from any set of DurationFieldType objects

- PeriodType
  Added three new period types - YearMonthDay, YearWeekDay and YearDay
  These complement the existing ones but exclude the time fields.

- DateTimeFormatter
  Method withPivotYear added to allow the two digit pivot year to be controlled.
  This is most useful after creating a format from a string pattern.

- DateTimeFormatter
  Added lenient parse option to appendTwoDigitYear and appendTwoDigitWeekyear.

- Interval
  Added overlap method that returns the actual overlap between two intervals.
  Added gap method that returns the gap between two intervals.
  Added abuts method that returns true if two intervals abut.

- DateTimeUtils
  Added getReadableInterval(ReadableInterval) method to handle null intervals

- IllegalFieldValueException
  Added new exception subclass of IllegalArgumentException to capture more
  context when a field is set to an illegal value. This can be helpful in
  interactive applications.

- GJLocaleSymbols
  Supports parsing "CE" and "BCE" as era if locale language is English.

- ISODateTimeFormat
  New method, forFields(), which gets an ISO format for a set of fields.
  This is useful for more unusual formats such as DayHour.

- ISODateTimeFormat
  New methods to output ordinal style dates, such as 2005-161.

- DateTimeZone classes updated to latest data from the Olson time zone database
</source>
</p>
</section>

</body>
</document>
