MPXJ Changes

Release History

Version Date Description
4.6.X Git HEAD  
4.6.2 11/11/2014  
4.6.1 17/10/2014  
4.6.0 17/10/2014  
4.5.0 01/03/2014  
4.4.0 14/03/2013  
4.3.0 08/02/2012  
4.2.0 23/06/2011  
4.1.0 30/05/2011  
4.0.0 25/05/2010  
3.2.0 20/01/2010  
3.1.0 20/05/2009  
3.0.0 25/01/2009  
2.1.0 23/03/2008  
2.0.0 07/10/2007  
1.0.0 30/08/2007  
0.9.2 07/03/2006  
0.9.1 26/01/2006  
0.0.25 11/08/2005  
0.0.24 10/01/2005  
0.0.23 17/11/2004  
0.0.22 27/07/2004  
0.0.21 06/05/2004  
0.0.20 15/03/2004  
0.0.19 02/12/2003  
0.0.18 13/11/2003  
0.0.17 05/08/2003  
0.0.16 04/07/2003  
0.0.15 17/06/2003  
0.0.14 28/05/2003  
0.0.13 22/05/2003  
0.0.12 08/05/2003  
0.0.11 15/04/2003  
0.0.10 08/04/2003  
0.0.9  
0.0.8 27/03/2003  

Get the RSS feed of the last changes: rss feed

Release 4.6.X - Git HEAD

No changes in this release.

Release 4.6.2 - 11/11/2014

Type Changes By
fix Fixed issue with custom duration field units not read correctly from MSPDI files joniles
fix Problems with the lag calculated in the relation Fixes 223. joniles
fix Outline code not read correctly from MPP file written by Project 2013 joniles
fix Defensive changes to avoid exceptions when reading MPP files Fixes 239. joniles
fix Deleted tasks being read from mpp file Fixes 250. joniles
add Added DotNetInputStream and DotNetOutputStream classes for ease of use under .Net. joniles
update Updated to automatically generate and package MpxjUtilities.dll joniles

Release 4.6.1 - 17/10/2014

Type Changes By
fix Fixed NuGet metadata joniles

Release 4.6.0 - 17/10/2014

Type Changes By
add Added support for NuGet. joniles
fix Fixed an issue where the ID and Unique ID resource attributes were being read incorrectly from MPP14 files. joniles
fix Fixed an issue where the project's default duration format was not being used joniles
fix Reading .MPP file using MPXJ 4.2 reads extra unintentional ResourceAssignment with the task which is not seen in Task Sheet in Microsoft Project Fixes 248. joniles
fix All resources have "Material" property Fixes 235. joniles
update Updated Primavera PM XML file reader to capture the Project ID to align with data read from XER file/database (contributed by Nathaniel Marrin) Fixes 247. joniles
update Updated Primavera PM XML file reader to ensure task percent complete supports Physical Percent, Duration Percent and Units Percent (contributed by Nathaniel Marrin) Fixes 247. joniles
update Updated Primavera PM XML file reader to ensure task baseline values match values read from XER file/database (contributed by Nathaniel Marrin) Fixes 247. joniles
update Updated Primavera PM XML file reader to ensure task actual duration to matches value read from XER file/database (contributed by Nathaniel Marrin) Fixes 247. joniles
update Updated Primavera PM XML file reader to read the task duration (contributed by Nathaniel Marrin) Fixes 247. joniles
update Updated Primavera PM XML file reader to read task LateStart, LateFinish, EarlyStart, EarlyFinish attributes correctly (contributed by Nathaniel Marrin) Fixes 247. joniles
update Updated Primavera PM XML file reader to read task Start and End correctly (contributed by Nathaniel Marrin) Fixes 247. joniles
update Updated Primavera PM XML file reader to identify milestones (contributed by Nathaniel Marrin) Fixes 247. joniles
update Updated Primavera PM XML file reader to set the task Critical attribute (contributed by Nathaniel Marrin) Fixes 247. joniles
update Updated Primavera PM XML file reader to include costs (contributed by Nathaniel Marrin) Fixes 247. joniles
update Updated Primavera XER/Database readers to read task Start and End correctly (contributed by Nathaniel Marrin) Fixes 247. joniles
update Migrated tests to JUnit 4 joniles

Release 4.5.0 - 01/03/2014

Type Changes By
add Added the ability to call the .Net version of MPXJ from COM. joniles
add Added support Primavera decimal database columns. joniles
add Added support for user defined task fields (contributed by Mario Fuentes). joniles
add Added POM for current Maven versions (contributed by Nick Burch) joniles
fix Unable to load mpp from project-2013 Fixes 213. joniles
fix Primavera currency files without currency information Fixes 226. joniles
fix PrimaveraReader cannot handle files with more than 30 user defined fields Fixes 227. joniles
fix setMilestone() issue Fixes 224. joniles
fix MPXJ 4.4 and 2013 files - invalid load of task data Fixes 210. joniles
fix Updated to fix an issue with Asta Powerproject PP file tokenization joniles
fix Updated to fix an issue where valid WBS values containing .0 are corrupted joniles
update Updated to allow Primavera hours per day to be a decimal value joniles
update Updated to support Primavera PM XML files generated by Primavera versions up to P6v8.3 (contributed by Mario Fuentes) joniles
update Updated to set the StatusDate attribute in the project header from a Primavera database, XER file or PM XML file. joniles
update Updated to use (a patched version of) POI 3.10. joniles

Release 4.4.0 - 14/03/2013

