Skip to content

Commit

Permalink
fix project again; add release notes to README
Browse files Browse the repository at this point in the history
  • Loading branch information
peteroupc committed Aug 12, 2017
1 parent 9fafbcb commit ed8f51e
Show file tree
Hide file tree
Showing 4 changed files with 120 additions and 110 deletions.
8 changes: 3 additions & 5 deletions CBOR/CBOR.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,12 @@
<TargetFramework>netstandard1.0</TargetFramework>
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
<Version>3.0.0</Version>
<Company>Peter Occil</Company>
<Owners>Peter Occil</Owners>
<Description>A C# implementation of Concise Binary Object Representation (CBOR), a general-purpose binary data format defined in RFC 7049. According to that RFC, CBOR's data model "is an extended version of the JSON data model", supporting many more types of data than JSON. This implementation was written by Peter O. and is released to the Public Domain under the CC0 Declaration.
This implementation also doubles as a reader and writer of JSON, and can convert data from JSON to CBOR and back.</Description>
<Copyright>Written by Peter O. in 2013-2017. Any copyright is released to the Public Domain.</Copyright>
<Authors>Peter Occil</Authors>
<PackageId>PeterO.Cbor</PackageId>
<PackageTitle>CBOR (Concise Binary Object Representation)</PackageTitle>
<Summary>A C# implementation of Concise Binary Object Representation (CBOR), a general-purpose binary data format defined in RFC 7049.</Summary>
<PackageRequireLicenseAcceptance>False</PackageRequireLicenseAcceptance>
<PackageLicenseUrl>http://creativecommons.org/publicdomain/zero/1.0/</PackageLicenseUrl>
<PackageProjectUrl>https://github.com/peteroupc/CBOR</PackageProjectUrl>
<PackageReleaseNotes>Version 3.0.0
Expand All @@ -23,13 +20,14 @@
- Hash code calculation was changed in this version
- Deprecated OutermostTag in favor of MostOuterTag in CBORObject
- Deprecated InnermostTag in favor of MostInnerTag in CBORObject
- Assembly was signed with a strong name
- Bug fixes

</PackageReleaseNotes>
<PackageTags>cbor data serialization binary json numbers arithmetic</PackageTags>
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>PeterO.snk</AssemblyOriginatorKeyFile>
<Summary>A C# implementation of Concise Binary Object Representation (CBOR), a general-purpose binary data format defined in RFC 7049.</Summary>
<Title>CBOR (Concise Binary Object Representation)</Title>
</PropertyGroup>

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
Expand Down
2 changes: 1 addition & 1 deletion CBORTest/CBORTest.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -133,5 +133,5 @@
</EmbeddedResource>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />

</Project>
104 changes: 104 additions & 0 deletions History.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,110 @@
Older versions release notes
---------------------

### Version 2.5.2

