From e943b8e13c283400a370cbd7eb5a9ed9367fb5c6 Mon Sep 17 00:00:00 2001 From: KOLANICH Date: Mon, 23 Aug 2021 19:08:09 +0300 Subject: [PATCH] Added bson --- LICENSES/Unlicense.md | 27 ++++++++++++++++++++++++++ serialization/bson/ReadMe.md | 11 +++++++++++ serialization/bson/bson.bson | Bin 0 -> 141 bytes serialization/bson/bson.bson.license | 2 ++ serialization/bson/generate.py | 28 +++++++++++++++++++++++++++ 5 files changed, 68 insertions(+) create mode 100644 LICENSES/Unlicense.md create mode 100644 serialization/bson/ReadMe.md create mode 100644 serialization/bson/bson.bson create mode 100644 serialization/bson/bson.bson.license create mode 100755 serialization/bson/generate.py diff --git a/LICENSES/Unlicense.md b/LICENSES/Unlicense.md new file mode 100644 index 0000000..7f6e5ae --- /dev/null +++ b/LICENSES/Unlicense.md @@ -0,0 +1,27 @@ +Unlicense (Public Domain) +============================ + +This is free and unencumbered software released into the public domain. + +Anyone is free to copy, modify, publish, use, compile, sell, or +distribute this software, either in source code form or as a compiled +binary, for any purpose, commercial or non-commercial, and by any +means. + +In jurisdictions that recognize copyright laws, the author or authors +of this software dedicate any and all copyright interest in the +software to the public domain. We make this dedication for the benefit +of the public at large and to the detriment of our heirs and +successors. We intend this dedication to be an overt act of +relinquishment in perpetuity of all present and future rights to this +software under copyright law. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR +OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + +For more information, please refer to <> diff --git a/serialization/bson/ReadMe.md b/serialization/bson/ReadMe.md new file mode 100644 index 0000000..8ed22c7 --- /dev/null +++ b/serialization/bson/ReadMe.md @@ -0,0 +1,11 @@ + + +## bson.bson + +Some blob of data serialized into BSON. + +Source: Own work. diff --git a/serialization/bson/bson.bson b/serialization/bson/bson.bson new file mode 100644 index 0000000000000000000000000000000000000000..e3157387562d0cd645f2e8fb2a0caa1fa9eb5253 GIT binary patch literal 141 zcmeBWU|?X$PRuMx%w&)QvY8ARn1NJgF$0q!0|$_mSe{y(pPS0Sz?zhq2bN<1G6XX7 zN*I`c(u`?2`H3Y!1_*FCF#09>LD&pG>KQZh(x99V^^7U0$(gx{IbZ>Y&L0k3d8Iiy M44fs!P$fVL02`$mJ^%m! literal 0 HcmV?d00001 diff --git a/serialization/bson/bson.bson.license b/serialization/bson/bson.bson.license new file mode 100644 index 0000000..191f634 --- /dev/null +++ b/serialization/bson/bson.bson.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: 2021 KOLANICH +SPDX-License-Identifier: Unlicense diff --git a/serialization/bson/generate.py b/serialization/bson/generate.py new file mode 100755 index 0000000..0d80fb7 --- /dev/null +++ b/serialization/bson/generate.py @@ -0,0 +1,28 @@ +#!/usr/bin/env python3 + +import datetime +import decimal +from pathlib import Path + +import dateutil.tz + +import bson + +__license__ = "Unlicense" + +etalon_dict = { + "kaitai": ["is", "awesome"], + "bin": b"bin", + "int": 2, + "float": 3.0, + "NaN": float("nan"), + "inf": float("inf"), + "decimal": decimal.Decimal(100500), + "null": None, + "ts": datetime.datetime(1970, 1, 1, 0, 0, tzinfo=dateutil.tz.tzutc()) +} + + +if __name__ == "__main__": + f = Path("bson.bson") + f.write_bytes(bson.dumps(etalon_dict))