From 79f056ad3630bcfa77bf1b9d0659e222f9e3edf5 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 09:55:02 -0700 Subject: [PATCH 01/39] System.Buffers docs --- xml/System.Buffers/ArrayBufferWriter`1.xml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/xml/System.Buffers/ArrayBufferWriter`1.xml b/xml/System.Buffers/ArrayBufferWriter`1.xml index 37c7bb76240..31877b8dd26 100644 --- a/xml/System.Buffers/ArrayBufferWriter`1.xml +++ b/xml/System.Buffers/ArrayBufferWriter`1.xml @@ -227,6 +227,7 @@ You must request a new buffer after calling `Advance` to continue writing more d You must clear the before trying to reuse it. ]]> + @@ -385,8 +386,9 @@ This method never returns - To be added. - To be added. + Resets the data written to the underlying buffer without zeroing its content. + <para><para> You must reset or clear the <see cref="T:System.Buffers.ArrayBufferWriter`1" /> before trying to re-use it.</para><para></para><para> If you reset the writer using the <see cref="M:System.Buffers.ArrayBufferWriter`1.ResetWrittenCount" /> method, the underlying buffer will not be cleared.</para><para></para> + From 818afd4aacc0f1e255474d6b36b7046838f42652 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 09:55:22 -0700 Subject: [PATCH 02/39] System.Collections docs --- .../FrozenDictionary.xml | 30 +++++---- .../FrozenDictionary`2.xml | 13 ++++ xml/System.Collections.Frozen/FrozenSet`1.xml | 4 ++ .../OrderedDictionary`2+Enumerator.xml | 1 + .../OrderedDictionary`2+KeyCollection.xml | 15 +++++ .../OrderedDictionary`2+ValueCollection.xml | 14 +++++ .../OrderedDictionary`2.xml | 62 ++++++++++++++++--- .../PriorityQueue`2.xml | 2 +- xml/System.Collections.Generic/Stack`1.xml | 2 +- .../ImmutableDictionary.xml | 30 +++++---- 10 files changed, 135 insertions(+), 38 deletions(-) diff --git a/xml/System.Collections.Frozen/FrozenDictionary.xml b/xml/System.Collections.Frozen/FrozenDictionary.xml index 15ef3b05213..4b06bd23990 100644 --- a/xml/System.Collections.Frozen/FrozenDictionary.xml +++ b/xml/System.Collections.Frozen/FrozenDictionary.xml @@ -71,12 +71,14 @@ - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The type of the keys in the dictionary. + The type of the values in the dictionary. + The key/value pairs to use to populate the dictionary. + Creates a with the specified key/value pairs. + A that contains the specified keys and values. + + If the same key appears multiple times in the input, the latter one in the sequence takes precedence. This differs from , with which multiple duplicate keys will result in an exception. + @@ -132,13 +134,15 @@ - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The type of the keys in the dictionary. + The type of the values in the dictionary. + The comparer implementation to use to compare keys for equality. If , is used. + The key/value pairs to use to populate the dictionary. + Creates a with the specified key/value pairs. + A that contains the specified keys and values. + + If the same key appears multiple times in the input, the latter one in the sequence takes precedence. This differs from , with which multiple duplicate keys will result in an exception. + diff --git a/xml/System.Collections.Frozen/FrozenDictionary`2.xml b/xml/System.Collections.Frozen/FrozenDictionary`2.xml index e5f827bad6b..0a5f2f3a9e6 100644 --- a/xml/System.Collections.Frozen/FrozenDictionary`2.xml +++ b/xml/System.Collections.Frozen/FrozenDictionary`2.xml @@ -856,6 +856,7 @@ The zero-based index in at which copying begins. Copies the elements of the to an , starting at a particular index. To be added. + @@ -883,6 +884,7 @@ if access to the is synchronized (thread safe); otherwise, . To be added. + @@ -909,6 +911,7 @@ Gets an object that can be used to synchronize access to the . An object that can be used to synchronize access to the . To be added. + @@ -940,6 +943,7 @@ The to use as the value of the element to add. Adds an element with the provided key and value to the object. To be added. + @@ -966,6 +970,7 @@ Removes all elements from the object. To be added. + @@ -997,6 +1002,7 @@ if the contains an element with the key; otherwise, . To be added. + @@ -1024,6 +1030,7 @@ Returns an object for the object. An object for the object. To be added. + @@ -1051,6 +1058,7 @@ if the object has a fixed size; otherwise, . To be added. + @@ -1078,6 +1086,7 @@ if the object is read-only; otherwise, . To be added. + @@ -1141,6 +1150,7 @@ Gets an object containing the keys of the object. An object containing the keys of the object. To be added. + @@ -1170,6 +1180,7 @@ The key of the element to remove. Removes the element with the specified key from the object. To be added. + @@ -1196,6 +1207,7 @@ Gets an object containing the values in the object. An object containing the values in the object. To be added. + @@ -1223,6 +1235,7 @@ Returns an enumerator that iterates through a collection. An object that can be used to iterate through the collection. To be added. + diff --git a/xml/System.Collections.Frozen/FrozenSet`1.xml b/xml/System.Collections.Frozen/FrozenSet`1.xml index 9c6e00177ac..c38f227bab9 100644 --- a/xml/System.Collections.Frozen/FrozenSet`1.xml +++ b/xml/System.Collections.Frozen/FrozenSet`1.xml @@ -859,6 +859,7 @@ The zero-based index in at which copying begins. Copies the elements of the to an , starting at a particular index. To be added. + @@ -886,6 +887,7 @@ if access to the is synchronized (thread safe); otherwise, . To be added. + @@ -912,6 +914,7 @@ Gets an object that can be used to synchronize access to the . An object that can be used to synchronize access to the . To be added. + @@ -939,6 +942,7 @@ Returns an enumerator that iterates through a collection. An object that can be used to iterate through the collection. To be added. + diff --git a/xml/System.Collections.Generic/OrderedDictionary`2+Enumerator.xml b/xml/System.Collections.Generic/OrderedDictionary`2+Enumerator.xml index b7a5555574b..b9d4d375995 100644 --- a/xml/System.Collections.Generic/OrderedDictionary`2+Enumerator.xml +++ b/xml/System.Collections.Generic/OrderedDictionary`2+Enumerator.xml @@ -130,6 +130,7 @@ Gets both the key and the value of the current dictionary entry. A containing both the key and the value of the current dictionary entry. This member is an explicit interface member implementation. It can be used only when the <xref:System.Collections.Generic.OrderedDictionary`2.Enumerator> instance is cast to an <xref:System.Collections.IDictionaryEnumerator> interface. + diff --git a/xml/System.Collections.Generic/OrderedDictionary`2+KeyCollection.xml b/xml/System.Collections.Generic/OrderedDictionary`2+KeyCollection.xml index 35d4b96737b..cc098840f95 100644 --- a/xml/System.Collections.Generic/OrderedDictionary`2+KeyCollection.xml +++ b/xml/System.Collections.Generic/OrderedDictionary`2+KeyCollection.xml @@ -92,6 +92,7 @@ if is found in the ; otherwise, . To be added. + @@ -122,6 +123,7 @@ The zero-based index in at which copying begins. Copies the elements of the to an , starting at a particular index. To be added. + @@ -149,6 +151,7 @@ Gets the number of elements contained in the . The number of elements contained in the . To be added. + @@ -500,6 +503,7 @@ The zero-based index in at which copying begins. Copies the elements of the to an , starting at a particular index. To be added. + @@ -526,6 +530,7 @@ if access to the is synchronized (thread safe); otherwise, . This member is an explicit interface member implementation. It can be used only when the <xref:System.Collections.Generic.OrderedDictionary`2.KeyCollection> instance is cast to an <xref:System.Collections.ICollection> interface. + @@ -557,6 +562,7 @@ Gets an object that can be used to synchronize access to the . An object that can be used to synchronize access to the . This member is an explicit interface member implementation. It can be used only when the <xref:System.Collections.Generic.OrderedDictionary`2.KeyCollection> instance is cast to an <xref:System.Collections.ICollection> interface. + @@ -583,6 +589,7 @@ Returns an enumerator that iterates through a collection. An object that can be used to iterate through the collection. This member is an explicit interface member implementation. It can be used only when the <xref:System.Collections.Generic.OrderedDictionary`2.KeyCollection> instance is cast to an <xref:System.Collections.IEnumerable> interface. + @@ -638,6 +645,7 @@ Removes all items from the . This member is an explicit interface member implementation. It can be used only when the <xref:System.Collections.Generic.OrderedDictionary`2.KeyCollection> instance is cast to an <xref:System.Collections.IList> interface. + @@ -668,6 +676,7 @@ if the is found in the ; otherwise, . To be added. + @@ -697,6 +706,7 @@ Determines the index of a specific item in the . The index of if found in the list; otherwise, -1. To be added. + @@ -727,6 +737,7 @@ The object to insert into the . Inserts an item into the at the specified index. To be added. + @@ -753,6 +764,7 @@ if the has a fixed size; otherwise, . This member is an explicit interface member implementation. It can be used only when the <xref:System.Collections.Generic.OrderedDictionary`2.KeyCollection> instance is cast to an <xref:System.Collections.IList> interface. + @@ -779,6 +791,7 @@ if the is read-only; otherwise, . This member is an explicit interface member implementation. It can be used only when the <xref:System.Collections.Generic.OrderedDictionary`2.KeyCollection> instance is cast to an <xref:System.Collections.IList> interface. + @@ -843,6 +856,7 @@ The object to remove from the . Removes the first occurrence of a specific object from the . To be added. + @@ -871,6 +885,7 @@ The zero-based index of the item to remove. Removes the item at the specified index. To be added. + diff --git a/xml/System.Collections.Generic/OrderedDictionary`2+ValueCollection.xml b/xml/System.Collections.Generic/OrderedDictionary`2+ValueCollection.xml index f196e230e2b..54f7f0ef3a9 100644 --- a/xml/System.Collections.Generic/OrderedDictionary`2+ValueCollection.xml +++ b/xml/System.Collections.Generic/OrderedDictionary`2+ValueCollection.xml @@ -92,6 +92,7 @@ The zero-based index in at which copying begins. Copies the elements of the to an , starting at a particular index. To be added. + @@ -119,6 +120,7 @@ Gets the number of elements contained in the . The number of elements contained in the . To be added. + @@ -527,6 +529,7 @@ if access to the is synchronized (thread safe); otherwise, . This member is an explicit interface member implementation. It can be used only when the <xref:System.Collections.Generic.OrderedDictionary`2.ValueCollection> instance is cast to an <xref:System.Collections.ICollection> interface. + @@ -558,6 +561,7 @@ Gets an object that can be used to synchronize access to the . An object that can be used to synchronize access to the . This member is an explicit interface member implementation. It can be used only when the <xref:System.Collections.Generic.OrderedDictionary`2.ValueCollection> instance is cast to an <xref:System.Collections.ICollection> interface. + @@ -584,6 +588,7 @@ Returns an enumerator that iterates through a collection. An object that can be used to iterate through the collection. This member is an explicit interface member implementation. It can be used only when the <xref:System.Collections.Generic.OrderedDictionary`2.ValueCollection> instance is cast to an <xref:System.Collections.IEnumerable> interface. + @@ -613,6 +618,7 @@ Adds an item to the . The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the collection. To be added. + @@ -638,6 +644,7 @@ Removes all items from the . This member is an explicit interface member implementation. It can be used only when the <xref:System.Collections.Generic.OrderedDictionary`2.ValueCollection> instance is cast to an <xref:System.Collections.IList> interface. + @@ -668,6 +675,7 @@ if the is found in the ; otherwise, . To be added. + @@ -697,6 +705,7 @@ Determines the index of a specific item in the . The index of if found in the list; otherwise, -1. To be added. + @@ -727,6 +736,7 @@ The object to insert into the . Inserts an item to the at the specified index. To be added. + @@ -753,6 +763,7 @@ if the has a fixed size; otherwise, . This member is an explicit interface member implementation. It can be used only when the <xref:System.Collections.Generic.OrderedDictionary`2.ValueCollection> instance is cast to an <xref:System.Collections.IList> interface. + @@ -779,6 +790,7 @@ if the is read-only; otherwise, . This member is an explicit interface member implementation. It can be used only when the <xref:System.Collections.Generic.OrderedDictionary`2.ValueCollection> instance is cast to an <xref:System.Collections.IList> interface. + @@ -843,6 +855,7 @@ The object to remove from the . Removes the first occurrence of a specific object from the . To be added. + @@ -871,6 +884,7 @@ The zero-based index of the item to remove. Removes the item at the specified index. To be added. + diff --git a/xml/System.Collections.Generic/OrderedDictionary`2.xml b/xml/System.Collections.Generic/OrderedDictionary`2.xml index 2957ab48c17..7d1e153106c 100644 --- a/xml/System.Collections.Generic/OrderedDictionary`2.xml +++ b/xml/System.Collections.Generic/OrderedDictionary`2.xml @@ -443,6 +443,8 @@ if the contains an element with the key; otherwise, . To be added. + + is . @@ -733,6 +735,8 @@ if the element is successfully removed; otherwise, . This method also returns if was not found in the original . To be added. + + is . @@ -769,6 +773,8 @@ if the element is successfully found and removed; otherwise, . To be added. + + is . @@ -798,6 +804,8 @@ The zero-based index of the item to remove. Removes the item at the specified index. To be added. + + is less than 0 or greater than or equal to . @@ -825,6 +833,8 @@ The value to store at the specified index. Sets the value for the key at the specified index. To be added. + + is less than 0 or greater than or equal to . @@ -855,6 +865,10 @@ Sets the key/value pair at the specified index. To be added. + + is . + + is less than 0 or greater than or equal to . @@ -1284,6 +1298,7 @@ The zero-based index in at which copying begins. Copies the elements of the to an , starting at a particular index. To be added. + @@ -1310,6 +1325,7 @@ if access to the is synchronized (thread safe); otherwise, . This member is an explicit interface member implementation. It can be used only when the <xref:System.Collections.Generic.OrderedDictionary`2> instance is cast to an <xref:System.Collections.ICollection> interface. + @@ -1335,6 +1351,7 @@ Gets an object that can be used to synchronize access to the . An object that can be used to synchronize access to the . This member is an explicit interface member implementation. It can be used only when the <xref:System.Collections.Generic.OrderedDictionary`2> instance is cast to an <xref:System.Collections.ICollection> interface. + @@ -1365,6 +1382,7 @@ The to use as the value of the element to add. Adds an element with the provided key and value to the object. To be added. + @@ -1395,6 +1413,7 @@ if the contains an element with the key; otherwise, . To be added. + @@ -1421,6 +1440,7 @@ Returns an object for the object. An object for the object. This member is an explicit interface member implementation. It can be used only when the <xref:System.Collections.Generic.OrderedDictionary`2> instance is cast to an <xref:System.Collections.IDictionary> interface. + @@ -1447,6 +1467,7 @@ if the object has a fixed size; otherwise, . This member is an explicit interface member implementation. It can be used only when the <xref:System.Collections.Generic.OrderedDictionary`2> instance is cast to an <xref:System.Collections.IDictionary> interface. + @@ -1473,6 +1494,7 @@ if the object is read-only; otherwise, . This member is an explicit interface member implementation. It can be used only when the <xref:System.Collections.Generic.OrderedDictionary`2> instance is cast to an <xref:System.Collections.IDictionary> interface. + @@ -1534,6 +1556,7 @@ Gets an object containing the keys of the object. An object containing the keys of the object. This member is an explicit interface member implementation. It can be used only when the <xref:System.Collections.Generic.OrderedDictionary`2> instance is cast to an <xref:System.Collections.IDictionary> interface. + @@ -1562,6 +1585,7 @@ The key of the element to remove. Removes the element with the specified key from the object. To be added. + @@ -1587,6 +1611,7 @@ Gets an object containing the values in the object. An object containing the values in the object. This member is an explicit interface member implementation. It can be used only when the <xref:System.Collections.Generic.OrderedDictionary`2> instance is cast to an <xref:System.Collections.IDictionary> interface. + @@ -1643,6 +1668,7 @@ Adds an item to the . The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the collection. To be added. + @@ -1673,6 +1699,7 @@ if the is found in the ; otherwise, . To be added. + @@ -1702,6 +1729,7 @@ Determines the index of a specific item in the . The index of if found in the list; otherwise, -1. To be added. + @@ -1732,6 +1760,7 @@ The object to insert into the . Inserts an item to the at the specified index. To be added. + @@ -1758,6 +1787,7 @@ if the has a fixed size; otherwise, . This member is an explicit interface member implementation. It can be used only when the <xref:System.Collections.Generic.OrderedDictionary`2> instance is cast to an <xref:System.Collections.IList> interface. + @@ -1784,6 +1814,7 @@ if the is read-only; otherwise, . This member is an explicit interface member implementation. It can be used only when the <xref:System.Collections.Generic.OrderedDictionary`2> instance is cast to an <xref:System.Collections.IList> interface. + @@ -1848,6 +1879,7 @@ The object to remove from the . Removes the first occurrence of a specific object from the . To be added. + @@ -1950,12 +1982,15 @@ - To be added. - To be added. - To be added. - To be added. - To be added. + The key of the element to add. + The value of the element to add. The value can be for reference types. + The index of the added or existing . This is always a valid index into the dictionary. + Adds the specified key and value to the dictionary if the key doesn't already exist. + + if the key didn't exist and the key and value were added to the dictionary; otherwise, . To be added. + + is . @@ -1996,6 +2031,8 @@ if the object that implements contains an element with the specified key; otherwise, . To be added. + + is . @@ -2026,12 +2063,17 @@ - To be added. - To be added. - To be added. - To be added. - To be added. + The key of the value to get. + + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, the default value for the type of the value parameter. + + The index of if found; otherwise, -1. + Gets the value associated with the specified key. + + if the contains an element with the specified key; otherwise, . To be added. + + is . diff --git a/xml/System.Collections.Generic/PriorityQueue`2.xml b/xml/System.Collections.Generic/PriorityQueue`2.xml index 68b83171719..e4118809188 100644 --- a/xml/System.Collections.Generic/PriorityQueue`2.xml +++ b/xml/System.Collections.Generic/PriorityQueue`2.xml @@ -288,7 +288,7 @@ Constructs the heap using a heapify operation, which is generally faster than en System.Int32 - To be added. + Gets the total numbers of elements the queue's backing storage can hold without resizing. To be added. To be added. diff --git a/xml/System.Collections.Generic/Stack`1.xml b/xml/System.Collections.Generic/Stack`1.xml index 4bdb0e8c5dc..e4ffd6fc1ca 100644 --- a/xml/System.Collections.Generic/Stack`1.xml +++ b/xml/System.Collections.Generic/Stack`1.xml @@ -1244,7 +1244,7 @@ ]]> - + diff --git a/xml/System.Collections.Immutable/ImmutableDictionary.xml b/xml/System.Collections.Immutable/ImmutableDictionary.xml index dcc3631fcb6..990f1b1c58c 100644 --- a/xml/System.Collections.Immutable/ImmutableDictionary.xml +++ b/xml/System.Collections.Immutable/ImmutableDictionary.xml @@ -683,12 +683,14 @@ - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The type of keys in the dictionary. + The type of values in the dictionary. + The items used to populate the dictionary before it's immutable. + Creates a new immutable dictionary that contains the specified items. + A new immutable dictionary that contains the specified items. + + In contrast to , if there are duplicate keys in the collection, the last one will be used, rather than an exception being thrown. + @@ -744,13 +746,15 @@ - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The type of keys in the dictionary. + The type of values in the dictionary. + The comparer implementation to use to compare keys for equality. + The items to add to the dictionary before it's immutable. + Creates a new immutable dictionary that contains the specified items and uses the specified key comparer. + A new immutable dictionary that contains the specified items and uses the specified comparer. + + In contrast to , if there are duplicate keys in the collection, the last one will be used, rather than an exception being thrown. + From fa435f027c2012eb5e706d33f3e1d6208ea1ccaa Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 09:55:44 -0700 Subject: [PATCH 03/39] System.ComponentModel.DataAnnotations docs --- .../ValidationContext.xml | 23 ++++++++++++++----- .../ValidationResult.xml | 1 + 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/xml/System.ComponentModel.DataAnnotations/ValidationContext.xml b/xml/System.ComponentModel.DataAnnotations/ValidationContext.xml index 95baa930b9b..a92529bcb59 100644 --- a/xml/System.ComponentModel.DataAnnotations/ValidationContext.xml +++ b/xml/System.ComponentModel.DataAnnotations/ValidationContext.xml @@ -304,12 +304,23 @@ - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The object instance being validated. It cannot be . + The display name associated with the object instance. + + Optional to use when is called. + If it is , will always return . + + + Optional set of key/value pairs to make available to consumers via . + If , an empty dictionary will be created. If not , the set of key/value pairs will be copied into a new dictionary, preventing consumers from modifying the original dictionary. + + + Construct a for a given object instance with a , an optional , and an optional property bag of . + + + This constructor is trim-safe because it does not use reflection to resolve the Type of the to support setting the DisplayName. + + When is diff --git a/xml/System.ComponentModel.DataAnnotations/ValidationResult.xml b/xml/System.ComponentModel.DataAnnotations/ValidationResult.xml index 2d63c71a5a5..c12dab4f02e 100644 --- a/xml/System.ComponentModel.DataAnnotations/ValidationResult.xml +++ b/xml/System.ComponentModel.DataAnnotations/ValidationResult.xml @@ -41,6 +41,7 @@ Represents a container for the results of a validation request. To be added. + From 2e99df51ecd297a866a29e38200162a7d10919f5 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 09:56:00 -0700 Subject: [PATCH 04/39] System.ComponentModel docs --- xml/System.ComponentModel/DateOnlyConverter.xml | 4 ++++ xml/System.ComponentModel/TimeOnlyConverter.xml | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/xml/System.ComponentModel/DateOnlyConverter.xml b/xml/System.ComponentModel/DateOnlyConverter.xml index 375f6f9eaf3..848572c7bc1 100644 --- a/xml/System.ComponentModel/DateOnlyConverter.xml +++ b/xml/System.ComponentModel/DateOnlyConverter.xml @@ -83,6 +83,7 @@ if this object can perform the conversion; otherwise, . To be added. + @@ -121,6 +122,7 @@ if this converter can perform the conversion; otherwise, . To be added. + @@ -160,6 +162,7 @@ Converts the given value object to a object. An that represents the converted . To be added. + @@ -201,6 +204,7 @@ Converts the given value object from a object using the arguments. An that represents the converted . To be added. + diff --git a/xml/System.ComponentModel/TimeOnlyConverter.xml b/xml/System.ComponentModel/TimeOnlyConverter.xml index ef30ea206e4..faeff01f7cf 100644 --- a/xml/System.ComponentModel/TimeOnlyConverter.xml +++ b/xml/System.ComponentModel/TimeOnlyConverter.xml @@ -83,6 +83,7 @@ if this object can perform the conversion; otherwise, . To be added. + @@ -121,6 +122,7 @@ if this converter can perform the conversion; otherwise, . To be added. + @@ -160,6 +162,7 @@ Converts the given value object to a object. An that represents the converted . To be added. + @@ -201,6 +204,7 @@ Converts the given value object from a object using the arguments. An that represents the converted . To be added. + From 771bfa513c233fb7d6c353b46060cc178ccbe5da Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 09:56:15 -0700 Subject: [PATCH 05/39] System.Composition docs --- xml/System.Composition.Hosting.Core/ExportDescriptorPromise.xml | 1 + xml/System.Composition.Hosting.Core/LifetimeContext.xml | 1 + xml/System.Composition/CompositionContext.xml | 2 ++ xml/System.Composition/SharedAttribute.xml | 1 + xml/System.Composition/SharingBoundaryAttribute.xml | 1 + 5 files changed, 6 insertions(+) diff --git a/xml/System.Composition.Hosting.Core/ExportDescriptorPromise.xml b/xml/System.Composition.Hosting.Core/ExportDescriptorPromise.xml index a646fef9f4c..9bc4f8062cb 100644 --- a/xml/System.Composition.Hosting.Core/ExportDescriptorPromise.xml +++ b/xml/System.Composition.Hosting.Core/ExportDescriptorPromise.xml @@ -66,6 +66,7 @@ Initializes a new instance of the class. + diff --git a/xml/System.Composition.Hosting.Core/LifetimeContext.xml b/xml/System.Composition.Hosting.Core/LifetimeContext.xml index e19bacfc275..15a45a4ea17 100644 --- a/xml/System.Composition.Hosting.Core/LifetimeContext.xml +++ b/xml/System.Composition.Hosting.Core/LifetimeContext.xml @@ -42,6 +42,7 @@ A bound part instance is always protected by locking `this`, and should never be ]]> + diff --git a/xml/System.Composition/CompositionContext.xml b/xml/System.Composition/CompositionContext.xml index 3d7994b03f1..f1bcebc44aa 100644 --- a/xml/System.Composition/CompositionContext.xml +++ b/xml/System.Composition/CompositionContext.xml @@ -381,6 +381,7 @@ This constructor is protected; it can only be called by classes derived from the if an export was found; otherwise, . + @@ -446,6 +447,7 @@ This constructor is protected; it can only be called by classes derived from the if an export was found; otherwise, . + diff --git a/xml/System.Composition/SharedAttribute.xml b/xml/System.Composition/SharedAttribute.xml index f4e73a9b2ca..05ddbe580a8 100644 --- a/xml/System.Composition/SharedAttribute.xml +++ b/xml/System.Composition/SharedAttribute.xml @@ -34,6 +34,7 @@ Marks the decorated part as being constrained to sharing within the specified boundary. + diff --git a/xml/System.Composition/SharingBoundaryAttribute.xml b/xml/System.Composition/SharingBoundaryAttribute.xml index 0c4dcec2301..4fcad7dd491 100644 --- a/xml/System.Composition/SharingBoundaryAttribute.xml +++ b/xml/System.Composition/SharingBoundaryAttribute.xml @@ -42,6 +42,7 @@ When applied to an import of an object, marks the boundary of a sharing scope. + From e9bf3baf448c240c3ed010f1f206c7126197b1a6 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 09:56:33 -0700 Subject: [PATCH 06/39] System.Data docs --- xml/System.Data.SqlTypes/SqlDecimal.xml | 2 ++ xml/System.Data.SqlTypes/SqlMoney.xml | 1 + xml/System.Data/DataRowView.xml | 1 + xml/System.Data/SqlDbType.xml | 2 +- 4 files changed, 5 insertions(+), 1 deletion(-) diff --git a/xml/System.Data.SqlTypes/SqlDecimal.xml b/xml/System.Data.SqlTypes/SqlDecimal.xml index 0d88697d789..138d5dda18f 100644 --- a/xml/System.Data.SqlTypes/SqlDecimal.xml +++ b/xml/System.Data.SqlTypes/SqlDecimal.xml @@ -4371,6 +4371,8 @@ This member is an explicit interface member implementation. It can be used only Writes the four 32-bit unsigned integer values that make up the structure into the span. The number of items written to the . To be added. + Thrown when the is . + Thrown when the destination span is too small. diff --git a/xml/System.Data.SqlTypes/SqlMoney.xml b/xml/System.Data.SqlTypes/SqlMoney.xml index cf910ed8951..21ce034dac5 100644 --- a/xml/System.Data.SqlTypes/SqlMoney.xml +++ b/xml/System.Data.SqlTypes/SqlMoney.xml @@ -825,6 +825,7 @@ Returns the Tabular Data Stream (TDS) long value that makes up the structure of the instance. A that represents the TDS long value. To be added. + Thrown when the is . diff --git a/xml/System.Data/DataRowView.xml b/xml/System.Data/DataRowView.xml index 02ad2ec346d..a31319ca855 100644 --- a/xml/System.Data/DataRowView.xml +++ b/xml/System.Data/DataRowView.xml @@ -418,6 +418,7 @@ Returns a for the child with the specified name and parent. a for the child . To be added. + Unmatched . diff --git a/xml/System.Data/SqlDbType.xml b/xml/System.Data/SqlDbType.xml index 33fce89c853..e6fafdb1e5f 100644 --- a/xml/System.Data/SqlDbType.xml +++ b/xml/System.Data/SqlDbType.xml @@ -1450,7 +1450,7 @@ 36 - To be added. + A vector value. From 92e84fac1f246c1e42cfe62f29785a8f408963c1 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 09:56:50 -0700 Subject: [PATCH 07/39] System.Diagnostics docs --- .../Measurement`1.xml | 8 +++-- xml/System.Diagnostics.Metrics/Meter.xml | 4 ++- .../MeterOptions.xml | 4 ++- xml/System.Diagnostics/Activity.xml | 30 ++++++++++++------- xml/System.Diagnostics/ActivityListener.xml | 2 +- xml/System.Diagnostics/ActivitySource.xml | 20 ++++++------- .../ActivitySourceOptions.xml | 16 +++++----- xml/System.Diagnostics/DiagnosticSource.xml | 12 ++++++-- .../DistributedContextPropagator.xml | 11 +++++-- xml/System.Diagnostics/ExceptionRecorder.xml | 2 +- .../InitializingSwitchEventArgs.xml | 6 ++-- .../InitializingTraceSourceEventArgs.xml | 8 ++--- xml/System.Diagnostics/ProcessStartInfo.xml | 26 +++++++++++----- xml/System.Diagnostics/TraceConfiguration.xml | 2 +- 14 files changed, 96 insertions(+), 55 deletions(-) diff --git a/xml/System.Diagnostics.Metrics/Measurement`1.xml b/xml/System.Diagnostics.Metrics/Measurement`1.xml index 7083cccd444..2dc27b9774d 100644 --- a/xml/System.Diagnostics.Metrics/Measurement`1.xml +++ b/xml/System.Diagnostics.Metrics/Measurement`1.xml @@ -160,9 +160,11 @@ - To be added. - To be added. - To be added. + The value of the measurement. + A containing the tags associated with the measurement. + + Initializes a new instance of the Measurement with the provided and a containing zero or more associated . + To be added. diff --git a/xml/System.Diagnostics.Metrics/Meter.xml b/xml/System.Diagnostics.Metrics/Meter.xml index ee6bc9f3894..0d9270f2563 100644 --- a/xml/System.Diagnostics.Metrics/Meter.xml +++ b/xml/System.Diagnostics.Metrics/Meter.xml @@ -2528,7 +2528,9 @@ UpDownCounter is an Instrument which supports reporting positive or negative met System.String - To be added. + + The optional schema URL specifies a location of a Schema File that can be retrieved using HTTP or HTTPS protocol. + To be added. To be added. diff --git a/xml/System.Diagnostics.Metrics/MeterOptions.xml b/xml/System.Diagnostics.Metrics/MeterOptions.xml index 6a6a1bad971..c40be1d5cf3 100644 --- a/xml/System.Diagnostics.Metrics/MeterOptions.xml +++ b/xml/System.Diagnostics.Metrics/MeterOptions.xml @@ -146,7 +146,9 @@ System.String - To be added. + + The optional schema URL specifies a location of a Schema File that can be retrieved using HTTP or HTTPS protocol. + To be added. To be added. diff --git a/xml/System.Diagnostics/Activity.xml b/xml/System.Diagnostics/Activity.xml index e74cf617b3b..fc62fff5768 100644 --- a/xml/System.Diagnostics/Activity.xml +++ b/xml/System.Diagnostics/Activity.xml @@ -249,12 +249,13 @@ Callers should either restrict the number of events added to the same `Activity` - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The exception to add to the attached events list. + The tags to add to the exception event. + The timestamp to add to the exception event. + Add an object containing the exception information to the list. + + for convenient chaining. + <para><para>- The name of the event will be "exception", and it will include the tags "exception.message", "exception.stacktrace", and "exception.type", in addition to the tags provided in the <paramref name="tags" /> parameter.</para><para>- Any registered <see cref="T:System.Diagnostics.ActivityListener" /> with the <see cref="P:System.Diagnostics.ActivityListener.ExceptionRecorder" /> callback will be notified about this exception addition before the <see cref="T:System.Diagnostics.ActivityEvent" /> object is added to the <see cref="P:System.Diagnostics.Activity.Events" /> list.</para><para>- Any registered <see cref="T:System.Diagnostics.ActivityListener" /> with the <see cref="P:System.Diagnostics.ActivityListener.ExceptionRecorder" /> callback that adds "exception.message", "exception.stacktrace", or "exception.type" tags will not have these tags overwritten, except by any subsequent <see cref="T:System.Diagnostics.ActivityListener" /> that explicitly overwrites them.</para> @@ -277,10 +278,13 @@ Callers should either restrict the number of events added to the same `Activity` - To be added. - To be added. - To be added. - To be added. + The to add. + Add an to the list. + + for convenient chaining. + + For contexts that are available during span creation, adding links at span creation is preferred to calling later, because head sampling decisions can only consider information present during span creation. + @@ -1236,6 +1240,7 @@ An operation name is the *coarsest* name that is useful for grouping/filtering. Gets the parent that created this activity. The parent of this , if it is from the same process, or if this instance has no parent (it is a root activity) or if the parent is from outside the process. To be added. + @@ -1884,6 +1889,8 @@ Use + + @@ -2022,6 +2029,8 @@ Call + + @@ -2091,6 +2100,7 @@ Call Gets a collection of key/value pairs that represent information that will be logged along with the to the logging system. Information that will be logged along with the to the logging system. In .NET 5 and later versions, the order of the tags in the list matches the order in which they're added to the list. In previous versions, the order is reversed, that is, the first item added is last in the list. + diff --git a/xml/System.Diagnostics/ActivityListener.xml b/xml/System.Diagnostics/ActivityListener.xml index 892dc8dfd67..d99ec922724 100644 --- a/xml/System.Diagnostics/ActivityListener.xml +++ b/xml/System.Diagnostics/ActivityListener.xml @@ -165,7 +165,7 @@ System.Diagnostics.ExceptionRecorder - To be added. + Set or get the callback used to listen to events when exceptions are added. To be added. To be added. diff --git a/xml/System.Diagnostics/ActivitySource.xml b/xml/System.Diagnostics/ActivitySource.xml index 4b04bf9af03..7cbd40b4e41 100644 --- a/xml/System.Diagnostics/ActivitySource.xml +++ b/xml/System.Diagnostics/ActivitySource.xml @@ -49,8 +49,8 @@ - To be added. - To be added. + The object to use for initializing the ActivitySource object. + Initialize a new instance of the ActivitySource object using the . To be added. @@ -71,8 +71,8 @@ - To be added. - To be added. + The name of the ActivitySource object + Construct an ActivitySource object with the input name To be added. @@ -148,10 +148,10 @@ - To be added. - To be added. - To be added. - To be added. + The name of the ActivitySource object + The version of the component publishing the tracing info. + The optional ActivitySource tags. + Construct an ActivitySource object with the input name To be added. @@ -672,7 +672,7 @@ If the Activity object is created, it will not start automatically. Callers need System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<System.String,System.Object>> - To be added. + Returns the tags associated with the ActivitySource. To be added. To be added. @@ -699,7 +699,7 @@ If the Activity object is created, it will not start automatically. Callers need System.String - To be added. + Returns the telemetry schema URL associated with the ActivitySource. To be added. To be added. diff --git a/xml/System.Diagnostics/ActivitySourceOptions.xml b/xml/System.Diagnostics/ActivitySourceOptions.xml index 02317db2298..182d0baa0f5 100644 --- a/xml/System.Diagnostics/ActivitySourceOptions.xml +++ b/xml/System.Diagnostics/ActivitySourceOptions.xml @@ -20,7 +20,7 @@ - To be added. + Options for creating a . To be added. @@ -40,8 +40,8 @@ - To be added. - To be added. + The name of the object + Constructs a new instance of . To be added. @@ -67,7 +67,7 @@ System.String - To be added. + Get or set the object name. Cannot be . To be added. To be added. @@ -94,7 +94,7 @@ System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<System.String,System.Object>> - To be added. + The optional list of key-value pair tags associated with the . To be added. To be added. @@ -115,7 +115,9 @@ System.String - To be added. + + The optional schema URL specifies a location of a Schema File that can be retrieved using HTTP or HTTPS protocol. + To be added. To be added. @@ -136,7 +138,7 @@ System.String - To be added. + The optional version. Defaulted to empty string. To be added. To be added. diff --git a/xml/System.Diagnostics/DiagnosticSource.xml b/xml/System.Diagnostics/DiagnosticSource.xml index 930099fce66..2a6bd09e9b7 100644 --- a/xml/System.Diagnostics/DiagnosticSource.xml +++ b/xml/System.Diagnostics/DiagnosticSource.xml @@ -156,6 +156,7 @@ If there is expensive setup for the notification, you can call this method and p ]]> + @@ -331,6 +332,7 @@ Producers may pass additional details to the consumer in the payload. ]]> + @@ -375,12 +377,13 @@ Producers may pass additional details to the consumer in the payload. - To be added. + The type of the value being passed as a payload for the event. To be added. To be added. To be added. To be added. To be added. + @@ -445,6 +448,7 @@ Consumers can access + @@ -489,11 +493,12 @@ Consumers can access - To be added. + The type of the value being passed as a payload for the event. To be added. To be added. To be added. To be added. + @@ -606,11 +611,12 @@ Assume that listeners will use string prefixing to filter groups. Therefore, hav - To be added. + The type of the value being passed as a payload for the event. To be added. To be added. To be added. To be added. + diff --git a/xml/System.Diagnostics/DistributedContextPropagator.xml b/xml/System.Diagnostics/DistributedContextPropagator.xml index 761ddd57d69..d96043f2b8b 100644 --- a/xml/System.Diagnostics/DistributedContextPropagator.xml +++ b/xml/System.Diagnostics/DistributedContextPropagator.xml @@ -157,9 +157,14 @@ - To be added. + Returns a propagator that encodes and decodes distributed context and baggage information in a backward-compatible manner. To be added. - To be added. + + This propagator is not fully compliant with the W3C specification. + It inserts baggage using the "Correlation-Context" header instead of "baggage". + It also takes a more relaxed approach to handling trace state and baggage key-value pairs, allowing characters that are not permitted by the W3C specification. + Additionally, this propagator supports injecting values from Activity objects that use the ActivityIdFormat.Hierarchical format, which is not supported by the W3C specification. + @@ -179,7 +184,7 @@ - To be added. + Returns a propagator that encodes and decodes distributed context information in accordance with the W3C Trace Context and Baggage specifications. To be added. To be added. diff --git a/xml/System.Diagnostics/ExceptionRecorder.xml b/xml/System.Diagnostics/ExceptionRecorder.xml index 7de268fd094..d5e2c56e49a 100644 --- a/xml/System.Diagnostics/ExceptionRecorder.xml +++ b/xml/System.Diagnostics/ExceptionRecorder.xml @@ -25,7 +25,7 @@ To be added. To be added. To be added. - To be added. + Define the callback to be used in to receive notifications when exceptions are added to the . To be added. diff --git a/xml/System.Diagnostics/InitializingSwitchEventArgs.xml b/xml/System.Diagnostics/InitializingSwitchEventArgs.xml index b12c1ec2d6b..0c5f5db2de6 100644 --- a/xml/System.Diagnostics/InitializingSwitchEventArgs.xml +++ b/xml/System.Diagnostics/InitializingSwitchEventArgs.xml @@ -46,8 +46,8 @@ - To be added. - To be added. + The switch that is being initialized. + Initializes a new instance of the class. To be added. @@ -70,7 +70,7 @@ System.Diagnostics.Switch - To be added. + Gets the that is being initialized. To be added. To be added. diff --git a/xml/System.Diagnostics/InitializingTraceSourceEventArgs.xml b/xml/System.Diagnostics/InitializingTraceSourceEventArgs.xml index 9763a2a5fb9..fe15feee500 100644 --- a/xml/System.Diagnostics/InitializingTraceSourceEventArgs.xml +++ b/xml/System.Diagnostics/InitializingTraceSourceEventArgs.xml @@ -46,8 +46,8 @@ - To be added. - To be added. + The trace source that is being initialized. + Initializes a new instance of the class. To be added. @@ -70,7 +70,7 @@ System.Diagnostics.TraceSource - To be added. + Gets the trace source that is being initialized. To be added. To be added. @@ -94,7 +94,7 @@ System.Boolean - To be added. + Gets or sets a value indicating whether the trace source was initialized from configuration. To be added. To be added. diff --git a/xml/System.Diagnostics/ProcessStartInfo.xml b/xml/System.Diagnostics/ProcessStartInfo.xml index 2968dd7fc45..b14dc774ca9 100644 --- a/xml/System.Diagnostics/ProcessStartInfo.xml +++ b/xml/System.Diagnostics/ProcessStartInfo.xml @@ -222,7 +222,9 @@ To be added. To be added. - To be added. + + Specifies the name of the application that is to be started, as well as a set of command line arguments to pass to the application. + To be added. @@ -480,9 +482,14 @@ If you use this property to set command-line arguments, System.Boolean - To be added. - To be added. - To be added. + Gets or sets a value indicating whether to start the process in a new process group. + + if the process should be started in a new process group; otherwise, . The default is . + + When a process is created in a new process group, it becomes the root of a new process group. + An implicit call to SetConsoleCtrlHandler(NULL,TRUE) is made on behalf of the new process, this means that the new process has CTRL+C disabled. + This property is useful for preventing console control events sent to the child process from affecting the parent process. + @@ -1733,9 +1740,14 @@ You can use asynchronous read operations to avoid these dependencies and their d System.Boolean - To be added. - To be added. - To be added. + + Gets or sets a value that indicates whether the user credentials are only to be used for network resources. + + + + if the user credentials are only to be used for network resources. + + <para><para>This property is referenced if the process is being started by using the user name, password, and domain.</para><para>If the value is <see langword="true" />, the process is started with the caller's identity. The system creates a new logon session with the given credentials, which is used on the network only.</para><para>The system does not validate the specified credentials. Therefore, the process can start, but it may not have access to network resources.</para> diff --git a/xml/System.Diagnostics/TraceConfiguration.xml b/xml/System.Diagnostics/TraceConfiguration.xml index 4aac422eeaf..e057018dc54 100644 --- a/xml/System.Diagnostics/TraceConfiguration.xml +++ b/xml/System.Diagnostics/TraceConfiguration.xml @@ -17,7 +17,7 @@ - To be added. + Provides methods to register and configure tracing settings from configuration files to and related classes. To be added. From 141b049b910e0c3ada80a6c87124f471b50b2f7d Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 09:57:06 -0700 Subject: [PATCH 08/39] System.DirectoryServices docs --- .../LdapSessionOptions.xml | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/xml/System.DirectoryServices.Protocols/LdapSessionOptions.xml b/xml/System.DirectoryServices.Protocols/LdapSessionOptions.xml index c588f7ed7f4..8cfc7de49ba 100644 --- a/xml/System.DirectoryServices.Protocols/LdapSessionOptions.xml +++ b/xml/System.DirectoryServices.Protocols/LdapSessionOptions.xml @@ -614,7 +614,10 @@ - To be added. + + Create a new TLS library context. + Calling this is necessary after setting TLS-based options, such as TrustedCertificatesDirectory. + To be added. @@ -718,9 +721,16 @@ System.String - To be added. + + Specifies the path of the directory containing CA certificates in the PEM format. + Multiple directories may be specified by separating with a semi-colon. + To be added. - To be added. + + The certificate files are looked up by the CA subject name hash value where that hash can be obtained by using, for example, openssl x509 -hash -noout -in CA.crt. + It is a common practice to have the certificate file be a symbolic link to the actual certificate file which can be done by using openssl rehash . or c_rehash . in the directory containing the certificate files. + + The directory does not exist. From 8313f620d56e1b9de0ae0b2e998980a349eee637 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 09:57:20 -0700 Subject: [PATCH 09/39] System.Formats.Tar docs --- xml/System.Formats.Tar/GnuTarEntry.xml | 4 +++- xml/System.Formats.Tar/PaxTarEntry.xml | 2 +- xml/System.Formats.Tar/TarWriter.xml | 7 +++++-- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/xml/System.Formats.Tar/GnuTarEntry.xml b/xml/System.Formats.Tar/GnuTarEntry.xml index 7bbc9b2aa00..ede65fe6c84 100644 --- a/xml/System.Formats.Tar/GnuTarEntry.xml +++ b/xml/System.Formats.Tar/GnuTarEntry.xml @@ -48,7 +48,9 @@ The instance to convert to the GNU format. Initializes a new instance by converting the specified entry into the GNU format. - To be added. + + When creating an instance of using this constructor, if is or , then the and properties are set to the same values set in . But if is of any other format, then and are set to , which in the entry header atime and ctime fields is written as bytes. This ensures compatibility with other tools that are unable to read the atime and ctime in entries, as these two fields are not POSIX compatible because other formats expect the prefix field in the same header location where writes atime and ctime. + is a instance. diff --git a/xml/System.Formats.Tar/PaxTarEntry.xml b/xml/System.Formats.Tar/PaxTarEntry.xml index acd4d1d51ee..01abda7e592 100644 --- a/xml/System.Formats.Tar/PaxTarEntry.xml +++ b/xml/System.Formats.Tar/PaxTarEntry.xml @@ -48,7 +48,7 @@ The instance to convert to the PAX format. Initializes a new instance by converting the specified entry into the PAX format. - To be added. + When converting a to using this constructor, the and values will get transfered to the dictionary only if their values are not (which is ). is a instance. diff --git a/xml/System.Formats.Tar/TarWriter.xml b/xml/System.Formats.Tar/TarWriter.xml index 41f361669dd..12a18c7afc8 100644 --- a/xml/System.Formats.Tar/TarWriter.xml +++ b/xml/System.Formats.Tar/TarWriter.xml @@ -85,7 +85,7 @@ to dispose the when this instance is disposed; to leave the stream open. Initializes a instance that can write tar entries to the specified stream and optionally leaves the stream open upon disposal of this instance. When using this constructor, the format of the resulting archive is . - To be added. + The format is the default format as it is the most flexible and POSIX compatible. This is the only format with which reads and stores atime and ctime when creating entries from filesystem entries. is . @@ -297,7 +297,10 @@ These are the entry types supported for writing on each format: The path to the file to write to the archive. The name of the file as it should be represented in the archive. It should include the optional relative path and the filename. Writes the specified file into the archive stream as a tar entry. - To be added. + + The entry will be created using the format specified in the constructor, or will use if other constructors are used. + If the format is , the atime and ctime from the file will be stored in the dictionary. If the format is , this method will not set a value for and because most TAR tools do not support these fields for this format. + The archive stream is disposed. or is or empty. From 209deaf2b92890fdec51b6ab1e68f224e922c181 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 09:57:34 -0700 Subject: [PATCH 10/39] System.IO.Compression docs --- xml/System.IO.Compression/ZipArchive.xml | 28 +- xml/System.IO.Compression/ZipArchiveEntry.xml | 19 +- xml/System.IO.Compression/ZipFile.xml | 731 +++++++++++++++--- .../ZipFileExtensions.xml | 250 +++++- 4 files changed, 895 insertions(+), 133 deletions(-) diff --git a/xml/System.IO.Compression/ZipArchive.xml b/xml/System.IO.Compression/ZipArchive.xml index c164c4d9ead..efe12fe6e4f 100644 --- a/xml/System.IO.Compression/ZipArchive.xml +++ b/xml/System.IO.Compression/ZipArchive.xml @@ -384,14 +384,30 @@ If the comment byte length is larger than , it will - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The input or output stream. + See the description of the ZipArchiveMode enum. Read requires the stream to support reading, Create requires the stream to support writing, and Update requires the stream to support reading, writing, and seeking. + + to leave the stream open upon disposing the ZipArchive, otherwise . + <para>The encoding to use when reading or writing entry names and comments in this ZipArchive.</para><para>/// <para>NOTE: Specifying this parameter to values other than <see langword="null" /> is discouraged.</para><para>However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names.<br /> This value is used as follows:</para><para> <strong>Reading (opening) ZIP archive files:</strong> </para><para>If <c>entryNameEncoding</c> is not specified (<c>== null</c>):</para><list> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is <em>not</em> set, use the current system default code page (<c>Encoding.Default</c>) in order to decode the entry name and comment.</item> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header <em>is</em> set, use UTF-8 (<c>Encoding.UTF8</c>) in order to decode the entry name and comment.</item> </list><para>If <c>entryNameEncoding</c> is specified (<c>!= null</c>):</para><list> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is <em>not</em> set, use the specified <c>entryNameEncoding</c> in order to decode the entry name and comment.</item> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header <em>is</em> set, use UTF-8 (<c>Encoding.UTF8</c>) in order to decode the entry name and comment.</item> </list><para> <strong>Writing (saving) ZIP archive files:</strong> </para><para>If <c>entryNameEncoding</c> is not specified (<c>== null</c>):</para><list> <item>For entry names and comments that contain characters outside the ASCII range, the language encoding flag (EFS) will be set in the general purpose bit flag of the local file header, and UTF-8 (<c>Encoding.UTF8</c>) will be used in order to encode the entry name and comment into bytes.</item> <item>For entry names and comments that do not contain characters outside the ASCII range, the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header, and the current system default code page (<c>Encoding.Default</c>) will be used to encode the entry names and comments into bytes.</item> </list><para>If <c>entryNameEncoding</c> is specified (<c>!= null</c>):</para><list> <item>The specified <c>entryNameEncoding</c> will always be used to encode the entry names and comments into bytes.</para><para>The language encoding flag (EFS) in the general purpose bit flag of the local file header will be set if and only if the specified <c>entryNameEncoding</c> is a UTF-8 encoding.</item> </list><para>Note that Unicode encodings other than UTF-8 may not be currently used for the <c>entryNameEncoding</c>, otherwise an <see cref="T:System.ArgumentException" /> is thrown.</para> + The optional cancellation token to monitor. + Asynchronously initializes and returns a new instance of on the given stream in the specified mode, specifying whether to leave the stream open, with an optional encoding and an optional cancellation token. To be added. To be added. + + The stream is already closed. + -or- + mode is incompatible with the capabilities of the stream. + + The stream is . + mode specified an invalid value. + + The contents of the stream could not be interpreted as a Zip file. + -or- + mode is Update and an entry is missing from the archive or is corrupt and cannot be read. + -or- + mode is Update and an entry is too large to fit into memory. + + If a Unicode encoding other than UTF-8 is specified for the entryNameEncoding. diff --git a/xml/System.IO.Compression/ZipArchiveEntry.xml b/xml/System.IO.Compression/ZipArchiveEntry.xml index b94d089d3ab..6f3c492bb98 100644 --- a/xml/System.IO.Compression/ZipArchiveEntry.xml +++ b/xml/System.IO.Compression/ZipArchiveEntry.xml @@ -590,10 +590,23 @@ If the comment byte length is larger than , it will - To be added. - To be added. - To be added. + The token to monitor for cancellation requests. + Asynchronously opens the entry. If the archive that the entry belongs to was opened in Read mode, the returned stream will be readable, and it may or may not be seekable. If Create mode, the returned stream will be writable and not seekable. If Update mode, the returned stream will be readable, writable, seekable, and support SetLength. + A Stream that represents the contents of the entry. To be added. + + The entry is already currently open for writing. + -or- + The entry has been deleted from the archive. + -or- + The archive that this entry belongs to was opened in ZipArchiveMode.Create, and this entry has already been written to once. + + + The entry is missing from the archive or is corrupt and cannot be read. + -or- + The entry has been compressed using a compression method that is not supported. + + The ZipArchive that this entry belongs to has been disposed. diff --git a/xml/System.IO.Compression/ZipFile.xml b/xml/System.IO.Compression/ZipFile.xml index 6edfe345316..c03fc554bae 100644 --- a/xml/System.IO.Compression/ZipFile.xml +++ b/xml/System.IO.Compression/ZipFile.xml @@ -572,12 +572,36 @@ An I/O error occurred while opening a file to be archived. - To be added. - To be added. - To be added. - To be added. + The path to the directory to be archived, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory. + The stream where the zip archive is to be stored. + The cancellation token to monitor for cancellation requests. + Asynchronously creates a zip archive in the specified stream that contains the files and directories from the specified directory. To be added. - To be added. + + The directory structure from the file system is preserved in the archive. If the directory is empty, an empty archive is created. + This method overload does not include the base directory in the archive and does not allow you to specify a compression level. + If you want to include the base directory or specify a compression level, call the method overload. + If a file in the directory cannot be added to the archive, the archive is left incomplete and invalid, and the method throws an exception. + + + + is , contains only white space, or contains at least one invalid character. + -or- + The stream does not support writing. + + + or is . + In the specified path, file name, or both exceed the system-defined maximum length. + + is invalid or does not exist (for example, it is on an unmapped drive). + + A file in the specified directory could not be opened. + -or- + An I/O error occurred while opening a file to be archived. + + + contains an invalid format. + An asynchronous operation is cancelled. @@ -603,12 +627,44 @@ An I/O error occurred while opening a file to be archived. - To be added. - To be added. - To be added. - To be added. + The path to the directory on the file system to be archived. + The name of the archive to be created. + The cancellation token to monitor for cancellation requests. + <para><p>Asynchronously creates a Zip archive at the path <code>destinationArchiveFileName</code> that contains the files and directories from the directory specified by <code>sourceDirectoryName</code>. The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created. If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method does not include the base directory into the archive.</para><para>If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid Zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.</p><p>If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.</p><p>Since no <code>CompressionLevel</code> is specified, the default provided by the implementation of the underlying compression algorithm will be used; the <code>ZipArchive</code> will not impose its own default.</para><para>(Currently, the underlying compression algorithm is provided by the <code>System.IO.Compression.DeflateStream</code> class.)</p></para> To be added. To be added. + + + sourceDirectoryName or destinationArchiveFileName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + + + sourceDirectoryName or destinationArchiveFileName is . + + In sourceDirectoryName or destinationArchiveFileName, the specified path, file name, or both exceed the system-defined maximum length. + For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + + + The path specified in sourceDirectoryName or destinationArchiveFileName is invalid, (for example, it is on an unmapped drive). + -or- + The directory specified by sourceDirectoryName does not exist. + + + + destinationArchiveFileName already exists. + -or- + An I/O error occurred while opening a file to be archived. + + + + destinationArchiveFileName specified a directory. + -or- + The caller does not have the required permission. + + + + sourceDirectoryName or destinationArchiveFileName is in an invalid format. + + An asynchronous operation is cancelled. @@ -636,14 +692,40 @@ An I/O error occurred while opening a file to be archived. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The path to the directory to be archived, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory. + The stream where the zip archive is to be stored. + One of the enumeration values that indicates whether to emphasize speed or compression effectiveness when creating the entry. + + to include the directory name from at the root of the archive; to include only the contents of the directory. + The token to monitor for cancellation requests. + Asynchronously creates a zip archive in the specified stream that contains the files and directories from the specified directory, uses the specified compression level, and optionally includes the base directory. To be added. - To be added. + + The directory structure from the file system is preserved in the archive. If the directory is empty, an empty archive is created. + Use this method overload to specify the compression level and whether to include the base directory in the archive. + If a file in the directory cannot be added to the archive, the archive is left incomplete and invalid, and the method throws an exception. + + + + is , contains only white space, or contains at least one invalid character. + -or- + The stream does not support writing. + + + or is . + In the specified path, file name, or both exceed the system-defined maximum length. + + is invalid or does not exist (for example, it is on an unmapped drive). + + A file in the specified directory could not be opened. + -or- + An I/O error occurred while opening a file to be archived. + + + contains an invalid format. + + is not a valid value. + An asynchronous operation is cancelled. @@ -671,14 +753,49 @@ An I/O error occurred while opening a file to be archived. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The path to the directory on the file system to be archived. + The name of the archive to be created. + The level of the compression (speed/memory vs. compressed size trade-off). + + + true to indicate that a directory named sourceDirectoryName should be included at the root of the archive. false to indicate that the files and directories in sourceDirectoryName should be included directly in the archive. + + The cancellation token to monitor for cancellation requests. + <para><p>Asynchronously creates a Zip archive at the path <code>destinationArchiveFileName</code> that contains the files and directories in the directory specified by <code>sourceDirectoryName</code>. The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created.</para><para>If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method optionally includes the base directory in the archive.</para><para>If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid Zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.</p><p>If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.</p><p>Since no <code>CompressionLevel</code> is specified, the default provided by the implementation of the underlying compression algorithm will be used; the <code>ZipArchive</code> will not impose its own default.</para><para>(Currently, the underlying compression algorithm is provided by the <code>System.IO.Compression.DeflateStream</code> class.)</p></para> To be added. To be added. + + + sourceDirectoryName or destinationArchiveFileName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + + + sourceDirectoryName or destinationArchiveFileName is . + + In sourceDirectoryName or destinationArchiveFileName, the specified path, file name, or both exceed the system-defined maximum length. + For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + + + The path specified in sourceDirectoryName or destinationArchiveFileName is invalid, (for example, it is on an unmapped drive). + -or- + The directory specified by sourceDirectoryName does not exist. + + + + destinationArchiveFileName already exists. + -or- + An I/O error occurred while opening a file to be archived. + + + + destinationArchiveFileName specified a directory. + -or- + The caller does not have the required permission. + + + + sourceDirectoryName or destinationArchiveFileName is in an invalid format. + + An asynchronous operation is cancelled. @@ -714,15 +831,41 @@ An I/O error occurred while opening a file to be archived. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The path to the directory to be archived, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory. + The stream where the zip archive is to be stored. + One of the enumeration values that indicates whether to emphasize speed or compression effectiveness when creating the entry. + + to include the directory name from at the root of the archive; to include only the contents of the directory. + The encoding to use when reading or writing entry names in this archive. Specify a value for this parameter only when an encoding is required for interoperability with zip archive tools and libraries that do not support UTF-8 encoding for entry names or comments. + The cancellation token to monitor for cancellation requests. + Asynchronously creates a zip archive in the specified stream that contains the files and directories from the specified directory, uses the specified compression level and character encoding for entry names, and optionally includes the base directory. To be added. - To be added. + + The directory structure from the file system is preserved in the archive. If the directory is empty, an empty archive is created. + Use this method overload to specify the compression level and character encoding, and whether to include the base directory in the archive. + If a file in the directory cannot be added to the archive, the archive is left incomplete and invalid, and the method throws an exception. + + + + is , contains only white space, or contains at least one invalid character. + -or- + The stream does not support writing. + + + or is . + In the specified path, file name, or both exceed the system-defined maximum length. + + is invalid or does not exist (for example, it is on an unmapped drive). + + A file in the specified directory could not be opened. + -or- + An I/O error occurred while opening a file to be archived. + + + contains an invalid format. + + is not a valid value. + An asynchronous operation is cancelled. @@ -758,15 +901,50 @@ An I/O error occurred while opening a file to be archived. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The path to the directory on the file system to be archived. + The name of the archive to be created. + The level of the compression (speed/memory vs. compressed size trade-off). + + + true to indicate that a directory named sourceDirectoryName should be included at the root of the archive. false to indicate that the files and directories in sourceDirectoryName should be included directly in the archive. + + <para>The encoding to use when reading or writing entry names and comments in this ZipArchive.</para><para>/// <para>NOTE: Specifying this parameter to values other than <see langword="null" /> is discouraged.</para><para>However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.<br /> This value is used as follows while creating the archive:</para><para>If <c>entryNameEncoding</c> is not specified (<c>== null</c>):</para><list> <item>For file names or comments that contain characters outside the ASCII range:<br /> The language encoding flag (EFS) will be set in the general purpose bit flag of the local file header of the corresponding entry, and UTF-8 (<c>Encoding.UTF8</c>) will be used in order to encode the entry name and comment into bytes.</item> <item>For file names or comments that do not contain characters outside the ASCII range:<br /> the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header of the corresponding entry, and the current system default code page (<c>Encoding.Default</c>) will be used to encode the entry names and comments into bytes.</item> </list><para>If <c>entryNameEncoding</c> is specified (<c>!= null</c>):</para><list> <item>The specified <c>entryNameEncoding</c> will always be used to encode the entry names and comments into bytes.</para><para>The language encoding flag (EFS) in the general purpose bit flag of the local file header for each entry will be set if and only if the specified <c>entryNameEncoding</c> is a UTF-8 encoding.</item> </list><para>Note that Unicode encodings other than UTF-8 may not be currently used for the <c>entryNameEncoding</c>, otherwise an <see cref="T:System.ArgumentException" /> is thrown.</para> + The cancellation token to monitor for cancellation requests. + <para><p>Asynchronously creates a Zip archive at the path <code>destinationArchiveFileName</code> that contains the files and directories in the directory specified by <code>sourceDirectoryName</code>. The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created.</para><para>If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method optionally includes the base directory in the archive.</para><para>If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid Zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.</p><p>If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.</p><p>Since no <code>CompressionLevel</code> is specified, the default provided by the implementation of the underlying compression algorithm will be used; the <code>ZipArchive</code> will not impose its own default.</para><para>(Currently, the underlying compression algorithm is provided by the <code>System.IO.Compression.DeflateStream</code> class.)</p></para> To be added. To be added. + + + sourceDirectoryName or destinationArchiveFileName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + + + sourceDirectoryName or destinationArchiveFileName is . + + In sourceDirectoryName or destinationArchiveFileName, the specified path, file name, or both exceed the system-defined maximum length. + For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + + + The path specified in sourceDirectoryName or destinationArchiveFileName is invalid, (for example, it is on an unmapped drive). + -or- + The directory specified by sourceDirectoryName does not exist. + + + + destinationArchiveFileName already exists. + -or- + An I/O error occurred while opening a file to be archived. + + + + destinationArchiveFileName specified a directory. + -or- + The caller does not have the required permission. + + + + sourceDirectoryName or destinationArchiveFileName is in an invalid format. + + An asynchronous operation is cancelled. @@ -1483,12 +1661,40 @@ An archive entry has been compressed using a compression method that is not supp - To be added. - To be added. - To be added. - To be added. + The stream from which the zip archive is to be extracted. + The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory. + The cancellation token to monitor for cancellation requests. + Asynchronously extracts all the files from the zip archive stored in the specified stream and places them in the specified destination directory on the file system. To be added. - To be added. + + This method creates the specified directory and all subdirectories. The destination directory cannot already exist. + Exceptions related to validating the paths in the or the files in the zip archive contained in parameters are thrown before extraction. Otherwise, if an error occurs during extraction, the archive remains partially extracted. + Each extracted file has the same relative path to the directory specified by as its source entry has to the root of the archive. + If a file to be archived has an invalid last modified time, the first date and time representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + + + > is , contains only white space, or contains at least one invalid character. + + or is . + The specified path in exceeds the system-defined maximum length. + The specified path is invalid (for example, it is on an unmapped drive). + + The name of an entry in the archive is , contains only white space, or contains at least one invalid character. + -or- + Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) -or- + An archive entry to extract has the same name as an entry that has already been extracted or that exists in . + + The caller does not have the required permission to access the archive or the destination directory. + + contains an invalid format. + + The archive contained in the stream is not a valid zip archive. + -or- + An archive entry was not found or was corrupt. + -or- + An archive entry was compressed by using a compression method that is not supported. + + An asynchronous operation is cancelled. @@ -1514,12 +1720,45 @@ An archive entry has been compressed using a compression method that is not supp - To be added. - To be added. - To be added. - To be added. + The path to the archive on the file system that is to be extracted. + The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory. + The cancellation token to monitor for cancellation requests. + + Asynchronously extracts all of the files in the specified archive to a directory on the file system. + The specified directory must not exist. This method will create all subdirectories and the specified directory. + If there is an error while extracting the archive, the archive will remain partially extracted. Each entry will be extracted such that the extracted file has the same relative path to the destinationDirectoryName as the entry has to the archive. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file to be archived has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + To be added. To be added. + + sourceArchive or destinationDirectoryName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + + sourceArchive or destinationDirectoryName is . + + sourceArchive or destinationDirectoryName specifies a path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + + + The path specified by sourceArchive or destinationDirectoryName is invalid, (for example, it is on an unmapped drive). + + + An I/O error has occurred. + -or- + An archive entry's name is zero-length, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + -or- + Extracting an archive entry would result in a file destination that is outside the destination directory (for example, because of parent directory accessors). + -or- + An archive entry has the same name as an already extracted entry from the same archive. + + The caller does not have the required permission. + sourceArchive or destinationDirectoryName is in an invalid format. + sourceArchive was not found. + + The archive specified by sourceArchive: Is not a valid ZipArchive -or- + An archive entry was not found or was corrupt. + -or- + An archive entry has been compressed using a compression method that is not supported. + + An asynchronous operation is cancelled. @@ -1546,13 +1785,43 @@ An archive entry has been compressed using a compression method that is not supp - To be added. - To be added. - To be added. - To be added. - To be added. + The stream from which the zip archive is to be extracted. + The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory. + + to overwrite files; otherwise. + The cancellation token to monitor for cancellation requests. + Asynchronously extracts all the files from the zip archive stored in the specified stream and places them in the specified destination directory on the file system, and optionally allows choosing if the files in the destination directory should be overwritten. To be added. - To be added. + + This method creates the specified directory and all subdirectories. The destination directory cannot already exist. + Exceptions related to validating the paths in the or the files in the zip archive contained in parameters are thrown before extraction. Otherwise, if an error occurs during extraction, the archive remains partially extracted. + Each extracted file has the same relative path to the directory specified by as its source entry has to the root of the archive. + If a file to be archived has an invalid last modified time, the first date and time representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + + + > is , contains only white space, or contains at least one invalid character. + + or is . + The specified path in exceeds the system-defined maximum length. + The specified path is invalid (for example, it is on an unmapped drive). + + The name of an entry in the archive is , contains only white space, or contains at least one invalid character. + -or- + Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) -or- + + is and an archive entry to extract has the same name as an entry that has already been extracted or that exists in . + + The caller does not have the required permission to access the archive or the destination directory. + + contains an invalid format. + + The archive contained in the stream is not a valid zip archive. + -or- + An archive entry was not found or was corrupt. + -or- + An archive entry was compressed by using a compression method that is not supported. + + An asynchronous operation is cancelled. @@ -1586,13 +1855,46 @@ An archive entry has been compressed using a compression method that is not supp - To be added. - To be added. - To be added. - To be added. - To be added. + The stream from which the zip archive is to be extracted. + The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory. + The encoding to use when reading or writing entry names and comments in this archive. Specify a value for this parameter only when an encoding is required for interoperability with zip archive tools and libraries that do not support UTF-8 encoding for entry names or comments. + The cancellation token to monitor for cancellation requests. + Asynchronously extracts all the files from the zip archive stored in the specified stream and places them in the specified destination directory on the file system and uses the specified character encoding for entry names. To be added. - To be added. + + This method creates the specified directory and all subdirectories. The destination directory cannot already exist. + Exceptions related to validating the paths in the or the files in the zip archive contained in parameters are thrown before extraction. Otherwise, if an error occurs during extraction, the archive remains partially extracted. + Each extracted file has the same relative path to the directory specified by as its source entry has to the root of the archive. + If a file to be archived has an invalid last modified time, the first date and time representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + + + + > is , contains only white space, or contains at least one invalid character. + -or- + + is set to a Unicode encoding other than UTF-8. + + + or is . + The specified path in exceeds the system-defined maximum length. + The specified path is invalid (for example, it is on an unmapped drive). + + The name of an entry in the archive is , contains only white space, or contains at least one invalid character. + -or- + Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) -or- + An archive entry to extract has the same name as an entry that has already been extracted or that exists in . + + The caller does not have the required permission to access the archive or the destination directory. + + contains an invalid format. + + The archive contained in the stream is not a valid zip archive. + -or- + An archive entry was not found or was corrupt. + -or- + An archive entry was compressed by using a compression method that is not supported. + + An asynchronous operation is cancelled. @@ -1619,13 +1921,47 @@ An archive entry has been compressed using a compression method that is not supp - To be added. - To be added. - To be added. - To be added. - To be added. + The path to the archive on the file system that is to be extracted. + The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory. + + to indicate overwrite. + The cancellation token to monitor for cancellation requests. + + Asynchronously extracts all of the files in the specified archive to a directory on the file system. + The specified directory must not exist. This method will create all subdirectories and the specified directory. + If there is an error while extracting the archive, the archive will remain partially extracted. Each entry will be extracted such that the extracted file has the same relative path to the destinationDirectoryName as the entry has to the archive. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file to be archived has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + To be added. To be added. + + sourceArchive or destinationDirectoryName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + + sourceArchive or destinationDirectoryName is . + + sourceArchive or destinationDirectoryName specifies a path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + + + The path specified by sourceArchive or destinationDirectoryName is invalid, (for example, it is on an unmapped drive). + + + An I/O error has occurred. + -or- + An archive entry's name is zero-length, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + -or- + Extracting an archive entry would result in a file destination that is outside the destination directory (for example, because of parent directory accessors). + -or- + An archive entry has the same name as an already extracted entry from the same archive. + + The caller does not have the required permission. + sourceArchive or destinationDirectoryName is in an invalid format. + sourceArchive was not found. + + The archive specified by sourceArchive: Is not a valid ZipArchive -or- + An archive entry was not found or was corrupt. + -or- + An archive entry has been compressed using a compression method that is not supported. + + An asynchronous operation is cancelled. @@ -1659,13 +1995,46 @@ An archive entry has been compressed using a compression method that is not supp - To be added. - To be added. - To be added. - To be added. - To be added. + The path to the archive on the file system that is to be extracted. + The path to the directory on the file system. The directory specified must not exist, but the directory that it is contained in must exist. + <para>The encoding to use when reading or writing entry names and comments in this ZipArchive.</para><para>/// <para>NOTE: Specifying this parameter to values other than <see langword="null" /> is discouraged.</para><para>However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.<br /> This value is used as follows:</para><para>If <c>entryNameEncoding</c> is not specified (<c>== null</c>):</para><list> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is <em>not</em> set, use the current system default code page (<c>Encoding.Default</c>) in order to decode the entry name and comment.</item> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header <em>is</em> set, use UTF-8 (<c>Encoding.UTF8</c>) in order to decode the entry name and comment.</item> </list><para>If <c>entryNameEncoding</c> is specified (<c>!= null</c>):</para><list> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is <em>not</em> set, use the specified <c>entryNameEncoding</c> in order to decode the entry name and comment.</item> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header <em>is</em> set, use UTF-8 (<c>Encoding.UTF8</c>) in order to decode the entry name and comment.</item> </list><para>Note that Unicode encodings other than UTF-8 may not be currently used for the <c>entryNameEncoding</c>, otherwise an <see cref="T:System.ArgumentException" /> is thrown.</para> + The cancellation token to monitor for cancellation requests. + + Asynchronously extracts all of the files in the specified archive to a directory on the file system. + The specified directory must not exist. This method will create all subdirectories and the specified directory. + If there is an error while extracting the archive, the archive will remain partially extracted. Each entry will be extracted such that the extracted file has the same relative path to the destinationDirectoryName as the entry has to the archive. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file to be archived has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + To be added. To be added. + + sourceArchive or destinationDirectoryName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + + sourceArchive or destinationDirectoryName is . + + sourceArchive or destinationDirectoryName specifies a path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + + + The path specified by sourceArchive or destinationDirectoryName is invalid, (for example, it is on an unmapped drive). + + + An I/O error has occurred. + -or- + An archive entry's name is zero-length, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + -or- + Extracting an archive entry would result in a file destination that is outside the destination directory (for example, because of parent directory accessors). + -or- + An archive entry has the same name as an already extracted entry from the same archive. + + The caller does not have the required permission. + sourceArchive or destinationDirectoryName is in an invalid format. + sourceArchive was not found. + + The archive specified by sourceArchive: Is not a valid ZipArchive -or- + An archive entry was not found or was corrupt. + -or- + An archive entry has been compressed using a compression method that is not supported. + + An asynchronous operation is cancelled. @@ -1700,14 +2069,49 @@ An archive entry has been compressed using a compression method that is not supp - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The stream from which the zip archive is to be extracted. + The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory. + The encoding to use when reading or writing entry names and comments in this archive. Specify a value for this parameter only when an encoding is required for interoperability with zip archive tools and libraries that do not support UTF-8 encoding for entry names or comments. + + to overwrite files; otherwise. + The cancellation token to monitor for cancellation requests. + Asynchronously extracts all the files from the zip archive stored in the specified stream and places them in the specified destination directory on the file system, uses the specified character encoding for entry names, and optionally allows choosing if the files in the destination directory should be overwritten. To be added. - To be added. + + This method creates the specified directory and all subdirectories. The destination directory cannot already exist. + Exceptions related to validating the paths in the or the files in the zip archive contained in parameters are thrown before extraction. Otherwise, if an error occurs during extraction, the archive remains partially extracted. + Each extracted file has the same relative path to the directory specified by as its source entry has to the root of the archive. + If a file to be archived has an invalid last modified time, the first date and time representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + + + + > is , contains only white space, or contains at least one invalid character. + -or- + + is set to a Unicode encoding other than UTF-8. + + + or is . + The specified path in exceeds the system-defined maximum length. + The specified path is invalid (for example, it is on an unmapped drive). + + The name of an entry in the archive is , contains only white space, or contains at least one invalid character. + -or- + Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) -or- + + is and an archive entry to extract has the same name as an entry that has already been extracted or that exists in . + + The caller does not have the required permission to access the archive or the destination directory. + + contains an invalid format. + + The archive contained in the stream is not a valid zip archive. + -or- + An archive entry was not found or was corrupt. + -or- + An archive entry was compressed by using a compression method that is not supported. + + An asynchronous operation is cancelled. @@ -1742,14 +2146,48 @@ An archive entry has been compressed using a compression method that is not supp - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The path to the archive on the file system that is to be extracted. + The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory. + <para>The encoding to use when reading or writing entry names and comments in this ZipArchive.</para><para>/// <para>NOTE: Specifying this parameter to values other than <see langword="null" /> is discouraged.</para><para>However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.<br /> This value is used as follows:</para><para>If <c>entryNameEncoding</c> is not specified (<c>== null</c>):</para><list> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is <em>not</em> set, use the current system default code page (<c>Encoding.Default</c>) in order to decode the entry name and comment.</item> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header <em>is</em> set, use UTF-8 (<c>Encoding.UTF8</c>) in order to decode the entry name and comment.</item> </list><para>If <c>entryNameEncoding</c> is specified (<c>!= null</c>):</para><list> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is <em>not</em> set, use the specified <c>entryNameEncoding</c> in order to decode the entry name and comment.</item> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header <em>is</em> set, use UTF-8 (<c>Encoding.UTF8</c>) in order to decode the entry name and comment.</item> </list><para>Note that Unicode encodings other than UTF-8 may not be currently used for the <c>entryNameEncoding</c>, otherwise an <see cref="T:System.ArgumentException" /> is thrown.</para> + + to indicate overwrite. + The cancellation token to monitor for cancellation requests. + + Asynchronously extracts all of the files in the specified archive to a directory on the file system. + The specified directory must not exist. This method will create all subdirectories and the specified directory. + If there is an error while extracting the archive, the archive will remain partially extracted. Each entry will be extracted such that the extracted file has the same relative path to the destinationDirectoryName as the entry has to the archive. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file to be archived has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + To be added. To be added. + + sourceArchive or destinationDirectoryName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + + sourceArchive or destinationDirectoryName is . + + sourceArchive or destinationDirectoryName specifies a path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + + + The path specified by sourceArchive or destinationDirectoryName is invalid, (for example, it is on an unmapped drive). + + + An I/O error has occurred. + -or- + An archive entry's name is zero-length, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + -or- + Extracting an archive entry would result in a file destination that is outside the destination directory (for example, because of parent directory accessors). + -or- + An archive entry has the same name as an already extracted entry from the same archive. + + The caller does not have the required permission. + sourceArchive or destinationDirectoryName is in an invalid format. + sourceArchive was not found. + + The archive specified by sourceArchive: Is not a valid ZipArchive -or- + An archive entry was not found or was corrupt. + -or- + An archive entry has been compressed using a compression method that is not supported. + + An asynchronous operation is cancelled. @@ -1995,12 +2433,55 @@ An unspecified I/O error occurred while opening the file. - To be added. - To be added. - To be added. - To be added. + + A string specifying the path on the filesystem to open the archive on. + The path is permitted to specify relative or absolute path information. + Relative path information is interpreted as relative to the current working directory. + + + See the description of the ZipArchiveMode enum. + If Read is specified, the file is opened with System.IO.FileMode.Open, and will throw a FileNotFoundException if the file does not exist. + If Create is specified, the file is opened with System.IO.FileMode.CreateNew, and will throw a System.IO.IOException if the file already exists. + If Update is specified, the file is opened with System.IO.FileMode.OpenOrCreate. + If the file exists and is a Zip file, its entries will become accessible, and may be modified, and new entries may be created. + If the file exists and is not a Zip file, a ZipArchiveException will be thrown. + If the file exists and is empty or does not exist, a new Zip file will be created. + Note that creating a Zip file with the ZipArchiveMode.Create mode is more efficient when creating a new Zip file. + + The cancellation token to monitor for cancellation requests. + Asynchronously opens a ZipArchive on the specified archiveFileName in the specified ZipArchiveMode mode. To be added. To be added. + + archiveFileName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + + path is . + + The specified archiveFileName exceeds the system-defined maximum length. + For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + + The specified archiveFileName is invalid, (for example, it is on an unmapped drive). + An unspecified I/O error occurred while opening the file. + + archiveFileName specified a directory. + -or- + The caller does not have the required permission. + + + mode specified an invalid value. + The file specified in archiveFileName was not found. + + archiveFileName is in an invalid format. + + The specified file could not be interpreted as a Zip file. + -or- + + mode is Update and an entry is missing from the archive or is corrupt and cannot be read. + -or- + + mode is Update and an entry is too large to fit into memory. + + An asynchronous operation is cancelled. @@ -2034,13 +2515,56 @@ An unspecified I/O error occurred while opening the file. - To be added. - To be added. - To be added. - To be added. - To be added. + + A string specifying the path on the filesystem to open the archive on. + The path is permitted to specify relative or absolute path information. + Relative path information is interpreted as relative to the current working directory. + + + See the description of the ZipArchiveMode enum. + If Read is specified, the file is opened with System.IO.FileMode.Open, and will throw a FileNotFoundException if the file does not exist. + If Create is specified, the file is opened with System.IO.FileMode.CreateNew, and will throw a System.IO.IOException if the file already exists. + If Update is specified, the file is opened with System.IO.FileMode.OpenOrCreate. + If the file exists and is a Zip file, its entries will become accessible, and may be modified, and new entries may be created. + If the file exists and is not a Zip file, a ZipArchiveException will be thrown. + If the file exists and is empty or does not exist, a new Zip file will be created. + Note that creating a Zip file with the ZipArchiveMode.Create mode is more efficient when creating a new Zip file. + + <para>The encoding to use when reading or writing entry names and comments in this ZipArchive.</para><para>/// <para>NOTE: Specifying this parameter to values other than <see langword="null" /> is discouraged.</para><para>However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.<br /> This value is used as follows:</para><para> <strong>Reading (opening) ZIP archive files:</strong> </para><para>If <c>entryNameEncoding</c> is not specified (<c>== null</c>):</para><list> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is <em>not</em> set, use the current system default code page (<c>Encoding.Default</c>) in order to decode the entry name and comment.</item> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header <em>is</em> set, use UTF-8 (<c>Encoding.UTF8</c>) in order to decode the entry name and comment.</item> </list><para>If <c>entryNameEncoding</c> is specified (<c>!= null</c>):</para><list> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is <em>not</em> set, use the specified <c>entryNameEncoding</c> in order to decode the entry name and comment.</item> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header <em>is</em> set, use UTF-8 (<c>Encoding.UTF8</c>) in order to decode the entry name and comment.</item> </list><para> <strong>Writing (saving) ZIP archive files:</strong> </para><para>If <c>entryNameEncoding</c> is not specified (<c>== null</c>):</para><list> <item>For entry names or comments that contain characters outside the ASCII range, the language encoding flag (EFS) will be set in the general purpose bit flag of the local file header, and UTF-8 (<c>Encoding.UTF8</c>) will be used in order to encode the entry name and comment into bytes.</item> <item>For entry names or comments that do not contain characters outside the ASCII range, the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header, and the current system default code page (<c>Encoding.Default</c>) will be used to encode the entry names and comments into bytes.</item> </list><para>If <c>entryNameEncoding</c> is specified (<c>!= null</c>):</para><list> <item>The specified <c>entryNameEncoding</c> will always be used to encode the entry names and comments into bytes.</para><para>The language encoding flag (EFS) in the general purpose bit flag of the local file header will be set if and only if the specified <c>entryNameEncoding</c> is a UTF-8 encoding.</item> </list><para>Note that Unicode encodings other than UTF-8 may not be currently used for the <c>entryNameEncoding</c>, otherwise an <see cref="T:System.ArgumentException" /> is thrown.</para> + The cancellation token to monitor for cancellation requests. + Asynchronously opens a ZipArchive on the specified archiveFileName in the specified ZipArchiveMode mode. To be added. To be added. + + archiveFileName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + + path is . + + The specified archiveFileName exceeds the system-defined maximum length. + For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + + The specified archiveFileName is invalid, (for example, it is on an unmapped drive). + An unspecified I/O error occurred while opening the file. + + archiveFileName specified a directory. + -or- + The caller does not have the required permission. + + + mode specified an invalid value. + The file specified in archiveFileName was not found. + + archiveFileName is in an invalid format. + + The specified file could not be interpreted as a Zip file. + -or- + + mode is Update and an entry is missing from the archive or is corrupt and cannot be read. + -or- + + mode is Update and an entry is too large to fit into memory. + + An asynchronous operation is cancelled. @@ -2150,11 +2674,32 @@ An unspecified I/O error occurred while opening the file. - To be added. - To be added. - To be added. + + A string specifying the path on the filesystem to open the archive on. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. + + The cancellation token to monitor for cancellation requests. + Asynchronously opens a ZipArchive on the specified path for reading. The specified file is opened with FileMode.Open. To be added. To be added. + + archiveFileName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + + archiveFileName is . + + The specified archiveFileName exceeds the system-defined maximum length. + For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + + The specified archiveFileName is invalid, (for example, it is on an unmapped drive). + An unspecified I/O error occurred while opening the file. + + archiveFileName specified a directory. + -or- + The caller does not have the required permission. + + The file specified in archiveFileName was not found. + archiveFileName is in an invalid format. + The specified file could not be interpreted as a Zip file. + An asynchronous operation is cancelled. diff --git a/xml/System.IO.Compression/ZipFileExtensions.xml b/xml/System.IO.Compression/ZipFileExtensions.xml index 8a86d0a7765..35dba274733 100644 --- a/xml/System.IO.Compression/ZipFileExtensions.xml +++ b/xml/System.IO.Compression/ZipFileExtensions.xml @@ -277,13 +277,36 @@ - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The zip archive to add the file to. + + The path to the file on the file system to be copied from. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. + + The name of the entry to be created. + The cancellation token to monitor for cancellation requests. + <para><p>Asynchronously adds a file from the file system to the archive under the specified entry name.</para><para>The new entry in the archive will contain the contents of the file.</para><para>The last write time of the archive entry is set to the last write time of the file on the file system.</para><para>If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.</para><para>If the specified source file has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used.</p><p>If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.</p><p>Since no <code>CompressionLevel</code> is specified, the default provided by the implementation of the underlying compression algorithm will be used; the <code>ZipArchive</code> will not impose its own default.</para><para>(Currently, the underlying compression algorithm is provided by the <code>System.IO.Compression.DeflateStream</code> class.)</p></para> + A wrapper for the newly created entry. To be added. + + sourceFileName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + -or- + entryName is a zero-length string. + + sourceFileName or entryName is . + + In sourceFileName, the specified path, file name, or both exceed the system-defined maximum length. + For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + + The specified sourceFileName is invalid, (for example, it is on an unmapped drive). + An I/O error occurred while opening the file specified by sourceFileName. + + sourceFileName specified a directory. + -or- + The caller does not have the required permission. + + The file specified in sourceFileName was not found. + sourceFileName is in an invalid format or the ZipArchive does not support writing. + The ZipArchive has already been closed. + An asynchronous operation is cancelled. @@ -311,14 +334,37 @@ - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The zip archive to add the file to. + + The path to the file on the file system to be copied from. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. + + The name of the entry to be created. + The level of the compression (speed/memory vs. compressed size trade-off). + The cancellation token to monitor for cancellation requests. + <para><p>Asynchronously adds a file from the file system to the archive under the specified entry name.</para><para>The new entry in the archive will contain the contents of the file.</para><para>The last write time of the archive entry is set to the last write time of the file on the file system.</para><para>If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.</para><para>If the specified source file has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used.</p><p>If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.</p></para> + A wrapper for the newly created entry. To be added. + + sourceFileName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + -or- + entryName is a zero-length string. + + sourceFileName or entryName is . + + In sourceFileName, the specified path, file name, or both exceed the system-defined maximum length. + For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + + The specified sourceFileName is invalid, (for example, it is on an unmapped drive). + An I/O error occurred while opening the file specified by sourceFileName. + + sourceFileName specified a directory. + -or- + The caller does not have the required permission. + + The file specified in sourceFileName was not found. + sourceFileName is in an invalid format or the ZipArchive does not support writing. + The ZipArchive has already been closed. + An asynchronous operation is cancelled. @@ -507,12 +553,45 @@ A has been compressed usi - To be added. - To be added. - To be added. - To be added. + The zip archive to extract files from. + + The path to the directory on the file system. + The directory specified must not exist. The path is permitted to specify relative or absolute path information. + Relative path information is interpreted as relative to the current working directory. + + The cancellation token to monitor for cancellation requests. + + Asynchronously extracts all of the files in the archive to a directory on the file system. The specified directory may already exist. + This method will create all subdirectories and the specified directory if necessary. + If there is an error while extracting the archive, the archive will remain partially extracted. + Each entry will be extracted such that the extracted file has the same relative path to destinationDirectoryName as the entry has to the root of the archive. If a file to be archived has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + To be added. To be added. + + destinationDirectoryName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + + destinationDirectoryName is . + + The specified path, file name, or both exceed the system-defined maximum length. + For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + + The specified path is invalid, (for example, it is on an unmapped drive). + + An archive entry?s name is zero-length, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + -or- + Extracting an archive entry would have resulted in a destination file that is outside destinationDirectoryName (for example, if the entry name contains parent directory accessors). + -or- + An archive entry has the same name as an already extracted entry from the same archive. + + The caller does not have the required permission. + destinationDirectoryName is in an invalid format. + + An archive entry was not found or was corrupt. + -or- + An archive entry has been compressed using a compression method that is not supported. + + An asynchronous operation is cancelled. @@ -539,13 +618,46 @@ A has been compressed usi - To be added. - To be added. - To be added. - To be added. - To be added. + The zip archive to extract files from. + + The path to the directory on the file system. + The directory specified must not exist. The path is permitted to specify relative or absolute path information. + Relative path information is interpreted as relative to the current working directory. + + + to indicate overwrite. + The cancellation token to monitor for cancellation requests. + + Extracts all of the files in the archive to a directory on the file system. The specified directory may already exist. + This method will create all subdirectories and the specified directory if necessary. + If there is an error while extracting the archive, the archive will remain partially extracted. + Each entry will be extracted such that the extracted file has the same relative path to destinationDirectoryName as the entry has to the root of the archive. If a file to be archived has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + To be added. To be added. + + destinationDirectoryName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + + destinationDirectoryName is . + + The specified path, file name, or both exceed the system-defined maximum length. + For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + + The specified path is invalid, (for example, it is on an unmapped drive). + + An archive entry?s name is zero-length, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + -or- + Extracting an archive entry would have resulted in a destination file that is outside destinationDirectoryName (for example, if the entry name contains parent directory accessors). + -or- + An archive entry has the same name as an already extracted entry from the same archive. + + The caller does not have the required permission. + destinationDirectoryName is in an invalid format. + + An archive entry was not found or was corrupt. + -or- + An archive entry has been compressed using a compression method that is not supported. + @@ -782,12 +894,48 @@ A has been compressed usi - To be added. - To be added. - To be added. - To be added. + The zip archive entry to extract a file from. + + The name of the file that will hold the contents of the entry. + The path is permitted to specify relative or absolute path information. + Relative path information is interpreted as relative to the current working directory. + + The cancellation token to monitor for cancellation requests. + + Asynchronously creates a file on the file system with the entry's contents and the specified name. The last write time of the file is set to the entry's last write time. This method does not allow overwriting of an existing file with the same name. Attempting to extract explicit directories (entries with names that end in directory separator characters) will not result in the creation of a directory. + To be added. To be added. + The caller does not have the required permission. + + destinationFileName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + -or- + destinationFileName specifies a directory. + + destinationFileName is . + + The specified path, file name, or both exceed the system-defined maximum length. + For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + + + The path specified in destinationFileName is invalid (for example, it is on an unmapped drive). + + + An I/O error has occurred. + -or- + The entry is currently open for writing. + -or- + The entry has been deleted from the archive. + + + destinationFileName is in an invalid format -or- + The ZipArchive that this entry belongs to was opened in a write-only mode. + + + The entry is missing from the archive or is corrupt and cannot be read -or- + The entry has been compressed using a compression method that is not supported. + + The ZipArchive that this entry belongs to has been disposed. @@ -814,13 +962,53 @@ A has been compressed usi - To be added. - To be added. - To be added. - To be added. - To be added. + The zip archive entry to extract a file from. + + The name of the file that will hold the contents of the entry. + The path is permitted to specify relative or absolute path information. + Relative path information is interpreted as relative to the current working directory. + + + to indicate overwrite. + The cancellation token to monitor for cancellation requests. + + Asynchronously creates a file on the file system with the entry's contents and the specified name. + The last write time of the file is set to the entry's last write time. + This method does allows overwriting of an existing file with the same name. + To be added. To be added. + The caller does not have the required permission. + + destinationFileName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + -or- + destinationFileName specifies a directory. + + destinationFileName is . + + The specified path, file name, or both exceed the system-defined maximum length. + For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + + + The path specified in destinationFileName is invalid (for example, it is on an unmapped drive). + + + An I/O error has occurred. + -or- + The entry is currently open for writing. + -or- + The entry has been deleted from the archive. + + + destinationFileName is in an invalid format -or- + The ZipArchive that this entry belongs to was opened in a write-only mode. + + + The entry is missing from the archive or is corrupt and cannot be read -or- + The entry has been compressed using a compression method that is not supported. + + The ZipArchive that this entry belongs to has been disposed. + An asynchronous operation is cancelled. From 2999f7c6df2cae5379fc85e9600e9d4761713789 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 09:57:55 -0700 Subject: [PATCH 11/39] System.IO.Hashing docs --- xml/System.IO.Hashing/Crc32.xml | 4 ++-- xml/System.IO.Hashing/Crc64.xml | 4 ++-- xml/System.IO.Hashing/NonCryptographicHashAlgorithm.xml | 1 + xml/System.IO.Hashing/XxHash128.xml | 4 ++-- xml/System.IO.Hashing/XxHash3.xml | 4 ++-- xml/System.IO.Hashing/XxHash32.xml | 4 ++-- xml/System.IO.Hashing/XxHash64.xml | 4 ++-- 7 files changed, 13 insertions(+), 12 deletions(-) diff --git a/xml/System.IO.Hashing/Crc32.xml b/xml/System.IO.Hashing/Crc32.xml index 9e2299cb67b..3a8dddb2bfa 100644 --- a/xml/System.IO.Hashing/Crc32.xml +++ b/xml/System.IO.Hashing/Crc32.xml @@ -100,8 +100,8 @@ There are multiple, incompatible, definitions of a 32-bit cyclic redundancy - To be added. - To be added. + Returns a clone of the current instance, with a copy of the current instance's internal state. + A new instance that will produce the same sequence of values as the current instance. To be added. diff --git a/xml/System.IO.Hashing/Crc64.xml b/xml/System.IO.Hashing/Crc64.xml index 0859964bca6..694a3373b70 100644 --- a/xml/System.IO.Hashing/Crc64.xml +++ b/xml/System.IO.Hashing/Crc64.xml @@ -100,8 +100,8 @@ There are multiple, incompatible, definitions of a 64-bit cyclic redundancy - To be added. - To be added. + Returns a clone of the current instance, with a copy of the current instance's internal state. + A new instance that will produce the same sequence of values as the current instance. To be added. diff --git a/xml/System.IO.Hashing/NonCryptographicHashAlgorithm.xml b/xml/System.IO.Hashing/NonCryptographicHashAlgorithm.xml index 39ecac9aa30..6517b24ef25 100644 --- a/xml/System.IO.Hashing/NonCryptographicHashAlgorithm.xml +++ b/xml/System.IO.Hashing/NonCryptographicHashAlgorithm.xml @@ -97,6 +97,7 @@ To be added. is . + diff --git a/xml/System.IO.Hashing/XxHash128.xml b/xml/System.IO.Hashing/XxHash128.xml index 175c3f03655..0bb125bb3bb 100644 --- a/xml/System.IO.Hashing/XxHash128.xml +++ b/xml/System.IO.Hashing/XxHash128.xml @@ -107,8 +107,8 @@ - To be added. - To be added. + Returns a clone of the current instance, with a copy of the current instance's internal state. + A new instance that will produce the same sequence of values as the current instance. To be added. diff --git a/xml/System.IO.Hashing/XxHash3.xml b/xml/System.IO.Hashing/XxHash3.xml index 3983777b7e0..7a1ea0248a9 100644 --- a/xml/System.IO.Hashing/XxHash3.xml +++ b/xml/System.IO.Hashing/XxHash3.xml @@ -107,8 +107,8 @@ - To be added. - To be added. + Returns a clone of the current instance, with a copy of the current instance's internal state. + A new instance that will produce the same sequence of values as the current instance. To be added. diff --git a/xml/System.IO.Hashing/XxHash32.xml b/xml/System.IO.Hashing/XxHash32.xml index aacab4ee12e..94d373766e3 100644 --- a/xml/System.IO.Hashing/XxHash32.xml +++ b/xml/System.IO.Hashing/XxHash32.xml @@ -112,8 +112,8 @@ The XxHash32 algorithm supports an optional seed value. - To be added. - To be added. + Returns a clone of the current instance, with a copy of the current instance's internal state. + A new instance that will produce the same sequence of values as the current instance. To be added. diff --git a/xml/System.IO.Hashing/XxHash64.xml b/xml/System.IO.Hashing/XxHash64.xml index 4f066ec8f24..aef43e528c7 100644 --- a/xml/System.IO.Hashing/XxHash64.xml +++ b/xml/System.IO.Hashing/XxHash64.xml @@ -112,8 +112,8 @@ The XxHash64 algorithm supports an optional seed value. - To be added. - To be added. + Returns a clone of the current instance, with a copy of the current instance's internal state. + A new instance that will produce the same sequence of values as the current instance. To be added. From 04fbff6f847ff19287c2727db7101de2a54820fc Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 09:58:09 -0700 Subject: [PATCH 12/39] System.IO.Packaging docs --- xml/System.IO.Packaging/Package.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/xml/System.IO.Packaging/Package.xml b/xml/System.IO.Packaging/Package.xml index be7230377e0..5be5eee0437 100644 --- a/xml/System.IO.Packaging/Package.xml +++ b/xml/System.IO.Packaging/Package.xml @@ -1278,6 +1278,8 @@ For more information about packages and package parts, see section 1.1 of the Op internally calls the derived class method to actually flush the part based on the physical format implemented in the derived class. + The package has a bad format. + The part name prefix exists. From 852d7f62575f3424c8ceb4d728d2332b858e4d00 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 09:58:22 -0700 Subject: [PATCH 13/39] System.Linq docs --- xml/System.Linq/Enumerable.xml | 158 +++++++++++++++++++-------------- xml/System.Linq/Queryable.xml | 142 ++++++++++++++++------------- 2 files changed, 170 insertions(+), 130 deletions(-) diff --git a/xml/System.Linq/Enumerable.xml b/xml/System.Linq/Enumerable.xml index 44d9f003d1c..34274ecf61e 100644 --- a/xml/System.Linq/Enumerable.xml +++ b/xml/System.Linq/Enumerable.xml @@ -5776,11 +5776,11 @@ Only unique elements are returned. - To be added. - To be added. - To be added. - To be added. - To be added. + The type of the value to be yielded in the result sequence. + The starting value. + The amount by which the next yielded value should be incremented from the previous yielded value. + Generates an infinite sequence that begins with and yields additional values each incremented by . + An that contains the sequence. To be added. @@ -6907,18 +6907,20 @@ If `comparer` is `null`, the default equality comparer, - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The type of the elements of the first sequence. + The type of the elements of the second sequence. + The type of the keys returned by the key selector functions. + The type of the result elements. + The first sequence to join. + The sequence to join to the first sequence. + A function to extract the join key from each element of the first sequence. + A function to extract the join key from each element of the second sequence. + A function to create a result element from two matching elements. + Correlates the elements of two sequences based on matching keys. The default equality comparer is used to compare keys. + An that has elements of type that are obtained by performing a left outer join on two sequences. + <para><para> This method is implemented by using deferred execution. The immediate return value is an object that stores all the information that is required to perform the action. The query represented by this method is not executed until the object is enumerated either by calling its <c>GetEnumerator</c> method directly or by using <c>foreach</c> in C# or <c>For Each</c> in Visual Basic.</para><para></para><para> The default equality comparer, <see cref="P:System.Collections.Generic.EqualityComparer`1.Default" />, is used to hash and compare keys.</para><para></para><para> A join refers to the operation of correlating the elements of two sources of information based on a common key.</para><para><see cref="M:System.Linq.Enumerable.LeftJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3})" /> brings the two information sources and the keys by which they are matched together in one method call.</para><para></para><para> In relational database terms, the <see cref="M:System.Linq.Enumerable.LeftJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3})" /> method implements an outer left equijoin.</para><para>'Outer left' means that elements of the first sequence are returned regardless of whether matching elements are found in the other sequence.</para><para>An 'equijoin' is a join in which the keys are compared for equality.</para><para>An inner join - where only elements that have a match in the other sequence are included in the results - can be performed using the <see cref="M:System.Linq.Enumerable.Join``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3})" /> method.</para><para>For more information, see <see href="/dotnet/csharp/linq/standard-query-operators/join-operations">Join operations</see>.</para><para></para> + + or or or or is . @@ -6999,19 +7001,21 @@ If `comparer` is `null`, the default equality comparer, - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The type of the elements of the first sequence. + The type of the elements of the second sequence. + The type of the keys returned by the key selector functions. + The type of the result elements. + The first sequence to join. + The sequence to join to the first sequence. + A function to extract the join key from each element of the first sequence. + A function to extract the join key from each element of the second sequence. + A function to create a result element from two matching elements. + An to hash and compare keys. + Correlates the elements of two sequences based on matching keys. A specified is used to compare keys. + An that has elements of type that are obtained by performing a left outer join on two sequences. + <para><para> This method is implemented by using deferred execution. The immediate return value is an object that stores all the information that is required to perform the action. The query represented by this method is not executed until the object is enumerated either by calling its <c>GetEnumerator</c> method directly or by using <c>foreach</c> in C# or <c>For Each</c> in Visual Basic.</para><para></para><para> The default equality comparer, <see cref="P:System.Collections.Generic.EqualityComparer`1.Default" />, is used to hash and compare keys.</para><para></para><para> A join refers to the operation of correlating the elements of two sources of information based on a common key.</para><para><see cref="M:System.Linq.Enumerable.LeftJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3},System.Collections.Generic.IEqualityComparer{``2})" /> brings the two information sources and the keys by which they are matched together in one method call.</para><para></para><para> In relational database terms, the <see cref="M:System.Linq.Enumerable.LeftJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3},System.Collections.Generic.IEqualityComparer{``2})" /> method implements an outer left equijoin.</para><para>'Outer left' means that elements of the first sequence are returned regardless of whether matching elements are found in the other sequence.</para><para>An 'equijoin' is a join in which the keys are compared for equality.</para><para>An inner join - where only elements that have a match in the other sequence are included in the results - can be performed using the <see cref="M:System.Linq.Enumerable.Join``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3},System.Collections.Generic.IEqualityComparer{``2})" /> method.</para><para>For more information, see <see href="/dotnet/csharp/linq/standard-query-operators/join-operations">Join operations</see>.</para><para></para> + + or or or or is . @@ -12030,18 +12034,20 @@ If comparer is `null`, the default comparer To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The type of the elements of the first sequence. + The type of the elements of the second sequence. + The type of the keys returned by the key selector functions. + The type of the result elements. + The first sequence to join. + The sequence to join to the first sequence. + A function to extract the join key from each element of the first sequence. + A function to extract the join key from each element of the second sequence. + A function to create a result element from two matching elements. + Correlates the elements of two sequences based on matching keys. The default equality comparer is used to compare keys. + An that has elements of type that are obtained by performing a right outer join on two sequences. + <para><para> This method is implemented by using deferred execution. The immediate return value is an object that stores all the information that is required to perform the action. The query represented by this method is not executed until the object is enumerated either by calling its <c>GetEnumerator</c> method directly or by using <c>foreach</c> in C# or <c>For Each</c> in Visual Basic.</para><para></para><para> The default equality comparer, <see cref="P:System.Collections.Generic.EqualityComparer`1.Default" />, is used to hash and compare keys.</para><para></para><para> A join refers to the operation of correlating the elements of two sources of information based on a common key.</para><para><see cref="M:System.Linq.Enumerable.RightJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3})" /> brings the two information sources and the keys by which they are matched together in one method call.</para><para></para><para> In relational database terms, the <see cref="M:System.Linq.Enumerable.RightJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3})" /> method implements an outer right equijoin.</para><para>'Outer right' means that elements of the second sequence are returned regardless of whether matching elements are found in the other sequence.</para><para>An 'equijoin' is a join in which the keys are compared for equality.</para><para>An inner join - where only elements that have a match in the other sequence are included in the results - can be performed using the <see cref="M:System.Linq.Enumerable.Join``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3})" /> method.</para><para>For more information, see <see href="/dotnet/csharp/linq/standard-query-operators/join-operations">Join operations</see>.</para><para></para> + + or or or or is . @@ -12122,19 +12128,21 @@ If comparer is `null`, the default comparer To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The type of the elements of the first sequence. + The type of the elements of the second sequence. + The type of the keys returned by the key selector functions. + The type of the result elements. + The first sequence to join. + The sequence to join to the first sequence. + A function to extract the join key from each element of the first sequence. + A function to extract the join key from each element of the second sequence. + A function to create a result element from two matching elements. + An to hash and compare keys. + Correlates the elements of two sequences based on matching keys. A specified is used to compare keys. + An that has elements of type that are obtained by performing a right outer join on two sequences. + <para><para> This method is implemented by using deferred execution. The immediate return value is an object that stores all the information that is required to perform the action. The query represented by this method is not executed until the object is enumerated either by calling its <c>GetEnumerator</c> method directly or by using <c>foreach</c> in C# or <c>For Each</c> in Visual Basic.</para><para></para><para> The default equality comparer, <see cref="P:System.Collections.Generic.EqualityComparer`1.Default" />, is used to hash and compare keys.</para><para></para><para> A join refers to the operation of correlating the elements of two sources of information based on a common key.</para><para><see cref="M:System.Linq.Enumerable.RightJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3},System.Collections.Generic.IEqualityComparer{``2})" /> brings the two information sources and the keys by which they are matched together in one method call.</para><para></para><para> In relational database terms, the <see cref="M:System.Linq.Enumerable.RightJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3},System.Collections.Generic.IEqualityComparer{``2})" /> method implements an outer right equijoin.</para><para>'Outer right' means that elements of the second sequence are returned regardless of whether matching elements are found in the other sequence.</para><para>An 'equijoin' is a join in which the keys are compared for equality.</para><para>An inner join - where only elements that have a match in the other sequence are included in the results - can be performed using the <see cref="M:System.Linq.Enumerable.Join``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3},System.Collections.Generic.IEqualityComparer{``2})" /> method.</para><para>For more information, see <see href="/dotnet/csharp/linq/standard-query-operators/join-operations">Join operations</see>.</para><para></para> + + or or or or is . @@ -12742,13 +12750,31 @@ If comparer is `null`, the default comparer - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The type of the value to be yielded in the result sequence. + The starting value. This value will always be included in the resulting sequence. + The ending bound beyond which values will not be included in the sequence. + The amount by which the next value in the sequence should be incremented from the previous value. + Generates a sequence that begins with and yields additional values each incremented by until is reached. + An that contains the sequence. To be added. + + is . + + is . + + is . + + is NaN. + + is NaN. + + is NaN. + + is greater than zero but is less than . + + is less than zero but is greater than . + + is zero and does not equal . @@ -12988,11 +13014,11 @@ If comparer is `null`, the default comparer - To be added. - To be added. - To be added. - To be added. - To be added. + The type of the elements of . + A sequence of values to shuffle. + Shuffles the order of the elements of a sequence. + A sequence whose elements correspond to those of the input sequence in randomized order. + Randomization is performed using a non-cryptographically-secure random number generator. diff --git a/xml/System.Linq/Queryable.xml b/xml/System.Linq/Queryable.xml index 0ce76496420..25c1113a883 100644 --- a/xml/System.Linq/Queryable.xml +++ b/xml/System.Linq/Queryable.xml @@ -7014,18 +7014,20 @@ The last chunk will contain the remaining elements and may be of a smaller size. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The type of the elements of the first sequence. + The type of the elements of the second sequence. + The type of the keys returned by the key selector functions. + The type of the result elements. + The first sequence to join. + The sequence to join to the first sequence. + A function to extract the join key from each element of the first sequence. + A function to extract the join key from each element of the second sequence. + A function to create a result element from two matching elements. + Correlates the elements of two sequences based on matching keys. The default equality comparer is used to compare keys. + An that has elements of type that are obtained by performing a left outer join on two sequences. + <para><para> This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types.</para><para>For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para><para></para><para> The <see cref="M:System.Linq.Queryable.LeftJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.LeftJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}})" /> itself as a constructed generic method.</para><para>It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="outer" /> parameter.</para><para></para><para> The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.LeftJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}})" /> depends on the implementation of the type of the <paramref name="outer" /> parameter.</para><para>The expected behavior is that of a left outer join.</para><para>The <paramref name="outerKeySelector" /> and <paramref name="innerKeySelector" /> functions are used to extract keys from <paramref name="outer" /> and <paramref name="inner" />, respectively.</para><para>These keys are compared for equality to match elements from each sequence.</para><para>A pair of elements is stored for each element in <paramref name="inner" /> that matches an element in <paramref name="outer" />, plus a pair for each element in <paramref name="outer" /> that has no matches in <paramref name="inner" />.</para><para>Then the <paramref name="resultSelector" /> function is invoked to project a result object from each pair of elements.</para><para></para> + + or or or or is . @@ -7106,19 +7108,21 @@ The last chunk will contain the remaining elements and may be of a smaller size. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The type of the elements of the first sequence. + The type of the elements of the second sequence. + The type of the keys returned by the key selector functions. + The type of the result elements. + The first sequence to join. + The sequence to join to the first sequence. + A function to extract the join key from each element of the first sequence. + A function to extract the join key from each element of the second sequence. + A function to create a result element from two matching elements. + An to hash and compare keys. + Correlates the elements of two sequences based on matching keys. A specified is used to compare keys. + An that has elements of type that are obtained by performing a left outer join on two sequences. + <para><para> This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types.</para><para>For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para><para></para><para> The <see cref="M:System.Linq.Queryable.LeftJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}},System.Collections.Generic.IEqualityComparer{``2})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.LeftJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}},System.Collections.Generic.IEqualityComparer{``2})" /> itself as a constructed generic method.</para><para>It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="outer" /> parameter.</para><para></para><para> The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.LeftJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}},System.Collections.Generic.IEqualityComparer{``2})" /> depends on the implementation of the type of the <paramref name="outer" /> parameter.</para><para>The expected behavior is that of a left outer join.</para><para>The <paramref name="outerKeySelector" /> and <paramref name="innerKeySelector" /> functions are used to extract keys from <paramref name="outer" /> and <paramref name="inner" />, respectively.</para><para>These keys are compared for equality to match elements from each sequence.</para><para>A pair of elements is stored for each element in <paramref name="inner" /> that matches an element in <paramref name="outer" />, plus a pair for each element in <paramref name="outer" /> that has no matches in <paramref name="inner" />.</para><para>Then the <paramref name="resultSelector" /> function is invoked to project a result object from each pair of elements.</para><para></para> + + or or or or is . @@ -7657,14 +7661,17 @@ The last chunk will contain the remaining elements and may be of a smaller size. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The type of the elements of . + The type of key to compare elements by. + A sequence of values to determine the maximum value of. + A function to extract the key for each element. + The to compare keys. + Returns the maximum value in a generic according to a specified key selector function. + The value with the maximum key in the sequence. To be added. + + is . + No key extracted from implements the or interface. @@ -8115,14 +8122,17 @@ The last chunk will contain the remaining elements and may be of a smaller size. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The type of the elements of . + The type of key to compare elements by. + A sequence of values to determine the minimum value of. + A function to extract the key for each element. + The to compare keys. + Returns the minimum value in a generic according to a specified key selector function. + The value with the minimum key in the sequence. To be added. + + is . + No key extracted from implements the or interface. @@ -9202,18 +9212,20 @@ The query behavior that occurs as a result of executing an expression tree - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The type of the elements of the first sequence. + The type of the elements of the second sequence. + The type of the keys returned by the key selector functions. + The type of the result elements. + The first sequence to join. + The sequence to join to the first sequence. + A function to extract the join key from each element of the first sequence. + A function to extract the join key from each element of the second sequence. + A function to create a result element from two matching elements. + Correlates the elements of two sequences based on matching keys. The default equality comparer is used to compare keys. + An that has elements of type that are obtained by performing a right outer join on two sequences. + <para><para> This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types.</para><para>For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para><para></para><para> The <see cref="M:System.Linq.Queryable.RightJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.RightJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}})" /> itself as a constructed generic method.</para><para>It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="outer" /> parameter.</para><para></para><para> The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.RightJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}})" /> depends on the implementation of the type of the <paramref name="outer" /> parameter.</para><para>The expected behavior is that of a right outer join.</para><para>The <paramref name="outerKeySelector" /> and <paramref name="innerKeySelector" /> functions are used to extract keys from <paramref name="outer" /> and <paramref name="inner" />, respectively.</para><para>These keys are compared for equality to match elements from each sequence.</para><para>A pair of elements is stored for each element in <paramref name="inner" /> that matches an element in <paramref name="outer" />, plus a pair for each element in <paramref name="inner" /> that has no matches in <paramref name="outer" />.</para><para>Then the <paramref name="resultSelector" /> function is invoked to project a result object from each pair of elements.</para><para></para> + + or or or or is . @@ -9294,19 +9306,21 @@ The query behavior that occurs as a result of executing an expression tree - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The type of the elements of the first sequence. + The type of the elements of the second sequence. + The type of the keys returned by the key selector functions. + The type of the result elements. + The first sequence to join. + The sequence to join to the first sequence. + A function to extract the join key from each element of the first sequence. + A function to extract the join key from each element of the second sequence. + A function to create a result element from two matching elements. + An to hash and compare keys. + Correlates the elements of two sequences based on matching keys. A specified is used to compare keys. + An that has elements of type that are obtained by performing a right outer join on two sequences. + <para><para> This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types.</para><para>For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para><para></para><para> The <see cref="M:System.Linq.Queryable.RightJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}},System.Collections.Generic.IEqualityComparer{``2})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.RightJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}},System.Collections.Generic.IEqualityComparer{``2})" /> itself as a constructed generic method.</para><para>It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="outer" /> parameter.</para><para></para><para> The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.RightJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}},System.Collections.Generic.IEqualityComparer{``2})" /> depends on the implementation of the type of the <paramref name="outer" /> parameter.</para><para>The expected behavior is that of a right outer join.</para><para>The <paramref name="outerKeySelector" /> and <paramref name="innerKeySelector" /> functions are used to extract keys from <paramref name="outer" /> and <paramref name="inner" />, respectively.</para><para>These keys are compared for equality to match elements from each sequence.</para><para>A pair of elements is stored for each element in <paramref name="inner" /> that matches an element in <paramref name="outer" />, plus a pair for each element in <paramref name="inner" /> that has no matches in <paramref name="outer" />.</para><para>Then the <paramref name="resultSelector" /> function is invoked to project a result object from each pair of elements.</para><para></para> + + or or or or is . From a88f6f44a00c66464d5c1b2069f6dfb1871347b2 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 09:58:34 -0700 Subject: [PATCH 14/39] System.Management docs --- xml/System.Management/ManagementBaseObject.xml | 3 +++ xml/System.Management/MethodData.xml | 1 + 2 files changed, 4 insertions(+) diff --git a/xml/System.Management/ManagementBaseObject.xml b/xml/System.Management/ManagementBaseObject.xml index c203e632887..0f318c46531 100644 --- a/xml/System.Management/ManagementBaseObject.xml +++ b/xml/System.Management/ManagementBaseObject.xml @@ -655,6 +655,7 @@ ]]> + @@ -699,6 +700,7 @@ ]]> + @@ -893,6 +895,7 @@ ]]> + diff --git a/xml/System.Management/MethodData.xml b/xml/System.Management/MethodData.xml index d4939f117fc..158acc769bb 100644 --- a/xml/System.Management/MethodData.xml +++ b/xml/System.Management/MethodData.xml @@ -249,6 +249,7 @@ ]]> + From 570af32e0eeb841e44290559dfc4eeb19bf43d71 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 09:58:50 -0700 Subject: [PATCH 15/39] System.Net docs --- .../HeaderStringValues.xml | 1 + .../HttpHeadersNonValidated.xml | 1 + xml/System.Net.Http/HttpMethod.xml | 4 +- .../MediaTypeNames+Application.xml | 2 +- xml/System.Net.Quic/QuicConnection.xml | 4 +- xml/System.Net.Quic/QuicStream.xml | 19 +++++ xml/System.Net.Quic/QuicStreamType.xml | 2 +- .../SslClientAuthenticationOptions.xml | 4 +- .../SslServerAuthenticationOptions.xml | 4 +- xml/System.Net.WebSockets/WebSocketStream.xml | 69 +++++++++++++------ xml/System.Net/CookieException.xml | 12 ++-- xml/System.Net/IPAddress.xml | 26 ++++--- xml/System.Net/IPNetwork.xml | 20 ++++-- 13 files changed, 114 insertions(+), 54 deletions(-) diff --git a/xml/System.Net.Http.Headers/HeaderStringValues.xml b/xml/System.Net.Http.Headers/HeaderStringValues.xml index 1ce6b42ecd7..36ae9cc2244 100644 --- a/xml/System.Net.Http.Headers/HeaderStringValues.xml +++ b/xml/System.Net.Http.Headers/HeaderStringValues.xml @@ -160,6 +160,7 @@ This member is an explicit interface member implementation. It can be used only ]]> + diff --git a/xml/System.Net.Http.Headers/HttpHeadersNonValidated.xml b/xml/System.Net.Http.Headers/HttpHeadersNonValidated.xml index 7fd01baff6a..d0bf853f220 100644 --- a/xml/System.Net.Http.Headers/HttpHeadersNonValidated.xml +++ b/xml/System.Net.Http.Headers/HttpHeadersNonValidated.xml @@ -379,6 +379,7 @@ This member is an explicit interface member implementation. It can be used only ]]> + diff --git a/xml/System.Net.Http/HttpMethod.xml b/xml/System.Net.Http/HttpMethod.xml index 3c93abd731b..b70c8cfa861 100644 --- a/xml/System.Net.Http/HttpMethod.xml +++ b/xml/System.Net.Http/HttpMethod.xml @@ -726,8 +726,8 @@ System.Net.Http.HttpMethod - To be added. - To be added. + Gets the HTTP QUERY protocol method. + The HTTP QUERY method. To be added. diff --git a/xml/System.Net.Mime/MediaTypeNames+Application.xml b/xml/System.Net.Mime/MediaTypeNames+Application.xml index 4d72288672e..04b17ca8525 100644 --- a/xml/System.Net.Mime/MediaTypeNames+Application.xml +++ b/xml/System.Net.Mime/MediaTypeNames+Application.xml @@ -518,7 +518,7 @@ System.String - To be added. + Specifies that the data is in YAML format. To be added. diff --git a/xml/System.Net.Quic/QuicConnection.xml b/xml/System.Net.Quic/QuicConnection.xml index faf94fd4bd2..f489275ea64 100644 --- a/xml/System.Net.Quic/QuicConnection.xml +++ b/xml/System.Net.Quic/QuicConnection.xml @@ -293,7 +293,7 @@ If System.Net.Security.TlsCipherSuite - To be added. + Gets the cipher suite which was negotiated for this connection. To be added. To be added. @@ -404,7 +404,7 @@ If System.Security.Authentication.SslProtocols - To be added. + Gets a value that indicates the security protocol used to authenticate this connection. To be added. To be added. diff --git a/xml/System.Net.Quic/QuicStream.xml b/xml/System.Net.Quic/QuicStream.xml index 94b87ee9aca..f0452938c85 100644 --- a/xml/System.Net.Quic/QuicStream.xml +++ b/xml/System.Net.Quic/QuicStream.xml @@ -119,6 +119,7 @@ Corresponds to [STOP_SENDING](https://www.rfc-editor.org/rfc/rfc9000.html#frame- Begins an asynchronous read operation. (Consider using instead.) An that represents the asynchronous read, which could still be pending. To be added. + @@ -169,6 +170,7 @@ Corresponds to [STOP_SENDING](https://www.rfc-editor.org/rfc/rfc9000.html#frame- Begins an asynchronous write operation. (Consider using instead.) An that represents the asynchronous write, which could still be pending. To be added. + @@ -220,6 +222,7 @@ Corresponds to [STOP_SENDING](https://www.rfc-editor.org/rfc/rfc9000.html#frame- if the stream supports seeking; otherwise, . To be added. + @@ -245,6 +248,7 @@ Corresponds to [STOP_SENDING](https://www.rfc-editor.org/rfc/rfc9000.html#frame- if the current stream can time out; otherwise, . To be added. + @@ -270,6 +274,7 @@ Corresponds to [STOP_SENDING](https://www.rfc-editor.org/rfc/rfc9000.html#frame- if the stream supports writing; otherwise, . To be added. + @@ -386,6 +391,7 @@ Equivalent to using The number of bytes read from the stream, between zero (0) and the number of bytes requested. ReadAsync returns zero (0) only if zero bytes were requested or if no more bytes will be available because it's at the end of the stream; otherwise, read operations do not complete until at least one byte is available. If zero bytes are requested, read operations may complete immediately or may not complete until at least one byte is available (but without consuming any data). + @@ -413,6 +419,7 @@ Equivalent to using A reference to the outstanding asynchronous I/O request. Ends an asynchronous write operation. (Consider using instead.) To be added. + @@ -466,6 +473,7 @@ Equivalent to using A task that represents the asynchronous flush operation. To be added. The cancellation token was canceled. This exception is stored into the returned task. + @@ -516,6 +524,7 @@ Equivalent to using A long value representing the length of the stream in bytes. To be added. In all cases. + @@ -541,6 +550,7 @@ Equivalent to using The current position within the stream. To be added. In all cases. + @@ -633,6 +643,7 @@ Equivalent to using A task that represents the asynchronous read operation. The value of its property contains the total number of bytes read into the buffer. The result value can be less than the length of the buffer if that many bytes are not currently available, or it can be 0 (zero) if the length of the buffer is 0 or if the end of the stream has been reached. The cancellation token was canceled. This exception is stored into the returned task. + @@ -667,6 +678,7 @@ Equivalent to using A task that represents the asynchronous read operation. The value of the property contains the total number of bytes read into the buffer. The result value can be less than the number of bytes requested if the number of bytes currently available is less than the requested number, or it can be 0 (zero) if is 0 or if the end of the stream has been reached. The cancellation token was canceled. This exception is stored into the returned task. + @@ -692,6 +704,7 @@ Equivalent to using Reads a byte from the stream and advances the position within the stream by one byte, or returns -1 if at the end of the stream. The unsigned byte cast to an , or -1 if at the end of the stream. To be added. + @@ -772,6 +785,7 @@ Equivalent to using The new position within the current stream. To be added. In all cases. + @@ -800,6 +814,7 @@ Equivalent to using Sets the length of the stream. This method is not currently supported and always throws a . To be added. In all cases. + @@ -940,6 +955,7 @@ Equivalent to using A task that represents the asynchronous write operation. To be added. The cancellation token was canceled. This exception is stored into the returned task. + @@ -973,6 +989,7 @@ Equivalent to using A task that represents the asynchronous write operation. To be added. The cancellation token was canceled. This exception is stored into the returned task. + @@ -1007,6 +1024,7 @@ Equivalent to using A task that represents the asynchronous write operation. To be added. The cancellation token was canceled. This exception is stored into the returned task. + @@ -1034,6 +1052,7 @@ Equivalent to using The byte to write to the stream. Writes a byte to the current position in the stream and advances the position within the stream by one byte. To be added. + diff --git a/xml/System.Net.Quic/QuicStreamType.xml b/xml/System.Net.Quic/QuicStreamType.xml index 6b5cc7023cb..079f0d4eb6c 100644 --- a/xml/System.Net.Quic/QuicStreamType.xml +++ b/xml/System.Net.Quic/QuicStreamType.xml @@ -16,7 +16,7 @@ System.Enum - Represents the type of a stream. + Represents the type of a stream as defined in RFC9000. To be added. diff --git a/xml/System.Net.Security/SslClientAuthenticationOptions.xml b/xml/System.Net.Security/SslClientAuthenticationOptions.xml index 5e17bee2340..8b0f2ff56d3 100644 --- a/xml/System.Net.Security/SslClientAuthenticationOptions.xml +++ b/xml/System.Net.Security/SslClientAuthenticationOptions.xml @@ -142,7 +142,7 @@ System.Boolean - To be added. + Gets or sets a value that indicates whether the the rsa_pkcs1_* family of TLS signature algorithms is enabled for use in the TLS handshake. To be added. To be added. @@ -176,7 +176,7 @@ System.Boolean - To be added. + Gets or sets a value that indicates whether the the rsa_pss_* family of TLS signature algorithms is enabled for use in the TLS handshake. To be added. To be added. diff --git a/xml/System.Net.Security/SslServerAuthenticationOptions.xml b/xml/System.Net.Security/SslServerAuthenticationOptions.xml index 1a725e3be62..25ceb5d0079 100644 --- a/xml/System.Net.Security/SslServerAuthenticationOptions.xml +++ b/xml/System.Net.Security/SslServerAuthenticationOptions.xml @@ -140,7 +140,7 @@ System.Boolean - To be added. + Gets or sets a value that indicates whether the the rsa_pkcs1_* family of TLS signature algorithms is enabled for use in the TLS handshake. To be added. To be added. @@ -174,7 +174,7 @@ System.Boolean - To be added. + Gets or sets a value that indicates whether the the rsa_pss_* family of TLS signature algorithms is enabled for use in the TLS handshake. To be added. To be added. diff --git a/xml/System.Net.WebSockets/WebSocketStream.xml b/xml/System.Net.WebSockets/WebSocketStream.xml index 2588739adb4..a4a0e104b13 100644 --- a/xml/System.Net.WebSockets/WebSocketStream.xml +++ b/xml/System.Net.WebSockets/WebSocketStream.xml @@ -20,7 +20,7 @@ - To be added. + Provides a that delegates to a wrapped . To be added. @@ -69,6 +69,7 @@ To be added. To be added. To be added. + @@ -116,6 +117,7 @@ To be added. To be added. To be added. + @@ -137,6 +139,7 @@ To be added. To be added. To be added. + @@ -158,6 +161,7 @@ To be added. To be added. To be added. + @@ -179,6 +183,7 @@ To be added. To be added. To be added. + @@ -201,11 +206,12 @@ - To be added. - To be added. - To be added. - To be added. - To be added. + The wrapped . + The type of messages that should be written as part of calls. Each write produces a message. + + if disposing the should close the underlying ; otherwise, . Defaults to . + Creates a that delegates to a wrapped . + A new instance of that forwards reads and writes on the to the underlying . To be added. @@ -230,11 +236,11 @@ - To be added. - To be added. - To be added. - To be added. - To be added. + The wrapped . + The type of messages that should be written as part of calls. Each write produces a message. + The amount of time that disposing the will wait for a graceful closing of the 's output. + Creates a that delegates to a wrapped . + A new instance of that forwards reads and writes on the to the underlying . To be added. @@ -257,10 +263,12 @@ - To be added. - To be added. - To be added. - To be added. + The wrapped . + Creates a that reads a single message from the underlying . + A new instance of that forwards reads on the to the underlying . + + Reads on the will read a single message from the underlying . This means that reads will start returning 0 bytes read once all data has been consumed from the next message received in the . + @@ -283,10 +291,14 @@ - To be added. - To be added. - To be added. - To be added. + The wrapped . + + The type of messages that should be written as part of calls. + Each write on the results in writing a partial message to the underlying . + When the is disposed, it will write an empty message to the underlying to signal the end of the message. + + Creates a that writes a single message to the underlying . + A new instance of that forwards writes on the to the underlying . To be added. @@ -312,6 +324,7 @@ To be added. To be added. To be added. + @@ -359,6 +372,7 @@ To be added. To be added. To be added. + @@ -383,6 +397,7 @@ To be added. To be added. To be added. + @@ -404,6 +419,7 @@ To be added. To be added. + @@ -429,6 +445,7 @@ To be added. To be added. To be added. + @@ -450,6 +467,7 @@ To be added. To be added. To be added. + @@ -471,6 +489,7 @@ To be added. To be added. To be added. + @@ -500,6 +519,7 @@ To be added. To be added. To be added. + @@ -526,6 +546,7 @@ To be added. To be added. To be added. + @@ -557,6 +578,7 @@ To be added. To be added. To be added. + @@ -584,6 +606,7 @@ To be added. To be added. To be added. + @@ -608,6 +631,7 @@ To be added. To be added. To be added. + @@ -626,9 +650,9 @@ System.Net.WebSockets.WebSocket - To be added. + Gets the underlying wrapped by this . To be added. - To be added. + The used to construct this instance. @@ -657,6 +681,7 @@ To be added. To be added. To be added. + @@ -683,6 +708,7 @@ To be added. To be added. To be added. + @@ -714,6 +740,7 @@ To be added. To be added. To be added. + diff --git a/xml/System.Net/CookieException.xml b/xml/System.Net/CookieException.xml index 455ba5b385b..9563b973242 100644 --- a/xml/System.Net/CookieException.xml +++ b/xml/System.Net/CookieException.xml @@ -184,8 +184,8 @@ - To be added. - To be added. + A that describes the error that occurred. + Initializes a new instance of the class with the specified error message. To be added. @@ -283,9 +283,11 @@ - To be added. - To be added. - To be added. + A that describes the error that occurred. + The exception that is the cause of the current exception. + + Initializes a new instance of the class with the specified error message and a reference to the inner exception that is the cause of this exception. + To be added. diff --git a/xml/System.Net/IPAddress.xml b/xml/System.Net/IPAddress.xml index 16567a220e3..2a267eae687 100644 --- a/xml/System.Net/IPAddress.xml +++ b/xml/System.Net/IPAddress.xml @@ -1604,8 +1604,8 @@ - To be added. - To be added. + The text to parse. + Determines whether the provided span contains a valid . To be added. To be added. @@ -1638,8 +1638,8 @@ - To be added. - To be added. + The text to parse. + Determines whether the provided span contains a valid . To be added. To be added. @@ -2145,9 +2145,9 @@ - To be added. - To be added. - To be added. + The span of UTF-8 characters to parse. + Parses a span of UTF-8 characters into a value. + The result of parsing . To be added. @@ -2410,6 +2410,7 @@ The scope identifier is > 0x00000000FFFFFFFF Formats the value of the current instance using the specified format. The value of the current instance in the specified format. To be added. + @@ -2552,6 +2553,7 @@ The scope identifier is > 0x00000000FFFFFFFF if the formatting was successful; otherwise, . To be added. + @@ -2687,6 +2689,7 @@ The scope identifier is > 0x00000000FFFFFFFF if the formatting was successful; otherwise, . To be added. + @@ -2951,10 +2954,11 @@ The scope identifier is > 0x00000000FFFFFFFF - To be added. - To be added. - To be added. - To be added. + The span of UTF-8 characters to parse. + On return, contains the result of successfully parsing or an undefined value on failure. + Tries to parse a span of UTF-8 characters into a value. + + if was successfully parsed; otherwise, . To be added. diff --git a/xml/System.Net/IPNetwork.xml b/xml/System.Net/IPNetwork.xml index 22dc3281225..03526a9a0d8 100644 --- a/xml/System.Net/IPNetwork.xml +++ b/xml/System.Net/IPNetwork.xml @@ -315,10 +315,12 @@ - To be added. - To be added. - To be added. + A UTF-8 character span that defines an IP network in CIDR notation. + Converts a UTF-8 CIDR character span to an instance. + An instance. To be added. + + is not a valid UTF-8 CIDR network string, or the address contains non-zero bits after the network prefix. @@ -437,6 +439,7 @@ Formats the value of the current instance using the specified format. The value of the current instance in the specified format. To be added. + @@ -552,6 +555,7 @@ if the formatting was successful; otherwise, . To be added. + @@ -653,6 +657,7 @@ if the formatting was successful; otherwise, . To be added. + @@ -818,10 +823,11 @@ - To be added. - To be added. - To be added. - To be added. + A UTF-8 character span that defines an IP network in CIDR notation. + When the method returns, contains an instance if the conversion succeeds. + Converts the specified UTF-8 CIDR character span to an instance and returns a value indicating whether the conversion succeeded. + + if the conversion was successful; otherwise, . To be added. From 7092e78f6f876b7eef8a794abf2ec69aa90e36ae Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 09:59:05 -0700 Subject: [PATCH 16/39] System.Numerics docs --- xml/System.Numerics/Complex.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/xml/System.Numerics/Complex.xml b/xml/System.Numerics/Complex.xml index f361329518a..fd62a882d1b 100644 --- a/xml/System.Numerics/Complex.xml +++ b/xml/System.Numerics/Complex.xml @@ -7168,6 +7168,7 @@ Languages that support custom operators can use the To be added. To be added. To be added. + From 22c7e8c3452294729595791f130c27cea2c7d8f7 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 09:59:18 -0700 Subject: [PATCH 17/39] System.Reflection docs --- .../AssemblyDefinition.xml | 4 +- .../AssemblyReference.xml | 4 +- .../EventDefinition.xml | 2 +- .../FieldDefinition.xml | 2 +- .../MethodDefinition.xml | 2 +- .../PropertyDefinition.xml | 2 +- xml/System.Reflection.Metadata/TypeName.xml | 43 ++++++++++++------- .../TypeNameParseOptions.xml | 2 +- xml/System.Reflection/DispatchProxy.xml | 4 +- 9 files changed, 39 insertions(+), 26 deletions(-) diff --git a/xml/System.Reflection.Metadata/AssemblyDefinition.xml b/xml/System.Reflection.Metadata/AssemblyDefinition.xml index 8a2e0a44bf6..4c9e38ec962 100644 --- a/xml/System.Reflection.Metadata/AssemblyDefinition.xml +++ b/xml/System.Reflection.Metadata/AssemblyDefinition.xml @@ -132,7 +132,7 @@ - To be added. + Creates an instance corresponding to this assembly definition. To be added. To be added. @@ -154,7 +154,7 @@ - To be added. + Creates an instance corresponding to this assembly definition. To be added. To be added. diff --git a/xml/System.Reflection.Metadata/AssemblyReference.xml b/xml/System.Reflection.Metadata/AssemblyReference.xml index fe5a7146272..e74d4b2133c 100644 --- a/xml/System.Reflection.Metadata/AssemblyReference.xml +++ b/xml/System.Reflection.Metadata/AssemblyReference.xml @@ -132,7 +132,7 @@ - To be added. + Creates an instance corresponding to this assembly reference. To be added. To be added. @@ -154,7 +154,7 @@ - To be added. + Creates an instance corresponding to this assembly reference. To be added. To be added. diff --git a/xml/System.Reflection.Metadata/EventDefinition.xml b/xml/System.Reflection.Metadata/EventDefinition.xml index dd8160bb3f1..441955684c2 100644 --- a/xml/System.Reflection.Metadata/EventDefinition.xml +++ b/xml/System.Reflection.Metadata/EventDefinition.xml @@ -155,7 +155,7 @@ - To be added. + Returns a handle to the type that declares this event. To be added. To be added. diff --git a/xml/System.Reflection.Metadata/FieldDefinition.xml b/xml/System.Reflection.Metadata/FieldDefinition.xml index a7577add3d8..2ed21207863 100644 --- a/xml/System.Reflection.Metadata/FieldDefinition.xml +++ b/xml/System.Reflection.Metadata/FieldDefinition.xml @@ -222,7 +222,7 @@ - To be added. + Returns a handle to the type that declares this field. To be added. To be added. diff --git a/xml/System.Reflection.Metadata/MethodDefinition.xml b/xml/System.Reflection.Metadata/MethodDefinition.xml index 5915bb78bc8..612645d40f2 100644 --- a/xml/System.Reflection.Metadata/MethodDefinition.xml +++ b/xml/System.Reflection.Metadata/MethodDefinition.xml @@ -262,7 +262,7 @@ - To be added. + Returns a handle to the type that declares this method. To be added. To be added. diff --git a/xml/System.Reflection.Metadata/PropertyDefinition.xml b/xml/System.Reflection.Metadata/PropertyDefinition.xml index d9b0600d9f3..57bfc803276 100644 --- a/xml/System.Reflection.Metadata/PropertyDefinition.xml +++ b/xml/System.Reflection.Metadata/PropertyDefinition.xml @@ -250,7 +250,7 @@ - To be added. + Returns a handle to the type that declares this property. To be added. To be added. diff --git a/xml/System.Reflection.Metadata/TypeName.xml b/xml/System.Reflection.Metadata/TypeName.xml index aac6e3f9d32..489cf8243c0 100644 --- a/xml/System.Reflection.Metadata/TypeName.xml +++ b/xml/System.Reflection.Metadata/TypeName.xml @@ -481,10 +481,15 @@ - To be added. - To be added. - To be added. + The number of dimensions for the array. This number must be more than zero and less than or equal to 32. + + Creates a object representing an array of the current type, with the specified number of dimensions. + + + A object representing an array of the current type, with the specified number of dimensions. + To be added. + rank is invalid. For example, 0 or negative. @@ -505,8 +510,8 @@ - To be added. - To be added. + Creates a object that represents a managed reference to the current type. + A object that represents a managed reference to the current type. To be added. @@ -537,10 +542,13 @@ - To be added. - To be added. - To be added. + An array of type names to be used as generic arguments of the current simple type name. + Creates a new constructed generic type name. + + A representing the constructed type name formed by using the elements of for the generic arguments of the current simple type name. + To be added. + The current type name is not simple. @@ -561,8 +569,8 @@ - To be added. - To be added. + Creates a object that represents a pointer to the current type. + A object that represents a pointer to the current type. To be added. @@ -584,8 +592,12 @@ - To be added. - To be added. + + Creates a object representing a one-dimensional array of the current type, with a lower bound of zero. + + + A object representing a one-dimensional array of the current type, with a lower bound of zero. + To be added. @@ -774,10 +786,11 @@ - To be added. - To be added. - To be added. + Assembly name. + Creates a new object that represents current simple name with provided assembly name. + Created simple name. To be added. + The current type name is not simple. diff --git a/xml/System.Reflection.Metadata/TypeNameParseOptions.xml b/xml/System.Reflection.Metadata/TypeNameParseOptions.xml index 6b8c3730d79..6c1ef5c1e69 100644 --- a/xml/System.Reflection.Metadata/TypeNameParseOptions.xml +++ b/xml/System.Reflection.Metadata/TypeNameParseOptions.xml @@ -56,7 +56,7 @@ Limits the maximum number of nodes that the parser can handle. To be added. - To be added. + Setting this to a large value can render susceptible to Denial of Service attacks when parsing or handling malicious input.The default value is 20. diff --git a/xml/System.Reflection/DispatchProxy.xml b/xml/System.Reflection/DispatchProxy.xml index 4f80cc45f06..64091199307 100644 --- a/xml/System.Reflection/DispatchProxy.xml +++ b/xml/System.Reflection/DispatchProxy.xml @@ -131,8 +131,8 @@ - To be added. - To be added. + The interface the proxy should implement. + The base class to use for the proxy class. Creates an object instance that derives from class and implements interface . An object instance that implements . To be added. From c2f17606bf25184b655da95a58d32f5a6383d913 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 09:59:34 -0700 Subject: [PATCH 18/39] System.Runtime.InteropServices docs --- .../JSObject.xml | 12 ++++++++++ .../GeneratedComInterfaceAttribute.xml | 4 ++-- .../StrategyBasedComWrappers.xml | 2 ++ .../JsonMarshal.xml | 22 +++++++++++-------- 4 files changed, 29 insertions(+), 11 deletions(-) diff --git a/xml/System.Runtime.InteropServices.JavaScript/JSObject.xml b/xml/System.Runtime.InteropServices.JavaScript/JSObject.xml index 9c7fec92a95..87b2067bcb9 100644 --- a/xml/System.Runtime.InteropServices.JavaScript/JSObject.xml +++ b/xml/System.Runtime.InteropServices.JavaScript/JSObject.xml @@ -89,6 +89,8 @@ The value of the property with the specified name. This method throws a when the property value is not a Boolean. The property value is not a . + + @@ -124,6 +126,8 @@ The value of the property with the specified name. This method throws a when the property value is not an array. The property value is not an array. + + @@ -153,6 +157,8 @@ The value of the property with the specified name. This method throws a when the property value is not a number. The property value is not a number. + + @@ -182,6 +188,8 @@ The value of the property with the specified name. This method throws a when the property value is not an integer. The property value is not an integer. + + @@ -217,6 +225,8 @@ The value of the property with the specified name. This method throws a when the property value is not an object. The property value is not a . + + @@ -252,6 +262,8 @@ The value of the property with the specified name. This method throws a when the property value is not a string. The property value is not a string. + + diff --git a/xml/System.Runtime.InteropServices.Marshalling/GeneratedComInterfaceAttribute.xml b/xml/System.Runtime.InteropServices.Marshalling/GeneratedComInterfaceAttribute.xml index 5134abe72d5..3da67bf007d 100644 --- a/xml/System.Runtime.InteropServices.Marshalling/GeneratedComInterfaceAttribute.xml +++ b/xml/System.Runtime.InteropServices.Marshalling/GeneratedComInterfaceAttribute.xml @@ -65,9 +65,9 @@ System.Type - To be added. + Gets or sets the used to control how exceptions are marshalled for all methods on the interface. To be added. - To be added. + If this field is not specified, is used to marshal exceptions. diff --git a/xml/System.Runtime.InteropServices.Marshalling/StrategyBasedComWrappers.xml b/xml/System.Runtime.InteropServices.Marshalling/StrategyBasedComWrappers.xml index 9bb4ada2379..b421eec1ca1 100644 --- a/xml/System.Runtime.InteropServices.Marshalling/StrategyBasedComWrappers.xml +++ b/xml/System.Runtime.InteropServices.Marshalling/StrategyBasedComWrappers.xml @@ -101,6 +101,7 @@ pointer containing memory for all COM interface entries. To be added. + @@ -210,6 +211,7 @@ To be added. To be added. To be added. + diff --git a/xml/System.Runtime.InteropServices/JsonMarshal.xml b/xml/System.Runtime.InteropServices/JsonMarshal.xml index 868d73410b0..ea35879718b 100644 --- a/xml/System.Runtime.InteropServices/JsonMarshal.xml +++ b/xml/System.Runtime.InteropServices/JsonMarshal.xml @@ -15,7 +15,7 @@ - To be added. + An unsafe class that provides a set of methods to access the underlying data representations of JSON types. To be added. @@ -38,10 +38,11 @@ - To be added. - To be added. - To be added. - To be added. + The JSON property from which to extract the span. + Gets a view over the raw JSON data of the given name. + The span containing the raw JSON data of the name. This will not include the enclosing quotes. + <para><para> While the method itself does check for disposal of the underlying <see cref="T:System.Text.Json.JsonDocument" />, it is possible that it could be disposed after the method returns, which would result in the span pointing to a buffer that has been returned to the shared pool. Callers should take extra care to make sure that such a scenario isn't possible to avoid potential data corruption.</para><para></para> + The underlying has been disposed. @@ -64,10 +65,13 @@ - To be added. - To be added. - To be added. - To be added. + The JSON element from which to extract the span. + Gets a view over the raw JSON data of the given . + The span containing the raw JSON data of. + + While the method itself does check for disposal of the underlying , it is possible that it could be disposed after the method returns, which would result in the span pointing to a buffer that has been returned to the shared pool. Callers should take extra care to make sure that such a scenario isn't possible to avoid potential data corruption. + + The underlying has been disposed. From 9325c7ccae6eee8cba3a3a959377ba47fe37fd4e Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 09:59:54 -0700 Subject: [PATCH 19/39] System.Runtime.Serialization docs --- .../DataContract.xml | 12 ++++++------ .../DataContractJsonSerializer.xml | 8 ++++---- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/xml/System.Runtime.Serialization.DataContracts/DataContract.xml b/xml/System.Runtime.Serialization.DataContracts/DataContract.xml index ba80d45ece4..ee5a9f715ca 100644 --- a/xml/System.Runtime.Serialization.DataContracts/DataContract.xml +++ b/xml/System.Runtime.Serialization.DataContracts/DataContract.xml @@ -23,7 +23,7 @@ - To be added. + Represents a data contract that defines serialization and deserialization behavior for types. To be added. @@ -60,7 +60,7 @@ System.Runtime.Serialization.DataContracts.DataContract - To be added. + Gets the base data contract for this data contract. To be added. To be added. @@ -90,7 +90,7 @@ System.String - To be added. + Gets the contract type name for this data contract. To be added. To be added. @@ -408,7 +408,7 @@ System.Boolean - To be added. + Gets a value indicating whether the data contract is serialized by reference. To be added. To be added. @@ -432,7 +432,7 @@ System.Boolean - To be added. + Gets a value indicating whether the data contract represents a value type. To be added. To be added. @@ -608,7 +608,7 @@ System.Xml.XmlQualifiedName - To be added. + Gets the XML qualified name for the data contract. To be added. To be added. diff --git a/xml/System.Runtime.Serialization.Json/DataContractJsonSerializer.xml b/xml/System.Runtime.Serialization.Json/DataContractJsonSerializer.xml index 6741b3cc5a0..13c70d82bf8 100644 --- a/xml/System.Runtime.Serialization.Json/DataContractJsonSerializer.xml +++ b/xml/System.Runtime.Serialization.Json/DataContractJsonSerializer.xml @@ -834,8 +834,8 @@ - To be added. - To be added. + Gets the current serialization surrogate provider. + The current instance, or if no provider is set. To be added. @@ -1533,8 +1533,8 @@ - To be added. - To be added. + The to use for serialization, or to remove the current provider. + Sets the serialization surrogate provider. To be added. From be3aa11c05b1745d2a5d95589fa9d024e539841c Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 10:00:10 -0700 Subject: [PATCH 20/39] System.Security.Claims docs --- xml/System.Security.Claims/ClaimsIdentity.xml | 42 +++++++++++++------ 1 file changed, 29 insertions(+), 13 deletions(-) diff --git a/xml/System.Security.Claims/ClaimsIdentity.xml b/xml/System.Security.Claims/ClaimsIdentity.xml index 608d44298eb..72d18729088 100644 --- a/xml/System.Security.Claims/ClaimsIdentity.xml +++ b/xml/System.Security.Claims/ClaimsIdentity.xml @@ -601,10 +601,14 @@ - To be added. - To be added. - To be added. + A pointing to a . + The string comparison to use when comparing claim types. + Initializes an instance of with the specified . To be added. + + is . + + is out of range or a not supported value. @@ -684,10 +688,16 @@ - To be added. - To be added. - To be added. + The to copy. + The string comparison to use when comparing claim types. + + Initializes a new instance of the class from an existing instance. + To be added. + + is out of range or a not supported value. + + is . @@ -1007,14 +1017,20 @@ - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The identity from which to base the new claims identity. + The claims with which to populate the claims identity. + The type of authentication used. + The claim type to use for name claims. + The claim type to use for role claims. + The string comparison to use when comparing claim types. + Initializes a new instance of the class. To be added. + + is out of range or a not supported value. + + + is a and results in a circular reference back to . + From 09563c47a7e67350e883f0d694f798725ebfdde8 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 10:00:47 -0700 Subject: [PATCH 21/39] System.Security.Cryptography docs --- .../CoseHeaderMap.xml | 8 +- .../CoseHeaderValue.xml | 2 + .../CoseMessage.xml | 2 + .../CoseMultiSignMessage.xml | 4 + .../CoseSign1Message.xml | 104 +++++-- .../CoseSignature.xml | 103 ++++-- .../CoseSigner.xml | 3 +- .../Rfc3161TimestampRequest.xml | 2 + .../Rfc3161TimestampTokenInfo.xml | 1 + .../CertificateRequest.xml | 78 +++-- .../Pkcs12ExportPbeParameters.xml | 9 +- .../PublicKey.xml | 68 +++- .../X500DistinguishedName.xml | 1 + .../X500RelativeDistinguishedName.xml | 1 + ...509AuthorityInformationAccessExtension.xml | 7 + .../X509AuthorityKeyIdentifierExtension.xml | 3 + .../X509Certificate.xml | 30 +- .../X509Certificate2.xml | 108 +++++-- .../X509Certificate2Collection.xml | 67 ++-- .../X509SignatureGenerator.xml | 24 +- xml/System.Security.Cryptography/Aes.xml | 119 ++++--- xml/System.Security.Cryptography/AesCng.xml | 8 +- .../CngAlgorithm.xml | 24 +- .../CngAlgorithmGroup.xml | 18 +- .../CngKeyBlobFormat.xml | 60 ++-- .../CompositeMLDsa.xml | 244 +++++++++++++-- .../CompositeMLDsaAlgorithm.xml | 7 +- .../CompositeMLDsaCng.xml | 5 +- .../CryptoStream.xml | 3 + xml/System.Security.Cryptography/ECDsa.xml | 8 + .../HMACSHA3_256.xml | 2 + .../HMACSHA3_384.xml | 2 + .../HMACSHA3_512.xml | 2 + xml/System.Security.Cryptography/MLDsa.xml | 293 ++++++++++++++++-- .../MLDsaAlgorithm.xml | 7 +- xml/System.Security.Cryptography/MLDsaCng.xml | 6 +- .../MLDsaOpenSsl.xml | 34 +- xml/System.Security.Cryptography/MLKem.xml | 260 ++++++++++++++-- .../MLKemAlgorithm.xml | 7 +- xml/System.Security.Cryptography/MLKemCng.xml | 6 +- .../MLKemOpenSsl.xml | 30 +- .../PemEncoding.xml | 72 +++-- .../ProtectedData.xml | 122 +++++--- xml/System.Security.Cryptography/RSA.xml | 12 + .../RandomNumberGenerator.xml | 7 + xml/System.Security.Cryptography/Shake128.xml | 4 + xml/System.Security.Cryptography/Shake256.xml | 4 + xml/System.Security.Cryptography/SlhDsa.xml | 254 +++++++++++++-- .../SlhDsaAlgorithm.xml | 7 +- .../SlhDsaCng.xml | 6 +- .../SlhDsaOpenSsl.xml | 24 +- .../SymmetricAlgorithm.xml | 12 +- 52 files changed, 1869 insertions(+), 425 deletions(-) diff --git a/xml/System.Security.Cryptography.Cose/CoseHeaderMap.xml b/xml/System.Security.Cryptography.Cose/CoseHeaderMap.xml index 6c2dafaf826..f8d8f6be74d 100644 --- a/xml/System.Security.Cryptography.Cose/CoseHeaderMap.xml +++ b/xml/System.Security.Cryptography.Cose/CoseHeaderMap.xml @@ -298,7 +298,7 @@ if is found in the ; otherwise, . To be added. - + @@ -329,7 +329,7 @@ if the contains an element with the key; otherwise, . To be added. - + @@ -366,7 +366,7 @@ The zero-based index in at which copying begins. Copies the elements of the to an , starting at a particular index. To be added. - + @@ -805,7 +805,7 @@ This member is an explicit interface member implementation. It can be used only if the object that implements contains an element with the specified key; otherwise, . To be added. - + diff --git a/xml/System.Security.Cryptography.Cose/CoseHeaderValue.xml b/xml/System.Security.Cryptography.Cose/CoseHeaderValue.xml index 67a5b1f2a5a..f3a372170e1 100644 --- a/xml/System.Security.Cryptography.Cose/CoseHeaderValue.xml +++ b/xml/System.Security.Cryptography.Cose/CoseHeaderValue.xml @@ -142,6 +142,7 @@ To be added. is . + @@ -167,6 +168,7 @@ Creates a instance from a span of bytes. An instance that represents the CBOR-encoded . To be added. + diff --git a/xml/System.Security.Cryptography.Cose/CoseMessage.xml b/xml/System.Security.Cryptography.Cose/CoseMessage.xml index 321fbee5cc1..811e7f9535a 100644 --- a/xml/System.Security.Cryptography.Cose/CoseMessage.xml +++ b/xml/System.Security.Cryptography.Cose/CoseMessage.xml @@ -218,6 +218,7 @@ is too small to hold the value. The and collections have one or more labels in common. + @@ -317,6 +318,7 @@ if had sufficient length to receive the value; otherwise, . Use to determine how many bytes result in encoding this message. The and collections have one or more labels in common. + diff --git a/xml/System.Security.Cryptography.Cose/CoseMultiSignMessage.xml b/xml/System.Security.Cryptography.Cose/CoseMultiSignMessage.xml index 8508ce5c7d6..453c5abadc2 100644 --- a/xml/System.Security.Cryptography.Cose/CoseMultiSignMessage.xml +++ b/xml/System.Security.Cryptography.Cose/CoseMultiSignMessage.xml @@ -358,6 +358,7 @@ One or more of the labels specified in a is equal to or greater than the number of elements in . + @@ -384,6 +385,7 @@ One or more of the labels specified in a is . + @@ -542,6 +544,7 @@ The header is missing. + @@ -864,6 +867,7 @@ One or more of the labels specified in a diff --git a/xml/System.Security.Cryptography.Cose/CoseSign1Message.xml b/xml/System.Security.Cryptography.Cose/CoseSign1Message.xml index 3b18179b386..9f920e14acb 100644 --- a/xml/System.Security.Cryptography.Cose/CoseSign1Message.xml +++ b/xml/System.Security.Cryptography.Cose/CoseSign1Message.xml @@ -385,6 +385,7 @@ One or more of the labels specified in a if had sufficient length to receive the value; otherwise, . Use to determine how many bytes result in encoding this message. The and collections have one or more labels in common. + @@ -541,6 +542,8 @@ The algorithm protected header was not one of the values supported by this imple The algorithm protected header doesn't match with the algorithms supported by the specified . + + @@ -602,6 +605,8 @@ The algorithm protected header was not one of the values supported by this imple The algorithm protected header doesn't match with the algorithms supported by the specified . + + @@ -658,6 +663,8 @@ The algorithm protected header was not one of the values supported by this imple The algorithm protected header doesn't match with the algorithms supported by the specified . + + @@ -687,12 +694,21 @@ The algorithm protected header doesn't match with the algorithms supported by th - To be added. - To be added. - To be added. - To be added. - To be added. + The public key that is associated with the private key that was used to sign the content. + The content that was previously signed. + The extra data associated with the signature, which must match the value provided during signing. + Verifies that the signature is valid for the content using the specified key. + + if the signature is valid; otherwise, . To be added. + + or is . + + is of an unsupported type. + The content is embedded on this message, use an overload that uses embedded content. + <para><para> <see cref="P:System.Security.Cryptography.Cose.CoseMessage.ProtectedHeaders" /> does not have a value for the <see cref="P:System.Security.Cryptography.Cose.CoseHeaderLabel.Algorithm" /> header.</para><para></para><para>-or-</para><para> The algorithm protected header was incorrectly formatted.</para><para></para><para>-or-</para><para> The algorithm protected header was not one of the values supported by this implementation.</para><para></para><para>-or-</para><para> The algorithm protected header doesn't match with the algorithms supported by the specified <paramref name="key" />.</para><para></para> + + @@ -722,12 +738,20 @@ The algorithm protected header doesn't match with the algorithms supported by th - To be added. - To be added. - To be added. - To be added. - To be added. + The public key that is associated with the private key that was used to sign the content. + The content that was previously signed. + The extra data associated with the signature, which must match the value provided during signing. + Verifies that the signature is valid for the content using the specified key. + + if the signature is valid; otherwise, . To be added. + + or is . + <para><para> <paramref name="key" /> is of an unsupported type.</para><para></para><para>-or-</para><para> <paramref name="detachedContent" /> does not support reading or seeking.</para><para></para> + The content is embedded on this message, use an overload that uses embedded content. + <para><para> <see cref="P:System.Security.Cryptography.Cose.CoseMessage.ProtectedHeaders" /> does not have a value for the <see cref="P:System.Security.Cryptography.Cose.CoseHeaderLabel.Algorithm" /> header.</para><para></para><para>-or-</para><para> The algorithm protected header was incorrectly formatted.</para><para></para><para>-or-</para><para> The algorithm protected header was not one of the values supported by this implementation.</para><para></para><para>-or-</para><para> The algorithm protected header doesn't match with the algorithms supported by the specified <paramref name="key" />.</para><para></para> + + @@ -757,12 +781,21 @@ The algorithm protected header doesn't match with the algorithms supported by th - To be added. - To be added. - To be added. - To be added. - To be added. + The public key that is associated with the private key that was used to sign the content. + The content that was previously signed. + The extra data associated with the signature, which must match the value provided during signing. + Verifies that the signature is valid for the content using the specified key. + + if the signature is valid; otherwise, . To be added. + + is . + + is of an unsupported type. + The content is embedded on this message, use an overload that uses embedded content. + <para><para> <see cref="P:System.Security.Cryptography.Cose.CoseMessage.ProtectedHeaders" /> does not have a value for the <see cref="P:System.Security.Cryptography.Cose.CoseHeaderLabel.Algorithm" /> header.</para><para></para><para>-or-</para><para> The algorithm protected header was incorrectly formatted.</para><para></para><para>-or-</para><para> The algorithm protected header was not one of the values supported by this implementation.</para><para></para><para>-or-</para><para> The algorithm protected header doesn't match with the algorithms supported by the specified <paramref name="key" />.</para><para></para> + + @@ -826,6 +859,8 @@ The algorithm protected header was not one of the values supported by this imple The algorithm protected header doesn't match with the algorithms supported by the specified . The cancellation token was canceled. This exception is stored into the returned task. + + @@ -856,13 +891,19 @@ The algorithm protected header doesn't match with the algorithms supported by th - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The public key that is associated with the private key that was used to sign the content. + The content that was previously signed. + The extra data associated with the signature, which must match the value provided during signing. + The token to monitor for cancellation requests. The default value is . + Asynchronously verifies that the signature is valid for the content using the specified key. + A task whose property is if the signature is valid; otherwise, . To be added. + + or is . + <para><para> <paramref name="key" /> is of an unsupported type.</para><para></para><para>-or-</para><para> <paramref name="detachedContent" /> does not support reading or seeking.</para><para></para> + The content is embedded on this message, use an overload that uses embedded content. + <para><para> <see cref="P:System.Security.Cryptography.Cose.CoseMessage.ProtectedHeaders" /> does not have a value for the <see cref="P:System.Security.Cryptography.Cose.CoseHeaderLabel.Algorithm" /> header.</para><para></para><para>-or-</para><para> The algorithm protected header was incorrectly formatted.</para><para></para><para>-or-</para><para> The algorithm protected header was not one of the values supported by this implementation.</para><para></para><para>-or-</para><para> The algorithm protected header doesn't match with the algorithms supported by the specified <paramref name="key" />.</para><para></para> + @@ -917,6 +958,8 @@ The algorithm protected header was not one of the values supported by this imple The algorithm protected header doesn't match with the algorithms supported by the specified . + + @@ -972,6 +1015,8 @@ The algorithm protected header was not one of the values supported by this imple The algorithm protected header doesn't match with the algorithms supported by the specified . + + @@ -1000,11 +1045,20 @@ The algorithm protected header doesn't match with the algorithms supported by th - To be added. - To be added. - To be added. - To be added. + The public key that is associated with the private key that was used to sign the content. + The extra data associated with the signature, which must match the value provided during signing. + Verifies that the signature is valid for the content using the specified key. + + if the signature is valid; otherwise, . To be added. + + is . + + is of an unsupported type. + The content is detached from this message, use an overload that accepts a detached content. + <para><para> <see cref="P:System.Security.Cryptography.Cose.CoseMessage.ProtectedHeaders" /> does not have a value for the <see cref="P:System.Security.Cryptography.Cose.CoseHeaderLabel.Algorithm" /> header.</para><para></para><para>-or-</para><para> The algorithm protected header was incorrectly formatted.</para><para></para><para>-or-</para><para> The algorithm protected header was not one of the values supported by this implementation.</para><para></para><para>-or-</para><para> The algorithm protected header doesn't match with the algorithms supported by the specified <paramref name="key" />.</para><para></para> + + diff --git a/xml/System.Security.Cryptography.Cose/CoseSignature.xml b/xml/System.Security.Cryptography.Cose/CoseSignature.xml index 9a0202bd872..894f29e0d11 100644 --- a/xml/System.Security.Cryptography.Cose/CoseSignature.xml +++ b/xml/System.Security.Cryptography.Cose/CoseSignature.xml @@ -180,6 +180,8 @@ The algorithm protected header was not one of the values supported by this imple The algorithm protected header doesn't match with the algorithms supported by the specified . + + @@ -241,6 +243,8 @@ The algorithm protected header was not one of the values supported by this imple The algorithm protected header doesn't match with the algorithms supported by the specified . + + @@ -297,6 +301,8 @@ The algorithm protected header was not one of the values supported by this imple The algorithm protected header doesn't match with the algorithms supported by the specified . + + @@ -326,12 +332,21 @@ The algorithm protected header doesn't match with the algorithms supported by th - To be added. - To be added. - To be added. - To be added. - To be added. + The private key used to sign the content. + The content that was previously signed. + The extra data associated with the signature, which must match the value provided during signing. + Verifies that the signature is valid for the message's content using the specified key. + + if the signature is valid; otherwise, . To be added. + + or is . + + is of an unsupported type. + The content is embedded on the associated message, use an overload that uses embedded content. + <para><para> <see cref="P:System.Security.Cryptography.Cose.CoseMessage.ProtectedHeaders" /> does not have a value for the <see cref="P:System.Security.Cryptography.Cose.CoseHeaderLabel.Algorithm" /> header.</para><para></para><para>-or-</para><para> The algorithm protected header was incorrectly formatted.</para><para></para><para>-or-</para><para> The algorithm protected header was not one of the values supported by this implementation.</para><para></para><para>-or-</para><para> The algorithm protected header doesn't match with the algorithms supported by the specified <paramref name="key" />.</para><para></para> + + @@ -361,12 +376,19 @@ The algorithm protected header doesn't match with the algorithms supported by th - To be added. - To be added. - To be added. - To be added. - To be added. + The private key used to sign the content. + The content that was previously signed. + The extra data associated with the signature, which must match the value provided during signing. + Verifies that the signature is valid for the message's content using the specified key. + + if the signature is valid; otherwise, . To be added. + + or is . + <para><para> <paramref name="key" /> is of an unsupported type.</para><para></para><para>-or-</para><para> <paramref name="detachedContent" /> does not support reading or seeking.</para><para></para> + The content is embedded on the associated message, use an overload that uses embedded content. + <para><para> <see cref="P:System.Security.Cryptography.Cose.CoseMessage.ProtectedHeaders" /> does not have a value for the <see cref="P:System.Security.Cryptography.Cose.CoseHeaderLabel.Algorithm" /> header.</para><para></para><para>-or-</para><para> The algorithm protected header was incorrectly formatted.</para><para></para><para>-or-</para><para> The algorithm protected header was not one of the values supported by this implementation.</para><para></para><para>-or-</para><para> The algorithm protected header doesn't match with the algorithms supported by the specified <paramref name="key" />.</para><para></para> + @@ -396,12 +418,21 @@ The algorithm protected header doesn't match with the algorithms supported by th - To be added. - To be added. - To be added. - To be added. - To be added. + The private key used to sign the content. + The content that was previously signed. + The extra data associated with the signature, which must match the value provided during signing. + Verifies that the signature is valid for the message's content using the specified key. + + if the signature is valid; otherwise, . To be added. + + is . + + is of an unsupported type. + The content is embedded on the associated message, use an overload that uses embedded content. + <para><para> <see cref="P:System.Security.Cryptography.Cose.CoseMessage.ProtectedHeaders" /> does not have a value for the <see cref="P:System.Security.Cryptography.Cose.CoseHeaderLabel.Algorithm" /> header.</para><para></para><para>-or-</para><para> The algorithm protected header was incorrectly formatted.</para><para></para><para>-or-</para><para> The algorithm protected header was not one of the values supported by this implementation.</para><para></para><para>-or-</para><para> The algorithm protected header doesn't match with the algorithms supported by the specified <paramref name="key" />.</para><para></para> + + @@ -465,6 +496,8 @@ The algorithm protected header was not one of the values supported by this imple The algorithm protected header doesn't match with the algorithms supported by the specified . The cancellation token was canceled. This exception is stored into the returned task. + + @@ -495,13 +528,20 @@ The algorithm protected header doesn't match with the algorithms supported by th - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The private key used to sign the content. + The content that was previously signed. + The extra data associated with the signature, which must match the value provided during signing. + The token to monitor for cancellation requests. The default value is . + Asynchronously verifies that the signature is valid for the message's content using the specified key. + A task whose property is if the signature is valid; otherwise, . To be added. + + or is . + <para><para> <paramref name="key" /> is of an unsupported type.</para><para></para><para>-or-</para><para> <paramref name="detachedContent" /> does not support reading or seeking.</para><para></para> + The content is embedded on the associated message, use an overload that uses embedded content. + <para><para> <see cref="P:System.Security.Cryptography.Cose.CoseMessage.ProtectedHeaders" /> does not have a value for the <see cref="P:System.Security.Cryptography.Cose.CoseHeaderLabel.Algorithm" /> header.</para><para></para><para>-or-</para><para> The algorithm protected header was incorrectly formatted.</para><para></para><para>-or-</para><para> The algorithm protected header was not one of the values supported by this implementation.</para><para></para><para>-or-</para><para> The algorithm protected header doesn't match with the algorithms supported by the specified <paramref name="key" />.</para><para></para> + + @@ -556,6 +596,8 @@ The algorithm protected header was not one of the values supported by this imple The algorithm protected header doesn't match with the algorithms supported by the specified . + + @@ -611,6 +653,8 @@ The algorithm protected header was not one of the values supported by this imple The algorithm protected header doesn't match with the algorithms supported by the specified . + + @@ -639,11 +683,20 @@ The algorithm protected header doesn't match with the algorithms supported by th - To be added. - To be added. - To be added. - To be added. + The private key used to sign the content. + The extra data associated with the signature, which must match the value provided during signing. + Verifies that the signature is valid for the message's content using the specified key. + + if the signature is valid; otherwise, . To be added. + + is . + + is of an unsupported type. + The content is detached from the associated message, use an overload that accepts a detached content. + <para><para> <see cref="P:System.Security.Cryptography.Cose.CoseMessage.ProtectedHeaders" /> does not have a value for the <see cref="P:System.Security.Cryptography.Cose.CoseHeaderLabel.Algorithm" /> header.</para><para></para><para>-or-</para><para> The algorithm protected header was incorrectly formatted.</para><para></para><para>-or-</para><para> The algorithm protected header was not one of the values supported by this implementation.</para><para></para><para>-or-</para><para> The algorithm protected header doesn't match with the algorithms supported by the specified <paramref name="key" />.</para><para></para> + + diff --git a/xml/System.Security.Cryptography.Cose/CoseSigner.xml b/xml/System.Security.Cryptography.Cose/CoseSigner.xml index 55a11b673a4..f3bb4c7f0e4 100644 --- a/xml/System.Security.Cryptography.Cose/CoseSigner.xml +++ b/xml/System.Security.Cryptography.Cose/CoseSigner.xml @@ -57,8 +57,9 @@ To be added. To be added. To be added. - To be added. + Initializes a new instance of the class. To be added. + diff --git a/xml/System.Security.Cryptography.Pkcs/Rfc3161TimestampRequest.xml b/xml/System.Security.Cryptography.Pkcs/Rfc3161TimestampRequest.xml index 8df2e7522ac..8905b5154dc 100644 --- a/xml/System.Security.Cryptography.Pkcs/Rfc3161TimestampRequest.xml +++ b/xml/System.Security.Cryptography.Pkcs/Rfc3161TimestampRequest.xml @@ -279,6 +279,8 @@ The normalized value is returned by the is . . is not a valid OID. + + diff --git a/xml/System.Security.Cryptography.Pkcs/Rfc3161TimestampTokenInfo.xml b/xml/System.Security.Cryptography.Pkcs/Rfc3161TimestampTokenInfo.xml index b18ac229d9e..f5454b6c811 100644 --- a/xml/System.Security.Cryptography.Pkcs/Rfc3161TimestampTokenInfo.xml +++ b/xml/System.Security.Cryptography.Pkcs/Rfc3161TimestampTokenInfo.xml @@ -130,6 +130,7 @@ If `hashAlgorithmId`, `messageHash`, `policyId`, or `nonce` are present in the < Gets the accuracy with which is compared. The accuracy with which is compared. To be added. + diff --git a/xml/System.Security.Cryptography.X509Certificates/CertificateRequest.xml b/xml/System.Security.Cryptography.X509Certificates/CertificateRequest.xml index 363dc53a5b4..73c8919b87d 100644 --- a/xml/System.Security.Cryptography.X509Certificates/CertificateRequest.xml +++ b/xml/System.Security.Cryptography.X509Certificates/CertificateRequest.xml @@ -104,10 +104,15 @@ - To be added. - To be added. - To be added. + The parsed representation of the subject name for the certificate or certificate request. + + A Composite ML-DSA key whose public key material will be included in the certificate or certificate request. + This key will be used as a private key if is called. + + Create a CertificateRequest for the specified subject name and Composite ML-DSA key. To be added. + + or is . @@ -139,10 +144,15 @@ - To be added. - To be added. - To be added. + The parsed representation of the subject name for the certificate or certificate request. + + An ML-DSA key whose public key material will be included in the certificate or certificate request. + This key will be used as a private key if is called. + + Create a CertificateRequest for the specified subject name and ML-DSA key. To be added. + + or is . @@ -174,10 +184,15 @@ - To be added. - To be added. - To be added. + The parsed representation of the subject name for the certificate or certificate request. + + An SLH-DSA key whose public key material will be included in the certificate or certificate request. + This key will be used as a private key if is called. + + Create a CertificateRequest for the specified subject name and SLH-DSA key. To be added. + + or is . @@ -209,10 +224,15 @@ - To be added. - To be added. - To be added. + The parsed representation of the subject name for the certificate or certificate request. + + A Composite ML-DSA key whose public key material will be included in the certificate or certificate request. + This key will be used as a private key if is called. + + Create a CertificateRequest for the specified subject name and Composite ML-DSA key. To be added. + + or is . @@ -244,10 +264,15 @@ - To be added. - To be added. - To be added. + The parsed representation of the subject name for the certificate or certificate request. + + An ML-DSA key whose public key material will be included in the certificate or certificate request. + This key will be used as a private key if is called. + + Create a CertificateRequest for the specified subject name and ML-DSA key. To be added. + + or is . @@ -279,10 +304,15 @@ - To be added. - To be added. - To be added. + The parsed representation of the subject name for the certificate or certificate request. + + An SLH-DSA key whose public key material will be included in the certificate or certificate request. + This key will be used as a private key if is called. + + Create a CertificateRequest for the specified subject name and SLH-DSA key. To be added. + + or is . @@ -440,6 +470,7 @@ . is or . + @@ -599,6 +630,7 @@ . is or . + @@ -860,6 +892,9 @@ The is zero length or . An error occurs during the signing operation. + + The signature generator requires a non-default value for , but this object was created without one being provided. + @@ -923,6 +958,9 @@ The has length 0. An error occurred during the signing operation. + + The signature generator requires a non-default value for , but this object was created without one being provided. + @@ -1076,6 +1114,7 @@ public static string PemEncodeSigningRequest(CertificateRequest request, PkcsSig The current object was created using a constructor that doesn't accept a signing key. The property value is not supported. A cryptographic error occurs while creating the signing request. + @@ -1157,6 +1196,7 @@ When submitting a certificate signing request via a web browser or other graphic This object was created with a constructor that did not accept a signing key. + @@ -1213,6 +1253,7 @@ This object was created with a constructor that did not accept a signing key. This object was created with a constructor that did not accept a signing key. A cryptographic error occurs while creating the signing request. + @@ -1274,6 +1315,7 @@ This object was created with a constructor that did not accept a signing key. This object was created with a constructor which did not accept a signing key. A cryptographic error occurs while creating the signing request. + diff --git a/xml/System.Security.Cryptography.X509Certificates/Pkcs12ExportPbeParameters.xml b/xml/System.Security.Cryptography.X509Certificates/Pkcs12ExportPbeParameters.xml index 680824b2fe7..36ba22cca3f 100644 --- a/xml/System.Security.Cryptography.X509Certificates/Pkcs12ExportPbeParameters.xml +++ b/xml/System.Security.Cryptography.X509Certificates/Pkcs12ExportPbeParameters.xml @@ -13,8 +13,9 @@ System.Enum - To be added. + Specifies the export Password Based Enryption (PBE) parameters with PKCS12 / PFX. To be added. + @@ -34,7 +35,7 @@ 0 - To be added. + The default parameters. @@ -54,7 +55,7 @@ 2 - To be added. + Uses PBE with AES-256 and SHA-256. @@ -74,7 +75,7 @@ 1 - To be added. + Uses PBE with Triple-DES and SHA-1. diff --git a/xml/System.Security.Cryptography.X509Certificates/PublicKey.xml b/xml/System.Security.Cryptography.X509Certificates/PublicKey.xml index fee5d5d467c..1cc5b9e5e4c 100644 --- a/xml/System.Security.Cryptography.X509Certificates/PublicKey.xml +++ b/xml/System.Security.Cryptography.X509Certificates/PublicKey.xml @@ -143,9 +143,14 @@ - To be added. - To be added. + An key to obtain the SubjectPublicKeyInfo from. + + Initializes a new instance of the class using SubjectPublicKeyInfo from an . + To be added. + + The SubjectPublicKeyInfo could not be decoded. The must return a valid ASN.1-DER encoded X.509 SubjectPublicKeyInfo. + @@ -176,9 +181,14 @@ - To be added. - To be added. + An key to obtain the SubjectPublicKeyInfo from. + + Initializes a new instance of the class using SubjectPublicKeyInfo from an . + To be added. + + The SubjectPublicKeyInfo could not be decoded. The must return a valid ASN.1-DER encoded X.509 SubjectPublicKeyInfo. + @@ -209,9 +219,14 @@ - To be added. - To be added. + An key to obtain the SubjectPublicKeyInfo from. + + Initializes a new instance of the class using SubjectPublicKeyInfo from an . + To be added. + + The SubjectPublicKeyInfo could not be decoded. The must return a valid ASN.1-DER encoded X.509 SubjectPublicKeyInfo. + @@ -242,9 +257,14 @@ - To be added. - To be added. + An key to obtain the SubjectPublicKeyInfo from. + + Initializes a new instance of the class using SubjectPublicKeyInfo from an . + To be added. + + The SubjectPublicKeyInfo could not be decoded. The must return a valid ASN.1-DER encoded X.509 SubjectPublicKeyInfo. + @@ -530,9 +550,13 @@ - To be added. - To be added. + + Gets the public key, or if the key is not a Composite ML-DSA key. + + The public key, or if the key is not a Composite ML-DSA key. To be added. + The object represents a Composite ML-DSA public key, but the platform does not support the algorithm. + The key contents are corrupt or could not be read successfully. @@ -693,9 +717,13 @@ - To be added. - To be added. + + Gets the public key, or if the key is not an ML-DSA key. + + The public key, or if the key is not an ML-DSA key. To be added. + The object represents an ML-DSA public key, but the platform does not support the algorithm. + The key contents are corrupt or could not be read successfully. @@ -731,9 +759,13 @@ - To be added. - To be added. + + Gets the public key, or if the key is not an ML-KEM key. + + The public key, or if the key is not an ML-KEM key. To be added. + The object represents an ML-KEM public key, but the platform does not support the algorithm. + The key contents are corrupt or could not be read successfully. @@ -808,9 +840,13 @@ - To be added. - To be added. + + Gets the public key, or if the key is not an SLH-DSA key. + + The public key, or if the key is not an SLH-DSA key. To be added. + The object represents an SLH-DSA public key, but the platform does not support the algorithm. + The key contents are corrupt or could not be read successfully. diff --git a/xml/System.Security.Cryptography.X509Certificates/X500DistinguishedName.xml b/xml/System.Security.Cryptography.X509Certificates/X500DistinguishedName.xml index 86a6e35aec8..26302d391f5 100644 --- a/xml/System.Security.Cryptography.X509Certificates/X500DistinguishedName.xml +++ b/xml/System.Security.Cryptography.X509Certificates/X500DistinguishedName.xml @@ -194,6 +194,7 @@ The encoded distinguished name. Initializes a new instance of the class using information from the provided data. To be added. + diff --git a/xml/System.Security.Cryptography.X509Certificates/X500RelativeDistinguishedName.xml b/xml/System.Security.Cryptography.X509Certificates/X500RelativeDistinguishedName.xml index 4e25923e9d1..e7a25a715da 100644 --- a/xml/System.Security.Cryptography.X509Certificates/X500RelativeDistinguishedName.xml +++ b/xml/System.Security.Cryptography.X509Certificates/X500RelativeDistinguishedName.xml @@ -19,6 +19,7 @@ Represents a Relative Distinguished Name component of an X.500 Distinguished Name. To be added. + diff --git a/xml/System.Security.Cryptography.X509Certificates/X509AuthorityInformationAccessExtension.xml b/xml/System.Security.Cryptography.X509Certificates/X509AuthorityInformationAccessExtension.xml index a961a523bd6..4f4450f48a4 100644 --- a/xml/System.Security.Cryptography.X509Certificates/X509AuthorityInformationAccessExtension.xml +++ b/xml/System.Security.Cryptography.X509Certificates/X509AuthorityInformationAccessExtension.xml @@ -177,6 +177,7 @@ The to be copied. Copies the extension properties of the specified object. To be added. + @@ -203,6 +204,7 @@ The URIs corresponding to the locations for the issuing Certificate Authority certificate. To be added. The contents of the extension could not be decoded successfully. + @@ -229,6 +231,7 @@ The URIs corresponding to the locations for the issuing Certificate Authority certificate. To be added. The contents of the extension could not be decoded successfully. + @@ -271,6 +274,8 @@ This method does not validate or ensure that the produced values are valid URIs, The property of the parameter is or the empty string. The contents of the extension could not be decoded successfully. + + @@ -311,6 +316,8 @@ This method does not validate or ensure that the produced values are valid URIs, is . The contents of the extension could not be decoded successfully. + + diff --git a/xml/System.Security.Cryptography.X509Certificates/X509AuthorityKeyIdentifierExtension.xml b/xml/System.Security.Cryptography.X509Certificates/X509AuthorityKeyIdentifierExtension.xml index 97cadf840f8..589c23d3602 100644 --- a/xml/System.Security.Cryptography.X509Certificates/X509AuthorityKeyIdentifierExtension.xml +++ b/xml/System.Security.Cryptography.X509Certificates/X509AuthorityKeyIdentifierExtension.xml @@ -124,6 +124,7 @@ The to be copied. Copies the extension properties of the specified object. To be added. + @@ -392,6 +393,7 @@ Creates an that specifies the provided key identifier value. The configured extension. To be added. + @@ -484,6 +486,7 @@
  • The directoryName value did not successfully decode as an .
  • +
    diff --git a/xml/System.Security.Cryptography.X509Certificates/X509Certificate.xml b/xml/System.Security.Cryptography.X509Certificates/X509Certificate.xml index 8e8146b6e70..1681ea7a414 100644 --- a/xml/System.Security.Cryptography.X509Certificates/X509Certificate.xml +++ b/xml/System.Security.Cryptography.X509Certificates/X509Certificate.xml @@ -2035,11 +2035,16 @@
    - To be added. - To be added. - To be added. - To be added. + The algorithm parameters to use for the export. + The password to use for the export. + Exports the certificate and private key in PKCS#12 / PFX format. + A byte array containing the encoded PKCS#12. To be added. + + contains a Unicode 'NULL' character. + + is . + <para><para>The current instance is disposed.</para><para>-or-</para><para>The export operation failed.</para><para>-or-</para><para> <paramref name="exportParameters" /> specifies a <see cref="P:System.Security.Cryptography.PbeParameters.HashAlgorithm" /> value that is not supported for the <see cref="P:System.Security.Cryptography.PbeParameters.EncryptionAlgorithm" /> value.</para><para></para><para>-or-</para><para> <paramref name="exportParameters" /> contains an invalid encryption algorithm for <see cref="P:System.Security.Cryptography.PbeParameters.EncryptionAlgorithm" />.</para><para></para> @@ -2075,11 +2080,20 @@ - To be added. - To be added. - To be added. - To be added. + The algorithm parameters to use for the export. + The password to use for the export. + Exports the certificate and private key in PKCS#12 / PFX format. + A byte array containing the encoded PKCS#12. To be added. + + contains a Unicode 'NULL' character. + + is not a valid value. + + The current instance is disposed. + -or- + The export operation failed. + diff --git a/xml/System.Security.Cryptography.X509Certificates/X509Certificate2.xml b/xml/System.Security.Cryptography.X509Certificates/X509Certificate2.xml index 195d220eec1..41e5082953f 100644 --- a/xml/System.Security.Cryptography.X509Certificates/X509Certificate2.xml +++ b/xml/System.Security.Cryptography.X509Certificates/X509Certificate2.xml @@ -1442,10 +1442,20 @@ If you create an - To be added. - To be added. - To be added. + The Composite ML-DSA private key that corresponds to the Composite ML-DSA public key in this certificate. + + Combines a private key with a certificate containing the associated public key into a new instance that can access the private key. + + + A new certificate with the property set to . + The current certificate isn't modified. + To be added. + + is . + The specified private key doesn't match the public key for this certificate. + The certificate already has an associated private key. + Combining a certificate and a Composite ML-DSA private key is not supported on this platform. @@ -1523,10 +1533,19 @@ The specified private key doesn't match the public key for this certificate. - To be added. - To be added. - To be added. + The ML-DSA private key that corresponds to the ML-DSA public key in this certificate. + + Combines a private key with a certificate containing the associated public key into a new instance that can access the private key. + + + A new certificate with the property set to . + The current certificate isn't modified. + To be added. + + is . + The specified private key doesn't match the public key for this certificate. + The certificate already has an associated private key. @@ -1560,10 +1579,19 @@ The specified private key doesn't match the public key for this certificate. - To be added. - To be added. - To be added. + The ML-KEM private key that corresponds to the ML-KEM public key in this certificate. + + Combines a private key with a certificate containing the associated public key into a new instance that can access the private key. + + + A new certificate with the property set to . + The current certificate isn't modified. + To be added. + + is . + The specified private key doesn't match the public key for this certificate. + The certificate already has an associated private key. @@ -1597,10 +1625,19 @@ The specified private key doesn't match the public key for this certificate. - To be added. - To be added. - To be added. + The SLH-DSA private key that corresponds to the SLH-DSA public key in this certificate. + + Combines a private key with a certificate containing the associated public key into a new instance that can access the private key. + + + A new certificate with the property set to . + The current certificate isn't modified. + To be added. + + is . + The specified private key doesn't match the public key for this certificate. + The certificate already has an associated private key. @@ -2404,9 +2441,11 @@ The certificate is encoded according to the IETF RFC 7468 "strict" - To be added. - To be added. + Gets the private key from this certificate. + The private key, or if this certificate does not have a Composite ML-DSA private key. To be added. + Retrieving a Composite ML-DSA private key from a certificate is not supported on this platform. + An error occurred accessing the private key. @@ -2438,9 +2477,11 @@ The certificate is encoded according to the IETF RFC 7468 "strict" - To be added. - To be added. + Gets the public key from this certificate. + The public key, or if this certificate does not have a Composite ML-DSA public key. To be added. + The certificate has a Composite ML-DSA public key, but the platform does not support Composite ML-DSA. + The public key was invalid, or otherwise could not be imported. @@ -2538,9 +2579,10 @@ The certificate is encoded according to the IETF RFC 7468 "strict" - To be added. - To be added. + Gets the private key from this certificate. + The private key, or if this certificate does not have an ML-DSA private key. To be added. + An error occurred accessing the private key. @@ -2572,9 +2614,11 @@ The certificate is encoded according to the IETF RFC 7468 "strict" - To be added. - To be added. + Gets the public key from this certificate. + The public key, or if this certificate does not have an ML-DSA public key. To be added. + The certificate has an ML-DSA public key, but the platform does not support ML-DSA. + The public key was invalid, or otherwise could not be imported. @@ -2606,9 +2650,10 @@ The certificate is encoded according to the IETF RFC 7468 "strict" - To be added. - To be added. + Gets the private key from this certificate. + The private key, or if this certificate does not have an ML-KEM private key. To be added. + An error occurred accessing the private key. @@ -2640,9 +2685,11 @@ The certificate is encoded according to the IETF RFC 7468 "strict" - To be added. - To be added. + Gets the public key from this certificate. + The public key, or if this certificate does not have an ML-KEM public key. To be added. + The certificate has an ML-KEM public key, but the platform does not support ML-KEM. + The public key was invalid, or otherwise could not be imported. @@ -2741,9 +2788,10 @@ The certificate is encoded according to the IETF RFC 7468 "strict" - To be added. - To be added. + Gets the private key from this certificate. + The private key, or if this certificate does not have an SLH-DSA private key. To be added. + An error occurred accessing the private key. @@ -2775,9 +2823,11 @@ The certificate is encoded according to the IETF RFC 7468 "strict" - To be added. - To be added. + Gets the public key from this certificate. + The public key, or if this certificate does not have an SLH-DSA public key. To be added. + The certificate has an SLH-DSA public key, but the platform does not support SLH-DSA. + The public key was invalid, or otherwise could not be imported. @@ -3425,6 +3475,8 @@ The certificate contains multiple Subject Alternative Name extensions. -or- The Subject Alternative Name extension or Subject Name could not be decoded. + + diff --git a/xml/System.Security.Cryptography.X509Certificates/X509Certificate2Collection.xml b/xml/System.Security.Cryptography.X509Certificates/X509Certificate2Collection.xml index 1fd5f5056c0..a1f65f15764 100644 --- a/xml/System.Security.Cryptography.X509Certificates/X509Certificate2Collection.xml +++ b/xml/System.Security.Cryptography.X509Certificates/X509Certificate2Collection.xml @@ -794,11 +794,16 @@ - To be added. - To be added. - To be added. - To be added. + The algorithm parameters to use for the export. + The password to use for the export. + Exports the certificates and private keys in PKCS#12 / PFX format. + A byte array containing the encoded PKCS#12. To be added. + + contains a Unicode 'NULL' character. + + is . + <para><para>The export operation failed.</para><para>-or-</para><para> <paramref name="exportParameters" /> specifies a <see cref="P:System.Security.Cryptography.PbeParameters.HashAlgorithm" /> value that is not supported for the <see cref="P:System.Security.Cryptography.PbeParameters.EncryptionAlgorithm" /> value.</para><para></para><para>-or-</para><para> <paramref name="exportParameters" /> contains an invalid encryption algorithm for <see cref="P:System.Security.Cryptography.PbeParameters.EncryptionAlgorithm" />.</para><para></para> @@ -834,11 +839,18 @@ - To be added. - To be added. - To be added. - To be added. + The algorithm parameters to use for the export. + The password to use for the export. + Exports the certificate and private key in PKCS#12 / PFX format. + A byte array containing the encoded PKCS#12. To be added. + + contains a Unicode 'NULL' character. + + is not a valid value. + + The export operation failed. + @@ -990,11 +1002,16 @@ - To be added. - To be added. - To be added. - To be added. + The name of the hash algorithm to compute the thumbprint. + The thumbprint to match. + Searches the collection for certificates with a matching thumbprint. + A collection of certificates with a matching thumbprint. To be added. + + . is or empty. + + specifies a hash algorithm not supported by the current platform. + <para><para> <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</para><para></para><para>-or-</para><para> An error occured while finding the certificates with a matching thumbprint.</para><para></para> @@ -1029,11 +1046,15 @@ - To be added. - To be added. - To be added. - To be added. + The name of the hash algorithm to compute the thumbprint. + The thumbprint to match, hex-encoded. + Searches the collection for certificates with a matching thumbprint. + A collection of certificates with a matching thumbprint. To be added. + <para><para> <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or empty.</para><para></para><para>-or-</para><para> <paramref name="thumbprintHex" /> contains invalid hexadecimal characters.</para><para></para><para>-or-</para><para> <paramref name="thumbprintHex" /> does not decode evenly and contains an odd number of characters.</para><para></para> + + specifies a hash algorithm not supported by the current platform. + <para><para> <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</para><para></para><para>-or-</para><para> An error occured while finding the certificates with a matching thumbprint.</para><para></para> @@ -1062,11 +1083,17 @@ - To be added. - To be added. - To be added. - To be added. + The name of the hash algorithm to compute the thumbprint. + The thumbprint to match, hex-encoded. + Searches the collection for certificates with a matching thumbprint. + A collection of certificates with a matching thumbprint. To be added. + + is . + <para><para> <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or empty.</para><para></para><para>-or-</para><para> <paramref name="thumbprintHex" /> contains invalid hexadecimal characters.</para><para></para><para>-or-</para><para> <paramref name="thumbprintHex" /> does not decode evenly and contains an odd number of characters.</para><para></para> + + specifies a hash algorithm not supported by the current platform. + <para><para> <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</para><para></para><para>-or-</para><para> An error occured while finding the certificates with a matching thumbprint.</para><para></para> diff --git a/xml/System.Security.Cryptography.X509Certificates/X509SignatureGenerator.xml b/xml/System.Security.Cryptography.X509Certificates/X509SignatureGenerator.xml index 971bd15b85d..c4e916648f4 100644 --- a/xml/System.Security.Cryptography.X509Certificates/X509SignatureGenerator.xml +++ b/xml/System.Security.Cryptography.X509Certificates/X509SignatureGenerator.xml @@ -164,10 +164,12 @@ - To be added. - To be added. - To be added. + The private key. + Creates a signature generator for Composite ML-DSA signatures using the specified key. + An object for Composite ML-DSA signatures. To be added. + + is . @@ -247,10 +249,12 @@ - To be added. - To be added. - To be added. + The private key. + Creates a signature generator for ML-DSA signatures using the specified key. + An object for ML-DSA signatures. To be added. + + is . @@ -337,10 +341,12 @@ - To be added. - To be added. - To be added. + The private key. + Creates a signature generator for SLH-DSA signatures using the specified key. + An object for SLH-DSA signatures. To be added. + + is . diff --git a/xml/System.Security.Cryptography/Aes.xml b/xml/System.Security.Cryptography/Aes.xml index 6f80d0d0178..0d782571a1f 100644 --- a/xml/System.Security.Cryptography/Aes.xml +++ b/xml/System.Security.Cryptography/Aes.xml @@ -314,10 +314,16 @@ - To be added. - To be added. - To be added. + The data to unwrap. + Unwraps a key that was wrapped using the IETF RFC 5649 AES Key Wrap with Padding algorithm. + The unwrapped key. To be added. + + is . + + + has a that does not correspond to the output of the Key Wrap with Padding algorithm. + @@ -357,10 +363,14 @@ - To be added. - To be added. - To be added. + The data to unwrap. + Unwraps a key that was wrapped using the IETF RFC 5649 AES Key Wrap with Padding algorithm. + The unwrapped key. To be added. + + + has a that does not correspond to the output of the Key Wrap with Padding algorithm. + @@ -395,11 +405,13 @@ - To be added. - To be added. - To be added. - To be added. + The data to unwrap. + The buffer to receive the unwrapped key. + Unwraps a key that was wrapped using the IETF RFC 5649 AES Key Wrap with Padding algorithm. + The number of bytes in the unwrapped key. To be added. + <para><para> <paramref name="ciphertext" /> has a <see cref="P:System.ReadOnlySpan`1.Length" /> that does not correspond to the output of the Key Wrap with Padding algorithm.</para><para></para><para>-or-</para><para> <paramref name="destination" /> has a <see cref="P:System.Span`1.Length" /> that is more than 16 bytes shorter than <paramref name="ciphertext" />, thus guaranteed too short to hold the unwrapped key.</para><para></para> + <para><para> <paramref name="ciphertext" /> and <paramref name="destination" /> overlap.</para><para>-or-</para><para>The unwrap algorithm failed to unwrap the ciphertext.</para><para>-or-</para><para>An error occurred during the cryptographic operation.</para> @@ -434,11 +446,16 @@ - To be added. - To be added. - To be added. - To be added. - To be added. + The data to unwrap. + The buffer to receive the unwrapped key. + Unwraps a key that was wrapped using the IETF RFC 5649 AES Key Wrap with Padding algorithm. + The number of bytes in the unwrapped key. + <para><para> When called by the base class, <paramref name="source" /> is pre-validated to be at least 16 bytes long and a multiple of 8 bytes.</para><para></para><para> When called by the base class, <paramref name="destination" /> will always be exactly 8 bytes shorter than <paramref name="source" />, so any valid value will always fit.</para><para></para> + + The unwrap algorithm failed to unwrap the ciphertext. + -or- + An error occurred during the cryptographic operation. + @@ -472,10 +489,13 @@ - To be added. - To be added. - To be added. + The data to wrap. + Wraps a key using the IETF RFC 5649 AES Key Wrap with Padding algorithm. + The wrapped data. To be added. + + is or empty. + An error occurred during the cryptographic operation. @@ -515,10 +535,13 @@ - To be added. - To be added. - To be added. + The data to wrap. + Wraps a key using the IETF RFC 5649 AES Key Wrap with Padding algorithm. + The wrapped data. To be added. + + is empty. + An error occurred during the cryptographic operation. @@ -553,10 +576,15 @@ - To be added. - To be added. - To be added. + The data to wrap. + The buffer to receive the wrapped data. + + Wraps a key using the IETF RFC 5649 AES Key Wrap with Padding algorithm, writing the result to a specified buffer. + To be added. + <para><para> <paramref name="plaintext" /> is empty.</para><para>-or-</para><para> <paramref name="destination" /> is not precisely sized.</para> + <para><para> <paramref name="plaintext" /> and <paramref name="destination" /> overlap.</para><para>-or-</para><para>An error occurred during the cryptographic operation.</para> + @@ -591,10 +619,13 @@ - To be added. - To be added. - To be added. - To be added. + The data to wrap. + The buffer to receive the wrapped data. + + Wraps a key using the IETF RFC 5649 AES Key Wrap with Padding algorithm, writing the result to a specified buffer. + + <para><para> When called by the base class, <paramref name="source" /> is pre-validated to not be empty.</para><para></para><para> When called by the base class, <paramref name="destination" /> is pre-validated to be exactly the length returned by <see cref="M:System.Security.Cryptography.Aes.GetKeyWrapPaddedLength(System.Int32)" /> for the given input.</para><para></para> + An error occurred during the cryptographic operation. @@ -628,10 +659,13 @@ - To be added. - To be added. - To be added. + The length of the plaintext to be wrapped, in bytes. + + Computes the output length of the IETF RFC 5649 AES Key Wrap with Padding Algorithm for the specified plaintext length. + + The padded length of the key wrap for the specified plaintext. To be added. + <para><para> <paramref name="plaintextLengthInBytes" /> is less than or equal to zero.</para><para></para><para>-or-</para><para> <paramref name="plaintextLengthInBytes" /> represents a plaintext length that, when wrapped, has a length that cannot be represented as a signed 32-bit integer.</para><para></para> @@ -749,12 +783,25 @@ - To be added. - To be added. - To be added. - To be added. - To be added. + The data to unwrap. + The buffer to receive the unwrapped key. + + When this method returns, contains the number of bytes written to . + This parameter is treated as uninitialized. + + + Attempts to unwrap a key that was wrapped using the IETF RFC 5649 AES Key Wrap with Padding algorithm. + + + + if is long enough to receive the unwrapped key; otherwise, . + To be added. + + + has a that does not correspond to the output of the Key Wrap with Padding algorithm. + + <para><para> <paramref name="ciphertext" /> and <paramref name="destination" /> overlap.</para><para>-or-</para><para>The unwrap algorithm failed to unwrap the ciphertext.</para><para>-or-</para><para>An error occurred during the cryptographic operation.</para> diff --git a/xml/System.Security.Cryptography/AesCng.xml b/xml/System.Security.Cryptography/AesCng.xml index 77b02e91e6f..7935121cb48 100644 --- a/xml/System.Security.Cryptography/AesCng.xml +++ b/xml/System.Security.Cryptography/AesCng.xml @@ -135,9 +135,13 @@ - To be added. - To be added. + The key that will be used as input to the cryptographic operations performed by the current object. + Initializes a new instance of the class with the specified . To be added. + + is . + <para><para> <paramref name="key" /> does not represent an AES key.</para><para></para><para> -or-</para><para></para><para> An error occured while performing a cryptographic operation.</para><para></para> + Cryptography Next Generation (CNG) is not supported on this system. diff --git a/xml/System.Security.Cryptography/CngAlgorithm.xml b/xml/System.Security.Cryptography/CngAlgorithm.xml index f02d1b90518..99da6af87cf 100644 --- a/xml/System.Security.Cryptography/CngAlgorithm.xml +++ b/xml/System.Security.Cryptography/CngAlgorithm.xml @@ -766,8 +766,12 @@ System.Security.Cryptography.CngAlgorithm - To be added. - To be added. + + Gets a new object that specifies the Module-Lattice-Based Digital Signature Algorithm (ML-DSA). + + + A new object that specifies the Module-Lattice-Based Digital Signature Algorithm (ML-DSA). + To be added. @@ -793,8 +797,12 @@ System.Security.Cryptography.CngAlgorithm - To be added. - To be added. + + Gets a new object that specifies the Module-Lattice-Based Key-Encapsulation Mechanism (ML-KEM). + + + A new object that specifies the Module-Lattice-Based Key-Encapsulation Mechanism (ML-KEM). + To be added. @@ -1142,8 +1150,12 @@ System.Security.Cryptography.CngAlgorithm - To be added. - To be added. + + Gets a new object that specifies the Stateless Hash-Based Digital Signature Algorithm (SLH-DSA). + + + A new object that specifies the Stateless Hash-Based Digital Signature Algorithm (SLH-DSA). + To be added. diff --git a/xml/System.Security.Cryptography/CngAlgorithmGroup.xml b/xml/System.Security.Cryptography/CngAlgorithmGroup.xml index 80033fd1229..4b9eb9287ba 100644 --- a/xml/System.Security.Cryptography/CngAlgorithmGroup.xml +++ b/xml/System.Security.Cryptography/CngAlgorithmGroup.xml @@ -553,8 +553,10 @@ System.Security.Cryptography.CngAlgorithmGroup - To be added. - To be added. + + Gets a object that specifies the Module-Lattice-Based Digital Signature Algorithm (ML-DSA) family of algorithms. + + An object that specifies the ML-DSA family of algorithms. To be added. @@ -580,8 +582,10 @@ System.Security.Cryptography.CngAlgorithmGroup - To be added. - To be added. + + Gets a object that specifies the Module-Lattice-Based Key-Encapsulation Mechanism (ML-KEM) family of algorithms. + + An object that specifies the ML-KEM family of algorithms. To be added. @@ -758,8 +762,10 @@ System.Security.Cryptography.CngAlgorithmGroup - To be added. - To be added. + + Gets a object that specifies the Stateless Hash-Based Digital Signature Algorithm (SLH-DSA) family of algorithms. + + An object that specifies the SLH-DSA family of algorithms. To be added. diff --git a/xml/System.Security.Cryptography/CngKeyBlobFormat.xml b/xml/System.Security.Cryptography/CngKeyBlobFormat.xml index ef28a216c34..106a481d312 100644 --- a/xml/System.Security.Cryptography/CngKeyBlobFormat.xml +++ b/xml/System.Security.Cryptography/CngKeyBlobFormat.xml @@ -657,9 +657,13 @@ System.Security.Cryptography.CngKeyBlobFormat - To be added. - To be added. - To be added. + + Gets a object that specifies a Module-Lattice-Based Key-Encapsulation Mechanism (ML-KEM) private key BLOB. + + + A object that specifies a Module-Lattice-Based Key-Encapsulation Mechanism (ML-KEM) private key BLOB. + + The value identified by this blob format is "MLKEMPRIVATEBLOB". @@ -684,9 +688,13 @@ System.Security.Cryptography.CngKeyBlobFormat - To be added. - To be added. - To be added. + + Gets a object that specifies a Module-Lattice-Based Key-Encapsulation Mechanism (ML-KEM) private seed BLOB. + + + A object that specifies a Module-Lattice-Based Key-Encapsulation Mechanism (ML-KEM) private seed BLOB. + + The value identified by this blob format is "MLKEMPRIVATESEEDBLOB". @@ -711,9 +719,13 @@ System.Security.Cryptography.CngKeyBlobFormat - To be added. - To be added. - To be added. + + Gets a object that specifies a Module-Lattice-Based Key-Encapsulation Mechanism (ML-KEM) public key BLOB. + + + A object that specifies a Module-Lattice-Based Key-Encapsulation Mechanism (ML-KEM) public key BLOB. + + The value identified by this blob format is "MLKEMPUBLICBLOB". @@ -946,9 +958,13 @@ System.Security.Cryptography.CngKeyBlobFormat - To be added. - To be added. - To be added. + + Gets a object that specifies a Post-Quantum Digital Signature Algorithm private key BLOB. + + + A object that specifies a Post-Quantum Digital Signature Algorithm private key BLOB. + + The value identified by this blob format is "PQDSAPRIVATEBLOB". @@ -979,9 +995,13 @@ System.Security.Cryptography.CngKeyBlobFormat - To be added. - To be added. - To be added. + + Gets a object that specifies a Post-Quantum Digital Signature Algorithm private seed BLOB. + + + A object that specifies a Post-Quantum Digital Signature Algorithm private seed BLOB. + + The value identified by this blob format is "PQDSAPRIVATESEEDBLOB". @@ -1012,9 +1032,13 @@ System.Security.Cryptography.CngKeyBlobFormat - To be added. - To be added. - To be added. + + Gets a object that specifies a Post-Quantum Digital Signature Algorithm public key BLOB. + + + A object that specifies a Post-Quantum Digital Signature Algorithm public key BLOB. + + The value identified by this blob format is "PQDSAPUBLICBLOB". diff --git a/xml/System.Security.Cryptography/CompositeMLDsa.xml b/xml/System.Security.Cryptography/CompositeMLDsa.xml index 546ac5d0c6c..16fe41a09ba 100644 --- a/xml/System.Security.Cryptography/CompositeMLDsa.xml +++ b/xml/System.Security.Cryptography/CompositeMLDsa.xml @@ -114,7 +114,7 @@ - To be added. + Releases all resources used by the class. To be added. @@ -211,7 +211,12 @@ The number of bytes written to the buffer. To be added. This instance has been disposed. - wasn't large enough to hold the result.-or-An error occurred while exporting the key. + + + wasn't large enough to hold the result. + -or- + An error occurred while exporting the key. + @@ -303,7 +308,12 @@ The number of bytes written to the buffer. To be added. This instance has been disposed. - was too not large enough to hold the result.-or-An error occurred while exporting the key. + + + was too not large enough to hold the result. + -or- + An error occurred while exporting the key. + @@ -376,7 +386,19 @@ is . This instance has been disposed. - specifies a KDF that requires a char-based password.-or- does not represent a valid password-based encryption algorithm.-or-This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key. + + + specifies a KDF that requires a char-based password. + -or- + + does not represent a valid password-based encryption algorithm. + -or- + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + @@ -418,7 +440,16 @@ is . This instance has been disposed. - does not represent a valid password-based encryption algorithm.-or-This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key. + + + does not represent a valid password-based encryption algorithm. + -or- + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + @@ -496,7 +527,19 @@ is . This instance has been disposed. - specifies a KDF that requires a char-based password.-or- does not represent a valid password-based encryption algorithm.-or-This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key. + + + specifies a KDF that requires a char-based password. + -or- + + does not represent a valid password-based encryption algorithm. + -or- + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + @@ -540,7 +583,16 @@ is . This instance has been disposed. - does not represent a valid password-based encryption algorithm.-or-This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key. + + + does not represent a valid password-based encryption algorithm. + -or- + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + @@ -806,7 +858,12 @@ Imports a Composite ML-DSA private key. The imported key. To be added. - length is the wrong size for the specified algorithm.-or-An error occurred while importing the key. + + + length is the wrong size for the specified algorithm. + -or- + An error occurred while importing the key. + The platform does not support the specified Composite ML-DSA algorithm. Callers can use to determine if the algorithm is supported. @@ -882,7 +939,12 @@ Imports a Composite ML-DSA public key. The imported key. To be added. - length is the wrong size for the specified algorithm.-or-An error occurred while importing the key. + + + length is the wrong size for the specified algorithm. + -or- + An error occurred while importing the key. + The platform does not support the specified Composite ML-DSA algorithm. Callers can use to determine if the algorithm is supported. @@ -923,7 +985,22 @@ Imports a Composite ML-DSA private key from a PKCS#8 EncryptedPrivateKeyInfo structure. The imported key. To be added. - The contents of do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.-or-The specified password is incorrect.-or-The EncryptedPrivateKeyInfo indicates the Key Derivation Function (KDF) to apply is the legacy PKCS#12 KDF, which requires -based passwords.-or-The value does not represent a Composite ML-DSA key.-or- contains trailing data after the ASN.1 structure.-or-The algorithm-specific import failed.-or-The specified Composite ML-DSA algorithm is not supported. + + The contents of do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure. + -or- + The specified password is incorrect. + -or- + The EncryptedPrivateKeyInfo indicates the Key Derivation Function (KDF) to apply is the legacy PKCS#12 KDF, which requires -based passwords. + -or- + The value does not represent a Composite ML-DSA key. + -or- + + contains trailing data after the ASN.1 structure. + -or- + The algorithm-specific import failed. + -or- + The specified Composite ML-DSA algorithm is not supported. + The platform does not support Composite ML-DSA. Callers can use the property to determine if the platform supports Composite ML-DSA. @@ -964,7 +1041,20 @@ Imports a Composite ML-DSA private key from a PKCS#8 EncryptedPrivateKeyInfo structure. The imported key. To be added. - The contents of do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.-or-The specified password is incorrect.-or-The value does not represent a Composite ML-DSA key.-or- contains trailing data after the ASN.1 structure.-or-The algorithm-specific import failed.-or-The specified Composite ML-DSA algorithm is not supported. + + The contents of do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure. + -or- + The specified password is incorrect. + -or- + The value does not represent a Composite ML-DSA key. + -or- + + contains trailing data after the ASN.1 structure. + -or- + The algorithm-specific import failed. + -or- + The specified Composite ML-DSA algorithm is not supported. + The platform does not support Composite ML-DSA. Callers can use the property to determine if the platform supports Composite ML-DSA. @@ -1038,9 +1128,30 @@ The bytes to use as a password when decrypting the key material. Imports a Composite ML-DSA key from an encrypted RFC 7468 PEM-encoded string. To be added. - Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is thrown to prevent importing a key when the key is ambiguous.This method supports the <c>ENCRYPTED PRIVATE KEY</c> PEM label. - does not contain a PEM-encoded key with a recognized label.-or- contains multiple PEM-encoded keys with a recognized label. - The password is incorrect.-or-The base-64 decoded contents of the PEM text from do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.-or-The base-64 decoded contents of the PEM text from indicate the key is for an algorithm other than the algorithm represented by this instance.-or-The base-64 decoded contents of the PEM text from represent the key in a format that is not supported.-or-An error occurred while importing the key.-or-The specified Composite ML-DSA algorithm is not supported. + + Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is thrown to prevent importing a key when the key is ambiguous. + This method supports the <c>ENCRYPTED PRIVATE KEY</c> PEM label. + + + + does not contain a PEM-encoded key with a recognized label. + -or- + + contains multiple PEM-encoded keys with a recognized label. + + + The password is incorrect. + -or- + The base-64 decoded contents of the PEM text from do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure. + -or- + The base-64 decoded contents of the PEM text from indicate the key is for an algorithm other than the algorithm represented by this instance. + -or- + The base-64 decoded contents of the PEM text from represent the key in a format that is not supported. + -or- + An error occurred while importing the key. + -or- + The specified Composite ML-DSA algorithm is not supported. + The platform does not support Composite ML-DSA. Callers can use the property to determine if the platform supports Composite ML-DSA. @@ -1080,9 +1191,31 @@ The password to use for decrypting the key material. Imports a Composite ML-DSA key from an encrypted RFC 7468 PEM-encoded string. To be added. - When the base-64 decoded contents of indicate an algorithm that uses PBKDF1 (Password-Based Key Derivation Function 1) or PBKDF2 (Password-Based Key Derivation Function 2), the password is converted to bytes via the UTF-8 encoding.Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is thrown to prevent importing a key when the key is ambiguous.This method supports the <c>ENCRYPTED PRIVATE KEY</c> PEM label. - does not contain a PEM-encoded key with a recognized label.-or- contains multiple PEM-encoded keys with a recognized label. - The password is incorrect.-or-The base-64 decoded contents of the PEM text from do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.-or-The base-64 decoded contents of the PEM text from indicate the key is for an algorithm other than the algorithm represented by this instance.-or-The base-64 decoded contents of the PEM text from represent the key in a format that is not supported.-or-An error occurred while importing the key.-or-The specified Composite ML-DSA algorithm is not supported. + + When the base-64 decoded contents of indicate an algorithm that uses PBKDF1 (Password-Based Key Derivation Function 1) or PBKDF2 (Password-Based Key Derivation Function 2), the password is converted to bytes via the UTF-8 encoding. + Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is thrown to prevent importing a key when the key is ambiguous. + This method supports the <c>ENCRYPTED PRIVATE KEY</c> PEM label. + + + + does not contain a PEM-encoded key with a recognized label. + -or- + + contains multiple PEM-encoded keys with a recognized label. + + + The password is incorrect. + -or- + The base-64 decoded contents of the PEM text from do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure. + -or- + The base-64 decoded contents of the PEM text from indicate the key is for an algorithm other than the algorithm represented by this instance. + -or- + The base-64 decoded contents of the PEM text from represent the key in a format that is not supported. + -or- + An error occurred while importing the key. + -or- + The specified Composite ML-DSA algorithm is not supported. + The platform does not support Composite ML-DSA. Callers can use the property to determine if the platform supports Composite ML-DSA. @@ -1188,8 +1321,30 @@ The text of the PEM key to import. Imports a Composite ML-DSA key from an RFC 7468 PEM-encoded string. The imported Composite ML-DSA key. - Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is raised to prevent importing a key when the key is ambiguous.This method supports the following PEM labels:PUBLIC KEYPRIVATE KEY - contains an encrypted PEM-encoded key.-or- contains multiple PEM-encoded Composite ML-DSA keys.-or- contains no PEM-encoded Composite ML-DSA keys. + + Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is raised to prevent importing a key when the key is ambiguous. + This method supports the following PEM labels: + + + + PUBLIC KEY + + + PRIVATE KEY + + + + + + + contains an encrypted PEM-encoded key. + -or- + + contains multiple PEM-encoded Composite ML-DSA keys. + -or- + + contains no PEM-encoded Composite ML-DSA keys. + An error occurred while importing the key. -or- @@ -1297,7 +1452,18 @@ Imports a Composite ML-DSA private key from a PKCS#8 PrivateKeyInfo structure. The imported key. To be added. - The contents of do not represent an ASN.1-BER-encoded PKCS#8 PrivateKeyInfo structure.-or-The PrivateKeyInfo value does not represent a Composite ML-DSA key.-or- contains trailing data after the ASN.1 structure.-or-The algorithm-specific import failed.-or-The specified Composite ML-DSA algorithm is not supported. + + The contents of do not represent an ASN.1-BER-encoded PKCS#8 PrivateKeyInfo structure. + -or- + The PrivateKeyInfo value does not represent a Composite ML-DSA key. + -or- + + contains trailing data after the ASN.1 structure. + -or- + The algorithm-specific import failed. + -or- + The specified Composite ML-DSA algorithm is not supported. + The platform does not support Composite ML-DSA. Callers can use the property to determine if the platform supports Composite ML-DSA. @@ -1368,7 +1534,18 @@ Imports a Composite ML-DSA public key from an X.509 SubjectPublicKeyInfo structure. The imported key. To be added. - The contents of do not represent an ASN.1-DER-encoded X.509 SubjectPublicKeyInfo structure.-or-The SubjectPublicKeyInfo value does not represent a Composite ML-DSA key.-or- contains trailing data after the ASN.1 structure.-or-The algorithm-specific import failed.-or-The specified Composite ML-DSA algorithm is not supported. + + The contents of do not represent an ASN.1-DER-encoded X.509 SubjectPublicKeyInfo structure. + -or- + The SubjectPublicKeyInfo value does not represent a Composite ML-DSA key. + -or- + + contains trailing data after the ASN.1 structure. + -or- + The algorithm-specific import failed. + -or- + The specified Composite ML-DSA algorithm is not supported. + The platform does not support Composite ML-DSA. Callers can use the property to determine if the platform supports Composite ML-DSA. @@ -1694,7 +1871,19 @@ is . This instance has been disposed. - specifies a KDF that requires a char-based password.-or- does not represent a valid password-based encryption algorithm.-or-This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key. + + + specifies a KDF that requires a char-based password. + -or- + + does not represent a valid password-based encryption algorithm. + -or- + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + @@ -1748,7 +1937,16 @@ is . This instance has been disposed. - does not represent a valid password-based encryption algorithm.-or-This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key. + + + does not represent a valid password-based encryption algorithm. + -or- + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + diff --git a/xml/System.Security.Cryptography/CompositeMLDsaAlgorithm.xml b/xml/System.Security.Cryptography/CompositeMLDsaAlgorithm.xml index 9278fc01bf3..c8a7461414f 100644 --- a/xml/System.Security.Cryptography/CompositeMLDsaAlgorithm.xml +++ b/xml/System.Security.Cryptography/CompositeMLDsaAlgorithm.xml @@ -106,9 +106,10 @@ - To be added. - To be added. - To be added. + An object to be compared to the current object. + Compares two objects. + + if the objects are considered equal; otherwise, . To be added. diff --git a/xml/System.Security.Cryptography/CompositeMLDsaCng.xml b/xml/System.Security.Cryptography/CompositeMLDsaCng.xml index 504bb549ddf..d36a1ae96e8 100644 --- a/xml/System.Security.Cryptography/CompositeMLDsaCng.xml +++ b/xml/System.Security.Cryptography/CompositeMLDsaCng.xml @@ -25,7 +25,10 @@ Provides a Cryptography Next Generation (CNG) implementation of Composite ML-DSA. - Developers are encouraged to program against the base class, rather than any specific derived class.The derived classes are intended for interop with the underlying system cryptographic libraries. + + Developers are encouraged to program against the base class, rather than any specific derived class. + The derived classes are intended for interop with the underlying system cryptographic libraries. + diff --git a/xml/System.Security.Cryptography/CryptoStream.xml b/xml/System.Security.Cryptography/CryptoStream.xml index 69d99cce58d..117f97fd687 100644 --- a/xml/System.Security.Cryptography/CryptoStream.xml +++ b/xml/System.Security.Cryptography/CryptoStream.xml @@ -701,6 +701,7 @@ This method stores in the task it returns all non-usage exceptions that the meth The current stream does not support reading, or the destination stream does not support writing. An error occurred during a cryptographic operation. The cancellation token was canceled. This exception is stored into the returned task. + @@ -1432,6 +1433,7 @@ This property exists only to support inheritance from , a Starting in .NET 6, this method might not read as many bytes as were requested. For more information, see Partial and zero-byte reads in DeflateStream, GZipStream, and CryptoStream. The associated with the current object does not match the underlying stream. For example, this exception is thrown when using with an underlying stream that's write only. The cancellation token was canceled. This exception is stored into the returned task. + @@ -1811,6 +1813,7 @@ This member is an explicit interface member implementation. It can be used only To be added. The associated with current object does not match the underlying stream. For example, this exception is thrown when using with an underlying stream that is read only. The cancellation token was canceled. This exception is stored into the returned task. + diff --git a/xml/System.Security.Cryptography/ECDsa.xml b/xml/System.Security.Cryptography/ECDsa.xml index 95afdc53540..1bb742da80d 100644 --- a/xml/System.Security.Cryptography/ECDsa.xml +++ b/xml/System.Security.Cryptography/ECDsa.xml @@ -1595,6 +1595,7 @@ The algorithm-specific key import failed. 's is an empty string. 's is . + @@ -1739,6 +1740,7 @@ The algorithm-specific key import failed. 's is . is not a known format. + @@ -1786,6 +1788,7 @@ The buffer in is too small to hold the signature 's is . + @@ -1905,6 +1908,7 @@ The buffer in is too small to hold the signature 's is . is not a known format. + @@ -2147,6 +2151,7 @@ The buffer in is too small to hold the signature A digital signature for the specified hash value. This method will use to encode the the signature. To use a different signature format, use . An error occurred in the signing operation. + @@ -2235,6 +2240,7 @@ The buffer in is too small to hold the signature is not a known format. An error occurred in the signing operation. + @@ -2273,6 +2279,7 @@ The buffer in is too small to hold the signature This method will use to encode the the signature. To use a different signature format, use . An error occurred in the signing operation. The buffer in is too small to hold the signature. + @@ -2315,6 +2322,7 @@ The buffer in is too small to hold the signature is not a known format. An error occurred in the signing operation. The buffer in is too small to hold the signature. + diff --git a/xml/System.Security.Cryptography/HMACSHA3_256.xml b/xml/System.Security.Cryptography/HMACSHA3_256.xml index 9f59ac44f87..9b607fcc931 100644 --- a/xml/System.Security.Cryptography/HMACSHA3_256.xml +++ b/xml/System.Security.Cryptography/HMACSHA3_256.xml @@ -101,6 +101,7 @@ to release both managed and unmanaged resources; to release only unmanaged resources. Releases the unmanaged resources used by the class when a key change is legitimate and optionally releases the managed resources. To be added. + @@ -617,6 +618,7 @@ Initializes an instance of the default implementation of . To be added. + diff --git a/xml/System.Security.Cryptography/HMACSHA3_384.xml b/xml/System.Security.Cryptography/HMACSHA3_384.xml index a3236febaf2..08e7bdabca9 100644 --- a/xml/System.Security.Cryptography/HMACSHA3_384.xml +++ b/xml/System.Security.Cryptography/HMACSHA3_384.xml @@ -101,6 +101,7 @@ to release both managed and unmanaged resources; to release only unmanaged resources. Releases the unmanaged resources used by the class when a key change is legitimate and optionally releases the managed resources. To be added. + @@ -617,6 +618,7 @@ Initializes an instance of the default implementation of . To be added. + diff --git a/xml/System.Security.Cryptography/HMACSHA3_512.xml b/xml/System.Security.Cryptography/HMACSHA3_512.xml index 06af95038cd..2de20a4ce96 100644 --- a/xml/System.Security.Cryptography/HMACSHA3_512.xml +++ b/xml/System.Security.Cryptography/HMACSHA3_512.xml @@ -101,6 +101,7 @@ to release both managed and unmanaged resources; to release only unmanaged resources. Releases the unmanaged resources used by the class when a key change is legitimate and optionally releases the managed resources. To be added. + @@ -617,6 +618,7 @@ Initializes an instance of the default implementation of . To be added. + diff --git a/xml/System.Security.Cryptography/MLDsa.xml b/xml/System.Security.Cryptography/MLDsa.xml index 9440bb919c6..6f404516b18 100644 --- a/xml/System.Security.Cryptography/MLDsa.xml +++ b/xml/System.Security.Cryptography/MLDsa.xml @@ -33,7 +33,11 @@ Represents an ML-DSA key. - This algorithm is specified by FIPS-204.Developers are encouraged to program against the base class, rather than any specific derived class.The derived classes are intended for interop with the underlying system cryptographic libraries. + + This algorithm is specified by FIPS-204. + Developers are encouraged to program against the base class, rather than any specific derived class. + The derived classes are intended for interop with the underlying system cryptographic libraries. + @@ -112,7 +116,7 @@ - To be added. + Releases all resources used by the class. To be added. @@ -188,7 +192,19 @@ is . This instance has been disposed. - specifies a KDF that requires a char-based password.-or- does not represent a valid password-based encryption algorithm.-or-This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key. + + + specifies a KDF that requires a char-based password. + -or- + + does not represent a valid password-based encryption algorithm. + -or- + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + @@ -230,7 +246,16 @@ is . This instance has been disposed. - does not represent a valid password-based encryption algorithm.-or-This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key. + + + does not represent a valid password-based encryption algorithm. + -or- + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + @@ -308,7 +333,19 @@ is . This instance has been disposed. - specifies a KDF that requires a char-based password.-or- does not represent a valid password-based encryption algorithm.-or-This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key. + + + specifies a KDF that requires a char-based password. + -or- + + does not represent a valid password-based encryption algorithm. + -or- + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + @@ -352,7 +389,16 @@ is . This instance has been disposed. - does not represent a valid password-based encryption algorithm.-or-This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key. + + + does not represent a valid password-based encryption algorithm. + -or- + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + @@ -866,7 +912,20 @@ Imports an ML-DSA private key from a PKCS#8 EncryptedPrivateKeyInfo structure. The imported key. To be added. - The contents of do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.-or-The specified password is incorrect.-or-The EncryptedPrivateKeyInfo indicates the Key Derivation Function (KDF) to apply is the legacy PKCS#12 KDF, which requires -based passwords.-or-The value does not represent an ML-DSA key.-or- contains trailing data after the ASN.1 structure.-or-The algorithm-specific import failed. + + The contents of do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure. + -or- + The specified password is incorrect. + -or- + The EncryptedPrivateKeyInfo indicates the Key Derivation Function (KDF) to apply is the legacy PKCS#12 KDF, which requires -based passwords. + -or- + The value does not represent an ML-DSA key. + -or- + + contains trailing data after the ASN.1 structure. + -or- + The algorithm-specific import failed. + The platform does not support ML-DSA. Callers can use the property to determine if the platform supports ML-DSA. @@ -907,7 +966,18 @@ Imports an ML-DSA private key from a PKCS#8 EncryptedPrivateKeyInfo structure. The imported key. To be added. - The contents of do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.-or-The specified password is incorrect.-or-The value does not represent an ML-DSA key.-or- contains trailing data after the ASN.1 structure.-or-The algorithm-specific import failed. + + The contents of do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure. + -or- + The specified password is incorrect. + -or- + The value does not represent an ML-DSA key. + -or- + + contains trailing data after the ASN.1 structure. + -or- + The algorithm-specific import failed. + The platform does not support ML-DSA. Callers can use the property to determine if the platform supports ML-DSA. @@ -981,9 +1051,28 @@ The bytes to use as a password when decrypting the key material. Imports an ML-DSA key from an encrypted RFC 7468 PEM-encoded string. To be added. - Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is thrown to prevent importing a key when the key is ambiguous.This method supports the ENCRYPTED PRIVATE KEY PEM label. - does not contain a PEM-encoded key with a recognized label.-or- contains multiple PEM-encoded keys with a recognized label. - The password is incorrect.-or-The base-64 decoded contents of the PEM text from do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.-or-The base-64 decoded contents of the PEM text from indicate the key is for an algorithm other than the algorithm represented by this instance.-or-The base-64 decoded contents of the PEM text from represent the key in a format that is not supported.-or-An error occurred while importing the key. + + Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is thrown to prevent importing a key when the key is ambiguous. + This method supports the ENCRYPTED PRIVATE KEY PEM label. + + + + does not contain a PEM-encoded key with a recognized label. + -or- + + contains multiple PEM-encoded keys with a recognized label. + + + The password is incorrect. + -or- + The base-64 decoded contents of the PEM text from do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure. + -or- + The base-64 decoded contents of the PEM text from indicate the key is for an algorithm other than the algorithm represented by this instance. + -or- + The base-64 decoded contents of the PEM text from represent the key in a format that is not supported. + -or- + An error occurred while importing the key. + The platform does not support ML-DSA. Callers can use the property to determine if the platform supports ML-DSA. @@ -1023,9 +1112,29 @@ The password to use for decrypting the key material. Imports an ML-DSA key from an encrypted RFC 7468 PEM-encoded string. To be added. - When the base-64 decoded contents of indicate an algorithm that uses PBKDF1 (Password-Based Key Derivation Function 1) or PBKDF2 (Password-Based Key Derivation Function 2), the password is converted to bytes via the UTF-8 encoding.Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is thrown to prevent importing a key when the key is ambiguous.This method supports the ENCRYPTED PRIVATE KEY PEM label. - does not contain a PEM-encoded key with a recognized label.-or- contains multiple PEM-encoded keys with a recognized label. - The password is incorrect.-or-The base-64 decoded contents of the PEM text from do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.-or-The base-64 decoded contents of the PEM text from indicate the key is for an algorithm other than the algorithm represented by this instance.-or-The base-64 decoded contents of the PEM text from represent the key in a format that is not supported.-or-An error occurred while importing the key. + + When the base-64 decoded contents of indicate an algorithm that uses PBKDF1 (Password-Based Key Derivation Function 1) or PBKDF2 (Password-Based Key Derivation Function 2), the password is converted to bytes via the UTF-8 encoding. + Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is thrown to prevent importing a key when the key is ambiguous. + This method supports the ENCRYPTED PRIVATE KEY PEM label. + + + + does not contain a PEM-encoded key with a recognized label. + -or- + + contains multiple PEM-encoded keys with a recognized label. + + + The password is incorrect. + -or- + The base-64 decoded contents of the PEM text from do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure. + -or- + The base-64 decoded contents of the PEM text from indicate the key is for an algorithm other than the algorithm represented by this instance. + -or- + The base-64 decoded contents of the PEM text from represent the key in a format that is not supported. + -or- + An error occurred while importing the key. + The platform does not support ML-DSA. Callers can use the property to determine if the platform supports ML-DSA. @@ -1131,8 +1240,30 @@ The text of the PEM key to import. Imports an ML-DSA key from an RFC 7468 PEM-encoded string. The imported ML-DSA key. - Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is raised to prevent importing a key when the key is ambiguous.This method supports the following PEM labels:PUBLIC KEYPRIVATE KEY - contains an encrypted PEM-encoded key.-or- contains multiple PEM-encoded ML-DSA keys.-or- contains no PEM-encoded ML-DSA keys. + + Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is raised to prevent importing a key when the key is ambiguous. + This method supports the following PEM labels: + + + + PUBLIC KEY + + + PRIVATE KEY + + + + + + + contains an encrypted PEM-encoded key. + -or- + + contains multiple PEM-encoded ML-DSA keys. + -or- + + contains no PEM-encoded ML-DSA keys. + An error occurred while importing the key. The platform does not support ML-DSA. Callers can use the property to determine if the platform supports ML-DSA. @@ -1241,7 +1372,15 @@ Imports an ML-DSA private key in the FIPS 204 private key format. The imported key. To be added. - is not a valid ML-DSA algorithm identifier.-or- is not the correct size for the specified algorithm.-or-An error occurred while importing the key. + + + is not a valid ML-DSA algorithm identifier. + -or- + + is not the correct size for the specified algorithm. + -or- + An error occurred while importing the key. + @@ -1314,7 +1453,15 @@ Imports an ML-DSA private key from its private seed value. The imported key. To be added. - is not a valid ML-DSA algorithm identifier.-or- is not the correct size for the specified algorithm.-or-An error occurred while importing the key. + + + is not a valid ML-DSA algorithm identifier. + -or- + + is not the correct size for the specified algorithm. + -or- + An error occurred while importing the key. + @@ -1387,7 +1534,15 @@ Imports an ML-DSA public key in the FIPS 204 public key format. The imported key. To be added. - is not a valid ML-DSA algorithm identifier.-or- is not the correct size for the specified algorithm.-or-An error occurred while importing the key. + + + is not a valid ML-DSA algorithm identifier. + -or- + + is not the correct size for the specified algorithm. + -or- + An error occurred while importing the key. + @@ -1455,7 +1610,16 @@ Imports an ML-DSA private key from a PKCS#8 PrivateKeyInfo structure. The imported key. To be added. - The contents of do not represent an ASN.1-BER-encoded PKCS#8 PrivateKeyInfo structure.-or-The PrivateKeyInfo value does not represent an ML-DSA key.-or- contains trailing data after the ASN.1 structure.-or-The algorithm-specific import failed. + + The contents of do not represent an ASN.1-BER-encoded PKCS#8 PrivateKeyInfo structure. + -or- + The PrivateKeyInfo value does not represent an ML-DSA key. + -or- + + contains trailing data after the ASN.1 structure. + -or- + The algorithm-specific import failed. + The platform does not support ML-DSA. Callers can use the property to determine if the platform supports ML-DSA. @@ -1526,7 +1690,16 @@ Imports an ML-DSA public key from an X.509 SubjectPublicKeyInfo structure. The imported key. To be added. - The contents of do not represent an ASN.1-DER-encoded X.509 SubjectPublicKeyInfo structure.-or-The SubjectPublicKeyInfo value does not represent an ML-DSA key.-or- contains trailing data after the ASN.1 structure.-or-The algorithm-specific import failed. + + The contents of do not represent an ASN.1-DER-encoded X.509 SubjectPublicKeyInfo structure. + -or- + The SubjectPublicKeyInfo value does not represent an ML-DSA key. + -or- + + contains trailing data after the ASN.1 structure. + -or- + The algorithm-specific import failed. + The platform does not support ML-DSA. Callers can use the property to determine if the platform supports ML-DSA. @@ -1799,7 +1972,11 @@ Signs the specified externally computed signature mu (μ) value, writing the signature into the provided buffer. To be added. - The buffer in is the incorrect length for the signature mu value.-or-The buffer in is the incorrect length to receive the signature. + + The buffer in is the incorrect length for the signature mu value. + -or- + The buffer in is the incorrect length to receive the signature. + This instance has been disposed. The instance represents only a public key. @@ -1883,7 +2060,20 @@ Signs the specified hash using the FIPS 204 pre-hash signing algorithm. To be added. To be added. - or is .An error occurred while verifying the data. is not a well-formed OID.-or- is a well-known algorithm and does not have the expected length.-or-The instance represents only a public key.-or-An error occurred while signing the hash. + + + or is . + An error occurred while verifying the data. + + is not a well-formed OID. + -or- + + is a well-known algorithm and does not have the expected length. + -or- + The instance represents only a public key. + -or- + An error occurred while signing the hash. + @@ -1937,7 +2127,17 @@ has a in excess of 255 bytes. This instance has been disposed. - is not a well-formed OID.-or- is a well-known algorithm and does not have the expected length.-or-The instance represents only a public key.-or-An error occurred while signing the hash. + + + is not a well-formed OID. + -or- + + is a well-known algorithm and does not have the expected length. + -or- + The instance represents only a public key. + -or- + An error occurred while signing the hash. + @@ -2035,7 +2235,19 @@ is . This instance has been disposed. - specifies a KDF that requires a char-based password.-or- does not represent a valid password-based encryption algorithm.-or-This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key. + + + specifies a KDF that requires a char-based password. + -or- + + does not represent a valid password-based encryption algorithm. + -or- + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + @@ -2089,7 +2301,16 @@ is . This instance has been disposed. - does not represent a valid password-based encryption algorithm.-or-This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key. + + + does not represent a valid password-based encryption algorithm. + -or- + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + @@ -2542,7 +2763,15 @@ has a length in excess of 255 bytes. This instance has been disposed. - is not a well-formed OID.-or- is a well-known algorithm and does not have the expected length.-or-An error occurred while verifying the hash. + + + is not a well-formed OID. + -or- + + is a well-known algorithm and does not have the expected length. + -or- + An error occurred while verifying the hash. + @@ -2595,7 +2824,15 @@ has a in excess of 255 bytes. This instance has been disposed. - is not a well-formed OID.-or- is a well-known algorithm and does not have the expected length.-or-An error occurred while verifying the hash. + + + is not a well-formed OID. + -or- + + is a well-known algorithm and does not have the expected length. + -or- + An error occurred while verifying the hash. + diff --git a/xml/System.Security.Cryptography/MLDsaAlgorithm.xml b/xml/System.Security.Cryptography/MLDsaAlgorithm.xml index a7f273cb6b9..b4975501a6d 100644 --- a/xml/System.Security.Cryptography/MLDsaAlgorithm.xml +++ b/xml/System.Security.Cryptography/MLDsaAlgorithm.xml @@ -110,9 +110,10 @@ - To be added. - To be added. - To be added. + An object to be compared to the current object. + Compares two objects. + + if the objects are considered equal; otherwise, . To be added. diff --git a/xml/System.Security.Cryptography/MLDsaCng.xml b/xml/System.Security.Cryptography/MLDsaCng.xml index c8a0842835d..912e9b475e0 100644 --- a/xml/System.Security.Cryptography/MLDsaCng.xml +++ b/xml/System.Security.Cryptography/MLDsaCng.xml @@ -25,7 +25,11 @@ Provides a Cryptography Next Generation (CNG) implementation of the Module-Lattice-Based Digital Signature Algorithm (ML-DSA). - This algorithm is specified by FIPS-204.Developers are encouraged to program against the base class rather than any specific derived class.The derived classes are intended for interop with the underlying system cryptographic libraries. + + This algorithm is specified by FIPS-204. + Developers are encouraged to program against the base class rather than any specific derived class. + The derived classes are intended for interop with the underlying system cryptographic libraries. + diff --git a/xml/System.Security.Cryptography/MLDsaOpenSsl.xml b/xml/System.Security.Cryptography/MLDsaOpenSsl.xml index 746baa20bcc..45a08bb5b01 100644 --- a/xml/System.Security.Cryptography/MLDsaOpenSsl.xml +++ b/xml/System.Security.Cryptography/MLDsaOpenSsl.xml @@ -20,8 +20,8 @@ - To be added. - To be added. + Represents an ML-DSA key backed by OpenSSL. + <para><para> This algorithm is specified by FIPS-204.</para><para></para><para> Developers are encouraged to program against the <c>MLDsa</c> base class, rather than any specific derived class.</para><para>The derived classes are intended for interop with the underlying system cryptographic libraries.</para><para></para> @@ -66,9 +66,19 @@ - To be added. - To be added. + The OpenSSL EVP_PKEY* value to use as the key, represented as a . + + Initializes a new instance of the class from an existing OpenSSL key represented as an EVP_PKEY*. + To be added. + + is . + + The handle in is not recognized as an ML-DSA key. + -or- + An error occurred while creating the algorithm instance. + + The handle in is already disposed. @@ -93,6 +103,7 @@ To be added. To be added. To be added. + @@ -112,9 +123,10 @@ - To be added. - To be added. + Gets a representation of the cryptographic key. + A representation of the cryptographic key. To be added. + The object has already been disposed. @@ -139,6 +151,7 @@ To be added. To be added. To be added. + @@ -163,6 +176,7 @@ To be added. To be added. To be added. + @@ -187,6 +201,7 @@ To be added. To be added. To be added. + @@ -215,6 +230,7 @@ To be added. To be added. To be added. + @@ -241,6 +257,7 @@ To be added. To be added. To be added. + @@ -278,6 +295,7 @@ To be added. To be added. To be added. + @@ -305,6 +323,7 @@ To be added. To be added. To be added. + @@ -334,6 +353,7 @@ To be added. To be added. To be added. + @@ -361,6 +381,7 @@ To be added. To be added. To be added. + @@ -399,6 +420,7 @@ To be added. To be added. To be added. + diff --git a/xml/System.Security.Cryptography/MLKem.xml b/xml/System.Security.Cryptography/MLKem.xml index accbf9fb0ec..b26eeb38b76 100644 --- a/xml/System.Security.Cryptography/MLKem.xml +++ b/xml/System.Security.Cryptography/MLKem.xml @@ -29,7 +29,11 @@ Represents an ML-KEM key. - This algorithm is specified by FIPS-203.Developers are encouraged to program against the MLKem base class, rather than any specific derived class.The derived classes are intended for interop with the underlying system cryptographic libraries. + + This algorithm is specified by FIPS-203. + Developers are encouraged to program against the MLKem base class, rather than any specific derived class. + The derived classes are intended for interop with the underlying system cryptographic libraries. + @@ -158,7 +162,13 @@ For more information, see FIPS 203, Section 6.3. An error occurred during decapsulation. - is not the correct size. -or- is not the correct size. + + + is not the correct size. + -or- + + is not the correct size. + The object has already been disposed. @@ -217,7 +227,7 @@ - To be added. + Releases all resources used by the class. To be added. @@ -316,8 +326,19 @@ The buffer to receive the shared secret. Creates an encapsulation ciphertext and shared secret, writing them into the provided buffers. To be added. - An error occurred during encapsulation.-or - overlaps with . - is not the correct size. -or- is not the correct size. + + An error occurred during encapsulation. + -or - + + overlaps with . + + + + is not the correct size. + -or- + + is not the correct size. + The object has already been disposed. @@ -583,7 +604,16 @@ is . This instance has been disposed. - This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key.-or- does not represent a valid password-based encryption algorithm. + + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + -or- + + does not represent a valid password-based encryption algorithm. + @@ -631,7 +661,16 @@ is . This instance has been disposed. - This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key.-or- does not represent a valid password-based encryption algorithm. + + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + -or- + + does not represent a valid password-based encryption algorithm. + @@ -672,7 +711,16 @@ or is . This instance has been disposed. - This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key.-or- does not represent a valid password-based encryption algorithm. + + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + -or- + + does not represent a valid password-based encryption algorithm. + @@ -722,7 +770,16 @@ is . This instance has been disposed. - specifies a KDF that requires a char-based password.-or-This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key. + + + specifies a KDF that requires a char-based password. + -or- + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + @@ -1132,7 +1189,13 @@ To be added. has a length that is not valid for the ML-KEM algorithm. - is .-or- is . + + + is . + -or- + + is . + An error occurred while importing the key. The platform does not support ML-KEM. Callers can use the property to determine if the platform supports ML-KEM. @@ -1216,7 +1279,13 @@ To be added. has a length that is not valid for the ML-KEM algorithm. - is .-or- is . + + + is . + -or- + + is . + An error occurred while importing the key. The platform does not support ML-KEM. Callers can use the property to determine if the platform supports ML-KEM. @@ -1310,7 +1379,17 @@ Imports an ML-KEM private key from a PKCS#8 EncryptedPrivateKeyInfo structure. The imported key. To be added. - The contents of do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.-or-The specified password is incorrect.-or-The EncryptedPrivateKeyInfo indicates the Key Derivation Function (KDF) to apply is the legacy PKCS#12 KDF, which requires -based passwords.-or-The value does not represent an ML-KEM key.-or-The algorithm-specific import failed. + + The contents of do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure. + -or- + The specified password is incorrect. + -or- + The EncryptedPrivateKeyInfo indicates the Key Derivation Function (KDF) to apply is the legacy PKCS#12 KDF, which requires -based passwords. + -or- + The value does not represent an ML-KEM key. + -or- + The algorithm-specific import failed. + The platform does not support ML-KEM. Callers can use the property to determine if the platform supports ML-KEM. @@ -1357,7 +1436,15 @@ Imports an ML-KEM private key from a PKCS#8 EncryptedPrivateKeyInfo structure. The imported key. To be added. - The contents of do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.-or-The specified password is incorrect.-or-The value does not represent an ML-KEM key.-or-The algorithm-specific import failed. + + The contents of do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure. + -or- + The specified password is incorrect. + -or- + The value does not represent an ML-KEM key. + -or- + The algorithm-specific import failed. + The platform does not support ML-KEM. Callers can use the property to determine if the platform supports ML-KEM. @@ -1400,7 +1487,15 @@ To be added. or is . - The contents of do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.-or-The specified password is incorrect.-or-The value does not represent an ML-KEM key.-or-The algorithm-specific import failed. + + The contents of do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure. + -or- + The specified password is incorrect. + -or- + The value does not represent an ML-KEM key. + -or- + The algorithm-specific import failed. + The platform does not support ML-KEM. Callers can use the property to determine if the platform supports ML-KEM. @@ -1446,9 +1541,28 @@ The password to use for decrypting the key material. Imports an ML-KEM key from an encrypted RFC 7468 PEM-encoded string. To be added. - Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is thrown to prevent importing a key when the key is ambiguous.This method supports the ENCRYPTED PRIVATE KEY PEM label. - does not contain a PEM-encoded key with a recognized label.-or- contains multiple PEM-encoded keys with a recognized label. - The password is incorrect.-or-The base-64 decoded contents of the PEM text from do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.-or-The base-64 decoded contents of the PEM text from indicate the key is for an algorithm other than the algorithm represented by this instance.-or-The base-64 decoded contents of the PEM text from represent the key in a format that is not supported.-or-An error occurred while importing the key. + + Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is thrown to prevent importing a key when the key is ambiguous. + This method supports the ENCRYPTED PRIVATE KEY PEM label. + + + + does not contain a PEM-encoded key with a recognized label. + -or- + + contains multiple PEM-encoded keys with a recognized label. + + + The password is incorrect. + -or- + The base-64 decoded contents of the PEM text from do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure. + -or- + The base-64 decoded contents of the PEM text from indicate the key is for an algorithm other than the algorithm represented by this instance. + -or- + The base-64 decoded contents of the PEM text from represent the key in a format that is not supported. + -or- + An error occurred while importing the key. + @@ -1491,9 +1605,29 @@ The password to use for decrypting the key material. Imports an ML-KEM key from an encrypted RFC 7468 PEM-encoded string. To be added. - When the base-64 decoded contents of indicate an algorithm that uses PBKDF1 (Password-Based Key Derivation Function 1) or PBKDF2 (Password-Based Key Derivation Function 2), the password is converted to bytes via the UTF-8 encoding.Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is thrown to prevent importing a key when the key is ambiguous.This method supports the ENCRYPTED PRIVATE KEY PEM label. - does not contain a PEM-encoded key with a recognized label.-or- contains multiple PEM-encoded keys with a recognized label. - The password is incorrect.-or-The base-64 decoded contents of the PEM text from do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.-or-The base-64 decoded contents of the PEM text from indicate the key is for an algorithm other than the algorithm represented by this instance.-or-The base-64 decoded contents of the PEM text from represent the key in a format that is not supported.-or-An error occurred while importing the key. + + When the base-64 decoded contents of indicate an algorithm that uses PBKDF1 (Password-Based Key Derivation Function 1) or PBKDF2 (Password-Based Key Derivation Function 2), the password is converted to bytes via the UTF-8 encoding. + Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is thrown to prevent importing a key when the key is ambiguous. + This method supports the ENCRYPTED PRIVATE KEY PEM label. + + + + does not contain a PEM-encoded key with a recognized label. + -or- + + contains multiple PEM-encoded keys with a recognized label. + + + The password is incorrect. + -or- + The base-64 decoded contents of the PEM text from do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure. + -or- + The base-64 decoded contents of the PEM text from indicate the key is for an algorithm other than the algorithm represented by this instance. + -or- + The base-64 decoded contents of the PEM text from represent the key in a format that is not supported. + -or- + An error occurred while importing the key. + @@ -1614,8 +1748,30 @@ The text of the PEM key to import. Imports an ML-KEM key from an RFC 7468 PEM-encoded string. The imported ML-KEM key. - Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is raised to prevent importing a key when the key is ambiguous.This method supports the following PEM labels:PUBLIC KEYPRIVATE KEY - contains an encrypted PEM-encoded key.-or- contains multiple PEM-encoded ML-KEM keys.-or- contains no PEM-encoded ML-KEM keys. + + Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is raised to prevent importing a key when the key is ambiguous. + This method supports the following PEM labels: + + + + PUBLIC KEY + + + PRIVATE KEY + + + + + + + contains an encrypted PEM-encoded key. + -or- + + contains multiple PEM-encoded ML-KEM keys. + -or- + + contains no PEM-encoded ML-KEM keys. + An error occurred while importing the key. @@ -1734,7 +1890,16 @@ Imports an ML-KEM private key from a PKCS#8 PrivateKeyInfo structure. The imported key. To be added. - The contents of do not represent an ASN.1-BER-encoded PKCS#8 PrivateKeyInfo structure.-or-The PrivateKeyInfo value does not represent an ML-KEM key.-or- contains trailing data after the ASN.1 structure.-or-The algorithm-specific import failed. + + The contents of do not represent an ASN.1-BER-encoded PKCS#8 PrivateKeyInfo structure. + -or- + The PrivateKeyInfo value does not represent an ML-KEM key. + -or- + + contains trailing data after the ASN.1 structure. + -or- + The algorithm-specific import failed. + The platform does not support ML-KEM. Callers can use the property to determine if the platform supports ML-KEM. @@ -1773,7 +1938,13 @@ has a length that is not the from . - is .-or- is . + + + is . + -or- + + is . + An error occurred while importing the key. The platform does not support ML-KEM. Callers can use the property to determine if the platform supports ML-KEM. @@ -1905,7 +2076,13 @@ Imports an ML-KEM encapsulation key from an X.509 SubjectPublicKeyInfo structure. The imported key. To be added. - The contents of do not represent an ASN.1-DER-encoded X.509 SubjectPublicKeyInfo structure.-or-The SubjectPublicKeyInfo value does not represent an ML-KEM key.-or-The algorithm-specific import failed. + + The contents of do not represent an ASN.1-DER-encoded X.509 SubjectPublicKeyInfo structure. + -or- + The SubjectPublicKeyInfo value does not represent an ML-KEM key. + -or- + The algorithm-specific import failed. + The platform does not support ML-KEM. Callers can use the property to determine if the platform supports ML-KEM. @@ -1994,7 +2171,16 @@ is . This instance has been disposed. - This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key.-or- does not represent a valid password-based encryption algorithm. + + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + -or- + + does not represent a valid password-based encryption algorithm. + @@ -2054,7 +2240,16 @@ is . This instance has been disposed. - This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key.-or- does not represent a valid password-based encryption algorithm. + + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + -or- + + does not represent a valid password-based encryption algorithm. + @@ -2114,7 +2309,16 @@ or is . This instance has been disposed. - This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key.-or- does not represent a valid password-based encryption algorithm. + + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + -or- + + does not represent a valid password-based encryption algorithm. + diff --git a/xml/System.Security.Cryptography/MLKemAlgorithm.xml b/xml/System.Security.Cryptography/MLKemAlgorithm.xml index 840cbcf7be5..8c381a6a8a0 100644 --- a/xml/System.Security.Cryptography/MLKemAlgorithm.xml +++ b/xml/System.Security.Cryptography/MLKemAlgorithm.xml @@ -182,9 +182,10 @@ - To be added. - To be added. - To be added. + An object to be compared to the current object. + Compares two objects. + + if the objects are considered equal; otherwise, . To be added. diff --git a/xml/System.Security.Cryptography/MLKemCng.xml b/xml/System.Security.Cryptography/MLKemCng.xml index 56fd1c75ec6..a8cb401bece 100644 --- a/xml/System.Security.Cryptography/MLKemCng.xml +++ b/xml/System.Security.Cryptography/MLKemCng.xml @@ -21,7 +21,11 @@ Provides a Cryptography Next Generation (CNG) implementation of the Module-Lattice-Based Key-Encapsulation Mechanism (ML-KEM). - This algorithm is specified by FIPS-203.Developers are encouraged to program against the base class, rather than any specific derived class.The derived classes are intended for interop with the underlying system cryptographic libraries. + + This algorithm is specified by FIPS-203. + Developers are encouraged to program against the base class, rather than any specific derived class. + The derived classes are intended for interop with the underlying system cryptographic libraries. + diff --git a/xml/System.Security.Cryptography/MLKemOpenSsl.xml b/xml/System.Security.Cryptography/MLKemOpenSsl.xml index 2caf92fae08..a05a596146d 100644 --- a/xml/System.Security.Cryptography/MLKemOpenSsl.xml +++ b/xml/System.Security.Cryptography/MLKemOpenSsl.xml @@ -14,8 +14,8 @@ - To be added. - To be added. + Represents an ML-KEM key backed by OpenSSL. + <para><para> This algorithm is specified by FIPS-203.</para><para></para><para> Developers are encouraged to program against the <c>MLKem</c> base class, rather than any specific derived class.</para><para>The derived classes are intended for interop with the underlying system cryptographic libraries.</para><para></para> @@ -60,9 +60,19 @@ - To be added. - To be added. + The OpenSSL EVP_PKEY* value to use as the key, represented as a . + + Initializes a new instance of the class from an existing OpenSSL key represented as an EVP_PKEY*. + To be added. + + is . + + The handle in is not recognized as an ML-KEM key. + -or- + An error occurred while creating the algorithm instance. + + The handle in is already disposed. @@ -89,6 +99,7 @@ To be added. To be added. To be added. + @@ -113,6 +124,7 @@ To be added. To be added. To be added. + @@ -132,9 +144,10 @@ - To be added. - To be added. + Gets a representation of the cryptographic key. + A representation of the cryptographic key. To be added. + The object has already been disposed. @@ -161,6 +174,7 @@ To be added. To be added. To be added. + @@ -185,6 +199,7 @@ To be added. To be added. To be added. + @@ -209,6 +224,7 @@ To be added. To be added. To be added. + @@ -233,6 +249,7 @@ To be added. To be added. To be added. + @@ -260,6 +277,7 @@ To be added. To be added. To be added. + diff --git a/xml/System.Security.Cryptography/PemEncoding.xml b/xml/System.Security.Cryptography/PemEncoding.xml index 31d5f42f3c4..1f824980e9e 100644 --- a/xml/System.Security.Cryptography/PemEncoding.xml +++ b/xml/System.Security.Cryptography/PemEncoding.xml @@ -98,10 +98,14 @@ IETF RFC 7468 permits different decoding rules. This method always uses lax rule - To be added. - To be added. - To be added. - To be added. + The text containing the PEM-encoded data. + Finds the first PEM-encoded data. + + A value that specifies the location, label, and data location of the encoded data. + + <para><para>IETF RFC 7468 permits different decoding rules. This method always uses lax rules.</para><para> This does not validate the UTF-8 data outside of encapsulation boundaries and is ignored. It is the caller's responsibility to ensure the entire input is UTF-8 if required.</para><para></para> + + does not contain a well-formed PEM-encoded value. @@ -223,11 +227,15 @@ IETF RFC 7468 permits different decoding rules. This method always uses lax rule - To be added. - To be added. - To be added. - To be added. - To be added. + The text containing the PEM-encoded data. + + When this method returns, contains a value that specifies the location, label, and data location of the encoded data; or that specifies those locations as empty if no PEM-encoded data is found. + This parameter is treated as uninitialized. + + Attempts to find the first PEM-encoded data. + + if PEM-encoded data was found; otherwise . + <para><para>IETF RFC 7468 permits different decoding rules. This method always uses lax rules.</para><para> This does not validate the UTF-8 data outside of encapsulation boundaries and is ignored. It is the caller's responsibility to ensure the entire input is UTF-8 if required.</para><para></para> @@ -314,13 +322,31 @@ This method always wraps the base-64 encoded text to 64 characters, per the reco - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The label to write. + The data to write. + The buffer to receive the PEM-encoded text. + + When this method returns, this parameter contains the number of UTF-8 encoded bytes written to . + + + Tries to write the provided data and label as PEM-encoded data into a provided buffer. + + + + if is large enough to contain the PEM-encoded text, otherwise . + + + This method always wraps the base-64 encoded text to 64 characters, per the recommended wrapping of IETF RFC 7468. Unix-style line endings are used for line breaks. + + + + exceeds the maximum possible label length. + + -or- + + exceeds the maximum possible encoded data length. + + <para><para> The resulting PEM-encoded text is larger than <see cref="F:System.Int32.MaxValue" />.</para><para></para><para>- or -</para><para> <paramref name="utf8Label" /> contains invalid characters or is malformed UTF-8.</para><para></para> @@ -471,11 +497,15 @@ This method always wraps the base-64 encoded text to 64 characters, per the - To be added. - To be added. - To be added. - To be added. - To be added. + The label to encode. + The data to encode. + Creates an encoded PEM with the given label and data. + An array containing the bytes representing the UTF-8 encoding of the PEM. + + This method always wraps the base-64 encoded text to 64 characters, per the recommended wrapping of RFC-7468. Unix-style line endings are used for line breaks. + + <para><para> <paramref name="utf8Label" /> exceeds the maximum possible label length.</para><para></para><para> -or-</para><para></para><para> <paramref name="data" /> exceeds the maximum possible encoded data length.</para><para></para> + <para><para> The resulting PEM-encoded text is larger than <see cref="F:System.Int32.MaxValue" />.</para><para></para><para> -or-</para><para></para><para> <paramref name="utf8Label" /> contains invalid characters or is malformed UTF-8.</para><para></para> diff --git a/xml/System.Security.Cryptography/ProtectedData.xml b/xml/System.Security.Cryptography/ProtectedData.xml index 501f9e65a16..e93ae382a3a 100644 --- a/xml/System.Security.Cryptography/ProtectedData.xml +++ b/xml/System.Security.Cryptography/ProtectedData.xml @@ -176,12 +176,18 @@ If you use these methods during impersonation, you may receive the following err - To be added. - To be added. - To be added. - To be added. - To be added. + A buffer that contains the data to encrypt. + One of the enumeration values that specifies the scope of encryption. + + An optional additional byte span used to increase the complexity of the encryption, or empty for no additional complexity. + + Encrypts the data in a specified byte span and returns a byte array that contains the encrypted data. + A byte array representing the encrypted data. To be added. + The encryption failed. + The operating system does not support this method. + The system ran out of memory while encrypting the data. + Calls to the Protect method are supported on Windows operating systems only. @@ -208,13 +214,20 @@ If you use these methods during impersonation, you may receive the following err - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + A buffer that contains data to encrypt. + One of the enumeration values that specifies the scope of encryption. + The buffer to receive the encrypted data. + + An optional additional buffer used to increase the complexity of the encryption, or empty for no additional complexity. + + Encrypts the data in a specified buffer and writes the encrypted data to a destination buffer. + The total number of bytes written to To be added. + The buffer in is too small to hold the encrypted data. + The encryption failed. + The operating system does not support this method. + The system ran out of memory while encrypting the data. + Calls to the Protect method are supported on Windows operating systems only. @@ -242,14 +255,26 @@ If you use these methods during impersonation, you may receive the following err - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + A buffer that contains data to encrypt. + One of the enumeration values that specifies the scope of encryption. + The buffer to receive the encrypted data. + + When this method returns, contains the number of bytes written to . + + + An optional additional buffer used to increase the complexity of the encryption, or empty for no additional complexity. + + Encrypts the data in a specified buffer and writes the encrypted data to a destination buffer. + + + if was large enough to receive the decrypted data; otherwise, . + To be added. + The buffer in is too small to hold the encrypted data. + The encryption failed. + The operating system does not support this method. + The system ran out of memory while encrypting the data. + Calls to the Protect method are supported on Windows operating systems only. @@ -277,14 +302,26 @@ If you use these methods during impersonation, you may receive the following err - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + A buffer that contains data to decrypt. + One of the enumeration values that specifies the scope of encryption. + The buffer to receive the decrypted data. + + When this method returns, contains the number of bytes written to . + + + An optional additional buffer used to increase the complexity of the encryption, or empty for no additional complexity. + + Decrypts the data in a specified buffer and writes the decrypted data to a destination buffer. + + + if was large enough to receive the decrypted data; otherwise, . + To be added. + The buffer in is too small to hold the decrypted data. + The encryption failed. + The operating system does not support this method. + The system ran out of memory while encrypting the data. + Calls to the Unprotect method are supported on Windows operating systems only. @@ -396,12 +433,18 @@ If you use these methods during impersonation, you may receive the following err - To be added. - To be added. - To be added. - To be added. - To be added. + A buffer that contains data to decrypt. + One of the enumeration values that specifies the scope of encryption. + + An optional additional buffer used to increase the complexity of the encryption, or empty for no additional complexity. + + Decrypts the data in a specified byte array and returns a byte array that contains the decrypted data. + A byte array representing the encrypted data. To be added. + The encryption failed. + The operating system does not support this method. + The system ran out of memory while decrypting the data. + Calls to the Unprotect method are supported on Windows operating systems only. @@ -428,13 +471,20 @@ If you use these methods during impersonation, you may receive the following err - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + A buffer that contains data to decrypt. + One of the enumeration values that specifies the scope of encryption. + The buffer to receive the decrypted data. + + An optional additional buffer used to increase the complexity of the encryption, or empty for no additional complexity. + + Decrypts the data in a specified buffer and writes the decrypted data to a destination buffer. + The total number of bytes written to To be added. + The buffer in is too small to hold the decrypted data. + The encryption failed. + The operating system does not support this method. + The system ran out of memory while encrypting the data. + Calls to the Unprotect method are supported on Windows operating systems only. diff --git a/xml/System.Security.Cryptography/RSA.xml b/xml/System.Security.Cryptography/RSA.xml index efed2110036..2d2a4656576 100644 --- a/xml/System.Security.Cryptography/RSA.xml +++ b/xml/System.Security.Cryptography/RSA.xml @@ -504,6 +504,9 @@ The decryption operation failed. The decryption operation failed. This implementation has not implemented one of or . + + + @@ -560,6 +563,9 @@ The decryption operation failed. The decryption operation failed. This implementation has not implemented one of or . + + + @@ -758,6 +764,9 @@ The length of data is too long for the combination of This implementation has not implemented one of or . + + + @@ -818,6 +827,9 @@ The length of data is too long for the combination of This implementation has not implemented one of or . + + + diff --git a/xml/System.Security.Cryptography/RandomNumberGenerator.xml b/xml/System.Security.Cryptography/RandomNumberGenerator.xml index 03f8c80f453..f5328758ae4 100644 --- a/xml/System.Security.Cryptography/RandomNumberGenerator.xml +++ b/xml/System.Security.Cryptography/RandomNumberGenerator.xml @@ -897,6 +897,8 @@ To create a random number generator, call the @System.Security.Cryptography.Rand is empty. is not zero or a positive number. + + @@ -951,6 +953,8 @@ To create a random number generator, call the @System.Security.Cryptography.Rand To be added. is empty. + + @@ -1101,6 +1105,9 @@ To create a random number generator, call the @System.Security.Cryptography.Rand is empty. is not zero or a positive number. + + + diff --git a/xml/System.Security.Cryptography/Shake128.xml b/xml/System.Security.Cryptography/Shake128.xml index 3197c79859d..56455517eec 100644 --- a/xml/System.Security.Cryptography/Shake128.xml +++ b/xml/System.Security.Cryptography/Shake128.xml @@ -181,6 +181,7 @@ is negative. The object has already been disposed. + @@ -208,6 +209,7 @@ Fills the buffer with the hash for the data accumulated from prior calls to the AppendData methods, without resetting the object to its initial state. To be added. The object has already been disposed. + @@ -238,6 +240,7 @@ is negative. The object has already been disposed. + @@ -265,6 +268,7 @@ Fills the buffer with the hash for the data accumulated from prior calls to the AppendData methods, and resets the object to its initial state. To be added. The object has already been disposed. + diff --git a/xml/System.Security.Cryptography/Shake256.xml b/xml/System.Security.Cryptography/Shake256.xml index f311d6f1b4f..f4b41aa852a 100644 --- a/xml/System.Security.Cryptography/Shake256.xml +++ b/xml/System.Security.Cryptography/Shake256.xml @@ -181,6 +181,7 @@ is negative. The object has already been disposed. + @@ -208,6 +209,7 @@ Fills the buffer with the hash for the data accumulated from prior calls to the AppendData methods, without resetting the object to its initial state. To be added. The object has already been disposed. + @@ -238,6 +240,7 @@ is negative. The object has already been disposed. + @@ -265,6 +268,7 @@ Fills the buffer with the hash for the data accumulated from prior calls to the AppendData methods, and resets the object to its initial state. To be added. The object has already been disposed. + diff --git a/xml/System.Security.Cryptography/SlhDsa.xml b/xml/System.Security.Cryptography/SlhDsa.xml index d6e42f7b0f4..2a1d35074d1 100644 --- a/xml/System.Security.Cryptography/SlhDsa.xml +++ b/xml/System.Security.Cryptography/SlhDsa.xml @@ -33,7 +33,11 @@ Represents an SLH-DSA key. - This algorithm is specified by FIPS-205.Developers are encouraged to program against the base class, rather than any specific derived class.The derived classes are intended for interop with the underlying system cryptographic libraries. + + This algorithm is specified by FIPS-205. + Developers are encouraged to program against the base class, rather than any specific derived class. + The derived classes are intended for interop with the underlying system cryptographic libraries. + @@ -112,7 +116,7 @@ - To be added. + Releases all resources used by the class. To be added. @@ -188,7 +192,19 @@ is . This instance has been disposed. - specifies a KDF that requires a char-based password.-or- does not represent a valid password-based encryption algorithm.-or-This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key. + + + specifies a KDF that requires a char-based password. + -or- + + does not represent a valid password-based encryption algorithm. + -or- + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + @@ -230,7 +246,16 @@ is . This instance has been disposed. - does not represent a valid password-based encryption algorithm.-or-This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key. + + + does not represent a valid password-based encryption algorithm. + -or- + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + @@ -308,7 +333,19 @@ is . This instance has been disposed. - specifies a KDF that requires a char-based password.-or- does not represent a valid password-based encryption algorithm.-or-This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key. + + + specifies a KDF that requires a char-based password. + -or- + + does not represent a valid password-based encryption algorithm. + -or- + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + @@ -352,7 +389,16 @@ is . This instance has been disposed. - does not represent a valid password-based encryption algorithm.-or-This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key. + + + does not represent a valid password-based encryption algorithm. + -or- + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + @@ -777,7 +823,20 @@ Imports an SLH-DSA private key from a PKCS#8 EncryptedPrivateKeyInfo structure. The imported key. To be added. - The contents of do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.-or-The specified password is incorrect.-or-The EncryptedPrivateKeyInfo indicates the Key Derivation Function (KDF) to apply is the legacy PKCS#12 KDF, which requires -based passwords.-or-The value does not represent an SLH-DSA key.-or- contains trailing data after the ASN.1 structure.-or-The algorithm-specific import failed. + + The contents of do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure. + -or- + The specified password is incorrect. + -or- + The EncryptedPrivateKeyInfo indicates the Key Derivation Function (KDF) to apply is the legacy PKCS#12 KDF, which requires -based passwords. + -or- + The value does not represent an SLH-DSA key. + -or- + + contains trailing data after the ASN.1 structure. + -or- + The algorithm-specific import failed. + The platform does not support SLH-DSA. Callers can use the property to determine if the platform supports SLH-DSA. @@ -818,7 +877,18 @@ Imports an SLH-DSA private key from a PKCS#8 EncryptedPrivateKeyInfo structure. The imported key. To be added. - The contents of do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.-or-The specified password is incorrect.-or-The value does not represent an SLH-DSA key.-or- contains trailing data after the ASN.1 structure.-or-The algorithm-specific import failed. + + The contents of do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure. + -or- + The specified password is incorrect. + -or- + The value does not represent an SLH-DSA key. + -or- + + contains trailing data after the ASN.1 structure. + -or- + The algorithm-specific import failed. + The platform does not support SLH-DSA. Callers can use the property to determine if the platform supports SLH-DSA. @@ -892,9 +962,28 @@ The bytes to use as a password when decrypting the key material. Imports an SLH-DSA key from an encrypted RFC 7468 PEM-encoded string. To be added. - Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is thrown to prevent importing a key when the key is ambiguous.This method supports the <c>ENCRYPTED PRIVATE KEY</c> PEM label. - does not contain a PEM-encoded key with a recognized label.-or- contains multiple PEM-encoded keys with a recognized label. - The password is incorrect.-or-The base-64 decoded contents of the PEM text from do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.-or-The base-64 decoded contents of the PEM text from indicate the key is for an algorithm other than the algorithm represented by this instance.-or-The base-64 decoded contents of the PEM text from represent the key in a format that is not supported.-or-An error occurred while importing the key. + + Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is thrown to prevent importing a key when the key is ambiguous. + This method supports the <c>ENCRYPTED PRIVATE KEY</c> PEM label. + + + + does not contain a PEM-encoded key with a recognized label. + -or- + + contains multiple PEM-encoded keys with a recognized label. + + + The password is incorrect. + -or- + The base-64 decoded contents of the PEM text from do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure. + -or- + The base-64 decoded contents of the PEM text from indicate the key is for an algorithm other than the algorithm represented by this instance. + -or- + The base-64 decoded contents of the PEM text from represent the key in a format that is not supported. + -or- + An error occurred while importing the key. + The platform does not support SLH-DSA. Callers can use the property to determine if the platform supports SLH-DSA. @@ -934,9 +1023,29 @@ The password to use for decrypting the key material. Imports an SLH-DSA key from an encrypted RFC 7468 PEM-encoded string. To be added. - When the base-64 decoded contents of indicate an algorithm that uses PBKDF1 (Password-Based Key Derivation Function 1) or PBKDF2 (Password-Based Key Derivation Function 2), the password is converted to bytes via the UTF-8 encoding.Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is thrown to prevent importing a key when the key is ambiguous.This method supports the <c>ENCRYPTED PRIVATE KEY</c> PEM label. - does not contain a PEM-encoded key with a recognized label.-or- contains multiple PEM-encoded keys with a recognized label. - The password is incorrect.-or-The base-64 decoded contents of the PEM text from do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.-or-The base-64 decoded contents of the PEM text from indicate the key is for an algorithm other than the algorithm represented by this instance.-or-The base-64 decoded contents of the PEM text from represent the key in a format that is not supported.-or-An error occurred while importing the key. + + When the base-64 decoded contents of indicate an algorithm that uses PBKDF1 (Password-Based Key Derivation Function 1) or PBKDF2 (Password-Based Key Derivation Function 2), the password is converted to bytes via the UTF-8 encoding. + Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is thrown to prevent importing a key when the key is ambiguous. + This method supports the <c>ENCRYPTED PRIVATE KEY</c> PEM label. + + + + does not contain a PEM-encoded key with a recognized label. + -or- + + contains multiple PEM-encoded keys with a recognized label. + + + The password is incorrect. + -or- + The base-64 decoded contents of the PEM text from do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure. + -or- + The base-64 decoded contents of the PEM text from indicate the key is for an algorithm other than the algorithm represented by this instance. + -or- + The base-64 decoded contents of the PEM text from represent the key in a format that is not supported. + -or- + An error occurred while importing the key. + The platform does not support SLH-DSA. Callers can use the property to determine if the platform supports SLH-DSA. @@ -1042,8 +1151,30 @@ The text of the PEM key to import. Imports an SLH-DSA key from an RFC 7468 PEM-encoded string. The imported SLH-DSA key. - Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is raised to prevent importing a key when the key is ambiguous.This method supports the following PEM labels:PUBLIC KEYPRIVATE KEY - contains an encrypted PEM-encoded key.-or- contains multiple PEM-encoded SLH-DSA keys.-or- contains no PEM-encoded SLH-DSA keys. + + Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is raised to prevent importing a key when the key is ambiguous. + This method supports the following PEM labels: + + + + PUBLIC KEY + + + PRIVATE KEY + + + + + + + contains an encrypted PEM-encoded key. + -or- + + contains multiple PEM-encoded SLH-DSA keys. + -or- + + contains no PEM-encoded SLH-DSA keys. + An error occurred while importing the key. The platform does not support SLH-DSA. Callers can use the property to determine if the platform supports SLH-DSA. @@ -1147,7 +1278,16 @@ Imports an SLH-DSA private key from a PKCS#8 PrivateKeyInfo structure. The imported key. To be added. - The contents of do not represent an ASN.1-BER-encoded PKCS#8 PrivateKeyInfo structure.-or-The PrivateKeyInfo value does not represent an SLH-DSA key.-or- contains trailing data after the ASN.1 structure.-or-The algorithm-specific import failed. + + The contents of do not represent an ASN.1-BER-encoded PKCS#8 PrivateKeyInfo structure. + -or- + The PrivateKeyInfo value does not represent an SLH-DSA key. + -or- + + contains trailing data after the ASN.1 structure. + -or- + The algorithm-specific import failed. + The platform does not support SLH-DSA. Callers can use the property to determine if the platform supports SLH-DSA. @@ -1378,7 +1518,16 @@ Imports an SLH-DSA public key from an X.509 SubjectPublicKeyInfo structure. The imported key. To be added. - The contents of do not represent an ASN.1-DER-encoded X.509 SubjectPublicKeyInfo structure.-or-The SubjectPublicKeyInfo value does not represent an SLH-DSA key.-or- contains trailing data after the ASN.1 structure.-or-The algorithm-specific import failed. + + The contents of do not represent an ASN.1-DER-encoded X.509 SubjectPublicKeyInfo structure. + -or- + The SubjectPublicKeyInfo value does not represent an SLH-DSA key. + -or- + + contains trailing data after the ASN.1 structure. + -or- + The algorithm-specific import failed. + The platform does not support SLH-DSA. Callers can use the property to determine if the platform supports SLH-DSA. @@ -1588,7 +1737,17 @@ has a length in excess of 255 bytes. This instance has been disposed. - is not a well-formed OID.-or- is a well-known algorithm and does not have the expected length.-or-The instance represents only a public key.-or-An error occurred while signing the hash. + + + is not a well-formed OID. + -or- + + is a well-known algorithm and does not have the expected length. + -or- + The instance represents only a public key. + -or- + An error occurred while signing the hash. + @@ -1642,7 +1801,17 @@ has a in excess of 255 bytes. This instance has been disposed. - is not a well-formed OID.-or- is a well-known algorithm and does not have the expected length.-or-The instance represents only a public key.-or-An error occurred while signing the hash. + + + is not a well-formed OID. + -or- + + is a well-known algorithm and does not have the expected length. + -or- + The instance represents only a public key. + -or- + An error occurred while signing the hash. + @@ -1765,7 +1934,19 @@ is . This instance has been disposed. - specifies a KDF that requires a char-based password.-or- does not represent a valid password-based encryption algorithm.-or-This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key. + + + specifies a KDF that requires a char-based password. + -or- + + does not represent a valid password-based encryption algorithm. + -or- + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + @@ -1819,7 +2000,16 @@ is . This instance has been disposed. - does not represent a valid password-based encryption algorithm.-or-This instance only represents a public key.-or-The private key is not exportable.-or-An error occurred while exporting the key. + + + does not represent a valid password-based encryption algorithm. + -or- + This instance only represents a public key. + -or- + The private key is not exportable. + -or- + An error occurred while exporting the key. + @@ -2165,7 +2355,15 @@ has a length in excess of 255 bytes. This instance has been disposed. - is not a well-formed OID.-or- is a well-known algorithm and does not have the expected length.-or-An error occurred while verifying the hash. + + + is not a well-formed OID. + -or- + + is a well-known algorithm and does not have the expected length. + -or- + An error occurred while verifying the hash. + @@ -2218,7 +2416,15 @@ has a in excess of 255 bytes. This instance has been disposed. - is not a well-formed OID.-or- is a well-known algorithm and does not have the expected length.-or-An error occurred while verifying the hash. + + + is not a well-formed OID. + -or- + + is a well-known algorithm and does not have the expected length. + -or- + An error occurred while verifying the hash. + diff --git a/xml/System.Security.Cryptography/SlhDsaAlgorithm.xml b/xml/System.Security.Cryptography/SlhDsaAlgorithm.xml index 255d4356194..b67b0853dec 100644 --- a/xml/System.Security.Cryptography/SlhDsaAlgorithm.xml +++ b/xml/System.Security.Cryptography/SlhDsaAlgorithm.xml @@ -110,9 +110,10 @@ - To be added. - To be added. - To be added. + An object to be compared to the current object. + Compares two objects. + + if the objects are considered equal; otherwise, . To be added. diff --git a/xml/System.Security.Cryptography/SlhDsaCng.xml b/xml/System.Security.Cryptography/SlhDsaCng.xml index d52cfb8f8e7..039dcaf856a 100644 --- a/xml/System.Security.Cryptography/SlhDsaCng.xml +++ b/xml/System.Security.Cryptography/SlhDsaCng.xml @@ -27,7 +27,11 @@ Provides a Cryptography Next Generation (CNG) implementation of the Stateless Hash-Based Digital Signature Algorithm (SLH-DSA). - This algorithm is specified by FIPS-205.Developers are encouraged to program against the base class, rather than any specific derived class.The derived classes are intended for interop with the underlying system cryptographic libraries. + + This algorithm is specified by FIPS-205. + Developers are encouraged to program against the base class, rather than any specific derived class. + The derived classes are intended for interop with the underlying system cryptographic libraries. + diff --git a/xml/System.Security.Cryptography/SlhDsaOpenSsl.xml b/xml/System.Security.Cryptography/SlhDsaOpenSsl.xml index f5443bffd5c..6bb6f038a8c 100644 --- a/xml/System.Security.Cryptography/SlhDsaOpenSsl.xml +++ b/xml/System.Security.Cryptography/SlhDsaOpenSsl.xml @@ -20,8 +20,8 @@ - To be added. - To be added. + Represents an SLH-DSA key backed by OpenSSL. + <para><para> This algorithm is specified by FIPS-205.</para><para></para><para> Developers are encouraged to program against the <c>SlhDsa</c> base class, rather than any specific derived class.</para><para>The derived classes are intended for interop with the underlying system cryptographic libraries.</para><para></para> @@ -66,9 +66,19 @@ - To be added. - To be added. + The OpenSSL EVP_PKEY* value to use as the key, represented as a . + + Initializes a new instance of the class from an existing OpenSSL key represented as an EVP_PKEY*. + To be added. + + is . + + The handle in is not recognized as an SLH-DSA key. + -or- + An error occurred while creating the algorithm instance. + + The handle in is already disposed. @@ -93,6 +103,7 @@ To be added. To be added. To be added. + @@ -112,9 +123,10 @@ - To be added. - To be added. + Gets a representation of the cryptographic key. + A representation of the cryptographic key. To be added. + The object has already been disposed. diff --git a/xml/System.Security.Cryptography/SymmetricAlgorithm.xml b/xml/System.Security.Cryptography/SymmetricAlgorithm.xml index 6bedc94a2eb..5962f21287d 100644 --- a/xml/System.Security.Cryptography/SymmetricAlgorithm.xml +++ b/xml/System.Security.Cryptography/SymmetricAlgorithm.xml @@ -3173,9 +3173,10 @@ Allows an to attempt to free resources and perfor - To be added. - To be added. + The new key for this instance. + Sets the key for this instance. To be added. + <para><para> The key size is invalid.</para><para></para><para>-or-</para><para> An error occurred while setting the key.</para><para></para> @@ -3203,9 +3204,10 @@ Allows an to attempt to free resources and perfor - To be added. - To be added. - To be added. + The new key for this instance. + Sets the key for this instance. + <para><para> <see cref="T:System.Security.Cryptography.SymmetricAlgorithm" /> will only call this method after validating the length of <paramref name="key" /> against <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.LegalKeySizes" />.</para><para>Other callers are expected to similarly ensure that this method is only called with validly-sized inputs.</para><para></para><para> The base class implementation is to assign the <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" /> property.</para><para>Derived types should override this method to avoid copying the key into a new array.</para><para></para> + An error occurred while setting the key. From 1d8d65039039551da9ee56bd704900b1c9d48da5 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 10:01:03 -0700 Subject: [PATCH 22/39] System.Text.Json docs --- xml/System.Text.Json.Nodes/JsonArray.xml | 19 +- xml/System.Text.Json.Nodes/JsonNode.xml | 5 +- xml/System.Text.Json.Nodes/JsonObject.xml | 42 ++-- xml/System.Text.Json.Nodes/JsonValue.xml | 1 + .../BinaryDataJsonConverter.xml | 2 +- .../JsonIgnoreCondition.xml | 4 +- .../JsonKnownReferenceHandler.xml | 8 +- .../JsonSourceGenerationOptionsAttribute.xml | 4 +- .../JsonStringEnumMemberNameAttribute.xml | 8 +- xml/System.Text.Json/JsonDocument.xml | 1 + xml/System.Text.Json/JsonDocumentOptions.xml | 4 +- .../JsonElement+ArrayEnumerator.xml | 1 + .../JsonElement+ObjectEnumerator.xml | 1 + xml/System.Text.Json/JsonElement.xml | 68 +++-- xml/System.Text.Json/JsonReaderOptions.xml | 6 +- xml/System.Text.Json/JsonSerializer.xml | 236 ++++++++++++------ .../JsonSerializerDefaults.xml | 2 +- .../JsonSerializerOptions.xml | 12 +- xml/System.Text.Json/Utf8JsonWriter.xml | 34 ++- 19 files changed, 311 insertions(+), 147 deletions(-) diff --git a/xml/System.Text.Json.Nodes/JsonArray.xml b/xml/System.Text.Json.Nodes/JsonArray.xml index 1f747abede7..31e17d2974b 100644 --- a/xml/System.Text.Json.Nodes/JsonArray.xml +++ b/xml/System.Text.Json.Nodes/JsonArray.xml @@ -634,10 +634,12 @@ It is safe to perform multiple concurrent read operations on a - To be added. - To be added. - To be added. + The predicate that defines the conditions of the elements to remove. + Removes all the elements that match the conditions defined by the specified predicate. + The number of elements removed from the . To be added. + + is . @@ -693,10 +695,14 @@ It is safe to perform multiple concurrent read operations on a - To be added. - To be added. - To be added. + The zero-based starting index of the range of elements to remove. + The number of elements to remove. + Removes a range of elements from the . To be added. + + or is less than 0. + + and do not denote a valid range of elements in the . @@ -838,6 +844,7 @@ This member is an explicit interface member implementation. It can be used only Writes the into the provided as JSON. To be added. The parameter is . + diff --git a/xml/System.Text.Json.Nodes/JsonNode.xml b/xml/System.Text.Json.Nodes/JsonNode.xml index 0b49bd02167..a8aa7d1a93b 100644 --- a/xml/System.Text.Json.Nodes/JsonNode.xml +++ b/xml/System.Text.Json.Nodes/JsonNode.xml @@ -16,8 +16,7 @@ System.Object - - + [System.Runtime.CompilerServices.Nullable(0)] @@ -27,6 +26,7 @@ The base class that represents a single node within a mutable JSON document. To be added. + @@ -289,6 +289,7 @@ The underlying value of a after deserial The current cannot be represented as a {TValue}. The current is not a or is not compatible with {TValue}. + diff --git a/xml/System.Text.Json.Nodes/JsonObject.xml b/xml/System.Text.Json.Nodes/JsonObject.xml index fa39ae81ca6..f6f8f448576 100644 --- a/xml/System.Text.Json.Nodes/JsonObject.xml +++ b/xml/System.Text.Json.Nodes/JsonObject.xml @@ -1030,11 +1030,14 @@ This member is an explicit interface member implementation. It can be used only - To be added. - To be added. - To be added. - To be added. + The property name of the element to add. + The value of the element to add. + Adds an element with the provided name and value to the , if a property named doesn't already exist. + + if the property didn't exist and the element was added; otherwise, . To be added. + + is . @@ -1065,12 +1068,15 @@ This member is an explicit interface member implementation. It can be used only - To be added. - To be added. - To be added. - To be added. - To be added. + The property name of the element to add. + The value of the element to add. + The index of the added or existing . This is always a valid index into the . + Adds an element with the provided name and value to the , if a property named doesn't already exist. + + if the property didn't exist and the element was added; otherwise, . To be added. + + is . @@ -1110,6 +1116,8 @@ This member is an explicit interface member implementation. It can be used only if a property with the specified name was found; otherwise, . To be added. + + is . @@ -1140,12 +1148,17 @@ This member is an explicit interface member implementation. It can be used only - To be added. - To be added. - To be added. - To be added. - To be added. + The property name of the value to get. + + When this method returns, it contains the value associated with the specified property name, if the property name is found; otherwise . + + The index of if found; otherwise, -1. + Gets the value associated with the specified property name. + + if the contains an element with the specified property name; otherwise, . To be added. + + is . @@ -1183,6 +1196,7 @@ This member is an explicit interface member implementation. It can be used only Writes the into the provided as JSON. To be added. The parameter is . + diff --git a/xml/System.Text.Json.Nodes/JsonValue.xml b/xml/System.Text.Json.Nodes/JsonValue.xml index e192006796a..54ffa3b1a3b 100644 --- a/xml/System.Text.Json.Nodes/JsonValue.xml +++ b/xml/System.Text.Json.Nodes/JsonValue.xml @@ -1270,6 +1270,7 @@ The underlying value of a after deserial ]]> + diff --git a/xml/System.Text.Json.Serialization/BinaryDataJsonConverter.xml b/xml/System.Text.Json.Serialization/BinaryDataJsonConverter.xml index 53115a4441f..f298695ab5a 100644 --- a/xml/System.Text.Json.Serialization/BinaryDataJsonConverter.xml +++ b/xml/System.Text.Json.Serialization/BinaryDataJsonConverter.xml @@ -45,7 +45,7 @@ - To be added. + Initializes a new instance of the . To be added. diff --git a/xml/System.Text.Json.Serialization/JsonIgnoreCondition.xml b/xml/System.Text.Json.Serialization/JsonIgnoreCondition.xml index bf0313661d7..08cbdaeea9c 100644 --- a/xml/System.Text.Json.Serialization/JsonIgnoreCondition.xml +++ b/xml/System.Text.Json.Serialization/JsonIgnoreCondition.xml @@ -91,7 +91,7 @@ 5 - To be added. + Property is ignored during deserialization @@ -111,7 +111,7 @@ 4 - To be added. + Property is ignored during serialization diff --git a/xml/System.Text.Json.Serialization/JsonKnownReferenceHandler.xml b/xml/System.Text.Json.Serialization/JsonKnownReferenceHandler.xml index 434c368585b..194b6fd5091 100644 --- a/xml/System.Text.Json.Serialization/JsonKnownReferenceHandler.xml +++ b/xml/System.Text.Json.Serialization/JsonKnownReferenceHandler.xml @@ -13,7 +13,7 @@ System.Enum - To be added. + The to be used at run time. To be added. @@ -34,7 +34,7 @@ 2 - To be added. + Specifies that the built-in be used to ignore cyclic references. @@ -54,7 +54,7 @@ 1 - To be added. + Specifies that the built-in be used to handle references. @@ -74,7 +74,7 @@ 0 - To be added. + Specifies that circular references should throw exceptions. diff --git a/xml/System.Text.Json.Serialization/JsonSourceGenerationOptionsAttribute.xml b/xml/System.Text.Json.Serialization/JsonSourceGenerationOptionsAttribute.xml index ef7af1547a0..a2a5e52aaa7 100644 --- a/xml/System.Text.Json.Serialization/JsonSourceGenerationOptionsAttribute.xml +++ b/xml/System.Text.Json.Serialization/JsonSourceGenerationOptionsAttribute.xml @@ -94,7 +94,7 @@ System.Boolean - To be added. + Specifies the default value of when set. To be added. To be added. @@ -566,7 +566,7 @@ System.Text.Json.Serialization.JsonKnownReferenceHandler - To be added. + Specifies the default value of when set. To be added. To be added. diff --git a/xml/System.Text.Json.Serialization/JsonStringEnumMemberNameAttribute.xml b/xml/System.Text.Json.Serialization/JsonStringEnumMemberNameAttribute.xml index d2eaeb186a1..1eefd9485d8 100644 --- a/xml/System.Text.Json.Serialization/JsonStringEnumMemberNameAttribute.xml +++ b/xml/System.Text.Json.Serialization/JsonStringEnumMemberNameAttribute.xml @@ -25,7 +25,7 @@ - To be added. + Determines the string value that should be used when serializing an enum member. To be added. @@ -46,8 +46,8 @@ - To be added. - To be added. + The name to apply to the current enum member. + Creates new attribute instance with a specified enum member name. To be added. @@ -68,7 +68,7 @@ System.String - To be added. + Gets the name of the enum member. To be added. To be added. diff --git a/xml/System.Text.Json/JsonDocument.xml b/xml/System.Text.Json/JsonDocument.xml index af1f5cf43a4..a5e565880a8 100644 --- a/xml/System.Text.Json/JsonDocument.xml +++ b/xml/System.Text.Json/JsonDocument.xml @@ -66,6 +66,7 @@ For more information, see [How to use the JSON DOM, Utf8JsonReader, and Utf8Json Releases the resources used by this instance. To be added. + diff --git a/xml/System.Text.Json/JsonDocumentOptions.xml b/xml/System.Text.Json/JsonDocumentOptions.xml index 930890b2e52..0f5c9a7dde6 100644 --- a/xml/System.Text.Json/JsonDocumentOptions.xml +++ b/xml/System.Text.Json/JsonDocumentOptions.xml @@ -49,9 +49,9 @@ For more information, see [How to serialize and deserialize JSON](/dotnet/standa System.Boolean - To be added. + Defines whether duplicate property names are allowed when deserializing JSON objects. To be added. - To be added. + By default, it's set to . If set to , is thrown when a duplicate property name is encountered during deserialization. diff --git a/xml/System.Text.Json/JsonElement+ArrayEnumerator.xml b/xml/System.Text.Json/JsonElement+ArrayEnumerator.xml index 9912a454bbf..1f784a511e2 100644 --- a/xml/System.Text.Json/JsonElement+ArrayEnumerator.xml +++ b/xml/System.Text.Json/JsonElement+ArrayEnumerator.xml @@ -109,6 +109,7 @@ Releases the resources used by this instance. To be added. + diff --git a/xml/System.Text.Json/JsonElement+ObjectEnumerator.xml b/xml/System.Text.Json/JsonElement+ObjectEnumerator.xml index 503395fb301..220f149c953 100644 --- a/xml/System.Text.Json/JsonElement+ObjectEnumerator.xml +++ b/xml/System.Text.Json/JsonElement+ObjectEnumerator.xml @@ -109,6 +109,7 @@ Releases the resources used by this instance. To be added. + diff --git a/xml/System.Text.Json/JsonElement.xml b/xml/System.Text.Json/JsonElement.xml index e01920118c0..e0f0c6baf27 100644 --- a/xml/System.Text.Json/JsonElement.xml +++ b/xml/System.Text.Json/JsonElement.xml @@ -101,11 +101,12 @@ If this is itself the output of a previous c - To be added. - To be added. - To be added. - To be added. - To be added. + The first to compare. + The second to compare. + Compares the values of two values for equality, including the values of all descendant elements. + + if the two values are equal; otherwise, . + Deep equality of two JSON values is defined as follows: JSON values of different kinds are not equal. JSON constants , , and only equal themselves. JSON numbers are equal if and only if they have they have equivalent decimal representations, with no rounding being used. JSON strings are equal if and only if they are equal using ordinal string comparison. JSON arrays are equal if and only if they are of equal length and each of their elements are pairwise equal. JSON objects are equal if and only if they have the same number of properties and each property in the first object has a corresponding property in the second object with the same name and equal value. The order of properties is not significant, with the exception of repeated properties that must be specified in the same order (with interleaving allowed). @@ -332,6 +333,7 @@ This method does not create a byte representation of values other than Base64 en This value's is not . The value is not encoded as Base64 text and hence cannot be decoded to bytes. The parent has been disposed. + @@ -372,6 +374,7 @@ This method only creates a DateTime representation of JSON strings that conform This value's is not . The value cannot be read as a . The parent has been disposed. + @@ -412,6 +415,7 @@ This method only creates a DateTimeOffset representation of JSON strings that co This value's is not . The value cannot be read as a . The parent has been disposed. + @@ -452,6 +456,7 @@ This method does not parse the contents of a JSON string value. This value's is not . The value cannot be represented as a . The parent has been disposed. + @@ -534,6 +539,7 @@ This method does not create a Guid representation of values other than JSON stri This value's is not . The value cannot be represented as a . The parent has been disposed. + @@ -685,6 +691,7 @@ For more information, see [How to write custom serializers and deserializers wit This value's is not . No property was found with the requested name. The parent has been disposed. + @@ -730,6 +737,7 @@ If a property is defined multiple times for the same object, the method matches This value's is not . No property was found with the requested name. The parent has been disposed. + @@ -777,6 +785,7 @@ If a property is defined multiple times for the same object, the method matches is . The parent has been disposed. + @@ -797,9 +806,11 @@ If a property is defined multiple times for the same object, the method matches - To be added. - To be added. + Get the number of properties contained within the current object value. + The number of properties contained within the current object value. To be added. + This value's is not . + The parent has been disposed. @@ -952,6 +963,7 @@ This method does not create a string representation of values other than JSON st This value's is neither nor . The parent has been disposed. + @@ -1154,11 +1166,15 @@ This method does not parse the contents of a JSON string value. - To be added. - To be added. - To be added. - To be added. + The JSON text to parse. + Options to control the reader behavior during parsing. + Parses UTF8-encoded text representing a single JSON value into a . + A representation of the JSON value. To be added. + + does not represent a valid single JSON value. + + contains unsupported options. @@ -1187,11 +1203,15 @@ This method does not parse the contents of a JSON string value. - To be added. - To be added. - To be added. - To be added. + The JSON text to parse. + Options to control the reader behavior during parsing. + Parses text representing a single JSON value into a . + A representation of the JSON value. To be added. + + does not represent a valid single JSON value. + + contains unsupported options. @@ -1220,11 +1240,17 @@ This method does not parse the contents of a JSON string value. - To be added. - To be added. - To be added. - To be added. + The JSON text to parse. + Options to control the reader behavior during parsing. + Parses text representing a single JSON value into a . + A representation of the JSON value. To be added. + + is . + + does not represent a valid single JSON value. + + contains unsupported options. @@ -1538,6 +1564,7 @@ This method does not parse the contents of a JSON string value. This value's is not . The parent has been disposed. + @@ -1804,6 +1831,7 @@ For more information, see [How to write custom serializers and deserializers wit This value's is not . The parent has been disposed. + @@ -1851,6 +1879,7 @@ If a property is defined multiple times for the same object, the method matches This value's is not . The parent has been disposed. + @@ -1900,6 +1929,7 @@ If a property is defined multiple times for the same object, the method matches is . The parent has been disposed. + diff --git a/xml/System.Text.Json/JsonReaderOptions.xml b/xml/System.Text.Json/JsonReaderOptions.xml index a3a197b5702..c3bddd5ab3b 100644 --- a/xml/System.Text.Json/JsonReaderOptions.xml +++ b/xml/System.Text.Json/JsonReaderOptions.xml @@ -56,9 +56,11 @@ For more information, see [How to write custom serializers and deserializers wit System.Boolean - To be added. + + Defines whether the should tolerate zero or more top-level JSON values that are whitespace separated. + To be added. - To be added. + By default, it's set to , and is thrown if trailing content is encountered after the first top-level JSON value. diff --git a/xml/System.Text.Json/JsonSerializer.xml b/xml/System.Text.Json/JsonSerializer.xml index 169f5fbac6f..04b8c36ac55 100644 --- a/xml/System.Text.Json/JsonSerializer.xml +++ b/xml/System.Text.Json/JsonSerializer.xml @@ -2481,12 +2481,20 @@ The used to create the instance of the - To be added. - To be added. - To be added. - To be added. - To be added. + JSON data to parse. + Metadata about the type to convert. + The that can be used to cancel the read operation. + + Reads the UTF-8 encoded text representing a single JSON value into an instance specified by the . + The PipeReader will be read to completion. + + A representation of the JSON value. To be added. + + or is . + + The JSON is invalid, or when there is remaining data in the PipeReader. + @@ -2575,13 +2583,24 @@ The used to create the instance of the - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + JSON data to parse. + The type of the object to convert to and return. + Options to control the behavior during reading. + The that can be used to cancel the read operation. + + Reads the UTF-8 encoded text representing a single JSON value into a . + The PipeReader will be read to completion. + + A representation of the JSON value. To be added. + + or is . + + The JSON is invalid, the is not compatible with the JSON, or when there is remaining data in the PipeReader. + + + There is no compatible for or its serializable members. + @@ -2611,13 +2630,27 @@ The used to create the instance of the - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + JSON data to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + The that can be used to cancel the read operation. + + Reads the UTF-8 encoded text representing a single JSON value into a . + The PipeReader will be read to completion. + + A representation of the JSON value. To be added. + + , , or is . + + The JSON is invalid, the is not compatible with the JSON, or when there is remaining data in the PipeReader. + + + There is no compatible for or its serializable members. + + + The method on the provided did not return a compatible for . + @@ -2805,13 +2838,24 @@ There is remaining data in the stream. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The type to deserialize the JSON value into. + JSON data to parse. + Options to control the behavior during reading. + The that can be used to cancel the read operation. + + Reads the UTF-8 encoded text representing a single JSON value into a . + The PipeReader will be read to completion. + + A representation of the JSON value. To be added. + + is . + + The JSON is invalid, is not compatible with the JSON, or when there is remaining data in the PipeReader. + + + There is no compatible for or its serializable members. + @@ -2850,13 +2894,21 @@ There is remaining data in the stream. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The type to deserialize the JSON value into. + JSON data to parse. + Metadata about the type to convert. + The that can be used to cancel the read operation. + + Reads the UTF-8 encoded text representing a single JSON value into a . + The PipeReader will be read to completion. + + A representation of the JSON value. To be added. + + or is . + + The JSON is invalid, is not compatible with the JSON, or when there is remaining data in the PipeReader. + @@ -3045,13 +3097,17 @@ There is remaining data in the stream. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The element type to deserialize asynchronously. + JSON data to parse. + Options to control the behavior during reading. + The that can be used to cancel the read operation. + + Wraps the UTF-8 encoded text into an that can be used to deserialize root-level JSON arrays in a streaming manner. + + An representation of the provided JSON array. To be added. + + is . @@ -3090,13 +3146,17 @@ There is remaining data in the stream. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The element type to deserialize asynchronously. + JSON data to parse. + Metadata about the element type to convert. + The that can be used to cancel the read operation. + + Wraps the UTF-8 encoded text into an that can be used to deserialize root-level JSON arrays in a streaming manner. + + An representation of the provided JSON array. To be added. + + or is . @@ -3259,14 +3319,22 @@ There is remaining data in the stream. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The element type to deserialize asynchronously. + JSON data to parse. + + to deserialize from a sequence of top-level JSON values, or to deserialize from a single top-level array. + Options to control the behavior during reading. + The that can be used to cancel the read operation. + + Wraps the UTF-8 encoded text into an that can be used to deserialize sequences of JSON values in a streaming manner. + + An representation of the provided JSON sequence. + + When is set to , treats the PipeReader as a sequence of whitespace separated top-level JSON values and attempts to deserialize each value into . + When is set to , treats the PipeReader as a JSON array and attempts to serialize each element into . + + + is . @@ -3306,14 +3374,21 @@ There is remaining data in the stream. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The element type to deserialize asynchronously. + JSON data to parse. + Metadata about the element type to convert. + Whether to deserialize from a sequence of top-level JSON values. + The that can be used to cancel the read operation. + + Wraps the UTF-8 encoded text into an that can be used to deserialize sequences of JSON values in a streaming manner. + + An representation of the provided JSON sequence. + + When is set to , treats the PipeReader as a sequence of whitespace separated top-level JSON values and attempts to deserialize each value into . + When is set to , treats the PipeReader as a JSON array and attempts to serialize each element into . + + + or is . @@ -3364,14 +3439,22 @@ There is remaining data in the stream. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The element type to deserialize asynchronously. + JSON data to parse. + + to deserialize from a sequence of top-level JSON values, or to deserialize from a single top-level array. + Options to control the behavior during reading. + The that can be used to cancel the read operation. + + Wraps the UTF-8 encoded text into an that can be used to deserialize sequences of JSON values in a streaming manner. + + An representation of the provided JSON sequence. + + When is set to , treats the stream as a sequence of whitespace separated top-level JSON values and attempts to deserialize each value into . + When is set to , treats the stream as a JSON array and attempts to serialize each element into . + + + is . @@ -3412,14 +3495,21 @@ There is remaining data in the stream. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. - To be added. + The element type to deserialize asynchronously. + JSON data to parse. + Metadata about the element type to convert. + Whether to deserialize from a sequence of top-level JSON values. + The that can be used to cancel the read operation. + + Wraps the UTF-8 encoded text into an that can be used to deserialize sequences of JSON values in a streaming manner. + + An representation of the provided JSON sequence. + + When is set to , treats the stream as a sequence of whitespace separated top-level JSON values and attempts to deserialize each value into . + When is set to , treats the stream as a JSON array and attempts to serialize each element into . + + + or is . diff --git a/xml/System.Text.Json/JsonSerializerDefaults.xml b/xml/System.Text.Json/JsonSerializerDefaults.xml index 7c35aa2bfbc..d743519b048 100644 --- a/xml/System.Text.Json/JsonSerializerDefaults.xml +++ b/xml/System.Text.Json/JsonSerializerDefaults.xml @@ -76,7 +76,7 @@ This option implies that property names are treated as case-sensitive and that " 2 - To be added. + Specifies that stricter policies should be applied when deserializing from JSON. diff --git a/xml/System.Text.Json/JsonSerializerOptions.xml b/xml/System.Text.Json/JsonSerializerOptions.xml index 07efd832bcf..f025d0a95a9 100644 --- a/xml/System.Text.Json/JsonSerializerOptions.xml +++ b/xml/System.Text.Json/JsonSerializerOptions.xml @@ -192,9 +192,10 @@ similar to how System.Boolean - To be added. + Defines whether duplicate property names are allowed when deserializing JSON objects. To be added. - To be added. + <para><para> By default, it's set to <see langword="true" />. If set to <see langword="false" />, <see cref="T:System.Text.Json.JsonException" /> is thrown when a duplicate property name is encountered during deserialization.</para><para></para><para> Duplicate property names are not allowed in serialization.</para><para></para> + Thrown if this property is set after serialization or deserialization has occurred. @@ -1319,9 +1320,12 @@ Use to enable un System.Text.Json.JsonSerializerOptions - To be added. + Gets a read-only, singleton instance of that uses the strict configuration. To be added. - To be added. + + Each instance encapsulates its own serialization metadata caches, so using fresh default instances every time one is needed can result in redundant recomputation of converters. + This property provides a shared instance that can be consumed by any number of components without necessitating any converter recomputation. + diff --git a/xml/System.Text.Json/Utf8JsonWriter.xml b/xml/System.Text.Json/Utf8JsonWriter.xml index 7b9f4c51f7e..eb76713271e 100644 --- a/xml/System.Text.Json/Utf8JsonWriter.xml +++ b/xml/System.Text.Json/Utf8JsonWriter.xml @@ -749,10 +749,14 @@ The bytes are encoded before writing. - To be added. - To be added. - To be added. + The bytes to be written as a JSON string element of a JSON array. + Indicates that this is the final segment of the string. + Writes the input bytes as a partial JSON string. To be added. + Thrown when the specified value is too large. + + Thrown when validation is enabled if this would result in invalid JSON being written or if the previously written segment (if any) was not written with this same overload. + @@ -5374,10 +5378,14 @@ The value should already be escaped when the instance of - To be added. - To be added. - To be added. - To be added. + The UTF-8 encoded value to be written as a JSON string element of a JSON array. + Indicates that this is the final segment of the string. + Writes the UTF-8 text value segment as a partial JSON string. + The value is escaped before writing. + Thrown when the specified value is too large. + + Thrown when validation is enabled if this would result in invalid JSON being written or if the previously written segment (if any) was not written with this same overload. + @@ -5400,10 +5408,14 @@ The value should already be escaped when the instance of - To be added. - To be added. - To be added. - To be added. + The value to write. + Indicates that this is the final segment of the string. + Writes the text value segment as a partial JSON string. + The value is escaped before writing. + Thrown when the specified value is too large. + + Thrown when validation is enabled if this would result in invalid JSON being written or if the previously written segment (if any) was not written with this same overload. + From e62dfefed56df200b39f928c7a4bb34f127da8fe Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 10:01:20 -0700 Subject: [PATCH 23/39] System.Text.RegularExpressions docs --- .../Regex+ValueMatchEnumerator.xml | 3 ++ .../Regex+ValueSplitEnumerator.xml | 3 ++ .../RegexRunner.xml | 33 +++++++++++++++---- 3 files changed, 32 insertions(+), 7 deletions(-) diff --git a/xml/System.Text.RegularExpressions/Regex+ValueMatchEnumerator.xml b/xml/System.Text.RegularExpressions/Regex+ValueMatchEnumerator.xml index 738025d278f..315e35d0066 100644 --- a/xml/System.Text.RegularExpressions/Regex+ValueMatchEnumerator.xml +++ b/xml/System.Text.RegularExpressions/Regex+ValueMatchEnumerator.xml @@ -194,6 +194,7 @@ This type is a ref struct since it stores the input span as a field in order to To be added. To be added. To be added. + @@ -218,6 +219,7 @@ This type is a ref struct since it stores the input span as a field in order to To be added. To be added. + @@ -242,6 +244,7 @@ This type is a ref struct since it stores the input span as a field in order to To be added. To be added. + diff --git a/xml/System.Text.RegularExpressions/Regex+ValueSplitEnumerator.xml b/xml/System.Text.RegularExpressions/Regex+ValueSplitEnumerator.xml index 87db58287c7..9c2c10aa7ca 100644 --- a/xml/System.Text.RegularExpressions/Regex+ValueSplitEnumerator.xml +++ b/xml/System.Text.RegularExpressions/Regex+ValueSplitEnumerator.xml @@ -170,6 +170,7 @@ To be added. To be added. To be added. + @@ -194,6 +195,7 @@ To be added. To be added. + @@ -218,6 +220,7 @@ To be added. To be added. + diff --git a/xml/System.Text.RegularExpressions/RegexRunner.xml b/xml/System.Text.RegularExpressions/RegexRunner.xml index 781e567770f..66ddde1a3cf 100644 --- a/xml/System.Text.RegularExpressions/RegexRunner.xml +++ b/xml/System.Text.RegularExpressions/RegexRunner.xml @@ -55,7 +55,10 @@ The class is the base class for compiled regular expressions. - To be added. + + Provides the driver code that calls the subclass's Scan method for either scanning or direct execution. + Also maintains memory allocation for the backtracking stack, the grouping stack and the longjump crawlstack, and provides methods to push new subpattern match results into (or remove backtracked results from) the Match instance. + @@ -1056,7 +1059,10 @@ Used by a object generated by the method. - To be added. + + Every time a group has a capture, we push its group number onto the runcrawl stack. + In the case of a balanced match, we push BOTH groups onto the stack. + @@ -1231,7 +1237,11 @@ Used by a object generated by the method. - To be added. + + This stack is used to track text positions across different opcodes. + For example, in /(a*b)+/, the parentheses result in a SetMark/CaptureMark pair. SetMark records the text position before we match a*b. Then CaptureMark uses that position to figure out where the capture starts. + Opcodes which push onto this stack are always paired with other opcodes which will pop the value from it later. A successful match should mean that this stack is empty. + @@ -1361,7 +1371,9 @@ Used by a object generated by the method. - To be added. + + We now always use a sliced span of the input from runtextbeg to runtextend, which means that runtextbeg is now always 0 except for CompiledToAssembly scenario which works over the original input. + @@ -1404,7 +1416,9 @@ Used by a object generated by the method. - To be added. + + Because we now pass in a sliced span of the input into Scan, the runtextend will always match the length of that passed in span except for CompileToAssembly scenario, which still works over the original input. + @@ -1490,7 +1504,9 @@ Used by a object generated by the method. - To be added. + + The differs from in that lookbehinds will be able to see text before but not before . + @@ -1534,7 +1550,10 @@ Used by a object generated by the method. - To be added. + + Opcodes use this to store data regarding what they have matched and where to backtrack to. Each "frame" on the stack takes the form of [CodePosition Data1 Data2...], where CodePosition is the position of the current opcode and the data values are all optional. The CodePosition can be negative, and these values (also called "back2") are used by the BranchMark family of opcodes to indicate whether they are backtracking after a successful or failed match. + When we backtrack, we pop the CodePosition off the stack, set the current instruction pointer to that code position, and mark the opcode with a backtracking flag ("Back"). Each opcode then knows how to handle its own data. + From 68b851ef440ea8dcba5810626883d5e099e549b5 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 10:01:31 -0700 Subject: [PATCH 24/39] System.Text docs --- xml/System.Text/Rune.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/xml/System.Text/Rune.xml b/xml/System.Text/Rune.xml index 10acdb37994..16a621b413b 100644 --- a/xml/System.Text/Rune.xml +++ b/xml/System.Text/Rune.xml @@ -1907,10 +1907,10 @@ This member is an explicit interface member implementation. It can be used only - To be added. - To be added. - To be added. - To be added. + The span of UTF-8 characters to parse. + An object that provides culture-specific formatting information about . + Parses a span of UTF-8 characters into a value. + The result of parsing . To be added. From f70b152f4be04b7e303cf661a1da8c2b37131a88 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 10:01:45 -0700 Subject: [PATCH 25/39] System.Threading docs --- xml/System.Threading.Channels/BoundedChannelOptions.xml | 6 ++++++ xml/System.Threading.Channels/Channel.xml | 8 ++++++++ xml/System.Threading/ThreadLocal`1.xml | 1 + 3 files changed, 15 insertions(+) diff --git a/xml/System.Threading.Channels/BoundedChannelOptions.xml b/xml/System.Threading.Channels/BoundedChannelOptions.xml index f7a3c4ff955..f2150d6b4e1 100644 --- a/xml/System.Threading.Channels/BoundedChannelOptions.xml +++ b/xml/System.Threading.Channels/BoundedChannelOptions.xml @@ -52,6 +52,8 @@ The maximum number of items the bounded channel may store. Initializes the options. To be added. + + is negative. @@ -80,6 +82,8 @@ Gets or sets the maximum number of items the bounded channel may store. To be added. To be added. + + is negative. @@ -108,6 +112,8 @@ Gets or sets the behavior incurred by write operations when the channel is full. To be added. To be added. + + is an invalid enum value. diff --git a/xml/System.Threading.Channels/Channel.xml b/xml/System.Threading.Channels/Channel.xml index a337849165b..c3ead9cfe13 100644 --- a/xml/System.Threading.Channels/Channel.xml +++ b/xml/System.Threading.Channels/Channel.xml @@ -75,6 +75,8 @@ Channels created with this method apply the behavior and prohibit continuations from running synchronously. + + is negative. @@ -118,6 +120,8 @@ Creates a channel with the specified maximum capacity. The created channel. To be added. + + is . @@ -167,6 +171,8 @@ Creates a channel subject to the provided options. The created channel. To be added. + + is . @@ -250,6 +256,8 @@ Creates an unbounded channel subject to the provided options. The created channel. To be added. + + is . diff --git a/xml/System.Threading/ThreadLocal`1.xml b/xml/System.Threading/ThreadLocal`1.xml index 3ded2a2b0df..e490469192a 100644 --- a/xml/System.Threading/ThreadLocal`1.xml +++ b/xml/System.Threading/ThreadLocal`1.xml @@ -639,6 +639,7 @@ Lazy Initialization How to: Perform Lazy Initialization of Objects + No parameterless constructor is provided and no value factory is supplied. From 799e0db32442a84be548e3b6eb984b894a4f4c03 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 10:01:56 -0700 Subject: [PATCH 26/39] System.Xml docs --- xml/System.Xml/XmlProcessingInstruction.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/xml/System.Xml/XmlProcessingInstruction.xml b/xml/System.Xml/XmlProcessingInstruction.xml index 034f2e87cb1..50ef609479a 100644 --- a/xml/System.Xml/XmlProcessingInstruction.xml +++ b/xml/System.Xml/XmlProcessingInstruction.xml @@ -643,6 +643,7 @@ ]]> + @@ -699,6 +700,7 @@ ]]> + From 64854a678feab984cb3ec62ee34c4c6be725b91e Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 10:02:11 -0700 Subject: [PATCH 27/39] System docs --- xml/System/BinaryData.xml | 157 ++++++++++++++--------- xml/System/MemoryExtensions.xml | 12 +- xml/System/ReadOnlySpan`1+Enumerator.xml | 4 +- xml/System/Span`1+Enumerator.xml | 4 +- xml/System/Uri.xml | 1 + 5 files changed, 112 insertions(+), 66 deletions(-) diff --git a/xml/System/BinaryData.xml b/xml/System/BinaryData.xml index f1b24a03b18..61d35c82d68 100644 --- a/xml/System/BinaryData.xml +++ b/xml/System/BinaryData.xml @@ -123,10 +123,13 @@ - To be added. - To be added. - To be added. + The array to wrap. + MIME type of this data, e.g. . + + Creates a instance by wrapping the provided byte array and sets to value. + To be added. + @@ -153,10 +156,13 @@ - To be added. - To be added. - To be added. + Byte data to wrap. + MIME type of this data, e.g. . + + Creates a instance by wrapping the provided bytes and sets to value. + To be added. + @@ -183,10 +189,13 @@ - To be added. - To be added. - To be added. + The string data. + MIME type of this data, e.g. . + + Creates a instance from a string by converting the string to bytes using the UTF-8 encoding and sets to value. + To be added. + @@ -221,6 +230,7 @@ The type to use when serializing the data. If not specified, will be used to determine the type. Creates a instance by serializing the provided object to JSON using . To be added. + @@ -252,6 +262,7 @@ The type to use when serializing the data. If not specified, will be used to determine the type. Creates a instance by serializing the provided object to JSON using . To be added. + @@ -397,11 +408,14 @@ - To be added. - To be added. - To be added. - To be added. + The array to wrap. + MIME type of this data, e.g. . + + Creates a instance by wrapping the provided byte array and sets to value. + + A wrapper over . To be added. + @@ -437,11 +451,14 @@ - To be added. - To be added. - To be added. - To be added. + Byte data to wrap. + MIME type of this data, e.g. . + + Creates a instance by wrapping the provided and sets to value. + + A wrapper over . To be added. + @@ -463,9 +480,9 @@ - To be added. - To be added. - To be added. + The path to the file. + Creates a instance from the specified file. + A value representing all of the data from the file. To be added. @@ -496,11 +513,14 @@ - To be added. - To be added. - To be added. - To be added. + The path to the file. + MIME type of this data, e.g. . + + Creates a instance from the specified file and sets to value. + + A value representing all of the data from the file. To be added. + @@ -522,10 +542,10 @@ - To be added. - To be added. - To be added. - To be added. + The path to the file. + A token that may be used to cancel the operation. + Creates a instance from the specified file. + A value representing all of the data from the file. To be added. @@ -556,12 +576,15 @@ - To be added. - To be added. - To be added. - To be added. - To be added. + The path to the file. + MIME type of this data, e.g. . + A token that may be used to cancel the operation. + + Creates a instance from the specified file and sets to value. + + A value representing all of the data from the file. To be added. + @@ -616,6 +639,7 @@ Creates a instance by serializing the provided object using the . A value representing the UTF-8 encoding of the JSON representation of . To be added. + @@ -654,6 +678,7 @@ Creates a instance by serializing the provided object using the . A value representing the UTF-8 encoding of the JSON representation of . To be added. + @@ -708,11 +733,15 @@ - To be added. - To be added. - To be added. - To be added. + Stream containing the data. + MIME type of this data, e.g. . + + Creates a instance from the specified stream and sets to value. + The stream is not disposed by this method. + + A value representing all of the data remaining in . To be added. + @@ -769,13 +798,17 @@ - To be added. - To be added. - To be added. - To be added. - To be added. + Stream containing the data. + MIME type of this data, e.g. . + A token that may be used to cancel the operation. + + Creates a instance from the specified stream and sets to value. + The stream is not disposed by this method. + + A value representing all of the data remaining in . To be added. The cancellation token was canceled. This exception is stored into the returned task. + @@ -830,11 +863,14 @@ - To be added. - To be added. - To be added. - To be added. + The string data. + MIME type of this data, e.g. . + + Creates a instance from a string by converting the string to bytes using the UTF-8 encoding and sets to value. + + A value representing the UTF-8 encoding of . To be added. + @@ -931,9 +967,10 @@ System.String - To be added. + Gets the MIME type of this data, e.g. . To be added. To be added. + @@ -1160,17 +1197,18 @@ Converts the value of this instance to a string using UTF-8. A string representation of the value of this instance. - + @@ -1200,9 +1238,12 @@ No special treatment is given to the contents of the data. It is merely decoded To be added. - To be added. - To be added. + + Creates a instance by wrapping the same data and changed to value. + + A wrapper over the same data with specified . To be added. + diff --git a/xml/System/MemoryExtensions.xml b/xml/System/MemoryExtensions.xml index 1f1adc9f85d..cb3dde56fdf 100644 --- a/xml/System/MemoryExtensions.xml +++ b/xml/System/MemoryExtensions.xml @@ -3151,7 +3151,8 @@ Returns `default` when `array` is `null`. The second value to search for. The implementation to use when comparing elements, or to use the default for the type of an element. Searches for an occurrence of either of the specified values. - if an occurrence of either value is found; otherwise . + + if an occurrence of either value is found; otherwise . To be added. @@ -3333,7 +3334,8 @@ Returns `default` when `array` is `null`. The third value to search for. The implementation to use when comparing elements, or to use the default for the type of an element. Searches for any occurrence of the specified values in the specified span. - if any of the values is found; otherwise, + + if any of the values is found; otherwise, To be added. @@ -10728,7 +10730,8 @@ Invalid sequences will be represented in the enumeration by To be added. The span was shorter than the span. - and overlap but don't refer to the same starting location. + + and overlap but don't refer to the same starting location. is . @@ -10849,7 +10852,8 @@ Invalid sequences will be represented in the enumeration by To be added. The span was shorter than the span. - and overlap but don't refer to the same starting location. + + and overlap but don't refer to the same starting location. is . diff --git a/xml/System/ReadOnlySpan`1+Enumerator.xml b/xml/System/ReadOnlySpan`1+Enumerator.xml index 849a71ba7bb..daa1ef8bb5b 100644 --- a/xml/System/ReadOnlySpan`1+Enumerator.xml +++ b/xml/System/ReadOnlySpan`1+Enumerator.xml @@ -249,8 +249,8 @@ If `MoveNext` passes the end of the span, `MoveNext` returns `false`. When the e T - To be added. - To be added. + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. To be added. diff --git a/xml/System/Span`1+Enumerator.xml b/xml/System/Span`1+Enumerator.xml index c60da0b1099..ef22ca2e634 100644 --- a/xml/System/Span`1+Enumerator.xml +++ b/xml/System/Span`1+Enumerator.xml @@ -245,8 +245,8 @@ If `MoveNext` passes the end of the span, `MoveNext` returns `false`. When the e T - To be added. - To be added. + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. To be added. diff --git a/xml/System/Uri.xml b/xml/System/Uri.xml index 65308fee545..23cb8a7a0fa 100644 --- a/xml/System/Uri.xml +++ b/xml/System/Uri.xml @@ -4490,6 +4490,7 @@ The following examples show a URI and the results of calling Formats the value of the current instance using the specified format. The value of the current instance in the specified format. To be added. + From 647e69d45894a4a94cf2664048425005210c1254 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Wed, 1 Oct 2025 13:54:12 -0700 Subject: [PATCH 28/39] Fix some warnings --- xml/System.Collections.Frozen/FrozenDictionary.xml | 4 ++-- xml/System.Net.WebSockets/WebSocketStream.xml | 6 +++--- .../X500DistinguishedName.xml | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/xml/System.Collections.Frozen/FrozenDictionary.xml b/xml/System.Collections.Frozen/FrozenDictionary.xml index 4b06bd23990..2165b6a7e87 100644 --- a/xml/System.Collections.Frozen/FrozenDictionary.xml +++ b/xml/System.Collections.Frozen/FrozenDictionary.xml @@ -77,7 +77,7 @@ Creates a with the specified key/value pairs. A that contains the specified keys and values. - If the same key appears multiple times in the input, the latter one in the sequence takes precedence. This differs from , with which multiple duplicate keys will result in an exception. + If the same key appears multiple times in the input, the latter one in the sequence takes precedence. This differs from , with which multiple duplicate keys will result in an exception. @@ -141,7 +141,7 @@ Creates a with the specified key/value pairs. A that contains the specified keys and values. - If the same key appears multiple times in the input, the latter one in the sequence takes precedence. This differs from , with which multiple duplicate keys will result in an exception. + If the same key appears multiple times in the input, the latter one in the sequence takes precedence. This differs from , with which multiple duplicate keys will result in an exception. diff --git a/xml/System.Net.WebSockets/WebSocketStream.xml b/xml/System.Net.WebSockets/WebSocketStream.xml index a4a0e104b13..5eb62525d25 100644 --- a/xml/System.Net.WebSockets/WebSocketStream.xml +++ b/xml/System.Net.WebSockets/WebSocketStream.xml @@ -207,7 +207,7 @@ The wrapped . - The type of messages that should be written as part of calls. Each write produces a message. + The type of messages that should be written as part of calls. Each write produces a message. if disposing the should close the underlying ; otherwise, . Defaults to . Creates a that delegates to a wrapped . @@ -237,7 +237,7 @@ The wrapped . - The type of messages that should be written as part of calls. Each write produces a message. + The type of messages that should be written as part of calls. Each write produces a message. The amount of time that disposing the will wait for a graceful closing of the 's output. Creates a that delegates to a wrapped . A new instance of that forwards reads and writes on the to the underlying . @@ -293,7 +293,7 @@ The wrapped . - The type of messages that should be written as part of calls. + The type of messages that should be written as part of calls. Each write on the results in writing a partial message to the underlying . When the is disposed, it will write an empty message to the underlying to signal the end of the message. diff --git a/xml/System.Security.Cryptography.X509Certificates/X500DistinguishedName.xml b/xml/System.Security.Cryptography.X509Certificates/X500DistinguishedName.xml index 26302d391f5..6b56a6fdac5 100644 --- a/xml/System.Security.Cryptography.X509Certificates/X500DistinguishedName.xml +++ b/xml/System.Security.Cryptography.X509Certificates/X500DistinguishedName.xml @@ -194,7 +194,7 @@ The encoded distinguished name. Initializes a new instance of the class using information from the provided data. To be added. - + From 851583473b70a62770abe39b45e6b04281793f41 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Thu, 2 Oct 2025 11:26:11 -0700 Subject: [PATCH 29/39] Fix bad xml escaping of remarks --- xml/System.Buffers/ArrayBufferWriter`1.xml | 2 +- xml/System.Diagnostics/Activity.xml | 2 +- xml/System.Diagnostics/ProcessStartInfo.xml | 2 +- xml/System.IO.Compression/ZipArchive.xml | 4 ++-- xml/System.IO.Compression/ZipFile.xml | 14 +++++++------- xml/System.IO.Compression/ZipFileExtensions.xml | 4 ++-- xml/System.Linq/Enumerable.xml | 8 ++++---- xml/System.Linq/Queryable.xml | 8 ++++---- .../CollectionsMarshal.xml | 2 +- .../JsonMarshal.xml | 2 +- .../CoseSign1Message.xml | 14 +++++++------- .../CoseSignature.xml | 14 +++++++------- .../X509Certificate.xml | 2 +- .../X509Certificate2Collection.xml | 12 ++++++------ xml/System.Security.Cryptography/Aes.xml | 16 ++++++++-------- xml/System.Security.Cryptography/AesCng.xml | 2 +- .../MLDsaOpenSsl.xml | 2 +- .../MLKemOpenSsl.xml | 2 +- xml/System.Security.Cryptography/PemEncoding.xml | 12 ++++++------ .../SlhDsaOpenSsl.xml | 2 +- .../SymmetricAlgorithm.xml | 4 ++-- xml/System.Text.Json/JsonSerializerOptions.xml | 2 +- 22 files changed, 66 insertions(+), 66 deletions(-) diff --git a/xml/System.Buffers/ArrayBufferWriter`1.xml b/xml/System.Buffers/ArrayBufferWriter`1.xml index 31877b8dd26..36cc43eab8f 100644 --- a/xml/System.Buffers/ArrayBufferWriter`1.xml +++ b/xml/System.Buffers/ArrayBufferWriter`1.xml @@ -387,7 +387,7 @@ This method never returns Resets the data written to the underlying buffer without zeroing its content. - <para><para> You must reset or clear the <see cref="T:System.Buffers.ArrayBufferWriter`1" /> before trying to re-use it.</para><para></para><para> If you reset the writer using the <see cref="M:System.Buffers.ArrayBufferWriter`1.ResetWrittenCount" /> method, the underlying buffer will not be cleared.</para><para></para> + You must reset or clear the before trying to re-use it. If you reset the writer using the method, the underlying buffer will not be cleared. diff --git a/xml/System.Diagnostics/Activity.xml b/xml/System.Diagnostics/Activity.xml index fc62fff5768..9a4ce207227 100644 --- a/xml/System.Diagnostics/Activity.xml +++ b/xml/System.Diagnostics/Activity.xml @@ -255,7 +255,7 @@ Callers should either restrict the number of events added to the same `Activity` Add an object containing the exception information to the list. for convenient chaining. - <para><para>- The name of the event will be "exception", and it will include the tags "exception.message", "exception.stacktrace", and "exception.type", in addition to the tags provided in the <paramref name="tags" /> parameter.</para><para>- Any registered <see cref="T:System.Diagnostics.ActivityListener" /> with the <see cref="P:System.Diagnostics.ActivityListener.ExceptionRecorder" /> callback will be notified about this exception addition before the <see cref="T:System.Diagnostics.ActivityEvent" /> object is added to the <see cref="P:System.Diagnostics.Activity.Events" /> list.</para><para>- Any registered <see cref="T:System.Diagnostics.ActivityListener" /> with the <see cref="P:System.Diagnostics.ActivityListener.ExceptionRecorder" /> callback that adds "exception.message", "exception.stacktrace", or "exception.type" tags will not have these tags overwritten, except by any subsequent <see cref="T:System.Diagnostics.ActivityListener" /> that explicitly overwrites them.</para> + - The name of the event will be "exception", and it will include the tags "exception.message", "exception.stacktrace", and "exception.type", in addition to the tags provided in the parameter.- Any registered with the callback will be notified about this exception addition before the object is added to the list.- Any registered with the callback that adds "exception.message", "exception.stacktrace", or "exception.type" tags will not have these tags overwritten, except by any subsequent that explicitly overwrites them. diff --git a/xml/System.Diagnostics/ProcessStartInfo.xml b/xml/System.Diagnostics/ProcessStartInfo.xml index b14dc774ca9..56b791e0a57 100644 --- a/xml/System.Diagnostics/ProcessStartInfo.xml +++ b/xml/System.Diagnostics/ProcessStartInfo.xml @@ -1747,7 +1747,7 @@ You can use asynchronous read operations to avoid these dependencies and their d if the user credentials are only to be used for network resources. - <para><para>This property is referenced if the process is being started by using the user name, password, and domain.</para><para>If the value is <see langword="true" />, the process is started with the caller's identity. The system creates a new logon session with the given credentials, which is used on the network only.</para><para>The system does not validate the specified credentials. Therefore, the process can start, but it may not have access to network resources.</para> + This property is referenced if the process is being started by using the user name, password, and domain.If the value is , the process is started with the caller's identity. The system creates a new logon session with the given credentials, which is used on the network only.The system does not validate the specified credentials. Therefore, the process can start, but it may not have access to network resources. diff --git a/xml/System.IO.Compression/ZipArchive.xml b/xml/System.IO.Compression/ZipArchive.xml index efe12fe6e4f..d21c248a6f7 100644 --- a/xml/System.IO.Compression/ZipArchive.xml +++ b/xml/System.IO.Compression/ZipArchive.xml @@ -388,7 +388,7 @@ If the comment byte length is larger than , it will See the description of the ZipArchiveMode enum. Read requires the stream to support reading, Create requires the stream to support writing, and Update requires the stream to support reading, writing, and seeking. to leave the stream open upon disposing the ZipArchive, otherwise . - <para>The encoding to use when reading or writing entry names and comments in this ZipArchive.</para><para>/// <para>NOTE: Specifying this parameter to values other than <see langword="null" /> is discouraged.</para><para>However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names.<br /> This value is used as follows:</para><para> <strong>Reading (opening) ZIP archive files:</strong> </para><para>If <c>entryNameEncoding</c> is not specified (<c>== null</c>):</para><list> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is <em>not</em> set, use the current system default code page (<c>Encoding.Default</c>) in order to decode the entry name and comment.</item> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header <em>is</em> set, use UTF-8 (<c>Encoding.UTF8</c>) in order to decode the entry name and comment.</item> </list><para>If <c>entryNameEncoding</c> is specified (<c>!= null</c>):</para><list> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is <em>not</em> set, use the specified <c>entryNameEncoding</c> in order to decode the entry name and comment.</item> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header <em>is</em> set, use UTF-8 (<c>Encoding.UTF8</c>) in order to decode the entry name and comment.</item> </list><para> <strong>Writing (saving) ZIP archive files:</strong> </para><para>If <c>entryNameEncoding</c> is not specified (<c>== null</c>):</para><list> <item>For entry names and comments that contain characters outside the ASCII range, the language encoding flag (EFS) will be set in the general purpose bit flag of the local file header, and UTF-8 (<c>Encoding.UTF8</c>) will be used in order to encode the entry name and comment into bytes.</item> <item>For entry names and comments that do not contain characters outside the ASCII range, the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header, and the current system default code page (<c>Encoding.Default</c>) will be used to encode the entry names and comments into bytes.</item> </list><para>If <c>entryNameEncoding</c> is specified (<c>!= null</c>):</para><list> <item>The specified <c>entryNameEncoding</c> will always be used to encode the entry names and comments into bytes.</para><para>The language encoding flag (EFS) in the general purpose bit flag of the local file header will be set if and only if the specified <c>entryNameEncoding</c> is a UTF-8 encoding.</item> </list><para>Note that Unicode encodings other than UTF-8 may not be currently used for the <c>entryNameEncoding</c>, otherwise an <see cref="T:System.ArgumentException" /> is thrown.</para> + The encoding to use when reading or writing entry names and comments in this ZipArchive.NOTE: Specifying this parameter to values other than is discouraged.However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names.<br /> This value is used as follows: Reading (opening) ZIP archive files:If entryNameEncoding is not specified (== null): For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) in order to decode the entry name and comment. For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. If entryNameEncoding is specified (!= null): For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified entryNameEncoding in order to decode the entry name and comment. For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. Writing (saving) ZIP archive files: If entryNameEncoding is not specified (== null): For entry names and comments that contain characters outside the ASCII range, the language encoding flag (EFS) will be set in the general purpose bit flag of the local file header, and UTF-8 (Encoding.UTF8) will be used in order to encode the entry name and comment into bytes. For entry names and comments that do not contain characters outside the ASCII range, the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header, and the current system default code page (Encoding.Default) will be used to encode the entry names and comments into bytes. If entryNameEncoding is specified (!= null): The specified entryNameEncoding will always be used to encode the entry names and comments into bytes.The language encoding flag (EFS) in the general purpose bit flag of the local file header will be set if and only if the specified entryNameEncoding is a UTF-8 encoding. Note that Unicode encodings other than UTF-8 may not be currently used for the entryNameEncoding, otherwise an is thrown. The optional cancellation token to monitor. Asynchronously initializes and returns a new instance of on the given stream in the specified mode, specifying whether to leave the stream open, with an optional encoding and an optional cancellation token. To be added. @@ -407,7 +407,7 @@ If the comment byte length is larger than , it will -or- mode is Update and an entry is too large to fit into memory. - If a Unicode encoding other than UTF-8 is specified for the entryNameEncoding. + If a Unicode encoding other than UTF-8 is specified for the entryNameEncoding. diff --git a/xml/System.IO.Compression/ZipFile.xml b/xml/System.IO.Compression/ZipFile.xml index c03fc554bae..7abf84c7d12 100644 --- a/xml/System.IO.Compression/ZipFile.xml +++ b/xml/System.IO.Compression/ZipFile.xml @@ -630,7 +630,7 @@ An I/O error occurred while opening a file to be archived. The path to the directory on the file system to be archived. The name of the archive to be created. The cancellation token to monitor for cancellation requests. - <para><p>Asynchronously creates a Zip archive at the path <code>destinationArchiveFileName</code> that contains the files and directories from the directory specified by <code>sourceDirectoryName</code>. The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created. If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method does not include the base directory into the archive.</para><para>If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid Zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.</p><p>If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.</p><p>Since no <code>CompressionLevel</code> is specified, the default provided by the implementation of the underlying compression algorithm will be used; the <code>ZipArchive</code> will not impose its own default.</para><para>(Currently, the underlying compression algorithm is provided by the <code>System.IO.Compression.DeflateStream</code> class.)</p></para> + Asynchronously creates a Zip archive at the path destinationArchiveFileName that contains the files and directories from the directory specified by sourceDirectoryName. The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created. If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method does not include the base directory into the archive.If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid Zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default.(Currently, the underlying compression algorithm is provided by the System.IO.Compression.DeflateStream class.) To be added. To be added. @@ -761,7 +761,7 @@ An I/O error occurred while opening a file to be archived. true to indicate that a directory named sourceDirectoryName should be included at the root of the archive. false to indicate that the files and directories in sourceDirectoryName should be included directly in the archive. The cancellation token to monitor for cancellation requests. - <para><p>Asynchronously creates a Zip archive at the path <code>destinationArchiveFileName</code> that contains the files and directories in the directory specified by <code>sourceDirectoryName</code>. The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created.</para><para>If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method optionally includes the base directory in the archive.</para><para>If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid Zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.</p><p>If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.</p><p>Since no <code>CompressionLevel</code> is specified, the default provided by the implementation of the underlying compression algorithm will be used; the <code>ZipArchive</code> will not impose its own default.</para><para>(Currently, the underlying compression algorithm is provided by the <code>System.IO.Compression.DeflateStream</code> class.)</p></para> + Asynchronously creates a Zip archive at the path destinationArchiveFileName that contains the files and directories in the directory specified by sourceDirectoryName. The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created.If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method optionally includes the base directory in the archive.If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid Zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default.(Currently, the underlying compression algorithm is provided by the System.IO.Compression.DeflateStream class.) To be added. To be added. @@ -908,9 +908,9 @@ An I/O error occurred while opening a file to be archived. true to indicate that a directory named sourceDirectoryName should be included at the root of the archive. false to indicate that the files and directories in sourceDirectoryName should be included directly in the archive. - <para>The encoding to use when reading or writing entry names and comments in this ZipArchive.</para><para>/// <para>NOTE: Specifying this parameter to values other than <see langword="null" /> is discouraged.</para><para>However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.<br /> This value is used as follows while creating the archive:</para><para>If <c>entryNameEncoding</c> is not specified (<c>== null</c>):</para><list> <item>For file names or comments that contain characters outside the ASCII range:<br /> The language encoding flag (EFS) will be set in the general purpose bit flag of the local file header of the corresponding entry, and UTF-8 (<c>Encoding.UTF8</c>) will be used in order to encode the entry name and comment into bytes.</item> <item>For file names or comments that do not contain characters outside the ASCII range:<br /> the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header of the corresponding entry, and the current system default code page (<c>Encoding.Default</c>) will be used to encode the entry names and comments into bytes.</item> </list><para>If <c>entryNameEncoding</c> is specified (<c>!= null</c>):</para><list> <item>The specified <c>entryNameEncoding</c> will always be used to encode the entry names and comments into bytes.</para><para>The language encoding flag (EFS) in the general purpose bit flag of the local file header for each entry will be set if and only if the specified <c>entryNameEncoding</c> is a UTF-8 encoding.</item> </list><para>Note that Unicode encodings other than UTF-8 may not be currently used for the <c>entryNameEncoding</c>, otherwise an <see cref="T:System.ArgumentException" /> is thrown.</para> + The encoding to use when reading or writing entry names and comments in this ZipArchive.NOTE: Specifying this parameter to values other than is discouraged.However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.
    This value is used as follows while creating the archive:
    If entryNameEncoding is not specified (== null): For file names or comments that contain characters outside the ASCII range:
    The language encoding flag (EFS) will be set in the general purpose bit flag of the local file header of the corresponding entry, and UTF-8 (Encoding.UTF8) will be used in order to encode the entry name and comment into bytes.
    For file names or comments that do not contain characters outside the ASCII range:
    the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header of the corresponding entry, and the current system default code page (Encoding.Default) will be used to encode the entry names and comments into bytes.
    If entryNameEncoding is specified (!= null): The specified entryNameEncoding will always be used to encode the entry names and comments into bytes.The language encoding flag (EFS) in the general purpose bit flag of the local file header for each entry will be set if and only if the specified entryNameEncoding is a UTF-8 encoding. Note that Unicode encodings other than UTF-8 may not be currently used for the entryNameEncoding, otherwise an is thrown. The cancellation token to monitor for cancellation requests. - <para><p>Asynchronously creates a Zip archive at the path <code>destinationArchiveFileName</code> that contains the files and directories in the directory specified by <code>sourceDirectoryName</code>. The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created.</para><para>If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method optionally includes the base directory in the archive.</para><para>If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid Zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.</p><p>If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.</p><p>Since no <code>CompressionLevel</code> is specified, the default provided by the implementation of the underlying compression algorithm will be used; the <code>ZipArchive</code> will not impose its own default.</para><para>(Currently, the underlying compression algorithm is provided by the <code>System.IO.Compression.DeflateStream</code> class.)</p></para> + Asynchronously creates a Zip archive at the path destinationArchiveFileName that contains the files and directories in the directory specified by sourceDirectoryName. The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created.If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method optionally includes the base directory in the archive.If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid Zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default.(Currently, the underlying compression algorithm is provided by the System.IO.Compression.DeflateStream class.) To be added. To be added. @@ -1997,7 +1997,7 @@ An archive entry has been compressed using a compression method that is not supp The path to the archive on the file system that is to be extracted. The path to the directory on the file system. The directory specified must not exist, but the directory that it is contained in must exist. - <para>The encoding to use when reading or writing entry names and comments in this ZipArchive.</para><para>/// <para>NOTE: Specifying this parameter to values other than <see langword="null" /> is discouraged.</para><para>However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.<br /> This value is used as follows:</para><para>If <c>entryNameEncoding</c> is not specified (<c>== null</c>):</para><list> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is <em>not</em> set, use the current system default code page (<c>Encoding.Default</c>) in order to decode the entry name and comment.</item> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header <em>is</em> set, use UTF-8 (<c>Encoding.UTF8</c>) in order to decode the entry name and comment.</item> </list><para>If <c>entryNameEncoding</c> is specified (<c>!= null</c>):</para><list> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is <em>not</em> set, use the specified <c>entryNameEncoding</c> in order to decode the entry name and comment.</item> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header <em>is</em> set, use UTF-8 (<c>Encoding.UTF8</c>) in order to decode the entry name and comment.</item> </list><para>Note that Unicode encodings other than UTF-8 may not be currently used for the <c>entryNameEncoding</c>, otherwise an <see cref="T:System.ArgumentException" /> is thrown.</para> + The encoding to use when reading or writing entry names and comments in this ZipArchive.NOTE: Specifying this parameter to values other than is discouraged.However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.
    This value is used as follows:
    If entryNameEncoding is not specified (== null): For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) in order to decode the entry name and comment. For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. If entryNameEncoding is specified (!= null): For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified entryNameEncoding in order to decode the entry name and comment. For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. Note that Unicode encodings other than UTF-8 may not be currently used for the entryNameEncoding, otherwise an is thrown. The cancellation token to monitor for cancellation requests. Asynchronously extracts all of the files in the specified archive to a directory on the file system. @@ -2148,7 +2148,7 @@ An archive entry has been compressed using a compression method that is not supp The path to the archive on the file system that is to be extracted. The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory. - <para>The encoding to use when reading or writing entry names and comments in this ZipArchive.</para><para>/// <para>NOTE: Specifying this parameter to values other than <see langword="null" /> is discouraged.</para><para>However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.<br /> This value is used as follows:</para><para>If <c>entryNameEncoding</c> is not specified (<c>== null</c>):</para><list> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is <em>not</em> set, use the current system default code page (<c>Encoding.Default</c>) in order to decode the entry name and comment.</item> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header <em>is</em> set, use UTF-8 (<c>Encoding.UTF8</c>) in order to decode the entry name and comment.</item> </list><para>If <c>entryNameEncoding</c> is specified (<c>!= null</c>):</para><list> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is <em>not</em> set, use the specified <c>entryNameEncoding</c> in order to decode the entry name and comment.</item> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header <em>is</em> set, use UTF-8 (<c>Encoding.UTF8</c>) in order to decode the entry name and comment.</item> </list><para>Note that Unicode encodings other than UTF-8 may not be currently used for the <c>entryNameEncoding</c>, otherwise an <see cref="T:System.ArgumentException" /> is thrown.</para> + The encoding to use when reading or writing entry names and comments in this ZipArchive.NOTE: Specifying this parameter to values other than is discouraged.However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.
    This value is used as follows:
    If entryNameEncoding is not specified (== null): For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) in order to decode the entry name and comment. For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. If entryNameEncoding is specified (!= null): For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified entryNameEncoding in order to decode the entry name and comment. For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. Note that Unicode encodings other than UTF-8 may not be currently used for the entryNameEncoding, otherwise an is thrown. to indicate overwrite. The cancellation token to monitor for cancellation requests. @@ -2530,7 +2530,7 @@ An unspecified I/O error occurred while opening the file. If the file exists and is empty or does not exist, a new Zip file will be created. Note that creating a Zip file with the ZipArchiveMode.Create mode is more efficient when creating a new Zip file. - <para>The encoding to use when reading or writing entry names and comments in this ZipArchive.</para><para>/// <para>NOTE: Specifying this parameter to values other than <see langword="null" /> is discouraged.</para><para>However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.<br /> This value is used as follows:</para><para> <strong>Reading (opening) ZIP archive files:</strong> </para><para>If <c>entryNameEncoding</c> is not specified (<c>== null</c>):</para><list> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is <em>not</em> set, use the current system default code page (<c>Encoding.Default</c>) in order to decode the entry name and comment.</item> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header <em>is</em> set, use UTF-8 (<c>Encoding.UTF8</c>) in order to decode the entry name and comment.</item> </list><para>If <c>entryNameEncoding</c> is specified (<c>!= null</c>):</para><list> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is <em>not</em> set, use the specified <c>entryNameEncoding</c> in order to decode the entry name and comment.</item> <item>For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header <em>is</em> set, use UTF-8 (<c>Encoding.UTF8</c>) in order to decode the entry name and comment.</item> </list><para> <strong>Writing (saving) ZIP archive files:</strong> </para><para>If <c>entryNameEncoding</c> is not specified (<c>== null</c>):</para><list> <item>For entry names or comments that contain characters outside the ASCII range, the language encoding flag (EFS) will be set in the general purpose bit flag of the local file header, and UTF-8 (<c>Encoding.UTF8</c>) will be used in order to encode the entry name and comment into bytes.</item> <item>For entry names or comments that do not contain characters outside the ASCII range, the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header, and the current system default code page (<c>Encoding.Default</c>) will be used to encode the entry names and comments into bytes.</item> </list><para>If <c>entryNameEncoding</c> is specified (<c>!= null</c>):</para><list> <item>The specified <c>entryNameEncoding</c> will always be used to encode the entry names and comments into bytes.</para><para>The language encoding flag (EFS) in the general purpose bit flag of the local file header will be set if and only if the specified <c>entryNameEncoding</c> is a UTF-8 encoding.</item> </list><para>Note that Unicode encodings other than UTF-8 may not be currently used for the <c>entryNameEncoding</c>, otherwise an <see cref="T:System.ArgumentException" /> is thrown.</para> + The encoding to use when reading or writing entry names and comments in this ZipArchive.NOTE: Specifying this parameter to values other than is discouraged.However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.
    This value is used as follows:
    Reading (opening) ZIP archive files: If entryNameEncoding is not specified (== null): For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) in order to decode the entry name and comment. For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. If entryNameEncoding is specified (!= null): For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified entryNameEncoding in order to decode the entry name and comment. For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. Writing (saving) ZIP archive files: If entryNameEncoding is not specified (== null): For entry names or comments that contain characters outside the ASCII range, the language encoding flag (EFS) will be set in the general purpose bit flag of the local file header, and UTF-8 (Encoding.UTF8) will be used in order to encode the entry name and comment into bytes. For entry names or comments that do not contain characters outside the ASCII range, the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header, and the current system default code page (Encoding.Default) will be used to encode the entry names and comments into bytes. If entryNameEncoding is specified (!= null): The specified entryNameEncoding will always be used to encode the entry names and comments into bytes.The language encoding flag (EFS) in the general purpose bit flag of the local file header will be set if and only if the specified entryNameEncoding is a UTF-8 encoding. Note that Unicode encodings other than UTF-8 may not be currently used for the entryNameEncoding, otherwise an is thrown. The cancellation token to monitor for cancellation requests. Asynchronously opens a ZipArchive on the specified archiveFileName in the specified ZipArchiveMode mode. To be added. diff --git a/xml/System.IO.Compression/ZipFileExtensions.xml b/xml/System.IO.Compression/ZipFileExtensions.xml index 35dba274733..89043534b18 100644 --- a/xml/System.IO.Compression/ZipFileExtensions.xml +++ b/xml/System.IO.Compression/ZipFileExtensions.xml @@ -283,7 +283,7 @@ The name of the entry to be created. The cancellation token to monitor for cancellation requests. - <para><p>Asynchronously adds a file from the file system to the archive under the specified entry name.</para><para>The new entry in the archive will contain the contents of the file.</para><para>The last write time of the archive entry is set to the last write time of the file on the file system.</para><para>If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.</para><para>If the specified source file has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used.</p><p>If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.</p><p>Since no <code>CompressionLevel</code> is specified, the default provided by the implementation of the underlying compression algorithm will be used; the <code>ZipArchive</code> will not impose its own default.</para><para>(Currently, the underlying compression algorithm is provided by the <code>System.IO.Compression.DeflateStream</code> class.)</p></para> + Asynchronously adds a file from the file system to the archive under the specified entry name.The new entry in the archive will contain the contents of the file.The last write time of the archive entry is set to the last write time of the file on the file system.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.If the specified source file has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default.(Currently, the underlying compression algorithm is provided by the System.IO.Compression.DeflateStream class.) A wrapper for the newly created entry. To be added. @@ -341,7 +341,7 @@ The name of the entry to be created. The level of the compression (speed/memory vs. compressed size trade-off). The cancellation token to monitor for cancellation requests. - <para><p>Asynchronously adds a file from the file system to the archive under the specified entry name.</para><para>The new entry in the archive will contain the contents of the file.</para><para>The last write time of the archive entry is set to the last write time of the file on the file system.</para><para>If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.</para><para>If the specified source file has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used.</p><p>If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.</p></para> + Asynchronously adds a file from the file system to the archive under the specified entry name.The new entry in the archive will contain the contents of the file.The last write time of the archive entry is set to the last write time of the file on the file system.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.If the specified source file has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name. A wrapper for the newly created entry. To be added. diff --git a/xml/System.Linq/Enumerable.xml b/xml/System.Linq/Enumerable.xml index 34274ecf61e..079b288e7bf 100644 --- a/xml/System.Linq/Enumerable.xml +++ b/xml/System.Linq/Enumerable.xml @@ -6918,7 +6918,7 @@ If `comparer` is `null`, the default equality comparer, A function to create a result element from two matching elements. Correlates the elements of two sequences based on matching keys. The default equality comparer is used to compare keys. An that has elements of type that are obtained by performing a left outer join on two sequences. - <para><para> This method is implemented by using deferred execution. The immediate return value is an object that stores all the information that is required to perform the action. The query represented by this method is not executed until the object is enumerated either by calling its <c>GetEnumerator</c> method directly or by using <c>foreach</c> in C# or <c>For Each</c> in Visual Basic.</para><para></para><para> The default equality comparer, <see cref="P:System.Collections.Generic.EqualityComparer`1.Default" />, is used to hash and compare keys.</para><para></para><para> A join refers to the operation of correlating the elements of two sources of information based on a common key.</para><para><see cref="M:System.Linq.Enumerable.LeftJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3})" /> brings the two information sources and the keys by which they are matched together in one method call.</para><para></para><para> In relational database terms, the <see cref="M:System.Linq.Enumerable.LeftJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3})" /> method implements an outer left equijoin.</para><para>'Outer left' means that elements of the first sequence are returned regardless of whether matching elements are found in the other sequence.</para><para>An 'equijoin' is a join in which the keys are compared for equality.</para><para>An inner join - where only elements that have a match in the other sequence are included in the results - can be performed using the <see cref="M:System.Linq.Enumerable.Join``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3})" /> method.</para><para>For more information, see <see href="/dotnet/csharp/linq/standard-query-operators/join-operations">Join operations</see>.</para><para></para> + This method is implemented by using deferred execution. The immediate return value is an object that stores all the information that is required to perform the action. The query represented by this method is not executed until the object is enumerated either by calling its GetEnumerator method directly or by using foreach in C# or For Each in Visual Basic. The default equality comparer, , is used to hash and compare keys. A join refers to the operation of correlating the elements of two sources of information based on a common key. brings the two information sources and the keys by which they are matched together in one method call. In relational database terms, the method implements an outer left equijoin.'Outer left' means that elements of the first sequence are returned regardless of whether matching elements are found in the other sequence.An 'equijoin' is a join in which the keys are compared for equality.An inner join - where only elements that have a match in the other sequence are included in the results - can be performed using the method.For more information, see Join operations. or or or or is .
    @@ -7013,7 +7013,7 @@ If `comparer` is `null`, the default equality comparer, An to hash and compare keys. Correlates the elements of two sequences based on matching keys. A specified is used to compare keys. An that has elements of type that are obtained by performing a left outer join on two sequences. - <para><para> This method is implemented by using deferred execution. The immediate return value is an object that stores all the information that is required to perform the action. The query represented by this method is not executed until the object is enumerated either by calling its <c>GetEnumerator</c> method directly or by using <c>foreach</c> in C# or <c>For Each</c> in Visual Basic.</para><para></para><para> The default equality comparer, <see cref="P:System.Collections.Generic.EqualityComparer`1.Default" />, is used to hash and compare keys.</para><para></para><para> A join refers to the operation of correlating the elements of two sources of information based on a common key.</para><para><see cref="M:System.Linq.Enumerable.LeftJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3},System.Collections.Generic.IEqualityComparer{``2})" /> brings the two information sources and the keys by which they are matched together in one method call.</para><para></para><para> In relational database terms, the <see cref="M:System.Linq.Enumerable.LeftJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3},System.Collections.Generic.IEqualityComparer{``2})" /> method implements an outer left equijoin.</para><para>'Outer left' means that elements of the first sequence are returned regardless of whether matching elements are found in the other sequence.</para><para>An 'equijoin' is a join in which the keys are compared for equality.</para><para>An inner join - where only elements that have a match in the other sequence are included in the results - can be performed using the <see cref="M:System.Linq.Enumerable.Join``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3},System.Collections.Generic.IEqualityComparer{``2})" /> method.</para><para>For more information, see <see href="/dotnet/csharp/linq/standard-query-operators/join-operations">Join operations</see>.</para><para></para> + This method is implemented by using deferred execution. The immediate return value is an object that stores all the information that is required to perform the action. The query represented by this method is not executed until the object is enumerated either by calling its GetEnumerator method directly or by using foreach in C# or For Each in Visual Basic. The default equality comparer, , is used to hash and compare keys. A join refers to the operation of correlating the elements of two sources of information based on a common key. brings the two information sources and the keys by which they are matched together in one method call. In relational database terms, the method implements an outer left equijoin.'Outer left' means that elements of the first sequence are returned regardless of whether matching elements are found in the other sequence.An 'equijoin' is a join in which the keys are compared for equality.An inner join - where only elements that have a match in the other sequence are included in the results - can be performed using the method.For more information, see Join operations. or or or or is . @@ -12045,7 +12045,7 @@ If comparer is `null`, the default comparer A function to create a result element from two matching elements. Correlates the elements of two sequences based on matching keys. The default equality comparer is used to compare keys. An that has elements of type that are obtained by performing a right outer join on two sequences. - <para><para> This method is implemented by using deferred execution. The immediate return value is an object that stores all the information that is required to perform the action. The query represented by this method is not executed until the object is enumerated either by calling its <c>GetEnumerator</c> method directly or by using <c>foreach</c> in C# or <c>For Each</c> in Visual Basic.</para><para></para><para> The default equality comparer, <see cref="P:System.Collections.Generic.EqualityComparer`1.Default" />, is used to hash and compare keys.</para><para></para><para> A join refers to the operation of correlating the elements of two sources of information based on a common key.</para><para><see cref="M:System.Linq.Enumerable.RightJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3})" /> brings the two information sources and the keys by which they are matched together in one method call.</para><para></para><para> In relational database terms, the <see cref="M:System.Linq.Enumerable.RightJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3})" /> method implements an outer right equijoin.</para><para>'Outer right' means that elements of the second sequence are returned regardless of whether matching elements are found in the other sequence.</para><para>An 'equijoin' is a join in which the keys are compared for equality.</para><para>An inner join - where only elements that have a match in the other sequence are included in the results - can be performed using the <see cref="M:System.Linq.Enumerable.Join``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3})" /> method.</para><para>For more information, see <see href="/dotnet/csharp/linq/standard-query-operators/join-operations">Join operations</see>.</para><para></para> + This method is implemented by using deferred execution. The immediate return value is an object that stores all the information that is required to perform the action. The query represented by this method is not executed until the object is enumerated either by calling its GetEnumerator method directly or by using foreach in C# or For Each in Visual Basic. The default equality comparer, , is used to hash and compare keys. A join refers to the operation of correlating the elements of two sources of information based on a common key. brings the two information sources and the keys by which they are matched together in one method call. In relational database terms, the method implements an outer right equijoin.'Outer right' means that elements of the second sequence are returned regardless of whether matching elements are found in the other sequence.An 'equijoin' is a join in which the keys are compared for equality.An inner join - where only elements that have a match in the other sequence are included in the results - can be performed using the method.For more information, see Join operations. or or or or is . @@ -12140,7 +12140,7 @@ If comparer is `null`, the default comparer An to hash and compare keys. Correlates the elements of two sequences based on matching keys. A specified is used to compare keys. An that has elements of type that are obtained by performing a right outer join on two sequences. - <para><para> This method is implemented by using deferred execution. The immediate return value is an object that stores all the information that is required to perform the action. The query represented by this method is not executed until the object is enumerated either by calling its <c>GetEnumerator</c> method directly or by using <c>foreach</c> in C# or <c>For Each</c> in Visual Basic.</para><para></para><para> The default equality comparer, <see cref="P:System.Collections.Generic.EqualityComparer`1.Default" />, is used to hash and compare keys.</para><para></para><para> A join refers to the operation of correlating the elements of two sources of information based on a common key.</para><para><see cref="M:System.Linq.Enumerable.RightJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3},System.Collections.Generic.IEqualityComparer{``2})" /> brings the two information sources and the keys by which they are matched together in one method call.</para><para></para><para> In relational database terms, the <see cref="M:System.Linq.Enumerable.RightJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3},System.Collections.Generic.IEqualityComparer{``2})" /> method implements an outer right equijoin.</para><para>'Outer right' means that elements of the second sequence are returned regardless of whether matching elements are found in the other sequence.</para><para>An 'equijoin' is a join in which the keys are compared for equality.</para><para>An inner join - where only elements that have a match in the other sequence are included in the results - can be performed using the <see cref="M:System.Linq.Enumerable.Join``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3},System.Collections.Generic.IEqualityComparer{``2})" /> method.</para><para>For more information, see <see href="/dotnet/csharp/linq/standard-query-operators/join-operations">Join operations</see>.</para><para></para> + This method is implemented by using deferred execution. The immediate return value is an object that stores all the information that is required to perform the action. The query represented by this method is not executed until the object is enumerated either by calling its GetEnumerator method directly or by using foreach in C# or For Each in Visual Basic. The default equality comparer, , is used to hash and compare keys. A join refers to the operation of correlating the elements of two sources of information based on a common key. brings the two information sources and the keys by which they are matched together in one method call. In relational database terms, the method implements an outer right equijoin.'Outer right' means that elements of the second sequence are returned regardless of whether matching elements are found in the other sequence.An 'equijoin' is a join in which the keys are compared for equality.An inner join - where only elements that have a match in the other sequence are included in the results - can be performed using the method.For more information, see Join operations. or or or or is . diff --git a/xml/System.Linq/Queryable.xml b/xml/System.Linq/Queryable.xml index 25c1113a883..682c260480c 100644 --- a/xml/System.Linq/Queryable.xml +++ b/xml/System.Linq/Queryable.xml @@ -7025,7 +7025,7 @@ The last chunk will contain the remaining elements and may be of a smaller size. A function to create a result element from two matching elements. Correlates the elements of two sequences based on matching keys. The default equality comparer is used to compare keys. An that has elements of type that are obtained by performing a left outer join on two sequences. - <para><para> This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types.</para><para>For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para><para></para><para> The <see cref="M:System.Linq.Queryable.LeftJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.LeftJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}})" /> itself as a constructed generic method.</para><para>It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="outer" /> parameter.</para><para></para><para> The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.LeftJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}})" /> depends on the implementation of the type of the <paramref name="outer" /> parameter.</para><para>The expected behavior is that of a left outer join.</para><para>The <paramref name="outerKeySelector" /> and <paramref name="innerKeySelector" /> functions are used to extract keys from <paramref name="outer" /> and <paramref name="inner" />, respectively.</para><para>These keys are compared for equality to match elements from each sequence.</para><para>A pair of elements is stored for each element in <paramref name="inner" /> that matches an element in <paramref name="outer" />, plus a pair for each element in <paramref name="outer" /> that has no matches in <paramref name="inner" />.</para><para>Then the <paramref name="resultSelector" /> function is invoked to project a result object from each pair of elements.</para><para></para> + This method has at least one parameter of type whose type argument is one of the types.For these parameters, you can pass in a lambda expression and it will be compiled to an . The method generates a that represents calling itself as a constructed generic method.It then passes the to the method of the represented by the property of the parameter. The query behavior that occurs as a result of executing an expression tree that represents calling depends on the implementation of the type of the parameter.The expected behavior is that of a left outer join.The and functions are used to extract keys from and , respectively.These keys are compared for equality to match elements from each sequence.A pair of elements is stored for each element in that matches an element in , plus a pair for each element in that has no matches in .Then the function is invoked to project a result object from each pair of elements. or or or or is . @@ -7120,7 +7120,7 @@ The last chunk will contain the remaining elements and may be of a smaller size. An to hash and compare keys. Correlates the elements of two sequences based on matching keys. A specified is used to compare keys. An that has elements of type that are obtained by performing a left outer join on two sequences. - <para><para> This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types.</para><para>For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para><para></para><para> The <see cref="M:System.Linq.Queryable.LeftJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}},System.Collections.Generic.IEqualityComparer{``2})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.LeftJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}},System.Collections.Generic.IEqualityComparer{``2})" /> itself as a constructed generic method.</para><para>It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="outer" /> parameter.</para><para></para><para> The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.LeftJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}},System.Collections.Generic.IEqualityComparer{``2})" /> depends on the implementation of the type of the <paramref name="outer" /> parameter.</para><para>The expected behavior is that of a left outer join.</para><para>The <paramref name="outerKeySelector" /> and <paramref name="innerKeySelector" /> functions are used to extract keys from <paramref name="outer" /> and <paramref name="inner" />, respectively.</para><para>These keys are compared for equality to match elements from each sequence.</para><para>A pair of elements is stored for each element in <paramref name="inner" /> that matches an element in <paramref name="outer" />, plus a pair for each element in <paramref name="outer" /> that has no matches in <paramref name="inner" />.</para><para>Then the <paramref name="resultSelector" /> function is invoked to project a result object from each pair of elements.</para><para></para> + This method has at least one parameter of type whose type argument is one of the types.For these parameters, you can pass in a lambda expression and it will be compiled to an . The method generates a that represents calling itself as a constructed generic method.It then passes the to the method of the represented by the property of the parameter. The query behavior that occurs as a result of executing an expression tree that represents calling depends on the implementation of the type of the parameter.The expected behavior is that of a left outer join.The and functions are used to extract keys from and , respectively.These keys are compared for equality to match elements from each sequence.A pair of elements is stored for each element in that matches an element in , plus a pair for each element in that has no matches in .Then the function is invoked to project a result object from each pair of elements. or or or or is . @@ -9223,7 +9223,7 @@ The query behavior that occurs as a result of executing an expression tree A function to create a result element from two matching elements. Correlates the elements of two sequences based on matching keys. The default equality comparer is used to compare keys. An that has elements of type that are obtained by performing a right outer join on two sequences. - <para><para> This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types.</para><para>For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para><para></para><para> The <see cref="M:System.Linq.Queryable.RightJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.RightJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}})" /> itself as a constructed generic method.</para><para>It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="outer" /> parameter.</para><para></para><para> The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.RightJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}})" /> depends on the implementation of the type of the <paramref name="outer" /> parameter.</para><para>The expected behavior is that of a right outer join.</para><para>The <paramref name="outerKeySelector" /> and <paramref name="innerKeySelector" /> functions are used to extract keys from <paramref name="outer" /> and <paramref name="inner" />, respectively.</para><para>These keys are compared for equality to match elements from each sequence.</para><para>A pair of elements is stored for each element in <paramref name="inner" /> that matches an element in <paramref name="outer" />, plus a pair for each element in <paramref name="inner" /> that has no matches in <paramref name="outer" />.</para><para>Then the <paramref name="resultSelector" /> function is invoked to project a result object from each pair of elements.</para><para></para> + This method has at least one parameter of type whose type argument is one of the types.For these parameters, you can pass in a lambda expression and it will be compiled to an . The method generates a that represents calling itself as a constructed generic method.It then passes the to the method of the represented by the property of the parameter. The query behavior that occurs as a result of executing an expression tree that represents calling depends on the implementation of the type of the parameter.The expected behavior is that of a right outer join.The and functions are used to extract keys from and , respectively.These keys are compared for equality to match elements from each sequence.A pair of elements is stored for each element in that matches an element in , plus a pair for each element in that has no matches in .Then the function is invoked to project a result object from each pair of elements. or or or or is . @@ -9318,7 +9318,7 @@ The query behavior that occurs as a result of executing an expression tree An to hash and compare keys. Correlates the elements of two sequences based on matching keys. A specified is used to compare keys. An that has elements of type that are obtained by performing a right outer join on two sequences. - <para><para> This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types.</para><para>For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para><para></para><para> The <see cref="M:System.Linq.Queryable.RightJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}},System.Collections.Generic.IEqualityComparer{``2})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.RightJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}},System.Collections.Generic.IEqualityComparer{``2})" /> itself as a constructed generic method.</para><para>It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="outer" /> parameter.</para><para></para><para> The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.RightJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}},System.Collections.Generic.IEqualityComparer{``2})" /> depends on the implementation of the type of the <paramref name="outer" /> parameter.</para><para>The expected behavior is that of a right outer join.</para><para>The <paramref name="outerKeySelector" /> and <paramref name="innerKeySelector" /> functions are used to extract keys from <paramref name="outer" /> and <paramref name="inner" />, respectively.</para><para>These keys are compared for equality to match elements from each sequence.</para><para>A pair of elements is stored for each element in <paramref name="inner" /> that matches an element in <paramref name="outer" />, plus a pair for each element in <paramref name="inner" /> that has no matches in <paramref name="outer" />.</para><para>Then the <paramref name="resultSelector" /> function is invoked to project a result object from each pair of elements.</para><para></para> + This method has at least one parameter of type whose type argument is one of the types.For these parameters, you can pass in a lambda expression and it will be compiled to an . The method generates a that represents calling itself as a constructed generic method.It then passes the to the method of the represented by the property of the parameter. The query behavior that occurs as a result of executing an expression tree that represents calling depends on the implementation of the type of the parameter.The expected behavior is that of a right outer join.The and functions are used to extract keys from and , respectively.These keys are compared for equality to match elements from each sequence.A pair of elements is stored for each element in that matches an element in , plus a pair for each element in that has no matches in .Then the function is invoked to project a result object from each pair of elements. or or or or is . diff --git a/xml/System.Runtime.InteropServices/CollectionsMarshal.xml b/xml/System.Runtime.InteropServices/CollectionsMarshal.xml index 73fd19effd3..53cfda8afb0 100644 --- a/xml/System.Runtime.InteropServices/CollectionsMarshal.xml +++ b/xml/System.Runtime.InteropServices/CollectionsMarshal.xml @@ -58,7 +58,7 @@ The whose backing storage should be viewed. Gets a view over a 's data. To be added. - The may have more capacity than is required to store the number of bits represented by .The returned span's will be the smallest number of bytes capable of representing that length. If the 's length is not evenly divisible by 8, the last byte of the span may contain extraneous bits that do not represent elements in the .These may be ignored. The length of the should not be changed while the resulting is in use. After such a change, the span may no longer refer to the 's backing storage. + The may have more capacity than is required to store the number of bits represented by .The returned span's will be the smallest number of bytes capable of representing that length. If the 's length is not evenly divisible by 8, the last byte of the span may contain extraneous bits that do not represent elements in the .These may be ignored. The length of the should not be changed while the resulting is in use. After such a change, the span may no longer refer to the 's backing storage. diff --git a/xml/System.Runtime.InteropServices/JsonMarshal.xml b/xml/System.Runtime.InteropServices/JsonMarshal.xml index ea35879718b..470b08e6465 100644 --- a/xml/System.Runtime.InteropServices/JsonMarshal.xml +++ b/xml/System.Runtime.InteropServices/JsonMarshal.xml @@ -41,7 +41,7 @@ The JSON property from which to extract the span. Gets a view over the raw JSON data of the given name. The span containing the raw JSON data of the name. This will not include the enclosing quotes. - <para><para> While the method itself does check for disposal of the underlying <see cref="T:System.Text.Json.JsonDocument" />, it is possible that it could be disposed after the method returns, which would result in the span pointing to a buffer that has been returned to the shared pool. Callers should take extra care to make sure that such a scenario isn't possible to avoid potential data corruption.</para><para></para> + While the method itself does check for disposal of the underlying , it is possible that it could be disposed after the method returns, which would result in the span pointing to a buffer that has been returned to the shared pool. Callers should take extra care to make sure that such a scenario isn't possible to avoid potential data corruption. The underlying has been disposed. diff --git a/xml/System.Security.Cryptography.Cose/CoseSign1Message.xml b/xml/System.Security.Cryptography.Cose/CoseSign1Message.xml index 9f920e14acb..aa3e3bc869a 100644 --- a/xml/System.Security.Cryptography.Cose/CoseSign1Message.xml +++ b/xml/System.Security.Cryptography.Cose/CoseSign1Message.xml @@ -706,7 +706,7 @@ The algorithm protected header doesn't match with the algorithms supported by th is of an unsupported type. The content is embedded on this message, use an overload that uses embedded content. - <para><para> <see cref="P:System.Security.Cryptography.Cose.CoseMessage.ProtectedHeaders" /> does not have a value for the <see cref="P:System.Security.Cryptography.Cose.CoseHeaderLabel.Algorithm" /> header.</para><para></para><para>-or-</para><para> The algorithm protected header was incorrectly formatted.</para><para></para><para>-or-</para><para> The algorithm protected header was not one of the values supported by this implementation.</para><para></para><para>-or-</para><para> The algorithm protected header doesn't match with the algorithms supported by the specified <paramref name="key" />.</para><para></para> + does not have a value for the header.-or- The algorithm protected header was incorrectly formatted.-or- The algorithm protected header was not one of the values supported by this implementation.-or- The algorithm protected header doesn't match with the algorithms supported by the specified . @@ -747,9 +747,9 @@ The algorithm protected header doesn't match with the algorithms supported by th To be added. or is . - <para><para> <paramref name="key" /> is of an unsupported type.</para><para></para><para>-or-</para><para> <paramref name="detachedContent" /> does not support reading or seeking.</para><para></para> + is of an unsupported type.-or- does not support reading or seeking. The content is embedded on this message, use an overload that uses embedded content. - <para><para> <see cref="P:System.Security.Cryptography.Cose.CoseMessage.ProtectedHeaders" /> does not have a value for the <see cref="P:System.Security.Cryptography.Cose.CoseHeaderLabel.Algorithm" /> header.</para><para></para><para>-or-</para><para> The algorithm protected header was incorrectly formatted.</para><para></para><para>-or-</para><para> The algorithm protected header was not one of the values supported by this implementation.</para><para></para><para>-or-</para><para> The algorithm protected header doesn't match with the algorithms supported by the specified <paramref name="key" />.</para><para></para> + does not have a value for the header.-or- The algorithm protected header was incorrectly formatted.-or- The algorithm protected header was not one of the values supported by this implementation.-or- The algorithm protected header doesn't match with the algorithms supported by the specified . @@ -793,7 +793,7 @@ The algorithm protected header doesn't match with the algorithms supported by th is of an unsupported type. The content is embedded on this message, use an overload that uses embedded content. - <para><para> <see cref="P:System.Security.Cryptography.Cose.CoseMessage.ProtectedHeaders" /> does not have a value for the <see cref="P:System.Security.Cryptography.Cose.CoseHeaderLabel.Algorithm" /> header.</para><para></para><para>-or-</para><para> The algorithm protected header was incorrectly formatted.</para><para></para><para>-or-</para><para> The algorithm protected header was not one of the values supported by this implementation.</para><para></para><para>-or-</para><para> The algorithm protected header doesn't match with the algorithms supported by the specified <paramref name="key" />.</para><para></para> + does not have a value for the header.-or- The algorithm protected header was incorrectly formatted.-or- The algorithm protected header was not one of the values supported by this implementation.-or- The algorithm protected header doesn't match with the algorithms supported by the specified . @@ -900,9 +900,9 @@ The algorithm protected header doesn't match with the algorithms supported by th To be added. or is . - <para><para> <paramref name="key" /> is of an unsupported type.</para><para></para><para>-or-</para><para> <paramref name="detachedContent" /> does not support reading or seeking.</para><para></para> + is of an unsupported type.-or- does not support reading or seeking. The content is embedded on this message, use an overload that uses embedded content. - <para><para> <see cref="P:System.Security.Cryptography.Cose.CoseMessage.ProtectedHeaders" /> does not have a value for the <see cref="P:System.Security.Cryptography.Cose.CoseHeaderLabel.Algorithm" /> header.</para><para></para><para>-or-</para><para> The algorithm protected header was incorrectly formatted.</para><para></para><para>-or-</para><para> The algorithm protected header was not one of the values supported by this implementation.</para><para></para><para>-or-</para><para> The algorithm protected header doesn't match with the algorithms supported by the specified <paramref name="key" />.</para><para></para> + does not have a value for the header.-or- The algorithm protected header was incorrectly formatted.-or- The algorithm protected header was not one of the values supported by this implementation.-or- The algorithm protected header doesn't match with the algorithms supported by the specified . @@ -1056,7 +1056,7 @@ The algorithm protected header doesn't match with the algorithms supported by th is of an unsupported type. The content is detached from this message, use an overload that accepts a detached content. - <para><para> <see cref="P:System.Security.Cryptography.Cose.CoseMessage.ProtectedHeaders" /> does not have a value for the <see cref="P:System.Security.Cryptography.Cose.CoseHeaderLabel.Algorithm" /> header.</para><para></para><para>-or-</para><para> The algorithm protected header was incorrectly formatted.</para><para></para><para>-or-</para><para> The algorithm protected header was not one of the values supported by this implementation.</para><para></para><para>-or-</para><para> The algorithm protected header doesn't match with the algorithms supported by the specified <paramref name="key" />.</para><para></para> + does not have a value for the header.-or- The algorithm protected header was incorrectly formatted.-or- The algorithm protected header was not one of the values supported by this implementation.-or- The algorithm protected header doesn't match with the algorithms supported by the specified . diff --git a/xml/System.Security.Cryptography.Cose/CoseSignature.xml b/xml/System.Security.Cryptography.Cose/CoseSignature.xml index 894f29e0d11..91478d95bc2 100644 --- a/xml/System.Security.Cryptography.Cose/CoseSignature.xml +++ b/xml/System.Security.Cryptography.Cose/CoseSignature.xml @@ -344,7 +344,7 @@ The algorithm protected header doesn't match with the algorithms supported by th is of an unsupported type. The content is embedded on the associated message, use an overload that uses embedded content. - <para><para> <see cref="P:System.Security.Cryptography.Cose.CoseMessage.ProtectedHeaders" /> does not have a value for the <see cref="P:System.Security.Cryptography.Cose.CoseHeaderLabel.Algorithm" /> header.</para><para></para><para>-or-</para><para> The algorithm protected header was incorrectly formatted.</para><para></para><para>-or-</para><para> The algorithm protected header was not one of the values supported by this implementation.</para><para></para><para>-or-</para><para> The algorithm protected header doesn't match with the algorithms supported by the specified <paramref name="key" />.</para><para></para> + does not have a value for the header.-or- The algorithm protected header was incorrectly formatted.-or- The algorithm protected header was not one of the values supported by this implementation.-or- The algorithm protected header doesn't match with the algorithms supported by the specified . @@ -385,9 +385,9 @@ The algorithm protected header doesn't match with the algorithms supported by th To be added. or is . - <para><para> <paramref name="key" /> is of an unsupported type.</para><para></para><para>-or-</para><para> <paramref name="detachedContent" /> does not support reading or seeking.</para><para></para> + is of an unsupported type.-or- does not support reading or seeking. The content is embedded on the associated message, use an overload that uses embedded content. - <para><para> <see cref="P:System.Security.Cryptography.Cose.CoseMessage.ProtectedHeaders" /> does not have a value for the <see cref="P:System.Security.Cryptography.Cose.CoseHeaderLabel.Algorithm" /> header.</para><para></para><para>-or-</para><para> The algorithm protected header was incorrectly formatted.</para><para></para><para>-or-</para><para> The algorithm protected header was not one of the values supported by this implementation.</para><para></para><para>-or-</para><para> The algorithm protected header doesn't match with the algorithms supported by the specified <paramref name="key" />.</para><para></para> + does not have a value for the header.-or- The algorithm protected header was incorrectly formatted.-or- The algorithm protected header was not one of the values supported by this implementation.-or- The algorithm protected header doesn't match with the algorithms supported by the specified . @@ -430,7 +430,7 @@ The algorithm protected header doesn't match with the algorithms supported by th is of an unsupported type. The content is embedded on the associated message, use an overload that uses embedded content. - <para><para> <see cref="P:System.Security.Cryptography.Cose.CoseMessage.ProtectedHeaders" /> does not have a value for the <see cref="P:System.Security.Cryptography.Cose.CoseHeaderLabel.Algorithm" /> header.</para><para></para><para>-or-</para><para> The algorithm protected header was incorrectly formatted.</para><para></para><para>-or-</para><para> The algorithm protected header was not one of the values supported by this implementation.</para><para></para><para>-or-</para><para> The algorithm protected header doesn't match with the algorithms supported by the specified <paramref name="key" />.</para><para></para> + does not have a value for the header.-or- The algorithm protected header was incorrectly formatted.-or- The algorithm protected header was not one of the values supported by this implementation.-or- The algorithm protected header doesn't match with the algorithms supported by the specified . @@ -537,9 +537,9 @@ The algorithm protected header doesn't match with the algorithms supported by th To be added. or is . - <para><para> <paramref name="key" /> is of an unsupported type.</para><para></para><para>-or-</para><para> <paramref name="detachedContent" /> does not support reading or seeking.</para><para></para> + is of an unsupported type.-or- does not support reading or seeking. The content is embedded on the associated message, use an overload that uses embedded content. - <para><para> <see cref="P:System.Security.Cryptography.Cose.CoseMessage.ProtectedHeaders" /> does not have a value for the <see cref="P:System.Security.Cryptography.Cose.CoseHeaderLabel.Algorithm" /> header.</para><para></para><para>-or-</para><para> The algorithm protected header was incorrectly formatted.</para><para></para><para>-or-</para><para> The algorithm protected header was not one of the values supported by this implementation.</para><para></para><para>-or-</para><para> The algorithm protected header doesn't match with the algorithms supported by the specified <paramref name="key" />.</para><para></para> + does not have a value for the header.-or- The algorithm protected header was incorrectly formatted.-or- The algorithm protected header was not one of the values supported by this implementation.-or- The algorithm protected header doesn't match with the algorithms supported by the specified . @@ -694,7 +694,7 @@ The algorithm protected header doesn't match with the algorithms supported by th is of an unsupported type. The content is detached from the associated message, use an overload that accepts a detached content. - <para><para> <see cref="P:System.Security.Cryptography.Cose.CoseMessage.ProtectedHeaders" /> does not have a value for the <see cref="P:System.Security.Cryptography.Cose.CoseHeaderLabel.Algorithm" /> header.</para><para></para><para>-or-</para><para> The algorithm protected header was incorrectly formatted.</para><para></para><para>-or-</para><para> The algorithm protected header was not one of the values supported by this implementation.</para><para></para><para>-or-</para><para> The algorithm protected header doesn't match with the algorithms supported by the specified <paramref name="key" />.</para><para></para> + does not have a value for the header.-or- The algorithm protected header was incorrectly formatted.-or- The algorithm protected header was not one of the values supported by this implementation.-or- The algorithm protected header doesn't match with the algorithms supported by the specified . diff --git a/xml/System.Security.Cryptography.X509Certificates/X509Certificate.xml b/xml/System.Security.Cryptography.X509Certificates/X509Certificate.xml index 1681ea7a414..f6fa439e244 100644 --- a/xml/System.Security.Cryptography.X509Certificates/X509Certificate.xml +++ b/xml/System.Security.Cryptography.X509Certificates/X509Certificate.xml @@ -2044,7 +2044,7 @@ contains a Unicode 'NULL' character. is . - <para><para>The current instance is disposed.</para><para>-or-</para><para>The export operation failed.</para><para>-or-</para><para> <paramref name="exportParameters" /> specifies a <see cref="P:System.Security.Cryptography.PbeParameters.HashAlgorithm" /> value that is not supported for the <see cref="P:System.Security.Cryptography.PbeParameters.EncryptionAlgorithm" /> value.</para><para></para><para>-or-</para><para> <paramref name="exportParameters" /> contains an invalid encryption algorithm for <see cref="P:System.Security.Cryptography.PbeParameters.EncryptionAlgorithm" />.</para><para></para> + The current instance is disposed.-or-The export operation failed.-or- specifies a value that is not supported for the value.-or- contains an invalid encryption algorithm for . diff --git a/xml/System.Security.Cryptography.X509Certificates/X509Certificate2Collection.xml b/xml/System.Security.Cryptography.X509Certificates/X509Certificate2Collection.xml index a1f65f15764..4d56a408d8b 100644 --- a/xml/System.Security.Cryptography.X509Certificates/X509Certificate2Collection.xml +++ b/xml/System.Security.Cryptography.X509Certificates/X509Certificate2Collection.xml @@ -803,7 +803,7 @@ contains a Unicode 'NULL' character. is . - <para><para>The export operation failed.</para><para>-or-</para><para> <paramref name="exportParameters" /> specifies a <see cref="P:System.Security.Cryptography.PbeParameters.HashAlgorithm" /> value that is not supported for the <see cref="P:System.Security.Cryptography.PbeParameters.EncryptionAlgorithm" /> value.</para><para></para><para>-or-</para><para> <paramref name="exportParameters" /> contains an invalid encryption algorithm for <see cref="P:System.Security.Cryptography.PbeParameters.EncryptionAlgorithm" />.</para><para></para> + The export operation failed.-or- specifies a value that is not supported for the value.-or- contains an invalid encryption algorithm for . @@ -1011,7 +1011,7 @@ . is or empty. specifies a hash algorithm not supported by the current platform. - <para><para> <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</para><para></para><para>-or-</para><para> An error occured while finding the certificates with a matching thumbprint.</para><para></para> + specifies an unknown hash algorithm.-or- An error occured while finding the certificates with a matching thumbprint. @@ -1051,10 +1051,10 @@ Searches the collection for certificates with a matching thumbprint. A collection of certificates with a matching thumbprint. To be added. - <para><para> <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or empty.</para><para></para><para>-or-</para><para> <paramref name="thumbprintHex" /> contains invalid hexadecimal characters.</para><para></para><para>-or-</para><para> <paramref name="thumbprintHex" /> does not decode evenly and contains an odd number of characters.</para><para></para> + . is or empty.-or- contains invalid hexadecimal characters.-or- does not decode evenly and contains an odd number of characters. specifies a hash algorithm not supported by the current platform. - <para><para> <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</para><para></para><para>-or-</para><para> An error occured while finding the certificates with a matching thumbprint.</para><para></para> + specifies an unknown hash algorithm.-or- An error occured while finding the certificates with a matching thumbprint. @@ -1090,10 +1090,10 @@ To be added. is . - <para><para> <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or empty.</para><para></para><para>-or-</para><para> <paramref name="thumbprintHex" /> contains invalid hexadecimal characters.</para><para></para><para>-or-</para><para> <paramref name="thumbprintHex" /> does not decode evenly and contains an odd number of characters.</para><para></para> + . is or empty.-or- contains invalid hexadecimal characters.-or- does not decode evenly and contains an odd number of characters. specifies a hash algorithm not supported by the current platform. - <para><para> <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</para><para></para><para>-or-</para><para> An error occured while finding the certificates with a matching thumbprint.</para><para></para> + specifies an unknown hash algorithm.-or- An error occured while finding the certificates with a matching thumbprint. diff --git a/xml/System.Security.Cryptography/Aes.xml b/xml/System.Security.Cryptography/Aes.xml index 0d782571a1f..c58496a18ee 100644 --- a/xml/System.Security.Cryptography/Aes.xml +++ b/xml/System.Security.Cryptography/Aes.xml @@ -410,8 +410,8 @@ Unwraps a key that was wrapped using the IETF RFC 5649 AES Key Wrap with Padding algorithm. The number of bytes in the unwrapped key. To be added. - <para><para> <paramref name="ciphertext" /> has a <see cref="P:System.ReadOnlySpan`1.Length" /> that does not correspond to the output of the Key Wrap with Padding algorithm.</para><para></para><para>-or-</para><para> <paramref name="destination" /> has a <see cref="P:System.Span`1.Length" /> that is more than 16 bytes shorter than <paramref name="ciphertext" />, thus guaranteed too short to hold the unwrapped key.</para><para></para> - <para><para> <paramref name="ciphertext" /> and <paramref name="destination" /> overlap.</para><para>-or-</para><para>The unwrap algorithm failed to unwrap the ciphertext.</para><para>-or-</para><para>An error occurred during the cryptographic operation.</para> + has a that does not correspond to the output of the Key Wrap with Padding algorithm.-or- has a that is more than 16 bytes shorter than , thus guaranteed too short to hold the unwrapped key. + and overlap.-or-The unwrap algorithm failed to unwrap the ciphertext.-or-An error occurred during the cryptographic operation. @@ -450,7 +450,7 @@ The buffer to receive the unwrapped key. Unwraps a key that was wrapped using the IETF RFC 5649 AES Key Wrap with Padding algorithm. The number of bytes in the unwrapped key. - <para><para> When called by the base class, <paramref name="source" /> is pre-validated to be at least 16 bytes long and a multiple of 8 bytes.</para><para></para><para> When called by the base class, <paramref name="destination" /> will always be exactly 8 bytes shorter than <paramref name="source" />, so any valid value will always fit.</para><para></para> + When called by the base class, is pre-validated to be at least 16 bytes long and a multiple of 8 bytes. When called by the base class, will always be exactly 8 bytes shorter than , so any valid value will always fit. The unwrap algorithm failed to unwrap the ciphertext. -or- @@ -582,8 +582,8 @@ Wraps a key using the IETF RFC 5649 AES Key Wrap with Padding algorithm, writing the result to a specified buffer.
    To be added. - <para><para> <paramref name="plaintext" /> is empty.</para><para>-or-</para><para> <paramref name="destination" /> is not precisely sized.</para> - <para><para> <paramref name="plaintext" /> and <paramref name="destination" /> overlap.</para><para>-or-</para><para>An error occurred during the cryptographic operation.</para> + is empty.-or- is not precisely sized. + and overlap.-or-An error occurred during the cryptographic operation.
    @@ -624,7 +624,7 @@ Wraps a key using the IETF RFC 5649 AES Key Wrap with Padding algorithm, writing the result to a specified buffer. - <para><para> When called by the base class, <paramref name="source" /> is pre-validated to not be empty.</para><para></para><para> When called by the base class, <paramref name="destination" /> is pre-validated to be exactly the length returned by <see cref="M:System.Security.Cryptography.Aes.GetKeyWrapPaddedLength(System.Int32)" /> for the given input.</para><para></para> + When called by the base class, is pre-validated to not be empty. When called by the base class, is pre-validated to be exactly the length returned by for the given input. An error occurred during the cryptographic operation. @@ -665,7 +665,7 @@ The padded length of the key wrap for the specified plaintext. To be added. - <para><para> <paramref name="plaintextLengthInBytes" /> is less than or equal to zero.</para><para></para><para>-or-</para><para> <paramref name="plaintextLengthInBytes" /> represents a plaintext length that, when wrapped, has a length that cannot be represented as a signed 32-bit integer.</para><para></para> + is less than or equal to zero.-or- represents a plaintext length that, when wrapped, has a length that cannot be represented as a signed 32-bit integer. @@ -801,7 +801,7 @@ has a that does not correspond to the output of the Key Wrap with Padding algorithm.
    - <para><para> <paramref name="ciphertext" /> and <paramref name="destination" /> overlap.</para><para>-or-</para><para>The unwrap algorithm failed to unwrap the ciphertext.</para><para>-or-</para><para>An error occurred during the cryptographic operation.</para> + and overlap.-or-The unwrap algorithm failed to unwrap the ciphertext.-or-An error occurred during the cryptographic operation. diff --git a/xml/System.Security.Cryptography/AesCng.xml b/xml/System.Security.Cryptography/AesCng.xml index 7935121cb48..0fd9b5a37a6 100644 --- a/xml/System.Security.Cryptography/AesCng.xml +++ b/xml/System.Security.Cryptography/AesCng.xml @@ -140,7 +140,7 @@ To be added. is . - <para><para> <paramref name="key" /> does not represent an AES key.</para><para></para><para> -or-</para><para></para><para> An error occured while performing a cryptographic operation.</para><para></para> + does not represent an AES key. -or- An error occured while performing a cryptographic operation. Cryptography Next Generation (CNG) is not supported on this system. diff --git a/xml/System.Security.Cryptography/MLDsaOpenSsl.xml b/xml/System.Security.Cryptography/MLDsaOpenSsl.xml index 45a08bb5b01..b126f7d3e50 100644 --- a/xml/System.Security.Cryptography/MLDsaOpenSsl.xml +++ b/xml/System.Security.Cryptography/MLDsaOpenSsl.xml @@ -21,7 +21,7 @@ Represents an ML-DSA key backed by OpenSSL. - <para><para> This algorithm is specified by FIPS-204.</para><para></para><para> Developers are encouraged to program against the <c>MLDsa</c> base class, rather than any specific derived class.</para><para>The derived classes are intended for interop with the underlying system cryptographic libraries.</para><para></para> + This algorithm is specified by FIPS-204. Developers are encouraged to program against the MLDsa base class, rather than any specific derived class.The derived classes are intended for interop with the underlying system cryptographic libraries. diff --git a/xml/System.Security.Cryptography/MLKemOpenSsl.xml b/xml/System.Security.Cryptography/MLKemOpenSsl.xml index a05a596146d..ae968ec045c 100644 --- a/xml/System.Security.Cryptography/MLKemOpenSsl.xml +++ b/xml/System.Security.Cryptography/MLKemOpenSsl.xml @@ -15,7 +15,7 @@ Represents an ML-KEM key backed by OpenSSL. - <para><para> This algorithm is specified by FIPS-203.</para><para></para><para> Developers are encouraged to program against the <c>MLKem</c> base class, rather than any specific derived class.</para><para>The derived classes are intended for interop with the underlying system cryptographic libraries.</para><para></para> + This algorithm is specified by FIPS-203. Developers are encouraged to program against the <c>MLKem</c> base class, rather than any specific derived class.The derived classes are intended for interop with the underlying system cryptographic libraries. diff --git a/xml/System.Security.Cryptography/PemEncoding.xml b/xml/System.Security.Cryptography/PemEncoding.xml index 1f824980e9e..7a34bae9e68 100644 --- a/xml/System.Security.Cryptography/PemEncoding.xml +++ b/xml/System.Security.Cryptography/PemEncoding.xml @@ -103,7 +103,7 @@ IETF RFC 7468 permits different decoding rules. This method always uses lax rule A value that specifies the location, label, and data location of the encoded data. - <para><para>IETF RFC 7468 permits different decoding rules. This method always uses lax rules.</para><para> This does not validate the UTF-8 data outside of encapsulation boundaries and is ignored. It is the caller's responsibility to ensure the entire input is UTF-8 if required.</para><para></para> + IETF RFC 7468 permits different decoding rules. This method always uses lax rules. This does not validate the UTF-8 data outside of encapsulation boundaries and is ignored. It is the caller's responsibility to ensure the entire input is UTF-8 if required. does not contain a well-formed PEM-encoded value. @@ -235,7 +235,7 @@ IETF RFC 7468 permits different decoding rules. This method always uses lax rule Attempts to find the first PEM-encoded data. if PEM-encoded data was found; otherwise . - <para><para>IETF RFC 7468 permits different decoding rules. This method always uses lax rules.</para><para> This does not validate the UTF-8 data outside of encapsulation boundaries and is ignored. It is the caller's responsibility to ensure the entire input is UTF-8 if required.</para><para></para> + IETF RFC 7468 permits different decoding rules. This method always uses lax rules. This does not validate the UTF-8 data outside of encapsulation boundaries and is ignored. It is the caller's responsibility to ensure the entire input is UTF-8 if required. @@ -343,10 +343,10 @@ This method always wraps the base-64 encoded text to 64 characters, per the reco exceeds the maximum possible label length. -or- - + exceeds the maximum possible encoded data length. - <para><para> The resulting PEM-encoded text is larger than <see cref="F:System.Int32.MaxValue" />.</para><para></para><para>- or -</para><para> <paramref name="utf8Label" /> contains invalid characters or is malformed UTF-8.</para><para></para> + The resulting PEM-encoded text is larger than .- or - contains invalid characters or is malformed UTF-8. @@ -504,8 +504,8 @@ This method always wraps the base-64 encoded text to 64 characters, per the This method always wraps the base-64 encoded text to 64 characters, per the recommended wrapping of RFC-7468. Unix-style line endings are used for line breaks. - <para><para> <paramref name="utf8Label" /> exceeds the maximum possible label length.</para><para></para><para> -or-</para><para></para><para> <paramref name="data" /> exceeds the maximum possible encoded data length.</para><para></para> - <para><para> The resulting PEM-encoded text is larger than <see cref="F:System.Int32.MaxValue" />.</para><para></para><para> -or-</para><para></para><para> <paramref name="utf8Label" /> contains invalid characters or is malformed UTF-8.</para><para></para> + exceeds the maximum possible label length. -or- exceeds the maximum possible encoded data length. + The resulting PEM-encoded text is larger than . -or- contains invalid characters or is malformed UTF-8. diff --git a/xml/System.Security.Cryptography/SlhDsaOpenSsl.xml b/xml/System.Security.Cryptography/SlhDsaOpenSsl.xml index 6bb6f038a8c..3393be9f983 100644 --- a/xml/System.Security.Cryptography/SlhDsaOpenSsl.xml +++ b/xml/System.Security.Cryptography/SlhDsaOpenSsl.xml @@ -21,7 +21,7 @@ Represents an SLH-DSA key backed by OpenSSL. - <para><para> This algorithm is specified by FIPS-205.</para><para></para><para> Developers are encouraged to program against the <c>SlhDsa</c> base class, rather than any specific derived class.</para><para>The derived classes are intended for interop with the underlying system cryptographic libraries.</para><para></para> + This algorithm is specified by FIPS-205. Developers are encouraged to program against the SlhDsa base class, rather than any specific derived class.The derived classes are intended for interop with the underlying system cryptographic libraries. diff --git a/xml/System.Security.Cryptography/SymmetricAlgorithm.xml b/xml/System.Security.Cryptography/SymmetricAlgorithm.xml index 5962f21287d..30a35587c84 100644 --- a/xml/System.Security.Cryptography/SymmetricAlgorithm.xml +++ b/xml/System.Security.Cryptography/SymmetricAlgorithm.xml @@ -3176,7 +3176,7 @@ Allows an to attempt to free resources and perfor The new key for this instance. Sets the key for this instance. To be added. - <para><para> The key size is invalid.</para><para></para><para>-or-</para><para> An error occurred while setting the key.</para><para></para> + The key size is invalid.-or- An error occurred while setting the key. @@ -3206,7 +3206,7 @@ Allows an to attempt to free resources and perfor The new key for this instance. Sets the key for this instance. - <para><para> <see cref="T:System.Security.Cryptography.SymmetricAlgorithm" /> will only call this method after validating the length of <paramref name="key" /> against <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.LegalKeySizes" />.</para><para>Other callers are expected to similarly ensure that this method is only called with validly-sized inputs.</para><para></para><para> The base class implementation is to assign the <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" /> property.</para><para>Derived types should override this method to avoid copying the key into a new array.</para><para></para> + will only call this method after validating the length of against .Other callers are expected to similarly ensure that this method is only called with validly-sized inputs. The base class implementation is to assign the property.Derived types should override this method to avoid copying the key into a new array. An error occurred while setting the key. diff --git a/xml/System.Text.Json/JsonSerializerOptions.xml b/xml/System.Text.Json/JsonSerializerOptions.xml index f025d0a95a9..631aa506152 100644 --- a/xml/System.Text.Json/JsonSerializerOptions.xml +++ b/xml/System.Text.Json/JsonSerializerOptions.xml @@ -194,7 +194,7 @@ similar to how Defines whether duplicate property names are allowed when deserializing JSON objects. To be added. - <para><para> By default, it's set to <see langword="true" />. If set to <see langword="false" />, <see cref="T:System.Text.Json.JsonException" /> is thrown when a duplicate property name is encountered during deserialization.</para><para></para><para> Duplicate property names are not allowed in serialization.</para><para></para> + By default, it's set to . If set to , is thrown when a duplicate property name is encountered during deserialization. Duplicate property names are not allowed in serialization. Thrown if this property is set after serialization or deserialization has occurred. From 7716929291ef9810605d697c3b495534d6712e29 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Thu, 2 Oct 2025 11:54:41 -0700 Subject: [PATCH 30/39] Apply feedback from review --- .../ValidationContext.xml | 2 +- xml/System.Data.SqlTypes/SqlDecimal.xml | 4 ++-- xml/System.Data.SqlTypes/SqlMoney.xml | 2 +- xml/System.Data/DataRowView.xml | 2 +- xml/System.Diagnostics.Metrics/Meter.xml | 2 +- xml/System.Diagnostics.Metrics/MeterOptions.xml | 2 +- xml/System.Diagnostics/Activity.xml | 2 +- xml/System.Diagnostics/ActivityListener.xml | 2 +- xml/System.Diagnostics/ActivitySource.xml | 12 ++++++------ xml/System.Diagnostics/ActivitySourceOptions.xml | 12 ++++++------ xml/System.Diagnostics/ExceptionRecorder.xml | 2 +- xml/System.Diagnostics/ProcessStartInfo.xml | 11 +++++------ .../LdapSessionOptions.xml | 13 ++++++------- 13 files changed, 33 insertions(+), 35 deletions(-) diff --git a/xml/System.ComponentModel.DataAnnotations/ValidationContext.xml b/xml/System.ComponentModel.DataAnnotations/ValidationContext.xml index a92529bcb59..d06f0e3ac3c 100644 --- a/xml/System.ComponentModel.DataAnnotations/ValidationContext.xml +++ b/xml/System.ComponentModel.DataAnnotations/ValidationContext.xml @@ -315,7 +315,7 @@ If , an empty dictionary will be created. If not , the set of key/value pairs will be copied into a new dictionary, preventing consumers from modifying the original dictionary. - Construct a for a given object instance with a , an optional , and an optional property bag of . + Constructs a for a given object instance with a , an optional , and an optional property bag of . This constructor is trim-safe because it does not use reflection to resolve the Type of the to support setting the DisplayName. diff --git a/xml/System.Data.SqlTypes/SqlDecimal.xml b/xml/System.Data.SqlTypes/SqlDecimal.xml index 138d5dda18f..45652a2bb35 100644 --- a/xml/System.Data.SqlTypes/SqlDecimal.xml +++ b/xml/System.Data.SqlTypes/SqlDecimal.xml @@ -4371,8 +4371,8 @@ This member is an explicit interface member implementation. It can be used only Writes the four 32-bit unsigned integer values that make up the structure into the span. The number of items written to the . To be added. - Thrown when the is . - Thrown when the destination span is too small. + The is . + The destination span is too small. diff --git a/xml/System.Data.SqlTypes/SqlMoney.xml b/xml/System.Data.SqlTypes/SqlMoney.xml index 21ce034dac5..63a9dac4c4e 100644 --- a/xml/System.Data.SqlTypes/SqlMoney.xml +++ b/xml/System.Data.SqlTypes/SqlMoney.xml @@ -825,7 +825,7 @@ Returns the Tabular Data Stream (TDS) long value that makes up the structure of the instance. A that represents the TDS long value. To be added. - Thrown when the is . + The is . diff --git a/xml/System.Data/DataRowView.xml b/xml/System.Data/DataRowView.xml index a31319ca855..2ae9c2356f4 100644 --- a/xml/System.Data/DataRowView.xml +++ b/xml/System.Data/DataRowView.xml @@ -418,7 +418,7 @@ Returns a for the child with the specified name and parent. a for the child . To be added. - Unmatched . + could not be matched. diff --git a/xml/System.Diagnostics.Metrics/Meter.xml b/xml/System.Diagnostics.Metrics/Meter.xml index 0d9270f2563..79a371f93cf 100644 --- a/xml/System.Diagnostics.Metrics/Meter.xml +++ b/xml/System.Diagnostics.Metrics/Meter.xml @@ -2529,7 +2529,7 @@ UpDownCounter is an Instrument which supports reporting positive or negative met - The optional schema URL specifies a location of a Schema File that can be retrieved using HTTP or HTTPS protocol. + Gets the location of a Schema File that can be retrieved using HTTP or HTTPS protocol. To be added. To be added. diff --git a/xml/System.Diagnostics.Metrics/MeterOptions.xml b/xml/System.Diagnostics.Metrics/MeterOptions.xml index c40be1d5cf3..c3e8b000476 100644 --- a/xml/System.Diagnostics.Metrics/MeterOptions.xml +++ b/xml/System.Diagnostics.Metrics/MeterOptions.xml @@ -147,7 +147,7 @@ - The optional schema URL specifies a location of a Schema File that can be retrieved using HTTP or HTTPS protocol. + Gets the location of a Schema File that can be retrieved using HTTP or HTTPS protocol. To be added. To be added. diff --git a/xml/System.Diagnostics/Activity.xml b/xml/System.Diagnostics/Activity.xml index 9a4ce207227..aa4edfba21e 100644 --- a/xml/System.Diagnostics/Activity.xml +++ b/xml/System.Diagnostics/Activity.xml @@ -279,7 +279,7 @@ Callers should either restrict the number of events added to the same `Activity` The to add. - Add an to the list. + Adds an to the list. for convenient chaining. diff --git a/xml/System.Diagnostics/ActivityListener.xml b/xml/System.Diagnostics/ActivityListener.xml index d99ec922724..21e1b724a08 100644 --- a/xml/System.Diagnostics/ActivityListener.xml +++ b/xml/System.Diagnostics/ActivityListener.xml @@ -165,7 +165,7 @@ System.Diagnostics.ExceptionRecorder - Set or get the callback used to listen to events when exceptions are added. + Gets or sets the callback used to listen to events when exceptions are added. To be added. To be added. diff --git a/xml/System.Diagnostics/ActivitySource.xml b/xml/System.Diagnostics/ActivitySource.xml index 7cbd40b4e41..407467c4362 100644 --- a/xml/System.Diagnostics/ActivitySource.xml +++ b/xml/System.Diagnostics/ActivitySource.xml @@ -50,7 +50,7 @@ The object to use for initializing the ActivitySource object. - Initialize a new instance of the ActivitySource object using the . + Initializes a new instance of using the . To be added. @@ -72,7 +72,7 @@ The name of the ActivitySource object - Construct an ActivitySource object with the input name + Initializes a new instance of with the specified input name. To be added. @@ -148,10 +148,10 @@ - The name of the ActivitySource object + The name of the ActivitySource object. The version of the component publishing the tracing info. The optional ActivitySource tags. - Construct an ActivitySource object with the input name + Initializes a new instance of with the specified input name. To be added. @@ -672,7 +672,7 @@ If the Activity object is created, it will not start automatically. Callers need System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<System.String,System.Object>> - Returns the tags associated with the ActivitySource. + Gets the tags associated with the ActivitySource. To be added. To be added. @@ -699,7 +699,7 @@ If the Activity object is created, it will not start automatically. Callers need System.String - Returns the telemetry schema URL associated with the ActivitySource. + Gets the telemetry schema URL associated with the ActivitySource. To be added. To be added. diff --git a/xml/System.Diagnostics/ActivitySourceOptions.xml b/xml/System.Diagnostics/ActivitySourceOptions.xml index 182d0baa0f5..1da2ec95bf9 100644 --- a/xml/System.Diagnostics/ActivitySourceOptions.xml +++ b/xml/System.Diagnostics/ActivitySourceOptions.xml @@ -20,7 +20,7 @@ - Options for creating a . + Options for creating an . To be added. @@ -67,7 +67,7 @@ System.String - Get or set the object name. Cannot be . + Gets or sets the object name. Cannot be . To be added. To be added. @@ -94,7 +94,7 @@ System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<System.String,System.Object>> - The optional list of key-value pair tags associated with the . + Gets or sets the optional list of key-value pair tags associated with the . To be added. To be added. @@ -116,7 +116,7 @@ - The optional schema URL specifies a location of a Schema File that can be retrieved using HTTP or HTTPS protocol. + Gets or sets the location of a Schema file that can be retrieved using HTTP or HTTPS protocol. To be added. To be added. @@ -138,8 +138,8 @@ System.String - The optional version. Defaulted to empty string. - To be added. + Gets or sets the version. + The version. The default value is the empty string. To be added. diff --git a/xml/System.Diagnostics/ExceptionRecorder.xml b/xml/System.Diagnostics/ExceptionRecorder.xml index d5e2c56e49a..7198a46cb2d 100644 --- a/xml/System.Diagnostics/ExceptionRecorder.xml +++ b/xml/System.Diagnostics/ExceptionRecorder.xml @@ -25,7 +25,7 @@ To be added. To be added. To be added. - Define the callback to be used in to receive notifications when exceptions are added to the . + Defines the callback to be used in to receive notifications when exceptions are added to the . To be added. diff --git a/xml/System.Diagnostics/ProcessStartInfo.xml b/xml/System.Diagnostics/ProcessStartInfo.xml index 56b791e0a57..321c09ec261 100644 --- a/xml/System.Diagnostics/ProcessStartInfo.xml +++ b/xml/System.Diagnostics/ProcessStartInfo.xml @@ -223,7 +223,7 @@ To be added. To be added. - Specifies the name of the application that is to be started, as well as a set of command line arguments to pass to the application. + Initializes a new instance of the class and specifies the name of the application to start and a set of command-line arguments to pass to the application. To be added. @@ -484,10 +484,10 @@ If you use this property to set command-line arguments, Gets or sets a value indicating whether to start the process in a new process group. - if the process should be started in a new process group; otherwise, . The default is . + if the process starts in a new process group; otherwise, . The default is . When a process is created in a new process group, it becomes the root of a new process group. - An implicit call to SetConsoleCtrlHandler(NULL,TRUE) is made on behalf of the new process, this means that the new process has CTRL+C disabled. + An implicit call to SetConsoleCtrlHandler(NULL,TRUE) is made on behalf of the new process, which means that the new process has Ctrl+C disabled. This property is useful for preventing console control events sent to the child process from affecting the parent process. @@ -1741,11 +1741,10 @@ You can use asynchronous read operations to avoid these dependencies and their d - Gets or sets a value that indicates whether the user credentials are only to be used for network resources. + Gets or sets a value that indicates whether the user credentials are only used for network resources. - - if the user credentials are only to be used for network resources. + if the user credentials are only used for network resources; otherwise, . This property is referenced if the process is being started by using the user name, password, and domain.If the value is , the process is started with the caller's identity. The system creates a new logon session with the given credentials, which is used on the network only.The system does not validate the specified credentials. Therefore, the process can start, but it may not have access to network resources. diff --git a/xml/System.DirectoryServices.Protocols/LdapSessionOptions.xml b/xml/System.DirectoryServices.Protocols/LdapSessionOptions.xml index 8cfc7de49ba..2f6ef1824bb 100644 --- a/xml/System.DirectoryServices.Protocols/LdapSessionOptions.xml +++ b/xml/System.DirectoryServices.Protocols/LdapSessionOptions.xml @@ -615,10 +615,9 @@ - Create a new TLS library context. - Calling this is necessary after setting TLS-based options, such as TrustedCertificatesDirectory. + Creates a new TLS library context. - To be added. + It's necessary to call this method after setting TLS-based options, such as TrustedCertificatesDirectory. @@ -722,13 +721,13 @@ - Specifies the path of the directory containing CA certificates in the PEM format. - Multiple directories may be specified by separating with a semi-colon. + Gets or sets the path of the directory containing CA certificates in the PEM format. To be added. - The certificate files are looked up by the CA subject name hash value where that hash can be obtained by using, for example, openssl x509 -hash -noout -in CA.crt. - It is a common practice to have the certificate file be a symbolic link to the actual certificate file which can be done by using openssl rehash . or c_rehash . in the directory containing the certificate files. + Multiple directories can be specified by separating them with a semi-colon. + The certificate files are looked up by the CA subject name hash value. The hash can be obtained by using, for example, openssl x509 -hash -noout -in CA.crt. + It is a common practice to have the certificate file be a symbolic link to the actual certificate file, which can be done by using openssl rehash . or c_rehash . in the directory containing the certificate files. The directory does not exist. From 1319ad626ef274aaae364e80771cad97af8160db Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Thu, 2 Oct 2025 12:34:00 -0700 Subject: [PATCH 31/39] Make multi-line elements easier to review --- xml/System.Buffers/ArrayBufferWriter`1.xml | 5 +- xml/System.Diagnostics/Activity.xml | 6 +- xml/System.Diagnostics/ProcessStartInfo.xml | 6 +- xml/System.IO.Compression/ZipFile.xml | 25 ++++++-- .../ZipFileExtensions.xml | 17 ++++- xml/System.Linq/Enumerable.xml | 47 ++++++++++++-- xml/System.Linq/Queryable.xml | 52 ++++++++++++++-- .../CollectionsMarshal.xml | 7 ++- .../JsonMarshal.xml | 2 +- .../CoseSign1Message.xml | 62 ++++++++++++++++--- .../CoseSignature.xml | 62 ++++++++++++++++--- .../X509Certificate.xml | 10 ++- .../X509Certificate2Collection.xml | 42 +++++++++++-- xml/System.Security.Cryptography/Aes.xml | 50 ++++++++++++--- xml/System.Security.Cryptography/AesCng.xml | 6 +- .../MLDsaOpenSsl.xml | 6 +- .../MLKemOpenSsl.xml | 6 +- .../PemEncoding.xml | 22 +++++-- .../SlhDsaOpenSsl.xml | 6 +- .../SymmetricAlgorithm.xml | 12 +++- .../JsonSerializerOptions.xml | 5 +- 21 files changed, 395 insertions(+), 61 deletions(-) diff --git a/xml/System.Buffers/ArrayBufferWriter`1.xml b/xml/System.Buffers/ArrayBufferWriter`1.xml index 36cc43eab8f..97b623527a0 100644 --- a/xml/System.Buffers/ArrayBufferWriter`1.xml +++ b/xml/System.Buffers/ArrayBufferWriter`1.xml @@ -387,7 +387,10 @@ This method never returns Resets the data written to the underlying buffer without zeroing its content. - You must reset or clear the before trying to re-use it. If you reset the writer using the method, the underlying buffer will not be cleared. + + You must reset or clear the before trying to re-use it. + If you reset the writer using the method, the underlying buffer will not be cleared. + diff --git a/xml/System.Diagnostics/Activity.xml b/xml/System.Diagnostics/Activity.xml index aa4edfba21e..f51aa962389 100644 --- a/xml/System.Diagnostics/Activity.xml +++ b/xml/System.Diagnostics/Activity.xml @@ -255,7 +255,11 @@ Callers should either restrict the number of events added to the same `Activity` Add an object containing the exception information to the list. for convenient chaining. - - The name of the event will be "exception", and it will include the tags "exception.message", "exception.stacktrace", and "exception.type", in addition to the tags provided in the parameter.- Any registered with the callback will be notified about this exception addition before the object is added to the list.- Any registered with the callback that adds "exception.message", "exception.stacktrace", or "exception.type" tags will not have these tags overwritten, except by any subsequent that explicitly overwrites them. + + - The name of the event will be "exception", and it will include the tags "exception.message", "exception.stacktrace", and "exception.type", in addition to the tags provided in the parameter. + - Any registered with the callback will be notified about this exception addition before the object is added to the list. + - Any registered with the callback that adds "exception.message", "exception.stacktrace", or "exception.type" tags will not have these tags overwritten, except by any subsequent that explicitly overwrites them. + diff --git a/xml/System.Diagnostics/ProcessStartInfo.xml b/xml/System.Diagnostics/ProcessStartInfo.xml index 321c09ec261..c4de63865f1 100644 --- a/xml/System.Diagnostics/ProcessStartInfo.xml +++ b/xml/System.Diagnostics/ProcessStartInfo.xml @@ -1746,7 +1746,11 @@ You can use asynchronous read operations to avoid these dependencies and their d if the user credentials are only used for network resources; otherwise, . - This property is referenced if the process is being started by using the user name, password, and domain.If the value is , the process is started with the caller's identity. The system creates a new logon session with the given credentials, which is used on the network only.The system does not validate the specified credentials. Therefore, the process can start, but it may not have access to network resources. + + This property is referenced if the process is being started by using the user name, password, and domain. + If the value is , the process is started with the caller's identity. The system creates a new logon session with the given credentials, which is used on the network only. + The system does not validate the specified credentials. Therefore, the process can start, but it may not have access to network resources. + diff --git a/xml/System.IO.Compression/ZipFile.xml b/xml/System.IO.Compression/ZipFile.xml index 7abf84c7d12..31af04dcd57 100644 --- a/xml/System.IO.Compression/ZipFile.xml +++ b/xml/System.IO.Compression/ZipFile.xml @@ -905,10 +905,27 @@ An I/O error occurred while opening a file to be archived. The name of the archive to be created. The level of the compression (speed/memory vs. compressed size trade-off). - - true to indicate that a directory named sourceDirectoryName should be included at the root of the archive. false to indicate that the files and directories in sourceDirectoryName should be included directly in the archive. + true to indicate that a directory named sourceDirectoryName should be included at the root of the archive. false to indicate that the files and directories in sourceDirectoryName should be included directly in the archive. + + + The encoding to use when reading or writing entry names and comments in this ZipArchive. + NOTE: Specifying this parameter to values other than is discouraged. + However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments. +
    This value is used as follows while creating the archive:
    + If entryNameEncoding is not specified (== null): + + For file names or comments that contain characters outside the ASCII range: +
    The language encoding flag (EFS) will be set in the general purpose bit flag of the local file header of the corresponding entry, and UTF-8 (Encoding.UTF8) will be used in order to encode the entry name and comment into bytes.
    + For file names or comments that do not contain characters outside the ASCII range: +
    the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header of the corresponding entry, and the current system default code page (Encoding.Default) will be used to encode the entry names and comments into bytes.
    +
    + If entryNameEncoding is specified (!= null): + + The specified entryNameEncoding will always be used to encode the entry names and comments into bytes. +
    The language encoding flag (EFS) in the general purpose bit flag of the local file header for each entry will be set if and only if the specified entryNameEncoding is a UTF-8 encoding.
    +
    + Note that Unicode encodings other than UTF-8 may not be currently used for the entryNameEncoding, otherwise an is thrown. - The encoding to use when reading or writing entry names and comments in this ZipArchive.NOTE: Specifying this parameter to values other than is discouraged.However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.
    This value is used as follows while creating the archive:
    If entryNameEncoding is not specified (== null): For file names or comments that contain characters outside the ASCII range:
    The language encoding flag (EFS) will be set in the general purpose bit flag of the local file header of the corresponding entry, and UTF-8 (Encoding.UTF8) will be used in order to encode the entry name and comment into bytes.
    For file names or comments that do not contain characters outside the ASCII range:
    the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header of the corresponding entry, and the current system default code page (Encoding.Default) will be used to encode the entry names and comments into bytes.
    If entryNameEncoding is specified (!= null): The specified entryNameEncoding will always be used to encode the entry names and comments into bytes.The language encoding flag (EFS) in the general purpose bit flag of the local file header for each entry will be set if and only if the specified entryNameEncoding is a UTF-8 encoding. Note that Unicode encodings other than UTF-8 may not be currently used for the entryNameEncoding, otherwise an is thrown. The cancellation token to monitor for cancellation requests. Asynchronously creates a Zip archive at the path destinationArchiveFileName that contains the files and directories in the directory specified by sourceDirectoryName. The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created.If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method optionally includes the base directory in the archive.If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid Zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default.(Currently, the underlying compression algorithm is provided by the System.IO.Compression.DeflateStream class.) To be added. @@ -2530,7 +2547,7 @@ An unspecified I/O error occurred while opening the file. If the file exists and is empty or does not exist, a new Zip file will be created. Note that creating a Zip file with the ZipArchiveMode.Create mode is more efficient when creating a new Zip file. - The encoding to use when reading or writing entry names and comments in this ZipArchive.NOTE: Specifying this parameter to values other than is discouraged.However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.
    This value is used as follows:
    Reading (opening) ZIP archive files: If entryNameEncoding is not specified (== null): For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) in order to decode the entry name and comment. For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. If entryNameEncoding is specified (!= null): For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified entryNameEncoding in order to decode the entry name and comment. For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. Writing (saving) ZIP archive files: If entryNameEncoding is not specified (== null): For entry names or comments that contain characters outside the ASCII range, the language encoding flag (EFS) will be set in the general purpose bit flag of the local file header, and UTF-8 (Encoding.UTF8) will be used in order to encode the entry name and comment into bytes. For entry names or comments that do not contain characters outside the ASCII range, the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header, and the current system default code page (Encoding.Default) will be used to encode the entry names and comments into bytes. If entryNameEncoding is specified (!= null): The specified entryNameEncoding will always be used to encode the entry names and comments into bytes.The language encoding flag (EFS) in the general purpose bit flag of the local file header will be set if and only if the specified entryNameEncoding is a UTF-8 encoding. Note that Unicode encodings other than UTF-8 may not be currently used for the entryNameEncoding, otherwise an is thrown. + The encoding to use when reading or writing entry names and comments in this ZipArchive.NOTE: Specifying this parameter to values other than is discouraged.However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.
    This value is used as follows:
    Reading (opening) ZIP archive files: If entryNameEncoding is not specified (== null): For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) in order to decode the entry name and comment. For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. If entryNameEncoding is specified (!= null): For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified entryNameEncoding in order to decode the entry name and comment. For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. Writing (saving) ZIP archive files: If entryNameEncoding is not specified (== null): For entry names or comments that contain characters outside the ASCII range, the language encoding flag (EFS) will be set in the general purpose bit flag of the local file header, and UTF-8 (Encoding.UTF8) will be used in order to encode the entry name and comment into bytes. For entry names or comments that do not contain characters outside the ASCII range, the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header, and the current system default code page (Encoding.Default) will be used to encode the entry names and comments into bytes. If entryNameEncoding is specified (!= null): The specified entryNameEncoding will always be used to encode the entry names and comments into bytes.The language encoding flag (EFS) in the general purpose bit flag of the local file header will be set if and only if the specified entryNameEncoding is a UTF-8 encoding. Note that Unicode encodings other than UTF-8 may not be currently used for the entryNameEncoding, otherwise an is thrown. The cancellation token to monitor for cancellation requests. Asynchronously opens a ZipArchive on the specified archiveFileName in the specified ZipArchiveMode mode. To be added. diff --git a/xml/System.IO.Compression/ZipFileExtensions.xml b/xml/System.IO.Compression/ZipFileExtensions.xml index 89043534b18..d999c230dc7 100644 --- a/xml/System.IO.Compression/ZipFileExtensions.xml +++ b/xml/System.IO.Compression/ZipFileExtensions.xml @@ -283,7 +283,14 @@ The name of the entry to be created. The cancellation token to monitor for cancellation requests. - Asynchronously adds a file from the file system to the archive under the specified entry name.The new entry in the archive will contain the contents of the file.The last write time of the archive entry is set to the last write time of the file on the file system.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.If the specified source file has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default.(Currently, the underlying compression algorithm is provided by the System.IO.Compression.DeflateStream class.) + + Asynchronously adds a file from the file system to the archive under the specified entry name. + The new entry in the archive will contain the contents of the file. + The last write time of the archive entry is set to the last write time of the file on the file system. + If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name. + If the specified source file has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used. If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default. + (Currently, the underlying compression algorithm is provided by the System.IO.Compression.DeflateStream class.) + A wrapper for the newly created entry. To be added. @@ -341,7 +348,13 @@ The name of the entry to be created. The level of the compression (speed/memory vs. compressed size trade-off). The cancellation token to monitor for cancellation requests. - Asynchronously adds a file from the file system to the archive under the specified entry name.The new entry in the archive will contain the contents of the file.The last write time of the archive entry is set to the last write time of the file on the file system.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.If the specified source file has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name. + + Asynchronously adds a file from the file system to the archive under the specified entry name. + The new entry in the archive will contain the contents of the file. + The last write time of the archive entry is set to the last write time of the file on the file system. + If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name. + If the specified source file has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used. If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name. + A wrapper for the newly created entry. To be added. diff --git a/xml/System.Linq/Enumerable.xml b/xml/System.Linq/Enumerable.xml index 079b288e7bf..9a75dc20365 100644 --- a/xml/System.Linq/Enumerable.xml +++ b/xml/System.Linq/Enumerable.xml @@ -6918,7 +6918,17 @@ If `comparer` is `null`, the default equality comparer, A function to create a result element from two matching elements. Correlates the elements of two sequences based on matching keys. The default equality comparer is used to compare keys. An that has elements of type that are obtained by performing a left outer join on two sequences. - This method is implemented by using deferred execution. The immediate return value is an object that stores all the information that is required to perform the action. The query represented by this method is not executed until the object is enumerated either by calling its GetEnumerator method directly or by using foreach in C# or For Each in Visual Basic. The default equality comparer, , is used to hash and compare keys. A join refers to the operation of correlating the elements of two sources of information based on a common key. brings the two information sources and the keys by which they are matched together in one method call. In relational database terms, the method implements an outer left equijoin.'Outer left' means that elements of the first sequence are returned regardless of whether matching elements are found in the other sequence.An 'equijoin' is a join in which the keys are compared for equality.An inner join - where only elements that have a match in the other sequence are included in the results - can be performed using the method.For more information, see Join operations. + + This method is implemented by using deferred execution. The immediate return value is an object that stores all the information that is required to perform the action. The query represented by this method is not executed until the object is enumerated either by calling its GetEnumerator method directly or by using foreach in C# or For Each in Visual Basic. + The default equality comparer, , is used to hash and compare keys. + A join refers to the operation of correlating the elements of two sources of information based on a common key. + brings the two information sources and the keys by which they are matched together in one method call. + In relational database terms, the method implements an outer left equijoin. + 'Outer left' means that elements of the first sequence are returned regardless of whether matching elements are found in the other sequence. + An 'equijoin' is a join in which the keys are compared for equality. + An inner join - where only elements that have a match in the other sequence are included in the results - can be performed using the method. + For more information, see Join operations. + or or or or is . @@ -7013,7 +7023,16 @@ If `comparer` is `null`, the default equality comparer, An to hash and compare keys. Correlates the elements of two sequences based on matching keys. A specified is used to compare keys. An that has elements of type that are obtained by performing a left outer join on two sequences. - This method is implemented by using deferred execution. The immediate return value is an object that stores all the information that is required to perform the action. The query represented by this method is not executed until the object is enumerated either by calling its GetEnumerator method directly or by using foreach in C# or For Each in Visual Basic. The default equality comparer, , is used to hash and compare keys. A join refers to the operation of correlating the elements of two sources of information based on a common key. brings the two information sources and the keys by which they are matched together in one method call. In relational database terms, the method implements an outer left equijoin.'Outer left' means that elements of the first sequence are returned regardless of whether matching elements are found in the other sequence.An 'equijoin' is a join in which the keys are compared for equality.An inner join - where only elements that have a match in the other sequence are included in the results - can be performed using the method.For more information, see Join operations. + + This method is implemented by using deferred execution. The immediate return value is an object that stores all the information that is required to perform the action. The query represented by this method is not executed until the object is enumerated either by calling its GetEnumerator method directly or by using foreach in C# or For Each in Visual Basic. + The default equality comparer, , is used to hash and compare keys. + A join refers to the operation of correlating the elements of two sources of information based on a common key. + brings the two information sources and the keys by which they are matched together in one method call. + In relational database terms, the method implements an outer left equijoin. + 'Outer left' means that elements of the first sequence are returned regardless of whether matching elements are found in the other sequence. + An 'equijoin' is a join in which the keys are compared for equality. + An inner join - where only elements that have a match in the other sequence are included in the results - can be performed using the method. + For more information, see Join operations. or or or or is . @@ -12045,7 +12064,17 @@ If comparer is `null`, the default comparer A function to create a result element from two matching elements. Correlates the elements of two sequences based on matching keys. The default equality comparer is used to compare keys. An that has elements of type that are obtained by performing a right outer join on two sequences. - This method is implemented by using deferred execution. The immediate return value is an object that stores all the information that is required to perform the action. The query represented by this method is not executed until the object is enumerated either by calling its GetEnumerator method directly or by using foreach in C# or For Each in Visual Basic. The default equality comparer, , is used to hash and compare keys. A join refers to the operation of correlating the elements of two sources of information based on a common key. brings the two information sources and the keys by which they are matched together in one method call. In relational database terms, the method implements an outer right equijoin.'Outer right' means that elements of the second sequence are returned regardless of whether matching elements are found in the other sequence.An 'equijoin' is a join in which the keys are compared for equality.An inner join - where only elements that have a match in the other sequence are included in the results - can be performed using the method.For more information, see Join operations. + + This method is implemented by using deferred execution. The immediate return value is an object that stores all the information that is required to perform the action. The query represented by this method is not executed until the object is enumerated either by calling its GetEnumerator method directly or by using foreach in C# or For Each in Visual Basic. + The default equality comparer, , is used to hash and compare keys. + A join refers to the operation of correlating the elements of two sources of information based on a common key. + brings the two information sources and the keys by which they are matched together in one method call. + In relational database terms, the method implements an outer right equijoin. + 'Outer right' means that elements of the second sequence are returned regardless of whether matching elements are found in the other sequence. + An 'equijoin' is a join in which the keys are compared for equality. + An inner join - where only elements that have a match in the other sequence are included in the results - can be performed using the method. + For more information, see Join operations. + or or or or is . @@ -12140,7 +12169,17 @@ If comparer is `null`, the default comparer An to hash and compare keys. Correlates the elements of two sequences based on matching keys. A specified is used to compare keys. An that has elements of type that are obtained by performing a right outer join on two sequences. - This method is implemented by using deferred execution. The immediate return value is an object that stores all the information that is required to perform the action. The query represented by this method is not executed until the object is enumerated either by calling its GetEnumerator method directly or by using foreach in C# or For Each in Visual Basic. The default equality comparer, , is used to hash and compare keys. A join refers to the operation of correlating the elements of two sources of information based on a common key. brings the two information sources and the keys by which they are matched together in one method call. In relational database terms, the method implements an outer right equijoin.'Outer right' means that elements of the second sequence are returned regardless of whether matching elements are found in the other sequence.An 'equijoin' is a join in which the keys are compared for equality.An inner join - where only elements that have a match in the other sequence are included in the results - can be performed using the method.For more information, see Join operations. + + This method is implemented by using deferred execution. The immediate return value is an object that stores all the information that is required to perform the action. The query represented by this method is not executed until the object is enumerated either by calling its GetEnumerator method directly or by using foreach in C# or For Each in Visual Basic. + The default equality comparer, , is used to hash and compare keys. + A join refers to the operation of correlating the elements of two sources of information based on a common key. + brings the two information sources and the keys by which they are matched together in one method call. + In relational database terms, the method implements an outer right equijoin. + 'Outer right' means that elements of the second sequence are returned regardless of whether matching elements are found in the other sequence. + An 'equijoin' is a join in which the keys are compared for equality. + An inner join - where only elements that have a match in the other sequence are included in the results - can be performed using the method. + For more information, see Join operations. + or or or or is . diff --git a/xml/System.Linq/Queryable.xml b/xml/System.Linq/Queryable.xml index 682c260480c..92575d13154 100644 --- a/xml/System.Linq/Queryable.xml +++ b/xml/System.Linq/Queryable.xml @@ -7025,7 +7025,18 @@ The last chunk will contain the remaining elements and may be of a smaller size. A function to create a result element from two matching elements. Correlates the elements of two sequences based on matching keys. The default equality comparer is used to compare keys. An that has elements of type that are obtained by performing a left outer join on two sequences. - This method has at least one parameter of type whose type argument is one of the types.For these parameters, you can pass in a lambda expression and it will be compiled to an . The method generates a that represents calling itself as a constructed generic method.It then passes the to the method of the represented by the property of the parameter. The query behavior that occurs as a result of executing an expression tree that represents calling depends on the implementation of the type of the parameter.The expected behavior is that of a left outer join.The and functions are used to extract keys from and , respectively.These keys are compared for equality to match elements from each sequence.A pair of elements is stored for each element in that matches an element in , plus a pair for each element in that has no matches in .Then the function is invoked to project a result object from each pair of elements. + + This method has at least one parameter of type whose type argument is one of the types. + For these parameters, you can pass in a lambda expression and it will be compiled to an . + The method generates a that represents calling itself as a constructed generic method. + It then passes the to the method of the represented by the property of the parameter. + The query behavior that occurs as a result of executing an expression tree that represents calling depends on the implementation of the type of the parameter. + The expected behavior is that of a left outer join. + The and functions are used to extract keys from and , respectively. + These keys are compared for equality to match elements from each sequence. + A pair of elements is stored for each element in that matches an element in , plus a pair for each element in that has no matches in . + Then the function is invoked to project a result object from each pair of elements. + or or or or is . @@ -7120,7 +7131,18 @@ The last chunk will contain the remaining elements and may be of a smaller size. An to hash and compare keys. Correlates the elements of two sequences based on matching keys. A specified is used to compare keys. An that has elements of type that are obtained by performing a left outer join on two sequences. - This method has at least one parameter of type whose type argument is one of the types.For these parameters, you can pass in a lambda expression and it will be compiled to an . The method generates a that represents calling itself as a constructed generic method.It then passes the to the method of the represented by the property of the parameter. The query behavior that occurs as a result of executing an expression tree that represents calling depends on the implementation of the type of the parameter.The expected behavior is that of a left outer join.The and functions are used to extract keys from and , respectively.These keys are compared for equality to match elements from each sequence.A pair of elements is stored for each element in that matches an element in , plus a pair for each element in that has no matches in .Then the function is invoked to project a result object from each pair of elements. + + This method has at least one parameter of type whose type argument is one of the types. + For these parameters, you can pass in a lambda expression and it will be compiled to an . + The method generates a that represents calling itself as a constructed generic method. + It then passes the to the method of the represented by the property of the parameter. + The query behavior that occurs as a result of executing an expression tree that represents calling depends on the implementation of the type of the parameter. + The expected behavior is that of a left outer join. + The and functions are used to extract keys from and , respectively. + These keys are compared for equality to match elements from each sequence. + A pair of elements is stored for each element in that matches an element in , plus a pair for each element in that has no matches in . + Then the function is invoked to project a result object from each pair of elements. + or or or or is . @@ -9223,7 +9245,18 @@ The query behavior that occurs as a result of executing an expression tree A function to create a result element from two matching elements. Correlates the elements of two sequences based on matching keys. The default equality comparer is used to compare keys. An that has elements of type that are obtained by performing a right outer join on two sequences. - This method has at least one parameter of type whose type argument is one of the types.For these parameters, you can pass in a lambda expression and it will be compiled to an . The method generates a that represents calling itself as a constructed generic method.It then passes the to the method of the represented by the property of the parameter. The query behavior that occurs as a result of executing an expression tree that represents calling depends on the implementation of the type of the parameter.The expected behavior is that of a right outer join.The and functions are used to extract keys from and , respectively.These keys are compared for equality to match elements from each sequence.A pair of elements is stored for each element in that matches an element in , plus a pair for each element in that has no matches in .Then the function is invoked to project a result object from each pair of elements. + + This method has at least one parameter of type whose type argument is one of the types. + For these parameters, you can pass in a lambda expression and it will be compiled to an . + The method generates a that represents calling itself as a constructed generic method. + It then passes the to the method of the represented by the property of the parameter. + The query behavior that occurs as a result of executing an expression tree that represents calling depends on the implementation of the type of the parameter. + The expected behavior is that of a right outer join. + The and functions are used to extract keys from and , respectively. + These keys are compared for equality to match elements from each sequence. + A pair of elements is stored for each element in that matches an element in , plus a pair for each element in that has no matches in . + Then the function is invoked to project a result object from each pair of elements. + or or or or is . @@ -9318,7 +9351,18 @@ The query behavior that occurs as a result of executing an expression tree An to hash and compare keys. Correlates the elements of two sequences based on matching keys. A specified is used to compare keys. An that has elements of type that are obtained by performing a right outer join on two sequences. - This method has at least one parameter of type whose type argument is one of the types.For these parameters, you can pass in a lambda expression and it will be compiled to an . The method generates a that represents calling itself as a constructed generic method.It then passes the to the method of the represented by the property of the parameter. The query behavior that occurs as a result of executing an expression tree that represents calling depends on the implementation of the type of the parameter.The expected behavior is that of a right outer join.The and functions are used to extract keys from and , respectively.These keys are compared for equality to match elements from each sequence.A pair of elements is stored for each element in that matches an element in , plus a pair for each element in that has no matches in .Then the function is invoked to project a result object from each pair of elements. + + This method has at least one parameter of type whose type argument is one of the types. + For these parameters, you can pass in a lambda expression and it will be compiled to an . + The method generates a that represents calling itself as a constructed generic method. + It then passes the to the method of the represented by the property of the parameter. + The query behavior that occurs as a result of executing an expression tree that represents calling depends on the implementation of the type of the parameter. + The expected behavior is that of a right outer join. + The and functions are used to extract keys from and , respectively. + These keys are compared for equality to match elements from each sequence. + A pair of elements is stored for each element in that matches an element in , plus a pair for each element in that has no matches in . + Then the function is invoked to project a result object from each pair of elements. + or or or or is . diff --git a/xml/System.Runtime.InteropServices/CollectionsMarshal.xml b/xml/System.Runtime.InteropServices/CollectionsMarshal.xml index 53cfda8afb0..b987f609d55 100644 --- a/xml/System.Runtime.InteropServices/CollectionsMarshal.xml +++ b/xml/System.Runtime.InteropServices/CollectionsMarshal.xml @@ -58,7 +58,12 @@ The whose backing storage should be viewed. Gets a view over a 's data. To be added. - The may have more capacity than is required to store the number of bits represented by .The returned span's will be the smallest number of bytes capable of representing that length. If the 's length is not evenly divisible by 8, the last byte of the span may contain extraneous bits that do not represent elements in the .These may be ignored. The length of the should not be changed while the resulting is in use. After such a change, the span may no longer refer to the 's backing storage. + + The may have more capacity than is required to store the number of bits represented by . + The returned span's will be the smallest number of bytes capable of representing that length. If the 's length is not evenly divisible by 8, the last byte of the span may contain extraneous bits that do not represent elements in the . + These may be ignored. + The length of the should not be changed while the resulting is in use. After such a change, the span may no longer refer to the 's backing storage. +
    diff --git a/xml/System.Runtime.InteropServices/JsonMarshal.xml b/xml/System.Runtime.InteropServices/JsonMarshal.xml index 470b08e6465..dd9d3f25e61 100644 --- a/xml/System.Runtime.InteropServices/JsonMarshal.xml +++ b/xml/System.Runtime.InteropServices/JsonMarshal.xml @@ -41,7 +41,7 @@ The JSON property from which to extract the span. Gets a view over the raw JSON data of the given name. The span containing the raw JSON data of the name. This will not include the enclosing quotes. - While the method itself does check for disposal of the underlying , it is possible that it could be disposed after the method returns, which would result in the span pointing to a buffer that has been returned to the shared pool. Callers should take extra care to make sure that such a scenario isn't possible to avoid potential data corruption. + While the method itself does check for disposal of the underlying , it is possible that it could be disposed after the method returns, which would result in the span pointing to a buffer that has been returned to the shared pool. Callers should take extra care to make sure that such a scenario isn't possible to avoid potential data corruption. The underlying has been disposed. diff --git a/xml/System.Security.Cryptography.Cose/CoseSign1Message.xml b/xml/System.Security.Cryptography.Cose/CoseSign1Message.xml index aa3e3bc869a..d8141764f43 100644 --- a/xml/System.Security.Cryptography.Cose/CoseSign1Message.xml +++ b/xml/System.Security.Cryptography.Cose/CoseSign1Message.xml @@ -706,7 +706,15 @@ The algorithm protected header doesn't match with the algorithms supported by th is of an unsupported type. The content is embedded on this message, use an overload that uses embedded content. - does not have a value for the header.-or- The algorithm protected header was incorrectly formatted.-or- The algorithm protected header was not one of the values supported by this implementation.-or- The algorithm protected header doesn't match with the algorithms supported by the specified . + + does not have a value for the header. + -or- + The algorithm protected header was incorrectly formatted. + -or- + The algorithm protected header was not one of the values supported by this implementation. + -or- + The algorithm protected header doesn't match with the algorithms supported by the specified . + @@ -747,9 +755,21 @@ The algorithm protected header doesn't match with the algorithms supported by th To be added. or is . - is of an unsupported type.-or- does not support reading or seeking. + + is of an unsupported type. + -or- + does not support reading or seeking. + The content is embedded on this message, use an overload that uses embedded content. - does not have a value for the header.-or- The algorithm protected header was incorrectly formatted.-or- The algorithm protected header was not one of the values supported by this implementation.-or- The algorithm protected header doesn't match with the algorithms supported by the specified . + + does not have a value for the header. + -or- + The algorithm protected header was incorrectly formatted. + -or- + The algorithm protected header was not one of the values supported by this implementation. + -or- + The algorithm protected header doesn't match with the algorithms supported by the specified . + @@ -793,7 +813,15 @@ The algorithm protected header doesn't match with the algorithms supported by th is of an unsupported type. The content is embedded on this message, use an overload that uses embedded content. - does not have a value for the header.-or- The algorithm protected header was incorrectly formatted.-or- The algorithm protected header was not one of the values supported by this implementation.-or- The algorithm protected header doesn't match with the algorithms supported by the specified . + + does not have a value for the header. + -or- + The algorithm protected header was incorrectly formatted. + -or- + The algorithm protected header was not one of the values supported by this implementation. + -or- + The algorithm protected header doesn't match with the algorithms supported by the specified . + @@ -900,9 +928,21 @@ The algorithm protected header doesn't match with the algorithms supported by th To be added. or is . - is of an unsupported type.-or- does not support reading or seeking. + + is of an unsupported type. + -or- + does not support reading or seeking. + The content is embedded on this message, use an overload that uses embedded content. - does not have a value for the header.-or- The algorithm protected header was incorrectly formatted.-or- The algorithm protected header was not one of the values supported by this implementation.-or- The algorithm protected header doesn't match with the algorithms supported by the specified . + + does not have a value for the header. + -or- + The algorithm protected header was incorrectly formatted. + -or- + The algorithm protected header was not one of the values supported by this implementation. + -or- + The algorithm protected header doesn't match with the algorithms supported by the specified . + @@ -1056,7 +1096,15 @@ The algorithm protected header doesn't match with the algorithms supported by th is of an unsupported type. The content is detached from this message, use an overload that accepts a detached content. - does not have a value for the header.-or- The algorithm protected header was incorrectly formatted.-or- The algorithm protected header was not one of the values supported by this implementation.-or- The algorithm protected header doesn't match with the algorithms supported by the specified . + + does not have a value for the header. + -or- + The algorithm protected header was incorrectly formatted. + -or- + The algorithm protected header was not one of the values supported by this implementation. + -or- + The algorithm protected header doesn't match with the algorithms supported by the specified . + diff --git a/xml/System.Security.Cryptography.Cose/CoseSignature.xml b/xml/System.Security.Cryptography.Cose/CoseSignature.xml index 91478d95bc2..910dcafb7d2 100644 --- a/xml/System.Security.Cryptography.Cose/CoseSignature.xml +++ b/xml/System.Security.Cryptography.Cose/CoseSignature.xml @@ -344,7 +344,15 @@ The algorithm protected header doesn't match with the algorithms supported by th is of an unsupported type. The content is embedded on the associated message, use an overload that uses embedded content. - does not have a value for the header.-or- The algorithm protected header was incorrectly formatted.-or- The algorithm protected header was not one of the values supported by this implementation.-or- The algorithm protected header doesn't match with the algorithms supported by the specified . + + does not have a value for the header. + -or- + The algorithm protected header was incorrectly formatted. + -or- + The algorithm protected header was not one of the values supported by this implementation. + -or- + The algorithm protected header doesn't match with the algorithms supported by the specified . + @@ -385,9 +393,21 @@ The algorithm protected header doesn't match with the algorithms supported by th To be added. or is . - is of an unsupported type.-or- does not support reading or seeking. + + is of an unsupported type. + -or- + does not support reading or seeking. + The content is embedded on the associated message, use an overload that uses embedded content. - does not have a value for the header.-or- The algorithm protected header was incorrectly formatted.-or- The algorithm protected header was not one of the values supported by this implementation.-or- The algorithm protected header doesn't match with the algorithms supported by the specified . + + does not have a value for the header. + -or- + The algorithm protected header was incorrectly formatted. + -or- + The algorithm protected header was not one of the values supported by this implementation. + -or- + The algorithm protected header doesn't match with the algorithms supported by the specified . + @@ -430,7 +450,15 @@ The algorithm protected header doesn't match with the algorithms supported by th is of an unsupported type. The content is embedded on the associated message, use an overload that uses embedded content. - does not have a value for the header.-or- The algorithm protected header was incorrectly formatted.-or- The algorithm protected header was not one of the values supported by this implementation.-or- The algorithm protected header doesn't match with the algorithms supported by the specified . + + does not have a value for the header. + -or- + The algorithm protected header was incorrectly formatted. + -or- + The algorithm protected header was not one of the values supported by this implementation. + -or- + The algorithm protected header doesn't match with the algorithms supported by the specified . + @@ -537,9 +565,21 @@ The algorithm protected header doesn't match with the algorithms supported by th To be added. or is . - is of an unsupported type.-or- does not support reading or seeking. + + is of an unsupported type. + -or- + does not support reading or seeking. + The content is embedded on the associated message, use an overload that uses embedded content. - does not have a value for the header.-or- The algorithm protected header was incorrectly formatted.-or- The algorithm protected header was not one of the values supported by this implementation.-or- The algorithm protected header doesn't match with the algorithms supported by the specified . + + does not have a value for the header. + -or- + The algorithm protected header was incorrectly formatted. + -or- + The algorithm protected header was not one of the values supported by this implementation. + -or- + The algorithm protected header doesn't match with the algorithms supported by the specified . + @@ -694,7 +734,15 @@ The algorithm protected header doesn't match with the algorithms supported by th is of an unsupported type. The content is detached from the associated message, use an overload that accepts a detached content. - does not have a value for the header.-or- The algorithm protected header was incorrectly formatted.-or- The algorithm protected header was not one of the values supported by this implementation.-or- The algorithm protected header doesn't match with the algorithms supported by the specified . + + does not have a value for the header. + -or- + The algorithm protected header was incorrectly formatted. + -or- + The algorithm protected header was not one of the values supported by this implementation. + -or- + The algorithm protected header doesn't match with the algorithms supported by the specified . + diff --git a/xml/System.Security.Cryptography.X509Certificates/X509Certificate.xml b/xml/System.Security.Cryptography.X509Certificates/X509Certificate.xml index f6fa439e244..0d2e7264fbd 100644 --- a/xml/System.Security.Cryptography.X509Certificates/X509Certificate.xml +++ b/xml/System.Security.Cryptography.X509Certificates/X509Certificate.xml @@ -2044,7 +2044,15 @@ contains a Unicode 'NULL' character. is . - The current instance is disposed.-or-The export operation failed.-or- specifies a value that is not supported for the value.-or- contains an invalid encryption algorithm for . + + The current instance is disposed. + -or- + The export operation failed. + -or- + specifies a value that is not supported for the value. + -or- + contains an invalid encryption algorithm for . + diff --git a/xml/System.Security.Cryptography.X509Certificates/X509Certificate2Collection.xml b/xml/System.Security.Cryptography.X509Certificates/X509Certificate2Collection.xml index 4d56a408d8b..17729ade822 100644 --- a/xml/System.Security.Cryptography.X509Certificates/X509Certificate2Collection.xml +++ b/xml/System.Security.Cryptography.X509Certificates/X509Certificate2Collection.xml @@ -803,7 +803,13 @@ contains a Unicode 'NULL' character. is . - The export operation failed.-or- specifies a value that is not supported for the value.-or- contains an invalid encryption algorithm for . + + The export operation failed. + -or- + specifies a value that is not supported for the value. + -or- + contains an invalid encryption algorithm for . + @@ -1011,7 +1017,11 @@ . is or empty. specifies a hash algorithm not supported by the current platform. - specifies an unknown hash algorithm.-or- An error occured while finding the certificates with a matching thumbprint. + + specifies an unknown hash algorithm. + -or- + An error occured while finding the certificates with a matching thumbprint. + @@ -1051,10 +1061,20 @@ Searches the collection for certificates with a matching thumbprint. A collection of certificates with a matching thumbprint. To be added. - . is or empty.-or- contains invalid hexadecimal characters.-or- does not decode evenly and contains an odd number of characters. + + . is or empty. + -or- + contains invalid hexadecimal characters. + -or- + does not decode evenly and contains an odd number of characters. + specifies a hash algorithm not supported by the current platform. - specifies an unknown hash algorithm.-or- An error occured while finding the certificates with a matching thumbprint. + + specifies an unknown hash algorithm. + -or- + An error occured while finding the certificates with a matching thumbprint. + @@ -1090,10 +1110,20 @@ To be added. is . - . is or empty.-or- contains invalid hexadecimal characters.-or- does not decode evenly and contains an odd number of characters. + + . is or empty. + -or- + contains invalid hexadecimal characters. + -or- + does not decode evenly and contains an odd number of characters. + specifies a hash algorithm not supported by the current platform. - specifies an unknown hash algorithm.-or- An error occured while finding the certificates with a matching thumbprint. + + specifies an unknown hash algorithm. + -or- + An error occured while finding the certificates with a matching thumbprint. + diff --git a/xml/System.Security.Cryptography/Aes.xml b/xml/System.Security.Cryptography/Aes.xml index c58496a18ee..5c72e87b631 100644 --- a/xml/System.Security.Cryptography/Aes.xml +++ b/xml/System.Security.Cryptography/Aes.xml @@ -410,8 +410,18 @@ Unwraps a key that was wrapped using the IETF RFC 5649 AES Key Wrap with Padding algorithm. The number of bytes in the unwrapped key. To be added. - has a that does not correspond to the output of the Key Wrap with Padding algorithm.-or- has a that is more than 16 bytes shorter than , thus guaranteed too short to hold the unwrapped key. - and overlap.-or-The unwrap algorithm failed to unwrap the ciphertext.-or-An error occurred during the cryptographic operation. + + has a that does not correspond to the output of the Key Wrap with Padding algorithm. + -or- + has a that is more than 16 bytes shorter than , thus guaranteed too short to hold the unwrapped key. + + + and overlap. + -or- + The unwrap algorithm failed to unwrap the ciphertext. + -or- + An error occurred during the cryptographic operation. + @@ -450,7 +460,10 @@ The buffer to receive the unwrapped key. Unwraps a key that was wrapped using the IETF RFC 5649 AES Key Wrap with Padding algorithm. The number of bytes in the unwrapped key. - When called by the base class, is pre-validated to be at least 16 bytes long and a multiple of 8 bytes. When called by the base class, will always be exactly 8 bytes shorter than , so any valid value will always fit. + + When called by the base class, is pre-validated to be at least 16 bytes long and a multiple of 8 bytes. + When called by the base class, will always be exactly 8 bytes shorter than , so any valid value will always fit. + The unwrap algorithm failed to unwrap the ciphertext. -or- @@ -582,8 +595,16 @@ Wraps a key using the IETF RFC 5649 AES Key Wrap with Padding algorithm, writing the result to a specified buffer. To be added. - is empty.-or- is not precisely sized. - and overlap.-or-An error occurred during the cryptographic operation. + + is empty. + -or- + is not precisely sized. + + + and overlap. + -or- + An error occurred during the cryptographic operation. + @@ -624,7 +645,10 @@ Wraps a key using the IETF RFC 5649 AES Key Wrap with Padding algorithm, writing the result to a specified buffer. - When called by the base class, is pre-validated to not be empty. When called by the base class, is pre-validated to be exactly the length returned by for the given input. + + When called by the base class, is pre-validated to not be empty. + When called by the base class, is pre-validated to be exactly the length returned by for the given input. + An error occurred during the cryptographic operation. @@ -665,7 +689,11 @@ The padded length of the key wrap for the specified plaintext. To be added. - is less than or equal to zero.-or- represents a plaintext length that, when wrapped, has a length that cannot be represented as a signed 32-bit integer. + + is less than or equal to zero. + -or- + represents a plaintext length that, when wrapped, has a length that cannot be represented as a signed 32-bit integer. + @@ -801,7 +829,13 @@ has a that does not correspond to the output of the Key Wrap with Padding algorithm. - and overlap.-or-The unwrap algorithm failed to unwrap the ciphertext.-or-An error occurred during the cryptographic operation. + + and overlap. + -or- + The unwrap algorithm failed to unwrap the ciphertext. + -or- + An error occurred during the cryptographic operation. +
    diff --git a/xml/System.Security.Cryptography/AesCng.xml b/xml/System.Security.Cryptography/AesCng.xml index 0fd9b5a37a6..1b4cca9715d 100644 --- a/xml/System.Security.Cryptography/AesCng.xml +++ b/xml/System.Security.Cryptography/AesCng.xml @@ -140,7 +140,11 @@ To be added. is . - does not represent an AES key. -or- An error occured while performing a cryptographic operation. + + does not represent an AES key. + -or- + An error occured while performing a cryptographic operation. + Cryptography Next Generation (CNG) is not supported on this system. diff --git a/xml/System.Security.Cryptography/MLDsaOpenSsl.xml b/xml/System.Security.Cryptography/MLDsaOpenSsl.xml index b126f7d3e50..390ce9ef096 100644 --- a/xml/System.Security.Cryptography/MLDsaOpenSsl.xml +++ b/xml/System.Security.Cryptography/MLDsaOpenSsl.xml @@ -21,7 +21,11 @@ Represents an ML-DSA key backed by OpenSSL. - This algorithm is specified by FIPS-204. Developers are encouraged to program against the MLDsa base class, rather than any specific derived class.The derived classes are intended for interop with the underlying system cryptographic libraries. + + This algorithm is specified by FIPS-204. + Developers are encouraged to program against the MLDsa base class, rather than any specific derived class. + The derived classes are intended for interop with the underlying system cryptographic libraries. + diff --git a/xml/System.Security.Cryptography/MLKemOpenSsl.xml b/xml/System.Security.Cryptography/MLKemOpenSsl.xml index ae968ec045c..ec52ae8ab6c 100644 --- a/xml/System.Security.Cryptography/MLKemOpenSsl.xml +++ b/xml/System.Security.Cryptography/MLKemOpenSsl.xml @@ -15,7 +15,11 @@ Represents an ML-KEM key backed by OpenSSL. - This algorithm is specified by FIPS-203. Developers are encouraged to program against the <c>MLKem</c> base class, rather than any specific derived class.The derived classes are intended for interop with the underlying system cryptographic libraries. + + This algorithm is specified by FIPS-203. + Developers are encouraged to program against the <c>MLKem</c> base class, rather than any specific derived class. + The derived classes are intended for interop with the underlying system cryptographic libraries. + diff --git a/xml/System.Security.Cryptography/PemEncoding.xml b/xml/System.Security.Cryptography/PemEncoding.xml index 7a34bae9e68..8e6ed84fd92 100644 --- a/xml/System.Security.Cryptography/PemEncoding.xml +++ b/xml/System.Security.Cryptography/PemEncoding.xml @@ -103,7 +103,10 @@ IETF RFC 7468 permits different decoding rules. This method always uses lax rule A value that specifies the location, label, and data location of the encoded data. - IETF RFC 7468 permits different decoding rules. This method always uses lax rules. This does not validate the UTF-8 data outside of encapsulation boundaries and is ignored. It is the caller's responsibility to ensure the entire input is UTF-8 if required. + + IETF RFC 7468 permits different decoding rules. This method always uses lax rules. + This does not validate the UTF-8 data outside of encapsulation boundaries and is ignored. It is the caller's responsibility to ensure the entire input is UTF-8 if required. + does not contain a well-formed PEM-encoded value. @@ -235,7 +238,8 @@ IETF RFC 7468 permits different decoding rules. This method always uses lax rule Attempts to find the first PEM-encoded data. if PEM-encoded data was found; otherwise . - IETF RFC 7468 permits different decoding rules. This method always uses lax rules. This does not validate the UTF-8 data outside of encapsulation boundaries and is ignored. It is the caller's responsibility to ensure the entire input is UTF-8 if required. + IETF RFC 7468 permits different decoding rules. This method always uses lax rules. + This does not validate the UTF-8 data outside of encapsulation boundaries and is ignored. It is the caller's responsibility to ensure the entire input is UTF-8 if required. @@ -342,11 +346,13 @@ This method always wraps the base-64 encoded text to 64 characters, per the reco exceeds the maximum possible label length. - -or- + -or- exceeds the maximum possible encoded data length. - The resulting PEM-encoded text is larger than .- or - contains invalid characters or is malformed UTF-8. + The resulting PEM-encoded text is larger than . + - or - + contains invalid characters or is malformed UTF-8. @@ -504,8 +510,12 @@ This method always wraps the base-64 encoded text to 64 characters, per the This method always wraps the base-64 encoded text to 64 characters, per the recommended wrapping of RFC-7468. Unix-style line endings are used for line breaks. - exceeds the maximum possible label length. -or- exceeds the maximum possible encoded data length. - The resulting PEM-encoded text is larger than . -or- contains invalid characters or is malformed UTF-8. + exceeds the maximum possible label length. + -or- + exceeds the maximum possible encoded data length. + The resulting PEM-encoded text is larger than . + -or- + contains invalid characters or is malformed UTF-8. diff --git a/xml/System.Security.Cryptography/SlhDsaOpenSsl.xml b/xml/System.Security.Cryptography/SlhDsaOpenSsl.xml index 3393be9f983..84652fa80c6 100644 --- a/xml/System.Security.Cryptography/SlhDsaOpenSsl.xml +++ b/xml/System.Security.Cryptography/SlhDsaOpenSsl.xml @@ -21,7 +21,11 @@ Represents an SLH-DSA key backed by OpenSSL. - This algorithm is specified by FIPS-205. Developers are encouraged to program against the SlhDsa base class, rather than any specific derived class.The derived classes are intended for interop with the underlying system cryptographic libraries. + + This algorithm is specified by FIPS-205. + Developers are encouraged to program against the SlhDsa base class, rather than any specific derived class. + The derived classes are intended for interop with the underlying system cryptographic libraries. + diff --git a/xml/System.Security.Cryptography/SymmetricAlgorithm.xml b/xml/System.Security.Cryptography/SymmetricAlgorithm.xml index 30a35587c84..11ac5c95dff 100644 --- a/xml/System.Security.Cryptography/SymmetricAlgorithm.xml +++ b/xml/System.Security.Cryptography/SymmetricAlgorithm.xml @@ -3176,7 +3176,11 @@ Allows an to attempt to free resources and perfor The new key for this instance. Sets the key for this instance. To be added. - The key size is invalid.-or- An error occurred while setting the key. + + The key size is invalid. + -or- + An error occurred while setting the key. + @@ -3206,7 +3210,11 @@ Allows an to attempt to free resources and perfor The new key for this instance. Sets the key for this instance. - will only call this method after validating the length of against .Other callers are expected to similarly ensure that this method is only called with validly-sized inputs. The base class implementation is to assign the property.Derived types should override this method to avoid copying the key into a new array. + + Other callers are expected to similarly ensure that this method is only called with validly-sized inputs. + The base class implementation is to assign the property. + Derived types should override this method to avoid copying the key into a new array. + An error occurred while setting the key. diff --git a/xml/System.Text.Json/JsonSerializerOptions.xml b/xml/System.Text.Json/JsonSerializerOptions.xml index 631aa506152..66a4df0b7d9 100644 --- a/xml/System.Text.Json/JsonSerializerOptions.xml +++ b/xml/System.Text.Json/JsonSerializerOptions.xml @@ -194,7 +194,10 @@ similar to how Defines whether duplicate property names are allowed when deserializing JSON objects. To be added. - By default, it's set to . If set to , is thrown when a duplicate property name is encountered during deserialization. Duplicate property names are not allowed in serialization. + + By default, it's set to . If set to , is thrown when a duplicate property name is encountered during deserialization. + Duplicate property names are not allowed in serialization. + Thrown if this property is set after serialization or deserialization has occurred. From 0e78c7b5cbb836d78affdc50e0dc60e855ca6701 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Thu, 2 Oct 2025 12:44:45 -0700 Subject: [PATCH 32/39] More indenting fixes --- xml/System.IO.Compression/ZipArchive.xml | 28 ++++++++- xml/System.IO.Compression/ZipFile.xml | 74 ++++++++++++++++++++++-- 2 files changed, 95 insertions(+), 7 deletions(-) diff --git a/xml/System.IO.Compression/ZipArchive.xml b/xml/System.IO.Compression/ZipArchive.xml index d21c248a6f7..eaa5e5fc639 100644 --- a/xml/System.IO.Compression/ZipArchive.xml +++ b/xml/System.IO.Compression/ZipArchive.xml @@ -388,7 +388,33 @@ If the comment byte length is larger than , it will See the description of the ZipArchiveMode enum. Read requires the stream to support reading, Create requires the stream to support writing, and Update requires the stream to support reading, writing, and seeking. to leave the stream open upon disposing the ZipArchive, otherwise . - The encoding to use when reading or writing entry names and comments in this ZipArchive.NOTE: Specifying this parameter to values other than is discouraged.However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names.<br /> This value is used as follows: Reading (opening) ZIP archive files:If entryNameEncoding is not specified (== null): For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) in order to decode the entry name and comment. For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. If entryNameEncoding is specified (!= null): For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified entryNameEncoding in order to decode the entry name and comment. For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. Writing (saving) ZIP archive files: If entryNameEncoding is not specified (== null): For entry names and comments that contain characters outside the ASCII range, the language encoding flag (EFS) will be set in the general purpose bit flag of the local file header, and UTF-8 (Encoding.UTF8) will be used in order to encode the entry name and comment into bytes. For entry names and comments that do not contain characters outside the ASCII range, the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header, and the current system default code page (Encoding.Default) will be used to encode the entry names and comments into bytes. If entryNameEncoding is specified (!= null): The specified entryNameEncoding will always be used to encode the entry names and comments into bytes.The language encoding flag (EFS) in the general purpose bit flag of the local file header will be set if and only if the specified entryNameEncoding is a UTF-8 encoding. Note that Unicode encodings other than UTF-8 may not be currently used for the entryNameEncoding, otherwise an is thrown. + + The encoding to use when reading or writing entry names and comments in this ZipArchive. + NOTE: Specifying this parameter to values other than is discouraged. + However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names.<br /> This value is used as follows: + Reading (opening) ZIP archive files: + If entryNameEncoding is not specified (== null): + + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) in order to decode the entry name and comment. + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. + + If entryNameEncoding is specified (!= null): + + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified entryNameEncoding in order to decode the entry name and comment. + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. + + Writing (saving) ZIP archive files: + If entryNameEncoding is not specified (== null): + + For entry names and comments that contain characters outside the ASCII range, the language encoding flag (EFS) will be set in the general purpose bit flag of the local file header, and UTF-8 (Encoding.UTF8) will be used in order to encode the entry name and comment into bytes. + For entry names and comments that do not contain characters outside the ASCII range, the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header, and the current system default code page (Encoding.Default) will be used to encode the entry names and comments into bytes. + + If entryNameEncoding is specified (!= null): + + The specified entryNameEncoding will always be used to encode the entry names and comments into bytes. + + The language encoding flag (EFS) in the general purpose bit flag of the local file header will be set if and only if the specified entryNameEncoding is a UTF-8 encoding. + The optional cancellation token to monitor. Asynchronously initializes and returns a new instance of on the given stream in the specified mode, specifying whether to leave the stream open, with an optional encoding and an optional cancellation token. To be added. diff --git a/xml/System.IO.Compression/ZipFile.xml b/xml/System.IO.Compression/ZipFile.xml index 31af04dcd57..37fea6d6a8c 100644 --- a/xml/System.IO.Compression/ZipFile.xml +++ b/xml/System.IO.Compression/ZipFile.xml @@ -630,7 +630,11 @@ An I/O error occurred while opening a file to be archived. The path to the directory on the file system to be archived. The name of the archive to be created. The cancellation token to monitor for cancellation requests. - Asynchronously creates a Zip archive at the path destinationArchiveFileName that contains the files and directories from the directory specified by sourceDirectoryName. The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created. If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method does not include the base directory into the archive.If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid Zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default.(Currently, the underlying compression algorithm is provided by the System.IO.Compression.DeflateStream class.) + + Asynchronously creates a Zip archive at the path destinationArchiveFileName that contains the files and directories from the directory specified by sourceDirectoryName. The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created. If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method does not include the base directory into the archive. + If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid Zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default. + (Currently, the underlying compression algorithm is provided by the System.IO.Compression.DeflateStream class.) + To be added. To be added. @@ -761,7 +765,12 @@ An I/O error occurred while opening a file to be archived. true to indicate that a directory named sourceDirectoryName should be included at the root of the archive. false to indicate that the files and directories in sourceDirectoryName should be included directly in the archive. The cancellation token to monitor for cancellation requests. - Asynchronously creates a Zip archive at the path destinationArchiveFileName that contains the files and directories in the directory specified by sourceDirectoryName. The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created.If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method optionally includes the base directory in the archive.If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid Zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default.(Currently, the underlying compression algorithm is provided by the System.IO.Compression.DeflateStream class.) + + Asynchronously creates a Zip archive at the path destinationArchiveFileName that contains the files and directories in the directory specified by sourceDirectoryName. The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created. + If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method optionally includes the base directory in the archive. + If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid Zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default. + (Currently, the underlying compression algorithm is provided by the System.IO.Compression.DeflateStream class.) + To be added. To be added. @@ -927,7 +936,12 @@ An I/O error occurred while opening a file to be archived. Note that Unicode encodings other than UTF-8 may not be currently used for the entryNameEncoding, otherwise an is thrown. The cancellation token to monitor for cancellation requests. - Asynchronously creates a Zip archive at the path destinationArchiveFileName that contains the files and directories in the directory specified by sourceDirectoryName. The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created.If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method optionally includes the base directory in the archive.If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid Zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default.(Currently, the underlying compression algorithm is provided by the System.IO.Compression.DeflateStream class.) + + Asynchronously creates a Zip archive at the path destinationArchiveFileName that contains the files and directories in the directory specified by sourceDirectoryName. The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created. + If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method optionally includes the base directory in the archive. + If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid Zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default. + (Currently, the underlying compression algorithm is provided by the System.IO.Compression.DeflateStream class.) + To be added. To be added. @@ -2014,7 +2028,21 @@ An archive entry has been compressed using a compression method that is not supp The path to the archive on the file system that is to be extracted. The path to the directory on the file system. The directory specified must not exist, but the directory that it is contained in must exist. - The encoding to use when reading or writing entry names and comments in this ZipArchive.NOTE: Specifying this parameter to values other than is discouraged.However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.
    This value is used as follows:
    If entryNameEncoding is not specified (== null): For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) in order to decode the entry name and comment. For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. If entryNameEncoding is specified (!= null): For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified entryNameEncoding in order to decode the entry name and comment. For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. Note that Unicode encodings other than UTF-8 may not be currently used for the entryNameEncoding, otherwise an is thrown. + The encoding to use when reading or writing entry names and comments in this ZipArchive. + NOTE: Specifying this parameter to values other than is discouraged. + However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.
    This value is used as follows:
    + If entryNameEncoding is not specified (== null): + + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) in order to decode the entry name and comment. + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. + + If entryNameEncoding is specified (!= null): + + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified entryNameEncoding in order to decode the entry name and comment. + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. + + Note that Unicode encodings other than UTF-8 may not be currently used for the entryNameEncoding, otherwise an is thrown. + The cancellation token to monitor for cancellation requests. Asynchronously extracts all of the files in the specified archive to a directory on the file system. @@ -2165,7 +2193,21 @@ An archive entry has been compressed using a compression method that is not supp The path to the archive on the file system that is to be extracted. The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory. - The encoding to use when reading or writing entry names and comments in this ZipArchive.NOTE: Specifying this parameter to values other than is discouraged.However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.
    This value is used as follows:
    If entryNameEncoding is not specified (== null): For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) in order to decode the entry name and comment. For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. If entryNameEncoding is specified (!= null): For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified entryNameEncoding in order to decode the entry name and comment. For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. Note that Unicode encodings other than UTF-8 may not be currently used for the entryNameEncoding, otherwise an is thrown. + The encoding to use when reading or writing entry names and comments in this ZipArchive. + NOTE: Specifying this parameter to values other than is discouraged. + However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.
    This value is used as follows:
    + If entryNameEncoding is not specified (== null): + + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) in order to decode the entry name and comment. + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. + + If entryNameEncoding is specified (!= null): + + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified entryNameEncoding in order to decode the entry name and comment. + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. + + Note that Unicode encodings other than UTF-8 may not be currently used for the entryNameEncoding, otherwise an is thrown. + to indicate overwrite. The cancellation token to monitor for cancellation requests. @@ -2547,7 +2589,27 @@ An unspecified I/O error occurred while opening the file. If the file exists and is empty or does not exist, a new Zip file will be created. Note that creating a Zip file with the ZipArchiveMode.Create mode is more efficient when creating a new Zip file. - The encoding to use when reading or writing entry names and comments in this ZipArchive.NOTE: Specifying this parameter to values other than is discouraged.However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.
    This value is used as follows:
    Reading (opening) ZIP archive files: If entryNameEncoding is not specified (== null): For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) in order to decode the entry name and comment. For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. If entryNameEncoding is specified (!= null): For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified entryNameEncoding in order to decode the entry name and comment. For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. Writing (saving) ZIP archive files: If entryNameEncoding is not specified (== null): For entry names or comments that contain characters outside the ASCII range, the language encoding flag (EFS) will be set in the general purpose bit flag of the local file header, and UTF-8 (Encoding.UTF8) will be used in order to encode the entry name and comment into bytes. For entry names or comments that do not contain characters outside the ASCII range, the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header, and the current system default code page (Encoding.Default) will be used to encode the entry names and comments into bytes. If entryNameEncoding is specified (!= null): The specified entryNameEncoding will always be used to encode the entry names and comments into bytes.The language encoding flag (EFS) in the general purpose bit flag of the local file header will be set if and only if the specified entryNameEncoding is a UTF-8 encoding. Note that Unicode encodings other than UTF-8 may not be currently used for the entryNameEncoding, otherwise an is thrown. + The encoding to use when reading or writing entry names and comments in this ZipArchive. + NOTE: Specifying this parameter to values other than is discouraged. + However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.
    This value is used as follows:
    + Reading (opening) ZIP archive files: + If entryNameEncoding is not specified (== null): + + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) in order to decode the entry name and comment. + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. + + If entryNameEncoding is not specified (== null): + + For entry names or comments that contain characters outside the ASCII range, the language encoding flag (EFS) will be set in the general purpose bit flag of the local file header, and UTF-8 (Encoding.UTF8) will be used in order to encode the entry name and comment into bytes. + For entry names or comments that do not contain characters outside the ASCII range, the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header, and the current system default code page (Encoding.Default) will be used to encode the entry names and comments into bytes. + + If entryNameEncoding is specified (!= null): + + The specified entryNameEncoding will always be used to encode the entry names and comments into bytes. + The language encoding flag (EFS) in the general purpose bit flag of the local file header will be set if and only if the specified entryNameEncoding is a UTF-8 encoding. + + Note that Unicode encodings other than UTF-8 may not be currently used for the entryNameEncoding, otherwise an is thrown. + The cancellation token to monitor for cancellation requests. Asynchronously opens a ZipArchive on the specified archiveFileName in the specified ZipArchiveMode mode. To be added. From cfb9e015c018a2653690d69f8d1e128886c08248 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Thu, 2 Oct 2025 14:02:52 -0700 Subject: [PATCH 33/39] Try again to fix warnings --- xml/System.Collections.Frozen/FrozenDictionary.xml | 4 ++-- xml/System.Net.WebSockets/WebSocketStream.xml | 6 +++--- .../X500DistinguishedName.xml | 1 - 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/xml/System.Collections.Frozen/FrozenDictionary.xml b/xml/System.Collections.Frozen/FrozenDictionary.xml index 2165b6a7e87..703dee55738 100644 --- a/xml/System.Collections.Frozen/FrozenDictionary.xml +++ b/xml/System.Collections.Frozen/FrozenDictionary.xml @@ -77,7 +77,7 @@ Creates a with the specified key/value pairs. A that contains the specified keys and values. - If the same key appears multiple times in the input, the latter one in the sequence takes precedence. This differs from , with which multiple duplicate keys will result in an exception. + If the same key appears multiple times in the input, the latter one in the sequence takes precedence. This differs from , with which multiple duplicate keys will result in an exception.
    @@ -141,7 +141,7 @@ Creates a with the specified key/value pairs. A that contains the specified keys and values. - If the same key appears multiple times in the input, the latter one in the sequence takes precedence. This differs from , with which multiple duplicate keys will result in an exception. + If the same key appears multiple times in the input, the latter one in the sequence takes precedence. This differs from , with which multiple duplicate keys will result in an exception. diff --git a/xml/System.Net.WebSockets/WebSocketStream.xml b/xml/System.Net.WebSockets/WebSocketStream.xml index 5eb62525d25..2850e84b3d4 100644 --- a/xml/System.Net.WebSockets/WebSocketStream.xml +++ b/xml/System.Net.WebSockets/WebSocketStream.xml @@ -207,7 +207,7 @@ The wrapped . - The type of messages that should be written as part of calls. Each write produces a message. + The type of messages that should be written as part of calls. Each write produces a message. if disposing the should close the underlying ; otherwise, . Defaults to . Creates a that delegates to a wrapped . @@ -237,7 +237,7 @@ The wrapped . - The type of messages that should be written as part of calls. Each write produces a message. + The type of messages that should be written as part of calls. Each write produces a message. The amount of time that disposing the will wait for a graceful closing of the 's output. Creates a that delegates to a wrapped . A new instance of that forwards reads and writes on the to the underlying . @@ -293,7 +293,7 @@ The wrapped . - The type of messages that should be written as part of calls. + The type of messages that should be written as part of calls. Each write on the results in writing a partial message to the underlying . When the is disposed, it will write an empty message to the underlying to signal the end of the message. diff --git a/xml/System.Security.Cryptography.X509Certificates/X500DistinguishedName.xml b/xml/System.Security.Cryptography.X509Certificates/X500DistinguishedName.xml index 6b56a6fdac5..86a6e35aec8 100644 --- a/xml/System.Security.Cryptography.X509Certificates/X500DistinguishedName.xml +++ b/xml/System.Security.Cryptography.X509Certificates/X500DistinguishedName.xml @@ -194,7 +194,6 @@ The encoded distinguished name. Initializes a new instance of the class using information from the provided data. To be added. - From 2a605f0408050e31d180ff7b2589cc903c3883f8 Mon Sep 17 00:00:00 2001 From: Genevieve Warren <24882762+gewarren@users.noreply.github.com> Date: Fri, 3 Oct 2025 09:29:17 -0700 Subject: [PATCH 34/39] system.io.compression fixups --- xml/System.IO.Compression/ZipArchive.xml | 55 +- xml/System.IO.Compression/ZipArchiveEntry.xml | 108 ++-- xml/System.IO.Compression/ZipFile.xml | 553 +++++++++--------- .../ZipFileExtensions.xml | 197 ++++--- 4 files changed, 471 insertions(+), 442 deletions(-) diff --git a/xml/System.IO.Compression/ZipArchive.xml b/xml/System.IO.Compression/ZipArchive.xml index eaa5e5fc639..52cd4b5b6c0 100644 --- a/xml/System.IO.Compression/ZipArchive.xml +++ b/xml/System.IO.Compression/ZipArchive.xml @@ -385,55 +385,56 @@ If the comment byte length is larger than , it will The input or output stream. - See the description of the ZipArchiveMode enum. Read requires the stream to support reading, Create requires the stream to support writing, and Update requires the stream to support reading, writing, and seeking. + One of the enumeration values that specifies whether the stream supports reading, writing, and seeking. to leave the stream open upon disposing the ZipArchive, otherwise . - The encoding to use when reading or writing entry names and comments in this ZipArchive. - NOTE: Specifying this parameter to values other than is discouraged. - However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names.<br /> This value is used as follows: + The encoding to use when reading or writing entry names and comments in this ZipArchive. + + The optional cancellation token to monitor. + Asynchronously initializes and returns a new instance of on the given stream in the specified mode, specifying whether to leave the stream open, with an optional encoding and an optional cancellation token. + To be added. + + Specifying a value for other than is discouraged. However, this might be necessary for interoperability with ZIP archive tools and libraries that don't correctly support UTF-8 encoding for entry names. + This value is used as follows: Reading (opening) ZIP archive files: - If entryNameEncoding is not specified (== null): + If is not specified (== null): - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) in order to decode the entry name and comment. - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) to decode the entry name and comment. + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) to decode the entry name and comment. - If entryNameEncoding is specified (!= null): + If is specified (!= null): - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified entryNameEncoding in order to decode the entry name and comment. - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified to decode the entry name and comment. + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) to decode the entry name and comment. Writing (saving) ZIP archive files: - If entryNameEncoding is not specified (== null): + If is not specified (== null): - For entry names and comments that contain characters outside the ASCII range, the language encoding flag (EFS) will be set in the general purpose bit flag of the local file header, and UTF-8 (Encoding.UTF8) will be used in order to encode the entry name and comment into bytes. - For entry names and comments that do not contain characters outside the ASCII range, the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header, and the current system default code page (Encoding.Default) will be used to encode the entry names and comments into bytes. + For entry names and comments that contain characters outside the ASCII range, the language encoding flag (EFS) will be set in the general purpose bit flag of the local file header, and UTF-8 (Encoding.UTF8) will be used to encode the entry name and comment into bytes. + For entry names and comments that don't contain characters outside the ASCII range, the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header, and the current system default code page (Encoding.Default) will be used to encode the entry names and comments into bytes. - If entryNameEncoding is specified (!= null): + If is specified (!= null): - The specified entryNameEncoding will always be used to encode the entry names and comments into bytes. + The specified will always be used to encode the entry names and comments into bytes. - The language encoding flag (EFS) in the general purpose bit flag of the local file header will be set if and only if the specified entryNameEncoding is a UTF-8 encoding. - - The optional cancellation token to monitor. - Asynchronously initializes and returns a new instance of on the given stream in the specified mode, specifying whether to leave the stream open, with an optional encoding and an optional cancellation token. - To be added. - To be added. + The language encoding flag (EFS) in the general purpose bit flag of the local file header will be set if and only if the specified is a UTF-8 encoding. + The stream is already closed. -or- - mode is incompatible with the capabilities of the stream. + is incompatible with the capabilities of the stream. The stream is . - mode specified an invalid value. + specified an invalid value. - The contents of the stream could not be interpreted as a Zip file. + The contents of the stream could not be interpreted as a ZIP file. -or- - mode is Update and an entry is missing from the archive or is corrupt and cannot be read. + is Update and an entry is missing from the archive or is corrupt and cannot be read. -or- - mode is Update and an entry is too large to fit into memory. + is Update and an entry is too large to fit into memory. - If a Unicode encoding other than UTF-8 is specified for the entryNameEncoding. + A Unicode encoding other than UTF-8 was specified for . diff --git a/xml/System.IO.Compression/ZipArchiveEntry.xml b/xml/System.IO.Compression/ZipArchiveEntry.xml index 6f3c492bb98..03bf2be279a 100644 --- a/xml/System.IO.Compression/ZipArchiveEntry.xml +++ b/xml/System.IO.Compression/ZipArchiveEntry.xml @@ -161,17 +161,17 @@ If the comment byte length is larger than , it will Gets the compressed size, expressed in bytes, of the entry in the zip archive. The compressed size of the entry in the zip archive. - , or the mode is set to and the entry has been opened. - -## Examples - The following example shows how to retrieve entries in a zip archive, and evaluate the properties of the entries. It uses the property to display the name of the entry, and the and properties to calculate how much the file was compressed. - + , or the mode is set to and the entry has been opened. + +## Examples + The following example shows how to retrieve entries in a zip archive, and evaluate the properties of the entries. It uses the property to display the name of the entry, and the and properties to calculate how much the file was compressed. + :::code language="csharp" source="~/snippets/csharp/System.IO.Compression/ZipArchive/GetEntry/program1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/System.IO.Compression/ZipArchive/GetEntry/program1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/System.IO.Compression/ZipArchive/GetEntry/program1.vb" id="Snippet1"::: + ]]> The value of the property is not available because the entry has been modified. @@ -285,11 +285,11 @@ If the comment byte length is larger than , it will OS and application specific file attributes. The external attributes written by the application when this entry was written. It is both host OS and application dependent. - @@ -404,10 +404,10 @@ If the comment byte length is larger than , it will ]]> The attempt to set this property failed, because the zip archive for the entry is in mode. - The archive mode is set to . - + The archive mode is set to . + -or- - + The archive mode is set to and the entry has been opened. An attempt was made to set this property to a value that is either earlier than 1980 January 1 0:00:00 (midnight) or later than 2107 December 31 23:59:58 (two seconds before midnight). @@ -446,17 +446,17 @@ If the comment byte length is larger than , it will Gets the uncompressed size, expressed in bytes, of the entry in the zip archive. The uncompressed size of the entry in the zip archive. - , or the mode is set to and the entry has been opened. - -## Examples - The following example shows how to retrieve entries from a zip archive, and evaluate the properties of the entries. It uses the property to display the name of the entry, and the and properties to calculate how much the file was compressed. - + , or the mode is set to and the entry has been opened. + +## Examples + The following example shows how to retrieve entries from a zip archive, and evaluate the properties of the entries. It uses the property to display the name of the entry, and the and properties to calculate how much the file was compressed. + :::code language="csharp" source="~/snippets/csharp/System.IO.Compression/ZipArchive/GetEntry/program1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/System.IO.Compression/ZipArchive/GetEntry/program1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/System.IO.Compression/ZipArchive/GetEntry/program1.vb" id="Snippet1"::: + ]]> The value of the property is not available because the entry has been modified. @@ -539,32 +539,32 @@ If the comment byte length is larger than , it will Opens the entry from the zip archive. The stream that represents the contents of the entry. - method, and write to the stream. - + method, and write to the stream. + :::code language="csharp" source="~/snippets/csharp/System.IO.Compression/ZipArchive/CreateEntry/program1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/System.IO.Compression/ZipArchive/CreateEntry/program1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/System.IO.Compression/ZipArchive/CreateEntry/program1.vb" id="Snippet1"::: + ]]> - The entry is already currently open for writing. - - -or- - - The entry has been deleted from the archive. - - -or- - + The entry is already currently open for writing. + + -or- + + The entry has been deleted from the archive. + + -or- + The archive for this entry was opened with the mode, and this entry has already been written to. - The entry is either missing from the archive or is corrupt and cannot be read. - - -or- - + The entry is either missing from the archive or is corrupt and cannot be read. + + -or- + The entry has been compressed by using a compression method that is not supported. The zip archive for this entry has been disposed. @@ -591,20 +591,20 @@ If the comment byte length is larger than , it will The token to monitor for cancellation requests. - Asynchronously opens the entry. If the archive that the entry belongs to was opened in Read mode, the returned stream will be readable, and it may or may not be seekable. If Create mode, the returned stream will be writable and not seekable. If Update mode, the returned stream will be readable, writable, seekable, and support SetLength. + Asynchronously opens the entry. A Stream that represents the contents of the entry. - To be added. + If the archive that the entry belongs to was opened in Read mode, the returned stream will be readable, and it might or might not be seekable. If opened in Create mode, the returned stream will be writable and not seekable. If opened in Update mode, the returned stream will be readable, writable, and seekable, and support SetLength. The entry is already currently open for writing. -or- The entry has been deleted from the archive. -or- - The archive that this entry belongs to was opened in ZipArchiveMode.Create, and this entry has already been written to once. + The archive that this entry belongs to was opened in ZipArchiveMode.Create mode, and this entry has already been written to once. The entry is missing from the archive or is corrupt and cannot be read. -or- - The entry has been compressed using a compression method that is not supported. + The entry has been compressed using a compression method that isn't supported. The ZipArchive that this entry belongs to has been disposed. diff --git a/xml/System.IO.Compression/ZipFile.xml b/xml/System.IO.Compression/ZipFile.xml index 37fea6d6a8c..b0837b7e659 100644 --- a/xml/System.IO.Compression/ZipFile.xml +++ b/xml/System.IO.Compression/ZipFile.xml @@ -108,7 +108,7 @@ The stream does not support writing. or is . - In the specified path, file name, or both exceed the system-defined maximum length. + In , the specified path, file name, or both exceed the system-defined maximum length. is invalid or does not exist (for example, it is on an unmapped drive). A file in the specified directory could not be opened. @@ -257,7 +257,7 @@ An I/O error occurred while opening a file to be archived. The stream does not support writing. or is . - In the specified path, file name, or both exceed the system-defined maximum length. + In , the specified path, file name, or both exceed the system-defined maximum length. is invalid or does not exist (for example, it is on an unmapped drive). A file in the specified directory could not be opened. @@ -422,7 +422,7 @@ An I/O error occurred while opening a file to be archived. The stream does not support writing. or is . - In the specified path, file name, or both exceed the system-defined maximum length. + In , the specified path, file name, or both exceed the system-defined maximum length. is invalid or does not exist (for example, it is on an unmapped drive). A file in the specified directory could not be opened. @@ -591,7 +591,7 @@ An I/O error occurred while opening a file to be archived. or is . - In the specified path, file name, or both exceed the system-defined maximum length. + In , the specified path, file name, or both exceed the system-defined maximum length. is invalid or does not exist (for example, it is on an unmapped drive). @@ -631,42 +631,44 @@ An I/O error occurred while opening a file to be archived. The name of the archive to be created. The cancellation token to monitor for cancellation requests. - Asynchronously creates a Zip archive at the path destinationArchiveFileName that contains the files and directories from the directory specified by sourceDirectoryName. The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created. If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method does not include the base directory into the archive. - If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid Zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default. - (Currently, the underlying compression algorithm is provided by the System.IO.Compression.DeflateStream class.) + Asynchronously creates a zip archive at the path that contains the files and directories from the directory specified by . To be added. - To be added. + + The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive is created. If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method does not include the base directory into the archive. + If an error is encountered while adding files to the archive, this method stops adding files and leaves the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.If an entry with the specified name already exists in the archive, a second entry is created that has an identical name. Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm is used; the ZipArchive will not impose its own default. + (Currently, the underlying compression algorithm is provided by the class.) + - sourceDirectoryName or destinationArchiveFileName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + or is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. - sourceDirectoryName or destinationArchiveFileName is . + or is . - In sourceDirectoryName or destinationArchiveFileName, the specified path, file name, or both exceed the system-defined maximum length. + In or , the specified path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. - The path specified in sourceDirectoryName or destinationArchiveFileName is invalid, (for example, it is on an unmapped drive). + The path specified in or is invalid, (for example, it is on an unmapped drive). -or- - The directory specified by sourceDirectoryName does not exist. + The directory specified by does not exist. - destinationArchiveFileName already exists. + already exists. -or- An I/O error occurred while opening a file to be archived. - destinationArchiveFileName specified a directory. + specified a directory. -or- The caller does not have the required permission. - sourceDirectoryName or destinationArchiveFileName is in an invalid format. + or is in an invalid format. An asynchronous operation is cancelled. @@ -702,7 +704,7 @@ An I/O error occurred while opening a file to be archived. to include the directory name from at the root of the archive; to include only the contents of the directory. The token to monitor for cancellation requests. - Asynchronously creates a zip archive in the specified stream that contains the files and directories from the specified directory, uses the specified compression level, and optionally includes the base directory. + Asynchronously creates a zip archive in the specified stream that contains the files and directories from the specified directory, using the specified compression level, and optionally including the base directory. To be added. The directory structure from the file system is preserved in the archive. If the directory is empty, an empty archive is created. @@ -717,7 +719,7 @@ An I/O error occurred while opening a file to be archived. or is . - In the specified path, file name, or both exceed the system-defined maximum length. + In , the specified path, file name, or both exceed the system-defined maximum length. is invalid or does not exist (for example, it is on an unmapped drive). @@ -759,50 +761,52 @@ An I/O error occurred while opening a file to be archived. The path to the directory on the file system to be archived. The name of the archive to be created. - The level of the compression (speed/memory vs. compressed size trade-off). + One of the enumeration values that specifies the level of the compression (speed/memory vs. compressed size trade-off). - - true to indicate that a directory named sourceDirectoryName should be included at the root of the archive. false to indicate that the files and directories in sourceDirectoryName should be included directly in the archive. + to indicate that a directory named should be included at the root of the archive. to indicate that the files and directories in should be included directly in the archive. The cancellation token to monitor for cancellation requests. - Asynchronously creates a Zip archive at the path destinationArchiveFileName that contains the files and directories in the directory specified by sourceDirectoryName. The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created. - If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method optionally includes the base directory in the archive. - If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid Zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default. - (Currently, the underlying compression algorithm is provided by the System.IO.Compression.DeflateStream class.) + Asynchronously creates a zip archive at the path that contains the files and directories in the directory specified by . To be added. - To be added. + + The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created. + If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method optionally includes the base directory in the archive. + If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default. + (Currently, the underlying compression algorithm is provided by the class.) + - sourceDirectoryName or destinationArchiveFileName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + or is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. - sourceDirectoryName or destinationArchiveFileName is . + or is . - In sourceDirectoryName or destinationArchiveFileName, the specified path, file name, or both exceed the system-defined maximum length. + In or , the specified path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. - The path specified in sourceDirectoryName or destinationArchiveFileName is invalid, (for example, it is on an unmapped drive). + The path specified in or is invalid, (for example, it is on an unmapped drive). -or- - The directory specified by sourceDirectoryName does not exist. + The directory specified by does not exist. - destinationArchiveFileName already exists. + already exists. -or- An I/O error occurred while opening a file to be archived. - destinationArchiveFileName specified a directory. + specified a directory. -or- The caller does not have the required permission. - sourceDirectoryName or destinationArchiveFileName is in an invalid format. + or is in an invalid format. An asynchronous operation is cancelled. @@ -847,7 +851,7 @@ An I/O error occurred while opening a file to be archived. to include the directory name from at the root of the archive; to include only the contents of the directory. The encoding to use when reading or writing entry names in this archive. Specify a value for this parameter only when an encoding is required for interoperability with zip archive tools and libraries that do not support UTF-8 encoding for entry names or comments. The cancellation token to monitor for cancellation requests. - Asynchronously creates a zip archive in the specified stream that contains the files and directories from the specified directory, uses the specified compression level and character encoding for entry names, and optionally includes the base directory. + Asynchronously creates a zip archive in the specified stream that contains the files and directories from the specified directory, using the specified compression level and character encoding for entry names, and optionally including the base directory. To be added. The directory structure from the file system is preserved in the archive. If the directory is empty, an empty archive is created. @@ -862,7 +866,7 @@ An I/O error occurred while opening a file to be archived. or is . - In the specified path, file name, or both exceed the system-defined maximum length. + In , the specified path, file name, or both exceed the system-defined maximum length. is invalid or does not exist (for example, it is on an unmapped drive). @@ -912,68 +916,70 @@ An I/O error occurred while opening a file to be archived. The path to the directory on the file system to be archived. The name of the archive to be created. - The level of the compression (speed/memory vs. compressed size trade-off). + One of the enumeration values that specifies the level of the compression (speed/memory vs. compressed size trade-off). - true to indicate that a directory named sourceDirectoryName should be included at the root of the archive. false to indicate that the files and directories in sourceDirectoryName should be included directly in the archive. + to indicate that a directory named should be included at the root of the archive. to indicate that the files and directories in should be included directly in the archive. - The encoding to use when reading or writing entry names and comments in this ZipArchive. - NOTE: Specifying this parameter to values other than is discouraged. - However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments. -
    This value is used as follows while creating the archive:
    - If entryNameEncoding is not specified (== null): - - For file names or comments that contain characters outside the ASCII range: -
    The language encoding flag (EFS) will be set in the general purpose bit flag of the local file header of the corresponding entry, and UTF-8 (Encoding.UTF8) will be used in order to encode the entry name and comment into bytes.
    - For file names or comments that do not contain characters outside the ASCII range: -
    the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header of the corresponding entry, and the current system default code page (Encoding.Default) will be used to encode the entry names and comments into bytes.
    -
    - If entryNameEncoding is specified (!= null): - - The specified entryNameEncoding will always be used to encode the entry names and comments into bytes. -
    The language encoding flag (EFS) in the general purpose bit flag of the local file header for each entry will be set if and only if the specified entryNameEncoding is a UTF-8 encoding.
    -
    - Note that Unicode encodings other than UTF-8 may not be currently used for the entryNameEncoding, otherwise an is thrown. + The encoding to use when reading or writing entry names and comments in this ZipArchive. The cancellation token to monitor for cancellation requests. - Asynchronously creates a Zip archive at the path destinationArchiveFileName that contains the files and directories in the directory specified by sourceDirectoryName. The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created. - If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method optionally includes the base directory in the archive. - If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid Zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default. - (Currently, the underlying compression algorithm is provided by the System.IO.Compression.DeflateStream class.) + Asynchronously creates a zip archive at the path that contains the files and directories in the directory specified by . To be added. - To be added. + + The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created. + If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method optionally includes the base directory in the archive. + If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default. + (Currently, the underlying compression algorithm is provided by the class.) + Specifying a value for other than is discouraged. + However, this may be necessary for interoperability with zip archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments. + This value is used as follows while creating the archive: + If is not specified (== null): + + For file names or comments that contain characters outside the ASCII range: +
    The language encoding flag (EFS) will be set in the general purpose bit flag of the local file header of the corresponding entry, and UTF-8 (Encoding.UTF8) will be used to encode the entry name and comment into bytes.
    + For file names or comments that do not contain characters outside the ASCII range: +
    The language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header of the corresponding entry, and the current system default code page (Encoding.Default) will be used to encode the entry names and comments into bytes.
    +
    + If is specified (!= null): + + The specified will always be used to encode the entry names and comments into bytes. +
    The language encoding flag (EFS) in the general purpose bit flag of the local file header for each entry will be set if and only if the specified is a UTF-8 encoding.
    +
    + Unicode encodings other than UTF-8 can't be used for the , otherwise an is thrown. +
    - sourceDirectoryName or destinationArchiveFileName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + or is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. - sourceDirectoryName or destinationArchiveFileName is . + or is . - In sourceDirectoryName or destinationArchiveFileName, the specified path, file name, or both exceed the system-defined maximum length. + In or , the specified path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. - The path specified in sourceDirectoryName or destinationArchiveFileName is invalid, (for example, it is on an unmapped drive). + The path specified in or is invalid, (for example, it is on an unmapped drive). -or- - The directory specified by sourceDirectoryName does not exist. + The directory specified by does not exist. - destinationArchiveFileName already exists. + already exists. -or- An I/O error occurred while opening a file to be archived. - destinationArchiveFileName specified a directory. + specified a directory. -or- The caller does not have the required permission. - sourceDirectoryName or destinationArchiveFileName is in an invalid format. + or is in an invalid format. An asynchronous operation is cancelled.
    @@ -1019,9 +1025,9 @@ An I/O error occurred while opening a file to be archived. This method creates the specified directory and all subdirectories. The destination directory cannot already exist. Exceptions related to validating the paths in the or the files in the zip archive contained in parameters are thrown before extraction. Otherwise, if an error occurs during extraction, the archive remains partially extracted. Each extracted file has the same relative path to the directory specified by as its source entry has to the root of the archive. - If a file to be archived has an invalid last modified time, the first date and time representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + If a file to be archived has an invalid last modified time, the first date and time representable in the zip timestamp format (midnight on January 1, 1980) will be used.
    - > is , contains only white space, or contains at least one invalid character. + is , contains only white space, or contains at least one invalid character. or is . The specified path in exceeds the system-defined maximum length. @@ -1046,7 +1052,7 @@ An archive entry was not found or was corrupt. -or- -An archive entry was compressed by using a compression method that is not supported. +An archive entry was compressed by using a compression method that isn't supported. @@ -1135,7 +1141,7 @@ An archive entry was compressed by using a compression method that is not suppor -or- - An archive entry was compressed by using a compression method that is not supported. + An archive entry was compressed by using a compression method that isn't supported. @@ -1172,9 +1178,9 @@ An archive entry was compressed by using a compression method that is not suppor This method creates the specified directory and all subdirectories. The destination directory cannot already exist. Exceptions related to validating the paths in the or the files in the zip archive contained in parameters are thrown before extraction. Otherwise, if an error occurs during extraction, the archive remains partially extracted. Each extracted file has the same relative path to the directory specified by as its source entry has to the root of the archive. - If a file to be archived has an invalid last modified time, the first date and time representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + If a file to be archived has an invalid last modified time, the first date and time representable in the zip timestamp format (midnight on January 1, 1980) will be used.
    - > is , contains only white space, or contains at least one invalid character. + is , contains only white space, or contains at least one invalid character. or is . The specified path in exceeds the system-defined maximum length. @@ -1199,7 +1205,7 @@ An archive entry was not found or was corrupt. -or- -An archive entry was compressed by using a compression method that is not supported. +An archive entry was compressed by using a compression method that isn't supported. @@ -1242,9 +1248,9 @@ An archive entry was compressed by using a compression method that is not suppor This method creates the specified directory and all subdirectories. The destination directory cannot already exist. Exceptions related to validating the paths in the or the files in the zip archive contained in parameters are thrown before extraction. Otherwise, if an error occurs during extraction, the archive remains partially extracted. Each extracted file has the same relative path to the directory specified by as its source entry has to the root of the archive. - If a file to be archived has an invalid last modified time, the first date and time representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + If a file to be archived has an invalid last modified time, the first date and time representable in the zip timestamp format (midnight on January 1, 1980) will be used. - > is , contains only white space, or contains at least one invalid character. + is , contains only white space, or contains at least one invalid character. -or- @@ -1273,7 +1279,7 @@ An archive entry was not found or was corrupt. -or- -An archive entry was compressed by using a compression method that is not supported. +An archive entry was compressed by using a compression method that isn't supported. @@ -1328,7 +1334,7 @@ Each entry will be extracted such that the extracted file has the same relative The `sourceArchiveFileName` and `destinationDirectoryName` parameters accept both relative and absolute paths. A relative path is interpreted as relative to the current working directory. -If a file to be archived has an invalid last modified time, the first date and time representable in the Zip timestamp format (midnight on January 1, 1980) will be used. +If a file to be archived has an invalid last modified time, the first date and time representable in the zip timestamp format (midnight on January 1, 1980) will be used. ]]> @@ -1371,7 +1377,7 @@ A was not found or was co -or- -A has been compressed using a compression method that is not supported. +A has been compressed using a compression method that isn't supported. @@ -1478,7 +1484,7 @@ If `entryNameEncoding` is set to `null`, entry names and comments are decoded ac -or- - An archive entry was compressed by using a compression method that is not supported. + An archive entry was compressed by using a compression method that isn't supported. @@ -1524,9 +1530,9 @@ If `entryNameEncoding` is set to `null`, entry names and comments are decoded ac This method creates the specified directory and all subdirectories. The destination directory cannot already exist. Exceptions related to validating the paths in the or the files in the zip archive contained in parameters are thrown before extraction. Otherwise, if an error occurs during extraction, the archive remains partially extracted. Each extracted file has the same relative path to the directory specified by as its source entry has to the root of the archive. - If a file to be archived has an invalid last modified time, the first date and time representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + If a file to be archived has an invalid last modified time, the first date and time representable in the zip timestamp format (midnight on January 1, 1980) will be used. - > is , contains only white space, or contains at least one invalid character. + is , contains only white space, or contains at least one invalid character. -or- @@ -1555,7 +1561,7 @@ An archive entry was not found or was corrupt. -or- -An archive entry was compressed by using a compression method that is not supported. +An archive entry was compressed by using a compression method that isn't supported. @@ -1620,7 +1626,7 @@ An archive entry was compressed by using a compression method that is not suppor The `sourceArchiveFileName` and `destinationDirectoryName` parameters accept both relative and absolute paths. A relative path is interpreted as relative to the current working directory. - If a file to be archived has an invalid last modified time, the first date and time representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + If a file to be archived has an invalid last modified time, the first date and time representable in the zip timestamp format (midnight on January 1, 1980) will be used. ]]> @@ -1666,7 +1672,7 @@ An archive entry was not found or was corrupt. -or- -An archive entry has been compressed using a compression method that is not supported. +An archive entry has been compressed using a compression method that isn't supported. @@ -1701,10 +1707,10 @@ An archive entry has been compressed using a compression method that is not supp This method creates the specified directory and all subdirectories. The destination directory cannot already exist. Exceptions related to validating the paths in the or the files in the zip archive contained in parameters are thrown before extraction. Otherwise, if an error occurs during extraction, the archive remains partially extracted. Each extracted file has the same relative path to the directory specified by as its source entry has to the root of the archive. - If a file to be archived has an invalid last modified time, the first date and time representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + If a file to be archived has an invalid last modified time, the first date and time representable in the zip timestamp format (midnight on January 1, 1980) will be used. - > is , contains only white space, or contains at least one invalid character. + is , contains only white space, or contains at least one invalid character. or is . The specified path in exceeds the system-defined maximum length. @@ -1712,7 +1718,8 @@ An archive entry has been compressed using a compression method that is not supp The name of an entry in the archive is , contains only white space, or contains at least one invalid character. -or- - Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) -or- + Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) + -or- An archive entry to extract has the same name as an entry that has already been extracted or that exists in . The caller does not have the required permission to access the archive or the destination directory. @@ -1723,7 +1730,7 @@ An archive entry has been compressed using a compression method that is not supp -or- An archive entry was not found or was corrupt. -or- - An archive entry was compressed by using a compression method that is not supported. + An archive entry was compressed by using a compression method that isn't supported. An asynchronous operation is cancelled. @@ -1755,21 +1762,23 @@ An archive entry has been compressed using a compression method that is not supp The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory. The cancellation token to monitor for cancellation requests. - Asynchronously extracts all of the files in the specified archive to a directory on the file system. - The specified directory must not exist. This method will create all subdirectories and the specified directory. - If there is an error while extracting the archive, the archive will remain partially extracted. Each entry will be extracted such that the extracted file has the same relative path to the destinationDirectoryName as the entry has to the archive. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file to be archived has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + Asynchronously extracts all of the files in the specified archive to a directory on the file system. To be added. - To be added. + + The specified directory must not exist. This method will create all subdirectories and the specified directory. + If there is an error while extracting the archive, the archive will remain partially extracted. Each entry will be extracted such that the extracted file has the same relative path to the destinationDirectoryName as the entry has to the archive. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file to be archived has an invalid last modified time, the first datetime representable in the zip timestamp format (midnight on January 1, 1980) will be used. + - sourceArchive or destinationDirectoryName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + or is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. - sourceArchive or destinationDirectoryName is . + + or is . - sourceArchive or destinationDirectoryName specifies a path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + or specifies a path, file name, or both that exceeds the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. - The path specified by sourceArchive or destinationDirectoryName is invalid, (for example, it is on an unmapped drive). + The path specified by or is invalid, (for example, it is on an unmapped drive). An I/O error has occurred. @@ -1781,13 +1790,16 @@ An archive entry has been compressed using a compression method that is not supp An archive entry has the same name as an already extracted entry from the same archive. The caller does not have the required permission. - sourceArchive or destinationDirectoryName is in an invalid format. - sourceArchive was not found. + + or is in an invalid format. + + was not found. - The archive specified by sourceArchive: Is not a valid ZipArchive -or- + The archive specified by is not a valid ZipArchive. + -or- An archive entry was not found or was corrupt. -or- - An archive entry has been compressed using a compression method that is not supported. + An archive entry has been compressed using a compression method that isn't supported. An asynchronous operation is cancelled. @@ -1827,10 +1839,10 @@ An archive entry has been compressed using a compression method that is not supp This method creates the specified directory and all subdirectories. The destination directory cannot already exist. Exceptions related to validating the paths in the or the files in the zip archive contained in parameters are thrown before extraction. Otherwise, if an error occurs during extraction, the archive remains partially extracted. Each extracted file has the same relative path to the directory specified by as its source entry has to the root of the archive. - If a file to be archived has an invalid last modified time, the first date and time representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + If a file to be archived has an invalid last modified time, the first date and time representable in the zip timestamp format (midnight on January 1, 1980) will be used. - > is , contains only white space, or contains at least one invalid character. + is , contains only white space, or contains at least one invalid character. or is . The specified path in exceeds the system-defined maximum length. @@ -1838,7 +1850,8 @@ An archive entry has been compressed using a compression method that is not supp The name of an entry in the archive is , contains only white space, or contains at least one invalid character. -or- - Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) -or- + Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) + -or- is and an archive entry to extract has the same name as an entry that has already been extracted or that exists in . @@ -1850,7 +1863,7 @@ An archive entry has been compressed using a compression method that is not supp -or- An archive entry was not found or was corrupt. -or- - An archive entry was compressed by using a compression method that is not supported. + An archive entry was compressed by using a compression method that isn't supported. An asynchronous operation is cancelled. @@ -1896,11 +1909,11 @@ An archive entry has been compressed using a compression method that is not supp This method creates the specified directory and all subdirectories. The destination directory cannot already exist. Exceptions related to validating the paths in the or the files in the zip archive contained in parameters are thrown before extraction. Otherwise, if an error occurs during extraction, the archive remains partially extracted. Each extracted file has the same relative path to the directory specified by as its source entry has to the root of the archive. - If a file to be archived has an invalid last modified time, the first date and time representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + If a file to be archived has an invalid last modified time, the first date and time representable in the zip timestamp format (midnight on January 1, 1980) will be used. - > is , contains only white space, or contains at least one invalid character. + is , contains only white space, or contains at least one invalid character. -or- is set to a Unicode encoding other than UTF-8. @@ -1912,7 +1925,8 @@ An archive entry has been compressed using a compression method that is not supp The name of an entry in the archive is , contains only white space, or contains at least one invalid character. -or- - Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) -or- + Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) + -or- An archive entry to extract has the same name as an entry that has already been extracted or that exists in . The caller does not have the required permission to access the archive or the destination directory. @@ -1923,7 +1937,7 @@ An archive entry has been compressed using a compression method that is not supp -or- An archive entry was not found or was corrupt. -or- - An archive entry was compressed by using a compression method that is not supported. + An archive entry was compressed by using a compression method that isn't supported. An asynchronous operation is cancelled. @@ -1955,24 +1969,26 @@ An archive entry has been compressed using a compression method that is not supp The path to the archive on the file system that is to be extracted. The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory. - to indicate overwrite. + to overwrite files; otherwise. The cancellation token to monitor for cancellation requests. - Asynchronously extracts all of the files in the specified archive to a directory on the file system. - The specified directory must not exist. This method will create all subdirectories and the specified directory. - If there is an error while extracting the archive, the archive will remain partially extracted. Each entry will be extracted such that the extracted file has the same relative path to the destinationDirectoryName as the entry has to the archive. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file to be archived has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + Asynchronously extracts all of the files in the specified archive to a directory on the file system. To be added. - To be added. + + The specified directory must not exist. This method will create all subdirectories and the specified directory. + If there is an error while extracting the archive, the archive will remain partially extracted. Each entry will be extracted such that the extracted file has the same relative path to the destinationDirectoryName as the entry has to the archive. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file to be archived has an invalid last modified time, the first datetime representable in the zip timestamp format (midnight on January 1, 1980) will be used. + - sourceArchive or destinationDirectoryName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + or is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. - sourceArchive or destinationDirectoryName is . + + or is . - sourceArchive or destinationDirectoryName specifies a path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + or specifies a path, file name, or both that exceeds the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. - The path specified by sourceArchive or destinationDirectoryName is invalid, (for example, it is on an unmapped drive). + The path specified by or is invalid, (for example, it is on an unmapped drive). An I/O error has occurred. @@ -1984,13 +2000,15 @@ An archive entry has been compressed using a compression method that is not supp An archive entry has the same name as an already extracted entry from the same archive. The caller does not have the required permission. - sourceArchive or destinationDirectoryName is in an invalid format. - sourceArchive was not found. + + or is in an invalid format. + was not found. - The archive specified by sourceArchive: Is not a valid ZipArchive -or- + not a valid ZipArchive. + -or- An archive entry was not found or was corrupt. -or- - An archive entry has been compressed using a compression method that is not supported. + An archive entry has been compressed using a compression method that isn't supported. An asynchronous operation is cancelled. @@ -2028,38 +2046,40 @@ An archive entry has been compressed using a compression method that is not supp The path to the archive on the file system that is to be extracted. The path to the directory on the file system. The directory specified must not exist, but the directory that it is contained in must exist. - The encoding to use when reading or writing entry names and comments in this ZipArchive. - NOTE: Specifying this parameter to values other than is discouraged. - However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.
    This value is used as follows:
    - If entryNameEncoding is not specified (== null): - - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) in order to decode the entry name and comment. - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. - - If entryNameEncoding is specified (!= null): - - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified entryNameEncoding in order to decode the entry name and comment. - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. - - Note that Unicode encodings other than UTF-8 may not be currently used for the entryNameEncoding, otherwise an is thrown. + The encoding to use when reading or writing entry names and comments in this ZipArchive. The cancellation token to monitor for cancellation requests. - Asynchronously extracts all of the files in the specified archive to a directory on the file system. - The specified directory must not exist. This method will create all subdirectories and the specified directory. - If there is an error while extracting the archive, the archive will remain partially extracted. Each entry will be extracted such that the extracted file has the same relative path to the destinationDirectoryName as the entry has to the archive. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file to be archived has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + Asynchronously extracts all of the files in the specified archive to a directory on the file system. To be added. - To be added. + + The specified directory must not exist. This method will create all subdirectories and the specified directory. + If there is an error while extracting the archive, the archive will remain partially extracted. Each entry will be extracted such that the extracted file has the same relative path to the destinationDirectoryName as the entry has to the archive. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file to be archived has an invalid last modified time, the first datetime representable in the zip timestamp format (midnight on January 1, 1980) will be used. + Specifying a value other than for is discouraged. However, this might be necessary for interoperability with zip archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments. + This value is used as follows: + If is not specified (== null): + + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) to decode the entry name and comment. + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) to decode the entry name and comment. + + If is specified (!= null): + + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified to decode the entry name and comment. + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) to decode the entry name and comment. + + Unicode encodings other than UTF-8 can't be used for the , otherwise an is thrown. + - sourceArchive or destinationDirectoryName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + or is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. - sourceArchive or destinationDirectoryName is . + + or is . - sourceArchive or destinationDirectoryName specifies a path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + or specifies a path, file name, or both that exceeds the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. - The path specified by sourceArchive or destinationDirectoryName is invalid, (for example, it is on an unmapped drive). + The path specified by or is invalid, (for example, it is on an unmapped drive). An I/O error has occurred. @@ -2071,13 +2091,16 @@ An archive entry has been compressed using a compression method that is not supp An archive entry has the same name as an already extracted entry from the same archive. The caller does not have the required permission. - sourceArchive or destinationDirectoryName is in an invalid format. - sourceArchive was not found. + + or is in an invalid format. + + was not found. - The archive specified by sourceArchive: Is not a valid ZipArchive -or- + The archive specified by is not a valid ZipArchive. + -or- An archive entry was not found or was corrupt. -or- - An archive entry has been compressed using a compression method that is not supported. + An archive entry has been compressed using a compression method that isn't supported. An asynchronous operation is cancelled.
    @@ -2126,11 +2149,11 @@ An archive entry has been compressed using a compression method that is not supp This method creates the specified directory and all subdirectories. The destination directory cannot already exist. Exceptions related to validating the paths in the or the files in the zip archive contained in parameters are thrown before extraction. Otherwise, if an error occurs during extraction, the archive remains partially extracted. Each extracted file has the same relative path to the directory specified by as its source entry has to the root of the archive. - If a file to be archived has an invalid last modified time, the first date and time representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + If a file to be archived has an invalid last modified time, the first date and time representable in the zip timestamp format (midnight on January 1, 1980) will be used. - > is , contains only white space, or contains at least one invalid character. + is , contains only white space, or contains at least one invalid character. -or- is set to a Unicode encoding other than UTF-8. @@ -2142,7 +2165,8 @@ An archive entry has been compressed using a compression method that is not supp The name of an entry in the archive is , contains only white space, or contains at least one invalid character. -or- - Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) -or- + Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) + -or- is and an archive entry to extract has the same name as an entry that has already been extracted or that exists in . @@ -2154,7 +2178,7 @@ An archive entry has been compressed using a compression method that is not supp -or- An archive entry was not found or was corrupt. -or- - An archive entry was compressed by using a compression method that is not supported. + An archive entry was compressed by using a compression method that isn't supported. An asynchronous operation is cancelled. @@ -2193,40 +2217,40 @@ An archive entry has been compressed using a compression method that is not supp The path to the archive on the file system that is to be extracted. The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory. - The encoding to use when reading or writing entry names and comments in this ZipArchive. - NOTE: Specifying this parameter to values other than is discouraged. - However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.
    This value is used as follows:
    - If entryNameEncoding is not specified (== null): - - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) in order to decode the entry name and comment. - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. - - If entryNameEncoding is specified (!= null): - - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified entryNameEncoding in order to decode the entry name and comment. - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. - - Note that Unicode encodings other than UTF-8 may not be currently used for the entryNameEncoding, otherwise an is thrown. - + The encoding to use when reading or writing entry names and comments in this ZipArchive. - to indicate overwrite. + to overwrite files; otherwise. The cancellation token to monitor for cancellation requests. Asynchronously extracts all of the files in the specified archive to a directory on the file system. The specified directory must not exist. This method will create all subdirectories and the specified directory. - If there is an error while extracting the archive, the archive will remain partially extracted. Each entry will be extracted such that the extracted file has the same relative path to the destinationDirectoryName as the entry has to the archive. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file to be archived has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + If there is an error while extracting the archive, the archive will remain partially extracted. Each entry will be extracted such that the extracted file has the same relative path to the destinationDirectoryName as the entry has to the archive. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file to be archived has an invalid last modified time, the first datetime representable in the zip timestamp format (midnight on January 1, 1980) will be used. To be added. - To be added. + + Specifying a value other than for is discouraged. However, this might be necessary for interoperability with zip archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments. + This value is used as follows: + If is not specified (== null): + + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) to decode the entry name and comment. + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) to decode the entry name and comment. + + If is specified (!= null): + + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified to decode the entry name and comment. + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) to decode the entry name and comment. + + Unicode encodings other than UTF-8 can't be used for the , otherwise an is thrown. - sourceArchive or destinationDirectoryName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + or is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. - sourceArchive or destinationDirectoryName is . + + or is . - sourceArchive or destinationDirectoryName specifies a path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + or specifies a path, file name, or both that exceeds the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. - The path specified by sourceArchive or destinationDirectoryName is invalid, (for example, it is on an unmapped drive). + The path specified by or is invalid, (for example, it is on an unmapped drive). An I/O error has occurred. @@ -2238,13 +2262,16 @@ An archive entry has been compressed using a compression method that is not supp An archive entry has the same name as an already extracted entry from the same archive. The caller does not have the required permission. - sourceArchive or destinationDirectoryName is in an invalid format. - sourceArchive was not found. + + or is in an invalid format. + + was not found. - The archive specified by sourceArchive: Is not a valid ZipArchive -or- + The archive specified by is not a valid ZipArchive. + -or- An archive entry was not found or was corrupt. -or- - An archive entry has been compressed using a compression method that is not supported. + An archive entry has been compressed using a compression method that isn't supported. An asynchronous operation is cancelled.
    @@ -2300,7 +2327,7 @@ An archive entry has been compressed using a compression method that is not supp The path to the archive to open, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory. - One of the enumeration values that specifies the actions which are allowed on the entries in the opened archive. + One of the enumeration values that specifies the actions that are allowed on the entries in the opened archive. Opens a zip archive at the specified path and in the specified mode. The opened zip archive. @@ -2492,53 +2519,52 @@ An unspecified I/O error occurred while opening the file. - - A string specifying the path on the filesystem to open the archive on. - The path is permitted to specify relative or absolute path information. - Relative path information is interpreted as relative to the current working directory. - - - See the description of the ZipArchiveMode enum. - If Read is specified, the file is opened with System.IO.FileMode.Open, and will throw a FileNotFoundException if the file does not exist. - If Create is specified, the file is opened with System.IO.FileMode.CreateNew, and will throw a System.IO.IOException if the file already exists. - If Update is specified, the file is opened with System.IO.FileMode.OpenOrCreate. - If the file exists and is a Zip file, its entries will become accessible, and may be modified, and new entries may be created. - If the file exists and is not a Zip file, a ZipArchiveException will be thrown. - If the file exists and is empty or does not exist, a new Zip file will be created. - Note that creating a Zip file with the ZipArchiveMode.Create mode is more efficient when creating a new Zip file. - + The path on the filesystem to open the archive on. + One of the enumeration values that specifies the actions that are allowed on the entries in the opened archive. The cancellation token to monitor for cancellation requests. - Asynchronously opens a ZipArchive on the specified archiveFileName in the specified ZipArchiveMode mode. + Asynchronously opens a ZipArchive on the specified in the specified ZipArchiveMode mode. To be added. - To be added. + + For : + The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. + For : + If is specified, the file is opened with System.IO.FileMode.Open, and will throw a FileNotFoundException if the file does not exist. + If is specified, the file is opened with System.IO.FileMode.CreateNew, and will throw a System.IO.IOException if the file already exists. + If is specified, the file is opened with System.IO.FileMode.OpenOrCreate. + If the file exists and is a zip file, its entries will become accessible and can be modified, and new entries can be created. + If the file exists and is not a zip file, a is thrown. + If the file exists and is empty or does not exist, a new zip file will be created. + Creating a zip file with the mode is more efficient when creating a new zip file. + - archiveFileName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. - path is . + + is . - The specified archiveFileName exceeds the system-defined maximum length. - For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + exceeds the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. - The specified archiveFileName is invalid, (for example, it is on an unmapped drive). + The specified is invalid, (for example, it is on an unmapped drive). An unspecified I/O error occurred while opening the file. - archiveFileName specified a directory. + + specified a directory. -or- The caller does not have the required permission. - mode specified an invalid value. - The file specified in archiveFileName was not found. + specified an invalid value. + The file specified in was not found. - archiveFileName is in an invalid format. + is in an invalid format. - The specified file could not be interpreted as a Zip file. + The specified file could not be interpreted as a zip file. -or- - mode is Update and an entry is missing from the archive or is corrupt and cannot be read. + is and an entry is missing from the archive or is corrupt and cannot be read. -or- - mode is Update and an entry is too large to fit into memory. + is and an entry is too large to fit into memory. An asynchronous operation is cancelled. @@ -2574,74 +2600,73 @@ An unspecified I/O error occurred while opening the file. - - A string specifying the path on the filesystem to open the archive on. - The path is permitted to specify relative or absolute path information. - Relative path information is interpreted as relative to the current working directory. - - - See the description of the ZipArchiveMode enum. - If Read is specified, the file is opened with System.IO.FileMode.Open, and will throw a FileNotFoundException if the file does not exist. - If Create is specified, the file is opened with System.IO.FileMode.CreateNew, and will throw a System.IO.IOException if the file already exists. - If Update is specified, the file is opened with System.IO.FileMode.OpenOrCreate. - If the file exists and is a Zip file, its entries will become accessible, and may be modified, and new entries may be created. - If the file exists and is not a Zip file, a ZipArchiveException will be thrown. - If the file exists and is empty or does not exist, a new Zip file will be created. - Note that creating a Zip file with the ZipArchiveMode.Create mode is more efficient when creating a new Zip file. - - The encoding to use when reading or writing entry names and comments in this ZipArchive. - NOTE: Specifying this parameter to values other than is discouraged. - However, this may be necessary for interoperability with ZIP archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments.
    This value is used as follows:
    - Reading (opening) ZIP archive files: - If entryNameEncoding is not specified (== null): + The path on the filesystem to open the archive on. + One of the enumeration values that specifies the actions that are allowed on the entries in the opened archive. + The encoding to use when reading or writing entry names and comments in this ZipArchive. + The cancellation token to monitor for cancellation requests. + Asynchronously opens a ZipArchive on the specified in the specified ZipArchiveMode mode. + To be added. + + For : + The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. + For : + If is specified, the file is opened with System.IO.FileMode.Open, and will throw a FileNotFoundException if the file does not exist. + If is specified, the file is opened with System.IO.FileMode.CreateNew, and will throw a System.IO.IOException if the file already exists. + If is specified, the file is opened with System.IO.FileMode.OpenOrCreate. + If the file exists and is a zip file, its entries will become accessible and can be modified, and new entries can be created. + If the file exists and is not a zip file, a is thrown. + If the file exists and is empty or does not exist, a new zip file will be created. + Creating a zip file with the mode is more efficient when creating a new zip file. + Specifying a value other than for is discouraged. However, this might be necessary for interoperability with zip archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments. + This value is used as follows: + Reading (opening) zip archive files: + If is not specified (== null): - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) in order to decode the entry name and comment. - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) in order to decode the entry name and comment. + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) to decode the entry name and comment. + For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) to decode the entry name and comment. - If entryNameEncoding is not specified (== null): + If is not specified (== null): - For entry names or comments that contain characters outside the ASCII range, the language encoding flag (EFS) will be set in the general purpose bit flag of the local file header, and UTF-8 (Encoding.UTF8) will be used in order to encode the entry name and comment into bytes. + For entry names or comments that contain characters outside the ASCII range, the language encoding flag (EFS) will be set in the general purpose bit flag of the local file header, and UTF-8 (Encoding.UTF8) will be used to encode the entry name and comment into bytes. For entry names or comments that do not contain characters outside the ASCII range, the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header, and the current system default code page (Encoding.Default) will be used to encode the entry names and comments into bytes. - If entryNameEncoding is specified (!= null): + If is specified (!= null): - The specified entryNameEncoding will always be used to encode the entry names and comments into bytes. - The language encoding flag (EFS) in the general purpose bit flag of the local file header will be set if and only if the specified entryNameEncoding is a UTF-8 encoding. + The specified will always be used to encode the entry names and comments into bytes. + The language encoding flag (EFS) in the general purpose bit flag of the local file header will be set if and only if the specified is a UTF-8 encoding. - Note that Unicode encodings other than UTF-8 may not be currently used for the entryNameEncoding, otherwise an is thrown. - - The cancellation token to monitor for cancellation requests. - Asynchronously opens a ZipArchive on the specified archiveFileName in the specified ZipArchiveMode mode. - To be added. - To be added. + Unicode encodings other than UTF-8 can't be used for the , otherwise an is thrown. + - archiveFileName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. - path is . + + is . - The specified archiveFileName exceeds the system-defined maximum length. - For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + exceeds the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. - The specified archiveFileName is invalid, (for example, it is on an unmapped drive). + + is invalid, (for example, it is on an unmapped drive). An unspecified I/O error occurred while opening the file. - archiveFileName specified a directory. + + specified a directory. -or- The caller does not have the required permission. - mode specified an invalid value. - The file specified in archiveFileName was not found. + specified an invalid value. + The file specified in was not found. - archiveFileName is in an invalid format. + is in an invalid format. - The specified file could not be interpreted as a Zip file. + The specified file could not be interpreted as a zip file. -or- - mode is Update and an entry is missing from the archive or is corrupt and cannot be read. + is and an entry is missing from the archive or is corrupt and cannot be read. -or- - mode is Update and an entry is too large to fit into memory. + is and an entry is too large to fit into memory. An asynchronous operation is cancelled.
    @@ -2691,17 +2716,15 @@ An unspecified I/O error occurred while opening the file. method and setting the `mode` parameter to . The archive is opened with as the file mode value. If the archive does not exist, a exception is thrown. - - +This method is equivalent to calling the method and setting the `mode` parameter to . The archive is opened with as the file mode value. If the archive does not exist, a exception is thrown. ## Examples - The following example shows how to open a zip archive for reading. - :::code language="csharp" source="~/snippets/csharp/System.IO.Compression/ZipArchive/Entries/program1.cs" id="Snippet1"::: - :::code language="fsharp" source="~/snippets/fsharp/System.IO.Compression/ZipArchive/Entries/program1.fs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/System.IO.Compression/ZipArchive/Entries/program1.vb" id="Snippet1"::: +The following example shows how to open a zip archive for reading. + +:::code language="csharp" source="~/snippets/csharp/System.IO.Compression/ZipArchive/Entries/program1.cs" id="Snippet1"::: +:::code language="fsharp" source="~/snippets/fsharp/System.IO.Compression/ZipArchive/Entries/program1.fs" id="Snippet1"::: +:::code language="vb" source="~/snippets/visualbasic/System.IO.Compression/ZipArchive/Entries/program1.vb" id="Snippet1"::: ]]> @@ -2761,7 +2784,7 @@ An unspecified I/O error occurred while opening the file. To be added. To be added. - archiveFileName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. archiveFileName is . @@ -2771,13 +2794,13 @@ An unspecified I/O error occurred while opening the file. The specified archiveFileName is invalid, (for example, it is on an unmapped drive). An unspecified I/O error occurred while opening the file. - archiveFileName specified a directory. + specified a directory. -or- The caller does not have the required permission. The file specified in archiveFileName was not found. archiveFileName is in an invalid format. - The specified file could not be interpreted as a Zip file. + The specified file could not be interpreted as a zip file. An asynchronous operation is cancelled.
    diff --git a/xml/System.IO.Compression/ZipFileExtensions.xml b/xml/System.IO.Compression/ZipFileExtensions.xml index d999c230dc7..8042ec4d966 100644 --- a/xml/System.IO.Compression/ZipFileExtensions.xml +++ b/xml/System.IO.Compression/ZipFileExtensions.xml @@ -283,35 +283,38 @@ The name of the entry to be created. The cancellation token to monitor for cancellation requests. - - Asynchronously adds a file from the file system to the archive under the specified entry name. + Asynchronously adds a file from the file system to the archive under the specified entry name. + + A wrapper for the newly created entry. + The new entry in the archive will contain the contents of the file. The last write time of the archive entry is set to the last write time of the file on the file system. If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name. If the specified source file has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used. If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default. - (Currently, the underlying compression algorithm is provided by the System.IO.Compression.DeflateStream class.) - - A wrapper for the newly created entry. - To be added. + (Currently, the underlying compression algorithm is provided by the class.) - sourceFileName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + + is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. -or- - entryName is a zero-length string. + + is a zero-length string. - sourceFileName or entryName is . + + or is . - In sourceFileName, the specified path, file name, or both exceed the system-defined maximum length. - For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + In , the specified path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. - The specified sourceFileName is invalid, (for example, it is on an unmapped drive). - An I/O error occurred while opening the file specified by sourceFileName. + The specified is invalid, (for example, it is on an unmapped drive). + An I/O error occurred while opening the file specified by . - sourceFileName specified a directory. + + specified a directory. -or- The caller does not have the required permission. - The file specified in sourceFileName was not found. - sourceFileName is in an invalid format or the ZipArchive does not support writing. + The file specified in was not found. + + is in an invalid format or the ZipArchive does not support writing. The ZipArchive has already been closed. An asynchronous operation is cancelled. @@ -348,34 +351,38 @@ The name of the entry to be created. The level of the compression (speed/memory vs. compressed size trade-off). The cancellation token to monitor for cancellation requests. - - Asynchronously adds a file from the file system to the archive under the specified entry name. + Asynchronously adds a file from the file system to the archive under the specified entry name. + + A wrapper for the newly created entry. + The new entry in the archive will contain the contents of the file. The last write time of the archive entry is set to the last write time of the file on the file system. If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name. If the specified source file has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used. If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name. - - A wrapper for the newly created entry. - To be added. + - sourceFileName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + + is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. -or- - entryName is a zero-length string. + + is a zero-length string. - sourceFileName or entryName is . + + or is . - In sourceFileName, the specified path, file name, or both exceed the system-defined maximum length. - For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + In , the specified path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. - The specified sourceFileName is invalid, (for example, it is on an unmapped drive). - An I/O error occurred while opening the file specified by sourceFileName. + The specified is invalid, (for example, it is on an unmapped drive). + An I/O error occurred while opening the file specified by . - sourceFileName specified a directory. + + specified a directory. -or- The caller does not have the required permission. - The file specified in sourceFileName was not found. - sourceFileName is in an invalid format or the ZipArchive does not support writing. + The file specified in was not found. + + is in an invalid format or the ZipArchive does not support writing. The ZipArchive has already been closed. An asynchronous operation is cancelled. @@ -567,40 +574,39 @@ A has been compressed usi The zip archive to extract files from. - - The path to the directory on the file system. - The directory specified must not exist. The path is permitted to specify relative or absolute path information. - Relative path information is interpreted as relative to the current working directory. - + The path to the directory on the file system. The cancellation token to monitor for cancellation requests. - Asynchronously extracts all of the files in the archive to a directory on the file system. The specified directory may already exist. - This method will create all subdirectories and the specified directory if necessary. - If there is an error while extracting the archive, the archive will remain partially extracted. - Each entry will be extracted such that the extracted file has the same relative path to destinationDirectoryName as the entry has to the root of the archive. If a file to be archived has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + Asynchronously extracts all of the files in the archive to a directory on the file system. The specified directory can already exist. To be added. - To be added. + + The directory specified must not exist. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. + This method creates all subdirectories and the specified directory if necessary. + If there is an error while extracting the archive, the archive remains partially extracted. + Each entry is extracted such that the extracted file has the same relative path to as the entry has to the root of the archive. If a file to be archived has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used. + - destinationDirectoryName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. - destinationDirectoryName is . + + is . - The specified path, file name, or both exceed the system-defined maximum length. - For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + The specified path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. The specified path is invalid, (for example, it is on an unmapped drive). - An archive entry?s name is zero-length, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + An archive entry's name is zero-length, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. -or- - Extracting an archive entry would have resulted in a destination file that is outside destinationDirectoryName (for example, if the entry name contains parent directory accessors). + Extracting an archive entry would have resulted in a destination file that is outside (for example, if the entry name contains parent directory accessors). -or- An archive entry has the same name as an already extracted entry from the same archive. The caller does not have the required permission. - destinationDirectoryName is in an invalid format. + + is in an invalid format. - An archive entry was not found or was corrupt. + An archive entry was not found or is corrupt. -or- An archive entry has been compressed using a compression method that is not supported. @@ -632,40 +638,36 @@ A has been compressed usi The zip archive to extract files from. - - The path to the directory on the file system. - The directory specified must not exist. The path is permitted to specify relative or absolute path information. - Relative path information is interpreted as relative to the current working directory. - + The path to the directory on the file system. - to indicate overwrite. + to overwrite files; otherwise. The cancellation token to monitor for cancellation requests. - - Extracts all of the files in the archive to a directory on the file system. The specified directory may already exist. - This method will create all subdirectories and the specified directory if necessary. - If there is an error while extracting the archive, the archive will remain partially extracted. - Each entry will be extracted such that the extracted file has the same relative path to destinationDirectoryName as the entry has to the root of the archive. If a file to be archived has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used. - + Extracts all of the files in the archive to a directory on the file system. The specified directory may already exist. To be added. - To be added. + + The directory specified must not exist. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. + - destinationDirectoryName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + This method will create all subdirectories and the specified directory if necessary. + If there is an error while extracting the archive, the archive will remain partially extracted. + Each entry is extracted such that the extracted file has the same relative path to as the entry has to the root of the archive. If a file to be archived has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used. - destinationDirectoryName is . + is . The specified path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. The specified path is invalid, (for example, it is on an unmapped drive). - An archive entry?s name is zero-length, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + An archive entry's name is zero-length, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. -or- - Extracting an archive entry would have resulted in a destination file that is outside destinationDirectoryName (for example, if the entry name contains parent directory accessors). + Extracting an archive entry would have resulted in a destination file that is outside (for example, if the entry name contains parent directory accessors). -or- An archive entry has the same name as an already extracted entry from the same archive. The caller does not have the required permission. - destinationDirectoryName is in an invalid format. + is in an invalid format. An archive entry was not found or was corrupt. -or- @@ -910,28 +912,29 @@ A has been compressed usi The zip archive entry to extract a file from. The name of the file that will hold the contents of the entry. - The path is permitted to specify relative or absolute path information. - Relative path information is interpreted as relative to the current working directory. The cancellation token to monitor for cancellation requests. - - Asynchronously creates a file on the file system with the entry's contents and the specified name. The last write time of the file is set to the entry's last write time. This method does not allow overwriting of an existing file with the same name. Attempting to extract explicit directories (entries with names that end in directory separator characters) will not result in the creation of a directory. + Asynchronously creates a file on the file system with the entry's contents and the specified name. To be added. - To be added. + + The specified path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. + The last write time of the file is set to the entry's last write time. This method does not allow overwriting of an existing file with the same name. Attempting to extract explicit directories (entries with names that end in directory separator characters) will not result in the creation of a directory. + The caller does not have the required permission. - destinationFileName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + + is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. -or- - destinationFileName specifies a directory. + specifies a directory. - destinationFileName is . + + is . - The specified path, file name, or both exceed the system-defined maximum length. - For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + The specified path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. - The path specified in destinationFileName is invalid (for example, it is on an unmapped drive). + The path specified in is invalid (for example, it is on an unmapped drive). An I/O error has occurred. @@ -941,11 +944,13 @@ A has been compressed usi The entry has been deleted from the archive. - destinationFileName is in an invalid format -or- + is in an invalid format. + -or- The ZipArchive that this entry belongs to was opened in a write-only mode. - The entry is missing from the archive or is corrupt and cannot be read -or- + The entry is missing from the archive or is corrupt and cannot be read. + -or- The entry has been compressed using a compression method that is not supported. The ZipArchive that this entry belongs to has been disposed. @@ -978,32 +983,30 @@ A has been compressed usi The zip archive entry to extract a file from. The name of the file that will hold the contents of the entry. - The path is permitted to specify relative or absolute path information. - Relative path information is interpreted as relative to the current working directory. - to indicate overwrite. + to overwrite files; otherwise. The cancellation token to monitor for cancellation requests. - - Asynchronously creates a file on the file system with the entry's contents and the specified name. - The last write time of the file is set to the entry's last write time. - This method does allows overwriting of an existing file with the same name. + Asynchronously creates a file on the file system with the entry's contents and the specified name. To be added. - To be added. + + The specified path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. + The last write time of the file is set to the entry's last write time. + This method does allows overwriting of an existing file with the same name. The caller does not have the required permission. - destinationFileName is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. + is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. -or- - destinationFileName specifies a directory. + specifies a directory. - destinationFileName is . + + is . - The specified path, file name, or both exceed the system-defined maximum length. - For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. + The specified path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. - The path specified in destinationFileName is invalid (for example, it is on an unmapped drive). + The path specified in is invalid (for example, it is on an unmapped drive). An I/O error has occurred. @@ -1013,11 +1016,13 @@ A has been compressed usi The entry has been deleted from the archive. - destinationFileName is in an invalid format -or- + is in an invalid format. + -or- The ZipArchive that this entry belongs to was opened in a write-only mode. - The entry is missing from the archive or is corrupt and cannot be read -or- + The entry is missing from the archive or is corrupt and cannot be read. + -or- The entry has been compressed using a compression method that is not supported. The ZipArchive that this entry belongs to has been disposed. From 1d461547ff95f553a79a21b6bc69c0c008be94e8 Mon Sep 17 00:00:00 2001 From: Genevieve Warren <24882762+gewarren@users.noreply.github.com> Date: Fri, 3 Oct 2025 09:30:16 -0700 Subject: [PATCH 35/39] random fixes --- .../CodeParameterDeclarationExpressionCollection.xml | 2 +- xml/System.Security.Cryptography/DSACng.xml | 3 ++- xml/System.Security.Cryptography/DSAOpenSsl.xml | 3 ++- xml/System.Security.Cryptography/MLKem.xml | 4 ++-- xml/index.xml | 2 +- 5 files changed, 8 insertions(+), 6 deletions(-) diff --git a/xml/System.CodeDom/CodeParameterDeclarationExpressionCollection.xml b/xml/System.CodeDom/CodeParameterDeclarationExpressionCollection.xml index 735c09200ad..9c38c69e60f 100644 --- a/xml/System.CodeDom/CodeParameterDeclarationExpressionCollection.xml +++ b/xml/System.CodeDom/CodeParameterDeclarationExpressionCollection.xml @@ -143,7 +143,7 @@ An array of objects with which to initialize the collection. Initializes a new instance of the class containing the specified array of objects. To be added. - one or more objects in the array are . + One or more objects in the array are . diff --git a/xml/System.Security.Cryptography/DSACng.xml b/xml/System.Security.Cryptography/DSACng.xml index 6fcf2eeec2e..daeb4769c5e 100644 --- a/xml/System.Security.Cryptography/DSACng.xml +++ b/xml/System.Security.Cryptography/DSACng.xml @@ -1020,7 +1020,8 @@ An error occurred during signature creation. if matches the signature computed using the specified hash; otherwise, . To be added. - The or parameters are . + + or is . diff --git a/xml/System.Security.Cryptography/DSAOpenSsl.xml b/xml/System.Security.Cryptography/DSAOpenSsl.xml index 6542083d1ba..de9de692dd0 100644 --- a/xml/System.Security.Cryptography/DSAOpenSsl.xml +++ b/xml/System.Security.Cryptography/DSAOpenSsl.xml @@ -720,7 +720,8 @@ Setting this property to a new legal value discards the current key, but defers if matches the signature computed using the specified hash; otherwise, . To be added. - The or parameters are . + + or is . diff --git a/xml/System.Security.Cryptography/MLKem.xml b/xml/System.Security.Cryptography/MLKem.xml index b26eeb38b76..05cfbd74fb4 100644 --- a/xml/System.Security.Cryptography/MLKem.xml +++ b/xml/System.Security.Cryptography/MLKem.xml @@ -165,7 +165,7 @@ is not the correct size. - -or- + -or- is not the correct size. @@ -335,7 +335,7 @@ is not the correct size. - -or- + -or- is not the correct size. diff --git a/xml/index.xml b/xml/index.xml index 65abcbd12e5..70cde5b5d1d 100644 --- a/xml/index.xml +++ b/xml/index.xml @@ -226155,7 +226155,7 @@ The type of elements of . - The type of the key returned by >. + The type of the key returned by . An that contains elements to sort. A function to extract a key from an element. An to compare keys. From 10ce63ce0f2e1579e07a0c9a183bdd16ebc7e717 Mon Sep 17 00:00:00 2001 From: Genevieve Warren <24882762+gewarren@users.noreply.github.com> Date: Fri, 3 Oct 2025 10:24:09 -0700 Subject: [PATCH 36/39] STJ and BinaryData edits --- xml/System.Text.Json/JsonReaderOptions.xml | 26 ++----- xml/System.Text.Json/JsonSerializer.xml | 12 ++-- .../JsonSerializerOptions.xml | 20 +++--- xml/System.Text.Json/JsonWriterOptions.xml | 24 +++---- xml/System.Text.Json/Utf8JsonWriter.xml | 68 +++++++++---------- xml/System/BinaryData.xml | 30 ++++---- 6 files changed, 80 insertions(+), 100 deletions(-) diff --git a/xml/System.Text.Json/JsonReaderOptions.xml b/xml/System.Text.Json/JsonReaderOptions.xml index c3bddd5ab3b..81bfbfd3577 100644 --- a/xml/System.Text.Json/JsonReaderOptions.xml +++ b/xml/System.Text.Json/JsonReaderOptions.xml @@ -56,11 +56,11 @@ For more information, see [How to write custom serializers and deserializers wit System.Boolean - - Defines whether the should tolerate zero or more top-level JSON values that are whitespace separated. - - To be added. - By default, it's set to , and is thrown if trailing content is encountered after the first top-level JSON value. + Gets or sets a value that indicates whether the should tolerate zero or more top-level JSON values that are whitespace separated. + + if the should tolerate zero or more top-level JSON values that are whitespace separated. The default is . + To be added. + Trailing content was encountered after the first top-level JSON value. @@ -92,14 +92,12 @@ For more information, see [How to write custom serializers and deserializers wit System.Boolean - Gets or sets a value that defines whether an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored) within the JSON payload being read. + Gets or sets a value that defines whether an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored) within the JSON payload being read. if an extra comma is allowed; otherwise, . is thrown if a trailing comma is encountered. ]]> @@ -140,8 +138,6 @@ By default, this property is set to `false`, and a if it encounters a comment. ]]> @@ -180,15 +176,7 @@ By default, the reader throws a if it enco Gets or sets the maximum depth allowed when reading JSON, with the default (that is, 0) indicating a maximum depth of 64. The maximum depth allowed when reading JSON. - - . - - ]]> - + Reading past this depth will throw a . The maximum depth is being set to a negative value. diff --git a/xml/System.Text.Json/JsonSerializer.xml b/xml/System.Text.Json/JsonSerializer.xml index 04b8c36ac55..22d62dc0571 100644 --- a/xml/System.Text.Json/JsonSerializer.xml +++ b/xml/System.Text.Json/JsonSerializer.xml @@ -2493,7 +2493,7 @@ The used to create the instance of the or is . - The JSON is invalid, or when there is remaining data in the PipeReader. + The JSON is invalid, or there is remaining data in the PipeReader. @@ -2535,7 +2535,7 @@ The used to create the instance of the or is . The JSON is invalid, - or when there is remaining data in the Stream. + or there is remaining data in the Stream. The cancellation token was canceled. This exception is stored into the returned task. @@ -2596,7 +2596,7 @@ The used to create the instance of the or is . - The JSON is invalid, the is not compatible with the JSON, or when there is remaining data in the PipeReader. + The JSON is invalid, the is not compatible with the JSON, or there is remaining data in the PipeReader. There is no compatible for or its serializable members. @@ -2643,7 +2643,7 @@ The used to create the instance of the , , or is . - The JSON is invalid, the is not compatible with the JSON, or when there is remaining data in the PipeReader. + The JSON is invalid, the is not compatible with the JSON, or there is remaining data in the PipeReader. There is no compatible for or its serializable members. @@ -2851,7 +2851,7 @@ There is remaining data in the stream. is . - The JSON is invalid, is not compatible with the JSON, or when there is remaining data in the PipeReader. + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the PipeReader. There is no compatible for or its serializable members. @@ -2907,7 +2907,7 @@ There is remaining data in the stream. or is . - The JSON is invalid, is not compatible with the JSON, or when there is remaining data in the PipeReader. + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the PipeReader. diff --git a/xml/System.Text.Json/JsonSerializerOptions.xml b/xml/System.Text.Json/JsonSerializerOptions.xml index 66a4df0b7d9..9480df242c9 100644 --- a/xml/System.Text.Json/JsonSerializerOptions.xml +++ b/xml/System.Text.Json/JsonSerializerOptions.xml @@ -192,13 +192,13 @@ similar to how System.Boolean - Defines whether duplicate property names are allowed when deserializing JSON objects. - To be added. + Gets or sets a value that indicates whether duplicate property names are allowed when deserializing JSON objects. + if duplicate property names are allowed when deserializing JSON objects. The default is . - By default, it's set to . If set to , is thrown when a duplicate property name is encountered during deserialization. + If set to , is thrown when a duplicate property name is encountered during deserialization. Duplicate property names are not allowed in serialization. - Thrown if this property is set after serialization or deserialization has occurred. + This property is set after serialization or deserialization has occurred. @@ -218,9 +218,9 @@ similar to how System.Boolean - Allows JSON metadata properties to be specified after regular properties in a deserialized JSON object. - To be added. - When set to , removes the requirement that JSON metadata properties, such as \\$id and \\$type, be specified at the very start of the deserialized JSON object. If you enable this setting, it can result in over-buffering when deserializing large JSON payloads in the context of streaming deserialization. + Gets or sets a value that indicates whether JSON metadata properties can be specified after regular properties in a deserialized JSON object. + if JSON metadata properties, such as \\$id and \\$type, aren't required to be specified at the very start of the deserialized JSON object; if JSON metadata properties must be specified before regular properties. + If you enable this setting, it can result in over-buffering when deserializing large JSON payloads in the context of streaming deserialization. This property is set after serialization or deserialization has occurred. @@ -797,7 +797,7 @@ For more information, see [How to ignore properties with System.Text.Json](/dotn Allowed characters are space and horizontal tab. contains an invalid character. - Thrown if this property is set after serialization or deserialization has occurred. + This property is set after serialization or deserialization has occurred. @@ -822,7 +822,7 @@ For more information, see [How to ignore properties with System.Text.Json](/dotn Allowed values are all integers between 0 and 127, included. is out of the allowed range. - Thrown if this property is set after serialization or deserialization has occurred. + This property is set after serialization or deserialization has occurred. @@ -980,7 +980,7 @@ Going past this depth throws a . To be added. Thrown when the new line string is . Thrown when the new line string is not \n or \r\n. - Thrown if this property is set after serialization or deserialization has occurred. + This property is set after serialization or deserialization has occurred. diff --git a/xml/System.Text.Json/JsonWriterOptions.xml b/xml/System.Text.Json/JsonWriterOptions.xml index 8746bb43b3d..220e5e5f77c 100644 --- a/xml/System.Text.Json/JsonWriterOptions.xml +++ b/xml/System.Text.Json/JsonWriterOptions.xml @@ -33,7 +33,7 @@ ## Remarks -By default, the JSON is written without any indentation or extra white space. +By default, the JSON is written without any indentation or extra white space. Also, throws an exception if the user attempts to write structurally invalid JSON. For more information, see [How to write custom serializers and deserializers with System.Text.Json](/dotnet/standard/serialization/write-custom-serializer-deserializer#use-utf8jsonwriter). @@ -195,18 +195,10 @@ For more information, see [How to write custom serializers and deserializers wit System.Int32 - Gets or sets the maximum depth allowed when writing JSON, with the default (that is, 0) indicating a max depth of 1000. + Gets or sets the maximum depth allowed when writing JSON, with the default (that is, 0) indicating a maximum depth of 1000. To be added. - - . - - ]]> - - Thrown when the max depth is set to a negative value. + Writing past this depth will throw a . + The max depth is set to a negative value. @@ -232,8 +224,8 @@ Reading past this depth will throw a Thrown when the new line string is . - Thrown when the new line string is not \n or \r\n. + The new line string is . + The new line string is not \n or \r\n. @@ -264,12 +256,12 @@ Reading past this depth will throw a if structural validation is skipped and invalid JSON is allowed; if an is thrown on any attempt to write invalid JSON. - diff --git a/xml/System.Text.Json/Utf8JsonWriter.xml b/xml/System.Text.Json/Utf8JsonWriter.xml index eb76713271e..20bc8c0c02f 100644 --- a/xml/System.Text.Json/Utf8JsonWriter.xml +++ b/xml/System.Text.Json/Utf8JsonWriter.xml @@ -295,7 +295,7 @@ The instance cannot be reused after dispo ## Remarks In the case of IBufferWriter, this advances the underlying based on what has been written so far. - + In the case of Stream, this writes the data to the stream and flushes it. The instance cannot be reused after disposing. @@ -753,9 +753,9 @@ The bytes are encoded before writing. Indicates that this is the final segment of the string. Writes the input bytes as a partial JSON string. To be added. - Thrown when the specified value is too large. + The specified value is too large. - Thrown when validation is enabled if this would result in invalid JSON being written or if the previously written segment (if any) was not written with this same overload. + When validation is enabled, this would result in invalid JSON being written, or if the previously written segment (if any) was not written with this same overload. @@ -1044,7 +1044,7 @@ The comment value is not escaped before writing. ]]> The specified value is too large. - + -or- contains a comment delimiter (that is, */). @@ -1088,7 +1088,7 @@ The comment value is not escaped before writing. ]]> The specified value is too large. - + -or- contains a comment delimiter (that is, */). @@ -1132,7 +1132,7 @@ The comment value is not escaped before writing. ]]> The specified value is too large. - + -or- contains a comment delimiter (that is, */). @@ -1421,7 +1421,7 @@ The property name should already be escaped when the instance of The value to be written as a JSON number as part of the name/value pair. Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. - to validate if the input is an RFC 8259-compliant JSON payload; to skip validation. Writes the input as JSON content. It is expected that the input content is a single complete JSON value. When writing untrusted JSON values, don't set to as this can result in invalid JSON being written or an invalid overall payload being written to the writer instance. - + When using this method, the input content will be written to the writer destination as-is, unless validation fails (when it is enabled). - + The value for the writer instance is honored when using this method. - + The and values for the writer instance are not applied when using this method. The length of the input is zero or equal to Int32.MaxValue. @@ -3227,11 +3227,11 @@ The property name should already be escaped when the instance of value for the writer instance is honored when using this method. - + The and values for the writer instance are not applied when using this method. ]]> @@ -3281,11 +3281,11 @@ The and value for the writer instance is honored when using this method. - + The and values for the writer instance are not applied when using this method. ]]> @@ -3335,11 +3335,11 @@ The and value for the writer instance is honored when using this method. - + The and values for the writer instance are not applied when using this method. ]]> @@ -3425,7 +3425,7 @@ The property name is escaped before writing. The depth of the JSON exceeds the maximum depth of 1,000. -or- - + Validation is enabled, and this write operation would produce invalid JSON. @@ -3470,7 +3470,7 @@ The property name is escaped before writing. The depth of the JSON exceeds the maximum depth of 1,000. -or- - + Validation is enabled, and this write operation would produce invalid JSON. @@ -3515,7 +3515,7 @@ The property name is escaped before writing. The depth of the JSON exceeds the maximum depth of 1,000. -or- - + Validation is enabled, and this write operation would produce invalid JSON. The parameter is . @@ -3558,7 +3558,7 @@ The property name should already be escaped when the instance of The depth of the JSON has exceeded the maximum depth of 1,000. - + -or- Validation is enabled, and this method would result in writing invalid JSON. @@ -3635,10 +3635,10 @@ The property name is escaped before writing. ]]> The specified property name is too large. - The depth of the JSON exceeds the maximum depth of 1,000. + The depth of the JSON exceeds the maximum depth of 1,000. -or- - + Validation is enabled, and this write operation would produce invalid JSON. @@ -3680,10 +3680,10 @@ The property name is escaped before writing. ]]> The specified property name is too large. - The depth of the JSON exceeds the maximum depth of 1,000. + The depth of the JSON exceeds the maximum depth of 1,000. -or- - + Validation is enabled, and this write operation would produce invalid JSON. @@ -3725,10 +3725,10 @@ The property name is escaped before writing. ]]> The specified property name is too large. - The depth of the JSON exceeds the maximum depth of 1,000. + The depth of the JSON exceeds the maximum depth of 1,000. -or- - + Validation is enabled, and this write operation would produce invalid JSON. The parameter is . @@ -3771,7 +3771,7 @@ The property name should already be escaped when the instance of The depth of the JSON has exceeded the maximum depth of 1,000. - + -or- Validation is enabled, and this method would result in writing invalid JSON. @@ -5382,9 +5382,9 @@ The value should already be escaped when the instance of Indicates that this is the final segment of the string. Writes the UTF-8 text value segment as a partial JSON string. The value is escaped before writing. - Thrown when the specified value is too large. + The specified value is too large. - Thrown when validation is enabled if this would result in invalid JSON being written or if the previously written segment (if any) was not written with this same overload. + When validation is enabled, this would result in invalid JSON being written, or if the previously written segment (if any) was not written with this same overload. @@ -5412,9 +5412,9 @@ The value should already be escaped when the instance of Indicates that this is the final segment of the string. Writes the text value segment as a partial JSON string. The value is escaped before writing. - Thrown when the specified value is too large. + The specified value is too large. - Thrown when validation is enabled if this would result in invalid JSON being written or if the previously written segment (if any) was not written with this same overload. + When validation is enabled, this would result in invalid JSON being written, or if the previously written segment (if any) was not written with this same overload. diff --git a/xml/System/BinaryData.xml b/xml/System/BinaryData.xml index 61d35c82d68..4d30db84aec 100644 --- a/xml/System/BinaryData.xml +++ b/xml/System/BinaryData.xml @@ -124,7 +124,7 @@ The array to wrap. - MIME type of this data, e.g. . + The MIME type of this data, for example, . Creates a instance by wrapping the provided byte array and sets to value. @@ -157,7 +157,7 @@ Byte data to wrap. - MIME type of this data, e.g. . + The MIME type of this data, for example, . Creates a instance by wrapping the provided bytes and sets to value. @@ -190,7 +190,7 @@ The string data. - MIME type of this data, e.g. . + The MIME type of this data, for example, . Creates a instance from a string by converting the string to bytes using the UTF-8 encoding and sets to value. @@ -409,7 +409,7 @@ The array to wrap. - MIME type of this data, e.g. . + The MIME type of this data, for example, . Creates a instance by wrapping the provided byte array and sets to value. @@ -452,7 +452,7 @@ Byte data to wrap. - MIME type of this data, e.g. . + The MIME type of this data, for example, . Creates a instance by wrapping the provided and sets to value. @@ -514,7 +514,7 @@ The path to the file. - MIME type of this data, e.g. . + The MIME type of this data, for example, . Creates a instance from the specified file and sets to value. @@ -543,7 +543,7 @@ The path to the file. - A token that may be used to cancel the operation. + A token that can be used to cancel the operation. Creates a instance from the specified file. A value representing all of the data from the file. To be added. @@ -577,8 +577,8 @@ The path to the file. - MIME type of this data, e.g. . - A token that may be used to cancel the operation. + The MIME type of this data, for example, . + A token that can be used to cancel the operation. Creates a instance from the specified file and sets to value. @@ -734,7 +734,7 @@ Stream containing the data. - MIME type of this data, e.g. . + The MIME type of this data, for example, . Creates a instance from the specified stream and sets to value. The stream is not disposed by this method. @@ -764,7 +764,7 @@ The stream containing the data. - A token that may be used to cancel the operation. + A token that can be used to cancel the operation. Creates a instance from the specified stream. The stream is not disposed by this method. A value representing all of the data remaining in . This method stores in the task it returns all non-usage exceptions that the method's synchronous counterpart can throw. If an exception is stored into the returned task, that exception will be thrown when the task is awaited. Usage exceptions, such as , are still thrown synchronously. For the stored exceptions, see the exceptions thrown by . @@ -799,8 +799,8 @@ Stream containing the data. - MIME type of this data, e.g. . - A token that may be used to cancel the operation. + The MIME type of this data, for example, . + A token that can be used to cancel the operation. Creates a instance from the specified stream and sets to value. The stream is not disposed by this method. @@ -864,7 +864,7 @@ The string data. - MIME type of this data, e.g. . + The MIME type of this data, for example, . Creates a instance from a string by converting the string to bytes using the UTF-8 encoding and sets to value. @@ -967,7 +967,7 @@ System.String - Gets the MIME type of this data, e.g. . + Gets the The MIME type of this data, for example, . To be added. To be added. From b6c8c977deeebe975fa9778fb081b529c22bfef6 Mon Sep 17 00:00:00 2001 From: Genevieve Warren <24882762+gewarren@users.noreply.github.com> Date: Fri, 3 Oct 2025 10:59:03 -0700 Subject: [PATCH 37/39] fix xml --- xml/System.IO.Compression/ZipFile.xml | 10 +++++----- xml/System.IO.Compression/ZipFileExtensions.xml | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/xml/System.IO.Compression/ZipFile.xml b/xml/System.IO.Compression/ZipFile.xml index b0837b7e659..eddf552dbbf 100644 --- a/xml/System.IO.Compression/ZipFile.xml +++ b/xml/System.IO.Compression/ZipFile.xml @@ -764,7 +764,7 @@ An I/O error occurred while opening a file to be archived. One of the enumeration values that specifies the level of the compression (speed/memory vs. compressed size trade-off). to indicate that a directory named should be included at the root of the archive. to indicate that the files and directories in should be included directly in the archive. + "false" /> to indicate that the files and directories in should be included directly in the archive. The cancellation token to monitor for cancellation requests. @@ -934,7 +934,7 @@ An I/O error occurred while opening a file to be archived. If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default. (Currently, the underlying compression algorithm is provided by the class.) Specifying a value for other than is discouraged. - However, this may be necessary for interoperability with zip archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments. + However, this may be necessary for interoperability with zip archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments. This value is used as follows while creating the archive: If is not specified (== null): @@ -949,7 +949,7 @@ An I/O error occurred while opening a file to be archived.
    The language encoding flag (EFS) in the general purpose bit flag of the local file header for each entry will be set if and only if the specified is a UTF-8 encoding.
    Unicode encodings other than UTF-8 can't be used for the , otherwise an is thrown. - + or is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. @@ -1980,7 +1980,7 @@ An archive entry has been compressed using a compression method that isn't suppo If there is an error while extracting the archive, the archive will remain partially extracted. Each entry will be extracted such that the extracted file has the same relative path to the destinationDirectoryName as the entry has to the archive. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file to be archived has an invalid last modified time, the first datetime representable in the zip timestamp format (midnight on January 1, 1980) will be used. - or is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars.
    + or is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. or is . @@ -2525,7 +2525,7 @@ An unspecified I/O error occurred while opening the file. Asynchronously opens a ZipArchive on the specified in the specified ZipArchiveMode mode. To be added. - For : + For : The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. For : If is specified, the file is opened with System.IO.FileMode.Open, and will throw a FileNotFoundException if the file does not exist. diff --git a/xml/System.IO.Compression/ZipFileExtensions.xml b/xml/System.IO.Compression/ZipFileExtensions.xml index 8042ec4d966..034072890b3 100644 --- a/xml/System.IO.Compression/ZipFileExtensions.xml +++ b/xml/System.IO.Compression/ZipFileExtensions.xml @@ -919,7 +919,7 @@ A has been compressed usi To be added. The specified path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. - The last write time of the file is set to the entry's last write time. This method does not allow overwriting of an existing file with the same name. Attempting to extract explicit directories (entries with names that end in directory separator characters) will not result in the creation of a directory. + The last write time of the file is set to the entry's last write time. This method does not allow overwriting of an existing file with the same name. Attempting to extract explicit directories (entries with names that end in directory separator characters) will not result in the creation of a directory. The caller does not have the required permission. From 9b5f1a660b2dc0cbb3d0f179ce06c461593d5214 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Mon, 6 Oct 2025 10:03:34 -0700 Subject: [PATCH 38/39] Address feedback --- xml/System.Formats.Tar/PaxTarEntry.xml | 2 +- xml/System.IO.Compression/ZipArchive.xml | 60 ++++---- xml/System.IO.Compression/ZipFile.xml | 132 +++++++++++------- xml/System.IO.Hashing/Crc32.xml | 2 +- xml/System.IO.Hashing/Crc64.xml | 2 +- xml/System.Net.Quic/QuicConnection.xml | 2 +- xml/System.Net/IPAddress.xml | 2 +- xml/System.Reflection.Metadata/TypeName.xml | 9 +- .../TypeNameParseOptions.xml | 6 +- .../CollectionsMarshal.xml | 3 +- .../CompositeMLDsa.xml | 4 +- .../ProtectedData.xml | 12 +- xml/System.Security.Cryptography/SlhDsa.xml | 4 +- .../SymmetricAlgorithm.xml | 2 +- xml/System.Text.Json/JsonElement.xml | 2 +- .../RegexRunner.xml | 33 +---- 16 files changed, 150 insertions(+), 127 deletions(-) diff --git a/xml/System.Formats.Tar/PaxTarEntry.xml b/xml/System.Formats.Tar/PaxTarEntry.xml index 01abda7e592..420550d529d 100644 --- a/xml/System.Formats.Tar/PaxTarEntry.xml +++ b/xml/System.Formats.Tar/PaxTarEntry.xml @@ -48,7 +48,7 @@ The instance to convert to the PAX format. Initializes a new instance by converting the specified entry into the PAX format. - When converting a to using this constructor, the and values will get transfered to the dictionary only if their values are not (which is ). + When converting a to using this constructor, the and values are transferred to the dictionary only if their values are not (which is ). is a instance. diff --git a/xml/System.IO.Compression/ZipArchive.xml b/xml/System.IO.Compression/ZipArchive.xml index 52cd4b5b6c0..be87eebc5e0 100644 --- a/xml/System.IO.Compression/ZipArchive.xml +++ b/xml/System.IO.Compression/ZipArchive.xml @@ -395,30 +395,42 @@ If the comment byte length is larger than , it will Asynchronously initializes and returns a new instance of on the given stream in the specified mode, specifying whether to leave the stream open, with an optional encoding and an optional cancellation token. To be added. - Specifying a value for other than is discouraged. However, this might be necessary for interoperability with ZIP archive tools and libraries that don't correctly support UTF-8 encoding for entry names. - This value is used as follows: - Reading (opening) ZIP archive files: - If is not specified (== null): - - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) to decode the entry name and comment. - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) to decode the entry name and comment. - - If is specified (!= null): - - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified to decode the entry name and comment. - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) to decode the entry name and comment. - - Writing (saving) ZIP archive files: - If is not specified (== null): - - For entry names and comments that contain characters outside the ASCII range, the language encoding flag (EFS) will be set in the general purpose bit flag of the local file header, and UTF-8 (Encoding.UTF8) will be used to encode the entry name and comment into bytes. - For entry names and comments that don't contain characters outside the ASCII range, the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header, and the current system default code page (Encoding.Default) will be used to encode the entry names and comments into bytes. - - If is specified (!= null): - - The specified will always be used to encode the entry names and comments into bytes. - - The language encoding flag (EFS) in the general purpose bit flag of the local file header will be set if and only if the specified is a UTF-8 encoding. + Specifying a value for other than is discouraged. However, this might be necessary for interoperability with ZIP archive tools and libraries that don't correctly support UTF-8 encoding for entry names. + This value is used as follows: +
    +
  • Reading (opening) ZIP archive files: +
      +
    • If is not specified (== null): +
        +
      • For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) to decode the entry name and comment.
      • +
      • For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) to decode the entry name and comment.
      • +
      +
    • +
    • If is specified (!= null): +
        +
      • For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified to decode the entry name and comment.
      • +
      • For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) to decode the entry name and comment.
      • +
      +
    • +
    +
  • +
  • Writing (saving) ZIP archive files: +
      +
    • If is not specified (== null): +
        +
      • For entry names and comments that contain characters outside the ASCII range, the language encoding flag (EFS) will be set in the general purpose bit flag of the local file header, and UTF-8 (Encoding.UTF8) will be used to encode the entry name and comment into bytes.
      • +
      • For entry names and comments that don't contain characters outside the ASCII range, the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header, and the current system default code page (Encoding.Default) will be used to encode the entry names and comments into bytes.
      • +
      +
    • +
    • If is specified (!= null): +
        +
      • The specified will always be used to encode the entry names and comments into bytes.
      • +
      • The language encoding flag (EFS) in the general purpose bit flag of the local file header will be set if and only if the specified is a UTF-8 encoding.
      • +
      +
    • +
    +
  • +
    The stream is already closed. diff --git a/xml/System.IO.Compression/ZipFile.xml b/xml/System.IO.Compression/ZipFile.xml index eddf552dbbf..70a76d42760 100644 --- a/xml/System.IO.Compression/ZipFile.xml +++ b/xml/System.IO.Compression/ZipFile.xml @@ -935,19 +935,23 @@ An I/O error occurred while opening a file to be archived. (Currently, the underlying compression algorithm is provided by the class.) Specifying a value for other than is discouraged. However, this may be necessary for interoperability with zip archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments. - This value is used as follows while creating the archive: - If is not specified (== null): - - For file names or comments that contain characters outside the ASCII range: -
    The language encoding flag (EFS) will be set in the general purpose bit flag of the local file header of the corresponding entry, and UTF-8 (Encoding.UTF8) will be used to encode the entry name and comment into bytes.
    - For file names or comments that do not contain characters outside the ASCII range: -
    The language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header of the corresponding entry, and the current system default code page (Encoding.Default) will be used to encode the entry names and comments into bytes.
    -
    - If is specified (!= null): - - The specified will always be used to encode the entry names and comments into bytes. -
    The language encoding flag (EFS) in the general purpose bit flag of the local file header for each entry will be set if and only if the specified is a UTF-8 encoding.
    -
    + +
      +
    • If is not specified (== null): +
        +
      • For file names or comments that contain characters outside the ASCII range: +
        The language encoding flag (EFS) will be set in the general purpose bit flag of the local file header of the corresponding entry, and UTF-8 (Encoding.UTF8) will be used to encode the entry name and comment into bytes.
      • +
      • For file names or comments that do not contain characters outside the ASCII range: +
        The language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header of the corresponding entry, and the current system default code page (Encoding.Default) will be used to encode the entry names and comments into bytes.
      • +
      +
    • +
    • If is specified (!= null): +
        +
      • The specified will always be used to encode the entry names and comments into bytes. +
        The language encoding flag (EFS) in the general purpose bit flag of the local file header for each entry will be set if and only if the specified is a UTF-8 encoding.
      • +
      +
    • +
    Unicode encodings other than UTF-8 can't be used for the , otherwise an is thrown. @@ -2058,16 +2062,20 @@ An archive entry has been compressed using a compression method that isn't suppo If there is an error while extracting the archive, the archive will remain partially extracted. Each entry will be extracted such that the extracted file has the same relative path to the destinationDirectoryName as the entry has to the archive. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file to be archived has an invalid last modified time, the first datetime representable in the zip timestamp format (midnight on January 1, 1980) will be used. Specifying a value other than for is discouraged. However, this might be necessary for interoperability with zip archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments. This value is used as follows: - If is not specified (== null): - - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) to decode the entry name and comment. - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) to decode the entry name and comment. - - If is specified (!= null): - - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified to decode the entry name and comment. - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) to decode the entry name and comment. - +
      +
    • If is not specified (== null): +
        +
      • For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) to decode the entry name and comment.
      • +
      • For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) to decode the entry name and comment.
      • +
      +
    • +
    • If is specified (!= null): +
        +
      • For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified to decode the entry name and comment.
      • +
      • For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) to decode the entry name and comment.
      • +
      +
    • +
    Unicode encodings other than UTF-8 can't be used for the , otherwise an is thrown. @@ -2230,16 +2238,20 @@ An archive entry has been compressed using a compression method that isn't suppo Specifying a value other than for is discouraged. However, this might be necessary for interoperability with zip archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments. This value is used as follows: - If is not specified (== null): - - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) to decode the entry name and comment. - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) to decode the entry name and comment. - - If is specified (!= null): - - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified to decode the entry name and comment. - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) to decode the entry name and comment. - +
      +
    • If is not specified (== null): +
        +
      • For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) to decode the entry name and comment.
      • +
      • For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) to decode the entry name and comment.
      • +
      +
    • +
    • If is specified (!= null): +
        +
      • For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified to decode the entry name and comment.
      • +
      • For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) to decode the entry name and comment.
      • +
      +
    • +
    Unicode encodings other than UTF-8 can't be used for the , otherwise an is thrown.
    or is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars. @@ -2532,7 +2544,7 @@ An unspecified I/O error occurred while opening the file. If is specified, the file is opened with System.IO.FileMode.CreateNew, and will throw a System.IO.IOException if the file already exists. If is specified, the file is opened with System.IO.FileMode.OpenOrCreate. If the file exists and is a zip file, its entries will become accessible and can be modified, and new entries can be created. - If the file exists and is not a zip file, a is thrown. + If the file exists and is not a zip file, a is thrown. If the file exists and is empty or does not exist, a new zip file will be created. Creating a zip file with the mode is more efficient when creating a new zip file. @@ -2614,27 +2626,45 @@ An unspecified I/O error occurred while opening the file.
    If is specified, the file is opened with System.IO.FileMode.CreateNew, and will throw a System.IO.IOException if the file already exists. If is specified, the file is opened with System.IO.FileMode.OpenOrCreate. If the file exists and is a zip file, its entries will become accessible and can be modified, and new entries can be created. - If the file exists and is not a zip file, a is thrown. + If the file exists and is not a zip file, a is thrown. If the file exists and is empty or does not exist, a new zip file will be created. Creating a zip file with the mode is more efficient when creating a new zip file. Specifying a value other than for is discouraged. However, this might be necessary for interoperability with zip archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments. This value is used as follows: - Reading (opening) zip archive files: - If is not specified (== null): - - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) to decode the entry name and comment. - For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) to decode the entry name and comment. - - If is not specified (== null): - - For entry names or comments that contain characters outside the ASCII range, the language encoding flag (EFS) will be set in the general purpose bit flag of the local file header, and UTF-8 (Encoding.UTF8) will be used to encode the entry name and comment into bytes. - For entry names or comments that do not contain characters outside the ASCII range, the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header, and the current system default code page (Encoding.Default) will be used to encode the entry names and comments into bytes. - - If is specified (!= null): - - The specified will always be used to encode the entry names and comments into bytes. - The language encoding flag (EFS) in the general purpose bit flag of the local file header will be set if and only if the specified is a UTF-8 encoding. - +
    +
  • Reading (opening) ZIP archive files: +
      +
    • If is not specified (== null): +
        +
      • For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the current system default code page (Encoding.Default) to decode the entry name and comment.
      • +
      • For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) to decode the entry name and comment.
      • +
      +
    • +
    • If is specified (!= null): +
        +
      • For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is not set, use the specified to decode the entry name and comment.
      • +
      • For entries where the language encoding flag (EFS) in the general purpose bit flag of the local file header is set, use UTF-8 (Encoding.UTF8) to decode the entry name and comment.
      • +
      +
    • +
    +
  • +
  • Writing (saving) ZIP archive files: +
      +
    • If is not specified (== null): +
        +
      • For entry names and comments that contain characters outside the ASCII range, the language encoding flag (EFS) will be set in the general purpose bit flag of the local file header, and UTF-8 (Encoding.UTF8) will be used to encode the entry name and comment into bytes.
      • +
      • For entry names and comments that don't contain characters outside the ASCII range, the language encoding flag (EFS) will not be set in the general purpose bit flag of the local file header, and the current system default code page (Encoding.Default) will be used to encode the entry names and comments into bytes.
      • +
      +
    • +
    • If is specified (!= null): +
        +
      • The specified will always be used to encode the entry names and comments into bytes.
      • +
      • The language encoding flag (EFS) in the general purpose bit flag of the local file header will be set if and only if the specified is a UTF-8 encoding.
      • +
      +
    • +
    +
  • +
    Unicode encodings other than UTF-8 can't be used for the , otherwise an is thrown. diff --git a/xml/System.IO.Hashing/Crc32.xml b/xml/System.IO.Hashing/Crc32.xml index 3a8dddb2bfa..ab4c25fcf1d 100644 --- a/xml/System.IO.Hashing/Crc32.xml +++ b/xml/System.IO.Hashing/Crc32.xml @@ -100,7 +100,7 @@ There are multiple, incompatible, definitions of a 32-bit cyclic redundancy - Returns a clone of the current instance, with a copy of the current instance's internal state. + Creates a clone of the current instance with a copy of the current instance's internal state. A new instance that will produce the same sequence of values as the current instance. To be added. diff --git a/xml/System.IO.Hashing/Crc64.xml b/xml/System.IO.Hashing/Crc64.xml index 694a3373b70..1d3cd8c0cb1 100644 --- a/xml/System.IO.Hashing/Crc64.xml +++ b/xml/System.IO.Hashing/Crc64.xml @@ -100,7 +100,7 @@ There are multiple, incompatible, definitions of a 64-bit cyclic redundancy - Returns a clone of the current instance, with a copy of the current instance's internal state. + Creates a clone of the current instance with a copy of the current instance's internal state. A new instance that will produce the same sequence of values as the current instance. To be added. diff --git a/xml/System.Net.Quic/QuicConnection.xml b/xml/System.Net.Quic/QuicConnection.xml index f489275ea64..6f911c9c36a 100644 --- a/xml/System.Net.Quic/QuicConnection.xml +++ b/xml/System.Net.Quic/QuicConnection.xml @@ -293,7 +293,7 @@ If System.Net.Security.TlsCipherSuite - Gets the cipher suite which was negotiated for this connection. + Gets the cipher suite that was negotiated for this connection. To be added. To be added. diff --git a/xml/System.Net/IPAddress.xml b/xml/System.Net/IPAddress.xml index 2a267eae687..47eb9991eff 100644 --- a/xml/System.Net/IPAddress.xml +++ b/xml/System.Net/IPAddress.xml @@ -2955,7 +2955,7 @@ The scope identifier is > 0x00000000FFFFFFFF The span of UTF-8 characters to parse. - On return, contains the result of successfully parsing or an undefined value on failure. + When this method returns, contains the result of successfully parsing or an undefined value on failure. Tries to parse a span of UTF-8 characters into a value. if was successfully parsed; otherwise, . diff --git a/xml/System.Reflection.Metadata/TypeName.xml b/xml/System.Reflection.Metadata/TypeName.xml index 489cf8243c0..569bb060ff9 100644 --- a/xml/System.Reflection.Metadata/TypeName.xml +++ b/xml/System.Reflection.Metadata/TypeName.xml @@ -489,7 +489,8 @@ A object representing an array of the current type, with the specified number of dimensions. To be added. - rank is invalid. For example, 0 or negative. + + is invalid, for example, 0 or negative. @@ -786,9 +787,9 @@ - Assembly name. - Creates a new object that represents current simple name with provided assembly name. - Created simple name. + The assembly name. + Creates a new object that represents the current simple name with the provided assembly name. + The created simple name. To be added. The current type name is not simple. diff --git a/xml/System.Reflection.Metadata/TypeNameParseOptions.xml b/xml/System.Reflection.Metadata/TypeNameParseOptions.xml index 6c1ef5c1e69..84d2820c8c5 100644 --- a/xml/System.Reflection.Metadata/TypeNameParseOptions.xml +++ b/xml/System.Reflection.Metadata/TypeNameParseOptions.xml @@ -54,9 +54,9 @@ System.Int32 - Limits the maximum number of nodes that the parser can handle. - To be added. - Setting this to a large value can render susceptible to Denial of Service attacks when parsing or handling malicious input.The default value is 20. + Gets or sets the maximum number of nodes that the parser can handle. + The maximum number of nodes that the parser can handle. The default is 20. + Setting this property to a large value can render susceptible to Denial of Service attacks when parsing or handling malicious input. diff --git a/xml/System.Runtime.InteropServices/CollectionsMarshal.xml b/xml/System.Runtime.InteropServices/CollectionsMarshal.xml index b987f609d55..f69d16501fd 100644 --- a/xml/System.Runtime.InteropServices/CollectionsMarshal.xml +++ b/xml/System.Runtime.InteropServices/CollectionsMarshal.xml @@ -60,8 +60,7 @@ To be added. The may have more capacity than is required to store the number of bits represented by . - The returned span's will be the smallest number of bytes capable of representing that length. If the 's length is not evenly divisible by 8, the last byte of the span may contain extraneous bits that do not represent elements in the . - These may be ignored. + The returned span's will be the smallest number of bytes capable of representing that length. If the 's length is not evenly divisible by 8, the last byte of the span may contain extraneous bits that do not represent elements in the . These can be ignored. The length of the should not be changed while the resulting is in use. After such a change, the span may no longer refer to the 's backing storage.
    diff --git a/xml/System.Security.Cryptography/CompositeMLDsa.xml b/xml/System.Security.Cryptography/CompositeMLDsa.xml index 16fe41a09ba..d810eed5f76 100644 --- a/xml/System.Security.Cryptography/CompositeMLDsa.xml +++ b/xml/System.Security.Cryptography/CompositeMLDsa.xml @@ -1130,7 +1130,7 @@ To be added. Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is thrown to prevent importing a key when the key is ambiguous. - This method supports the <c>ENCRYPTED PRIVATE KEY</c> PEM label. + This method supports the ENCRYPTED PRIVATE KEY PEM label. @@ -1194,7 +1194,7 @@ When the base-64 decoded contents of indicate an algorithm that uses PBKDF1 (Password-Based Key Derivation Function 1) or PBKDF2 (Password-Based Key Derivation Function 2), the password is converted to bytes via the UTF-8 encoding. Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is thrown to prevent importing a key when the key is ambiguous. - This method supports the <c>ENCRYPTED PRIVATE KEY</c> PEM label. + This method supports the ENCRYPTED PRIVATE KEY PEM label. diff --git a/xml/System.Security.Cryptography/ProtectedData.xml b/xml/System.Security.Cryptography/ProtectedData.xml index e93ae382a3a..7757e1d3d95 100644 --- a/xml/System.Security.Cryptography/ProtectedData.xml +++ b/xml/System.Security.Cryptography/ProtectedData.xml @@ -187,7 +187,7 @@ If you use these methods during impersonation, you may receive the following err The encryption failed. The operating system does not support this method. The system ran out of memory while encrypting the data. - Calls to the Protect method are supported on Windows operating systems only. + The operating system is not Windows. @@ -227,7 +227,7 @@ If you use these methods during impersonation, you may receive the following err The encryption failed. The operating system does not support this method. The system ran out of memory while encrypting the data. - Calls to the Protect method are supported on Windows operating systems only. + The operating system is not Windows. @@ -274,7 +274,7 @@ If you use these methods during impersonation, you may receive the following err The encryption failed. The operating system does not support this method. The system ran out of memory while encrypting the data. - Calls to the Protect method are supported on Windows operating systems only. + The operating system is not Windows. @@ -321,7 +321,7 @@ If you use these methods during impersonation, you may receive the following err The encryption failed. The operating system does not support this method. The system ran out of memory while encrypting the data. - Calls to the Unprotect method are supported on Windows operating systems only. + The operating system is not Windows. @@ -444,7 +444,7 @@ If you use these methods during impersonation, you may receive the following err The encryption failed. The operating system does not support this method. The system ran out of memory while decrypting the data. - Calls to the Unprotect method are supported on Windows operating systems only. + The operating system is not Windows. @@ -484,7 +484,7 @@ If you use these methods during impersonation, you may receive the following err The encryption failed. The operating system does not support this method. The system ran out of memory while encrypting the data. - Calls to the Unprotect method are supported on Windows operating systems only. + The operating system is not Windows. diff --git a/xml/System.Security.Cryptography/SlhDsa.xml b/xml/System.Security.Cryptography/SlhDsa.xml index 2a1d35074d1..6f79c3fab05 100644 --- a/xml/System.Security.Cryptography/SlhDsa.xml +++ b/xml/System.Security.Cryptography/SlhDsa.xml @@ -964,7 +964,7 @@ To be added. Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is thrown to prevent importing a key when the key is ambiguous. - This method supports the <c>ENCRYPTED PRIVATE KEY</c> PEM label. + This method supports the ENCRYPTED PRIVATE KEY PEM label. @@ -1026,7 +1026,7 @@ When the base-64 decoded contents of indicate an algorithm that uses PBKDF1 (Password-Based Key Derivation Function 1) or PBKDF2 (Password-Based Key Derivation Function 2), the password is converted to bytes via the UTF-8 encoding. Unsupported or malformed PEM-encoded objects will be ignored. If multiple supported PEM labels are found, an exception is thrown to prevent importing a key when the key is ambiguous. - This method supports the <c>ENCRYPTED PRIVATE KEY</c> PEM label. + This method supports the ENCRYPTED PRIVATE KEY PEM label. diff --git a/xml/System.Security.Cryptography/SymmetricAlgorithm.xml b/xml/System.Security.Cryptography/SymmetricAlgorithm.xml index 11ac5c95dff..06e8f1a8f1b 100644 --- a/xml/System.Security.Cryptography/SymmetricAlgorithm.xml +++ b/xml/System.Security.Cryptography/SymmetricAlgorithm.xml @@ -3211,7 +3211,7 @@ Allows an to attempt to free resources and perfor The new key for this instance. Sets the key for this instance. - Other callers are expected to similarly ensure that this method is only called with validly-sized inputs. + Other callers are expected to similarly ensure that this method is only called with validly sized inputs. The base class implementation is to assign the property. Derived types should override this method to avoid copying the key into a new array. diff --git a/xml/System.Text.Json/JsonElement.xml b/xml/System.Text.Json/JsonElement.xml index e0f0c6baf27..c4220545679 100644 --- a/xml/System.Text.Json/JsonElement.xml +++ b/xml/System.Text.Json/JsonElement.xml @@ -806,7 +806,7 @@ If a property is defined multiple times for the same object, the method matches - Get the number of properties contained within the current object value. + Gets the number of properties contained within the current object value. The number of properties contained within the current object value. To be added. This value's is not . diff --git a/xml/System.Text.RegularExpressions/RegexRunner.xml b/xml/System.Text.RegularExpressions/RegexRunner.xml index 66ddde1a3cf..781e567770f 100644 --- a/xml/System.Text.RegularExpressions/RegexRunner.xml +++ b/xml/System.Text.RegularExpressions/RegexRunner.xml @@ -55,10 +55,7 @@ The class is the base class for compiled regular expressions. - - Provides the driver code that calls the subclass's Scan method for either scanning or direct execution. - Also maintains memory allocation for the backtracking stack, the grouping stack and the longjump crawlstack, and provides methods to push new subpattern match results into (or remove backtracked results from) the Match instance. - + To be added. @@ -1059,10 +1056,7 @@ Used by a object generated by the method. - - Every time a group has a capture, we push its group number onto the runcrawl stack. - In the case of a balanced match, we push BOTH groups onto the stack. - + To be added. @@ -1237,11 +1231,7 @@ Used by a object generated by the method. - - This stack is used to track text positions across different opcodes. - For example, in /(a*b)+/, the parentheses result in a SetMark/CaptureMark pair. SetMark records the text position before we match a*b. Then CaptureMark uses that position to figure out where the capture starts. - Opcodes which push onto this stack are always paired with other opcodes which will pop the value from it later. A successful match should mean that this stack is empty. - + To be added. @@ -1371,9 +1361,7 @@ Used by a object generated by the method. - - We now always use a sliced span of the input from runtextbeg to runtextend, which means that runtextbeg is now always 0 except for CompiledToAssembly scenario which works over the original input. - + To be added. @@ -1416,9 +1404,7 @@ Used by a object generated by the method. - - Because we now pass in a sliced span of the input into Scan, the runtextend will always match the length of that passed in span except for CompileToAssembly scenario, which still works over the original input. - + To be added. @@ -1504,9 +1490,7 @@ Used by a object generated by the method. - - The differs from in that lookbehinds will be able to see text before but not before . - + To be added. @@ -1550,10 +1534,7 @@ Used by a object generated by the method. - - Opcodes use this to store data regarding what they have matched and where to backtrack to. Each "frame" on the stack takes the form of [CodePosition Data1 Data2...], where CodePosition is the position of the current opcode and the data values are all optional. The CodePosition can be negative, and these values (also called "back2") are used by the BranchMark family of opcodes to indicate whether they are backtracking after a successful or failed match. - When we backtrack, we pop the CodePosition off the stack, set the current instruction pointer to that code position, and mark the opcode with a backtracking flag ("Back"). Each opcode then knows how to handle its own data. - + To be added. From 90d7e32790b6506a1b6462bf5adac21ba024b06c Mon Sep 17 00:00:00 2001 From: Genevieve Warren <24882762+gewarren@users.noreply.github.com> Date: Mon, 6 Oct 2025 10:50:29 -0700 Subject: [PATCH 39/39] a few more edits --- xml/System.IO.Compression/ZipFile.xml | 4 ++-- xml/System.IO.Compression/ZipFileExtensions.xml | 2 +- xml/System.Security.Cryptography/MLKemOpenSsl.xml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/xml/System.IO.Compression/ZipFile.xml b/xml/System.IO.Compression/ZipFile.xml index 70a76d42760..6470353aa1f 100644 --- a/xml/System.IO.Compression/ZipFile.xml +++ b/xml/System.IO.Compression/ZipFile.xml @@ -774,7 +774,7 @@ An I/O error occurred while opening a file to be archived. The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created. If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method optionally includes the base directory in the archive. - If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default. + If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name. Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default. (Currently, the underlying compression algorithm is provided by the class.) @@ -931,7 +931,7 @@ An I/O error occurred while opening a file to be archived. The directory structure is preserved in the archive, and a recursive search is done for files to be archived. The archive must not exist. If the directory is empty, an empty archive will be created. If a file in the directory cannot be added to the archive, the archive will be left incomplete and invalid and the method will throw an exception. This method optionally includes the base directory in the archive. - If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default. + If an error is encountered while adding files to the archive, this method will stop adding files and leave the archive in an invalid state. The paths are permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file in the archive has data in the last write time field that is not a valid zip timestamp, an indicator value of 1980 January 1 at midnight will be used for the file's last modified time.If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name. Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default. (Currently, the underlying compression algorithm is provided by the class.) Specifying a value for other than is discouraged. However, this may be necessary for interoperability with zip archive tools and libraries that do not correctly support UTF-8 encoding for entry names or comments. diff --git a/xml/System.IO.Compression/ZipFileExtensions.xml b/xml/System.IO.Compression/ZipFileExtensions.xml index 034072890b3..31a4ca83654 100644 --- a/xml/System.IO.Compression/ZipFileExtensions.xml +++ b/xml/System.IO.Compression/ZipFileExtensions.xml @@ -290,7 +290,7 @@ The new entry in the archive will contain the contents of the file. The last write time of the archive entry is set to the last write time of the file on the file system. If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name. - If the specified source file has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used. If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name.Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default. + If the specified source file has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used. If an entry with the specified name already exists in the archive, a second entry will be created that has an identical name. Since no CompressionLevel is specified, the default provided by the implementation of the underlying compression algorithm will be used; the ZipArchive will not impose its own default. (Currently, the underlying compression algorithm is provided by the class.) diff --git a/xml/System.Security.Cryptography/MLKemOpenSsl.xml b/xml/System.Security.Cryptography/MLKemOpenSsl.xml index ec52ae8ab6c..356ea4accfe 100644 --- a/xml/System.Security.Cryptography/MLKemOpenSsl.xml +++ b/xml/System.Security.Cryptography/MLKemOpenSsl.xml @@ -17,7 +17,7 @@ Represents an ML-KEM key backed by OpenSSL. This algorithm is specified by FIPS-203. - Developers are encouraged to program against the <c>MLKem</c> base class, rather than any specific derived class. + Developers are encouraged to program against the MLKem base class, rather than any specific derived class. The derived classes are intended for interop with the underlying system cryptographic libraries.