All Versions
19
Latest Version
Avg Release Cycle
111 days
Latest Release
89 days ago

Changelog History
Page 1

  • v2.12.0

    December 09, 2020

    ➕ Added

    • ➕ Added OpenSettings.RelationshipErrorHandlerFactory to provide a way to handle URIs that break parsing documents with malformed links (#793)
    • ➕ Added OpenXmlCompositeElement.AddChild(OpenXmlElement) to add children in the correct order per schema (#774)
    • ➕ Added SmartTagClean and SmartTagId in place of SmtClean and SmtId (#747)
    • ➕ Added OpenXmlValidator.Validate(..., CancellationToken) overrides to allow easier cancellation of long running validation on .NET 4.0+ (#773)
    • ➕ Added overloads for CellValue to take decimal, double, and int, as well as convenience methods to parse them (#782)
    • ➕ Added validation for CellType for numbers and date formats (#782)
    • ➕ Added OpenXmlReader.GetLineInfo() to retrieve IXmlLineInfo of the underlying reader if available (#804)

    🛠 Fixed

    • 🛠 Fixed exception that would be thrown if attempting to save a document as FlatOPC if it contains SVG files (#822)
    • ➕ Added SchemaAttrAttribute attributes back for backwards compatibility (#825)

    ✂ Removed

    • ✂ Removed explicit reference to System.IO.Packaging on .NET 4.6 builds (#774)

    🚀 Thanks to the following for their contributions for this release:

    @lindexi
    @rmboggs

  • v2.11.3

    July 17, 2020

    🛠 Fixed

    • 🛠 Fixed massive performance bottleneck when IndexReferenceConstraint and ReferenceExistConstraint are involved (#763)
    • 🛠 Fixed CellValue to only include three most signficant digits on second fractions to correct issue loading dates (#741)
    • 🛠 Fixed a couple of validation indexing errors that might cause erroneous validation errors (#767)
    • ⚡️ Updated internal validation system to not use recursion, allowing for better short-circuiting (#766)
  • v2.11.2

    July 10, 2020

    🛠 Fixed

    • 🛠 Fixed broken source link (#749)
    • Ensured compilation is deterministic (#749)
    • ✂ Removed extra file in NuGet package (#749)
  • v2.11.1

    July 10, 2020

    🛠 Fixed

    • 🏗 Ensure .NET Framework builds pass PEVerify (#744)
    • 👻 OpenXmlPartContainer.DeletePart no longer throws an exception if there isn't a match for the identifier given (#740)
    • Mark obsolete members to not show up with Intellisense (#745)
    • 🛠 Fixed issue with AttributeRequiredConditionToValue semantic constraint where validation could fail on correct input (#746)

    Thanks

    Thanks for contributions from the following people:

  • v2.11.0

    May 21, 2020

    ➕ Added

    • ➕ Added FileFormatVersions.2019 enum (#695)
    • ➕ Added ChartSpace and chart elements for the new 2016 namespaces. This allows the connecting pieces for building a chart part with chart styles like "Sunburst" (#687).
    • ➕ Added OpenXmlElementFunctionalExtensions.With(...) extension methods, which offer flexible means for constructing OpenXmlElement instances in the context of pure functional transformations (#679)
    • ➕ Added minimum Office versions for enum types and values (#707)
    • ➕ Added additional CompatSettingNameValues values: UseWord2013TrackBottomHyphenation, AllowHyphenationAtTrackBottom, and AllowTextAfterFloatingTableBreak (#706)
    • ➕ Added gfxdata attribue to Arc, Curve, Line, PolyLine, Group, Image, Oval, Rect, and RoundRect shape complex types per MS-OI29500 2.1.1783-1799 (#709)
    • ➕ Added OpenXmlPartContainer.TryGetPartById to enable child part retrieval without exception if it does not exist (#714)
    • ➕ Added OpenXmlPackage.StrictRelationshipFound property that indicates whether this package contains Transitional relationships converted from Strict (#716)

    🛠 Fixed

    • Custom derived parts did not inherit known parts from its parent, causing failure when adding parts (#722)

    🔄 Changes

    • Marked the property setters in OpenXmlAttribute as obsolete as structs should not have mutable state (#698)

    Thanks

    Thanks for contributions from the following people:

  • v2.11.0-beta1

    March 24, 2020
  • v2.10.1

    February 28, 2020

    🛠 Fixed

    • Ensured attributes are available when OpenXmlElement is initialized with outer XML (#684, #692)
    • 📚 Some documentation errors (#681)
    • ✂ Removed state that made it non-thread safe to validate elements under certain conditions (#686)
    • Correctly inserts strongly-typed elements before known elements that are not strongly-typed (#690)
  • v2.10.0

    January 10, 2020

    ➕ Added

    • ➕ Added initial Office 2016 support, including FileFormatVersion.Office2016, ExtendedChartPart and other new schema elements (#586)
    • ➕ Added .NET Standard 2.0 target (#587)
    • 👍 Included symbols support for debugging (#650)
    • 🔦 Exposed IXmlNamespaceResolver from XmlPath instead of formatted list of strings to expose namespace/prefix mapping (#536)
    • Implemented IComparable<T> and IEquatable<T> on OpenXmlComparableSimpleValue to allow comparisons without boxing (#550)
    • ➕ Added OpenXmlPackage.RootPart to easily access the root part on any package (#661)

    🔄 Changes

    • ⚡️ Updated to v4.7.0 of System.IO.Packaging which brings in a number of perf fixes (#660)
    • Consolidated data for element children/properties to reduce duplication (#540, #547, #548)
    • Replaced opaque binary data for element children constraints with declarative model (#603)
    • 🐎 A number of performance fixes to minimize allocations where possible
    • 20% size reduction from 5.5mb to 4.3mb
    • The validation subsystem went through a drastic redesign. This may cause changes in what errors are reported.

    🛠 Fixed

    • 🛠 Fixed some documentation inconsistencies (#582)
    • 🛠 Fixed ToFlatOpcDocument, ToFlatOpcString, FromFlatOpcDocument, and FromFlatOpcString to correctly process Alternative Format Import Parts, or "altChunk parts" (#659)
  • v2.10.0-beta2

    July 11, 2019
  • v2.10.0-beta1

    May 31, 2019

    🆕 New beta release to make the schema and validation changes made so far available on the official nuget package.