Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug] @Deprecated annotations are not used by IDEs to show warnings #3162

Closed
nicolanrizzo opened this issue Nov 10, 2022 · 4 comments
Closed

Comments

@nicolanrizzo
Copy link

This is:

- [X ] a bug report
- [ ] a feature request
- [X ] **not** a usage question (ask them on https://stackoverflow.com/questions/tagged/phpspreadsheet or https://gitter.im/PHPOffice/PhpSpreadsheet)

What is the expected behavior?

IDEs show warnings for deprecated methods (like setCellValueByColumnAndRow).

What is the current behavior?

IDEs do not show warnings for deprecated methods.

What are the steps to reproduce?

<?php

require __DIR__ . '/vendor/autoload.php';

$spreadsheet = new \PhpOffice\PhpSpreadsheet\Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
// the method in the next line should be marked deprecated by IDEs, but it's not
$sheet->setCellValueByColumnAndRow(1, 1, 'test');

What features do you think are causing the issue

The annotation @Deprecated does not exist. The annotation @deprecated should be used instead (see: https://docs.phpdoc.org/guide/references/phpdoc/tags/deprecated.html).

Which versions of PhpSpreadsheet and PHP are affected?

The current master branch presents this issue.

@nicolanrizzo nicolanrizzo changed the title @Deprecated annotations are not used by IDEs to show warnings [Bug] @Deprecated annotations are not used by IDEs to show warnings Nov 10, 2022
oleibman added a commit to oleibman/PhpSpreadsheet that referenced this issue Nov 12, 2022
Fix PHPOffice#3162. There are 434 deprecation annotations in 24 source members. Of these, 405 annotations in 13 members use an uppercase D, which causes them to be ignored by IDE's and Scrutinizer. Some of the accompanying 'see' annotations also use uppercase and should be corrected. There is a blank line before some of the 'see' annotations which should be removed, some of the 'see' are not located near 'deprecated', and some of them have no blank between asterisk and at-sign. My initial commit will just make these changes, but I suspect that Scrutinizer will have a lot to say as a result.
@oleibman
Copy link
Collaborator

Although much of the work will happen in #3166, I have started to subdivide that ticket. Tickets #3174, #3175, and #3176, and four others which I will push later today, also address this problem, and my plan is to merge those before 3166.

@oleibman
Copy link
Collaborator

Other PRs are #3177, #3178, #3180, #3181, and #3183. I have moved 3166 to draft status - it probably won't be needed.

@oleibman
Copy link
Collaborator

All PR's are now merged. I will close this issue in a few days. If you have a chance to test against master, please do so.

@oleibman
Copy link
Collaborator

oleibman commented Dec 2, 2022

Closing. This should be fixed in master, and will be fixed for all with the next release.

@oleibman oleibman closed this as completed Dec 2, 2022
MarkBaker added a commit that referenced this issue Dec 21, 2022
### Added

- Extended flag options for the Reader `load()` and Writer `save()` methods
- Apply Row/Column limits (1048576 and XFD) in ReferenceHelper [PR #3213](#3213)
- Allow the creation of In-Memory Drawings from a string of binary image data, or from a stream. [PR #3157](#3157)
- Xlsx Reader support for Pivot Tables [PR #2829](#2829)
- Permit Date/Time Entered on Spreadsheet to be calculated as Float [Issue #1416](#1416) [PR #3121](#3121)

### Changed

- Nothing

### Deprecated

- Direct update of Calculation::suppressFormulaErrors is replaced with setter.
- Font public static variable defaultColumnWidths replaced with constant DEFAULT_COLUMN_WIDTHS.
- ExcelError public static variable errorCodes replaced with constant ERROR_CODES.
- NumberFormat constant FORMAT_DATE_YYYYMMDD2 replaced with existing identical FORMAT_DATE_YYYYMMDD.

### Removed

- Nothing

### Fixed

- Fixed handling for `_xlws` prefixed functions from Office365 [Issue #3245](#3245) [PR #3247](#3247)
- Conditionals formatting rules applied to rows/columns are removed [Issue #3184](#3184) [PR #3213](#3213)
- Treat strings containing currency or accounting values as floats in Calculation Engine operations [Issue #3165](#3165) [PR #3189](#3189)
- Treat strings containing percentage values as floats in Calculation Engine operations [Issue #3155](#3155) [PR #3156](#3156) and [PR #3164](#3164)
- Xlsx Reader Accept Palette of Fewer than 64 Colors [Issue #3093](#3093) [PR #3096](#3096)
- Use Locale-Independent Float Conversion for Xlsx Writer Custom Property [Issue #3095](#3095) [PR #3099](#3099)
- Allow setting AutoFilter range on a single cell or row [Issue #3102](#3102) [PR #3111](#3111)
- Xlsx Reader External Data Validations Flag Missing [Issue #2677](#2677) [PR #3078](#3078)
- Reduces extra memory usage on `__destruct()` calls [PR #3092](#3092)
- Additional properties for Trendlines [Issue #3011](#3011) [PR #3028](#3028)
- Calculation suppressFormulaErrors fix [Issue #1531](#1531) [PR #3092](#3092)
- Permit Date/Time Entered on Spreadsheet to be Calculated as Float [Issue #1416](#1416) [PR #3121](#3121)
- Incorrect Handling of Data Validation Formula Containing Ampersand [Issue #3145](#3145) [PR #3146](#3146)
- Xlsx Namespace Handling of Drawings, RowAndColumnAttributes, MergeCells [Issue #3138](#3138) [PR #3136](#3137)
- Generation3 Copy With Image in Footer [Issue #3126](#3126) [PR #3140](#3140)
- MATCH Function Problems with Int/Float Compare and Wildcards [Issue #3141](#3141) [PR #3142](#3142)
- Fix ODS Read Filter on number-columns-repeated cell [Issue #3148](#3148) [PR #3149](#3149)
- Problems Formatting Very Small and Very Large Numbers [Issue #3128](#3128) [PR #3152](#3152)
- XlsxWrite preserve line styles for y-axis, not just x-axis [PR #3163](#3163)
- Xlsx Namespace Handling of Drawings, RowAndColumnAttributes, MergeCells [Issue #3138](#3138) [PR #3137](#3137)
- More Detail for Cyclic Error Messages [Issue #3169](#3169) [PR #3170](#3170)
- Improved Documentation for Deprecations - many PRs [Issue #3162](#3162)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging a pull request may close this issue.

2 participants