Type Changes By
add Added support for writing Primavera PM XML files. joniles
add Added support for reading Asta Powerproject PP and MDB files. joniles
add Added support for writing SDEF files (Contributed by William Iverson). joniles
add Added support for reading Enterprise Custom Fields 1-50 for Task, Resources, and Resource Assignments. joniles
add Added MpxjExtensionMethods assembly to simplify working with Java types in .Net (Contributed by Kyle Patmore) joniles
update Provided two new .Net DLL versions in addition to the original version. These allow properties to be accessed in a ".Net style", and for languages apart from VB, provide .Net style method names. joniles
update Updated to remove the distinction between base calendar and resource calendars in the ProjectFile class. joniles
fix Updated to improve support for custom outline codes (Contributed by Gary McKenney) joniles
fix getTimephasedOvertimeWork can return TimephasedWork with NaN Fixes 189. joniles
fix Support for timephased cost for cost type resources Fixes 190. joniles
fix Rolled Up tasks don't use default duration units Fixes 195. joniles
fix Extract Primavera Task ID Fixes 199. joniles
fix Updated to fix an issue where the resource assignment delay attribute was not being read from or written to MSPDI files correctly joniles
fix Updated to fix an issue where derived calendars were not being read correctly from MPP files joniles
update Updated to use IKVM 7.2. joniles

Release 4.3.0 - 08/02/2012

Type Changes By
add Added support for reading Primavera PM XML files. joniles
add Added support for reading timephased cost, and timephased baseline cost and baseline work from MPP files. joniles
add Added support for Work Weeks in MSPDI files (SourceForge feature request 23). joniles
update Updated to use IKVM 7.0. joniles
fix Updated to fix SourceForge bug 3290224: Incorrect order of tasks when writing an MSPDI file (contributed by Jonathan Besanceney). joniles
fix ResourceAssignment.getTaskUniqueID() returns null. Fixes 161. joniles
fix Wrong project name in MPX file. Fixes 169. joniles
fix Wrong title in XML file when importing from XER file. Fixes 170. joniles
fix Wrong record number for resource calendar in MPX file. Fixes 168. joniles
fix In the XML file the element field SaveVersion is missing. Fixes 171. joniles
fix Loop when import task with 0% on units of works in resources. Fixes 167. joniles
fix French locale NA incorrect. Fixes 163. joniles
fix Invalid dependency between child and parent. Fixes 175. joniles
fix Missing tasks from MS Project 2010 mpp file. Fixes 174. joniles
fix Wrong WBS code and WBS when converting a Primavera XER file. Fixes 179. joniles
fix Error reading XER file with German localisation for numbers. Fixes 177. joniles
fix TimephasedResourceAssignments with negative TotalWork. Fixes 166. joniles
fix Wrong currency symbol in the exported file. Fixes 181. joniles
fix TimephasedResourceAssignment end date not correct. Fixes 104. joniles
fix Calendar hours are incorrect. Fixes 116. joniles
fix NullReferenceException with getTimephasedBaselineWork. Fixes 188. joniles
fix Outline number is null when opening Project 2003 MPP file. Fixes 191. joniles
fix Unable to parse note (unknown locale). Fixes 192. joniles
fix MPP9Reader marks all tasks after a null task as null. Fixes 193. joniles
fix Updated to fix an issue where the Task critical attribute was incorrectly calculated for some manually scheduled tasks. joniles
fix Updated to fix an issue where the Task summary attribute was not set correctly when using certain methods to add or remove child tasks. joniles
fix Updated to fix an issue where subprojects were not read correctly (Contributed by Gary McKenney). joniles

Release 4.2.0 - 23/06/2011

Type Changes By
add Added support for resource assignment fields Baseline Cost 1-n, Baseline Work 1-n, Baseline Start 1-n, Baseline Finish 1-n, Start 1-n, Finish 1-n, Date 1-n, Duration 1-n, Cost 1-n, Text 1-n, Number 1-n, Flag 1-n, for MPP, MPD, and MSPDI files. joniles
add Added support for task suspend date, task resume date, and task code read from Primavera, and represented in MS Project custom fields Date1, Date2, and Text1 respectively. joniles
add Added support for retrieving the table associated with any view. joniles
fix Error converting Mpp to planner. Fixes 158. joniles
fix MSPDI Linklag for TimeUnit.Percent. Fixes 157. joniles
fix Error reading calendars for 2010 files. Fixes 156. joniles
fix Duplication of calendar id. Fixes 159. joniles
fix Wrong task start. Fixes 153. joniles
fix Wrong start and finish dates for 2010 files. Fixes 156. joniles

Release 4.1.0 - 30/05/2011

