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

[NFR]: Remove Tag #15801

Closed
niden opened this issue Nov 18, 2021 · 3 comments · Fixed by #15826
Closed

[NFR]: Remove Tag #15801

niden opened this issue Nov 18, 2021 · 3 comments · Fixed by #15826
Assignees
Labels
5.0 The issues we want to solve in the 5.0 release new feature request Planned Feature or New Feature Request

Comments

@niden
Copy link
Sponsor Member

niden commented Nov 18, 2021

Remove Phalcon\Tag in favor of Phalcon\Html\TagFactory

@niden niden added the new feature request Planned Feature or New Feature Request label Nov 18, 2021
@niden niden self-assigned this Nov 18, 2021
@niden niden added the 5.0 The issues we want to solve in the 5.0 release label Nov 18, 2021
@niden niden added this to Active Sprint Tasks in Phalcon Roadmap Nov 18, 2021
@niden niden moved this from Active Sprint Tasks to Working on it in Phalcon Roadmap Dec 1, 2021
@niden niden mentioned this issue Dec 11, 2021
5 tasks
@niden niden linked a pull request Dec 11, 2021 that will close this issue
5 tasks
@niden
Copy link
Sponsor Member Author

niden commented Dec 11, 2021

Part of this work has been resolved with #15826

Remaining

  • test corrections once module-phalcon5 is ready from Codeception
  • tagFactory injected into Volt : Di is injected into Volt so we can access TagFactory there
  • Tag\Select needs to be created (using model)
  • Complete removal of Tag

@niden niden mentioned this issue Dec 17, 2021
5 tasks
@niden
Copy link
Sponsor Member Author

niden commented Dec 20, 2021

The usage of Tag in Volt is causing issues. The methods that Tag uses all accept an array of parameters, and accordingly the code in Tag parses them for each relevant method. As such, Volt parses the parameters passed for say

text_field( param1, param2. ...)

and creates code like this:

$this->tag->textField([param1, param2, ...]);

With the new helpers this is not feasible because they are more specific on what they accept and what not. Therefore a straight up change from the Tag helpers to the TagFactory helpers is not possible. In addition, removing the Tag based syntax will result in huge problems for the developers, since they will have to upgrade everything in their views - and that is not a simple find/replace.

For now this will stay as is for v5. In v6 we will remove Tag completely but will allow developers to use the old syntax, so as not to force everyone to update all their views at once.

@niden
Copy link
Sponsor Member Author

niden commented Dec 23, 2021

Closing this - it will be addressed in v6

@niden niden closed this as completed Dec 23, 2021
Phalcon Roadmap automation moved this from Working on it to Implemented Dec 23, 2021
@niden niden moved this from Implemented to Released in Phalcon Roadmap Dec 25, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
5.0 The issues we want to solve in the 5.0 release new feature request Planned Feature or New Feature Request
Projects
Archived in project
Phalcon Roadmap
  
Released
Development

Successfully merging a pull request may close this issue.

1 participant