doctrine / annotations

Annotations Docblock Parser
https://www.doctrine-project.org/projects/annotations.html
MIT License
6.74k stars 235 forks source link

[RFC] Flag the package as abandoned on Packagist #485

Open derrabus opened 1 year ago

derrabus commented 1 year ago

With the introduction of native attributes to the PHP language, the Doctrine Annotations package has become legacy.

Since PHP attributes are an equal or better replacement in every aspect, we should take steps to flush out doctrine/annotations of the package ecosystem. The primary goal would be that no actively maintained composer package should list the doctrine/annotations package as a mandatory dependency in their latest release. Instead, PHP attributes should be offered as an alternative, so downstream projects can migrate at their own pace.

I wonder if flagging the package as abandoned would help in that regard. It would make Composer issue a warning when installing dependencies. Maintainers of PHP applications can check why doctrine/annotations is still in their dependencies.

Thoughts?

malarzm commented 1 year ago

Sure! Two things I think we should do:

  1. the disclaimer in README and in docs need to be bigger (or maybe just in the readme)
  2. write a goodbye blogpost, maybe with some small reference (or just pointers) how easy the switch could be?
derrabus commented 1 year ago

the disclaimer in README and in docs need to be bigger (or maybe just in the readme)

Agreed.

write a goodbye blogpost, maybe with some small reference (or just pointers) how easy the switch could be?

Well, we have https://www.doctrine-project.org/2022/11/04/annotations-to-attributes.html.

derrabus commented 1 year ago

the disclaimer in README and in docs need to be bigger (or maybe just in the readme)

Agreed.

see #486.

malarzm commented 1 year ago

Well, we have https://www.doctrine-project.org/2022/11/04/annotations-to-attributes.html.

Totally forgot about it 🙈

stof commented 1 year ago

This blog post refers to migrating the ORM annotations (the initial parts explaining the history is not specific to the ORM but the rector-based migration is). Given that doctrine/annotations is used by many other packages than Doctrine projects, abandoning the package would deserve a dedicated blog post IMO. It could give it more visibility and explain the expectation for the ecosystem.

Side note: the Symfony framework is currently working on deprecating its support for annotations in its various components. Maybe marking the package as abandoned could wait until after the 6.4 and 7.0 releases of Symfony (scheduled for end of November), to avoid getting tons of reports saying that users of Symfony cannot stop using this abandoned package yet.

derrabus commented 1 year ago

This blog post refers to migrating the ORM annotations

Sure, but it showcases how the ORM did the trick.

abandoning the package would deserve a dedicated blog post IMO.

Certainly!

Maybe marking the package as abandoned could wait until after the 6.4 and 7.0 releases of Symfony (scheduled for end of November), to avoid getting tons of reports saying that users of Symfony cannot stop using this abandoned package yet.

But they can! Doctrine Annotations has always been an optional dependency for Symfony and everything they need to replace them is in Symfony 6.3 already.