ssrjson-benchmark 0.0.1rc1__tar.gz → 0.0.1rc2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of ssrjson-benchmark might be problematic. Click here for more details.

Files changed (31) hide show
  1. {ssrjson_benchmark-0.0.1rc1/src/ssrjson_benchmark.egg-info → ssrjson_benchmark-0.0.1rc2}/PKG-INFO +11 -1
  2. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/pyproject.toml +10 -3
  3. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/setup.py +1 -21
  4. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/src/benchmark.c +0 -11
  5. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/src/ssrjson_benchmark/__init__.py +3 -1
  6. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/src/ssrjson_benchmark/benchmark_main.py +18 -2
  7. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2/src/ssrjson_benchmark.egg-info}/PKG-INFO +11 -1
  8. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/src/ssrjson_benchmark.egg-info/SOURCES.txt +1 -0
  9. ssrjson_benchmark-0.0.1rc2/src/ssrjson_benchmark.egg-info/requires.txt +10 -0
  10. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/CMakeLists.txt +0 -0
  11. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/LICENSE +0 -0
  12. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/MANIFEST.in +0 -0
  13. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/README.md +0 -0
  14. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/cmake/XcodeProperty.cmake +0 -0
  15. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/setup.cfg +0 -0
  16. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/src/ssrjson_benchmark/__main__.py +0 -0
  17. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/src/ssrjson_benchmark/_files/MotionsQuestionsAnswersQuestions2016.json +0 -0
  18. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/src/ssrjson_benchmark/_files/apache.json +0 -0
  19. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/src/ssrjson_benchmark/_files/canada.json +0 -0
  20. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/src/ssrjson_benchmark/_files/ctm.json +0 -0
  21. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/src/ssrjson_benchmark/_files/github.json +0 -0
  22. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/src/ssrjson_benchmark/_files/instruments.json +0 -0
  23. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/src/ssrjson_benchmark/_files/mesh.json +0 -0
  24. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/src/ssrjson_benchmark/_files/simple_object.json +0 -0
  25. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/src/ssrjson_benchmark/_files/simple_object_zh.json +0 -0
  26. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/src/ssrjson_benchmark/_files/truenull.json +0 -0
  27. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/src/ssrjson_benchmark/_files/tweet.json +0 -0
  28. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/src/ssrjson_benchmark/_files/twitter.json +0 -0
  29. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/src/ssrjson_benchmark/template.md +0 -0
  30. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/src/ssrjson_benchmark.egg-info/dependency_links.txt +0 -0
  31. {ssrjson_benchmark-0.0.1rc1 → ssrjson_benchmark-0.0.1rc2}/src/ssrjson_benchmark.egg-info/top_level.txt +0 -0
@@ -1,11 +1,13 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ssrjson-benchmark
3
- Version: 0.0.1rc1
3
+ Version: 0.0.1rc2
4
4
  Summary: benchmark of ssrJSON
5
5
  Author-email: Eritque Arcus <eritque-arcus@ikuyo.dev>, Antares <antares0982@gmail.com>
6
6
  License-Expression: MIT
7
7
  Project-URL: Homepage, https://github.com/Nambers/ssrJSON-benchmark
8
8
  Project-URL: Issues, https://github.com/Nambers/ssrJSON-benchmark/issues
9
+ Project-URL: Repository, https://github.com/Nambers/ssrJSON-benchmark.git
10
+ Keywords: ssrjson,benchmark,json
9
11
  Classifier: Development Status :: 5 - Production/Stable
10
12
  Classifier: Environment :: Console
11
13
  Classifier: Intended Audience :: Developers
@@ -15,6 +17,14 @@ Classifier: Operating System :: OS Independent
15
17
  Requires-Python: >=3.9
16
18
  Description-Content-Type: text/markdown
17
19
  License-File: LICENSE
20
+ Requires-Dist: ssrjson
21
+ Requires-Dist: orjson
22
+ Requires-Dist: matplotlib
23
+ Provides-Extra: pdf
24
+ Requires-Dist: svglib; extra == "pdf"
25
+ Requires-Dist: reportlab; extra == "pdf"
26
+ Provides-Extra: cpuinfo
27
+ Requires-Dist: py-cpuinfo; extra == "cpuinfo"
18
28
  Dynamic: license-file
19
29
 
20
30
  # ssrJSON-benchmark
