Releases: smdn/Smdn.Fundamentals
Releases · smdn/Smdn.Fundamentals
Smdn.MSBuild.ProjectAssets.Library version 1.1.1
Packages
Changes in this release
Change log
- 2022-02-20 update assembly version
- 2022-02-20 enable referencing source link packages only if GITHUB_ACTIONS is true
Changes
Changes in this release
diff --git a/src/Smdn.MSBuild.ProjectAssets.Library/Smdn.MSBuild.ProjectAssets.Library.csproj b/src/Smdn.MSBuild.ProjectAssets.Library/Smdn.MSBuild.ProjectAssets.Library.csproj
index 6f73ccd9..f0211a51 100644
--- a/src/Smdn.MSBuild.ProjectAssets.Library/Smdn.MSBuild.ProjectAssets.Library.csproj
+++ b/src/Smdn.MSBuild.ProjectAssets.Library/Smdn.MSBuild.ProjectAssets.Library.csproj
@@ -5,7 +5,7 @@ SPDX-License-Identifier: MIT
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netstandard1.6</TargetFrameworks>
- <VersionPrefix>1.1.0</VersionPrefix>
+ <VersionPrefix>1.1.1</VersionPrefix>
<VersionSuffix></VersionSuffix>
<NoBuild>true</NoBuild>
<IncludeBuildOutput>false</IncludeBuildOutput>
diff --git a/src/Smdn.MSBuild.ProjectAssets.Library/project/Project.props b/src/Smdn.MSBuild.ProjectAssets.Library/project/Project.props
index 1ec8f60b..70ac6b7b 100644
--- a/src/Smdn.MSBuild.ProjectAssets.Library/project/Project.props
+++ b/src/Smdn.MSBuild.ProjectAssets.Library/project/Project.props
@@ -68,7 +68,12 @@ SPDX-License-Identifier: MIT
source link
-->
<ItemGroup>
- <PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.1.1" PrivateAssets="All"/>
+ <PackageReference
+ Include="Microsoft.SourceLink.GitHub"
+ Condition="'$(GITHUB_ACTIONS)' == 'true'"
+ Version="1.1.1"
+ PrivateAssets="All"
+ />
</ItemGroup>
<PropertyGroup Condition="'$(GITHUB_ACTIONS)' == 'true'">
What's Changed
Full Changelog: releases/Smdn.MSBuild.ProjectAssets.Library-1.1.0...releases/Smdn.MSBuild.ProjectAssets.Library-1.1.1
Smdn.Fundamental.Uuid version 3.0.2
Packages
Changes in this release
Change log
- 2022-02-20 update assembly version
- 2022-02-20 update package tags
- 2022-02-07 use .NET SDK API symbols instead
- 2022-02-04 fix closing element
- 2022-02-04 suppress warning CA1846
- 2022-02-04 use AsSpan() instead of Substring()
- 2022-02-04 fix warning CA1305; use string interpolation instead
- 2022-01-02 define PackageTags
- 2022-01-02 refactor assembly attributes and package properties
API diff
API diff in this release
diff --git a/doc/api-list/Smdn.Fundamental.Uuid/Smdn.Fundamental.Uuid-net45.apilist.cs b/doc/api-list/Smdn.Fundamental.Uuid/Smdn.Fundamental.Uuid-net45.apilist.cs
index 934200f7..8468307a 100644
--- a/doc/api-list/Smdn.Fundamental.Uuid/Smdn.Fundamental.Uuid-net45.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.Uuid/Smdn.Fundamental.Uuid-net45.apilist.cs
@@ -1,161 +1,161 @@
-// Smdn.Fundamental.Uuid.dll (Smdn.Fundamental.Uuid-3.0.1 (net45))
+// Smdn.Fundamental.Uuid.dll (Smdn.Fundamental.Uuid-3.0.2)
// Name: Smdn.Fundamental.Uuid
-// AssemblyVersion: 3.0.1.0
-// InformationalVersion: 3.0.1 (net45)
+// AssemblyVersion: 3.0.2.0
+// InformationalVersion: 3.0.2+3b6d4bbdb8e89104beed8bc83b9b240f09d0749d
// TargetFramework: .NETFramework,Version=v4.5
// Configuration: Release
using System;
using System.Net.NetworkInformation;
using System.Security.Cryptography;
using Smdn;
using Smdn.Formats.UniversallyUniqueIdentifiers;
namespace Smdn {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public enum UuidVersion : byte {
NameBasedMD5Hash = 3,
NameBasedSHA1Hash = 5,
None = 0,
RandomNumber = 4,
TimeBased = 1,
Version1 = 1,
Version2 = 2,
Version3 = 3,
Version4 = 4,
Version5 = 5,
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
[StructLayout(LayoutKind.Explicit, Pack = 1)]
public readonly struct Uuid :
IComparable,
IComparable<Guid>,
IComparable<Uuid>,
IEquatable<Guid>,
IEquatable<Uuid>,
IFormattable
{
public enum Namespace : int {
RFC4122Dns = 1806153744,
RFC4122IsoOid = 1806153746,
RFC4122Url = 1806153745,
RFC4122X500 = 1806153748,
}
public enum Variant : byte {
MicrosoftReserved = 192,
NCSReserved = 0,
RFC4122 = 128,
Reserved = 224,
}
public static readonly Uuid Nil; // = "00000000-0000-0000-0000-000000000000"
public static readonly Uuid RFC4122NamespaceDns; // = "6ba7b810-9dad-11d1-80b4-00c04fd430c8"
public static readonly Uuid RFC4122NamespaceIsoOid; // = "6ba7b812-9dad-11d1-80b4-00c04fd430c8"
public static readonly Uuid RFC4122NamespaceUrl; // = "6ba7b811-9dad-11d1-80b4-00c04fd430c8"
public static readonly Uuid RFC4122NamespaceX500; // = "6ba7b814-9dad-11d1-80b4-00c04fd430c8"
public Uuid(Guid guidValue) {}
public Uuid(ReadOnlySpan<byte> octets) {}
public Uuid(ReadOnlySpan<byte> octets, bool isBigEndian) {}
public Uuid(byte[] octets) {}
public Uuid(byte[] octets, bool isBigEndian) {}
public Uuid(byte[] octets, int index, bool isBigEndian = true) {}
public Uuid(string uuid) {}
public Uuid(uint time_low, ushort time_mid, ushort time_hi_and_version, byte clock_seq_hi_and_reserved, byte clock_seq_low, PhysicalAddress node) {}
public Uuid(uint time_low, ushort time_mid, ushort time_hi_and_version, byte clock_seq_hi_and_reserved, byte clock_seq_low, byte node0, byte node1, byte node2, byte node3, byte node4, byte node5) {}
public Uuid(uint time_low, ushort time_mid, ushort time_hi_and_version, byte clock_seq_hi_and_reserved, byte clock_seq_low, byte[] node) {}
public int Clock { get; }
public byte ClockSeqHighAndReserved { get; }
public byte ClockSeqLow { get; }
public string IEEE802MacAddress { get; }
public byte[] Node { get; }
public PhysicalAddress PhysicalAddress { get; }
public ushort TimeHighAndVersion { get; }
public uint TimeLow { get; }
public ushort TimeMid { get; }
public DateTime Timestamp { get; }
public Uuid.Variant VariantField { get; }
public UuidVersion Version { get; }
public int CompareTo(Guid other) {}
public int CompareTo(Uuid other) {}
public int CompareTo(object obj) {}
public static Uuid CreateFromRandomNumber() {}
public static Uuid CreateFromRandomNumber(RandomNumberGenerator rng) {}
public static Uuid CreateFromRandomNumber(ReadOnlySpan<byte> randomNumber) {}
public static Uuid CreateFromRandomNumber(byte[] randomNumber) {}
public static Uuid CreateNameBased(Uri url, UuidVersion version) {}
public static Uuid CreateNameBased(byte[] name, Uuid namespaceId, UuidVersion version) {}
public static Uuid CreateNameBased(byte[] name, Uuid.Namespace ns, UuidVersion version) {}
public static Uuid CreateNameBased(string name, Uuid namespaceId, UuidVersion version) {}
public static Uuid CreateNameBased(string name, Uuid.Namespace ns, UuidVersion version) {}
public static Uuid CreateNameBasedMD5(Uri url) {}
public static Uuid CreateNameBasedMD5(byte[] name, Uuid.Namespace ns) {}
public static Uuid CreateNameBasedMD5(string name, Uuid.Namespace ns) {}
public static Uuid CreateNameBasedSHA1(Uri url) {}
public static Uuid CreateNameBasedSHA1(byte[] name, Uuid.Namespace ns) {}
public static Uuid CreateNameBasedSHA1(string name, Uuid.Namespace ns) {}
public static Uuid CreateTimeBased() {}
public static Uuid CreateTimeBased(DateTime timestamp, int clock) {}
public static Uuid CreateTimeBased(DateTime timestamp, int clock, PhysicalAddress node) {}
public static Uuid CreateTimeBased(DateTime timestamp, int clock, byte[] node) {}
public static Uuid CreateTimeBased(PhysicalAddress node) {}
public static Uuid CreateTimeBased(byte[] node) {}
public bool Equals(Guid other) {}
public bool Equals(Uuid other) {}
public override bool Equals(object obj) {}
public void GetBytes(byte[] buffer, int startIndex) {}
public void GetBytes(byte[] buffer, int startIndex, bool asBigEndian) {}
public override int GetHashCode() {}
public static Uuid NewUuid() {}
public byte[] ToByteArray() {}
public byte[] ToByteArray(bool asBigEndian) {}
public Guid ToGuid() {}
public override string ToString() {}
public string ToString(string format) {}
public string ToString(string format, IFormatProvider formatProvider) {}
public static bool operator == (Uuid x, Uuid y) {}
public static explicit operator Guid(Uuid @value) {}
public static explicit operator Uuid(Guid @value) {}
public static bool operator > (Uuid x, Uuid y) {}
public static bool operator >= (Uuid x, Uuid y) {}
public static bool operator != (Uuid x, Uuid y) {}
public static bool operator < (Uuid x, Uuid y) {}
public static bool operator <= (Uuid x, Uuid y) {}
}
}
namespace Smdn.Formats.UniversallyUniqueIdentifiers {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public abstract class UuidGenerator {
protected UuidGenerator() {}
public static UuidGenerator CreateTimeBased() {}
public static UuidGenerator CreateTimeBased(DateTimeOffset timeStamp) {}
public static UuidGenerator CreateTimeBased(DateTimeOffset timeStamp, Func<ushort> clockSequenceSource) {}
public static UuidGenerator CreateTimeBased(DateTimeOffset timeStamp, int clockSequence) {}
public static UuidGenerator CreateTimeBased(DateTimeOffset timeStamp, int clockSequence, Node node) {}
public static UuidGenerator CreateTimeBased(DateTimeOffset timeStamp, int clockSequence, PhysicalAddress node) {}
public static UuidGenerator CreateTimeBased(Func<ulong> timeStampSource) {}
public static UuidGenerator CreateTimeBased(Func<ulong> timeStampSource, Func<ushort> clockSequenceSource) {}
public static UuidGenerator CreateTimeBased(Func<ulong> timeStampSource, Func<ushort> clockSequenceSource, Node node) {}
public static UuidGenerator CreateTimeBased(Func<ulong> timeStampSource, int clockSequence) {}
public static UuidGenerator CreateTimeBased(Func<ulong> timeStampSource, int clockSequence, Node node) {}
public abstract Uuid GenerateNext();
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public readonly struct Node : IFormattable {
public Node(PhysicalAddress physicalAddress) {}
public static Node CreateRandom() {}
public PhysicalAddress ToPhysicalAddress() {}
public override string ToString() {}
public string ToString(string format, IFormatProvider formatProvider = null) {}
}
}
diff --git a/doc/api-list/Smdn.Fundamental.Uuid/Smdn.Fundamental.Uuid-net5.0.apilist.cs b/doc/api-list/Smdn.Fundamental.Uuid/Smdn.Funda...
Smdn.Fundamental.UInt24n version 3.0.2
Packages
Changes in this release
Change log
- 2022-02-20 update assembly version
- 2022-02-04 improve implementation of UIntXX.IConvertible.ToDateTime
- 2022-02-04 overload relational operators
- 2022-01-02 define PackageTags
- 2022-01-02 refactor assembly attributes and package properties
- 2021-12-12 add title for rule ID
API diff
API diff in this release
diff --git a/doc/api-list/Smdn.Fundamental.UInt24n/Smdn.Fundamental.UInt24n-net45.apilist.cs b/doc/api-list/Smdn.Fundamental.UInt24n/Smdn.Fundamental.UInt24n-net45.apilist.cs
index 74cbb087..2cdb8a96 100644
--- a/doc/api-list/Smdn.Fundamental.UInt24n/Smdn.Fundamental.UInt24n-net45.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.UInt24n/Smdn.Fundamental.UInt24n-net45.apilist.cs
@@ -1,156 +1,164 @@
-// Smdn.Fundamental.UInt24n.dll (Smdn.Fundamental.UInt24n-3.0.1 (net45))
+// Smdn.Fundamental.UInt24n.dll (Smdn.Fundamental.UInt24n-3.0.2)
// Name: Smdn.Fundamental.UInt24n
-// AssemblyVersion: 3.0.1.0
-// InformationalVersion: 3.0.1 (net45)
+// AssemblyVersion: 3.0.2.0
+// InformationalVersion: 3.0.2+ba1968924b0078e56f5205dd0ae2468ee96e6071
// TargetFramework: .NETFramework,Version=v4.5
// Configuration: Release
using System;
using Smdn;
namespace Smdn {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
[StructLayout(LayoutKind.Explicit, Pack = 1)]
public struct UInt24 :
IComparable,
IComparable<UInt24>,
IComparable<int>,
IComparable<uint>,
IConvertible,
IEquatable<UInt24>,
IEquatable<int>,
IEquatable<uint>,
IFormattable
{
[FieldOffset(0)]
public byte Byte0;
[FieldOffset(1)]
public byte Byte1;
[FieldOffset(2)]
public byte Byte2;
public static readonly UInt24 MaxValue; // = "16777215"
public static readonly UInt24 MinValue; // = "0"
public static readonly UInt24 Zero; // = "0"
public UInt24(byte[] @value, int startIndex, bool isBigEndian = false) {}
public int CompareTo(UInt24 other) {}
public int CompareTo(int other) {}
public int CompareTo(object obj) {}
public int CompareTo(uint other) {}
public bool Equals(UInt24 other) {}
public bool Equals(int other) {}
public bool Equals(uint other) {}
public override bool Equals(object obj) {}
public override int GetHashCode() {}
TypeCode IConvertible.GetTypeCode() {}
bool IConvertible.ToBoolean(IFormatProvider provider) {}
byte IConvertible.ToByte(IFormatProvider provider) {}
char IConvertible.ToChar(IFormatProvider provider) {}
DateTime IConvertible.ToDateTime(IFormatProvider provider) {}
decimal IConvertible.ToDecimal(IFormatProvider provider) {}
double IConvertible.ToDouble(IFormatProvider provider) {}
short IConvertible.ToInt16(IFormatProvider provider) {}
int IConvertible.ToInt32(IFormatProvider provider) {}
long IConvertible.ToInt64(IFormatProvider provider) {}
sbyte IConvertible.ToSByte(IFormatProvider provider) {}
float IConvertible.ToSingle(IFormatProvider provider) {}
string IConvertible.ToString(IFormatProvider provider) {}
object IConvertible.ToType(Type conversionType, IFormatProvider provider) {}
ushort IConvertible.ToUInt16(IFormatProvider provider) {}
uint IConvertible.ToUInt32(IFormatProvider provider) {}
ulong IConvertible.ToUInt64(IFormatProvider provider) {}
public int ToInt32() {}
public override string ToString() {}
public string ToString(IFormatProvider formatProvider) {}
public string ToString(string format) {}
public string ToString(string format, IFormatProvider formatProvider) {}
public uint ToUInt32() {}
public static bool operator == (UInt24 x, UInt24 y) {}
public static explicit operator UInt24(int val) {}
public static explicit operator UInt24(short val) {}
public static explicit operator UInt24(uint val) {}
public static explicit operator UInt24(ushort val) {}
public static explicit operator int(UInt24 val) {}
public static explicit operator short(UInt24 val) {}
public static explicit operator uint(UInt24 val) {}
public static explicit operator ushort(UInt24 val) {}
+ public static bool operator > (UInt24 x, UInt24 y) {}
+ public static bool operator >= (UInt24 x, UInt24 y) {}
public static bool operator != (UInt24 x, UInt24 y) {}
+ public static bool operator < (UInt24 x, UInt24 y) {}
+ public static bool operator <= (UInt24 x, UInt24 y) {}
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
[StructLayout(LayoutKind.Explicit, Pack = 1)]
public struct UInt48 :
IComparable,
IComparable<UInt48>,
IComparable<long>,
IComparable<ulong>,
IConvertible,
IEquatable<UInt48>,
IEquatable<long>,
IEquatable<ulong>,
IFormattable
{
[FieldOffset(0)]
public byte Byte0;
[FieldOffset(1)]
public byte Byte1;
[FieldOffset(2)]
public byte Byte2;
[FieldOffset(3)]
public byte Byte3;
[FieldOffset(4)]
public byte Byte4;
[FieldOffset(5)]
public byte Byte5;
public static readonly UInt48 MaxValue; // = "281474976710655"
public static readonly UInt48 MinValue; // = "0"
public static readonly UInt48 Zero; // = "0"
public UInt48(byte[] @value, int startIndex, bool isBigEndian = false) {}
public int CompareTo(UInt48 other) {}
public int CompareTo(long other) {}
public int CompareTo(object obj) {}
public int CompareTo(ulong other) {}
public bool Equals(UInt48 other) {}
public bool Equals(long other) {}
public bool Equals(ulong other) {}
public override bool Equals(object obj) {}
public override int GetHashCode() {}
TypeCode IConvertible.GetTypeCode() {}
bool IConvertible.ToBoolean(IFormatProvider provider) {}
byte IConvertible.ToByte(IFormatProvider provider) {}
char IConvertible.ToChar(IFormatProvider provider) {}
DateTime IConvertible.ToDateTime(IFormatProvider provider) {}
decimal IConvertible.ToDecimal(IFormatProvider provider) {}
double IConvertible.ToDouble(IFormatProvider provider) {}
short IConvertible.ToInt16(IFormatProvider provider) {}
int IConvertible.ToInt32(IFormatProvider provider) {}
long IConvertible.ToInt64(IFormatProvider provider) {}
sbyte IConvertible.ToSByte(IFormatProvider provider) {}
float IConvertible.ToSingle(IFormatProvider provider) {}
string IConvertible.ToString(IFormatProvider provider) {}
object IConvertible.ToType(Type conversionType, IFormatProvider provider) {}
ushort IConvertible.ToUInt16(IFormatProvider provider) {}
uint IConvertible.ToUInt32(IFormatProvider provider) {}
ulong IConvertible.ToUInt64(IFormatProvider provider) {}
public long ToInt64() {}
public override string ToString() {}
public string ToString(IFormatProvider formatProvider) {}
public string ToString(string format) {}
public string ToString(string format, IFormatProvider formatProvider) {}
public ulong ToUInt64() {}
public static bool operator == (UInt48 x, UInt48 y) {}
public static explicit operator UInt48(int val) {}
public static explicit operator UInt48(long val) {}
public static explicit operator UInt48(uint val) {}
public static explicit operator UInt48(ulong val) {}
public static explicit operator int(UInt48 val) {}
public static explicit operator long(UInt48 val) {}
public static explicit operator uint(UInt48 val) {}
public static explicit operator ulong(UInt48 val) {}
+ public static bool operator > (UInt48 x, UInt48 y) {}
+ public static bool operator >= (UInt48 x, UInt48 y) {}
public static bool operator != (UInt48 x, UInt48 y) {}
+ public static bool operator < (UInt48 x, UInt48 y) {}
+ public static bool operator <= (UInt48 x, UInt48 y) {}
}
}
diff --git a/doc/api-list/Smdn.Fundamental.UInt24n/Smdn.Fundamental.UInt24n-netstandard1.6.apilist.cs b/doc/api-list/Smdn.Fundamental.UInt24n/Smdn.Fundamental.UInt24n-netstandard1.6.apilist.cs
index 99ce314b..f0e69fcb 100644
--- a/doc/api-list/Smdn.Fundamental.UInt24n/Smdn.Fundamental.UInt24n-netstandard1.6.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.UInt24n/Smdn.Fundamental.UInt24n-netstandard1.6.apilist.cs
@@ -1,156 +1,164 @@
-// Smdn.Fundamental.UInt24n.dll (Smdn.Fundamental.UInt24n-3.0.1 (netstandard1.6))
+// Smdn.Fundamental.UInt24n.dll (Smdn.Fundamental.UInt24n-3.0.2)
// Name: Smdn.Fundamental.UInt24n
-// AssemblyVersion: 3.0.1.0
-// InformationalVersion: 3.0.1 (netstandard1.6)
+// AssemblyVersion: 3.0.2.0
+// InformationalVersion: 3.0.2+ba1968924b0078e56f5205dd0ae2468ee96e6071
// TargetFramework: .NETStandard,Version=v1.6
// Configuration: Release
using System;
using Smdn;
namespace Smdn {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
[StructLayout(LayoutKind.Explicit, Pack = 1)]
public struct UInt24 :
IComparable,
IComparable<UInt24>,
IComparable<int>,
IComparable<uint>,
IConvertible,
IEquatable<UInt24>,
IEquatable<int>,
IEquatable<uint>,
IFormatta...
Smdn.Fundamental.Stream.LineOriented version 3.0.2
Packages
Changes in this release
Change log
- 2022-02-20 update assembly version
- 2022-02-07 use .NET SDK API symbols instead
- 2022-02-05 add comment
- 2022-02-04 override Stream.ReadAsync(Memory, CancellationToken)
- 2022-02-04 override Stream.WriteAsync(ReadOnlyMemory, CancellationToken)
- 2022-01-02 define PackageTags
- 2022-01-02 refactor assembly attributes and package properties
API diff
API diff in this release
diff --git a/doc/api-list/Smdn.Fundamental.Stream.LineOriented/Smdn.Fundamental.Stream.LineOriented-net45.apilist.cs b/doc/api-list/Smdn.Fundamental.Stream.LineOriented/Smdn.Fundamental.Stream.LineOriented-net45.apilist.cs
index e7f1d225..c60ff205 100644
--- a/doc/api-list/Smdn.Fundamental.Stream.LineOriented/Smdn.Fundamental.Stream.LineOriented-net45.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.Stream.LineOriented/Smdn.Fundamental.Stream.LineOriented-net45.apilist.cs
@@ -1,74 +1,74 @@
-// Smdn.Fundamental.Stream.LineOriented.dll (Smdn.Fundamental.Stream.LineOriented-3.0.1 (net45))
+// Smdn.Fundamental.Stream.LineOriented.dll (Smdn.Fundamental.Stream.LineOriented-3.0.2)
// Name: Smdn.Fundamental.Stream.LineOriented
-// AssemblyVersion: 3.0.1.0
-// InformationalVersion: 3.0.1 (net45)
+// AssemblyVersion: 3.0.2.0
+// InformationalVersion: 3.0.2+f6313286e6c89f255a4e55ad199841306da18ec2
// TargetFramework: .NETFramework,Version=v4.5
// Configuration: Release
using System;
using System.Buffers;
using System.IO;
using System.Threading;
using System.Threading.Tasks;
using Smdn.IO.Streams.LineOriented;
namespace Smdn.IO.Streams.LineOriented {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public class LineOrientedStream : Stream {
public readonly struct Line {
public Line(ReadOnlySequence<byte> sequenceWithNewLine, SequencePosition positionOfNewLine) {}
public bool IsEmpty { get; }
public ReadOnlySequence<byte> NewLine { get; }
public SequencePosition PositionOfNewLine { get; }
public ReadOnlySequence<byte> Sequence { get; }
public ReadOnlySequence<byte> SequenceWithNewLine { get; }
}
protected const int DefaultBufferSize = 1024;
protected const bool DefaultLeaveStreamOpen = false;
protected const int MinimumBufferSize = 8;
public LineOrientedStream(Stream stream, ReadOnlySpan<byte> newLine, int bufferSize = 1024, bool leaveStreamOpen = false) {}
public int BufferSize { get; }
public override bool CanRead { get; }
public override bool CanSeek { get; }
public override bool CanTimeout { get; }
public override bool CanWrite { get; }
public virtual Stream InnerStream { get; }
public bool IsStrictNewLine { get; }
public override long Length { get; }
public ReadOnlySpan<byte> NewLine { get; }
public override long Position { get; set; }
public override Task CopyToAsync(Stream destination, int bufferSize = 0, CancellationToken cancellationToken = default) {}
protected override void Dispose(bool disposing) {}
public override void Flush() {}
public override Task FlushAsync(CancellationToken cancellationToken) {}
public long Read(Stream targetStream, long length) {}
public override int Read(byte[] buffer, int offset, int count) {}
public Task<long> ReadAsync(Stream targetStream, long length, CancellationToken cancellationToken = default) {}
public override Task<int> ReadAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken) {}
public override int ReadByte() {}
public LineOrientedStream.Line? ReadLine() {}
public byte[] ReadLine(bool keepEOL) {}
public Task<LineOrientedStream.Line?> ReadLineAsync(CancellationToken cancellationToken = default) {}
public override long Seek(long offset, SeekOrigin origin) {}
public override void SetLength(long @value) {}
public override void Write(byte[] buffer, int offset, int count) {}
public override Task WriteAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken) {}
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public class LooseLineOrientedStream : LineOrientedStream {
public LooseLineOrientedStream(Stream stream, int bufferSize = 1024, bool leaveStreamOpen = false) {}
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public class StrictLineOrientedStream : LineOrientedStream {
public StrictLineOrientedStream(Stream stream, ReadOnlySpan<byte> newLine, int bufferSize = 1024, bool leaveStreamOpen = false) {}
public StrictLineOrientedStream(Stream stream, int bufferSize = 1024, bool leaveStreamOpen = false) {}
}
}
diff --git a/doc/api-list/Smdn.Fundamental.Stream.LineOriented/Smdn.Fundamental.Stream.LineOriented-net5.0.apilist.cs b/doc/api-list/Smdn.Fundamental.Stream.LineOriented/Smdn.Fundamental.Stream.LineOriented-net5.0.apilist.cs
index 9aa9cbab..73e88c32 100644
--- a/doc/api-list/Smdn.Fundamental.Stream.LineOriented/Smdn.Fundamental.Stream.LineOriented-net5.0.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.Stream.LineOriented/Smdn.Fundamental.Stream.LineOriented-net5.0.apilist.cs
@@ -1,74 +1,76 @@
-// Smdn.Fundamental.Stream.LineOriented.dll (Smdn.Fundamental.Stream.LineOriented-3.0.1 (net5.0))
+// Smdn.Fundamental.Stream.LineOriented.dll (Smdn.Fundamental.Stream.LineOriented-3.0.2)
// Name: Smdn.Fundamental.Stream.LineOriented
-// AssemblyVersion: 3.0.1.0
-// InformationalVersion: 3.0.1 (net5.0)
+// AssemblyVersion: 3.0.2.0
+// InformationalVersion: 3.0.2+f6313286e6c89f255a4e55ad199841306da18ec2
// TargetFramework: .NETCoreApp,Version=v5.0
// Configuration: Release
using System;
using System.Buffers;
using System.IO;
using System.Threading;
using System.Threading.Tasks;
using Smdn.IO.Streams.LineOriented;
namespace Smdn.IO.Streams.LineOriented {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public class LineOrientedStream : Stream {
public readonly struct Line {
public Line(ReadOnlySequence<byte> sequenceWithNewLine, SequencePosition positionOfNewLine) {}
public bool IsEmpty { get; }
public ReadOnlySequence<byte> NewLine { get; }
public SequencePosition PositionOfNewLine { get; }
public ReadOnlySequence<byte> Sequence { get; }
public ReadOnlySequence<byte> SequenceWithNewLine { get; }
}
protected const int DefaultBufferSize = 1024;
protected const bool DefaultLeaveStreamOpen = false;
protected const int MinimumBufferSize = 8;
public LineOrientedStream(Stream stream, ReadOnlySpan<byte> newLine, int bufferSize = 1024, bool leaveStreamOpen = false) {}
public int BufferSize { get; }
public override bool CanRead { get; }
public override bool CanSeek { get; }
public override bool CanTimeout { get; }
public override bool CanWrite { get; }
public virtual Stream InnerStream { get; }
public bool IsStrictNewLine { get; }
public override long Length { get; }
public ReadOnlySpan<byte> NewLine { get; }
public override long Position { get; set; }
public override Task CopyToAsync(Stream destination, int bufferSize = 0, CancellationToken cancellationToken = default) {}
protected override void Dispose(bool disposing) {}
public override void Flush() {}
public override Task FlushAsync(CancellationToken cancellationToken) {}
public long Read(Stream targetStream, long length) {}
public override int Read(byte[] buffer, int offset, int count) {}
public Task<long> ReadAsync(Stream targetStream, long length, CancellationToken cancellationToken = default) {}
public override Task<int> ReadAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken) {}
+ public override ValueTask<int> ReadAsync(Memory<byte> buffer, CancellationToken cancellationToken = default) {}
public override int ReadByte() {}
public LineOrientedStream.Line? ReadLine() {}
public byte[] ReadLine(bool keepEOL) {}
public Task<LineOrientedStream.Line?> ReadLineAsync(CancellationToken cancellationToken = default) {}
public override long Seek(long offset, SeekOrigin origin) {}
public override void SetLength(long @value) {}
public override void Write(byte[] buffer, int offset, int count) {}
public override Task WriteAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken) {}
+ public override ValueTask WriteAsync(ReadOnlyMemory<byte> buffer, CancellationToken cancellationToken = default) {}
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public class LooseLineOrientedStream : LineOrientedStream {
public LooseLineOrientedStream(Stream stream, int bufferSize = 1024, bool leaveStreamOpen = false) {}
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public class StrictLineOrientedStream : LineOrientedStream {
public StrictLineOrientedStream(...
Smdn.Fundamental.Stream.Extending version 3.0.1
Packages
Changes in this release
Change log
- 2022-02-20 update assembly version
- 2022-02-05 add TODO comment
- 2022-02-05 use Stream.ReadAsync(Memory) if available
- 2022-02-05 override Stream.WriteAsync(ReadOnlyMemory, CancellationToken)
- 2022-02-04 suppress warning CA1710
- 2022-01-02 define PackageTags
- 2022-01-02 refactor assembly attributes and package properties
- 2021-12-12 enable package validation and define PackageValidationBaselineVersion
- 2021-12-11 use file-scoped namespace declaration
- 2021-12-10 fix spacing
- 2021-12-10 fix comment
- 2021-12-10 follow the code analyzer rules
- 2021-12-05 modify to follow the code style rules
API diff
API diff in this release
diff --git a/doc/api-list/Smdn.Fundamental.Stream.Extending/Smdn.Fundamental.Stream.Extending-net45.apilist.cs b/doc/api-list/Smdn.Fundamental.Stream.Extending/Smdn.Fundamental.Stream.Extending-net45.apilist.cs
index f6ed458f..5c896700 100644
--- a/doc/api-list/Smdn.Fundamental.Stream.Extending/Smdn.Fundamental.Stream.Extending-net45.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.Stream.Extending/Smdn.Fundamental.Stream.Extending-net45.apilist.cs
@@ -1,72 +1,72 @@
-// Smdn.Fundamental.Stream.Extending.dll (Smdn.Fundamental.Stream.Extending-3.0.0 (net45))
+// Smdn.Fundamental.Stream.Extending.dll (Smdn.Fundamental.Stream.Extending-3.0.1)
// Name: Smdn.Fundamental.Stream.Extending
-// AssemblyVersion: 3.0.0.0
-// InformationalVersion: 3.0.0 (net45)
+// AssemblyVersion: 3.0.1.0
+// InformationalVersion: 3.0.1+966b4cce6833230789d049601bb35734f3d9103c
// TargetFramework: .NETFramework,Version=v4.5
// Configuration: Release
using System.IO;
using System.Threading;
using System.Threading.Tasks;
using Smdn.IO.Streams.Extending;
namespace Smdn.IO.Streams.Extending {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public class ExtendStream : ExtendStreamBase {
public ExtendStream(Stream innerStream, Stream prependStream, Stream appendStream, bool leaveInnerStreamOpen = true, bool leavePrependStreamOpen = true, bool leaveAppendStreamOpen = true) {}
public ExtendStream(Stream innerStream, byte[] prependData, byte[] appendData, bool leaveInnerStreamOpen = true) {}
protected override bool CanSeekAppendedData { get; }
protected override bool CanSeekPrependedData { get; }
public override void Close() {}
protected override int ReadAppendedData(byte[] buffer, int offset, int count) {}
protected override Task<int> ReadAppendedDataAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken) {}
protected override int ReadPrependedData(byte[] buffer, int offset, int count) {}
protected override Task<int> ReadPrependedDataAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken) {}
protected override void SetAppendedDataPosition(long position) {}
protected override void SetPrependedDataPosition(long position) {}
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public abstract class ExtendStreamBase : Stream {
protected enum StreamSection : int {
Append = 2,
EndOfStream = 3,
Prepend = 0,
Stream = 1,
}
protected ExtendStreamBase(Stream innerStream, long prependLength, long appendLength, bool leaveInnerStreamOpen) {}
public override bool CanRead { get; }
public override bool CanSeek { get; }
protected abstract bool CanSeekAppendedData { get; }
protected abstract bool CanSeekPrependedData { get; }
public override bool CanTimeout { get; }
public override bool CanWrite { get; }
public Stream InnerStream { get; }
public bool LeaveInnerStreamOpen { get; }
public override long Length { get; }
public override long Position { get; set; }
protected ExtendStreamBase.StreamSection Section { get; }
public override void Close() {}
public override void Flush() {}
public override Task FlushAsync(CancellationToken cancellationToken) {}
public override int Read(byte[] buffer, int offset, int count) {}
protected abstract int ReadAppendedData(byte[] buffer, int offset, int count);
protected abstract Task<int> ReadAppendedDataAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken);
public override Task<int> ReadAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken) {}
protected abstract int ReadPrependedData(byte[] buffer, int offset, int count);
protected abstract Task<int> ReadPrependedDataAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken);
public override long Seek(long offset, SeekOrigin origin) {}
protected abstract void SetAppendedDataPosition(long position);
public override void SetLength(long @value) {}
protected abstract void SetPrependedDataPosition(long position);
protected void ThrowIfDisposed() {}
public override void Write(byte[] buffer, int offset, int count) {}
public override Task WriteAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken) {}
}
}
diff --git a/doc/api-list/Smdn.Fundamental.Stream.Extending/Smdn.Fundamental.Stream.Extending-netstandard1.6.apilist.cs b/doc/api-list/Smdn.Fundamental.Stream.Extending/Smdn.Fundamental.Stream.Extending-netstandard1.6.apilist.cs
index 59fb2888..3d8480c6 100644
--- a/doc/api-list/Smdn.Fundamental.Stream.Extending/Smdn.Fundamental.Stream.Extending-netstandard1.6.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.Stream.Extending/Smdn.Fundamental.Stream.Extending-netstandard1.6.apilist.cs
@@ -1,72 +1,72 @@
-// Smdn.Fundamental.Stream.Extending.dll (Smdn.Fundamental.Stream.Extending-3.0.0 (netstandard1.6))
+// Smdn.Fundamental.Stream.Extending.dll (Smdn.Fundamental.Stream.Extending-3.0.1)
// Name: Smdn.Fundamental.Stream.Extending
-// AssemblyVersion: 3.0.0.0
-// InformationalVersion: 3.0.0 (netstandard1.6)
+// AssemblyVersion: 3.0.1.0
+// InformationalVersion: 3.0.1+966b4cce6833230789d049601bb35734f3d9103c
// TargetFramework: .NETStandard,Version=v1.6
// Configuration: Release
using System.IO;
using System.Threading;
using System.Threading.Tasks;
using Smdn.IO.Streams.Extending;
namespace Smdn.IO.Streams.Extending {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public class ExtendStream : ExtendStreamBase {
public ExtendStream(Stream innerStream, Stream prependStream, Stream appendStream, bool leaveInnerStreamOpen = true, bool leavePrependStreamOpen = true, bool leaveAppendStreamOpen = true) {}
public ExtendStream(Stream innerStream, byte[] prependData, byte[] appendData, bool leaveInnerStreamOpen = true) {}
protected override bool CanSeekAppendedData { get; }
protected override bool CanSeekPrependedData { get; }
protected override void Dispose(bool disposing) {}
protected override int ReadAppendedData(byte[] buffer, int offset, int count) {}
protected override Task<int> ReadAppendedDataAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken) {}
protected override int ReadPrependedData(byte[] buffer, int offset, int count) {}
protected override Task<int> ReadPrependedDataAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken) {}
protected override void SetAppendedDataPosition(long position) {}
protected override void SetPrependedDataPosition(long position) {}
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public abstract class ExtendStreamBase : Stream {
protected enum StreamSection : int {
Append = 2,
EndOfStream = 3,
Prepend = 0,
Stream = 1,
}
protected ExtendStreamBase(Stream innerStream, long prependLength, long appendLength, bool leaveInnerStreamOpen) {}
public override bool CanRead { get; }
public override bool CanSeek { get; }
protected abstract bool CanSeekAppendedData { get; }
protected abstract bool CanSeekPrependedData { get; }
public override bool CanTimeout { get; }
public override bool CanWrite { get; }
public Stream InnerStream { get; }
public bool LeaveInnerStreamOpen { get; }
public override long Length { get; }
public override long Position { get; set; }
protected ExtendStreamBase.StreamSection Section { get; }
protected override void Dispose(bool disposing) {}
public override void Flush() {}
publ...
Smdn.Fundamental.Stream version 3.0.2
Packages
Changes in this release
Change log
- 2022-02-20 update assembly version
- 2022-02-05 use Stream.ReadAsync(Memory) if available
- 2022-02-05 override Stream.WriteAsync(byte[], int, int, CancellationToken) and Stream.WriteAsync(ReadOnlyMemory, CancellationToken)
- 2022-02-05 override Stream.ReadAsync(Memory, CancellationToken)
- 2022-02-04 suppress warning CA1051
- 2022-01-02 define PackageTags
- 2022-01-02 refactor assembly attributes and package properties
API diff
API diff in this release
diff --git a/doc/api-list/Smdn.Fundamental.Stream/Smdn.Fundamental.Stream-net45.apilist.cs b/doc/api-list/Smdn.Fundamental.Stream/Smdn.Fundamental.Stream-net45.apilist.cs
index aee1a694..93449834 100644
--- a/doc/api-list/Smdn.Fundamental.Stream/Smdn.Fundamental.Stream-net45.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.Stream/Smdn.Fundamental.Stream-net45.apilist.cs
@@ -1,128 +1,129 @@
-// Smdn.Fundamental.Stream.dll (Smdn.Fundamental.Stream-3.0.1 (net45))
+// Smdn.Fundamental.Stream.dll (Smdn.Fundamental.Stream-3.0.2)
// Name: Smdn.Fundamental.Stream
-// AssemblyVersion: 3.0.1.0
-// InformationalVersion: 3.0.1 (net45)
+// AssemblyVersion: 3.0.2.0
+// InformationalVersion: 3.0.2+d1a21184e7ae3f93d7ec2857d6ec2ae152e5f517
// TargetFramework: .NETFramework,Version=v4.5
// Configuration: Release
using System;
using System.Buffers;
using System.IO;
using System.Threading;
using System.Threading.Tasks;
using Smdn.IO.Streams;
namespace Smdn.IO {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public static class StreamExtensions {
public static void CopyTo(this Stream stream, BinaryWriter writer, int bufferSize = 10240) {}
public static Task CopyToAsync(this Stream stream, BinaryWriter writer, int bufferSize = 10240, CancellationToken cancellationToken = default) {}
public static byte[] ReadToEnd(this Stream stream, int readBufferSize = 4096, int initialCapacity = 4096) {}
public static Task<byte[]> ReadToEndAsync(this Stream stream, int readBufferSize = 4096, int initialCapacity = 4096, CancellationToken cancellationToken = default) {}
public static void Write(this Stream stream, ArraySegment<byte> segment) {}
public static void Write(this Stream stream, ReadOnlySequence<byte> sequence) {}
public static Task WriteAsync(this Stream stream, ReadOnlySequence<byte> sequence, CancellationToken cancellationToken = default) {}
}
}
namespace Smdn.IO.Streams {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public sealed class ChunkedMemoryStream : Stream {
public delegate ChunkedMemoryStream.Chunk Allocator(int chunkSize);
public abstract class Chunk : IDisposable {
public byte[] Data;
protected Chunk() {}
public abstract void Dispose();
}
public static readonly int DefaultChunkSize = 40960;
public ChunkedMemoryStream() {}
public ChunkedMemoryStream(ChunkedMemoryStream.Allocator allocator) {}
public ChunkedMemoryStream(int chunkSize) {}
public ChunkedMemoryStream(int chunkSize, ChunkedMemoryStream.Allocator allocator) {}
public override bool CanRead { get; }
public override bool CanSeek { get; }
public override bool CanTimeout { get; }
public override bool CanWrite { get; }
public int ChunkSize { get; }
public override long Length { get; }
public override long Position { get; set; }
public override void Close() {}
public override void Flush() {}
public override int Read(byte[] buffer, int offset, int count) {}
public override int ReadByte() {}
public override long Seek(long offset, SeekOrigin origin) {}
public override void SetLength(long @value) {}
public byte[] ToArray() {}
public override void Write(byte[] buffer, int offset, int count) {}
public override void WriteByte(byte @value) {}
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public class NonClosingStream : Stream {
public NonClosingStream(Stream innerStream) {}
public NonClosingStream(Stream innerStream, bool writable) {}
public override bool CanRead { get; }
public override bool CanSeek { get; }
public override bool CanTimeout { get; }
public override bool CanWrite { get; }
public Stream InnerStream { get; }
public override long Length { get; }
public override long Position { get; set; }
public override void Close() {}
public override void Flush() {}
public override int Read(byte[] buffer, int offset, int count) {}
public override long Seek(long offset, SeekOrigin origin) {}
public override void SetLength(long @value) {}
public override void Write(byte[] buffer, int offset, int count) {}
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public class PartialStream :
Stream,
ICloneable
{
public PartialStream(Stream innerStream, long offset) {}
public PartialStream(Stream innerStream, long offset, bool @readonly, bool leaveInnerStreamOpen) {}
public PartialStream(Stream innerStream, long offset, bool @readonly, bool leaveInnerStreamOpen, bool seekToBegin) {}
public PartialStream(Stream innerStream, long offset, bool leaveInnerStreamOpen) {}
public PartialStream(Stream innerStream, long offset, long length) {}
public PartialStream(Stream innerStream, long offset, long length, bool @readonly, bool leaveInnerStreamOpen) {}
public PartialStream(Stream innerStream, long offset, long length, bool @readonly, bool leaveInnerStreamOpen, bool seekToBegin) {}
public PartialStream(Stream innerStream, long offset, long length, bool leaveInnerStreamOpen) {}
public override bool CanRead { get; }
public override bool CanSeek { get; }
public override bool CanTimeout { get; }
public override bool CanWrite { get; }
public Stream InnerStream { get; }
public bool LeaveInnerStreamOpen { get; }
public override long Length { get; }
public override long Position { get; set; }
public PartialStream Clone() {}
public override void Close() {}
public static PartialStream CreateNonNested(Stream innerOrPartialStream, long length) {}
public static PartialStream CreateNonNested(Stream innerOrPartialStream, long length, bool seekToBegin) {}
public static PartialStream CreateNonNested(Stream innerOrPartialStream, long offset, long length) {}
public static PartialStream CreateNonNested(Stream innerOrPartialStream, long offset, long length, bool seekToBegin) {}
public override void Flush() {}
protected long GetRemainderLength() {}
public override int Read(byte[] buffer, int offset, int count) {}
public override Task<int> ReadAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken) {}
public override int ReadByte() {}
public override long Seek(long offset, SeekOrigin origin) {}
public override void SetLength(long @value) {}
object ICloneable.Clone() {}
public override void Write(byte[] buffer, int offset, int count) {}
+ public override Task WriteAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken = default) {}
}
}
diff --git a/doc/api-list/Smdn.Fundamental.Stream/Smdn.Fundamental.Stream-netstandard1.6.apilist.cs b/doc/api-list/Smdn.Fundamental.Stream/Smdn.Fundamental.Stream-netstandard1.6.apilist.cs
index e1292134..db8161dd 100644
--- a/doc/api-list/Smdn.Fundamental.Stream/Smdn.Fundamental.Stream-netstandard1.6.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.Stream/Smdn.Fundamental.Stream-netstandard1.6.apilist.cs
@@ -1,125 +1,126 @@
-// Smdn.Fundamental.Stream.dll (Smdn.Fundamental.Stream-3.0.1 (netstandard1.6))
+// Smdn.Fundamental.Stream.dll (Smdn.Fundamental.Stream-3.0.2)
// Name: Smdn.Fundamental.Stream
-// AssemblyVersion: 3.0.1.0
-// InformationalVersion: 3.0.1 (netstandard1.6)
+// AssemblyVersion: 3.0.2.0
+// InformationalVersion: 3.0.2+d1a21184e7ae3f93d7ec2857d6ec2ae152e5f517
// TargetFramework: .NETStandard,Version=v1.6
// Configuration: Release
using System;
using System.Buffers;
using System.IO;
using System.Threading;
using System.Threading.Tasks;
using Smdn.IO.Streams;
namespace Smdn.IO {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public static class StreamExtensions {
public static void Close(this Stream stream) {}
public static void CopyTo(this Stream stream, BinaryWriter writer, int bufferSize = 10240) {}
public static Task CopyToAsync(this Stream stream, BinaryWriter writer, int bufferSize = 10240, CancellationToken cancellationToken = default) {}
public static byte[] ReadToEnd(this Stream stream, int readBufferSize = 4096, int initialCapacity = 4096) {}
public static Task<byte[]> ReadToEndAsync(this Stream stream, int readBufferSize = 4096, int initialCapacity = 4096, CancellationToken cancellationToken = default) {}
public static void Write(this Stream stream, ArraySegment<byte> se...
Smdn.Fundamental.Shell version 3.0.1
Packages
Changes in this release
Change log
- 2022-02-20 update assembly version
- 2022-02-05 fix indent
- 2022-02-04 suppress warning CA2201
- 2022-02-04 specify StringComparison explicitly
- 2022-02-04 fix warning CA1305; use string interpolation instead
- 2022-01-02 define PackageTags
- 2022-01-02 refactor assembly attributes and package properties
- 2021-12-12 fix code style
- 2021-12-12 enable package validation and define PackageValidationBaselineVersion
- 2021-12-11 use file-scoped namespace declaration
- 2021-12-11 modernize codes
- 2021-12-10 fix spacing
- 2021-12-10 disallow to use #region directives
- 2021-12-10 disable formatting on multiline type and interface declaration
- 2021-12-10 follow the code analyzer rules
- 2021-12-05 reformat
- 2021-12-05 modify to follow the code style rules
API diff
API diff in this release
diff --git a/doc/api-list/Smdn.Fundamental.Shell/Smdn.Fundamental.Shell-net45.apilist.cs b/doc/api-list/Smdn.Fundamental.Shell/Smdn.Fundamental.Shell-net45.apilist.cs
index 38a050b3..abc9ddb3 100644
--- a/doc/api-list/Smdn.Fundamental.Shell/Smdn.Fundamental.Shell-net45.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.Shell/Smdn.Fundamental.Shell-net45.apilist.cs
@@ -1,83 +1,83 @@
-// Smdn.Fundamental.Shell.dll (Smdn.Fundamental.Shell-3.0.0 (net45))
+// Smdn.Fundamental.Shell.dll (Smdn.Fundamental.Shell-3.0.1)
// Name: Smdn.Fundamental.Shell
-// AssemblyVersion: 3.0.0.0
-// InformationalVersion: 3.0.0 (net45)
+// AssemblyVersion: 3.0.1.0
+// InformationalVersion: 3.0.1+9d1fd8df380c745be94459a5479a55ac12ab3ada
// TargetFramework: .NETFramework,Version=v4.5
// Configuration: Release
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using Smdn.OperatingSystem;
namespace Smdn.OperatingSystem {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public static class EnvironmentVariable {
public static string CombineEnvironmentVariables(IDictionary<string, string> variables) {}
public static Dictionary<string, string> ParseEnvironmentVariables(string variables) {}
public static Dictionary<string, string> ParseEnvironmentVariables(string variables, bool throwIfInvalid) {}
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public class PipeOutStream : Stream {
public PipeOutStream(ProcessStartInfo startInfo) {}
public PipeOutStream(ProcessStartInfo startInfo, DataReceivedEventHandler onErrorDataReceived) {}
public PipeOutStream(ProcessStartInfo startInfo, DataReceivedEventHandler onOutputDataReceived, DataReceivedEventHandler onErrorDataReceived) {}
public override bool CanRead { get; }
public override bool CanSeek { get; }
public override bool CanTimeout { get; }
public override bool CanWrite { get; }
public override long Length { get; }
public override long Position { get; set; }
public Process Process { get; }
public ProcessStartInfo StartInfo { get; }
public int WaitForExitTimeout { get; }
public override void Close() {}
public override void Flush() {}
public override int Read(byte[] buffer, int offset, int count) {}
public override long Seek(long offset, SeekOrigin origin) {}
public override void SetLength(long @value) {}
public override void Write(byte[] buffer, int offset, int count) {}
public override void WriteByte(byte @value) {}
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public static class Shell {
public static ProcessStartInfo CreateProcessStartInfo(string command, params string[] arguments) {}
public static ProcessStartInfo CreateProcessStartInfo(string command, string arguments) {}
public static int Execute(string command, out string stdout) {}
public static int Execute(string command, out string stdout, out string stderr) {}
public static string Execute(string command) {}
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public class ShellString :
ICloneable,
IEquatable<ShellString>,
IEquatable<string>
{
public ShellString(string raw) {}
public string Expanded { get; }
public bool IsEmpty { get; }
public string Raw { get; set; }
public ShellString Clone() {}
public bool Equals(ShellString other) {}
public bool Equals(string other) {}
public override bool Equals(object obj) {}
public static string Expand(ShellString str) {}
public override int GetHashCode() {}
public static bool IsNullOrEmpty(ShellString str) {}
object ICloneable.Clone() {}
public override string ToString() {}
public static bool operator == (ShellString x, ShellString y) {}
public static explicit operator string(ShellString str) {}
public static implicit operator ShellString(string str) {}
public static bool operator != (ShellString x, ShellString y) {}
}
}
diff --git a/doc/api-list/Smdn.Fundamental.Shell/Smdn.Fundamental.Shell-net471.apilist.cs b/doc/api-list/Smdn.Fundamental.Shell/Smdn.Fundamental.Shell-net471.apilist.cs
index 40d5860e..9240edd9 100644
--- a/doc/api-list/Smdn.Fundamental.Shell/Smdn.Fundamental.Shell-net471.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.Shell/Smdn.Fundamental.Shell-net471.apilist.cs
@@ -1,83 +1,83 @@
-// Smdn.Fundamental.Shell.dll (Smdn.Fundamental.Shell-3.0.0 (net471))
+// Smdn.Fundamental.Shell.dll (Smdn.Fundamental.Shell-3.0.1)
// Name: Smdn.Fundamental.Shell
-// AssemblyVersion: 3.0.0.0
-// InformationalVersion: 3.0.0 (net471)
+// AssemblyVersion: 3.0.1.0
+// InformationalVersion: 3.0.1+9d1fd8df380c745be94459a5479a55ac12ab3ada
// TargetFramework: .NETFramework,Version=v4.7.1
// Configuration: Release
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using Smdn.OperatingSystem;
namespace Smdn.OperatingSystem {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public static class EnvironmentVariable {
public static string CombineEnvironmentVariables(IDictionary<string, string> variables) {}
public static Dictionary<string, string> ParseEnvironmentVariables(string variables) {}
public static Dictionary<string, string> ParseEnvironmentVariables(string variables, bool throwIfInvalid) {}
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public class PipeOutStream : Stream {
public PipeOutStream(ProcessStartInfo startInfo) {}
public PipeOutStream(ProcessStartInfo startInfo, DataReceivedEventHandler onErrorDataReceived) {}
public PipeOutStream(ProcessStartInfo startInfo, DataReceivedEventHandler onOutputDataReceived, DataReceivedEventHandler onErrorDataReceived) {}
public override bool CanRead { get; }
public override bool CanSeek { get; }
public override bool CanTimeout { get; }
public override bool CanWrite { get; }
public override long Length { get; }
public override long Position { get; set; }
public Process Process { get; }
public ProcessStartInfo StartInfo { get; }
public int WaitForExitTimeout { get; }
public override void Close() {}
public override void Flush() {}
public override int Read(byte[] buffer, int offset, int count) {}
public override long Seek(long offset, SeekOrigin origin) {}
public override void SetLength(long @value) {}
public override void Write(byte[] buffer, int offset, int count) {}
public override void WriteByte(byte @value) {}
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public static class Shell {
public static ProcessStartInfo CreateProcessStartInfo(string command, params string[] arguments) {}
public static ProcessStartInfo CreateProcessStartInfo(string command, string arguments) {}
public static int Execute(string command, out string stdout) {}
public static int Execute(string command, out string stdout, out string stderr) {}
public static string Execute(string command) {}
}
[TypeForwardedFrom("Smd...
Smdn.Fundamental.SIPrefix version 3.0.2
Packages
Changes in this release
Change log
- 2022-02-20 update assembly version
- 2022-02-07 use .NET SDK API symbols instead
- 2022-02-05 use int.TryParse(ReadOnlySpan) instead
- 2022-02-04 refactor
- 2022-02-04 specify NumberFormatInfo explicitly
- 2022-02-04 use invariant format provider
- 2022-02-04 fix warning CA1305; specify string format provider
- 2022-02-04 fix warning CA1305; use string interpolation instead
- 2022-01-02 define PackageTags
- 2022-01-02 refactor assembly attributes and package properties
API diff
API diff in this release
diff --git a/doc/api-list/Smdn.Fundamental.SIPrefix/Smdn.Fundamental.SIPrefix-net45.apilist.cs b/doc/api-list/Smdn.Fundamental.SIPrefix/Smdn.Fundamental.SIPrefix-net45.apilist.cs
index 066bd7a5..065bb0d0 100644
--- a/doc/api-list/Smdn.Fundamental.SIPrefix/Smdn.Fundamental.SIPrefix-net45.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.SIPrefix/Smdn.Fundamental.SIPrefix-net45.apilist.cs
@@ -1,34 +1,34 @@
-// Smdn.Fundamental.SIPrefix.dll (Smdn.Fundamental.SIPrefix-3.0.1 (net45))
+// Smdn.Fundamental.SIPrefix.dll (Smdn.Fundamental.SIPrefix-3.0.2)
// Name: Smdn.Fundamental.SIPrefix
-// AssemblyVersion: 3.0.1.0
-// InformationalVersion: 3.0.1 (net45)
+// AssemblyVersion: 3.0.2.0
+// InformationalVersion: 3.0.2+cad54ee930add3f092e48bc1f76c04e0d3e20f1b
// TargetFramework: .NETFramework,Version=v4.5
// Configuration: Release
using System;
using System.Globalization;
using Smdn.Formats;
namespace Smdn.Formats {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public class SIPrefixNumberFormatter :
ICustomFormatter,
IFormatProvider
{
protected SIPrefixNumberFormatter(CultureInfo cultureInfo, bool isReadOnly) {}
public SIPrefixNumberFormatter() {}
public SIPrefixNumberFormatter(CultureInfo cultureInfo) {}
public string ByteUnit { get; set; }
public string ByteUnitAbbreviation { get; set; }
public static SIPrefixNumberFormatter CurrentInfo { get; }
public static SIPrefixNumberFormatter InvaliantInfo { get; }
public bool IsReadOnly { get; }
public string PrefixUnitDelimiter { get; set; }
public string ValuePrefixDelimiter { get; set; }
public string Format(string format, object arg, IFormatProvider formatProvider) {}
public object GetFormat(Type formatType) {}
}
}
diff --git a/doc/api-list/Smdn.Fundamental.SIPrefix/Smdn.Fundamental.SIPrefix-netstandard1.6.apilist.cs b/doc/api-list/Smdn.Fundamental.SIPrefix/Smdn.Fundamental.SIPrefix-netstandard1.6.apilist.cs
index 81b7194f..84f2ac04 100644
--- a/doc/api-list/Smdn.Fundamental.SIPrefix/Smdn.Fundamental.SIPrefix-netstandard1.6.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.SIPrefix/Smdn.Fundamental.SIPrefix-netstandard1.6.apilist.cs
@@ -1,34 +1,34 @@
-// Smdn.Fundamental.SIPrefix.dll (Smdn.Fundamental.SIPrefix-3.0.1 (netstandard1.6))
+// Smdn.Fundamental.SIPrefix.dll (Smdn.Fundamental.SIPrefix-3.0.2)
// Name: Smdn.Fundamental.SIPrefix
-// AssemblyVersion: 3.0.1.0
-// InformationalVersion: 3.0.1 (netstandard1.6)
+// AssemblyVersion: 3.0.2.0
+// InformationalVersion: 3.0.2+cad54ee930add3f092e48bc1f76c04e0d3e20f1b
// TargetFramework: .NETStandard,Version=v1.6
// Configuration: Release
using System;
using System.Globalization;
using Smdn.Formats;
namespace Smdn.Formats {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public class SIPrefixNumberFormatter :
ICustomFormatter,
IFormatProvider
{
protected SIPrefixNumberFormatter(CultureInfo cultureInfo, bool isReadOnly) {}
public SIPrefixNumberFormatter() {}
public SIPrefixNumberFormatter(CultureInfo cultureInfo) {}
public string ByteUnit { get; set; }
public string ByteUnitAbbreviation { get; set; }
public static SIPrefixNumberFormatter CurrentInfo { get; }
public static SIPrefixNumberFormatter InvaliantInfo { get; }
public bool IsReadOnly { get; }
public string PrefixUnitDelimiter { get; set; }
public string ValuePrefixDelimiter { get; set; }
public string Format(string format, object arg, IFormatProvider formatProvider) {}
public object GetFormat(Type formatType) {}
}
}
diff --git a/doc/api-list/Smdn.Fundamental.SIPrefix/Smdn.Fundamental.SIPrefix-netstandard2.1.apilist.cs b/doc/api-list/Smdn.Fundamental.SIPrefix/Smdn.Fundamental.SIPrefix-netstandard2.1.apilist.cs
index 8419946f..02ade243 100644
--- a/doc/api-list/Smdn.Fundamental.SIPrefix/Smdn.Fundamental.SIPrefix-netstandard2.1.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.SIPrefix/Smdn.Fundamental.SIPrefix-netstandard2.1.apilist.cs
@@ -1,34 +1,34 @@
-// Smdn.Fundamental.SIPrefix.dll (Smdn.Fundamental.SIPrefix-3.0.1 (netstandard2.1))
+// Smdn.Fundamental.SIPrefix.dll (Smdn.Fundamental.SIPrefix-3.0.2)
// Name: Smdn.Fundamental.SIPrefix
-// AssemblyVersion: 3.0.1.0
-// InformationalVersion: 3.0.1 (netstandard2.1)
+// AssemblyVersion: 3.0.2.0
+// InformationalVersion: 3.0.2+cad54ee930add3f092e48bc1f76c04e0d3e20f1b
// TargetFramework: .NETStandard,Version=v2.1
// Configuration: Release
using System;
using System.Globalization;
using Smdn.Formats;
namespace Smdn.Formats {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public class SIPrefixNumberFormatter :
ICustomFormatter,
IFormatProvider
{
protected SIPrefixNumberFormatter(CultureInfo cultureInfo, bool isReadOnly) {}
public SIPrefixNumberFormatter() {}
public SIPrefixNumberFormatter(CultureInfo cultureInfo) {}
public string ByteUnit { get; set; }
public string ByteUnitAbbreviation { get; set; }
public static SIPrefixNumberFormatter CurrentInfo { get; }
public static SIPrefixNumberFormatter InvaliantInfo { get; }
public bool IsReadOnly { get; }
public string PrefixUnitDelimiter { get; set; }
public string ValuePrefixDelimiter { get; set; }
public string Format(string format, object arg, IFormatProvider formatProvider) {}
public object GetFormat(Type formatType) {}
}
}
Changes
Changes in this release
diff --git a/src/Smdn.Fundamental.SIPrefix/Smdn.Formats/SIPrefixNumberFormatter.cs b/src/Smdn.Fundamental.SIPrefix/Smdn.Formats/SIPrefixNumberFormatter.cs
index 4ead405e..815aff81 100644
--- a/src/Smdn.Fundamental.SIPrefix/Smdn.Formats/SIPrefixNumberFormatter.cs
+++ b/src/Smdn.Fundamental.SIPrefix/Smdn.Formats/SIPrefixNumberFormatter.cs
@@ -24,6 +24,8 @@ public class SIPrefixNumberFormatter : IFormatProvider, ICustomFormatter {
*/
public bool IsReadOnly { get; }
+ private readonly NumberFormatInfo numberFormatInfo;
+
private string byteUnit;
public string ByteUnit {
@@ -71,12 +73,12 @@ public class SIPrefixNumberFormatter : IFormatProvider, ICustomFormatter {
throw new ArgumentNullException(nameof(cultureInfo));
this.IsReadOnly = isReadOnly;
- // this.cultureInfo = cultureInfo;
const string singleSpace = " ";
switch (cultureInfo.TwoLetterISOLanguageName) {
case "ja":
+ numberFormatInfo = cultureInfo.NumberFormat;
byteUnit = "バイト";
valuePrefixDelimiter = singleSpace;
prefixUnitDelimiter = string.Empty;
@@ -85,6 +87,7 @@ public class SIPrefixNumberFormatter : IFormatProvider, ICustomFormatter {
break;
default:
+ numberFormatInfo = NumberFormatInfo.InvariantInfo;
byteUnit = "Bytes";
valuePrefixDelimiter = singleSpace;
prefixUnitDelimiter = singleSpace;
@@ -140,8 +143,12 @@ public class SIPrefixNumberFormatter : IFormatProvider, ICustomFormatter {
if (format.Length == 1)
digits = 0;
+#if SYSTEM_INUMBER_TRYPARSE_READONLYSPAN_OF_CHAR
+ else if (!int.TryParse(format.AsSpan(1), out digits) || digits < 0)
+#else
else if (!int.TryParse(format.Substring(1), out digits) || digits < 0)
- throw new FormatException(string.Format("The specified format '{0}' is invalid", format));
+#endif
+ throw new FormatException($"The specified format '{format}' is invalid");
decimal sign;
@@ -165,18 +172,25 @@ public class SIPrefixNumberFormatter : IFormatProvider, ICustomFormatter {
string unitString = null;
if (fileSizeFormat) {
- if (aux == 0)
- ret.Append(val.ToString("F0"));
- else
- ret.Append(val.ToString("F1"));
+ ret.Append(
+ val.ToString(
+ aux == 0 ? "F0" : "F1",
+ numberFormatInfo
+ )
+ );
unitString = abbreviate ? byteUnitAbbreviation : byteUnit;
}
else {
- if (digits == 0)
- r...
Smdn.Fundamental.PrintableEncoding.PercentEncoding version 3.0.1
Packages
Changes in this release
Change log
- 2022-02-20 update assembly version
- 2022-02-04 make private method as static
- 2022-01-02 define PackageTags
- 2022-01-02 refactor assembly attributes and package properties
- 2021-12-12 fix code style
- 2021-12-12 enable package validation and define PackageValidationBaselineVersion
- 2021-12-11 use file-scoped namespace declaration
- 2021-12-11 modernize codes
- 2021-12-10 disable formatting
- 2021-12-10 follow the code analyzer rules
- 2021-12-05 modify to follow the code style rules
- 2021-12-05 add StyleCop code analysis configurations
API diff
API diff in this release
diff --git a/doc/api-list/Smdn.Fundamental.PrintableEncoding.PercentEncoding/Smdn.Fundamental.PrintableEncoding.PercentEncoding-net45.apilist.cs b/doc/api-list/Smdn.Fundamental.PrintableEncoding.PercentEncoding/Smdn.Fundamental.PrintableEncoding.PercentEncoding-net45.apilist.cs
index 5c98c2aa..b826b167 100644
--- a/doc/api-list/Smdn.Fundamental.PrintableEncoding.PercentEncoding/Smdn.Fundamental.PrintableEncoding.PercentEncoding-net45.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.PrintableEncoding.PercentEncoding/Smdn.Fundamental.PrintableEncoding.PercentEncoding-net45.apilist.cs
@@ -1,76 +1,76 @@
-// Smdn.Fundamental.PrintableEncoding.PercentEncoding.dll (Smdn.Fundamental.PrintableEncoding.PercentEncoding-3.0.0 (net45))
+// Smdn.Fundamental.PrintableEncoding.PercentEncoding.dll (Smdn.Fundamental.PrintableEncoding.PercentEncoding-3.0.1)
// Name: Smdn.Fundamental.PrintableEncoding.PercentEncoding
-// AssemblyVersion: 3.0.0.0
-// InformationalVersion: 3.0.0 (net45)
+// AssemblyVersion: 3.0.1.0
+// InformationalVersion: 3.0.1+3f981874cd944302006694008d41e4c519abc647
// TargetFramework: .NETFramework,Version=v4.5
// Configuration: Release
using System.Security.Cryptography;
using System.Text;
using Smdn.Formats.PercentEncodings;
namespace Smdn.Formats.PercentEncodings {
[Flags]
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public enum ToPercentEncodedTransformMode : int {
EscapeSpaceToPlus = 0x00010000,
ModeMask = 0x0000ffff,
OptionMask = 0xffffffff,
Rfc2396Data = 0x00000002,
Rfc2396Uri = 0x00000001,
Rfc3986Data = 0x00000008,
Rfc3986Uri = 0x00000004,
Rfc5092Path = 0x00000020,
Rfc5092Uri = 0x00000010,
UriEscapeDataString = 0x00000008,
UriEscapeUriString = 0x00000004,
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public sealed class FromPercentEncodedTransform : ICryptoTransform {
public FromPercentEncodedTransform() {}
public FromPercentEncodedTransform(bool decodePlusToSpace) {}
public bool CanReuseTransform { get; }
public bool CanTransformMultipleBlocks { get; }
public int InputBlockSize { get; }
public int OutputBlockSize { get; }
public void Clear() {}
void IDisposable.Dispose() {}
public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset) {}
public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount) {}
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public static class PercentEncoding {
public static byte[] Decode(string str) {}
public static byte[] Decode(string str, bool decodePlusToSpace) {}
public static byte[] Encode(string str, ToPercentEncodedTransformMode mode) {}
public static byte[] Encode(string str, ToPercentEncodedTransformMode mode, Encoding encoding) {}
public static string GetDecodedString(string str) {}
public static string GetDecodedString(string str, Encoding encoding) {}
public static string GetDecodedString(string str, Encoding encoding, bool decodePlusToSpace) {}
public static string GetDecodedString(string str, bool decodePlusToSpace) {}
public static string GetEncodedString(byte[] bytes, ToPercentEncodedTransformMode mode) {}
public static string GetEncodedString(byte[] bytes, int offset, int count, ToPercentEncodedTransformMode mode) {}
public static string GetEncodedString(string str, ToPercentEncodedTransformMode mode) {}
public static string GetEncodedString(string str, ToPercentEncodedTransformMode mode, Encoding encoding) {}
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public sealed class ToPercentEncodedTransform : ICryptoTransform {
public ToPercentEncodedTransform(ToPercentEncodedTransformMode mode) {}
public bool CanReuseTransform { get; }
public bool CanTransformMultipleBlocks { get; }
public int InputBlockSize { get; }
public int OutputBlockSize { get; }
public void Clear() {}
void IDisposable.Dispose() {}
public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset) {}
public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount) {}
}
}
diff --git a/doc/api-list/Smdn.Fundamental.PrintableEncoding.PercentEncoding/Smdn.Fundamental.PrintableEncoding.PercentEncoding-netstandard1.6.apilist.cs b/doc/api-list/Smdn.Fundamental.PrintableEncoding.PercentEncoding/Smdn.Fundamental.PrintableEncoding.PercentEncoding-netstandard1.6.apilist.cs
index 6f12b56f..7ad9d813 100644
--- a/doc/api-list/Smdn.Fundamental.PrintableEncoding.PercentEncoding/Smdn.Fundamental.PrintableEncoding.PercentEncoding-netstandard1.6.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.PrintableEncoding.PercentEncoding/Smdn.Fundamental.PrintableEncoding.PercentEncoding-netstandard1.6.apilist.cs
@@ -1,76 +1,76 @@
-// Smdn.Fundamental.PrintableEncoding.PercentEncoding.dll (Smdn.Fundamental.PrintableEncoding.PercentEncoding-3.0.0 (netstandard1.6))
+// Smdn.Fundamental.PrintableEncoding.PercentEncoding.dll (Smdn.Fundamental.PrintableEncoding.PercentEncoding-3.0.1)
// Name: Smdn.Fundamental.PrintableEncoding.PercentEncoding
-// AssemblyVersion: 3.0.0.0
-// InformationalVersion: 3.0.0 (netstandard1.6)
+// AssemblyVersion: 3.0.1.0
+// InformationalVersion: 3.0.1+3f981874cd944302006694008d41e4c519abc647
// TargetFramework: .NETStandard,Version=v1.6
// Configuration: Release
using System.Security.Cryptography;
using System.Text;
using Smdn.Formats.PercentEncodings;
namespace Smdn.Formats.PercentEncodings {
[Flags]
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public enum ToPercentEncodedTransformMode : int {
EscapeSpaceToPlus = 0x00010000,
ModeMask = 0x0000ffff,
OptionMask = 0xffffffff,
Rfc2396Data = 0x00000002,
Rfc2396Uri = 0x00000001,
Rfc3986Data = 0x00000008,
Rfc3986Uri = 0x00000004,
Rfc5092Path = 0x00000020,
Rfc5092Uri = 0x00000010,
UriEscapeDataString = 0x00000008,
UriEscapeUriString = 0x00000004,
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public sealed class FromPercentEncodedTransform : ICryptoTransform {
public FromPercentEncodedTransform() {}
public FromPercentEncodedTransform(bool decodePlusToSpace) {}
public bool CanReuseTransform { get; }
public bool CanTransformMultipleBlocks { get; }
public int InputBlockSize { get; }
public int OutputBlockSize { get; }
public void Clear() {}
void IDisposable.Dispose() {}
public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset) {}
public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount) {}
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public static class PercentEncoding {
public static byte[] Decode(string str) {}
public static byte[] Decode(string str, bool decodePlusToSpace) {}
public static byte[] Encode(string str, ToPercentEncodedTransformMode mode) {}
public static byte[] Encode(string str, ToPercentEncodedTransformMode mode, Encoding encoding) {}
public static string GetDecodedString(string str) {}
public static string GetDecodedString(string str, Encoding encoding) {}
public static string GetDecodedString(string str, Encoding encoding, bool decodePlusToSpace) {}
public static string GetDecodedString(string str, bool decodePlusToSpace) {}
public static string GetEncodedString(byte[] bytes, ToPercentEncodedTransformMode mode) {}
public static string GetEncodedString(byte[] bytes, int offset, int count, ToPercentEncodedTransformMo...
Smdn.Fundamental.PrintableEncoding.MimeEncoding version 3.0.2
Packages
Changes in this release
Change log
- 2022-02-20 update assembly version
- 2022-02-05 Add target framework netstandard2.0 to resolve version mismatch in the reference of System.ValueTuple in Smdn.dll
- 2022-02-04 fix warning CA1305; use string interpolation instead
- 2022-01-02 define PackageTags
- 2022-01-02 refactor assembly attributes and package properties
API diff
API diff in this release
diff --git a/doc/api-list/Smdn.Fundamental.PrintableEncoding.MimeEncoding/Smdn.Fundamental.PrintableEncoding.MimeEncoding-net45.apilist.cs b/doc/api-list/Smdn.Fundamental.PrintableEncoding.MimeEncoding/Smdn.Fundamental.PrintableEncoding.MimeEncoding-net45.apilist.cs
index 4a866ba3..39f401ce 100644
--- a/doc/api-list/Smdn.Fundamental.PrintableEncoding.MimeEncoding/Smdn.Fundamental.PrintableEncoding.MimeEncoding-net45.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.PrintableEncoding.MimeEncoding/Smdn.Fundamental.PrintableEncoding.MimeEncoding-net45.apilist.cs
@@ -1,83 +1,83 @@
-// Smdn.Fundamental.PrintableEncoding.MimeEncoding.dll (Smdn.Fundamental.PrintableEncoding.MimeEncoding-3.0.1 (net45))
+// Smdn.Fundamental.PrintableEncoding.MimeEncoding.dll (Smdn.Fundamental.PrintableEncoding.MimeEncoding-3.0.2)
// Name: Smdn.Fundamental.PrintableEncoding.MimeEncoding
-// AssemblyVersion: 3.0.1.0
-// InformationalVersion: 3.0.1 (net45)
+// AssemblyVersion: 3.0.2.0
+// InformationalVersion: 3.0.2+1e8bd98413dde3a6f4250a3c8eaff318c493b38d
// TargetFramework: .NETFramework,Version=v4.5
// Configuration: Release
using System.IO;
using System.Text;
using Smdn.Formats.Mime;
using Smdn.Text.Encodings;
namespace Smdn.Formats.Mime {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public delegate string MimeEncodedWordConverter(Encoding charset, string encodingMethod, string encodedText);
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public enum ContentTransferEncodingMethod : int {
Base64 = 3,
Binary = 2,
EightBit = 1,
GZip64 = 6,
QuotedPrintable = 4,
SevenBit = 0,
UUEncode = 5,
Unknown = 7,
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public enum MimeEncodingMethod : int {
BEncoding = 1,
Base64 = 1,
None = 0,
QEncoding = 2,
QuotedPrintable = 2,
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public static class ContentTransferEncoding {
public const string HeaderName = "Content-Transfer-Encoding";
public static BinaryReader CreateBinaryReader(Stream stream, ContentTransferEncodingMethod encoding) {}
public static BinaryReader CreateBinaryReader(Stream stream, ContentTransferEncodingMethod encoding, Encoding charset) {}
public static BinaryReader CreateBinaryReader(Stream stream, ContentTransferEncodingMethod encoding, Encoding charset, bool leaveStreamOpen) {}
public static BinaryReader CreateBinaryReader(Stream stream, ContentTransferEncodingMethod encoding, bool leaveStreamOpen) {}
public static BinaryReader CreateBinaryReader(Stream stream, string encoding) {}
public static BinaryReader CreateBinaryReader(Stream stream, string encoding, bool leaveStreamOpen) {}
public static Stream CreateDecodingStream(Stream stream, ContentTransferEncodingMethod encoding) {}
public static Stream CreateDecodingStream(Stream stream, ContentTransferEncodingMethod encoding, bool leaveStreamOpen) {}
public static Stream CreateDecodingStream(Stream stream, string encoding) {}
public static Stream CreateDecodingStream(Stream stream, string encoding, bool leaveStreamOpen) {}
public static StreamReader CreateTextReader(Stream stream, ContentTransferEncodingMethod encoding, Encoding charset) {}
public static StreamReader CreateTextReader(Stream stream, ContentTransferEncodingMethod encoding, Encoding charset, bool leaveStreamOpen) {}
public static StreamReader CreateTextReader(Stream stream, string encoding, string charset) {}
public static StreamReader CreateTextReader(Stream stream, string encoding, string charset, bool leaveStreamOpen) {}
public static ContentTransferEncodingMethod GetEncodingMethod(string encoding) {}
public static ContentTransferEncodingMethod GetEncodingMethodThrowException(string encoding) {}
public static string GetEncodingName(ContentTransferEncodingMethod method) {}
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public static class MimeEncoding {
public static string Decode(string str) {}
public static string Decode(string str, EncodingSelectionCallback selectFallbackEncoding) {}
public static string Decode(string str, EncodingSelectionCallback selectFallbackEncoding, MimeEncodedWordConverter decodeMalformedOrUnsupported) {}
public static string Decode(string str, EncodingSelectionCallback selectFallbackEncoding, MimeEncodedWordConverter decodeMalformedOrUnsupported, out MimeEncodingMethod encoding, out Encoding charset) {}
public static string Decode(string str, EncodingSelectionCallback selectFallbackEncoding, out MimeEncodingMethod encoding, out Encoding charset) {}
public static string Decode(string str, out MimeEncodingMethod encoding, out Encoding charset) {}
public static string DecodeNullable(string str) {}
public static string DecodeNullable(string str, EncodingSelectionCallback selectFallbackEncoding) {}
public static string DecodeNullable(string str, EncodingSelectionCallback selectFallbackEncoding, MimeEncodedWordConverter decodeMalformedOrUnsupported) {}
public static string DecodeNullable(string str, EncodingSelectionCallback selectFallbackEncoding, MimeEncodedWordConverter decodeMalformedOrUnsupported, out MimeEncodingMethod encoding, out Encoding charset) {}
public static string DecodeNullable(string str, EncodingSelectionCallback selectFallbackEncoding, out MimeEncodingMethod encoding, out Encoding charset) {}
public static string DecodeNullable(string str, out MimeEncodingMethod encoding, out Encoding charset) {}
public static string Encode(string str, MimeEncodingMethod encoding) {}
public static string Encode(string str, MimeEncodingMethod encoding, Encoding charset) {}
public static string Encode(string str, MimeEncodingMethod encoding, Encoding charset, int foldingLimit, int foldingOffset) {}
public static string Encode(string str, MimeEncodingMethod encoding, Encoding charset, int foldingLimit, int foldingOffset, string foldingString) {}
public static string Encode(string str, MimeEncodingMethod encoding, int foldingLimit, int foldingOffset) {}
public static string Encode(string str, MimeEncodingMethod encoding, int foldingLimit, int foldingOffset, string foldingString) {}
}
}
diff --git a/doc/api-list/Smdn.Fundamental.PrintableEncoding.MimeEncoding/Smdn.Fundamental.PrintableEncoding.MimeEncoding-netstandard1.6.apilist.cs b/doc/api-list/Smdn.Fundamental.PrintableEncoding.MimeEncoding/Smdn.Fundamental.PrintableEncoding.MimeEncoding-netstandard1.6.apilist.cs
index 30dedd62..22d52d33 100644
--- a/doc/api-list/Smdn.Fundamental.PrintableEncoding.MimeEncoding/Smdn.Fundamental.PrintableEncoding.MimeEncoding-netstandard1.6.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.PrintableEncoding.MimeEncoding/Smdn.Fundamental.PrintableEncoding.MimeEncoding-netstandard1.6.apilist.cs
@@ -1,83 +1,83 @@
-// Smdn.Fundamental.PrintableEncoding.MimeEncoding.dll (Smdn.Fundamental.PrintableEncoding.MimeEncoding-3.0.1 (netstandard1.6))
+// Smdn.Fundamental.PrintableEncoding.MimeEncoding.dll (Smdn.Fundamental.PrintableEncoding.MimeEncoding-3.0.2)
// Name: Smdn.Fundamental.PrintableEncoding.MimeEncoding
-// AssemblyVersion: 3.0.1.0
-// InformationalVersion: 3.0.1 (netstandard1.6)
+// AssemblyVersion: 3.0.2.0
+// InformationalVersion: 3.0.2+1e8bd98413dde3a6f4250a3c8eaff318c493b38d
// TargetFramework: .NETStandard,Version=v1.6
// Configuration: Release
using System.IO;
using System.Text;
using Smdn.Formats.Mime;
using Smdn.Text.Encodings;
namespace Smdn.Formats.Mime {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public delegate string MimeEncodedWordConverter(Encoding charset, string encodingMethod, string encodedText);
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public enum ContentTransferEncodingMethod : int {
Base64 = 3,
Binary = 2,
EightBit = 1,
GZip64 = 6,
QuotedPrintable = 4,
SevenBit = 0,
UUEncode = 5,
Unknown = 7,
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public enum MimeEncodingMethod : int {
BEncoding = 1,
Base64 = 1,
None = 0,
QEncoding = 2,
QuotedPrintable = 2,
}
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public static class ContentTransferEncoding {
public const string HeaderName = "Content-Transfer-Encoding";
public static BinaryReader CreateBinaryReader(Stream stream, ContentTransferEncodingMethod encoding) {}
public static BinaryReader CreateBinaryRe...