Skip to content

Bump DocumentFormat.OpenXml from 2.20.0 to 3.5.1#11

Open
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/nuget/DocumentFormat.OpenXml-3.5.1
Open

Bump DocumentFormat.OpenXml from 2.20.0 to 3.5.1#11
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/nuget/DocumentFormat.OpenXml-3.5.1

Conversation

@dependabot
Copy link
Copy Markdown

@dependabot dependabot bot commented on behalf of github Apr 5, 2026

Updated DocumentFormat.OpenXml from 2.20.0 to 3.5.1.

Release notes

Sourced from DocumentFormat.OpenXml's releases.

3.5.1

Added

  • Added DocumentFormat.OpenXml.Office2016.Drawing.ChartDrawing.Offset class
  • Added Version attribute to DocumentFormat.OpenXml.Office2016.Drawing.ChartDrawing.ChartSpace
  • Added FeatureList attribute to DocumentFormat.OpenXml.Office2016.Drawing.ChartDrawing.ChartSpace
  • Added FalbackImg attribute to DocumentFormat.OpenXml.Office2016.Drawing.ChartDrawing.ChartSpace
  • Added DocumentFormat.OpenXml.Office2016.Drawing.ChartDrawing.ExtensionDropMode enum

3.4.1

Added

  • Added MediaDataPartType.Mp4 to support MP4 video media parts in presentations and documents (#​1866)
  • Updated bundled Open XML schemas to the Q3 2025 Office release, enabling newer document and presentation features (#​1963)

Changed

  • Reduced JIT and AOT size and improved document load performance by removing the generic builder pattern from element metadata creation (#​1842, #​1843)
  • Optimized FromChunkedBase64String to significantly reduce allocations and improve throughput when decoding chunked base64 content (≈2.4× faster, ≈70% less memory) (#​1868)

Fixed

  • Switched to XmlDOMTextWriter instead of XmlWriter.Create to correctly handle serialization of certain XML content (#​1869, #​1961)
  • Added a clear error when attempting to open encrypted documents that the SDK cannot process (#​1635, #​1969)
  • Improved exception messages when required package parts are missing by including the name of the missing part (#​1971, #​1974)

Documentation

  • Clarified the README SDK description and simplified the note on 3.0.0 breaking changes (#​1858)
  • Documented that disposing a package with AutoSave set to false does not persist changes (#​1873)
  • Removed the PowerPoint modern comments sample, which now lives on learn.microsoft.com (#​1861)

Thanks to the following for their contributions:

@​QuocDatHoang
@​Varorbc

3.3.0

Added

  • Added DocumentFormat.OpenXml.Office.SpreadSheetML.Y2024.WorkbookCompatibilityVersion namespace

Fixed

  • Performance of .ToFlatOpc(...) has been greatly improved for large parts (#​1863)

Thanks to the following for their contributions:

@​QuocDatHoang

3.2.0

Added

  • Added DocumentFormat.OpenXml.Office.SpreadSheetML.Y2022.PivotRichData namespace
  • Added DocumentFormat.OpenXml.Office.SpreadSheetML.Y2024.PivotDynamicArrays namespace

Changed

  • Updated Nuget badge on README

Fixed

  • Fixed issue where a disposed object (DeflateStream) cannot be accessed after recovering from malformed url (#​1802)
  • Fixed issue with relationships not being created when cloning Flat OPC (#​1814)
  • Fixed issue with corrupt files remaining locked after attempting to open with WordprocessingDocument.Open (#​1681)
  • Fixed issue with changes not applied after .Save() (#​1771)
  • Fixed AddWorkbookPart throws exception if no main part is available (#​1745)
  • Fixed issue with base classes not included with LINQ generation (#​1838)

Thanks to the following for their contributions:

@​WeihanLi

3.1.1

Fixed

  • Updated System.IO.Packaging and other dependencies (#​1794, #​1795, #​1796, #​1782, #​1808)
  • Fixed add c16:uniqueId to several chart complex types (#​1762)
  • Fixed rather than in the documentation comments (#​1775)

3.1.0

Added

  • Added DocumentFormat.OpenXml.Office.SpreadSheetML.Y2024.PivotAutoRefresh namespace
  • Added DocumentFormat.OpenXml.Office.SpreadSheetML.Y2024.PivotDynamicArrays namespace
  • Added DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.DataSourceVersioning namespace
  • Added DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.ExternalCodeService namespace
  • Added DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.MsForms namespace
  • Added DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation namespace

Fixed

  • Fixed issue where OpenXmlUnknownElement is returned instead of CommentPropertiesExtension (#​1751)
  • Fixed issue where OpenXmlWriter is unable to write SharedStringTablePart (#​1755)

3.0.2

Fixed

  • Fixed issue where temp files were shareable and not deleted on close (#​1658)

3.0.1

Fixed

  • Fixed issue where document type would not be correct unless content type was checked first (#​1625)
  • Added check to only seek on packages where it is supported (#​1644)
  • If a malformed URI is encountered, the exception is now the same as v2.x (OpenXmlPackageException with an inner UriFormatException) (#​1644)

3.0.0

Added

  • Packages can now be saved on .NET Core and .NET 5+ if constructed with a path or stream (#​1307).
  • Packages can now support malformed URIs (such as relationships with a URI such as mailto:person@)
  • Introduce equality comparers for OpenXmlElement (#​1476)
  • IFeatureCollection can now be enumerated and has a helpful debug view to see what features are registered (#​1452)
  • Add mime types to part creation (#​1488)
  • DocumentFormat.OpenXml.Office.PowerPoint.Y2023.M02.Main namespace
  • DocumentFormat.OpenXml.Office.PowerPoint.Y2022.M03.Main namespace
  • DocumentFormat.OpenXml.Office.SpreadSheetML.Y2021.ExtLinks2021 namespace

Changed

  • When validation finds incorrect part, it will now include the relationship type rather than a class name
  • IDisposableFeature is now a part of the framework package and is available by default on a package or part.

Breaking Changes

  • .NET Standard 1.3 is no longer a supported platform. .NET Standard 2.0 is the lowest .NET Standard supported.
  • Core infrastructure is now contained in a new package DocumentFormat.OpenXml.Framework. Typed classes are still in DocumentFormat.OpenXml. This means that you may reference DocumentFormat.OpenXml and still compile the same types, but if you want a smaller package, you may rely on just the framework package.
  • Changed type of OpenXmlPackage.Package to DocumentFormat.OpenXml.Packaging.IPackage instead of System.IO.Packaging.Package with a similar API surface
  • EnumValue<T> now is used to box a struct rather than a System.Enum. This allows us to enable behavior on it without resorting to reflection
  • Methods on parts to add child parts (i.e. AddImagePart) are now implemented as extension methods off of a new marker interface ISupportedRelationship<T>
  • Part type info enums (i.e. ImagePartType) is no longer an enum, but a static class to expose well-known part types as structs. Now any method to define a new content-type/extension pair can be called with the new PartTypeInfo struct that will contain the necessary information.
  • OpenXmlPackage.CanSave is now an instance property (#​1307)
  • Removed OpenXmlSettings.RelationshipErrorHandlerFactory and associated types and replaced with a built-in mechanism to enable this
  • IdPartPair is now a readonly struct rather than a class
  • Renamed PartExtensionProvider to IPartExtensionFeature and reduced its surface area to only two methods (instead of a full Dictionary<,>). The property to access this off of OpenXmlPackage has been removed, but may be accessed via Features.Get<IPartExtensionFeature>() if needed.
  • OpenXmlPart/OpenXmlContainer/OpenXmlPackage and derived types now have internal constructors (these had internal abstract methods so most likely weren't subclassed externally)
  • OpenXmlElementList is now a struct that implements IEnumerable<OpenXmlElement> and IReadOnlyList<OpenXmlElement> where available (#​1429)
  • Individual implementations of OpenXmlPartReader are available now for each package type (i.e. WordprocessingDocumentPartReader, SpreadsheetDocumentPartReader, PresentationDocumentPartReader), and the previous TypedOpenXmlPartReader has been removed. (#​1403)
  • Reduced unnecessary target frameworks for packages besides DocumentFormat.OpenXml.Framework (#​1471)
  • Changed some spelling issues for property names (#​1463, #​1444)
  • Model3D now represents the modified xml element tag name am3d.model3d (Previously am3d.model3D)
  • Removed DocumentFormat.OpenXml.Office.SpreadSheetML.Y2022.PivotRichData.PivotCacheHasRichValuePivotCacheRichInfo
  • Removed DocumentFormat.OpenXml.Office.SpreadSheetML.Y2022.PivotRichData.RichDataPivotCacheGuid
  • Removed unused SchemaAttrAttribute (#​1316)
  • Removed unused ChildElementInfoAttribute (#​1316)
  • Removed OpenXmlSimpleType.TextValue. This property was never meant to be used externally (#​1316)
  • Removed obsolete validation logic from v1 of the SDK (#​1316)
  • Removed obsoleted methods from 2.x (#​1316)
  • Removed mutable properties on OpenXmlAttribute and marked as readonly (#​1282)
  • Removed OpenXmlPackage.Close in favor of Dispose (#​1373)
  • Removed OpenXmlPackage.SaveAs in favor of Clone (#​1376)

3.0.0-beta3

Added

  • Introduce equality comparers for OpenXmlElement (#​1476)
  • IFeatureCollection can now be enumerated and has a helpful debug view to see what features are registered (#​1452)
  • Add mime types to part creation (#​1488)

Breaking changes

  • Reduced unnecessary target frameworks for packages besides DocumentFormat.OpenXml.Framework (#​1471)
  • Changed some spelling issues for property names (#​1463, #​1444)

3.0.0-beta2

Breaking Changes

  • OpenXmlElementList is now a struct that implements IEnumerable<OpenXmlElement> and IReadOnlyList<OpenXmlElement> (where available)
  • Individual implementations of OpenXmlPartReader are available now for each package type (i.e. WordprocessingDocumentPartReader, SpreadsheetDocumentPartReader, PresentationDocumentPartReader), and the previous TypedOpenXmlPartReader has been removed.

3.0.0-beta1

Added

  • Packages can now be saved on .NET Core and .NET 5+ if constructed with a path or stream (#​1307).
  • Packages can now support malformed URIs (such as relationships with a URI such as mailto:person@)

Changed

  • When validation finds incorrect part, it will now include the relationship type rather than a class name

Removed

  • .NET Standard 1.3 is no longer a supported platform. .NET Standard 2.0 is the lowest .NET Standard supported.
  • Removed unused SchemaAttrAttribute
  • Removed unused ChildElementInfoAttribute
  • Removed OpenXmlSimpleType.TextValue. This property was never meant to be used externally
  • Removed obsolete validation logic from v1 of the SDK
  • Removed obsoleted methods from 2.x
  • Removed mutable properties on OpenXmlAttribute and marked as readonly
  • Removed OpenXmlPackage.Close in favor of Dispose (#​1373)
  • Removed OpenXmlPackage.SaveAs in favor of Clone (#​1376)
  • Removed OpenXmlPackage.Package property. A OpenXmlPackage is now backed by an internal (for now) type IPackage instead of System.IO.Packaging.Package

Breaking change

  • Core infrastructure is now contained in a new package DocumentFormat.OpenXml.Framework. Typed classes are still in DocumentFormat.OpenXml. This means that you may reference DocumentFormat.OpenXml and still compile the same types, but if you want a smaller package, you may rely on just the framework package.
  • EnumValue<T> now is used to box a struct rather than a System.Enum. This allows us to enable behavior on it without resorting to reflection
  • Methods on parts to add child parts (i.e. AddImagePart) are now implemented as extension methods off of a new marker interface ISupportedRelationship<T>
  • Part type info enums (i.e. ImagePartType) is no longer an enum, but a static class to expose well-known part types as structs. Now any method to define a new content-type/extension pair can be called with the new PartTypeInfo struct that will contain the necessary information.
  • OpenXmlPackage.CanSave is now an instance property (#​1307)
  • Removed OpenXmlSettings.RelationshipErrorHandlerFactory and associated types and replaced with a built-in mechanism to enable this
  • IdPartPair is now a readonly struct rather than a class
  • IDisposableFeature is now a part of the framework package and is available by default on a package or part.
  • Renamed PartExtensionProvider to IPartExtensionFeature and reduced its surface area to only two methods (instead of a full Dictionary<,>). The property to access this off of OpenXmlPackage has been removed, but may be accessed via Features.Get<IPartExtensionFeature>() if needed.
  • OpenXmlPart/OpenXmlContainer/OpenXmlPackage and derived types now have internal constructors (these had internal abstract methods so most likely weren't subclassed externally)

Commits viewable in compare view.

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

---
updated-dependencies:
- dependency-name: DocumentFormat.OpenXml
  dependency-version: 3.5.1
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added .NET Pull requests that update .NET code dependencies Pull requests that update a dependency file labels Apr 5, 2026
@codacy-production
Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

🟢 Metrics 0 complexity

Metric Results
Complexity 0

View in Codacy

AI Reviewer: run a review on demand. To trigger the first review automatically, go to your organization or repository integration settings. AI can make mistakes. Always validate suggestions.

Run reviewer

TIP This summary will be updated as you push new changes. Give us feedback

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file .NET Pull requests that update .NET code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants