numbers-parser 4.14.4__py3-none-any.whl → 4.16.1__py3-none-any.whl

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.
@@ -1,31 +1,26 @@
1
- Metadata-Version: 2.3
1
+ Metadata-Version: 2.4
2
2
  Name: numbers-parser
3
- Version: 4.14.4
3
+ Version: 4.16.1
4
4
  Summary: Read and write Apple Numbers spreadsheets
5
- License: MIT
6
- Author: Jon Connell
7
- Author-email: python@figsandfudge.com
8
- Requires-Python: >=3.9,<4.0
9
- Classifier: License :: OSI Approved :: MIT License
10
- Classifier: Operating System :: OS Independent
11
- Classifier: Programming Language :: Python :: 3
12
- Classifier: Programming Language :: Python :: 3.9
13
- Classifier: Programming Language :: Python :: 3.10
14
- Classifier: Programming Language :: Python :: 3.11
15
- Classifier: Programming Language :: Python :: 3.12
16
- Classifier: Programming Language :: Python :: 3.13
5
+ Author-email: Jon Connell <python@figsandfudge.com>
6
+ License-Expression: MIT
7
+ Project-URL: repository, https://github.com/masaccio/numbers-parser
8
+ Project-URL: documentation, https://github.com/masaccio/numbers-parser/blob/main/README.md
17
9
  Classifier: Topic :: Office/Business :: Financial :: Spreadsheet
18
- Requires-Dist: compact-json (>=1.1.3,<2.0.0)
19
- Requires-Dist: enum-tools (>=0.11)
20
- Requires-Dist: importlib-resources (>=6.1)
21
- Requires-Dist: protobuf
22
- Requires-Dist: python-dateutil (>=2.9.0.post0,<3.0.0)
23
- Requires-Dist: python-snappy (>=0.7,<0.8)
24
- Requires-Dist: setuptools (>=70.0.0)
25
- Requires-Dist: sigfig (>=1.3.3,<2.0.0)
26
- Project-URL: Documentation, https://github.com/masaccio/numbers-parser/blob/main/README.md
27
- Project-URL: Repository, https://github.com/masaccio/numbers-parser
10
+ Classifier: Programming Language :: Python :: 3
11
+ Classifier: Operating System :: OS Independent
12
+ Requires-Python: <4.0,>=3.9
28
13
  Description-Content-Type: text/markdown
14
+ License-File: LICENSE.rst
15
+ Requires-Dist: compact-json<2.0.0,>=1.1.3
16
+ Requires-Dist: protobuf<6.0,>=4.0
17
+ Requires-Dist: python-snappy<1.0,>=0.7
18
+ Requires-Dist: sigfig<2.0.0,>=1.3.3
19
+ Requires-Dist: setuptools>=70.0.0
20
+ Requires-Dist: importlib-resources>=6.1
21
+ Requires-Dist: enum-tools>=0.11
22
+ Requires-Dist: python-dateutil<3.0.0.0,>=2.9.0.post0
23
+ Dynamic: license-file
29
24
 
30
25
  # numbers-parser
31
26
 
@@ -42,7 +37,9 @@ with earlier versions of Python.
42
37
 