Type Changes By
add Updated ProjectFile class to change default value for "auto" flags to simplify programmatic creation of project files. joniles
add Added support for Manual, Start Text, Finish Text, and Duration Text attributes in MSPDI files. joniles
add Added support cost resource type for MPP12, MPP14 and MSPDI files. joniles
add Added Task.removePredecessor method (contributed by Leslie Damon). joniles
add Added "read presentation data" flag to MPPReader - allows clients to save time and memory when MPP presentation data not required. joniles
add Added support for reading Primavera calendars (contributed by Bruno Gasnier). joniles
add Added support for resource assignment leveling delay for MPP, MPD, and MSPDI files. joniles
add Added support for "unassigned" resource assignments. joniles
add Added support for task manual duration attribute for manually scheduled tasks in MPP14 and MSPDI files. joniles
add Added support for resource NT account attribute for MPP9, MPP12, and MPP14 files. joniles
add Added support for physical % complete for MPP9, MPP12, and MPP14 files. joniles
fix MPXJ API returns the incorrect start date of a manual task. Fixes 120. joniles
fix Task id incorrect after importing from MPP14 file. Fixes 123. joniles
fix MPXJ 4.0 fails to work with Project 2010 format. Fixes 124. joniles
fix Index was outside the bounds of the array. Fixes 128. joniles
fix header.getHonorConstraints() is not working in case of MPP. Fixes 131. joniles
fix Empty notes appear for all tasks when saving in XML format. Fixes 139. joniles
fix All Extended Attributes always added when using MSPDIWriter. Fixes 122. joniles
fix Baseline/Actual Work in 2010 MPP missing. Fixes 144. joniles
fix ResourceAssignment getCalendar not using IgnoreResourceCalendar flag Fixes 114. joniles
fix ExternalTaskProject value missing. Fixes 146. joniles
fix Deleted Primavera tasks handling problem. Fixes 137. joniles
fix Latest CVS version gives wrong values for inactive field. Fixes 143. joniles
fix Task ID order when creating a project file is not correct. Fixes 125. joniles
fix Invalid tasks that should not be there. Fixes 106. joniles
fix Updated to fix task calendars read incorrectly from MPP14 files. joniles
fix Updated to fix incorrect month duration assumption (contributed by Frank Illenberger). joniles
fix Updated to fix incorrect number format in MSPDI file in non-English locales (contributed by Frank Illenberger). joniles
fix Updated to fix incorrect resource assignment actual work attribute for MPP14 files. joniles
fix Updated to fix incorrect task leveling delay attribute for MPP9, MPP12, and MPP14 files. joniles
fix Updated to fix leveling delay and link lag when writing an MSPDI file (contributed by Frank Illenberger). joniles
fix Updated to fix incorrect assignment actual start date when writing an MSPDI file. joniles
update Updated to improve support for material resources in MSPDI files. joniles
update Updated to reduce overall size of MSPDI files by not writing default values. joniles
update Updated to use IKVM 0.46.0.1. joniles
update Updated to use POI 3.7. joniles
update Updated to make task, resource, and assignment fields read from MPP files data-driven, rather than hard coded. joniles

Release 4.0.0 - 25/05/2010

Type Changes By
add Added support for reading Microsoft Project 2010 MPP files. joniles
add Added support for reading Primavera P6 XER files. joniles
add Added support for reading Primavera P6 databases. joniles
update Updated to target Java 1.6. joniles
add Added Russian locale (Contributed by Roman Bilous). joniles
fix Relation.getDuration() is always giving result in 'HOUR' fmt. joniles

Release 3.2.0 - 20/01/2010

Type Changes By
add Added support for Resource cost rate tables (Based on code by Andrei Missine). joniles
add Added support for Resource availability (Based on code by Andrei Missine). joniles
add Added support for successors (Based on an idea by John D. Lewis). joniles
add Added support for task and resource GUIDs. joniles
add Added a flag to allow raw timephased data to be retrieved from MPP files. joniles
fix Updated to fix logical operator read issue in MPP auto filters (Contributed by Andrei Missine). joniles
fix MPXJ Issue: Related to Project Calendar. Fixes 94. joniles
fix POI License in legal folder of download wrong. Fixes 90. joniles
fix Updated to fix Steelray bug 15468: Null Pointer Exception reading task constraints. joniles
fix Planner writer causes Null Pointer exception. Fixes 102. joniles
fix getRecurring() task is not working Fixes 100. joniles
fix getStandardRateFormat() is returning 'null' Fixes 98. joniles
fix getWeekStartDay() is not working. Fixes 97. joniles
fix getDaysPerMonth() is not working. Fixes 96. joniles
fix Resource.getNotes() not working for MPP12 file. Fixes 101. joniles
fix MPP: getEditableActualCosts() is not behaving correctly. Fixes 105. joniles
update Updated to use POI 3.6. joniles
update Updated to use IKVM 0.42.0.3. joniles
update Updated to make MPX duration parsing more lenient (Contributed by Jari Niskala). joniles
update Updated to make MPP Var2Data extraction more robust (Contributed by Jari Niskala). joniles
update Updated to implement MSPDI context caching to improve performance (Contributed by Jari Niskala). joniles
update Updated to improve MPP file task structure validation. (Contributed by Jari Niskala). joniles
update Updated to improve MPX file parsing. (Contributed by Jari Niskala). joniles
update Updated to automatically populate missing WBS attributes. (Contributed by Jari Niskala). joniles
update Updated to refactor the Relation class (note minor method name changes). joniles
update Updated to add default calendar to Planner output. joniles

Release 3.1.0 - 20/05/2009

Type Changes By
fix Plan file fails to load. Fixes 73. joniles
fix Resource Assignment Normaliser rounding problem. Fixes 72. joniles
fix Column alignment values are incorrect. Fixes 78. joniles
fix NullPointerException in parseExtendedAttribute() (Contributed by Paul Pogonyshev). Fixes 76. joniles
fix .0 at the end of WBS code and outline number (Contributed by Paul Pogonyshev). Fixes 74. joniles
fix Too strict net.sf.mpxj.mpd.ResultSetRow. Fixes 79. joniles
fix Generated planner file can't be opened. Fixes 80. joniles
fix Support for loading global.mpt. Fixes 82. joniles
fix Lowercase table name won't work with db on linux machines. Fixes 81. joniles
fix Standard Calendar localization import problem. Fixes 71. joniles
fix Strange duration conversion from database Fixes 83. joniles
fix FilterCriteria not being read in properly (Contributed by James Styles) Fixes 86. joniles
fix Updated to fix Steelray bug 12335: Infinite loop when reading an MPP9 file. joniles
fix Updated to fix Steelray bug 8469: Subproject flag not set correctly. joniles
fix Updated to fix potential NPEs (Suggested by Steve Jonik). joniles
update Updated EncryptedDocumentInputStream to wrap rather than extend the POI DocumentInputStream to allow use with POI 3.5. (Contributed by Josh Micich) joniles
update Updated to provide strong names for .Net DLLs. joniles

