Skip to content

Possible roadmap #731

@Art4

Description

@Art4

In this issue I collect the progress of the refactoring of SimplePie. This roadmap serves me as a central place for rough planning. Please note that the roadmap is only my personal proposal for the further development of SimplePie, but has not been officially confirmed by the SimplePie team.

I would love to hear feedback from the SimplePie team and community. Please share your thoughts on what you think of this roadmap.

Possible roadmap

All changes must be backward compatible to adheres Semantic Versioning. Breaking changes are allowed with the release of 2.0.0.

🚀 SimplePie 1.6.0

(Allow usage of PSR-4 namespaced classes)

🚀 SimplePie 1.7.0

(Refactoring to use PSR-4 internally, refactoring tests)

🚀 SimplePie 1.8.0

(Allow external cache implementations)

🚀 SimplePie 1.9.0

(Allow external HTTP libraries)

🏗️ SimplePie 1.10.0

(deprecate File, Locator, Sniffer classes and provide alternatives)

🔲 SimplePie 1.11.0

(Trigger deprecation warnings to prepare for upgrade to SimplePie 2.0.0)

  • Add option to throw or mute deprecation warnings
  • Add deprecation warnings in all classes in library folder, see Add namespaced classes and PSR-4 support #711 (comment)
  • Add deprecation warnings in all internal cache implementation (provide PSR-16 implementation instead)
  • Add deprecation warnings in SimplePie\File (provide PSR-18 implementation instead)
  • deprecate the single-file build because of external dependencies in v2
  • deprecate the usage of PSR-0
  • deprecate the usage of global constants like SIMPLEPIE_VERSION, use SimplePie\SimplePie::VERSION instead

🔲 SimplePie 2.0.0

(BC breaks are allowed; Require external HTTP library and cache implementation)

  • Require PSR-16 cache implementation (use no cache as default)
  • Require PSR-18 HTTP client implementation (use Requests as Default)
  • remove single-file build because of external dependencies
  • remove all deprecated code
  • remove error handling and enable_exceptions, throw always exceptions
  • remove the library folder
  • remove tests for deprecated code

🔲 SimplePie 2.1.0

(To be determined)

Old ROADMAP.md

This roadmap is based on the (10 year old) ./ROADMAP.md that is now outdated.

# SimplePie Roadmap

This roadmap is a guide for what we're heading towards with SimplePie releases.
These are guiding features, however more may be included in each release.

## 1.4
* **Split the feed-level methods out of the main SimplePie class**

  This will make the main SimplePie class the main API for setting options.

* **Deprecate SimplePie_File**

  There are much better HTTP libraries out there than the included one. Instead,
  enable easy use of Guzzle and Requests via a new API, using Requests by
  default via Composer.

## 1.5
* **Improve performance and memory usage**

  SimplePie's performance leaves much to be desired, so this should be the focal
  point of this release.

## 1.6
* **To be determined**

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions