Releases: smdn/Smdn.Fundamentals
Releases · smdn/Smdn.Fundamentals
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...Smdn.Fundamental.PrintableEncoding.Base64 version 3.0.1
Packages
Changes in this release
Change log
- 2022-02-20 update assembly version
- 2022-02-07 use .NET SDK API symbols instead
- 2022-02-04 fix redundant code
- 2022-02-04 simplify declaration and assignment
- 2022-02-04 use nameof() expression
- 2022-02-04 reduce redundant cast
- 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-11 modernize codes
- 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.PrintableEncoding.Base64/Smdn.Fundamental.PrintableEncoding.Base64-net45.apilist.cs b/doc/api-list/Smdn.Fundamental.PrintableEncoding.Base64/Smdn.Fundamental.PrintableEncoding.Base64-net45.apilist.cs
index 7d249b49..ec6f5ab6 100644
--- a/doc/api-list/Smdn.Fundamental.PrintableEncoding.Base64/Smdn.Fundamental.PrintableEncoding.Base64-net45.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.PrintableEncoding.Base64/Smdn.Fundamental.PrintableEncoding.Base64-net45.apilist.cs
@@ -1,36 +1,36 @@
-// Smdn.Fundamental.PrintableEncoding.Base64.dll (Smdn.Fundamental.PrintableEncoding.Base64-3.0.0 (net45))
+// Smdn.Fundamental.PrintableEncoding.Base64.dll (Smdn.Fundamental.PrintableEncoding.Base64-3.0.1)
// Name: Smdn.Fundamental.PrintableEncoding.Base64
-// AssemblyVersion: 3.0.0.0
-// InformationalVersion: 3.0.0 (net45)
+// AssemblyVersion: 3.0.1.0
+// InformationalVersion: 3.0.1+c9ae68d71ad7d729c814c50b0ec0464d38c45c66
// TargetFramework: .NETFramework,Version=v4.5
// Configuration: Release
using System.IO;
using System.Security.Cryptography;
using System.Text;
namespace Smdn.Formats {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public static class Base64 {
public static Stream CreateDecodingStream(Stream stream, bool leaveStreamOpen = false) {}
public static Stream CreateEncodingStream(Stream stream, bool leaveStreamOpen = false) {}
public static ICryptoTransform CreateFromBase64Transform(bool ignoreWhiteSpaces = true) {}
public static ICryptoTransform CreateToBase64Transform() {}
public static byte[] Decode(byte[] bytes) {}
public static byte[] Decode(byte[] bytes, int offset, int count) {}
public static byte[] Decode(string str) {}
public static byte[] Encode(byte[] bytes) {}
public static byte[] Encode(byte[] bytes, int offset, int count) {}
public static byte[] Encode(string str) {}
public static byte[] Encode(string str, Encoding encoding) {}
public static string GetDecodedString(byte[] bytes) {}
public static string GetDecodedString(byte[] bytes, int offset, int count) {}
public static string GetDecodedString(string str) {}
public static string GetDecodedString(string str, Encoding encoding) {}
public static string GetEncodedString(byte[] bytes) {}
public static string GetEncodedString(byte[] bytes, int offset, int count) {}
public static string GetEncodedString(string str) {}
public static string GetEncodedString(string str, Encoding encoding) {}
}
}
diff --git a/doc/api-list/Smdn.Fundamental.PrintableEncoding.Base64/Smdn.Fundamental.PrintableEncoding.Base64-net472.apilist.cs b/doc/api-list/Smdn.Fundamental.PrintableEncoding.Base64/Smdn.Fundamental.PrintableEncoding.Base64-net472.apilist.cs
index 09c6239c..693783df 100644
--- a/doc/api-list/Smdn.Fundamental.PrintableEncoding.Base64/Smdn.Fundamental.PrintableEncoding.Base64-net472.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.PrintableEncoding.Base64/Smdn.Fundamental.PrintableEncoding.Base64-net472.apilist.cs
@@ -1,36 +1,36 @@
-// Smdn.Fundamental.PrintableEncoding.Base64.dll (Smdn.Fundamental.PrintableEncoding.Base64-3.0.0 (net472))
+// Smdn.Fundamental.PrintableEncoding.Base64.dll (Smdn.Fundamental.PrintableEncoding.Base64-3.0.1)
// Name: Smdn.Fundamental.PrintableEncoding.Base64
-// AssemblyVersion: 3.0.0.0
-// InformationalVersion: 3.0.0 (net472)
+// AssemblyVersion: 3.0.1.0
+// InformationalVersion: 3.0.1+c9ae68d71ad7d729c814c50b0ec0464d38c45c66
// TargetFramework: .NETFramework,Version=v4.7.2
// Configuration: Release
using System.IO;
using System.Security.Cryptography;
using System.Text;
namespace Smdn.Formats {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public static class Base64 {
public static Stream CreateDecodingStream(Stream stream, bool leaveStreamOpen = false) {}
public static Stream CreateEncodingStream(Stream stream, bool leaveStreamOpen = false) {}
public static ICryptoTransform CreateFromBase64Transform(bool ignoreWhiteSpaces = true) {}
public static ICryptoTransform CreateToBase64Transform() {}
public static byte[] Decode(byte[] bytes) {}
public static byte[] Decode(byte[] bytes, int offset, int count) {}
public static byte[] Decode(string str) {}
public static byte[] Encode(byte[] bytes) {}
public static byte[] Encode(byte[] bytes, int offset, int count) {}
public static byte[] Encode(string str) {}
public static byte[] Encode(string str, Encoding encoding) {}
public static string GetDecodedString(byte[] bytes) {}
public static string GetDecodedString(byte[] bytes, int offset, int count) {}
public static string GetDecodedString(string str) {}
public static string GetDecodedString(string str, Encoding encoding) {}
public static string GetEncodedString(byte[] bytes) {}
public static string GetEncodedString(byte[] bytes, int offset, int count) {}
public static string GetEncodedString(string str) {}
public static string GetEncodedString(string str, Encoding encoding) {}
}
}
diff --git a/doc/api-list/Smdn.Fundamental.PrintableEncoding.Base64/Smdn.Fundamental.PrintableEncoding.Base64-net5.0.apilist.cs b/doc/api-list/Smdn.Fundamental.PrintableEncoding.Base64/Smdn.Fundamental.PrintableEncoding.Base64-net5.0.apilist.cs
index 7e377c4c..ee1a40b5 100644
--- a/doc/api-list/Smdn.Fundamental.PrintableEncoding.Base64/Smdn.Fundamental.PrintableEncoding.Base64-net5.0.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.PrintableEncoding.Base64/Smdn.Fundamental.PrintableEncoding.Base64-net5.0.apilist.cs
@@ -1,36 +1,36 @@
-// Smdn.Fundamental.PrintableEncoding.Base64.dll (Smdn.Fundamental.PrintableEncoding.Base64-3.0.0 (net5.0))
+// Smdn.Fundamental.PrintableEncoding.Base64.dll (Smdn.Fundamental.PrintableEncoding.Base64-3.0.1)
// Name: Smdn.Fundamental.PrintableEncoding.Base64
-// AssemblyVersion: 3.0.0.0
-// InformationalVersion: 3.0.0 (net5.0)
+// AssemblyVersion: 3.0.1.0
+// InformationalVersion: 3.0.1+c9ae68d71ad7d729c814c50b0ec0464d38c45c66
// TargetFramework: .NETCoreApp,Version=v5.0
// Configuration: Release
using System.IO;
using System.Security.Cryptography;
using System.Text;
namespace Smdn.Formats {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public static class Base64 {
public static Stream CreateDecodingStream(Stream stream, bool leaveStreamOpen = false) {}
public static Stream CreateEncodingStream(Stream stream, bool leaveStreamOpen = false) {}
public static ICryptoTransform CreateFromBase64Transform(bool ignoreWhiteSpaces = true) {}
public static ICryptoTransform CreateToBase64Transform() {}
public static byte[] Decode(byte[] bytes) {}
public static byte[] Decode(byte[] bytes, int offset, int count) {}
public static byte[] Decode(string str) {}
public static byte[] Encode(byte[] bytes) {}
public static byte[] Encode(byte[] bytes, int offset, int count) {}
public static byte[] Encode(string str) {}
public static byte[] Encode(string str, Encoding encoding) {}
public static string GetDecodedString(byte[] bytes) {}
public static string GetDecodedString(byte[] bytes, int offset, int count) {}
public static string GetDecodedString(string str) {}
public static string GetDecodedString(string str, Encoding encoding) {}
public static string GetEncodedString(byte[] bytes) {}
public static string GetEncodedString(byte[] bytes, int offset, int count) {}
public static string GetEncodedString(string str) {}
public static string GetEncodedString(string str, Encoding encoding) {}
}
}
diff --git a/doc/api-list/Smdn.Fundamental.PrintableEncoding.Base64/Smdn.Fundamental.PrintableEnco...Smdn.Fundamental.FourCC version 3.0.2
Packages
Changes in this release
Change log
- 2022-02-20 update assembly version
- 2022-02-04 specify StringComparison explicitly
- 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.FourCC/Smdn.Fundamental.FourCC-net45.apilist.cs b/doc/api-list/Smdn.Fundamental.FourCC/Smdn.Fundamental.FourCC-net45.apilist.cs
index 3e79898e..b7bc18be 100644
--- a/doc/api-list/Smdn.Fundamental.FourCC/Smdn.Fundamental.FourCC-net45.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.FourCC/Smdn.Fundamental.FourCC-net45.apilist.cs
@@ -1,49 +1,49 @@
-// Smdn.Fundamental.FourCC.dll (Smdn.Fundamental.FourCC-3.0.1 (net45))
+// Smdn.Fundamental.FourCC.dll (Smdn.Fundamental.FourCC-3.0.2)
// Name: Smdn.Fundamental.FourCC
-// AssemblyVersion: 3.0.1.0
-// InformationalVersion: 3.0.1 (net45)
+// AssemblyVersion: 3.0.2.0
+// InformationalVersion: 3.0.2+ef8468f4e05e903d9dbf13b3b9739faf9a06f1e6
// TargetFramework: .NETFramework,Version=v4.5
// Configuration: Release
using System;
using Smdn;
namespace Smdn {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public readonly struct FourCC :
IEquatable<FourCC>,
IEquatable<byte[]>,
IEquatable<string>
{
public static readonly FourCC Empty; // = "\u0000\u0000\u0000\u0000"
public FourCC(ReadOnlySpan<byte> span) {}
public FourCC(ReadOnlySpan<char> span) {}
public FourCC(byte byte0, byte byte1, byte byte2, byte byte3) {}
public FourCC(byte[] @value) {}
public FourCC(byte[] @value, int startIndex) {}
public FourCC(char char0, char char1, char char2, char char3) {}
public FourCC(string @value) {}
public static FourCC CreateBigEndian(int bigEndianInt) {}
public static FourCC CreateLittleEndian(int littleEndianInt) {}
public bool Equals(FourCC other) {}
public bool Equals(byte[] other) {}
public bool Equals(string other) {}
public override bool Equals(object obj) {}
public void GetBytes(byte[] buffer, int startIndex) {}
public override int GetHashCode() {}
public byte[] ToByteArray() {}
public Guid ToCodecGuid() {}
public int ToInt32BigEndian() {}
public int ToInt32LittleEndian() {}
public override string ToString() {}
public static bool operator == (FourCC x, FourCC y) {}
public static explicit operator FourCC(byte[] fourccByteArray) {}
public static explicit operator byte[](FourCC fourcc) {}
public static explicit operator string(FourCC fourcc) {}
public static implicit operator FourCC(string fourccString) {}
public static bool operator != (FourCC x, FourCC y) {}
}
}
diff --git a/doc/api-list/Smdn.Fundamental.FourCC/Smdn.Fundamental.FourCC-netstandard1.6.apilist.cs b/doc/api-list/Smdn.Fundamental.FourCC/Smdn.Fundamental.FourCC-netstandard1.6.apilist.cs
index 768a55d1..9cc345ce 100644
--- a/doc/api-list/Smdn.Fundamental.FourCC/Smdn.Fundamental.FourCC-netstandard1.6.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.FourCC/Smdn.Fundamental.FourCC-netstandard1.6.apilist.cs
@@ -1,49 +1,49 @@
-// Smdn.Fundamental.FourCC.dll (Smdn.Fundamental.FourCC-3.0.1 (netstandard1.6))
+// Smdn.Fundamental.FourCC.dll (Smdn.Fundamental.FourCC-3.0.2)
// Name: Smdn.Fundamental.FourCC
-// AssemblyVersion: 3.0.1.0
-// InformationalVersion: 3.0.1 (netstandard1.6)
+// AssemblyVersion: 3.0.2.0
+// InformationalVersion: 3.0.2+ef8468f4e05e903d9dbf13b3b9739faf9a06f1e6
// TargetFramework: .NETStandard,Version=v1.6
// Configuration: Release
using System;
using Smdn;
namespace Smdn {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public readonly struct FourCC :
IEquatable<FourCC>,
IEquatable<byte[]>,
IEquatable<string>
{
public static readonly FourCC Empty; // = "\u0000\u0000\u0000\u0000"
public FourCC(ReadOnlySpan<byte> span) {}
public FourCC(ReadOnlySpan<char> span) {}
public FourCC(byte byte0, byte byte1, byte byte2, byte byte3) {}
public FourCC(byte[] @value) {}
public FourCC(byte[] @value, int startIndex) {}
public FourCC(char char0, char char1, char char2, char char3) {}
public FourCC(string @value) {}
public static FourCC CreateBigEndian(int bigEndianInt) {}
public static FourCC CreateLittleEndian(int littleEndianInt) {}
public bool Equals(FourCC other) {}
public bool Equals(byte[] other) {}
public bool Equals(string other) {}
public override bool Equals(object obj) {}
public void GetBytes(byte[] buffer, int startIndex) {}
public override int GetHashCode() {}
public byte[] ToByteArray() {}
public Guid ToCodecGuid() {}
public int ToInt32BigEndian() {}
public int ToInt32LittleEndian() {}
public override string ToString() {}
public static bool operator == (FourCC x, FourCC y) {}
public static explicit operator FourCC(byte[] fourccByteArray) {}
public static explicit operator byte[](FourCC fourcc) {}
public static explicit operator string(FourCC fourcc) {}
public static implicit operator FourCC(string fourccString) {}
public static bool operator != (FourCC x, FourCC y) {}
}
}
diff --git a/doc/api-list/Smdn.Fundamental.FourCC/Smdn.Fundamental.FourCC-netstandard2.1.apilist.cs b/doc/api-list/Smdn.Fundamental.FourCC/Smdn.Fundamental.FourCC-netstandard2.1.apilist.cs
index d5533220..a68d8167 100644
--- a/doc/api-list/Smdn.Fundamental.FourCC/Smdn.Fundamental.FourCC-netstandard2.1.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.FourCC/Smdn.Fundamental.FourCC-netstandard2.1.apilist.cs
@@ -1,49 +1,49 @@
-// Smdn.Fundamental.FourCC.dll (Smdn.Fundamental.FourCC-3.0.1 (netstandard2.1))
+// Smdn.Fundamental.FourCC.dll (Smdn.Fundamental.FourCC-3.0.2)
// Name: Smdn.Fundamental.FourCC
-// AssemblyVersion: 3.0.1.0
-// InformationalVersion: 3.0.1 (netstandard2.1)
+// AssemblyVersion: 3.0.2.0
+// InformationalVersion: 3.0.2+ef8468f4e05e903d9dbf13b3b9739faf9a06f1e6
// TargetFramework: .NETStandard,Version=v2.1
// Configuration: Release
using System;
using Smdn;
namespace Smdn {
[TypeForwardedFrom("Smdn, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null")]
public readonly struct FourCC :
IEquatable<FourCC>,
IEquatable<byte[]>,
IEquatable<string>
{
public static readonly FourCC Empty; // = "\u0000\u0000\u0000\u0000"
public FourCC(ReadOnlySpan<byte> span) {}
public FourCC(ReadOnlySpan<char> span) {}
public FourCC(byte byte0, byte byte1, byte byte2, byte byte3) {}
public FourCC(byte[] @value) {}
public FourCC(byte[] @value, int startIndex) {}
public FourCC(char char0, char char1, char char2, char char3) {}
public FourCC(string @value) {}
public static FourCC CreateBigEndian(int bigEndianInt) {}
public static FourCC CreateLittleEndian(int littleEndianInt) {}
public bool Equals(FourCC other) {}
public bool Equals(byte[] other) {}
public bool Equals(string other) {}
public override bool Equals(object obj) {}
public void GetBytes(byte[] buffer, int startIndex) {}
public override int GetHashCode() {}
public byte[] ToByteArray() {}
public Guid ToCodecGuid() {}
public int ToInt32BigEndian() {}
public int ToInt32LittleEndian() {}
public override string ToString() {}
public static bool operator == (FourCC x, FourCC y) {}
public static explicit operator FourCC(byte[] fourccByteArray) {}
public static explicit operator byte[](FourCC fourcc) {}
public static explicit operator string(FourCC fourcc) {}
public static implicit operator FourCC(string fourccString) {}
public static bool operator != (FourCC x, FourCC y) {}
}
}
Changes
Changes in this release
diff --git a/src/Smdn.Fundamental.FourCC/Smdn.Fundamental.FourCC.csproj b/src/Smdn.Fundamental.FourCC/Smdn.Fundamental.FourCC.csproj
index 0ecd5141..0b0d4247 100644
--- a/src/Smdn.Fundamental.FourCC/Smdn.Fundamental.FourCC.csproj
+++ b/src/Smdn.Fundamental.FourCC/Smdn.Fundamental.FourCC.csproj
@@ -5,16 +5,17 @@ SPDX-License-Identifier: MIT
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>net45;netstandard2.1;netstandard1.6</TargetFrameworks>
- <VersionPrefix>3.0.1</VersionPrefix>
+ <VersionPrefix>3.0.2</VersionPrefix>
<VersionSuffix></VersionSuffix>
<PackageValidationBaselineVersion>3.0.0</PackageValidationBaselineVersion>
</PropertyGroup>
- <PropertyGroup Label="metadata">
+ <PropertyGroup Label="assembly attributes">
<CopyrightYear>2021</CopyrightYear>
+ </PropertyGroup>
- <!-- NuGet -->
- <!--<PackageTags></PackageTags>-->
+ <PropertyGroup Label="package properties">
+ <PackageTags>FourCC</PackageTags>
</PropertyGroup>
<ItemGroup>
diff --git a/src/Smdn.Fundamental.FourCC/Smdn/FourCC.cs b/src/Smdn.Fundamental.FourCC/Smdn/FourCC.cs
index 9c94719f..4a713fa3 100644
--- a/src/Smdn.Fundamental.FourCC/Smdn/FourCC.cs
+++ b/src/Smdn.Fundamental.FourCC/Smdn/FourCC.cs
@@ -192,7 +192,7 @@ public readonly struct FourCC :
=> other.fourcc == this.fourcc;
...Smdn.Fundamental.FileSystem version 3.0.1
Packages
Changes in this release
Change log
- 2022-02-20 update assembly version
- 2022-02-04 use Environment.CurrentManagedThreadId instead
- 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
- 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 refactor
- 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.FileSystem/Smdn.Fundamental.FileSystem-net45.apilist.cs b/doc/api-list/Smdn.Fundamental.FileSystem/Smdn.Fundamental.FileSystem-net45.apilist.cs
index 11652029..f2747244 100644
--- a/doc/api-list/Smdn.Fundamental.FileSystem/Smdn.Fundamental.FileSystem-net45.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.FileSystem/Smdn.Fundamental.FileSystem-net45.apilist.cs
@@ -1,57 +1,57 @@
-// Smdn.Fundamental.FileSystem.dll (Smdn.Fundamental.FileSystem-3.0.0 (net45))
+// Smdn.Fundamental.FileSystem.dll (Smdn.Fundamental.FileSystem-3.0.1)
// Name: Smdn.Fundamental.FileSystem
-// AssemblyVersion: 3.0.0.0
-// InformationalVersion: 3.0.0 (net45)
+// AssemblyVersion: 3.0.1.0
+// InformationalVersion: 3.0.1+ee33dd31cbfad4b6662792a2357fd3c536359f38
// TargetFramework: .NETFramework,Version=v4.5
// Configuration: Release
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
using Smdn;
namespace Smdn.IO {
public static class DirectoryInfoExtensions {
public static IEnumerable<DirectoryInfo> GetDirectories(this DirectoryInfo directory, Predicate<DirectoryInfo> searchPattern) {}
public static IEnumerable<DirectoryInfo> GetDirectories(this DirectoryInfo directory, SearchOption searchOption, Predicate<DirectoryInfo> searchPattern) {}
public static IEnumerable<FileSystemInfo> GetFileSystemInfos(this DirectoryInfo directory, Predicate<FileSystemInfo> searchPattern) {}
public static IEnumerable<FileSystemInfo> GetFileSystemInfos(this DirectoryInfo directory, SearchOption searchOption, Predicate<FileSystemInfo> searchPattern) {}
public static IEnumerable<FileInfo> GetFiles(this DirectoryInfo directory, Predicate<FileInfo> searchPattern) {}
public static IEnumerable<FileInfo> GetFiles(this DirectoryInfo directory, SearchOption searchOption, Predicate<FileInfo> searchPattern) {}
}
public static class DirectoryUtils {
public static IEnumerable<string> GetDirectories(string directory, Predicate<string> searchPattern) {}
public static IEnumerable<string> GetDirectories(string directory, SearchOption searchOption, Predicate<string> searchPattern) {}
public static IEnumerable<string> GetFiles(string directory, Predicate<string> searchPattern) {}
public static IEnumerable<string> GetFiles(string directory, SearchOption searchOption, Predicate<string> searchPattern) {}
}
public static class PathUtils {
public static StringComparer DefaultPathStringComparer { get; }
public static StringComparison DefaultPathStringComparison { get; }
public static bool AreExtensionEqual(string path, string pathOrExtension) {}
public static bool ArePathEqual(string pathX, string pathY) {}
public static bool AreSameFile(string pathX, string pathY) {}
public static string ChangeDirectoryName(string path, string newDirectoryName) {}
public static string ChangeFileName(string path, string newFileName) {}
public static bool ContainsShellEscapeChar(string path) {}
public static bool ContainsShellEscapeChar(string path, Encoding encoding) {}
public static bool ContainsShellPipeChar(string path) {}
public static bool ContainsShellPipeChar(string path, Encoding encoding) {}
public static bool ContainsShellSpecialChars(string path, Encoding encoding, params byte[] specialChars) {}
public static string GetRelativePath(string basePath, string path) {}
public static string RemoveInvalidFileNameChars(string path) {}
public static string RemoveInvalidPathChars(string path) {}
public static string RenameUnique(string file) {}
public static string ReplaceInvalidFileNameChars(string path, ReplaceCharEvaluator evaluator) {}
public static string ReplaceInvalidFileNameChars(string path, string newValue) {}
public static string ReplaceInvalidFileNameCharsWithBlanks(string path) {}
public static string ReplaceInvalidPathChars(string path, ReplaceCharEvaluator evaluator) {}
public static string ReplaceInvalidPathChars(string path, string newValue) {}
public static string ReplaceInvalidPathCharsWithBlanks(string path) {}
}
}
diff --git a/doc/api-list/Smdn.Fundamental.FileSystem/Smdn.Fundamental.FileSystem-netstandard1.6.apilist.cs b/doc/api-list/Smdn.Fundamental.FileSystem/Smdn.Fundamental.FileSystem-netstandard1.6.apilist.cs
index c50f20f9..a0cc10b0 100644
--- a/doc/api-list/Smdn.Fundamental.FileSystem/Smdn.Fundamental.FileSystem-netstandard1.6.apilist.cs
+++ b/doc/api-list/Smdn.Fundamental.FileSystem/Smdn.Fundamental.FileSystem-netstandard1.6.apilist.cs
@@ -1,54 +1,54 @@
-// Smdn.Fundamental.FileSystem.dll (Smdn.Fundamental.FileSystem-3.0.0 (netstandard1.6))
+// Smdn.Fundamental.FileSystem.dll (Smdn.Fundamental.FileSystem-3.0.1)
// Name: Smdn.Fundamental.FileSystem
-// AssemblyVersion: 3.0.0.0
-// InformationalVersion: 3.0.0 (netstandard1.6)
+// AssemblyVersion: 3.0.1.0
+// InformationalVersion: 3.0.1+ee33dd31cbfad4b6662792a2357fd3c536359f38
// TargetFramework: .NETStandard,Version=v1.6
// Configuration: Release
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
using Smdn;
namespace Smdn.IO {
public static class DirectoryInfoExtensions {
public static IEnumerable<DirectoryInfo> GetDirectories(this DirectoryInfo directory, Predicate<DirectoryInfo> searchPattern) {}
public static IEnumerable<DirectoryInfo> GetDirectories(this DirectoryInfo directory, SearchOption searchOption, Predicate<DirectoryInfo> searchPattern) {}
public static IEnumerable<FileSystemInfo> GetFileSystemInfos(this DirectoryInfo directory, Predicate<FileSystemInfo> searchPattern) {}
public static IEnumerable<FileSystemInfo> GetFileSystemInfos(this DirectoryInfo directory, SearchOption searchOption, Predicate<FileSystemInfo> searchPattern) {}
public static IEnumerable<FileInfo> GetFiles(this DirectoryInfo directory, Predicate<FileInfo> searchPattern) {}
public static IEnumerable<FileInfo> GetFiles(this DirectoryInfo directory, SearchOption searchOption, Predicate<FileInfo> searchPattern) {}
}
public static class DirectoryUtils {
public static IEnumerable<string> GetDirectories(string directory, Predicate<string> searchPattern) {}
public static IEnumerable<string> GetDirectories(string directory, SearchOption searchOption, Predicate<string> searchPattern) {}
public static IEnumerable<string> GetFiles(string directory, Predicate<string> searchPattern) {}
public static IEnumerable<string> GetFiles(string directory, SearchOption searchOption, Predicate<string> searchPattern) {}
}
public static class PathUtils {
public static StringComparer DefaultPathStringComparer { get; }
public static StringComparison DefaultPathStringComparison { get; }
public static bool AreExtensionEqual(string path, string pathOrExtension) {}
public static bool ArePathEqual(string pathX, string pathY) {}
public static bool AreSameFile(string pathX, string pathY) {}
public static string ChangeDirectoryName(string path, string newDirectoryName) {}
public static string ChangeFileName(string path, string newFileName) {}
public static bool ContainsShellEscapeChar(string path, Encoding encoding) {}
public static bool ContainsShellPipeChar(string path, Encoding encoding) {}
public static bool ContainsShellSpecialChars(string path, Encoding encoding, params byte[] specialChars) {}
public static string GetRelativePath(string basePath, string path) {}
public static string RemoveInvalidFileNameChars(string path) {}
public static string RemoveInvalidPathChars(string path) {}
public static string ReplaceInvalidFileNameChars(string path, ReplaceCharEvaluator evaluator) {}
public static string ReplaceInvalidFileNameChars(string path, ...