Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-python-rapidjson for 
openSUSE:Factory checked in at 2022-10-08 01:25:25
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-python-rapidjson (Old)
 and      /work/SRC/openSUSE:Factory/.python-python-rapidjson.new.2275 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-python-rapidjson"

Sat Oct  8 01:25:25 2022 rev:8 rq:1008708 version:1.8

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/python-python-rapidjson/python-python-rapidjson.changes
  2022-01-15 21:45:43.141630586 +0100
+++ 
/work/SRC/openSUSE:Factory/.python-python-rapidjson.new.2275/python-python-rapidjson.changes
        2022-10-08 01:25:45.246302467 +0200
@@ -1,0 +2,13 @@
+Thu Oct  6 22:46:58 UTC 2022 - Yogalakshmi Arunachalam <[email protected]>
+
+- Update to version 1.8 (2022-07-07)
+  Fix problem on macOS explicitly requiring C++11, thanks to agate-pris (issue 
#166)
+
+- Update to version 1.7 (2022-07-06)
+  Use current master version of rapidjson
+  Update the test suite to work on Pyston, thanks to Kevin Modzelewski (PR 
#161)
+
+- Update to version 1.6 (2022-02-19)
+  Fix memory leak when using end_array (issue #160) 
+
+-------------------------------------------------------------------

Old:
----
  python-rapidjson-1.5.tar.gz

New:
----
  python-rapidjson-1.8.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-python-rapidjson.spec ++++++
--- /var/tmp/diff_new_pack.m22S0T/_old  2022-10-08 01:25:47.282307137 +0200
+++ /var/tmp/diff_new_pack.m22S0T/_new  2022-10-08 01:25:47.286307146 +0200
@@ -21,7 +21,7 @@
 # check git submodule and update devel:libraries:c_c++/rapidjson
 %define rjversion 1.1.0+git20211015.4d6cb081
 Name:           python-python-rapidjson
-Version:        1.5
+Version:        1.8
 Release:        0
 Summary:        Python wrapper around rapidjson
 License:        MIT

++++++ python-rapidjson-1.5.tar.gz -> python-rapidjson-1.8.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-rapidjson-1.5/.dir-locals.el 
new/python-rapidjson-1.8/.dir-locals.el
--- old/python-rapidjson-1.5/.dir-locals.el     2021-10-16 10:51:48.000000000 
+0200
+++ new/python-rapidjson-1.8/.dir-locals.el     2022-07-07 07:21:46.000000000 
+0200
@@ -1,7 +1,4 @@
 ((nil . ((esk/project-name . "python-rapidjson")
          (esk/project-license . "MIT License")
-         (fill-column . 90)
-         ;; force reinstall of whitespace font-lock customization
-         (eval . (if (functionp 'whitespace-color-on)
-                     (whitespace-color-on)))))
+         (fill-column . 90)))
  (c++-mode . ((eval . (c-set-style "stroustrup")))))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-rapidjson-1.5/.github/workflows/main.yml 
new/python-rapidjson-1.8/.github/workflows/main.yml
--- old/python-rapidjson-1.5/.github/workflows/main.yml 2021-10-16 
10:51:48.000000000 +0200
+++ new/python-rapidjson-1.8/.github/workflows/main.yml 2022-07-07 
07:21:46.000000000 +0200
@@ -4,7 +4,7 @@
 # :Author:    Martin Thoma <[email protected]>
 # :License:   MIT License
 # :Copyright: ?? 2020 Martin Thoma
-# :Copyright: ?? 2020, 2021 Lele Gaifax
+# :Copyright: ?? 2020, 2021, 2022 Lele Gaifax
 #
 
 # For more information see:
@@ -41,7 +41,7 @@
 
       - name: Install dependencies
         run: |
-          python -m pip install --upgrade pip
+          python -m pip install --upgrade pip setuptools
           pip install -r requirements-test.txt
           pip install .
 
@@ -73,7 +73,7 @@
 
       - name: Install dependencies
         run: |
-          python -m pip install --upgrade pip
+          python -m pip install --upgrade setuptools==59.8.0
           pip install -r requirements-test.txt
           pip install .
 
@@ -111,12 +111,12 @@
         name: Set up QEMU
 
       - name: Build wheels
-        uses: pypa/[email protected]
+        uses: pypa/[email protected]
         env:
           CIBW_ARCHS_LINUX: ${{matrix.arch}}
           CIBW_TEST_REQUIRES: "pytest pytest-benchmark pytz"
           CIBW_TEST_COMMAND: "pytest {project}/tests"
-          CIBW_SKIP: "cp2* cp33* cp34* cp35* pp*"
+          CIBW_SKIP: "cp2* cp33* cp34* cp35* cp36* pp*"
 
       - name: Upload artifacts
         uses: actions/upload-artifact@v2
@@ -132,7 +132,7 @@
     # FIXME: for some reason, the job is skipped, although the configuration is
     #        almost identical to the one I use on pglast... let's try to 
temporarily
     #        remove the condition
-    if: github.event_name == 'push' && startsWith(github.event.ref, 
'refs/tags/v')
+    #if: github.event_name == 'push' && startsWith(github.event.ref, 
'refs/tags/v')
 
     steps:
       - uses: actions/download-artifact@v2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-rapidjson-1.5/CHANGES.rst 
new/python-rapidjson-1.8/CHANGES.rst
--- old/python-rapidjson-1.5/CHANGES.rst        2021-10-16 10:51:48.000000000 
+0200
+++ new/python-rapidjson-1.8/CHANGES.rst        2022-07-07 07:21:46.000000000 
+0200
@@ -1,6 +1,36 @@
 Changes
 -------
 
+1.8 (2022-07-07)
+~~~~~~~~~~~~~~~~
+
+* Fix `problem on macOS`__ explicitly requiring C++11, thanks to agate-pris 
(`issue
+  #166`__)
+
+  __ 
https://github.com/Tencent/rapidjson/commit/9965ab37f6cfae3d58a0a6e34c76112866ace0b1#commitcomment-77875054
+  __ https://github.com/python-rapidjson/python-rapidjson/issues/166
+
+
+1.7 (2022-07-06)
+~~~~~~~~~~~~~~~~
+
+* Use `current master`__ version of rapidjson
+
+  __ 
https://github.com/Tencent/rapidjson/commit/232389d4f1012dddec4ef84861face2d2ba85709
+
+* Update the test suite to work on Pyston, thanks to Kevin Modzelewski (`PR 
#161`__)
+
+  __ https://github.com/python-rapidjson/python-rapidjson/pull/161
+
+
+1.6 (2022-02-19)
+~~~~~~~~~~~~~~~~
+
+* Fix memory leak when using ``end_array`` (`issue #160`__)
+
+  __ https://github.com/python-rapidjson/python-rapidjson/issues/160
+
+
 1.5 (2021-10-16)
 ~~~~~~~~~~~~~~~~
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-rapidjson-1.5/README.rst 
new/python-rapidjson-1.8/README.rst
--- old/python-rapidjson-1.5/README.rst 2021-10-16 10:51:48.000000000 +0200
+++ new/python-rapidjson-1.8/README.rst 2022-07-07 07:21:46.000000000 +0200
@@ -3,7 +3,7 @@
 .. :Author:    Ken Robbins <[email protected]>
 .. :License:   MIT License
 .. :Copyright: ?? 2015 Ken Robbins
-.. :Copyright: ?? 2016, 2017, 2018, 2020 Lele Gaifax
+.. :Copyright: ?? 2016, 2017, 2018, 2020, 2022 Lele Gaifax
 ..
 
 ==================
@@ -60,7 +60,7 @@
     >>> import rapidjson
     >>> data = {'foo': 100, 'bar': 'baz'}
     >>> rapidjson.dumps(data)
-    '{"bar":"baz","foo":100}'
+    '{"foo":100,"bar":"baz"}'
     >>> rapidjson.loads('{"bar":"baz","foo":100}')
     {'bar': 'baz', 'foo': 100}
     >>>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-rapidjson-1.5/benchmarks/tablize.py 
new/python-rapidjson-1.8/benchmarks/tablize.py
--- old/python-rapidjson-1.5/benchmarks/tablize.py      2021-10-16 
10:51:48.000000000 +0200
+++ new/python-rapidjson-1.8/benchmarks/tablize.py      2022-07-07 
07:21:46.000000000 +0200
@@ -2,7 +2,7 @@
 # :Project:   python-rapidjson -- reST tables writer tool
 # :Author:    Lele Gaifax <[email protected]>
 # :License:   MIT License
-# :Copyright: ?? 2017, 2018, 2020, 2021 Lele Gaifax
+# :Copyright: ?? 2017, 2018, 2020, 2021, 2022 Lele Gaifax
 #
 
 # Assume we did::
@@ -126,10 +126,10 @@
         '.. [2] ``rapidjson.Encoder()``',
         '.. [3] ``rapidjson.dumps(number_mode=NM_NATIVE)``',
         '.. [4] ``rapidjson.Encoder(number_mode=NM_NATIVE)``',
-        '.. [5] `simdjson 4.0.0 
<https://pypi.org/project/pysimdjson/4.0.0/>`__',
-        '.. [6] `orjson 3.5.3 <https://pypi.org/project/orjson/3.5.3/>`__',
-        '.. [7] `ujson 4.0.2 <https://pypi.org/project/ujson/4.0.2/>`__',
-        '.. [8] `simplejson 3.17.2 
<https://pypi.org/pypi/simplejson/3.17.2>`__',
+        '.. [5] `simdjson 5.0.1 
<https://pypi.org/project/pysimdjson/5.0.1/>`__',
+        '.. [6] `orjson 3.7.6 <https://pypi.org/project/orjson/3.7.6/>`__',
+        '.. [7] `ujson 5.4.0 <https://pypi.org/project/ujson/5.4.0/>`__',
+        '.. [8] `simplejson 3.17.6 
<https://pypi.org/pypi/simplejson/3.17.6>`__',
         '.. [9] Python %d.%d.%d standard library ``json``' % 
sys.version_info[:3],
         '.. [10] ``rapidjson.loads()``',
         '.. [11] ``rapidjson.Decoder()``',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-rapidjson-1.5/docs/benchmarks-tables.rst 
new/python-rapidjson-1.8/docs/benchmarks-tables.rst
--- old/python-rapidjson-1.5/docs/benchmarks-tables.rst 2021-10-16 
10:51:48.000000000 +0200
+++ new/python-rapidjson-1.8/docs/benchmarks-tables.rst 2022-07-07 
07:21:46.000000000 +0200
@@ -5,41 +5,41 @@
 
+-----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+
 |       serialize       |  ``dumps()``\ [1]_   | ``Encoder()``\ [2]_  |  
``dumps(n)``\ [3]_  | ``Encoder(n)``\ [4]_ |    simdjson\ [5]_    |     orjson\ 
[6]_     |     ujson\ [7]_      |   simplejson\ [8]_   |     stdlib\ [9]_     |
 
+=======================+======================+======================+======================+======================+======================+======================+======================+======================+======================+
-|    100 arrays dict    |         1.00         |         1.00         |        
 0.79         |         0.78         |         1.95         |       **0.25**    
   |         1.05         |         2.88         |         1.93         |
+|    100 arrays dict    |         1.00         |         0.99         |        
 0.77         |         0.76         |         1.97         |       **0.26**    
   |         1.09         |         4.00         |         1.95         |
 
+-----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+
-|    100 dicts array    |         1.00         |         0.99         |        
 0.84         |         0.79         |         1.94         |       **0.33**    
   |         1.04         |         3.62         |         1.94         |
+|    100 dicts array    |         1.00         |         0.99         |        
 0.81         |         0.76         |         2.06         |       **0.34**    
   |         1.06         |         4.96         |         2.04         |
 
+-----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+
-|    256 Trues array    |         1.00         |         0.99         |        
 1.14         |         0.99         |         2.23         |       **0.38**    
   |         1.33         |         2.63         |         2.23         |
+|    256 Trues array    |         1.00         |         1.00         |        
 1.17         |         1.04         |         2.38         |       **0.38**    
   |         1.52         |         2.70         |         2.35         |
 
+-----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+
-|    256 ascii array    |         1.00         |         1.00         |        
 1.02         |         1.00         |         0.76         |       **0.25**    
   |         0.43         |         1.00         |         0.76         |
+|    256 ascii array    |         1.00         |         1.00         |        
 1.02         |         1.00         |         0.90         |       **0.26**    
   |         0.50         |         1.06         |         0.89         |
 
+-----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+
-|   256 doubles array   |         1.00         |         1.00         |        
 1.01         |         1.00         |         0.87         |       **0.06**    
   |         0.23         |         0.90         |         0.86         |
+|   256 doubles array   |         1.00         |         0.99         |        
 0.99         |         0.99         |         0.84         |       **0.06**    
   |         0.21         |         0.88         |         0.83         |
 
+-----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+
-|   256 unicode array   |         1.00         |         0.84         |        
 0.84         |         0.85         |         0.66         |       **0.10**    
   |         0.56         |         0.78         |         0.66         |
+|   256 unicode array   |         1.00         |         0.81         |        
 0.81         |         0.82         |         0.70         |       **0.09**    
   |         0.51         |         0.65         |         0.69         |
 
+-----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+
-|      apache.json      |         1.00         |         0.99         |        
 1.01         |         1.00         |         1.46         |       **0.30**    
   |         1.12         |         1.94         |         1.45         |
+|      apache.json      |         1.00         |         1.00         |        
 1.01         |         1.01         |         1.66         |       **0.33**    
   |         1.18         |         2.51         |         1.65         |
 
+-----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+
-|      canada.json      |         1.00         |         0.98         |        
 0.97         |         0.97         |         0.99         |       **0.09**    
   |         0.32         |         1.33         |         0.98         |
+|      canada.json      |         1.00         |         1.00         |        
 0.99         |         1.00         |         1.06         |       **0.09**    
   |         0.34         |         1.72         |         1.06         |
 
+-----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+
-|    complex object     |         1.00         |         1.00         |        
 0.93         |         0.92         |         1.51         |       **0.26**    
   |         0.76         |         1.87         |         1.50         |
+|    complex object     |         1.00         |         1.00         |        
 0.93         |         0.92         |         1.58         |       **0.26**    
   |         0.83         |         2.41         |         1.57         |
 
+-----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+
-|   composite object    |         1.00         |         1.02         |        
 0.75         |         0.72         |         1.82         |       **0.37**    
   |         0.98         |         2.36         |         1.80         |
+|   composite object    |         1.00         |         0.99         |        
 0.75         |         0.72         |         1.91         |       **0.36**    
   |         1.12         |         2.44         |         1.87         |
 
+-----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+
-|       ctm.json        |         1.00         |         1.00         |        
 0.79         |         0.79         |         2.00         |       **0.31**    
   |         1.21         |         3.12         |         1.93         |
+|       ctm.json        |         1.00         |         1.00         |        
 0.76         |         0.76         |         2.11         |       **0.33**    
   |         1.43         |         4.81         |         2.13         |
 
+-----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+
-|      github.json      |         1.00         |         1.00         |        
 0.98         |         0.97         |         1.19         |       **0.28**    
   |         0.90         |         1.41         |         1.18         |
+|      github.json      |         1.00         |         1.00         |        
 0.98         |         0.97         |         1.34         |       **0.30**    
   |         0.98         |         1.72         |         1.32         |
 
+-----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+
-|   instruments.json    |         1.00         |         1.00         |        
 0.86         |         0.86         |         1.62         |       **0.33**    
   |         0.99         |         1.77         |         1.60         |
+|   instruments.json    |         1.00         |         1.01         |        
 0.80         |         0.80         |         1.75         |       **0.34**    
   |         1.15         |         2.28         |         1.75         |
 
+-----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+
-|       mesh.json       |         1.00         |         1.00         |        
 0.90         |         0.91         |         1.00         |       **0.14**    
   |         0.35         |         1.08         |         0.99         |
+|       mesh.json       |         1.00         |         0.99         |        
 0.90         |         0.90         |         0.94         |       **0.14**    
   |         0.35         |         1.09         |         0.93         |
 
+-----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+
-|     truenull.json     |         1.00         |         0.99         |        
 1.06         |         1.03         |         1.78         |       **0.42**    
   |         1.48         |         1.95         |         1.75         |
+|     truenull.json     |         1.00         |         1.02         |        
 1.03         |         1.01         |         1.87         |       **0.41**    
   |         1.69         |         1.89         |         1.86         |
 
+-----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+
-|      tweet.json       |         1.00         |         0.99         |        
 1.00         |         0.96         |         1.51         |       **0.33**    
   |         0.92         |         1.96         |         1.50         |
+|      tweet.json       |         1.00         |         0.99         |        
 0.99         |         0.94         |         1.66         |       **0.33**    
   |         1.02         |         2.33         |         1.65         |
 
+-----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+
-|     twitter.json      |         1.00         |         1.00         |        
 0.97         |         0.97         |         1.25         |       **0.30**    
   |         1.00         |         1.32         |         1.24         |
+|     twitter.json      |         1.00         |         1.00         |        
 0.96         |         0.95         |         1.39         |       **0.32**    
   |         1.05         |         1.65         |         1.36         |
 
+-----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+
-|        overall        |         1.00         |         1.00         |        
 0.83         |         0.83         |         1.69         |       **0.21**    
   |         0.86         |         2.44         |         1.67         |
+|        overall        |         1.00         |         0.99         |        
 0.83         |         0.82         |         1.71         |       **0.22**    
   |         0.90         |         3.33         |         1.70         |
 
+-----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+----------------------+
 
 Deserialization
@@ -48,41 +48,41 @@
 
+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
 |      deserialize      |  ``loads()``\ [10]_   | ``Decoder()``\ [11]_  |  
``loads(n)``\ [12]_  | ``Decoder(n)``\ [13]_ |       simdjson        |        
orjson         |         ujson         |      simplejson       |        stdlib  
       |
 
+=======================+=======================+=======================+=======================+=======================+=======================+=======================+=======================+=======================+=======================+
-|    100 arrays dict    |         1.00          |         1.05          |      
   0.95          |         0.90          |         0.85          |       
**0.73**        |         0.88          |         1.14          |         0.93  
        |
+|    100 arrays dict    |         1.00          |         1.05          |      
   0.90          |         0.95          |         0.86          |       
**0.56**        |         0.86          |         1.07          |         0.97  
        |
 
+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
-|    100 dicts array    |         1.00          |         1.00          |      
   0.87          |         0.84          |       **0.62**        |         0.64 
         |         0.72          |         1.33          |         1.05         
 |
+|    100 dicts array    |         1.00          |         0.99          |      
   0.87          |         0.85          |         0.63          |       
**0.40**        |         0.68          |         1.27          |         1.02  
        |
 
+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
-|    256 Trues array    |         1.00          |         1.01          |      
   1.08          |         1.01          |         0.90          |         0.88 
         |       **0.80**        |         1.53          |         1.33         
 |
+|    256 Trues array    |         1.00          |         1.02          |      
   1.11          |         0.99          |         0.92          |       
**0.48**        |         0.83          |         1.51          |         1.36  
        |
 
+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
-|    256 ascii array    |         1.00          |         1.00          |      
   1.03          |         1.03          |       **0.45**        |         0.75 
         |         0.97          |         0.98          |         0.84         
 |
+|    256 ascii array    |         1.00          |         0.99          |      
   1.02          |         1.01          |         0.46          |       
**0.45**        |         0.82          |         0.84          |         0.81  
        |
 
+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
-|   256 doubles array   |         1.00          |         1.00          |      
   0.25          |         0.25          |       **0.20**        |         0.25 
         |         0.48          |         1.12          |         1.07         
 |
+|   256 doubles array   |         1.00          |         1.00          |      
   0.27          |         0.26          |         0.21          |       
**0.16**        |         0.54          |         1.09          |         1.07  
        |
 
+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
-|   256 unicode array   |         1.00          |         1.00          |      
   1.00          |         1.00          |         1.12          |       
**0.43**        |         0.97          |         4.77          |         1.38  
        |
+|   256 unicode array   |         1.00          |         1.00          |      
   1.00          |         1.00          |         1.10          |       
**0.39**        |         0.80          |         4.49          |         1.29  
        |
 
+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
-|      apache.json      |         1.00          |         1.00          |      
   1.01          |         1.01          |       **0.65**        |         0.65 
         |         0.88          |         0.93          |         0.86         
 |
+|      apache.json      |         1.00          |         1.00          |      
   1.01          |         1.01          |         0.65          |       
**0.48**        |         0.85          |         0.81          |         0.83  
        |
 
+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
-|      canada.json      |         1.00          |         0.98          |      
   0.31          |         0.31          |       **0.27**        |         0.33 
         |         0.43          |         1.00          |         0.91         
 |
+|      canada.json      |         1.00          |         1.00          |      
   0.34          |         0.34          |         0.29          |       
**0.25**        |         0.49          |         1.04          |         0.96  
        |
 
+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
-|    complex object     |         1.00          |         1.01          |      
   0.88          |         0.87          |         0.66          |       
**0.57**        |         0.84          |         1.18          |         1.01  
        |
+|    complex object     |         1.00          |         1.00          |      
   0.84          |         0.84          |         0.65          |       
**0.37**        |         0.80          |         1.15          |         1.02  
        |
 
+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
-|   composite object    |         1.00          |         1.00          |      
   0.83          |         0.82          |       **0.60**        |         0.78 
         |         0.61          |         1.41          |         1.13         
 |
+|   composite object    |         1.00          |         0.99          |      
   0.83          |         0.81          |         0.61          |       
**0.45**        |         0.59          |         1.37          |         1.07  
        |
 
+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
-|       ctm.json        |         1.00          |         0.92          |      
   0.83          |         0.84          |         0.65          |       
**0.62**        |         0.92          |         1.15          |         1.03  
        |
+|       ctm.json        |         1.00          |         1.01          |      
   0.92          |         0.92          |         0.74          |       
**0.55**        |         1.08          |         1.20          |         1.14  
        |
 
+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
-|      github.json      |         1.00          |         1.00          |      
   0.98          |         0.98          |       **0.63**        |         0.63 
         |         0.84          |         0.94          |         0.85         
 |
+|      github.json      |         1.00          |         1.00          |      
   0.98          |         0.98          |         0.62          |       
**0.41**        |         0.76          |         0.86          |         0.79  
        |
 
+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
-|   instruments.json    |         1.00          |         1.00          |      
   0.86          |         0.86          |         0.64          |       
**0.55**        |         0.72          |         1.10          |         0.92  
        |
+|   instruments.json    |         1.00          |         1.00          |      
   0.91          |         0.90          |         0.63          |       
**0.37**        |         0.72          |         1.12          |         0.92  
        |
 
+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
-|       mesh.json       |         1.00          |         0.92          |      
   0.47          |         0.47          |       **0.40**        |         0.49 
         |         0.63          |         1.42          |         0.95         
 |
+|       mesh.json       |         1.00          |         1.01          |      
   0.51          |         0.51          |         0.44          |       
**0.36**        |         0.63          |         1.44          |         1.03  
        |
 
+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
-|     truenull.json     |         1.00          |         1.01          |      
   1.09          |         1.00          |       **0.56**        |         0.95 
         |         0.87          |         1.00          |         0.86         
 |
+|     truenull.json     |         1.00          |         0.99          |      
   1.00          |         1.00          |         0.58          |       
**0.39**        |         0.84          |         0.98          |         0.87  
        |
 
+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
-|      tweet.json       |         1.00          |         1.00          |      
   0.98          |         0.97          |         0.67          |       
**0.64**        |         0.86          |         1.21          |         1.08  
        |
+|      tweet.json       |         1.00          |         1.02          |      
   0.99          |         0.98          |         0.66          |       
**0.44**        |         0.84          |         1.14          |         1.03  
        |
 
+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
-|     twitter.json      |         1.00          |         1.00          |      
   0.95          |         0.96          |         0.67          |       
**0.62**        |         0.99          |         1.04          |         0.99  
        |
+|     twitter.json      |         1.00          |         1.00          |      
   0.99          |         0.99          |         0.65          |       
**0.42**        |         0.86          |         1.01          |         1.00  
        |
 
+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
-|        overall        |         1.00          |         1.04          |      
   0.89          |         0.84          |         0.79          |       
**0.69**        |         0.84          |         1.13          |         0.93  
        |
+|        overall        |         1.00          |         1.05          |      
   0.85          |         0.90          |         0.80          |       
**0.53**        |         0.83          |         1.08          |         0.97  
        |
 
+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
 
 ASCII vs UTF-8 Serialization
@@ -91,22 +91,22 @@
 
+-------------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
 |        serialize        |  ``rj ascii``\ [15]_  |  ``rj utf8``\ [16]_   |  
``uj ascii``\ [17]_  |  ``uj utf8``\ [18]_   |  ``sj ascii``\ [19]_  |  ``sj 
utf8``\ [20]_   | ``json ascii``\ [21]_ | ``json utf8``\ [22]_  |
 
+=========================+=======================+=======================+=======================+=======================+=======================+=======================+=======================+=======================+
-|    Long ASCII string    |         1.00          |         0.40          |    
   **0.22**        |         0.40          |         0.62          |         
0.75          |         0.47          |         1.13          |
+|    Long ASCII string    |         1.00          |         0.46          |    
   **0.25**        |         0.41          |         0.63          |         
0.93          |         0.57          |         1.49          |
 
+-------------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
-|   Long Unicode string   |         1.00          |       **0.57**        |    
     0.67          |         0.62          |         0.86          |         
0.75          |         0.74          |         0.64          |
+|   Long Unicode string   |         1.00          |         0.62          |    
     0.63          |       **0.58**        |         0.71          |         
0.70          |         0.80          |         0.66          |
 
+-------------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
-|         overall         |         1.00          |       **0.51**        |    
     0.52          |         0.55          |         0.78          |         
0.75          |         0.65          |         0.80          |
+|         overall         |         1.00          |         0.57          |    
   **0.51**        |         0.53          |         0.69          |         
0.78          |         0.73          |         0.92          |
 
+-------------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+
 
 .. [1] ``rapidjson.dumps()``
 .. [2] ``rapidjson.Encoder()``
 .. [3] ``rapidjson.dumps(number_mode=NM_NATIVE)``
 .. [4] ``rapidjson.Encoder(number_mode=NM_NATIVE)``
-.. [5] `simdjson 4.0.0 <https://pypi.org/project/pysimdjson/4.0.0/>`__
-.. [6] `orjson 3.5.3 <https://pypi.org/project/orjson/3.5.3/>`__
-.. [7] `ujson 4.0.2 <https://pypi.org/project/ujson/4.0.2/>`__
-.. [8] `simplejson 3.17.2 <https://pypi.org/pypi/simplejson/3.17.2>`__
-.. [9] Python 3.9.2 standard library ``json``
+.. [5] `simdjson 5.0.1 <https://pypi.org/project/pysimdjson/5.0.1/>`__
+.. [6] `orjson 3.7.6 <https://pypi.org/project/orjson/3.7.6/>`__
+.. [7] `ujson 5.4.0 <https://pypi.org/project/ujson/5.4.0/>`__
+.. [8] `simplejson 3.17.6 <https://pypi.org/pypi/simplejson/3.17.6>`__
+.. [9] Python 3.10.5 standard library ``json``
 .. [10] ``rapidjson.loads()``
 .. [11] ``rapidjson.Decoder()``
 .. [12] ``rapidjson.loads(number_mode=NM_NATIVE)``
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-rapidjson-1.5/docs/conf.py 
new/python-rapidjson-1.8/docs/conf.py
--- old/python-rapidjson-1.5/docs/conf.py       2021-10-16 10:51:48.000000000 
+0200
+++ new/python-rapidjson-1.8/docs/conf.py       2022-07-07 07:21:46.000000000 
+0200
@@ -46,7 +46,7 @@
 
 # General information about the project.
 project = 'python-rapidjson'
-copyright = '2016???2020, Lele Gaifax'
+copyright = '2016???2022, Lele Gaifax'
 author = 'Lele Gaifax'
 
 # The version info for the project you're documenting, acts as replacement for
@@ -63,7 +63,7 @@
 #
 # This is also used if you do content translation via gettext catalogs.
 # Usually you set "language" from the command line for these cases.
-language = None
+language = 'en'
 
 # List of patterns, relative to source directory, that match files and
 # directories to ignore when looking for source files.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-rapidjson-1.5/docs/dumps.rst 
new/python-rapidjson-1.8/docs/dumps.rst
--- old/python-rapidjson-1.5/docs/dumps.rst     2021-10-16 10:51:48.000000000 
+0200
+++ new/python-rapidjson-1.8/docs/dumps.rst     2022-07-07 07:21:46.000000000 
+0200
@@ -2,7 +2,7 @@
 .. :Project:   python-rapidjson -- dumps function documentation
 .. :Author:    Lele Gaifax <[email protected]>
 .. :License:   MIT License
-.. :Copyright: ?? 2016, 2017, 2018, 2019, 2020 Lele Gaifax
+.. :Copyright: ?? 2016, 2017, 2018, 2019, 2020, 2022 Lele Gaifax
 ..
 
 ==================
@@ -16,10 +16,10 @@
    from rapidjson import (dumps, loads, BM_NONE, BM_UTF8, DM_NONE, DM_ISO8601,
                           DM_UNIX_TIME, DM_ONLY_SECONDS, DM_IGNORE_TZ, 
DM_NAIVE_IS_UTC,
                           DM_SHIFT_TO_UTC, IM_ANY_ITERABLE, IM_ONLY_LISTS, 
MM_ANY_MAPPING,
-                          MM_ONLY_DICTS, MM_COERCE_KEYS_TO_STRINGS, NM_NATIVE, 
NM_DECIMAL,
-                          NM_NAN, PM_NONE, PM_COMMENTS, PM_TRAILING_COMMAS, 
UM_NONE,
-                          UM_CANONICAL, UM_HEX, WM_COMPACT, WM_PRETTY,
-                          WM_SINGLE_LINE_ARRAY)
+                          MM_ONLY_DICTS, MM_COERCE_KEYS_TO_STRINGS, 
MM_SORT_KEYS,
+                          NM_NATIVE, NM_DECIMAL, NM_NAN, PM_NONE, PM_COMMENTS,
+                          PM_TRAILING_COMMAS, UM_NONE, UM_CANONICAL, UM_HEX, 
WM_COMPACT,
+                          WM_PRETTY, WM_SINGLE_LINE_ARRAY)
 
 .. function:: dumps(obj, *, skipkeys=False, ensure_ascii=True, 
write_mode=WM_COMPACT, \
                     indent=4, default=None, sort_keys=False, number_mode=None, 
\
@@ -215,8 +215,8 @@
       ...   else:
       ...     raise ValueError('%r is not JSON serializable' % obj)
       ...
-      >>> dumps(point, default=point_jsonifier) # doctest: +SKIP
-      '{"y":2,"x":1}'
+      >>> dumps(point, default=point_jsonifier)
+      '{"x":1,"y":2}'
 
 
    .. _sort-keys:
@@ -227,12 +227,28 @@
 
    .. doctest::
 
-      >>> dumps(point, default=point_jsonifier, sort_keys=True)
-      '{"x":1,"y":2}'
+      >>> data = {'a': 'A', 'c': 'C', 'i': 'I', 'd': 'D'}
+      >>> dumps(data, sort_keys=True)
+      '{"a":"A","c":"C","d":"D","i":"I"}'
 
    .. note:: `sort_keys` is a backward compatible alias of new ``MM_SORT_KEYS``
              :ref:`mapping mode <mapping_mode>`.
 
+   .. doctest::
+
+      >>> dumps(data, mapping_mode=MM_SORT_KEYS)
+      '{"a":"A","c":"C","d":"D","i":"I"}'
+
+   The default setting, on modern snakes (that is, on `Python >= 3.7`__), 
preserves
+   original dictionary insertion order:
+
+   .. doctest::
+
+      >>> dumps(data)
+      '{"a":"A","c":"C","i":"I","d":"D"}'
+
+   __ https://mail.python.org/pipermail/python-dev/2017-December/151283.html
+
 
    .. _dumps-number-mode:
    .. rubric:: `number_mode`
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-rapidjson-1.5/rapidjson.cpp 
new/python-rapidjson-1.8/rapidjson.cpp
--- old/python-rapidjson-1.5/rapidjson.cpp      2021-10-16 10:51:48.000000000 
+0200
+++ new/python-rapidjson-1.8/rapidjson.cpp      2022-07-07 07:21:46.000000000 
+0200
@@ -3,7 +3,7 @@
 // :Author:    Ken Robbins <[email protected]>
 // :License:   MIT License
 // :Copyright: ?? 2015 Ken Robbins
-// :Copyright: ?? 2015, 2016, 2017, 2018, 2019, 2020, 2021 Lele Gaifax
+// :Copyright: ?? 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022 Lele Gaifax
 //
 
 #include <locale.h>
@@ -1147,10 +1147,11 @@
                     rc = PyDict_SetItem(current.object, key, replacement);
                 else
                     rc = PyObject_SetItem(current.object, key, replacement);
+
                 Py_DECREF(key);
+                Py_DECREF(replacement);
 
                 if (rc == -1) {
-                    Py_DECREF(replacement);
                     return false;
                 }
             } else {
@@ -1159,6 +1160,9 @@
                 Py_ssize_t listLen = PyList_GET_SIZE(current.object);
                 int rc = PyList_SetItem(current.object, listLen - 1, 
replacement);
 
+                // NB: PyList_SetItem() steals a reference on the replacement, 
so it must
+                // not be DECREFed when the operation succeeds
+
                 if (rc == -1) {
                     Py_DECREF(replacement);
                     return false;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-rapidjson-1.5/requirements-test.txt 
new/python-rapidjson-1.8/requirements-test.txt
--- old/python-rapidjson-1.5/requirements-test.txt      2021-10-16 
10:51:48.000000000 +0200
+++ new/python-rapidjson-1.8/requirements-test.txt      2022-07-07 
07:21:46.000000000 +0200
@@ -4,9 +4,9 @@
 # :License:   MIT License
 # :Copyright: ?? 2015 John Anderson
 # :Copyright: ?? 2015 Ken Robbins
-# :Copyright: ?? 2015, 2017, 2018, 2021 Lele Gaifax
+# :Copyright: ?? 2015, 2017, 2018, 2021, 2022 Lele Gaifax
 #
 
-pytest==6.2.4
-pytz==2021.1
-sphinx==4.0.2
+pytest==7.1.2
+pytz==2022.1
+sphinx==5.0.2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-rapidjson-1.5/requirements.txt 
new/python-rapidjson-1.8/requirements.txt
--- old/python-rapidjson-1.5/requirements.txt   2021-10-16 10:51:48.000000000 
+0200
+++ new/python-rapidjson-1.8/requirements.txt   2022-07-07 07:21:46.000000000 
+0200
@@ -2,21 +2,21 @@
 # :Project:   python-rapidjson -- Development requirements
 # :Author:    Lele Gaifax <[email protected]>
 # :License:   MIT License
-# :Copyright: ?? 2017, 2018, 2019, 2020, 2021 Lele Gaifax
+# :Copyright: ?? 2017, 2018, 2019, 2020, 2021, 2022 Lele Gaifax
 #
 
 -r requirements-test.txt
 
 # Needed by make release
 metapensiero.tool.bump-version==1.3
-readme-renderer==24.0
-twine==1.13.0
+readme-renderer==35.0
+twine==4.0.1
 
 # Needed by make benchmarks-*
-pytest-benchmark==3.2.2
+pytest-benchmark==3.4.1
 
 # Keep in sync with benchmarks/tablize.py versions
-pysimdjson==4.0.0
-orjson==3.5.3
-simplejson==3.17.2
-ujson==4.0.2
+pysimdjson==5.0.1
+orjson==3.7.6
+simplejson==3.17.6
+ujson==5.4.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-rapidjson-1.5/setup.py 
new/python-rapidjson-1.8/setup.py
--- old/python-rapidjson-1.5/setup.py   2021-10-16 10:51:48.000000000 +0200
+++ new/python-rapidjson-1.8/setup.py   2022-07-07 07:21:46.000000000 +0200
@@ -3,7 +3,7 @@
 # :Author:    Ken Robbins <[email protected]>
 # :License:   MIT License
 # :Copyright: ?? 2015 Ken Robbins
-# :Copyright: ?? 2016, 2017, 2018, 2019, 2020, 2021 Lele Gaifax
+# :Copyright: ?? 2016, 2017, 2018, 2019, 2020, 2021, 2022 Lele Gaifax
 #
 
 import os.path
@@ -75,9 +75,11 @@
             sysconfig.get_config_vars()[varname] = value
 
     # Add -pedantic, so we get a warning when using non-standard features, and
-    # -Wno-long-long to pacify old gcc (or Apple's hybrids) that treat "long
-    # long" as an error under C++ (see issue #69)
-    extension_options['extra_compile_args'] = ['-pedantic', '-Wno-long-long']
+    # -Wno-long-long to pacify old gcc (or Apple's hybrids) that treat "long 
long" as an
+    # error under C++ (see issue #69). C++11 is required since commit
+    # 
https://github.com/Tencent/rapidjson/commit/9965ab37f6cfae3d58a0a6e34c76112866ace0b1
+    extension_options['extra_compile_args'] = [
+        '-pedantic', '-Wno-long-long', '-std=c++11']
 
     # Up to Python 3.7, some structures use "char*" instead of "const char*",
     # and ISO C++ forbids assigning string literal constants
@@ -105,7 +107,6 @@
         'Programming Language :: C++',
         'Programming Language :: Python :: 3 :: Only',
         'Programming Language :: Python :: 3',
-        'Programming Language :: Python :: 3.6',
         'Programming Language :: Python :: 3.7',
         'Programming Language :: Python :: 3.8',
         'Programming Language :: Python :: 3.9',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-rapidjson-1.5/tests/test_circular.py 
new/python-rapidjson-1.8/tests/test_circular.py
--- old/python-rapidjson-1.5/tests/test_circular.py     2021-10-16 
10:51:48.000000000 +0200
+++ new/python-rapidjson-1.8/tests/test_circular.py     2022-07-07 
07:21:46.000000000 +0200
@@ -54,7 +54,15 @@
     dumps(root)
 
     rl = sys.getrecursionlimit()
-    sys.setrecursionlimit(500)
+
+    if hasattr(sys, "pyston_version_info"):
+        # In Pyston setrecursionlimit() sets a lower bound on the number of 
frames,
+        # not an exact count. So set the limit lower:
+        sys.setrecursionlimit(100)
+    else:
+        # Otherwise set it to the exact value:
+        sys.setrecursionlimit(500)
+
     try:
         with pytest.raises(expected_exception):
             dumps(root)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-rapidjson-1.5/tests/test_memory_leaks.py 
new/python-rapidjson-1.8/tests/test_memory_leaks.py
--- old/python-rapidjson-1.5/tests/test_memory_leaks.py 2021-10-16 
10:51:48.000000000 +0200
+++ new/python-rapidjson-1.8/tests/test_memory_leaks.py 2022-07-07 
07:21:46.000000000 +0200
@@ -9,11 +9,12 @@
 import io
 import datetime
 import gc
-import tracemalloc
 
 import pytest
 import rapidjson as rj
 
+tracemalloc = pytest.importorskip("tracemalloc")
+
 
 def object_hook(td):
     if '__td__' in td:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-rapidjson-1.5/tests/test_refs_count.py 
new/python-rapidjson-1.8/tests/test_refs_count.py
--- old/python-rapidjson-1.5/tests/test_refs_count.py   2021-10-16 
10:51:48.000000000 +0200
+++ new/python-rapidjson-1.8/tests/test_refs_count.py   2022-07-07 
07:21:46.000000000 +0200
@@ -2,7 +2,7 @@
 # :Project:   python-rapidjson -- Refs leaks tests
 # :Author:    Lele Gaifax <[email protected]>
 # :License:   MIT License
-# :Copyright: ?? 2017, 2018, 2020 Lele Gaifax
+# :Copyright: ?? 2017, 2018, 2020, 2022 Lele Gaifax
 #
 
 # NB: this is a simplicistic test that uses sys.gettotalrefcount(), available
@@ -197,3 +197,24 @@
     del _
     rc1 = sys.gettotalrefcount()
     assert (rc1 - rc0) < THRESHOLD
+
+
+def test_endarray_leak():
+    # See issue #160
+    value = '{"v": [1, 2]}'
+
+    class Decoder1(rj.Decoder):
+        pass
+
+    class Decoder2(rj.Decoder):
+        def end_array(self, seq):
+            return list(seq)
+
+    j1 = rj.loads(value)
+    assert sys.getrefcount(j1['v']) == 3
+
+    j2 = Decoder1()(value)
+    assert sys.getrefcount(j2['v']) == 3
+
+    j3 = Decoder2()(value)
+    assert sys.getrefcount(j3['v']) == 3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-rapidjson-1.5/version.txt 
new/python-rapidjson-1.8/version.txt
--- old/python-rapidjson-1.5/version.txt        2021-10-16 10:51:48.000000000 
+0200
+++ new/python-rapidjson-1.8/version.txt        2022-07-07 07:21:46.000000000 
+0200
@@ -1 +1 @@
-1.5
\ No newline at end of file
+1.8
\ No newline at end of file

Reply via email to