Skip to content

Commit c78888c

Browse files
authored
Merge branch 'master' into atsign
2 parents 74f312b + 626b08f commit c78888c

File tree

116 files changed

+2818
-896
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

116 files changed

+2818
-896
lines changed

.github/workflows/main.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ jobs:
1010
experimental:
1111
- false
1212
php-version:
13-
- '8.0'
1413
- '8.1'
1514
- '8.2'
1615
- '8.3'
@@ -174,7 +173,7 @@ jobs:
174173
run: composer install --no-progress --prefer-dist --optimize-autoloader
175174

176175
- name: Code Version Compatibility check with PHP_CodeSniffer
177-
run: ./vendor/bin/phpcs -q --report-width=200 --report=summary,full src/ --standard=PHPCompatibility --runtime-set testVersion 8.0-
176+
run: ./vendor/bin/phpcs -q --report-width=200 --report=summary,full src/ --standard=PHPCompatibility --runtime-set testVersion 8.1-
178177

179178
phpstan:
180179
runs-on: ubuntu-latest

CHANGELOG.md

Lines changed: 35 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,36 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com)
66
and this project adheres to [Semantic Versioning](https://semver.org).
77

8-
## Unreleased - TBD
8+
## TBD - 2.2.0
99

10-
### BREAKING CHANGE
10+
### Added
11+
12+
- Xlsx Reader Optionally Ignore Rows With No Cells. [Issue #3982](https://github.com/PHPOffice/PhpSpreadsheet/issues/3982) [PR #4035](https://github.com/PHPOffice/PhpSpreadsheet/pull/4035)
13+
14+
### Changed
15+
16+
- Nothing
17+
18+
### Deprecated
19+
20+
- Writer\Xls\Style\ColorMap is no longer needed.
21+
22+
### Moved
23+
24+
- Nothing
25+
26+
### Fixed
27+
28+
- Incorrect Reader CSV with BOM. [Issue #4028](https://github.com/PHPOffice/PhpSpreadsheet/issues/4028) [PR #4029](https://github.com/PHPOffice/PhpSpreadsheet/pull/4029)
29+
- POWER Null/Bool Args. [PR #4031](https://github.com/PHPOffice/PhpSpreadsheet/pull/4031)
30+
- Do Not Output Alignment and Protection for Conditional Format. [Issue #4025](https://github.com/PHPOffice/PhpSpreadsheet/issues/4025) [PR #4027](https://github.com/PHPOffice/PhpSpreadsheet/pull/4027)
31+
- Mpdf and Tcpdf Borders on Merged Cells. [Issue #3557](https://github.com/PHPOffice/PhpSpreadsheet/issues/3557) [PR #4047](https://github.com/PHPOffice/PhpSpreadsheet/pull/4047)
32+
- Xls Conditional Format Improvements. [PR #4030](https://github.com/PHPOffice/PhpSpreadsheet/pull/4030) [PR #4033](https://github.com/PHPOffice/PhpSpreadsheet/pull/4033)
33+
- Csv Reader allow use of html mimetype. [Issue #4036](https://github.com/PHPOffice/PhpSpreadsheet/issues/4036) [PR #4049](https://github.com/PHPOffice/PhpSpreadsheet/pull/4040)
34+
35+
## 2024-05-11 - 2.1.0
36+
37+
### MINOR BREAKING CHANGE
1138

1239
- Writing of cell comments to Html will now sanitize all Html tags within the comment, so the tags will be rendered as plaintext and have no other effects when rendered. Styling can be achieved by using the Font property of of the TextRuns which make up the comment, as is already the cases for Xlsx. [PR #3957](https://github.com/PHPOffice/PhpSpreadsheet/pull/3957)
1340

@@ -22,7 +49,7 @@ and this project adheres to [Semantic Versioning](https://semver.org).
2249

2350
### Deprecated
2451

25-
- Nothing
52+
- Reader/Xml trySimpleXMLLoadString should not have had public visibility, and will be removed.
2653

2754
### Removed
2855

@@ -41,7 +68,12 @@ and this project adheres to [Semantic Versioning](https://semver.org).
4168
- Unallocated Cells Affected by Column/Row Insert/Delete [Issue #3933](https://github.com/PHPOffice/PhpSpreadsheet/issues/3933) [PR #3940](https://github.com/PHPOffice/PhpSpreadsheet/pull/3940)
4269
- Invalid Builtin Defined Name in Xls Reader [Issue #3935](https://github.com/PHPOffice/PhpSpreadsheet/issues/3935) [PR #3942](https://github.com/PHPOffice/PhpSpreadsheet/pull/3942)
4370
- Hidden Rows and Columns Tcpdf/Mpdf [PR #3945](https://github.com/PHPOffice/PhpSpreadsheet/pull/3945)
71+
- RTL Text Alignment in Xlsx Comments [Issue #4004](https://github.com/PHPOffice/PhpSpreadsheet/issues/4004) [PR #4006](https://github.com/PHPOffice/PhpSpreadsheet/pull/4006)
4472
- Protect Sheet But Allow Sort [Issue #3951](https://github.com/PHPOffice/PhpSpreadsheet/issues/3951) [PR #3956](https://github.com/PHPOffice/PhpSpreadsheet/pull/3956)
73+
- Default Value for Conditional::$text [PR #3946](https://github.com/PHPOffice/PhpSpreadsheet/pull/3946)
74+
- Table Filter Buttons [Issue #3988](https://github.com/PHPOffice/PhpSpreadsheet/issues/3988) [PR #3992](https://github.com/PHPOffice/PhpSpreadsheet/pull/3992)
75+
- Improvements to Xml Reader [Issue #3999](https://github.com/PHPOffice/PhpSpreadsheet/issues/3999) [Issue #4000](https://github.com/PHPOffice/PhpSpreadsheet/issues/4000) [Issue #4001](https://github.com/PHPOffice/PhpSpreadsheet/issues/4001) [Issue #4002](https://github.com/PHPOffice/PhpSpreadsheet/issues/4002) [PR #4003](https://github.com/PHPOffice/PhpSpreadsheet/pull/4003) [PR #4007](https://github.com/PHPOffice/PhpSpreadsheet/pull/4007)
76+
- Html Reader non-UTF8 [Issue #3995](https://github.com/PHPOffice/PhpSpreadsheet/issues/3995) [Issue #866](https://github.com/PHPOffice/PhpSpreadsheet/issues/866) [Issue #1681](https://github.com/PHPOffice/PhpSpreadsheet/issues/1681) [PR #4019](https://github.com/PHPOffice/PhpSpreadsheet/pull/4019)
4577

4678
## 2.0.0 - 2024-01-04
4779

README.md

Lines changed: 1 addition & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -11,80 +11,9 @@
1111
PhpSpreadsheet is a library written in pure PHP and offers a set of classes that
1212
allow you to read and write various spreadsheet file formats such as Excel and LibreOffice Calc.
1313

14-
## PHP Version Support
15-
16-
LTS: Support for PHP versions will only be maintained for a period of six months beyond the
17-
[end of life](https://www.php.net/supported-versions) of that PHP version.
18-
19-
Currently the required PHP minimum version is PHP __8.0__, and we [will support that version](https://www.php.net/eol.php) until May 2024.
20-
21-
See the `composer.json` for other requirements.
22-
2314
## Installation
2415

25-
Use [composer](https://getcomposer.org) to install PhpSpreadsheet into your project:
26-
27-
```sh
28-
composer require phpoffice/phpspreadsheet
29-
```
30-
31-
If you are building your installation on a development machine that is on a different PHP version to the server where it will be deployed, or if your PHP CLI version is not the same as your run-time such as `php-fpm` or Apache's `mod_php`, then you might want to add the following to your `composer.json` before installing:
32-
```json
33-
{
34-
"config": {
35-
"platform": {
36-
"php": "8.0"
37-
}
38-
}
39-
}
40-
```
41-
and then run
42-
```sh
43-
composer install
44-
```
45-
to ensure that the correct dependencies are retrieved to match your deployment environment.
46-
47-
See [CLI vs Application run-time](https://php.watch/articles/composer-platform-check) for more details.
48-
49-
### Additional Installation Options
50-
51-
If you want to write to PDF, or to include Charts when you write to HTML or PDF, then you will need to install additional libraries:
52-
53-
#### PDF
54-
55-
For PDF Generation, you can install any of the following, and then configure PhpSpreadsheet to indicate which library you are going to use:
56-
- mpdf/mpdf
57-
- dompdf/dompdf
58-
- tecnickcom/tcpdf
59-
60-
and configure PhpSpreadsheet using:
61-
62-
```php
63-
// Dompdf, Mpdf or Tcpdf (as appropriate)
64-
$className = \PhpOffice\PhpSpreadsheet\Writer\Pdf\Dompdf::class;
65-
IOFactory::registerWriter('Pdf', $className);
66-
```
67-
or the appropriate PDF Writer wrapper for the library that you have chosen to install.
68-
69-
#### Chart Export
70-
71-
For Chart export, we support following packages, which you will also need to install yourself using `composer require`
72-
- [jpgraph/jpgraph](https://packagist.org/packages/jpgraph/jpgraph) (this package was abandoned at version 4.0.
73-
You can manually download the latest version that supports PHP 8 and above from [jpgraph.net](https://jpgraph.net/))
74-
- [mitoteam/jpgraph](https://packagist.org/packages/mitoteam/jpgraph) - up to date fork with modern PHP versions support and some bugs fixed.
75-
76-
and then configure PhpSpreadsheet using:
77-
```php
78-
// to use jpgraph/jpgraph
79-
Settings::setChartRenderer(\PhpOffice\PhpSpreadsheet\Chart\Renderer\JpGraph::class);
80-
//or
81-
// to use mitoteam/jpgraph
82-
Settings::setChartRenderer(\PhpOffice\PhpSpreadsheet\Chart\Renderer\MtJpGraphRenderer::class);
83-
```
84-
85-
One or the other of these libraries is necessary if you want to generate HTML or PDF files that include charts; or to render a Chart to an Image format from within your code.
86-
They are not necessary to define charts for writing to `Xlsx` files.
87-
Other file formats don't support writing Charts.
16+
See the [install instructions](https://phpspreadsheet.readthedocs.io/en/latest/#installation).
8817

8918
## Documentation
9019

composer.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
],
1414
"config": {
1515
"platform": {
16-
"php" : "8.0.99"
16+
"php" : "8.1.99"
1717
},
1818
"sort-packages": true,
1919
"allow-plugins": {
@@ -65,7 +65,7 @@
6565
]
6666
},
6767
"require": {
68-
"php": "^8.0",
68+
"php": "^8.1",
6969
"ext-ctype": "*",
7070
"ext-dom": "*",
7171
"ext-fileinfo": "*",

0 commit comments

Comments
 (0)