Release 3.0.0 - 25/01/2009

Type Changes By
update Updated to the Project 2007 MSPDI schema. joniles
update Updated to POI 3.2. joniles
update Updated to use the SAX parser with JAXB rather than DOM to reduce memory consumption. joniles
update Updated MPX output to prevent Project 2007 complaining. joniles
fix Task getNumber*() methods return inaccurate large values. Fixes 68. joniles
fix Duplicate task in file.getChildTasks() when opening MPX. Fixes 56. joniles
fix Relation.getTask returns null. Fixes 57. joniles
fix Task.getSplits() not consistent. Fixes 58. joniles
fix WBS Field not imported Mpp12. Fixes 60. joniles
fix There are some conflict in TaskField. Fixes 63. joniles
fix MSPDIReader is not setting calendarName in projectHeader. Fixes 66. joniles
fix Write resource calendar with exceptions only. Fixes 67. joniles
fix File loses predecessors. Fixes 69. joniles
fix Resources not bring read. Fixes 70. joniles
fix Updated to fix incorrect duration calculations where minutes per week were not being used (Contributed by Jonas Tampier). joniles
fix Updated split task implementation to represent splits as DateRange instances rather than as hours. joniles
add Added .Net DLLs using IKVM. joniles
add Added support for reading timephased resource assignment data from MPP files. joniles
add Added support CurrencyCode, CreationDate, LastSaved and HyperlinkBase project header fields. joniles
add Added support for reading recurring task data from MPP files. joniles
add Added methods to MPXReader and MPXWriter to allow the caller to determine the supported locales. joniles
add Added Spanish locale (Contributed by Agustin Barto). joniles
add Added support for durations with percentage time lag (Contributed by Jonas Tampier). joniles
add Added support MSPDI file split tasks. joniles

Release 2.1.0 - 23/03/2008