* Unlike version 2.4.2, signed CBOR assembly with a strong name key.
* Unlike version 2.4.2, library uses strong-named version of [`PeterO.Numbers`](https://www.nuget.org/packages/PeterO.Numbers), version 0.4.0

### Version 2.5.1

* Release was erroneous.

### Version 2.5

* Release was erroneous.

### Version 2.4.2

* Really use 0.2.2 of
[`PeterO.Numbers`](https://www.nuget.org/packages/PeterO.Numbers)
as dependency in NuGet package

### Version 2.4.1

* C# implementation now uses version 0.2.2 of
[`PeterO.Numbers`](https://www.nuget.org/packages/PeterO.Numbers)

### Version 2.4.0

* The arbitrary-precision classes in this library are being replaced
with a new library (called [`PeterO.Numbers`](https://www.nuget.org/packages/PeterO.Numbers) in C#). As a result, most
of the methods in the existing classes are obsolete. This affects the
classes `BigInteger`, `ExtendedDecimal`, `ExtendedFloat`, `ExtendedRational`,
`Rounding`, `PrecisionContext`, and `TrapException`. Changes were made
to those classes to call the new classes, and the behavior is mostly
compatible with the previous behavior (with the notable exception
of a new dependency in the CBOR library).
* After version 2.3.1, the classes in the new library were greatly changed
from what they were in version 2.3.1. Version 2.4.0 currently uses
version 0.2 of the new library, but this may change in future versions. See the
[new library's release notes](https://github.com/peteroupc/Numbers),
and this repository's commit history (from "version 2.3.1"
to "move big number library...") for details.
* The FromObject method of the CBORObject class can now convert
arbitrary-precision number objects from the new library
appropriately, such as `EInteger` and `EDecimal`. However, there are
no methods that directly take or return one of those classes, for
compatibility with version 2.0.
* Added Zero field and IsNegative property to the CBORObject class
* Added overloads to ReadJSON and FromJSONString in CBORObject class
* Added parameter in the ParseJSONNumber method of CBORDataUtilities
to preserve negative zeros
* Added CBOR decoding option to disable duplicate keys
* Fixed JSON parsing bugs

### Older Versions

In version 2.3.1:

- Fixed NuGet package
- No changes of note in the Java version

In version 2.3:

- The C# version of the library now also targets "dotnet", which should make it compatible with platform .NET runtime
environments such as the upcoming cross-platform "coreclr" runtime.
- Added GetUtf8Bytes overload to DataUtilities
- Fixed line break bug when setting lenientLineBreaks to true in the PeterO.Cbor.DataUtilities.WriteUtf8 method
- In BigInteger, fixed divideAndRemainder method, added certain methods and made other methods obsolete
- Many additions to the documentation
- Other bug fixes

In version 2.2:
- Portable Class Library compatibility expanded
- Add option to always use definite length string encoding when generating CBOR objects

Known issue in version 2.2:
- Setting `lenientLineBreaks` to `true` in the `PeterO.Cbor.DataUtilities.WriteUtf8` method
doesn't correctly write CR/LF line breaks. This will be fixed in a future version of the library.

In version 2.1:

- Added Ulp, Precision, MovePointLeft, MovePointRight, and ScaleToPowerOfTwo/-Ten methods to
ExtendedDecimal and ExtendedFloat
- Fixed double-rounding issue with ToDouble and ToFloat methods
of ExtendedDecimal
- Added Odd and OddOrZeroFiveUp rounding modes
- Added non-decimal base conversion features to BigInteger
- Other bug fixes

In version 2.0:

- Several very special characters are escaped in JSON output, such as line and paragraph
separators, and byte order marks.
- BigInteger's longValue method was fixed
- BigInteger was changed to have no public constructors
- ReadJSON now supports UTF-16 and UTF-32 in addition to UTF-8
- PrecisionContext's JavaBigDecimal object was corrected.
- Fixed bugs in parsing JSON numbers in some cases
- CBORObject's one-argument Add method now adds CBORObject.Null if passed null,
rather than throwing an exception.

**NOTE**: In the "2.0" tag for this repository, the file `DataUtilities.cs` should be copied
from the `PeterO` directory to the root directory for this repository, in order for the CBORDocs
and CBORDocs2 projects to build. This issue may probably exist in other older versions
as well.

In version 1.3:

- Added a CompareToIgnoreTags method to CBORObject
Expand Down
116 changes: 12 additions & 104 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -202,7 +202,7 @@ CBOR library in the form of a calculator.
About
-----------

Written in 2013-2014 by Peter O.
Written in 2013-2017 by Peter O.

Any copyright is dedicated to the Public Domain.
[http://creativecommons.org/publicdomain/zero/1.0/](http://creativecommons.org/publicdomain/zero/1.0/)
Expand Down Expand Up @@ -232,109 +232,17 @@ The following are some clarifications to RFC 7049.
Release Notes
-----------

### Version 2.5.2

* Unlike version 2.4.2, signed CBOR assembly with a strong name key.
* Unlike version 2.4.2, library uses strong-named version of [`PeterO.Numbers`](https://www.nuget.org/packages/PeterO.Numbers), version 0.4.0

### Version 2.5.1

* Release was erroneous.

### Version 2.5

* Release was erroneous.

### Version 2.4.2

* Really use 0.2.2 of
[`PeterO.Numbers`](https://www.nuget.org/packages/PeterO.Numbers)
as dependency in NuGet package

### Version 2.4.1

* C# implementation now uses version 0.2.2 of
[`PeterO.Numbers`](https://www.nuget.org/packages/PeterO.Numbers)

### Version 2.4.0

* The arbitrary-precision classes in this library are being replaced
with a new library (called [`PeterO.Numbers`](https://www.nuget.org/packages/PeterO.Numbers) in C#). As a result, most
of the methods in the existing classes are obsolete. This affects the
classes `BigInteger`, `ExtendedDecimal`, `ExtendedFloat`, `ExtendedRational`,
`Rounding`, `PrecisionContext`, and `TrapException`. Changes were made
to those classes to call the new classes, and the behavior is mostly
compatible with the previous behavior (with the notable exception
of a new dependency in the CBOR library).
* After version 2.3.1, the classes in the new library were greatly changed
from what they were in version 2.3.1. Version 2.4.0 currently uses
version 0.2 of the new library, but this may change in future versions. See the
[new library's release notes](https://github.com/peteroupc/Numbers),
and this repository's commit history (from "version 2.3.1"
to "move big number library...") for details.
* The FromObject method of the CBORObject class can now convert
arbitrary-precision number objects from the new library
appropriately, such as `EInteger` and `EDecimal`. However, there are
no methods that directly take or return one of those classes, for
compatibility with version 2.0.
* Added Zero field and IsNegative property to the CBORObject class
* Added overloads to ReadJSON and FromJSONString in CBORObject class
* Added parameter in the ParseJSONNumber method of CBORDataUtilities
to preserve negative zeros
* Added CBOR decoding option to disable duplicate keys
* Fixed JSON parsing bugs

### Older Versions

In version 2.3.1:

- Fixed NuGet package
- No changes of note in the Java version

In version 2.3:

- The C# version of the library now also targets "dotnet", which should make it compatible with platform .NET runtime
environments such as the upcoming cross-platform "coreclr" runtime.
- Added GetUtf8Bytes overload to DataUtilities
- Fixed line break bug when setting lenientLineBreaks to true in the PeterO.Cbor.DataUtilities.WriteUtf8 method
- In BigInteger, fixed divideAndRemainder method, added certain methods and made other methods obsolete
- Many additions to the documentation
- Other bug fixes

In version 2.2:
- Portable Class Library compatibility expanded
- Add option to always use definite length string encoding when generating CBOR objects

Known issue in version 2.2:
- Setting `lenientLineBreaks` to `true` in the `PeterO.Cbor.DataUtilities.WriteUtf8` method
doesn't correctly write CR/LF line breaks. This will be fixed in a future version of the library.

In version 2.1:

- Added Ulp, Precision, MovePointLeft, MovePointRight, and ScaleToPowerOfTwo/-Ten methods to
ExtendedDecimal and ExtendedFloat
- Fixed double-rounding issue with ToDouble and ToFloat methods
of ExtendedDecimal
- Added Odd and OddOrZeroFiveUp rounding modes
- Added non-decimal base conversion features to BigInteger
- Other bug fixes

In version 2.0:

- Several very special characters are escaped in JSON output, such as line and paragraph
separators, and byte order marks.
- BigInteger's longValue method was fixed
- BigInteger was changed to have no public constructors
- ReadJSON now supports UTF-16 and UTF-32 in addition to UTF-8
- PrecisionContext's JavaBigDecimal object was corrected.
- Fixed bugs in parsing JSON numbers in some cases
- CBORObject's one-argument Add method now adds CBORObject.Null if passed null,
rather than throwing an exception.

**NOTE**: In the "2.0" tag for this repository, the file `DataUtilities.cs` should be copied
from the `PeterO` directory to the root directory for this repository, in order for the CBORDocs
and CBORDocs2 projects to build. This issue may probably exist in other older versions
as well.
### Version 3.0.0

Version 3.0.0

- Moved from .NET Portable to .NET Standard 1.0.
- Deprecated arbitrary-precision classes in PeterO namespace; use the classes from the "PeterO.Numbers" library and namespace instead. In particular, methods that used the former classes were deprecated and often replaced with versions that use the newer classes.
- Change JSON output behavior slightly, including preserving negative zero
- Hash code calculation was changed in this version
- Deprecated OutermostTag in favor of MostOuterTag in CBORObject
- Deprecated InnermostTag in favor of MostInnerTag in CBORObject
- Bug fixes

See [History.md](https://github.com/peteroupc/CBOR/tree/master/History.md)
for release notes for older versions.
Expand Down

0 comments on commit ed8f51e

Please sign in to comment.