@@ -4,14 +4,15 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "ssrjson-benchmark"
7
- version = "0.0.1rc1"
7
+ version = "0.0.1rc2"
8
8
  authors = [
9
- { name="Eritque Arcus", email="eritque-arcus@ikuyo.dev" },
10
- { name = "Antares", email = "antares0982@gmail.com" }
9
+ { name = "Eritque Arcus", email = "eritque-arcus@ikuyo.dev" },
10
+ { name = "Antares", email = "antares0982@gmail.com" },
11
11
  ]
12
12
  description = "benchmark of ssrJSON"
13
13
  readme = "README.md"
14
14
  requires-python = ">=3.9"
15
+ keywords = ["ssrjson", "benchmark", "json"]
15
16
  classifiers = [
16
17
  "Development Status :: 5 - Production/Stable",
17
18
  "Environment :: Console",
@@ -22,7 +23,13 @@ classifiers = [
22
23
  ]
23
24
  license = "MIT"
24
25
  license-files = ["LICENSE"]
26
+ dependencies = ["ssrjson", "orjson", "matplotlib"]
27
+
28
+ [project.optional-dependencies]
29
+ pdf = ["svglib", "reportlab"]
30
+ cpuinfo = ["py-cpuinfo"]
25
31
 
26
32
  [project.urls]
27
33
  Homepage = "https://github.com/Nambers/ssrJSON-benchmark"
28
34
  Issues = "https://github.com/Nambers/ssrJSON-benchmark/issues"
35
+ Repository = "https://github.com/Nambers/ssrJSON-benchmark.git"
@@ -2,23 +2,8 @@ import os
2
2
  import shutil
3
3
  import subprocess
4
4
 
5
- from setuptools import Extension, find_packages, setup
5
+ from setuptools import Extension, setup
6
6
  from setuptools.command.build_ext import build_ext
7
- from pathlib import Path
8
-
9
-
10
- def find_version(src_file_content: str):
11
- # find macro SSRJSON_BENCHMARK_VERSION
12
- prefix = "#define SSRJSON_BENCHMARK_VERSION"
13
- for line in src_file_content.splitlines():
14
- if line.startswith(prefix):
15
- version = line[len(prefix) :].strip()[1:-1]
16
- return version
17
- raise RuntimeError("Cannot find SSRJSON_BENCHMARK_VERSION in source file")
18
-
19
-
20
- with open("./src/benchmark.c", "r", encoding="utf-8") as f:
21
- version_string = find_version(f.read())
22
7
 
23
8
 
24
9
  class CMakeBuild(build_ext):
@@ -63,11 +48,6 @@ class CMakeBuild(build_ext):
63
48
 
64
49
 
65
50
  setup(
66
- name="ssrjson_benchmark",
67
- version=version_string,
68
- description="Benchmark for ssrJSON",
69
- long_description=Path("README.md").read_text(encoding="utf-8"),
70
- long_description_content_type="text/markdown",
71
51
  ext_modules=[
72
52
  Extension(
73
53
  "_ssrjson_benchmark",
@@ -23,8 +23,6 @@
23
23
  #include <Python.h>
24
24
  #include <stdbool.h>
25
25
 
26
- #define SSRJSON_BENCHMARK_VERSION "0.0.1rc1"
27
-
28
26
  /** compiler builtin check (since gcc 10.0, clang 2.6, icc 2021) */
29
27
  #ifndef has_builtin
30
28
  # ifdef __has_builtin
@@ -341,14 +339,5 @@ PyMODINIT_FUNC PyInit__ssrjson_benchmark(void) {
341
339
  if (module == NULL) {
342
340
  return NULL;
343
341
  }
344
- // add version string
345
- {
346
- int err = PyModule_AddStringConstant(module, "__version__", SSRJSON_BENCHMARK_VERSION);
347
- if (err) {
348
- Py_DECREF(module);
349
- return NULL;
350
- }
351
- }
352
-
353
342
  return module;
354
343
  }
@@ -4,7 +4,9 @@ from .benchmark_main import (
4
4
  generate_report,
5
5
  run_benchmark_default,
6
6
  )
7
- from ._ssrjson_benchmark import __version__
7
+ from importlib.metadata import version
8
+
9
+ __version__ = version("ssrjson-benchmark")
8
10
 
9
11
  __all__ = [
10
12
  "run_benchmark",
@@ -230,9 +230,10 @@ def _run_benchmark(
230
230
  if isinstance(input_data, bytes)
231
231
  else _ssrjson_benchmark.inspect_pyunicode(input_data)[1]
232
232
  )
233
- cur_obj["ssrjson_bytes_per_sec"] = ssrjson.dumps(
233
+ cur_obj["ssrjson_bytes_per_sec"] = (
234
234
  size * repeat_times / (cur_obj[name]["speed"] / _NS_IN_ONE_S)
235
235
  )
236
+
236
237
  for index in INDEXES:
237
238
  basename = name.split(".")[0]
238
239
  if baseline_data[index] == 0:
@@ -263,7 +264,9 @@ def run_file_benchmark(
263
264
 
264
265
 
265
266
  def get_head_rev_name():
266
- return getattr(ssrjson, "__version__", None) or getattr(ssrjson, "ssrjson").__version__
267
+ return (
268
+ getattr(ssrjson, "__version__", None) or getattr(ssrjson, "ssrjson").__version__
269
+ )
267
270
 
268
271
 
269
272
  def get_real_output_file_name():
@@ -354,6 +357,7 @@ def plot_relative_ops(data: dict, doc_name: str, index_s: str) -> io.BytesIO:
354
357
 
355
358
  for ax, cat in zip(axs, CATEGORIES):
356
359
  vals = [1.0] + [data[cat][f"{name}_{index_s}_ratio"] for name in libs[1:]]
360
+ gbps = (data[cat]["ssrjson_bytes_per_sec"] * 8) / (1024**3)
357
361
 
358
362
  for xi, val, col in zip(x_positions, vals, colors):
359
363
  ax.bar(xi, val, width=bar_width, color=col)
@@ -367,6 +371,18 @@ def plot_relative_ops(data: dict, doc_name: str, index_s: str) -> io.BytesIO:
367
371
  color=get_ratio_color(val),
368
372
  )
369
373
 
374
+ ssrjson_index = libs.index("ssrjson")
375
+ ax.text(
376
+ x_positions[ssrjson_index],
377
+ vals[ssrjson_index] / 2,
378
+ f"{gbps:.2f} Gb/s",
379
+ ha="center",
380
+ va="center",
381
+ fontsize=10,
382
+ color="#2c3e50",
383
+ fontweight="bold",
384
+ )
385
+
370
386
  # baseline line
371
387
  ax.axhline(1.0, color="gray", linestyle="--", linewidth=1)
372
388
  # height = 1.1 * max bar height
@@ -1,11 +1,13 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ssrjson-benchmark
3
- Version: 0.0.1rc1
3
+ Version: 0.0.1rc2
4
4
  Summary: benchmark of ssrJSON
5
5
  Author-email: Eritque Arcus <eritque-arcus@ikuyo.dev>, Antares <antares0982@gmail.com>
6
6
  License-Expression: MIT
7
7
  Project-URL: Homepage, https://github.com/Nambers/ssrJSON-benchmark
8
8
  Project-URL: Issues, https://github.com/Nambers/ssrJSON-benchmark/issues
9
+ Project-URL: Repository, https://github.com/Nambers/ssrJSON-benchmark.git
10
+ Keywords: ssrjson,benchmark,json
9
11
  Classifier: Development Status :: 5 - Production/Stable
10
12
  Classifier: Environment :: Console
11
13
  Classifier: Intended Audience :: Developers
@@ -15,6 +17,14 @@ Classifier: Operating System :: OS Independent
15
17
  Requires-Python: >=3.9
16
18
  Description-Content-Type: text/markdown
17
19
  License-File: LICENSE
20
+ Requires-Dist: ssrjson
21
+ Requires-Dist: orjson
22
+ Requires-Dist: matplotlib
23
+ Provides-Extra: pdf
24
+ Requires-Dist: svglib; extra == "pdf"
25
+ Requires-Dist: reportlab; extra == "pdf"
26
+ Provides-Extra: cpuinfo
27
+ Requires-Dist: py-cpuinfo; extra == "cpuinfo"
18
28
  Dynamic: license-file
19
29
 
20
30
  # ssrJSON-benchmark
@@ -13,6 +13,7 @@ src/ssrjson_benchmark/template.md
13
13
  src/ssrjson_benchmark.egg-info/PKG-INFO
14
14
  src/ssrjson_benchmark.egg-info/SOURCES.txt
15
15
  src/ssrjson_benchmark.egg-info/dependency_links.txt
16
+ src/ssrjson_benchmark.egg-info/requires.txt
16
17
  src/ssrjson_benchmark.egg-info/top_level.txt
17
18
  src/ssrjson_benchmark/_files/MotionsQuestionsAnswersQuestions2016.json
18
19
  src/ssrjson_benchmark/_files/apache.json
@@ -0,0 +1,10 @@
1
+ ssrjson
2
+ orjson
3
+ matplotlib
4
+
5
+ [cpuinfo]
6
+ py-cpuinfo
7
+
8
+ [pdf]
9
+ svglib
10
+ reportlab