Type Changes By
update Updated to POI 3.0.2 joniles
fix Updated to address an out of memory exception raised when processing certain MPP12 files. joniles
fix Updated to fix a problem caused by duplicate ID values in MPP12 files. joniles
fix Updated to fix a problem with the subproject unique ID calculation (Contributed by Jari Niskala). joniles
fix Import from Project 2007 ignores some tasks. Fixes 48. joniles
fix Crash on priority not set in MSPDI-file. Fixes 52. joniles
fix Resource start/finish dates with MSP 2007. Fixes 51. joniles
fix MS Project 2007: Calendar exceptions dates are wrong. Fixes 51. joniles
add Added support for Enterprise task and resource fields. joniles
add Added support for Baseline task and resource fields. joniles
add Added support for extracting non-English (i.e. character set encoded) text from note fields. joniles
add Added support for Chinese MPX files (contributed by Felix Tian). joniles
add Added support for reading project start and end dates from all MPP file types (Bug #1827633). joniles
add Added support for password protected MPP9 files (Contributed by Jari Niskala) joniles
add Added support for calendar exceptions for MPP12 files (Contributed by Jari Niskala) joniles
add Added support for value lists and descriptions for custom fields (Contributed by Jari Niskala) joniles
add Added support for timescale formats (Contributed by Jari Niskala) joniles
add Added support for the project file path attribute (Contributed by Jari Niskala) joniles
add Added support for the ignore resource calendar attribute (Contributed by Jari Niskala) joniles
add Added support for the resource actual overtime work attribute (Contributed by Jari Niskala) joniles
add Added support for the resource material label attribute (Contributed by Jari Niskala) joniles
add Added support for the resource NT account attribute (Contributed by Jari Niskala) joniles
add Improved support for hyperlinks (Contributed by Jari Niskala) joniles
add Improved support for custom fields in MPP12 files (Contributed by Jari Niskala) joniles

Release 2.0.0 - 07/10/2007

Type Changes By
update Migrated to Java 5 joniles
update Introduced generics joniles
update Introduced enums joniles
update Updated to POI 3.0.1 joniles
update Updated to JAXB 2.1.4 joniles
update Changed company details from Tapster Rock to Packwood Software joniles

Release 1.0.0 - 30/08/2007

Type Changes By
add Added support for reading MPD files via JDBC joniles
add Added support for reading Planner files joniles
add Added support for over allocated flag to all MPP file formats. joniles
add Added support for calculating duration variance from MPP files. joniles
add Added support for calculating start and finish variance from MPP files. joniles
add Added support for attribute change listeners for Task and Resource classes. joniles
add Added support for start slack, finish slack, free slack and total slack read from MPP files. joniles
add Added support for external tasks. joniles
add Added unique ID generation for calendars read from MPX files. joniles
add Added support for the status date property of the project. joniles
fix Fixed a timezone related bug when handling dates for calendar exceptions (Contributed by Todd Brannam). joniles
fix Fixed incorrect calculation of lag times for some MPP files. joniles
fix Fixed missing predecessor tasks in certain rare MPP9 files. joniles
fix Fixed incorrect MPX file AM/PM text setting in certain locales. joniles
fix Fixed an ArrayIndexOutOfBoundsException. joniles
fix Fixed a ClassCastException. joniles
fix Fixed a zero length string error. joniles
fix Fixed a duration rounding error when reading MSPDI files. joniles
fix Fixed incorrect "as late as possible" constraint handling. joniles
fix Incorrect late start date read from an MPP9 file. joniles
fix Incorrect total slack calculation. joniles
fix Added a default for the task constraint type attribute to prevent a possible NPE when writing an MSPDI file. joniles
fix Added a default resource calendar name where the resource name is empty. joniles
update Updated the Column.getTitle method to take account of user defined column aliases. joniles
update Updated to add another condition to the test for deleted tasks in MPP8 files. joniles
update Updated to significantly improve the performance of writing MSPDI files. joniles

Release 0.9.2 - 07/03/2006

Type Changes By
add Added support for split views. joniles
add Added support for graphical indicators. joniles
add Added a workaround for a bug in MS Project which is seen when calendar exceptions are exported to an MSPDI file. If the exception contained seconds and milliseconds, MS Project marked every day as being affected by the exception, not the day or range of days specified. joniles
update Updated to make date/time/number formats generic, and thus available to end users. For example, this allows users to format currencies in line with the settings in the project file. joniles
update Standardised on minutes per day and minutes per week, rather than hours per day and hours per week. joniles
update Provided additional time ranges for calendar exceptions. joniles
update Refactored Task and Resource to use TaskField and ResourceField to identify fields. joniles
update Updated to automatically generate WBS for tasks read from MPP files when no WBS information is present in the file. joniles
fix Fixed a bug when reading MPP files where task finish dates appeared before the start date where a "start no later than" constraint was in use. joniles
fix Fixed a bug which resulted in invalid MPX files being generated when a project either had no tasks, or it had no resources. joniles
fix Fixed a long standing bug where the calendar records were being written into MPX files after they were referred to in the project summary record. joniles
fix Fixed a bug where WBS and Outline Levels were not being auto generated correctly when an MPP file contained a project summary task. joniles
fix Fixed a bug where split tasks were not being reported correctly. joniles

Release 0.9.1 - 26/01/2006

Type Changes By
update Major API rewrite. joniles
add Added a flag called "expanded" to the Task class to represent whether a task in an MPP9 file is shown as expanded or collapsed by MS Project. joniles
fix Fixed a bug in the relation code in MpxjQuery (contributed by Shlomo Swidler). joniles
update Modified MPXDateFormat, MPXTimeFormat and MPXCurrencyFormat to derive them from DateFormat and NumberFormat. joniles
add Added support for MPT files. joniles
fix Fixed a bug which could case an NPE when reading certain MPP9 files. joniles
add Added support for the "marked" attribute for MPP9 files. joniles
add Added support for reading split task data from MPP9 files. joniles
add Added support for reading calculate multiple critical paths flag. joniles
fix Fixed a bug which could case an array out of bounds exception in the Priority (contributed by Frank Illenberger). joniles
fix Fixed bug #1346735 "Priorities of the tasks are exported incorrectly". joniles
add Added code to allow tasks, resources, resource assignments and calendars to be removed from the data structure. joniles
add Implemented Italian MPX file format translation (contributed by Elio Zoggia). joniles
update Cleaned up calendar usage. joniles
add Added support for retrieval of custom document summary fields from the project header (contributed by Wade Golden). joniles
update Updated to use checkstyle 4.0 and fixed warnings. joniles
update Rationalised duration conversions into a set of methods in the MPXDuration class. joniles
add Replaced various file format conversion utilities with the general purpose MpxjConvert utility. joniles
fix Fixed an issue where tasks with a percent complete value, but no resource assignments, would not write correctly to an MSPDI file. joniles
add Added an accessor method for resource calendars. joniles
fix Unique ID generation was not correct for tasks, resources and calendars if these entities were added to an existing project file. joniles
fix Fixed a compatibility issue with POI3 joniles
add Added an event listener to the project file to allow notifications of resources and tasks being read and written to and from a file. joniles
fix Fixed a compiler warning when build with JDK5. joniles
fix Fixed a bug where a project start date was not being set correctly in the project header. joniles
add Added support for reading the project header "calendar name", "schedule from" and "revision" values from MPP files. joniles
fix Fixed split task support. joniles
update Enhanced TableFontStyle implementation. joniles

Release 0.0.25 - 11/08/2005

Type Changes By
add Added support for reading all properties from an MPP9 file which define the visual appearance of the Gantt Chart view shown in Microsoft Project (development funding courtesy of Steelray). joniles
update Tidied up constructors. Added no-argument constructors to the MPPFile and MSPDIFile classes. joniles
update Fixed incorrect value in WorkGroup enumerated type. joniles
update Implemented the resource assignment work contour property (contributed by Wade Golden). joniles
update Implemented correct handling for MPX files using different character set encodings (suggested by Frank Illenberger). joniles
fix Fixed task duration calculation when importing an MPP file with a "non-standard" hours-per-day setting (contributed by Wade Golden). joniles
update Updated to ensure that the MPX task fixed attribute, and the MPP/MSPDI task type attribute are correctly handled. joniles
update Updated to implement the remaining project header attributes supported by the MSPDI file format. joniles
update Updated to add support for reading the MPX 3.0 files generated by Primavera (courtesy of CapitalSoft). joniles
fix Fixed incorrect assumptions about conversion of durations to hours when writing MPX files (contributed by Frank Illenberger). joniles
update Updated to calculate remaining work for resource assignments on import, to allow MSPDI export of this data to work correctly (contributed by Frank Illenberger). joniles
fix Updated to add another condition to the test for deleted tasks in MPP8 files. joniles
fix Updated to fix a problem with reading assignment data from MPP9 files. joniles
update Rationalised the location of the JUnit tests and the sample files. joniles
fix Fixed a problem where the project start and end dates reported in the project header were incorrect. joniles
fix Fixed an array out of bounds exception when reading an MPP9 file. joniles
update Updated to allow MPXCalendarHours to accept an arbitrary number of time periods. joniles
add Introduced the Day class to replace the use of arbitrary integers to represent days of the week. joniles
add Added the ability to query the task assignments for a resource using the Resource.getTaskAssignments() method. joniles
fix Fixed a problem with number formats in MSPDI files. joniles
update Updated the MPP View class to extract the view type. joniles
update Updated to ensure that duration values read from an MSPDI file are converted into the appropriate duration units, rather than being left as hours as the durations are represented in the MSPDI file. joniles
add Implemented French MPX file format translation (contributed by Benoit Baranne). joniles
fix Fixed a bug reading assignment work contour attribute. joniles
update Updated to make failure more graceful when a Microsoft Project 4.0 MPP file is encountered. joniles
fix Fixed a bug where deleted constraints in an MPP9 file were were not being ignored. joniles
update Updated to make replace the int relation type in the Relation class with instances of the RelationType class. joniles
update Updated to derive RelationList from AbstractList. joniles
add Added sample code to MpxjQuery to illustrate retrieval of information from Relation instances. joniles
update Updated MpqjQuery to parse MSPDI files as well as MPP and MPX files. joniles
add Added support for early start, early finish, late start, late finish to MPP files. joniles
update Updated MPP9 file support to handle start as late as possible constraints. joniles
add Added support for sub project file information in MPP9 files. joniles
fix Fixed a bug where occasionally a task in MPP9 files were not being read. joniles
fix Fixed a NegativeArrayIndexException thrown when reading certain MPP8 files. joniles
update Reduced the memory used by MPXJ by anything up to 60%, particularly when reading large MPP files. joniles
fix Fixed a bug when reading MPX files where the field delimiter was not comma, and task relation lists contained more then one entry. joniles
fix Updated to fix unreliable retrieval of project start and end dates from certain MPP files. joniles
fix Fixed schedule from value in MSPDI files (contributed by Frank Illenberger). joniles
fix Fixed a bug when reading durations in elapsed days from an MPP file. joniles
update Tasks can now have arbitrary priority values. These values are mapped to/from the fixed MPP8/MPX priority values where necessary. joniles

Release 0.0.24 - 10/01/2005

Type Changes By
fix Fixed a bug (again!) where deleted resource assignments in MPP9 files were still seen by MPXJ. joniles
update Updated to use class instances instead of primitives to represent some enumerated types. joniles
update Updated to implement support for reading and writing all of the basic Resource attributes found in MSPDI files. joniles
update Updated to implement support for reading and writing all of the basic Task attributes found in MSPDI files. joniles
update Updated to implement support for reading and writing all of the basic Project Header attributes from MPP8 and MPP9 files. joniles
add Made MSPDI file parsing more robust to allow it by default to cope with non-schema-compliant XML in the same manner as MS Project. Implemented a new compatibility flag to allow this behaviour to be disabled in favour of strict parsing. joniles
update Merged DateTimeSettings, CurrencySettings, and DefaultSettings into the ProjectHeader class. This change makes the project header data easier to use as it is in a single place. It also makes the entities used to describe a project consistent with the contents of the MPP and MSPDI file formats. joniles

Release 0.0.23 - 17/11/2004

Type Changes By
fix Fixed a bug where MPXJ was still using the default locale of the user's machine to create localised MPX files when a normal international MPX file was expected. joniles
fix Fixed a bug where the incorrect record delimiter was being used in by the MPX RelationList class. joniles
fix Fixed a bug where the method Task.getText21 was not retrieving the correct text value. joniles
fix Fixed a bug where the task unique ID values were being truncated unnecessarily. joniles
fix Fixed a bug where calendar exceptions were not testing the range of dates between the start and end date correctly. joniles
fix Fixed a bug where the priority of a task was being escalated when converting between an MPP9 file and an MSPDI file. joniles
fix Fixed a bug where a deadline was incorrectly being added to a task when importing data from an MPP9 file. joniles
fix Fixed a bug where deleted resource assignments in MPP9 files were still seen by MPXJ. joniles
fix Fixed a bug where MPXFile attributes were not being correctly copied by the copy constructor. joniles
fix Fixed a rounding error in MPXCalendar.getDaysInRange (contributed by Wade Golden) joniles
update Updated to make MPXJ more robust in the face of unexpected offsets in MPP8 file format. joniles
update Updated support for password protected files to allow write reserved files to be read. joniles
update Updated to use the latest version of JAXB, as shipped in Sun's Java Web Services Developer Pack (JWSDP) version 1.4. joniles
update Updated the distribution to include the redistributable files from the JWSDP JAXB implementation. Users will no longer need to download JWSDP separately in order to make use of MPXJ's MSPDI functionality. joniles
update Updated to prevent empty notes records being added to tasks and resources when reading an MSPDI file. joniles
update Updated to improve accuracy when converting an MPP file to an MSPDI file. joniles
add Added support for blank task rows in MPP8 files. joniles
add Added support for blank resource rows in MPP8 files. joniles
add Added support for Portuguese MPX files. joniles
add Added support reading and writing extended attributes (apart from outline codes) for MSPDI files. joniles
add Added support for the Resource Type attribute. joniles

Release 0.0.22 - 27/07/2004

Type Changes By
fix Fixed a bug where task data was not being read correctly from very large MPP9 files. joniles
fix Fixed a bug where certain MPP8 files were not read correctly when no constraint data is present. joniles
fix Fixed a bug where certain MPP9 files were not read correctly. joniles
fix Fixed a bug where MPP9 files containing invalid resource data were not read correctly. joniles
fix Fixed a bug where MPXJ was using the default locale of the user's machine to create localised MPX files when a normal international MPX file was expected. joniles
fix Fixed a bug where MPXJ not correctly handling embedded line breaks when reading and writing MPX files. joniles
update Removed arbitrary restrictions on the number of various entities, originally taken from the MPX specification. joniles
update Updated MPX documentation for Task.getFixed and Task.setFixed. joniles
update Updated MPP9 file code to improve handling invalid offset values. joniles
update Updated to remove leading and trailing spaces from MPX task field names before processing. joniles
update Updated to detect password protected files and raise a suitable exception. joniles
add Implemented an enhancement to improve file loading speed by an order of magnitude for files with a large number of tasks or resources (based on a contribution by Brian Leach). joniles
add Implemented support for Maven. joniles
add Updated MpxCreate utility to allow it to create both MPX and MSPDI files. joniles
add Added new JUnit test for confidential customer data. joniles
add Added support for the resource assignment remaining work attribute for MPP8, MPP9 and MSPDI files. joniles

Release 0.0.21 - 06/05/2004

Type Changes By
fix Fixed a bug where the task start date attribute was not always correct for MPP8 files. joniles
fix Fixed a bug causing valid tasks to be incorrectly identified as being deleted in MPP8 files. joniles
fix Fixed a bug causing an exception when reading certain MPP9 files. joniles
update Updated to allow localised MPX files to be written and read. joniles
add Implemented support for German MPX files. joniles
add Implemented generic mechanism for dealing with task field aliases. joniles
add Implemented task field alias read/write for MSPDI files. joniles
add Implemented task field alias read for MPP9 files. joniles
add Implemented resource field alias read/write for MSPDI files. joniles
add Implemented resource field alias read for MPP9 files. joniles

Release 0.0.20 - 15/03/2004

Type Changes By
fix Fixed a bug where alternative decimal delimiters and thousands separators were not being handled correctly when reading and writing MPX files. joniles
fix Fixed a bug causing a null pointer exception when writing an MSPDI file. joniles
fix Fixed a bug in MSPDI files where default values were being written incorrectly for some task attributes. joniles
fix Fixed a bug with MSPDI file date handling in non GMT time zones. joniles
fix Fixed a bug in processing calendar data where data block is not a multiple of 12 bytes joniles
fix Fixed a bug processing tables where column data is null joniles
fix Fixed checkstyle code warnings. joniles
fix Fixed Eclipse code warnings. joniles
update Updated to include version 2.5 of the POI library. joniles
add Added support for task calendars. joniles

Release 0.0.19 - 02/12/2003

Type Changes By
fix Fixed a bug reading table data from certain MPP8 files joniles
update Updated MSPDI support to use latest version of JAXB (from JWSDP-1.3) joniles
update Re-implemented base and resource calendars as a single MPXCalendar class joniles
update Updated support for base calendars and resource calendars for all file formats joniles
update Improved MPXException to print details of any nested exception when a stack trace is printed. joniles
remove Removed unnecessary use of ByteArray.java joniles
add Added support for the following task fields: ActualOvertimeCost, ActualOvertimeWork, FixedCostAccrual, Hyperlink, HyperlinkAddress, HyperlinkSubAddress, LevelAssignments, LevelingCanSplit, LevelingDelay, PreleveledStart, PreleveledFinish, RemainingOvertimeCost, RemainingOvertimeWork. joniles

Release 0.0.18 - 13/11/2003

Type Changes By
fix Fixed a bug with writing MS Project compatible MSPDI XML files in non-GMT timezones. joniles
fix Fixed a bug with writing MSPDI XML files in non-GMT timezones. joniles
fix Fixed a bug causing an exception when zero length calendar names were present joniles
fix Fixed a bug causing MPP8 flags to be read incorrectly. Note that flag 20 is still not read correctly. joniles
fix Fixed a bug with the "Microsoft Project Compatible Output" flag for MSPDI files. joniles
fix Fixed a bug reading task text 10. joniles
add Added new MPXFile.setIgnoreTextModel() method to allow MPXJ to ignore faulty text version of task or resource model records in MPX files. joniles
update Improved invalid MPX data error handling and reporting. joniles
add Added BaseCalendar.getDate method to allow end dates to be calculated based on a start date and a duration of working time. joniles
update Made MPXDateFormat implement java.io.Serializable to allow MPXDate to serialize correctly. joniles
update Updated the ant build file to allow MPXJ to be built without the components that depend on JAXB joniles
update Rationalised setDefaultStartTime and setDefaultEndTime methods joniles
add Added MppXml utility joniles
add Added support for querying view information held in MPP files. joniles
add Added support for querying table information held in MPP files. (NB This allows the user to retrieve column information, including user defined column names) joniles
add Added support for outlinecode1-10 fields in MPP9 files. joniles
add Added support for resource "available from" and "available to" fields. joniles
update Verified that MPXJ will read MPP files written by Microsoft Project 2003 (they are still MPP9 files). joniles

Release 0.0.17 - 05/08/2003

Type Changes By
fix Fixed a bug where a decimal point was being appended to the currency format even if no decimal digits were required. joniles
fix Fixed a bug where special characters appearing in the currency symbol were not being quoted. joniles
fix Fixed a bug that caused resource assignments to be incorrectly read from some MPP8 files. joniles
add Added a new write method to MPXFile allowing the user control over the character encoding used when writing an MPX file. joniles

Release 0.0.16 - 04/07/2003

Type Changes By
fix Fixed bug causing some extended boolean attributes to be read incorrectly. joniles
fix Fixed bug causing MPP8 file task data to be read incorrectly under certain circumstances. joniles
update Updated calendar duration code to account for calendar exceptions. joniles

Release 0.0.15 - 17/06/2003

Type Changes By
fix Fixed a bug causing resource assignments to be duplicated in an MPX file created programmatically. joniles
fix Fixed a bug causing an incorrect duration value to be read from an MPP9 file. joniles
fix Fixed a bug causing invalid MPX files to be written in locales which don't use a period as the decimal separator. joniles
fix Fixed a bug causing embedded quote and comma characters in task and resource notes to be handled incorrectly. joniles
add Added simple JUnit test to demonstrate iteration through relationships. joniles
add Added an example of programmatically creating a partially complete task to the MPXCreate.java example. joniles
add Added default values to the MPX project header. joniles
add Added support for reading the RemainingDuration field from an MPP9 file. joniles
update Updated predecessor and successor method documentation. joniles
update Updated Task.get/set ResourceInitials and Task.get/set ResourceNames method documentation. joniles
update Updated to extract the following fields from resource assignment data in MPP files which were previously not imported: ActualCost, ActualWork, Cost, Finish, Start, Units, Work. joniles

Release 0.0.14 - 28/05/2003

Type Changes By
update Updated to extract the following fields from resource data in an MPP9 file which were previously not imported: Flag1-Flag20. joniles
add Added the method MPPFile.getFileType to allow the type of MPP file (MPP8: 98, MPP9: 2000,2002) to be determined. joniles
update Updated API to make classes final and constructors package access only where appropriate. joniles
update Updated to use of 6 byte long int fields for cost and work values for MPP8. joniles
fix Fixed error in reading task fixed cost for MPP8. joniles
update Updated to extract the following fields from task data in an MPP8 file which were previously not imported: Contact, Cost1-Cost10, Date1-Date10, Duration1-Duration10, EffortDriven, Finish1-Finish10, Flag1-Flag20, HideBar, Milestone, Number1-Number20, Rollup, Start1-Start10, Text1-Text30, Type, WBS. joniles
update Updated to extract the following fields from resource data in an MPP8 file which were previously not imported: Code, Cost1-Cost10, Date1-Date10, Duration1-Duration10, EmailAddress, Finish1-Finish10, Number1-Number20, Start1-Start10, Text1-Text30 joniles
add Added support for task and resource note fields in MPP8 files. joniles
add Added support for the OvertimeCost task attribute for all file formats. joniles
update Updated to extract calendar data from MPP8 files. joniles
update Updated resource notes to fix end of line handling problem. joniles
add Added functionality to read default settings and currency settings data from MPP files. joniles

Release 0.0.13 - 22/05/2003

Type Changes By
add Implemented support for the Microsoft Project 98 file format. joniles
fix Fixed a bug that prevented task and resource note text from being read. joniles
update Updated to remove a Java 1.4 dependency introduced in 0.0.12. Will now work with Java 1.3. joniles
update Updated to correct handling of carriage returns embedded in note fields. joniles

Release 0.0.12 - 08/05/2003

Type Changes By
fix Fixed incorrect handling of timezones and daylight saving time. joniles
fix Fixed incorrect task structure generated from outline levels. joniles
update Updated to extract the notes fields from tasks and resources read from an MPP file. joniles
add Added the option to remove or preserve the RTF formatting from the note fields from an MPP file. joniles
update Updated to extract the following fields from task data in an MPP file which were previously not imported: Text11-Text30, Number6-Number20, Duration4-Duration10, Date1-Date10, Cost4-Cost10, Start6-Start10, Finish6-Finish10 joniles
update Updated to extract the following fields from resource data in an MPP file which were previously not imported: Text6-Text30, Start1-Start10, Finish1-Finish10, Number1-Number20, Duration1-Duration10, Date1-Date10, Cost1-Cost10 joniles

Release 0.0.11 - 15/04/2003

Type Changes By
fix Fixed error in format string used in one of the example files. joniles
fix Fixed error where double byte characters were being read incorrectly. joniles
fix Fixed error where deleted constraints were being resurrected when read from an MPP file. joniles
update Updated to extract the following fields from task data in an MPP file which were previously not imported: Flag11-Flag20, Rollup, HideBar, EffortDriven. joniles

Release 0.0.10 - 08/04/2003

Type Changes By
fix Corrected Actual Start and Actual End fields from MPP file. joniles
fix Fixed bug where time values were being broken by daylight saving time in the user's default locale. joniles
update Updated to extract the following fields from task data in an MPP file which were previously not imported: Actual Work, Baseline Work, Cost Variance, Deadline, Remaining Work, Work. joniles
update Updated to extract the following fields from resource data in an MPP file which were previously not imported: Actual Cost, Actual Overtime Cost, Actual Work, Baseline Work, Cost, Cost Variance, Max Units, Overtime Cost, Overtime Rate, Overtime Work, Peak, Regular work, Remaining Cost, Remaining Overtime Cost, Remaining Work, Standard Rate, Work, Work Variance joniles

Release 0.0.9 -

Type Changes By
fix Fixed bug when handling certain types of modified MPP file where resources have been updated. joniles
add Added sample MPP files for bugs to the JUnit tests. joniles
add Added support for summary flag import from MPP files. joniles
add Added automatic summary flag update when creating an MPX file programmatically. joniles
add Added new constructor to the MSPDIFile class to allow MSPDI files to be created from scratch. joniles

Release 0.0.8 - 27/03/2003

Type Changes By
add Added support for estimated durations. joniles
fix Fixed bug in handling certain types of modified MPP file where tasks have been updated. joniles
add Added the facility to auto generate outline numbers. joniles