Skip to content
This repository was archived by the owner on May 16, 2022. It is now read-only.

Commit 8aeaa70

Browse files
committed
Add MaximumSizeOfBytes option, 1.3.1
1 parent ef0e850 commit 8aeaa70

File tree

37 files changed

+127
-75
lines changed

37 files changed

+127
-75
lines changed

README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -447,7 +447,7 @@ Deserialize speed is Infinitely fast(but of course, it is **unfair**, ZeroFormat
447447
* Don't create intermediate utility instance(XxxWriter/Reader, XxxContext, etc...)
448448
* Heavyly tuned dynamic il code generation: [DynamicObjectFormatter.cs](https://github.com/neuecc/ZeroFormatter/blob/853a0d0c6b7de66b8447b426ab47b90336deca2c/src/ZeroFormatter/Formatters/DynamicFormatter.cs#L212-L980)
449449
* Getting cached generated formatter on static generic field(don't use dictinary-cache because dictionary lookup is overhead): [Formatter.cs](https://github.com/neuecc/ZeroFormatter/blob/853a0d0c6b7de66b8447b426ab47b90336deca2c/src/ZeroFormatter/Formatters/Formatter.cs)
450-
* Enum serialize underlying value only and uses fastest cast technique: [EnumFormatter.cs](https://github.com/neuecc/ZeroFormatter/blob/853a0d0c6b7de66b8447b426ab47b90336deca2c/src/ZeroFormatter/Formatters/EnumFormatter.cs)
450+
* Enum is serialized only underlying-value and uses fastest cast technique: [EnumFormatter.cs](https://github.com/neuecc/ZeroFormatter/blob/853a0d0c6b7de66b8447b426ab47b90336deca2c/src/ZeroFormatter/Formatters/EnumFormatter.cs)
451451

452452
The result is achieved from both sides of implementation and binary layout. ZeroFormatter's binary layout is tuned for serialize/deserialize speed(this is advantage than other serializer).
453453

@@ -476,6 +476,8 @@ If you want to use non-generic API, there are exists under `ZeroFormatterSeriali
476476

477477
> NonGeneric API is not supported in Unity. NonGeneric API is a bit slower than the generic API. Because of the lookup of the serializer by type and the cost of boxing if the value is a value type are costly. We recommend using generic API if possible.
478478
479+
`ZeroFormatterSerializer.MaximumSizeOfBytes` is max size per message of serialize/deserialize. The default is 67MB. This limitation is for security issue(block, attack of OutOfMemory). If you want to know more information of this topics, see: [ProtocolBuffers Techniques - Large Data Sets](https://developers.google.com/protocol-buffers/docs/techniques#large-data).
480+
479481
Extensibility
480482
---
481483
ZeroFormatter can become custom binary layout framework. You can create own typed formatter. For example, add supports `Guid` and `Uri`.

nuget/Unity_Releases_1.3.0.zip

-4.62 MB
Binary file not shown.

nuget/Unity_Releases_1.3.1.zip

4.62 MB
Binary file not shown.

nuget/ZeroFormatter.1.3.1.nupkg

108 KB
Binary file not shown.
20.1 KB
Binary file not shown.
4.79 MB
Binary file not shown.

nuget/ZeroFormatter.Interfaces.nuspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
33
<metadata>
44
<id>ZeroFormatter.Interfaces</id>
5-
<version>1.3.0</version>
5+
<version>1.3.1</version>
66
<title>ZeroFormatter.Interfaces</title>
77
<authors>neuecc</authors>
88
<owners>y.neuecc</owners>
37.3 KB
Binary file not shown.

nuget/ZeroFormatter.Unity.nuspec

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
33
<metadata>
44
<id>ZeroFormatter.Unity</id>
5-
<version>1.3.0</version>
5+
<version>1.3.1</version>
66
<title>ZeroFormatter.Unity</title>
77
<authors>neuecc</authors>
88
<owners>y.neuecc</owners>
@@ -17,7 +17,7 @@
1717
</frameworkAssemblies>
1818
<dependencies>
1919
<group targetFramework="Unity Full v3.5">
20-
<dependency id="ZeroFormatter.Interfaces" version="1.3.0" />
20+
<dependency id="ZeroFormatter.Interfaces" version="1.3.1" />
2121
</group>
2222
</dependencies>
2323
</metadata>

nuget/ZeroFormatter.nuspec

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
33
<metadata>
44
<id>ZeroFormatter</id>
5-
<version>1.3.0</version>
5+
<version>1.3.1</version>
66
<title>ZeroFormatter</title>
77
<authors>neuecc</authors>
88
<owners>y.neuecc</owners>
@@ -17,10 +17,10 @@
1717
</frameworkAssemblies>
1818
<dependencies>
1919
<group targetFramework=".NETFramework4.5">
20-
<dependency id="ZeroFormatter.Interfaces" version="1.3.0" />
20+
<dependency id="ZeroFormatter.Interfaces" version="1.3.1" />
2121
</group>
2222
<group targetFramework=".NETStandard1.6">
23-
<dependency id="ZeroFormatter.Interfaces" version="1.3.0" />
23+
<dependency id="ZeroFormatter.Interfaces" version="1.3.1" />
2424
<dependency id="System.Reflection.Emit" version="4.0.1" />
2525
<dependency id="System.Runtime" version="4.1.0" />
2626
<dependency id="System.Runtime.Extensions" version="4.1.0" />

0 commit comments

Comments
 (0)