43
38
  A pre-requisite for this package is [python-snappy](https://pypi.org/project/python-snappy/) which will be installed by Python automatically, but python-snappy also requires binary libraries for snappy compression.
44
39
 
45
- The most straightforward way to install the binary dependencies is to use [Homebrew](https://brew.sh) and source Python from Homebrew rather than from macOS as described in the [python-snappy github](https://github.com/andrix/python-snappy). Using [pipx](https://pipx.pypa.io/stable/installation/) for package management is also strongly recommended:
40
+ The most straightforward way to install the binary dependencies is to use
41
+ [Homebrew](https://brew.sh) and source Python from Homebrew rather than from macOS as described
42
+ in the [python-snappy github](https://github.com/andrix/python-snappy). Using [pipx](https://pipx.pypa.io/stable/installation/) for package management is also strongly recommended:
46
43
 
47
44
  ```bash
48
45
  brew install snappy python3 pipx
@@ -53,7 +50,6 @@ For Linux (your package manager may be different):
53
50
 
54
51
  ```bash
55
52
  sudo apt-get -y install libsnappy-dev
56
- python3 -m pip install numbers-parser
57
53
  ```
58
54
 
59
55
  On Windows, you will need to either arrange for snappy to be found for VSC++ or you can install python
@@ -62,7 +58,6 @@ for Windows on Arm. There appear to be no x86 pre-compiled packages for Windows.
62
58
 
63
59
  ```text
64
60
  pip install python_snappy-0.6.1-cp312-cp312-win_arm64.whl
65
- python3 -m pip install numbers-parser
66
61
  ```
67
62
 
68
63
  ## Quick Start
@@ -485,8 +480,11 @@ The following limitations are expected to always remain:
485
480
  - Password-encrypted documents cannot be opened. You must first re-save without
486
481
  a password to read (see [issue 88](https://github.com/masaccio/numbers-parser/issues/88) for details).
487
482
  A UnsupportedError exception is raised when such documents are opened.
483
+ - Due to changes in the format of Numbers documents, decoding of category groups
484
+ (introduced in `numbers-parser` version 4.16) is supported only for documents
485
+ created by Numbers 12.0 and later. No warnings are issued for earlier
486
+ Numbers documents.
488
487
 
489
488
  ## License
490
489
 
491
490
  All code in this repository is licensed under the [MIT License](https://github.com/masaccio/numbers-parser/blob/master/LICENSE.rst).
492
-
@@ -1,17 +1,24 @@
1
- numbers_parser/__init__.py,sha256=a5CkU3_Fn41rHS0DN8u8se0iz2JhvmggRHmSh-akn5o,1428
1
+ numbers_parser/__init__.py,sha256=fKvZmUi_UsY3DMwt54s7G20DCwUTuG28B7kGsQRw3wU,1481
2
2
  numbers_parser/_cat_numbers.py,sha256=LQDBHLdVP8JIk0heV50T0Xz1oOMVNGILaX2mk8pVhCg,4846
3
3
  numbers_parser/_csv2numbers.py,sha256=R_13gVe_RfLWLOv-DzVJ60xkqhdOA-RKna-Ce5ud4V8,14624
4
- numbers_parser/_unpack_numbers.py,sha256=KvY04wqTH6JPwZWHAW1VlcY1HZQvXq-U5THEG7Au0mY,7045
4
+ numbers_parser/_unpack_numbers.py,sha256=x4Od4qEruPpzkoOq_i_zOFiNbNonlSRHBT3WGwZGYo8,6685
5
5
  numbers_parser/bullets.py,sha256=CKMjSYRzLM123wQNDG8B5vfodRLjW5UOc2HDPlvfNr4,2637
6
- numbers_parser/cell.py,sha256=lx3RlIh6UohlhmnyoyHWf7Tq6XNXvF--C52sWHDBb3A,76583
7
- numbers_parser/constants.py,sha256=JyTKQCnmEP6eNUQpk7eWQYlygTgUhVD7G6Std6426xs,10322
6
+ numbers_parser/cell.py,sha256=RSjzkYWTUN753Q6V5xIQZ0GC2gkZDmnpB6uz4GJGZ0U,72311
7
+ numbers_parser/constants.py,sha256=X6fPq6hQrvRRGp4X6fbHb15UvgLLlo-gLogdhMVQYhw,10605
8
8
  numbers_parser/containers.py,sha256=SBD99t0ABHraGA8729jPXy5VcRHT21U_WM3ijOIiwd4,4886
9
9
  numbers_parser/currencies.py,sha256=8k4a3WKmDoHeurkDICymHX13N7ManHSTaka_JNXCZYA,3767
10
- numbers_parser/data/empty.numbers,sha256=zQjVqcNGN-xNZh51_eAxD8Zxmxh88Sd7kpf4JygUA_E,90601
11
- numbers_parser/document.py,sha256=oOw8Gag6z_lJyAhI3WcYi-RZb2k7N4I0Nj4wi1aLMFM,59114
10
+ numbers_parser/document.py,sha256=6eCNbLRUmNoNEim8Wbk9DkhuhWHAtTmbexKDvld8Bp4,60866
12
11
  numbers_parser/exceptions.py,sha256=51yJTYm0X2am4YK-F6sVYOHmlYrBex_e4lYtbmiQX3I,611
13
12
  numbers_parser/experimental.py,sha256=WARjTa-2ePb8Ga8Q6oDP6EJCs12ofLRF2YpwzUu66ZI,374
14
- numbers_parser/formula.py,sha256=yRGSrd0Jrv_pgwtfokYRI2rZwUyTMYIV_Icm_8dj_P8,10759
13
+ numbers_parser/formula.py,sha256=-OLT2D6uQF-JncXiHHm3jCVz7Y5keavTjZsGhQWuOjM,26466
14
+ numbers_parser/iwafile.py,sha256=nVwCcXvx8TgX-DkYqSbcJQzKyXR1Z8_y547XeY7Y-fs,11948
15
+ numbers_parser/iwork.py,sha256=Qx1Izf9cfQKnLTDiJyeCOsmL9PSsfV-XOf0Kkb2oPMo,9396
16
+ numbers_parser/model.py,sha256=0FDT51SVk1CaKsRyCka-SHbVFMvDdATJ0YtJgBGUqRA,115589
17
+ numbers_parser/numbers_cache.py,sha256=uGngtJmP_AEDGZphyJpOMJ1dq8VGEeDyPdyrVy1E7lU,1100
18
+ numbers_parser/numbers_uuid.py,sha256=vVTgXgmtGx6PdbHfwyi82oRsZccmP7IW_o2q-6PGUNg,2880
19
+ numbers_parser/roman.py,sha256=CErv1uRp8eE9Bsuh_QsrBAzKFsfHSEs8CHpfFW0Gd70,725
20
+ numbers_parser/tokenizer.py,sha256=4pGdzX9zoxSYzaP7ywLwq8lOpVAm8hk96tMg9em7S6o,19804
21
+ numbers_parser/xrefs.py,sha256=1krwlX64k_DqW0vn_CQ3WJE2-DpzsslNoYor9mBjSGs,29976
15
22
  numbers_parser/generated/TNArchives_pb2.py,sha256=Tq1UC2Ml1dzAQFIrz3Om-sGI903FBZmlN3GgYQNt4a8,15931
16
23
  numbers_parser/generated/TNArchives_sos_pb2.py,sha256=AYI1X5t5Gb4l941jXlHEY0v97ToIze0bSYBR7KQmS0A,1215
17
24
  numbers_parser/generated/TNCommandArchives_pb2.py,sha256=my5CgnWmqHa5p0NFf-aUC8aqEPz3-pXXlyz4UJmZKZE,18378
@@ -19,7 +26,7 @@ numbers_parser/generated/TNCommandArchives_sos_pb2.py,sha256=MhIENEtVylmebThyhgl
19
26
  numbers_parser/generated/TSAArchives_pb2.py,sha256=FqNAQf5ul602CJS0tvA5p-gEbuUUw3msI4WfkRrVg5k,19907
20
27
  numbers_parser/generated/TSAArchives_sos_pb2.py,sha256=UlEScYhun_N-Cbr2v5RcgvJuwkloUuPJbrWxnQTOAfo,2033
21
28
  numbers_parser/generated/TSACommandArchives_sos_pb2.py,sha256=dyjRN08Ly1qp5m3jcOE5yClARAzg5KyOYNMWyplRq8w,3907
22
- numbers_parser/generated/TSCEArchives_pb2.py,sha256=BgV0Bw70bSLqs9v_q75HxT5_VTu4pb75AFVuOJUxOpo,64758
29
+ numbers_parser/generated/TSCEArchives_pb2.py,sha256=WtHsNP4ogcoT3q6e-rT68FUU5CjvQzjCBzyBEtd0lAs,67687
23
30
  numbers_parser/generated/TSCH3DArchives_pb2.py,sha256=eV4GahEGv_3nGNgnN6xc3kfJ07UT3oALlLeJdh0GcQ4,11162
24
31
  numbers_parser/generated/TSCHArchives_Common_pb2.py,sha256=dqgymAVSSQmjp3XuuXFRfXoSXhbQqaQXWbd-JUJs7Nc,8655
25
32
  numbers_parser/generated/TSCHArchives_GEN_pb2.py,sha256=_v3oN76ohi0uDlzoIg6AZnGWyirjLzhBSRLunsFkSco,45616
@@ -36,9 +43,9 @@ numbers_parser/generated/TSKArchives_pb2.py,sha256=D5EaP8aTC2VstJo7XfsGQ1VNzPPDR
36
43
  numbers_parser/generated/TSPArchiveMessages_pb2.py,sha256=5Th08Q19AOsMEMggvM9fda1StJjV8LTDDI5x7pY6aM8,17950
37
44
  numbers_parser/generated/TSPDatabaseMessages_pb2.py,sha256=_jvq890xBQpSDcYOKgII30XlxukPBRZBu0kkRpbJ-z0,2024
38
45
  numbers_parser/generated/TSPMessages_pb2.py,sha256=LBHRhNnQdDu226sh3gK_AOjbO3LDkGCWpVi1wzf7emA,13032
39
- numbers_parser/generated/TSSArchives_pb2.py,sha256=DNqQYFogujTOLIIW4B4_tTTLdGz-Y-kmkxQOhWLmMmg,10067
46
+ numbers_parser/generated/TSSArchives_pb2.py,sha256=JBW8ZncRBfT2CyL4A2yh7ZpDRPBO_o_H94AAIgEiN4s,10152
40
47
  numbers_parser/generated/TSSArchives_sos_pb2.py,sha256=FAhtvQ9TBg18AcIk4HwGCreNWlEu3k_kK_9jRVsh7FM,2842
41
- numbers_parser/generated/TSTArchives_pb2.py,sha256=PRNF8aceuLyEYmJunUG-R8PIa4ruWnKZThOy11o59Z4,88236
48
+ numbers_parser/generated/TSTArchives_pb2.py,sha256=lScldcH_bUfL0JSRFwpyhhu4bFMO404Vjm4TxKKNr1E,88185
42
49
  numbers_parser/generated/TSTArchives_sos_pb2.py,sha256=JxiMXSdTH5VJo-c5zDdD_tzGQCTrUDE2K0YP_x-zh84,12597
43
50
  numbers_parser/generated/TSTCommandArchives_pb2.py,sha256=LEyGJBOLdhxVarepxGfHprNs8vIAmSCO-iNnl3Afdkk,59523
44
51
  numbers_parser/generated/TSTStylePropertyArchiving_pb2.py,sha256=0ADsIwTk4GcTeQJRhYxEEjsD_SuLEOSUaGYdHnsO9CA,12415
@@ -48,15 +55,10 @@ numbers_parser/generated/TSWPCommandArchives_pb2.py,sha256=-wQpDqveA64l_V-0jXyMk
48
55
  numbers_parser/generated/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
49
56
  numbers_parser/generated/fontmap.py,sha256=ORrf3PtxG_gfT1t8R77yXjXBlIefRjvUCBUuG5RCTh8,23806
50
57
  numbers_parser/generated/functionmap.py,sha256=9OLSNlOVWxRO9xS8QZmK1HURpc11c1B5nIAAecUwA98,6082
51
- numbers_parser/generated/mapping.py,sha256=bJS_CK3AXXMFUSoSWbeDt6VTbCqIfX9OnTKLr0qDezA,32288
52
- numbers_parser/iwafile.py,sha256=nVwCcXvx8TgX-DkYqSbcJQzKyXR1Z8_y547XeY7Y-fs,11948
53
- numbers_parser/iwork.py,sha256=Qx1Izf9cfQKnLTDiJyeCOsmL9PSsfV-XOf0Kkb2oPMo,9396
54
- numbers_parser/model.py,sha256=to4WRFIxJ-Y4tqViSocCKzut7GxeyGHFQiYjPSI7CZc,107120
55
- numbers_parser/numbers_cache.py,sha256=wJHEGQfCbRvX94xL2Uehlz5UjTr8n4nBgutCw_4Dbis,1098
56
- numbers_parser/numbers_uuid.py,sha256=d5-Hwu-lWbBPuIP6vybNBuVzzja5HeuKsgK_PvMSw9c,2735
57
- numbers_parser/roman.py,sha256=CErv1uRp8eE9Bsuh_QsrBAzKFsfHSEs8CHpfFW0Gd70,725
58
- numbers_parser-4.14.4.dist-info/LICENSE.rst,sha256=8vTa1-5KSdHrTpU9rlheO5005EWReEPMpjV7BjSaMc4,1050
59
- numbers_parser-4.14.4.dist-info/METADATA,sha256=9NuTYRjqnWEMdiVFU0xWstijfsNzidvOsk1FD9yDzO8,22889
60
- numbers_parser-4.14.4.dist-info/WHEEL,sha256=XbeZDeTWKc1w7CSIyre5aMDU_-PohRwTQceYnisIYYY,88
61
- numbers_parser-4.14.4.dist-info/entry_points.txt,sha256=8VSxWAamOAvVcKS6iza4BQtYe03nga552HMLcVY-MBc,160
62
- numbers_parser-4.14.4.dist-info/RECORD,,
58
+ numbers_parser/generated/mapping.py,sha256=W6fEWqar3TFvx2wyWgK4NutIz9EYKtjChhSfho2FGQQ,32266
59
+ numbers_parser-4.16.1.dist-info/licenses/LICENSE.rst,sha256=8vTa1-5KSdHrTpU9rlheO5005EWReEPMpjV7BjSaMc4,1050
60
+ numbers_parser-4.16.1.dist-info/METADATA,sha256=xWxQs-7-3dVsXpfvQ0qAxGiZDehbesu1OQSsQDwR2FQ,22805
61
+ numbers_parser-4.16.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
62
+ numbers_parser-4.16.1.dist-info/entry_points.txt,sha256=_5biENfY3S-XG8BZL2AuE7Gvrw0zBwGjF6Un52u7FAk,165
63
+ numbers_parser-4.16.1.dist-info/top_level.txt,sha256=EOag5_Q4xjG7gstnrNVeAF_CLUAJBR_HDvciqMQ9RQo,15
64
+ numbers_parser-4.16.1.dist-info/RECORD,,
@@ -1,4 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: poetry-core 2.1.1
2
+ Generator: setuptools (80.9.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
+
@@ -0,0 +1,4 @@
1
+ [console_scripts]
2
+ cat-numbers = numbers_parser._cat_numbers:main
3
+ csv2numbers = numbers_parser._csv2numbers:main
4
+ unpack-numbers = numbers_parser._unpack_numbers:main
@@ -0,0 +1 @@
1
+ numbers_parser
Binary file
@@ -1,5 +0,0 @@
1
- [console_scripts]
2
- cat-numbers=numbers_parser._cat_numbers:main
3
- csv2numbers=numbers_parser._csv2numbers:main
4
- unpack-numbers=numbers_parser._unpack_numbers:main
5
-