openrsxl 0.1.0__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.
- openrsxl-0.1.0/CHANGELOG.md +16 -0
- openrsxl-0.1.0/Cargo.lock +139 -0
- openrsxl-0.1.0/Cargo.toml +46 -0
- openrsxl-0.1.0/LICENSE +22 -0
- openrsxl-0.1.0/NOTICE +127 -0
- openrsxl-0.1.0/PKG-INFO +407 -0
- openrsxl-0.1.0/README.md +363 -0
- openrsxl-0.1.0/docs/BENCHMARKS.md +160 -0
- openrsxl-0.1.0/docs/COMPATIBILITY.md +199 -0
- openrsxl-0.1.0/docs/DEVELOPMENT.md +160 -0
- openrsxl-0.1.0/docs/TESTING.md +105 -0
- openrsxl-0.1.0/examples/extended_streaming.py +188 -0
- openrsxl-0.1.0/examples/quickstart.py +100 -0
- openrsxl-0.1.0/pyproject.toml +118 -0
- openrsxl-0.1.0/pytest.ini +4 -0
- openrsxl-0.1.0/python/openrsxl/OPENPYXL_LICENCE.rst +23 -0
- openrsxl-0.1.0/python/openrsxl/__init__.py +19 -0
- openrsxl-0.1.0/python/openrsxl/_constants.py +17 -0
- openrsxl-0.1.0/python/openrsxl/_native.py +279 -0
- openrsxl-0.1.0/python/openrsxl/cell/__init__.py +4 -0
- openrsxl-0.1.0/python/openrsxl/cell/_writer.py +136 -0
- openrsxl-0.1.0/python/openrsxl/cell/cell.py +332 -0
- openrsxl-0.1.0/python/openrsxl/cell/read_only.py +136 -0
- openrsxl-0.1.0/python/openrsxl/cell/rich_text.py +201 -0
- openrsxl-0.1.0/python/openrsxl/cell/text.py +184 -0
- openrsxl-0.1.0/python/openrsxl/chart/_3d.py +105 -0
- openrsxl-0.1.0/python/openrsxl/chart/__init__.py +19 -0
- openrsxl-0.1.0/python/openrsxl/chart/_chart.py +199 -0
- openrsxl-0.1.0/python/openrsxl/chart/area_chart.py +106 -0
- openrsxl-0.1.0/python/openrsxl/chart/axis.py +401 -0
- openrsxl-0.1.0/python/openrsxl/chart/bar_chart.py +144 -0
- openrsxl-0.1.0/python/openrsxl/chart/bubble_chart.py +67 -0
- openrsxl-0.1.0/python/openrsxl/chart/chartspace.py +195 -0
- openrsxl-0.1.0/python/openrsxl/chart/data_source.py +246 -0
- openrsxl-0.1.0/python/openrsxl/chart/descriptors.py +43 -0
- openrsxl-0.1.0/python/openrsxl/chart/error_bar.py +62 -0
- openrsxl-0.1.0/python/openrsxl/chart/label.py +127 -0
- openrsxl-0.1.0/python/openrsxl/chart/layout.py +74 -0
- openrsxl-0.1.0/python/openrsxl/chart/legend.py +75 -0
- openrsxl-0.1.0/python/openrsxl/chart/line_chart.py +129 -0
- openrsxl-0.1.0/python/openrsxl/chart/marker.py +90 -0
- openrsxl-0.1.0/python/openrsxl/chart/picture.py +35 -0
- openrsxl-0.1.0/python/openrsxl/chart/pie_chart.py +177 -0
- openrsxl-0.1.0/python/openrsxl/chart/pivot.py +65 -0
- openrsxl-0.1.0/python/openrsxl/chart/plotarea.py +162 -0
- openrsxl-0.1.0/python/openrsxl/chart/print_settings.py +57 -0
- openrsxl-0.1.0/python/openrsxl/chart/radar_chart.py +55 -0
- openrsxl-0.1.0/python/openrsxl/chart/reader.py +32 -0
- openrsxl-0.1.0/python/openrsxl/chart/reference.py +124 -0
- openrsxl-0.1.0/python/openrsxl/chart/scatter_chart.py +53 -0
- openrsxl-0.1.0/python/openrsxl/chart/series.py +197 -0
- openrsxl-0.1.0/python/openrsxl/chart/series_factory.py +41 -0
- openrsxl-0.1.0/python/openrsxl/chart/shapes.py +89 -0
- openrsxl-0.1.0/python/openrsxl/chart/stock_chart.py +54 -0
- openrsxl-0.1.0/python/openrsxl/chart/surface_chart.py +119 -0
- openrsxl-0.1.0/python/openrsxl/chart/text.py +78 -0
- openrsxl-0.1.0/python/openrsxl/chart/title.py +76 -0
- openrsxl-0.1.0/python/openrsxl/chart/trendline.py +98 -0
- openrsxl-0.1.0/python/openrsxl/chart/updown_bars.py +31 -0
- openrsxl-0.1.0/python/openrsxl/chartsheet/__init__.py +3 -0
- openrsxl-0.1.0/python/openrsxl/chartsheet/chartsheet.py +107 -0
- openrsxl-0.1.0/python/openrsxl/chartsheet/custom.py +61 -0
- openrsxl-0.1.0/python/openrsxl/chartsheet/properties.py +28 -0
- openrsxl-0.1.0/python/openrsxl/chartsheet/protection.py +41 -0
- openrsxl-0.1.0/python/openrsxl/chartsheet/publish.py +58 -0
- openrsxl-0.1.0/python/openrsxl/chartsheet/relation.py +97 -0
- openrsxl-0.1.0/python/openrsxl/chartsheet/views.py +51 -0
- openrsxl-0.1.0/python/openrsxl/comments/__init__.py +4 -0
- openrsxl-0.1.0/python/openrsxl/comments/author.py +21 -0
- openrsxl-0.1.0/python/openrsxl/comments/comment_sheet.py +211 -0
- openrsxl-0.1.0/python/openrsxl/comments/comments.py +62 -0
- openrsxl-0.1.0/python/openrsxl/comments/shape_writer.py +112 -0
- openrsxl-0.1.0/python/openrsxl/compat/__init__.py +54 -0
- openrsxl-0.1.0/python/openrsxl/compat/abc.py +8 -0
- openrsxl-0.1.0/python/openrsxl/compat/numbers.py +43 -0
- openrsxl-0.1.0/python/openrsxl/compat/product.py +17 -0
- openrsxl-0.1.0/python/openrsxl/compat/singleton.py +40 -0
- openrsxl-0.1.0/python/openrsxl/compat/strings.py +25 -0
- openrsxl-0.1.0/python/openrsxl/descriptors/__init__.py +58 -0
- openrsxl-0.1.0/python/openrsxl/descriptors/base.py +272 -0
- openrsxl-0.1.0/python/openrsxl/descriptors/container.py +41 -0
- openrsxl-0.1.0/python/openrsxl/descriptors/excel.py +112 -0
- openrsxl-0.1.0/python/openrsxl/descriptors/namespace.py +12 -0
- openrsxl-0.1.0/python/openrsxl/descriptors/nested.py +129 -0
- openrsxl-0.1.0/python/openrsxl/descriptors/sequence.py +136 -0
- openrsxl-0.1.0/python/openrsxl/descriptors/serialisable.py +240 -0
- openrsxl-0.1.0/python/openrsxl/descriptors/slots.py +18 -0
- openrsxl-0.1.0/python/openrsxl/drawing/__init__.py +4 -0
- openrsxl-0.1.0/python/openrsxl/drawing/colors.py +435 -0
- openrsxl-0.1.0/python/openrsxl/drawing/connector.py +144 -0
- openrsxl-0.1.0/python/openrsxl/drawing/drawing.py +92 -0
- openrsxl-0.1.0/python/openrsxl/drawing/effect.py +407 -0
- openrsxl-0.1.0/python/openrsxl/drawing/fill.py +425 -0
- openrsxl-0.1.0/python/openrsxl/drawing/geometry.py +584 -0
- openrsxl-0.1.0/python/openrsxl/drawing/graphic.py +177 -0
- openrsxl-0.1.0/python/openrsxl/drawing/image.py +65 -0
- openrsxl-0.1.0/python/openrsxl/drawing/line.py +144 -0
- openrsxl-0.1.0/python/openrsxl/drawing/picture.py +144 -0
- openrsxl-0.1.0/python/openrsxl/drawing/properties.py +173 -0
- openrsxl-0.1.0/python/openrsxl/drawing/relation.py +17 -0
- openrsxl-0.1.0/python/openrsxl/drawing/spreadsheet_drawing.py +382 -0
- openrsxl-0.1.0/python/openrsxl/drawing/text.py +717 -0
- openrsxl-0.1.0/python/openrsxl/drawing/xdr.py +33 -0
- openrsxl-0.1.0/python/openrsxl/extended/__init__.py +120 -0
- openrsxl-0.1.0/python/openrsxl/extended/_load.py +121 -0
- openrsxl-0.1.0/python/openrsxl/extended/_streaming.py +1104 -0
- openrsxl-0.1.0/python/openrsxl/formatting/__init__.py +3 -0
- openrsxl-0.1.0/python/openrsxl/formatting/formatting.py +114 -0
- openrsxl-0.1.0/python/openrsxl/formatting/rule.py +291 -0
- openrsxl-0.1.0/python/openrsxl/formula/__init__.py +3 -0
- openrsxl-0.1.0/python/openrsxl/formula/excel_tokenizer_parser.txt +61 -0
- openrsxl-0.1.0/python/openrsxl/formula/tokenizer.py +446 -0
- openrsxl-0.1.0/python/openrsxl/formula/translate.py +166 -0
- openrsxl-0.1.0/python/openrsxl/packaging/__init__.py +3 -0
- openrsxl-0.1.0/python/openrsxl/packaging/core.py +115 -0
- openrsxl-0.1.0/python/openrsxl/packaging/custom.py +289 -0
- openrsxl-0.1.0/python/openrsxl/packaging/extended.py +137 -0
- openrsxl-0.1.0/python/openrsxl/packaging/interface.py +56 -0
- openrsxl-0.1.0/python/openrsxl/packaging/manifest.py +194 -0
- openrsxl-0.1.0/python/openrsxl/packaging/relationship.py +158 -0
- openrsxl-0.1.0/python/openrsxl/packaging/workbook.py +185 -0
- openrsxl-0.1.0/python/openrsxl/pivot/__init__.py +1 -0
- openrsxl-0.1.0/python/openrsxl/pivot/cache.py +965 -0
- openrsxl-0.1.0/python/openrsxl/pivot/fields.py +326 -0
- openrsxl-0.1.0/python/openrsxl/pivot/record.py +111 -0
- openrsxl-0.1.0/python/openrsxl/pivot/table.py +1261 -0
- openrsxl-0.1.0/python/openrsxl/reader/__init__.py +1 -0
- openrsxl-0.1.0/python/openrsxl/reader/drawings.py +71 -0
- openrsxl-0.1.0/python/openrsxl/reader/excel.py +349 -0
- openrsxl-0.1.0/python/openrsxl/reader/strings.py +55 -0
- openrsxl-0.1.0/python/openrsxl/reader/workbook.py +133 -0
- openrsxl-0.1.0/python/openrsxl/styles/__init__.py +11 -0
- openrsxl-0.1.0/python/openrsxl/styles/alignment.py +62 -0
- openrsxl-0.1.0/python/openrsxl/styles/borders.py +103 -0
- openrsxl-0.1.0/python/openrsxl/styles/builtins.py +1397 -0
- openrsxl-0.1.0/python/openrsxl/styles/cell_style.py +206 -0
- openrsxl-0.1.0/python/openrsxl/styles/colors.py +172 -0
- openrsxl-0.1.0/python/openrsxl/styles/differential.py +95 -0
- openrsxl-0.1.0/python/openrsxl/styles/fills.py +224 -0
- openrsxl-0.1.0/python/openrsxl/styles/fonts.py +113 -0
- openrsxl-0.1.0/python/openrsxl/styles/named_styles.py +282 -0
- openrsxl-0.1.0/python/openrsxl/styles/numbers.py +200 -0
- openrsxl-0.1.0/python/openrsxl/styles/protection.py +17 -0
- openrsxl-0.1.0/python/openrsxl/styles/proxy.py +62 -0
- openrsxl-0.1.0/python/openrsxl/styles/styleable.py +150 -0
- openrsxl-0.1.0/python/openrsxl/styles/stylesheet.py +274 -0
- openrsxl-0.1.0/python/openrsxl/styles/table.py +94 -0
- openrsxl-0.1.0/python/openrsxl/utils/__init__.py +17 -0
- openrsxl-0.1.0/python/openrsxl/utils/bound_dictionary.py +26 -0
- openrsxl-0.1.0/python/openrsxl/utils/cell.py +240 -0
- openrsxl-0.1.0/python/openrsxl/utils/dataframe.py +87 -0
- openrsxl-0.1.0/python/openrsxl/utils/datetime.py +140 -0
- openrsxl-0.1.0/python/openrsxl/utils/escape.py +43 -0
- openrsxl-0.1.0/python/openrsxl/utils/exceptions.py +34 -0
- openrsxl-0.1.0/python/openrsxl/utils/formulas.py +24 -0
- openrsxl-0.1.0/python/openrsxl/utils/indexed_list.py +49 -0
- openrsxl-0.1.0/python/openrsxl/utils/inference.py +60 -0
- openrsxl-0.1.0/python/openrsxl/utils/protection.py +22 -0
- openrsxl-0.1.0/python/openrsxl/utils/units.py +108 -0
- openrsxl-0.1.0/python/openrsxl/workbook/__init__.py +4 -0
- openrsxl-0.1.0/python/openrsxl/workbook/_writer.py +197 -0
- openrsxl-0.1.0/python/openrsxl/workbook/child.py +166 -0
- openrsxl-0.1.0/python/openrsxl/workbook/defined_name.py +189 -0
- openrsxl-0.1.0/python/openrsxl/workbook/external_link/__init__.py +3 -0
- openrsxl-0.1.0/python/openrsxl/workbook/external_link/external.py +190 -0
- openrsxl-0.1.0/python/openrsxl/workbook/external_reference.py +18 -0
- openrsxl-0.1.0/python/openrsxl/workbook/function_group.py +36 -0
- openrsxl-0.1.0/python/openrsxl/workbook/properties.py +151 -0
- openrsxl-0.1.0/python/openrsxl/workbook/protection.py +163 -0
- openrsxl-0.1.0/python/openrsxl/workbook/smart_tags.py +56 -0
- openrsxl-0.1.0/python/openrsxl/workbook/views.py +155 -0
- openrsxl-0.1.0/python/openrsxl/workbook/web.py +98 -0
- openrsxl-0.1.0/python/openrsxl/workbook/workbook.py +437 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/__init__.py +1 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/_cellstore.py +64 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/_read_only.py +289 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/_reader.py +570 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/_write_only.py +160 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/_writer.py +441 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/cell_range.py +512 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/cell_watch.py +33 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/controls.py +106 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/copier.py +70 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/custom.py +34 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/datavalidation.py +202 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/dimensions.py +306 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/drawing.py +14 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/errors.py +92 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/filters.py +486 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/formula.py +51 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/header_footer.py +269 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/hyperlink.py +46 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/merge.py +141 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/ole.py +132 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/page.py +174 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/pagebreak.py +94 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/picture.py +8 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/print_settings.py +184 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/properties.py +97 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/protection.py +119 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/related.py +17 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/scenario.py +104 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/smart_tag.py +77 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/table.py +385 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/views.py +155 -0
- openrsxl-0.1.0/python/openrsxl/worksheet/worksheet.py +958 -0
- openrsxl-0.1.0/python/openrsxl/writer/__init__.py +1 -0
- openrsxl-0.1.0/python/openrsxl/writer/excel.py +295 -0
- openrsxl-0.1.0/python/openrsxl/writer/theme.py +291 -0
- openrsxl-0.1.0/python/openrsxl/xml/__init__.py +42 -0
- openrsxl-0.1.0/python/openrsxl/xml/constants.py +129 -0
- openrsxl-0.1.0/python/openrsxl/xml/functions.py +87 -0
- openrsxl-0.1.0/src/dates.rs +231 -0
- openrsxl-0.1.0/src/formula.rs +806 -0
- openrsxl-0.1.0/src/ftemplate.rs +322 -0
- openrsxl-0.1.0/src/lib.rs +430 -0
- openrsxl-0.1.0/src/prescan.rs +350 -0
- openrsxl-0.1.0/src/pysource.rs +40 -0
- openrsxl-0.1.0/src/sheet.rs +1284 -0
- openrsxl-0.1.0/src/slots.rs +77 -0
- openrsxl-0.1.0/src/store.rs +1590 -0
- openrsxl-0.1.0/src/strings.rs +62 -0
- openrsxl-0.1.0/src/text.rs +280 -0
- openrsxl-0.1.0/src/utils.rs +302 -0
- openrsxl-0.1.0/src/writer.rs +1006 -0
- openrsxl-0.1.0/src/xml.rs +1514 -0
- openrsxl-0.1.0/tests/conftest.py +4 -0
- openrsxl-0.1.0/tests/fixtures.py +113 -0
- openrsxl-0.1.0/tests/oracle/__init__.py +0 -0
- openrsxl-0.1.0/tests/oracle/compare.py +507 -0
- openrsxl-0.1.0/tests/oracle/extended.py +409 -0
- openrsxl-0.1.0/tests/smoke/test_smoke.py +77 -0
- openrsxl-0.1.0/tests/test_api_fuzz.py +354 -0
- openrsxl-0.1.0/tests/test_api_surface.py +162 -0
- openrsxl-0.1.0/tests/test_cellstore.py +293 -0
- openrsxl-0.1.0/tests/test_examples.py +21 -0
- openrsxl-0.1.0/tests/test_extended.py +556 -0
- openrsxl-0.1.0/tests/test_fuzz.py +355 -0
- openrsxl-0.1.0/tests/test_reader_edge_cases.py +587 -0
- openrsxl-0.1.0/tests/test_security.py +370 -0
- openrsxl-0.1.0/tests/test_threads.py +70 -0
- openrsxl-0.1.0/tests/test_writer_edge_cases.py +451 -0
- openrsxl-0.1.0/tests/upstream/cell/tests/test_cell.py +435 -0
- openrsxl-0.1.0/tests/upstream/cell/tests/test_read_only.py +95 -0
- openrsxl-0.1.0/tests/upstream/cell/tests/test_rich_text.py +283 -0
- openrsxl-0.1.0/tests/upstream/cell/tests/test_text.py +183 -0
- openrsxl-0.1.0/tests/upstream/cell/tests/test_writer.py +284 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/conftest.py +12 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/data/3D_bar_chart.xml +102 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/data/3D_plotarea.xml +105 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/data/bubblechart_plot_area.xml +1062 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/data/chart1.xml +1199 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/data/chart_no_border.xml +481 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/data/plotarea.xml +187 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/data/scatterchart_plot_area.xml +147 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_3d.py +119 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_area_chart.py +157 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_axis.py +365 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_bar_chart.py +188 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_bubble_chart.py +38 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_chart.py +304 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_chartspace.py +130 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_data_source.py +280 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_error_bar.py +41 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_label.py +79 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_layout.py +74 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_legend.py +68 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_line_chart.py +80 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_marker.py +85 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_picture.py +32 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_pie_chart.py +181 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_pivot.py +71 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_plotarea.py +193 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_print.py +60 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_radar_chart.py +43 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_reader.py +67 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_reference.py +88 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_scatter_chart.py +38 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_series.py +343 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_series_factory.py +144 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_shapes.py +48 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_stock_chart.py +91 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_surface_chart.py +163 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_text.py +95 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_title.py +81 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_trendline.py +63 -0
- openrsxl-0.1.0/tests/upstream/chart/tests/test_updown_bars.py +35 -0
- openrsxl-0.1.0/tests/upstream/chartsheet/tests/test_chartsheet.py +87 -0
- openrsxl-0.1.0/tests/upstream/chartsheet/tests/test_custom.py +93 -0
- openrsxl-0.1.0/tests/upstream/chartsheet/tests/test_properties.py +42 -0
- openrsxl-0.1.0/tests/upstream/chartsheet/tests/test_protection.py +57 -0
- openrsxl-0.1.0/tests/upstream/chartsheet/tests/test_publish.py +80 -0
- openrsxl-0.1.0/tests/upstream/chartsheet/tests/test_relation.py +57 -0
- openrsxl-0.1.0/tests/upstream/chartsheet/tests/test_views.py +62 -0
- openrsxl-0.1.0/tests/upstream/comments/tests/conftest.py +15 -0
- openrsxl-0.1.0/tests/upstream/comments/tests/data/comments.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/comments/tests/data/comments1.xml +33 -0
- openrsxl-0.1.0/tests/upstream/comments/tests/data/comments2.xml +81 -0
- openrsxl-0.1.0/tests/upstream/comments/tests/data/commentsDrawing1.vml +54 -0
- openrsxl-0.1.0/tests/upstream/comments/tests/data/comments_out.xml +25 -0
- openrsxl-0.1.0/tests/upstream/comments/tests/data/control+comments.vml +86 -0
- openrsxl-0.1.0/tests/upstream/comments/tests/data/google_docs_comments.xml +14 -0
- openrsxl-0.1.0/tests/upstream/comments/tests/data/size+comments.vml +22 -0
- openrsxl-0.1.0/tests/upstream/comments/tests/test_author.py +40 -0
- openrsxl-0.1.0/tests/upstream/comments/tests/test_comment.py +47 -0
- openrsxl-0.1.0/tests/upstream/comments/tests/test_comment_reader.py +41 -0
- openrsxl-0.1.0/tests/upstream/comments/tests/test_comment_sheet.py +105 -0
- openrsxl-0.1.0/tests/upstream/comments/tests/test_shape_writer.py +117 -0
- openrsxl-0.1.0/tests/upstream/compat/tests/test_compat.py +131 -0
- openrsxl-0.1.0/tests/upstream/conftest.py +68 -0
- openrsxl-0.1.0/tests/upstream/descriptors/tests/test_base.py +396 -0
- openrsxl-0.1.0/tests/upstream/descriptors/tests/test_container.py +70 -0
- openrsxl-0.1.0/tests/upstream/descriptors/tests/test_excel.py +210 -0
- openrsxl-0.1.0/tests/upstream/descriptors/tests/test_namespace.py +30 -0
- openrsxl-0.1.0/tests/upstream/descriptors/tests/test_nested.py +362 -0
- openrsxl-0.1.0/tests/upstream/descriptors/tests/test_sequence.py +377 -0
- openrsxl-0.1.0/tests/upstream/descriptors/tests/test_serialisable.py +293 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/conftest.py +10 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/data/plain.png +0 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/data/plain.tif +0 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/data/spreadsheet_drawing_with_blip.xml +39 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/data/spreadsheet_drawing_with_chart.xml +25 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/data/spreasheet_drawing_external_image.xml +42 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/data/text_box_drawing.xml +64 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/data/two_cell_anchor_group.xml +62 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/data/two_cell_anchor_pic.xml +45 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/test_color.py +178 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/test_connector.py +53 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/test_descriptors.py +13 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/test_drawing.py +102 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/test_effect.py +90 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/test_fill.py +267 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/test_geometry.py +222 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/test_graphic.py +305 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/test_image.py +60 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/test_line.py +108 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/test_picture.py +159 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/test_properties.py +168 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/test_relation.py +34 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/test_spreadsheet_drawing.py +524 -0
- openrsxl-0.1.0/tests/upstream/drawing/tests/test_text.py +219 -0
- openrsxl-0.1.0/tests/upstream/formatting/tests/conftest.py +22 -0
- openrsxl-0.1.0/tests/upstream/formatting/tests/data/conditional-formatting.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/formatting/tests/data/conditional_with_pivot_sheet.xml +111496 -0
- openrsxl-0.1.0/tests/upstream/formatting/tests/data/worksheet.xml +233 -0
- openrsxl-0.1.0/tests/upstream/formatting/tests/test_formatting.py +202 -0
- openrsxl-0.1.0/tests/upstream/formatting/tests/test_rule.py +363 -0
- openrsxl-0.1.0/tests/upstream/formula/tests/test_tokenizer.py +686 -0
- openrsxl-0.1.0/tests/upstream/formula/tests/test_translate.py +239 -0
- openrsxl-0.1.0/tests/upstream/packaging/tests/conftest.py +10 -0
- openrsxl-0.1.0/tests/upstream/packaging/tests/data/bug137.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/packaging/tests/data/core.xml +21 -0
- openrsxl-0.1.0/tests/upstream/packaging/tests/data/hyperlink.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/packaging/tests/data/manifest.xml +15 -0
- openrsxl-0.1.0/tests/upstream/packaging/tests/data/sample.xlsm +0 -0
- openrsxl-0.1.0/tests/upstream/packaging/tests/data/workbook_russian_code_name.xml +13 -0
- openrsxl-0.1.0/tests/upstream/packaging/tests/test_core.py +114 -0
- openrsxl-0.1.0/tests/upstream/packaging/tests/test_custom.py +438 -0
- openrsxl-0.1.0/tests/upstream/packaging/tests/test_extended.py +68 -0
- openrsxl-0.1.0/tests/upstream/packaging/tests/test_interface.py +14 -0
- openrsxl-0.1.0/tests/upstream/packaging/tests/test_manifest.py +310 -0
- openrsxl-0.1.0/tests/upstream/packaging/tests/test_pivot.py +32 -0
- openrsxl-0.1.0/tests/upstream/packaging/tests/test_relationship.py +143 -0
- openrsxl-0.1.0/tests/upstream/packaging/tests/test_workbook.py +46 -0
- openrsxl-0.1.0/tests/upstream/pivot/tests/conftest.py +15 -0
- openrsxl-0.1.0/tests/upstream/pivot/tests/data/calculatedItem.xml +9 -0
- openrsxl-0.1.0/tests/upstream/pivot/tests/data/pivotCacheDefinition.xml +51 -0
- openrsxl-0.1.0/tests/upstream/pivot/tests/data/pivotCacheDefinitionTupleCache.xml +47 -0
- openrsxl-0.1.0/tests/upstream/pivot/tests/data/pivotCacheRecords.xml +139 -0
- openrsxl-0.1.0/tests/upstream/pivot/tests/data/pivotTable.xml +103 -0
- openrsxl-0.1.0/tests/upstream/pivot/tests/test_cache.py +825 -0
- openrsxl-0.1.0/tests/upstream/pivot/tests/test_fields.py +227 -0
- openrsxl-0.1.0/tests/upstream/pivot/tests/test_record.py +112 -0
- openrsxl-0.1.0/tests/upstream/pivot/tests/test_table.py +642 -0
- openrsxl-0.1.0/tests/upstream/pytest.ini +22 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/conftest.py +12 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/Table1-XmlFromAccess.xml +85 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/bug137.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/complex-styles-worksheet.xml +410 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/complex-styles.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/contains_chartsheets.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/empty_with_no_properties.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/extended_conditional_formatting_sheet.xml +153 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/frozen_view_worksheet.xml +20 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/hidden_sheets.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/hidden_sheets.xml +19 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/jasper_sheet.xml +2324 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/legacy_drawing.xlsm +0 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/legacy_drawing_worksheet.xml +284 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/null_file.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/pivot.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/print_area_table_defined_name.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/print_settings.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/protected_sheet.xml +65 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/sample.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/sample_with_images.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/sample_with_unsupported_image_format.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/shared-strings-rich.xml +33 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/sharedStrings-emptystring.xml +2 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/sharedStrings.xml +2 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/sharedStrings2.xml +8 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/unsupported_drawing.xml +321 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/workbook_1904.xml +12 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/workbook_links.xml +16 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/workbook_missing_id.xml +12 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/workbook_security.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/worksheet_formulae.xml +163 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/data/worksheet_without_coordinates.xml +55 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/test_drawings.py +47 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/test_excel.py +247 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/test_strings.py +37 -0
- openrsxl-0.1.0/tests/upstream/reader/tests/test_workbook.py +195 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/conftest.py +22 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/data/alignment_styles.xml +47 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/data/builtins_as_custom_number_formats.xml +74 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/data/complex-styles.xml +259 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/data/dxf_style.xml +2069 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/data/empty-workbook-styles.xml +53 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/data/no_default_styles.xml +41 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/data/no_number_format.xml +47 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/data/none_value_styles.xml +50 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/data/rgb_colors.xml +2024 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/data/simple-styles.xml +48 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/data/styles_number_formats.xml +112 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/data/worksheet_unprotected_style.xml +76 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/test_alignments.py +26 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/test_borders.py +76 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/test_cell_style.py +197 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/test_colors.py +144 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/test_differential.py +111 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/test_fills.py +288 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/test_fonts.py +76 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/test_named_style.py +280 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/test_number_style.py +163 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/test_protection.py +19 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/test_proxy.py +66 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/test_styleable.py +144 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/test_stylesheet.py +377 -0
- openrsxl-0.1.0/tests/upstream/styles/tests/test_table.py +85 -0
- openrsxl-0.1.0/tests/upstream/tests/conftest.py +32 -0
- openrsxl-0.1.0/tests/upstream/tests/data/genuine/empty-with-styles.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/tests/data/genuine/empty.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/tests/data/genuine/libreoffice_nrt.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/tests/data/genuine/mac_date.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/tests/data/genuine/sample.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/tests/data/reader/bigfoot.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/tests/data/reader/bug328_hyperlinks.xml +53 -0
- openrsxl-0.1.0/tests/upstream/tests/data/reader/bug393-worksheet.xml +64 -0
- openrsxl-0.1.0/tests/upstream/tests/data/reader/empty_rows.xml +43 -0
- openrsxl-0.1.0/tests/upstream/tests/data/reader/example_vba_and_custom_doc_props.xlsm +0 -0
- openrsxl-0.1.0/tests/upstream/tests/data/reader/example_vba_and_no_custom_doc_props.xlsm +0 -0
- openrsxl-0.1.0/tests/upstream/tests/data/reader/merged-ranges.xml +2 -0
- openrsxl-0.1.0/tests/upstream/tests/data/reader/nonstandard_workbook_name.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/tests/data/reader/sheet2.xml +341 -0
- openrsxl-0.1.0/tests/upstream/tests/data/reader/sheet2_invalid_dimension.xml +341 -0
- openrsxl-0.1.0/tests/upstream/tests/data/reader/sheet2_no_dimension.xml +340 -0
- openrsxl-0.1.0/tests/upstream/tests/data/reader/sheet2_no_span.xml +340 -0
- openrsxl-0.1.0/tests/upstream/tests/data/reader/vba+comments.xlsm +0 -0
- openrsxl-0.1.0/tests/upstream/tests/data/reader/vba-comments-saved.xlsm +0 -0
- openrsxl-0.1.0/tests/upstream/tests/data/reader/vba-test.xlsm +0 -0
- openrsxl-0.1.0/tests/upstream/tests/data/writer/Content_types_vba.xml +20 -0
- openrsxl-0.1.0/tests/upstream/tests/data/writer/font.xml +10 -0
- openrsxl-0.1.0/tests/upstream/tests/data/writer/styles.xml +41 -0
- openrsxl-0.1.0/tests/upstream/tests/data/writer/workbook_custom_doc_props.xml +9 -0
- openrsxl-0.1.0/tests/upstream/tests/data/writer/workbook_manifest_custom_doc_props.xml +10 -0
- openrsxl-0.1.0/tests/upstream/tests/data/writer/workbook_root_rels_custom_doc_props.xml +7 -0
- openrsxl-0.1.0/tests/upstream/tests/notes_on_namespaces.rst +13 -0
- openrsxl-0.1.0/tests/upstream/tests/test_backend.py +59 -0
- openrsxl-0.1.0/tests/upstream/tests/test_iter.py +355 -0
- openrsxl-0.1.0/tests/upstream/tests/test_read.py +32 -0
- openrsxl-0.1.0/tests/upstream/tests/test_read_write_custom_doc_props.py +95 -0
- openrsxl-0.1.0/tests/upstream/tests/test_vba.py +114 -0
- openrsxl-0.1.0/tests/upstream/upstream_helper.py +20 -0
- openrsxl-0.1.0/tests/upstream/utils/tests/test_bound_dictionary.py +38 -0
- openrsxl-0.1.0/tests/upstream/utils/tests/test_cell.py +191 -0
- openrsxl-0.1.0/tests/upstream/utils/tests/test_dataframe.py +132 -0
- openrsxl-0.1.0/tests/upstream/utils/tests/test_datetime.py +202 -0
- openrsxl-0.1.0/tests/upstream/utils/tests/test_escape.py +10 -0
- openrsxl-0.1.0/tests/upstream/utils/tests/test_formulas.py +23 -0
- openrsxl-0.1.0/tests/upstream/utils/tests/test_indexed_list.py +54 -0
- openrsxl-0.1.0/tests/upstream/utils/tests/test_inference.py +61 -0
- openrsxl-0.1.0/tests/upstream/utils/tests/test_protection.py +8 -0
- openrsxl-0.1.0/tests/upstream/utils/tests/test_units.py +212 -0
- openrsxl-0.1.0/tests/upstream/workbook/external_link/tests/conftest.py +12 -0
- openrsxl-0.1.0/tests/upstream/workbook/external_link/tests/data/OLELink.xml +8 -0
- openrsxl-0.1.0/tests/upstream/workbook/external_link/tests/data/[Content_Types].xml +15 -0
- openrsxl-0.1.0/tests/upstream/workbook/external_link/tests/data/book1.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/workbook/external_link/tests/data/book2.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/workbook/external_link/tests/data/externalLink1.xml +69 -0
- openrsxl-0.1.0/tests/upstream/workbook/external_link/tests/data/externalLink1.xml.rels +4 -0
- openrsxl-0.1.0/tests/upstream/workbook/external_link/tests/data/workbook.xml +16 -0
- openrsxl-0.1.0/tests/upstream/workbook/external_link/tests/data/workbook.xml.rels +10 -0
- openrsxl-0.1.0/tests/upstream/workbook/external_link/tests/data/workbook_external_range.xml +23 -0
- openrsxl-0.1.0/tests/upstream/workbook/external_link/tests/data/workbook_namedrange.xml +16 -0
- openrsxl-0.1.0/tests/upstream/workbook/external_link/tests/test_external.py +164 -0
- openrsxl-0.1.0/tests/upstream/workbook/tests/conftest.py +13 -0
- openrsxl-0.1.0/tests/upstream/workbook/tests/data/broken_print_titles.xml +10 -0
- openrsxl-0.1.0/tests/upstream/workbook/tests/data/defined_names.xml +8 -0
- openrsxl-0.1.0/tests/upstream/workbook/tests/data/workbook.xml +13 -0
- openrsxl-0.1.0/tests/upstream/workbook/tests/data/workbook.xml.rels +5 -0
- openrsxl-0.1.0/tests/upstream/workbook/tests/data/workbook_protection.xml +13 -0
- openrsxl-0.1.0/tests/upstream/workbook/tests/data/workbook_vba.xml.rels +7 -0
- openrsxl-0.1.0/tests/upstream/workbook/tests/test_child.py +98 -0
- openrsxl-0.1.0/tests/upstream/workbook/tests/test_defined_name.py +216 -0
- openrsxl-0.1.0/tests/upstream/workbook/tests/test_external_reference.py +33 -0
- openrsxl-0.1.0/tests/upstream/workbook/tests/test_function_group.py +58 -0
- openrsxl-0.1.0/tests/upstream/workbook/tests/test_properties.py +85 -0
- openrsxl-0.1.0/tests/upstream/workbook/tests/test_protection.py +79 -0
- openrsxl-0.1.0/tests/upstream/workbook/tests/test_smart_tags.py +85 -0
- openrsxl-0.1.0/tests/upstream/workbook/tests/test_views.py +82 -0
- openrsxl-0.1.0/tests/upstream/workbook/tests/test_web.py +94 -0
- openrsxl-0.1.0/tests/upstream/workbook/tests/test_workbook.py +327 -0
- openrsxl-0.1.0/tests/upstream/workbook/tests/test_writer.py +294 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/conftest.py +12 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/data/complex-styles-worksheet.xml +430 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/data/copy_test.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/data/dimension.xml +5 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/data/invalid_dimension.xml +5 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/data/more_rows_than_cells.xml +44 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/data/no_dimension.xml +4 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/data/sheetPr2.xml +4 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/data/sheet_inline_strings.xml +73 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/data/test_datetime.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_cell_range.py +388 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_controls.py +75 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_datavalidation.py +191 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_dimensions.py +251 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_filters.py +660 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_formula.py +47 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_header.py +187 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_hyperlink.py +61 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_merge.py +215 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_ole.py +67 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_page.py +122 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_pagebreak.py +78 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_print_settings.py +132 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_properties.py +53 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_protection.py +69 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_read_only.py +281 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_reader.py +1086 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_related.py +16 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_scenario.py +107 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_table.py +289 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_views.py +84 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_worksheet.py +770 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_worksheet_copy.py +164 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_write_only.py +211 -0
- openrsxl-0.1.0/tests/upstream/worksheet/tests/test_writer.py +593 -0
- openrsxl-0.1.0/tests/upstream/writer/tests/conftest.py +10 -0
- openrsxl-0.1.0/tests/upstream/writer/tests/data/[Content_Types].xml +16 -0
- openrsxl-0.1.0/tests/upstream/writer/tests/data/empty.xlsm +0 -0
- openrsxl-0.1.0/tests/upstream/writer/tests/data/empty.xlsx +0 -0
- openrsxl-0.1.0/tests/upstream/writer/tests/data/empty.xltm +0 -0
- openrsxl-0.1.0/tests/upstream/writer/tests/data/empty.xltx +0 -0
- openrsxl-0.1.0/tests/upstream/writer/tests/data/plain.png +0 -0
- openrsxl-0.1.0/tests/upstream/writer/tests/data/sharedStrings.xml +9 -0
- openrsxl-0.1.0/tests/upstream/writer/tests/data/vba+comments.xlsm +0 -0
- openrsxl-0.1.0/tests/upstream/writer/tests/test_excel.py +196 -0
- openrsxl-0.1.0/tests/upstream/writer/tests/test_template.py +77 -0
- openrsxl-0.1.0/tests/upstream/xml/tests/test_functions.py +89 -0
- openrsxl-0.1.0/tools/tokbench.rs +32 -0
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## 0.1.0
|
|
4
|
+
|
|
5
|
+
First release.
|
|
6
|
+
|
|
7
|
+
* `openrsxl`: the complete openpyxl 3.1.5 API (every module, class, function,
|
|
8
|
+
signature, default, exception and warning) with a Rust engine for reading
|
|
9
|
+
and writing cell data: same values, same Python types, byte-identical saved
|
|
10
|
+
files, much faster loading / saving / iteration with a fraction of the
|
|
11
|
+
memory.
|
|
12
|
+
* `openrsxl.extended`: openpyxl's API plus streaming (read-only) access to
|
|
13
|
+
what openpyxl only offers in full mode, each behind its own flag:
|
|
14
|
+
`formula_and_value`, `read_comments`, `read_hyperlinks`,
|
|
15
|
+
`read_merged_cells`, `read_dimensions`, `read_sheet_properties`,
|
|
16
|
+
`read_data_validations`, `read_conditional_formatting`, `read_tables`.
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
# This file is automatically @generated by Cargo.
|
|
2
|
+
# It is not intended for manual editing.
|
|
3
|
+
version = 4
|
|
4
|
+
|
|
5
|
+
[[package]]
|
|
6
|
+
name = "heck"
|
|
7
|
+
version = "0.5.0"
|
|
8
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
9
|
+
checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
|
|
10
|
+
|
|
11
|
+
[[package]]
|
|
12
|
+
name = "libc"
|
|
13
|
+
version = "0.2.190"
|
|
14
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
15
|
+
checksum = "ce5d3ddc6d3fa000eb1536d85e147bfe31aacaba692ed6a876f95cb7c855be78"
|
|
16
|
+
|
|
17
|
+
[[package]]
|
|
18
|
+
name = "memchr"
|
|
19
|
+
version = "2.8.3"
|
|
20
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
21
|
+
checksum = "cf8baf1c55e62ffcace7a9f06f4bd9cd3f0c4beb022d3b367256b91b87513d98"
|
|
22
|
+
|
|
23
|
+
[[package]]
|
|
24
|
+
name = "once_cell"
|
|
25
|
+
version = "1.21.4"
|
|
26
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
27
|
+
checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50"
|
|
28
|
+
|
|
29
|
+
[[package]]
|
|
30
|
+
name = "openrsxl"
|
|
31
|
+
version = "0.1.0"
|
|
32
|
+
dependencies = [
|
|
33
|
+
"memchr",
|
|
34
|
+
"pyo3",
|
|
35
|
+
]
|
|
36
|
+
|
|
37
|
+
[[package]]
|
|
38
|
+
name = "portable-atomic"
|
|
39
|
+
version = "1.15.0"
|
|
40
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
41
|
+
checksum = "05c8b63e8d9609db387f0324918f81d68fe27748f084ef092fb35954d0539a85"
|
|
42
|
+
|
|
43
|
+
[[package]]
|
|
44
|
+
name = "proc-macro2"
|
|
45
|
+
version = "1.0.107"
|
|
46
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
47
|
+
checksum = "985e7ec9bb745e6ce6535b544d84d6cd6f7ad8bd711c398938ae983b91a766d9"
|
|
48
|
+
dependencies = [
|
|
49
|
+
"unicode-ident",
|
|
50
|
+
]
|
|
51
|
+
|
|
52
|
+
[[package]]
|
|
53
|
+
name = "pyo3"
|
|
54
|
+
version = "0.29.3"
|
|
55
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
56
|
+
checksum = "700d18fa267b73b9b521fd7e13580e2f446916f176cacee1ab63fcc8191f1655"
|
|
57
|
+
dependencies = [
|
|
58
|
+
"libc",
|
|
59
|
+
"once_cell",
|
|
60
|
+
"portable-atomic",
|
|
61
|
+
"pyo3-build-config",
|
|
62
|
+
"pyo3-ffi",
|
|
63
|
+
"pyo3-macros",
|
|
64
|
+
]
|
|
65
|
+
|
|
66
|
+
[[package]]
|
|
67
|
+
name = "pyo3-build-config"
|
|
68
|
+
version = "0.29.3"
|
|
69
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
70
|
+
checksum = "7b3fc0c4d08f6bb10e71fe39dfb9e2f59c6eb6854e22ec8092f50c69a4499adb"
|
|
71
|
+
dependencies = [
|
|
72
|
+
"target-lexicon",
|
|
73
|
+
]
|
|
74
|
+
|
|
75
|
+
[[package]]
|
|
76
|
+
name = "pyo3-ffi"
|
|
77
|
+
version = "0.29.3"
|
|
78
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
79
|
+
checksum = "dfc0b8e19df29aad7086cf977bb0c2a2f143e30567eb113e9cf72b62ca698330"
|
|
80
|
+
dependencies = [
|
|
81
|
+
"libc",
|
|
82
|
+
"pyo3-build-config",
|
|
83
|
+
]
|
|
84
|
+
|
|
85
|
+
[[package]]
|
|
86
|
+
name = "pyo3-macros"
|
|
87
|
+
version = "0.29.3"
|
|
88
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
89
|
+
checksum = "6100e8a4b5eba53afaa5ed078364851a0b2499c553a44c31026b929049b49dc6"
|
|
90
|
+
dependencies = [
|
|
91
|
+
"proc-macro2",
|
|
92
|
+
"pyo3-macros-backend",
|
|
93
|
+
"quote",
|
|
94
|
+
"syn",
|
|
95
|
+
]
|
|
96
|
+
|
|
97
|
+
[[package]]
|
|
98
|
+
name = "pyo3-macros-backend"
|
|
99
|
+
version = "0.29.3"
|
|
100
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
101
|
+
checksum = "6143877a16e82b5a727b7127ff4cd86858a24a28d745d72f43e6f227c7b1bdb3"
|
|
102
|
+
dependencies = [
|
|
103
|
+
"heck",
|
|
104
|
+
"proc-macro2",
|
|
105
|
+
"quote",
|
|
106
|
+
"syn",
|
|
107
|
+
]
|
|
108
|
+
|
|
109
|
+
[[package]]
|
|
110
|
+
name = "quote"
|
|
111
|
+
version = "1.0.47"
|
|
112
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
113
|
+
checksum = "1fbf4db142a473a8d80c26bbf18454ed458bf8d26c8219c331daecfdbd079001"
|
|
114
|
+
dependencies = [
|
|
115
|
+
"proc-macro2",
|
|
116
|
+
]
|
|
117
|
+
|
|
118
|
+
[[package]]
|
|
119
|
+
name = "syn"
|
|
120
|
+
version = "2.0.119"
|
|
121
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
122
|
+
checksum = "872831b642d1a07999a962a351ed35b955ea2cfc8f3862091e2a240a84f17297"
|
|
123
|
+
dependencies = [
|
|
124
|
+
"proc-macro2",
|
|
125
|
+
"quote",
|
|
126
|
+
"unicode-ident",
|
|
127
|
+
]
|
|
128
|
+
|
|
129
|
+
[[package]]
|
|
130
|
+
name = "target-lexicon"
|
|
131
|
+
version = "0.13.5"
|
|
132
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
133
|
+
checksum = "adb6935a6f5c20170eeceb1a3835a49e12e19d792f6dd344ccc76a985ca5a6ca"
|
|
134
|
+
|
|
135
|
+
[[package]]
|
|
136
|
+
name = "unicode-ident"
|
|
137
|
+
version = "1.0.26"
|
|
138
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
139
|
+
checksum = "d245f478577f809a851594d02313b640fb437e0bb33866753cff937863096954"
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
[package]
|
|
2
|
+
name = "openrsxl"
|
|
3
|
+
version = "0.1.0"
|
|
4
|
+
edition = "2021"
|
|
5
|
+
license = "MIT"
|
|
6
|
+
description = "Rust engine for openrsxl, an openpyxl-compatible Excel library"
|
|
7
|
+
authors = ["asheer_mokry"]
|
|
8
|
+
repository = "https://github.com/AmirShokry/openrsxl"
|
|
9
|
+
homepage = "https://github.com/AmirShokry/openrsxl"
|
|
10
|
+
readme = "README.md"
|
|
11
|
+
publish = false
|
|
12
|
+
# source distribution (maturin adds the Python package and the files listed in
|
|
13
|
+
# pyproject.toml)
|
|
14
|
+
include = [
|
|
15
|
+
"/src/**/*.rs",
|
|
16
|
+
"/tools/tokbench.rs",
|
|
17
|
+
"/Cargo.toml",
|
|
18
|
+
"/Cargo.lock",
|
|
19
|
+
"/README.md",
|
|
20
|
+
"/LICENSE",
|
|
21
|
+
"/NOTICE",
|
|
22
|
+
]
|
|
23
|
+
|
|
24
|
+
[lib]
|
|
25
|
+
name = "_openrsxl"
|
|
26
|
+
crate-type = ["cdylib", "rlib"]
|
|
27
|
+
|
|
28
|
+
[dependencies]
|
|
29
|
+
# "extension-module" is enabled by maturin (pyproject.toml), so that `cargo test`
|
|
30
|
+
# links against libpython on every platform
|
|
31
|
+
pyo3 = "0.29"
|
|
32
|
+
memchr = "2"
|
|
33
|
+
|
|
34
|
+
[profile.release]
|
|
35
|
+
lto = "fat"
|
|
36
|
+
codegen-units = 1
|
|
37
|
+
opt-level = 3
|
|
38
|
+
|
|
39
|
+
[features]
|
|
40
|
+
# timing output for development (never enabled in release builds)
|
|
41
|
+
prof = []
|
|
42
|
+
|
|
43
|
+
# tokenizer throughput: cargo run --release --example tokbench <file.xml>
|
|
44
|
+
[[example]]
|
|
45
|
+
name = "tokbench"
|
|
46
|
+
path = "tools/tokbench.rs"
|
openrsxl-0.1.0/LICENSE
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 openrsxl contributors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a
|
|
6
|
+
copy of this software and associated documentation files (the
|
|
7
|
+
"Software"), to deal in the Software without restriction, including
|
|
8
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
|
9
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
|
10
|
+
permit persons to whom the Software is furnished to do so, subject to
|
|
11
|
+
the following conditions:
|
|
12
|
+
|
|
13
|
+
The above copyright notice and this permission notice shall be included
|
|
14
|
+
in all copies or substantial portions of the Software.
|
|
15
|
+
|
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
|
17
|
+
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
18
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
19
|
+
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
|
20
|
+
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
21
|
+
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
22
|
+
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
openrsxl-0.1.0/NOTICE
ADDED
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
openrsxl contains code derived from openpyxl 3.1.5 (https://openpyxl.readthedocs.io),
|
|
2
|
+
which is distributed under the following licence:
|
|
3
|
+
|
|
4
|
+
This software is under the MIT Licence
|
|
5
|
+
======================================
|
|
6
|
+
|
|
7
|
+
Copyright (c) 2010 openpyxl
|
|
8
|
+
|
|
9
|
+
Permission is hereby granted, free of charge, to any person obtaining a
|
|
10
|
+
copy of this software and associated documentation files (the
|
|
11
|
+
"Software"), to deal in the Software without restriction, including
|
|
12
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
|
13
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
|
14
|
+
permit persons to whom the Software is furnished to do so, subject to
|
|
15
|
+
the following conditions:
|
|
16
|
+
|
|
17
|
+
The above copyright notice and this permission notice shall be included
|
|
18
|
+
in all copies or substantial portions of the Software.
|
|
19
|
+
|
|
20
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
|
21
|
+
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
22
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
23
|
+
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
|
24
|
+
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
25
|
+
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
26
|
+
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
27
|
+
|
|
28
|
+
openpyxl authors:
|
|
29
|
+
|
|
30
|
+
This project was started by Eric Gazoni. In 2013 Charlie Clark became
|
|
31
|
+
co-maintainer of the project.
|
|
32
|
+
|
|
33
|
+
It was initially *heavily* inspired by the PHPExcel library:
|
|
34
|
+
http://www.phpexcel.net/
|
|
35
|
+
|
|
36
|
+
Thanks to all those who participate in the project (in alphabetical order):
|
|
37
|
+
|
|
38
|
+
* aceMueller
|
|
39
|
+
* Adam Lofts
|
|
40
|
+
* Adam Morris
|
|
41
|
+
* Alessandro Cucci
|
|
42
|
+
* Alex Gronholm
|
|
43
|
+
* Alexander Ley
|
|
44
|
+
* Alexandre Fayolle
|
|
45
|
+
* Amin Mirzaee
|
|
46
|
+
* Anders Chrigstrom
|
|
47
|
+
* Anthony Hayward
|
|
48
|
+
* Bernt R. Brenna
|
|
49
|
+
* Brent Hoover
|
|
50
|
+
* Brice Gelineau
|
|
51
|
+
* ccoacley
|
|
52
|
+
* Chi Ho Kwok
|
|
53
|
+
* Cory Kramer
|
|
54
|
+
* Day Barr
|
|
55
|
+
* Detlef Lannert
|
|
56
|
+
* Dieter Vandenbussche
|
|
57
|
+
* Dmitriy Chernyshov
|
|
58
|
+
* Dominik Geldmacher
|
|
59
|
+
* Don Freeman
|
|
60
|
+
* Eirikur Fannar Torfason
|
|
61
|
+
* Elias Rabel
|
|
62
|
+
* Eric Chlebek
|
|
63
|
+
* Eric Gazoni
|
|
64
|
+
* Eric Hurkman
|
|
65
|
+
* Etienne Desautels
|
|
66
|
+
* Felipe Ochoa
|
|
67
|
+
* Felix Siebeneicker
|
|
68
|
+
* Fumito Hamamura
|
|
69
|
+
* Gabi Nagy
|
|
70
|
+
* Gar Thompson
|
|
71
|
+
* Gerald Van Huffelen
|
|
72
|
+
* Greg Lehmann
|
|
73
|
+
* Heikki Junes
|
|
74
|
+
* Israel Barth Rubio
|
|
75
|
+
* Jacob Middag
|
|
76
|
+
* James Smagala
|
|
77
|
+
* JarekPS
|
|
78
|
+
* Jean Pierre Huart
|
|
79
|
+
* Jeff Holman
|
|
80
|
+
* John Woltman IV
|
|
81
|
+
* Jonathan Peirce
|
|
82
|
+
* Joseph Tate
|
|
83
|
+
* Josh Haywood
|
|
84
|
+
* Jun Omae
|
|
85
|
+
* Kay Webber
|
|
86
|
+
* Khchine Hamza
|
|
87
|
+
* Klaus Bremer
|
|
88
|
+
* Koert van der Veer
|
|
89
|
+
* Laurent Laporte
|
|
90
|
+
* Laurent Vasseur
|
|
91
|
+
* Liam Sanders
|
|
92
|
+
* Maarten De Paepe
|
|
93
|
+
* Magnus Schieder
|
|
94
|
+
* Mark Gemmill
|
|
95
|
+
* Marko Loparic
|
|
96
|
+
* Masato Yoshida
|
|
97
|
+
* Max Bolingbroke
|
|
98
|
+
* Nicholas Laver
|
|
99
|
+
* Nis Martensen
|
|
100
|
+
* Paul Joyce
|
|
101
|
+
* Paul Van Der Linden
|
|
102
|
+
* Philip Roche
|
|
103
|
+
* Primoz Godec
|
|
104
|
+
* ramn_se
|
|
105
|
+
* René Neumann
|
|
106
|
+
* Rick Rankin
|
|
107
|
+
* Samuel Loretan
|
|
108
|
+
* Sergey Pikhovkin
|
|
109
|
+
* Shekhar Gyanwali
|
|
110
|
+
* Shibukawa Yoshiki
|
|
111
|
+
* Stefan Behnel
|
|
112
|
+
* Stephane Bard
|
|
113
|
+
* Stephen Rauch
|
|
114
|
+
* Sven Burk
|
|
115
|
+
* Ted Pollari
|
|
116
|
+
* Thomas Nygards
|
|
117
|
+
* Victor Korobkovsky
|
|
118
|
+
* Waldemar Osuch
|
|
119
|
+
* Wojciech Rola
|
|
120
|
+
* Wolfgane Scherer
|
|
121
|
+
* Yaroslav Halchenko
|
|
122
|
+
* Yash Jhunjhunwala
|
|
123
|
+
* Yingjie Lan
|
|
124
|
+
* Leetao
|
|
125
|
+
|
|
126
|
+
Project logo designed by Eric Gazoni, font by claudeserieux
|
|
127
|
+
(http://www.dafont.com/profile.php?user=337503)
|