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

Document BC breaks #1261

Closed
cmfcmf opened this issue Sep 29, 2013 · 16 comments
Closed

Document BC breaks #1261

cmfcmf opened this issue Sep 29, 2013 · 16 comments
Milestone

Comments

@cmfcmf
Copy link
Contributor

cmfcmf commented Sep 29, 2013

BC breaks

  • every call to a system module (API, modvars, etc.) must now use ZikulaXXXModule.
  • $this->request->files syntax changed, the old way will not work anymore.
  • sluggable doctrine extension has to be refactored 🆗
  • request filter method signature has changed - see Guite/MostGenerator@dfeb811
  • usage of D2 native paginator (not part of the core, but still a change for modules) 🆗
  • etc.

Why this list? To collect all the BC breaks at one place, move them into changelog / UPGRADING all together, and see if @Drak's promise with almost no BC breaks is true.

  • 🆗 The bc break now is documented
  • strike through The bc break is fixed
@ghost
Copy link

ghost commented Sep 29, 2013

This ticket is unnecessary. Just open a PR on UPGRADING-1.3.6 to document whatever is missing. So far, everything is in there. See my list below.

every call to a system module (API, modvars, etc.) must now use ZikulaXXXModule.

This is not a BC break, the system translates this internally here

$this->request->files syntax changed, the old way will not work anymore.

This is too bad, we just have to document this.

sluggable doctrine extension has to be refactored

This is already documented here

usage of D2 native paginator (not part of the core, but still a change for modules)

Already documented here

"ztemp" moved

This is not a BC break

js, css of system modules moved (effects auth modules for example, which are stealing the style sheets of the users module)

These are handled and rewritten internally, so these are not a BC break.

@cmfcmf
Copy link
Contributor Author

cmfcmf commented Sep 29, 2013

This ticket is unnecessary. Just open a PR on UPGRADING-1.3.6 to document whatever is missing. So far, everything is in there. See my list below.

I just wanted to avoid so many small PRs. And as you see I was wrong with the module API point.
I guess you did not read that the second list is not to be seen as BC breacks.

@ghost
Copy link

ghost commented Sep 29, 2013

@cmfcmf I am explaining why I don't see it as a BC break: temporary files and their location are something Zikula uses internally. The location is controlled by an API (CacheUtil), therefor it's not a BC break at all.

Also, if things change internally but the system provides a BC layer (like referencing the old core module names), this is not a BC break. It's a change with BC compatibility..

@cmfcmf
Copy link
Contributor Author

cmfcmf commented Sep 29, 2013

Yes, @Drak, I don't see this as a bc break either!

@ghost
Copy link

ghost commented Sep 29, 2013

@cmfcmf - cool, just being clear. Let's keep the ticket open but edit the top with strikethrough for everything that is documented. If anyone has a cool idea to reduce the BC breaks then that is excellent. For files, one could replace the ParameterBag with a proxy class and magic methods for example. The request object is supposed to be created only once in the front controller btw.

@cmfcmf
Copy link
Contributor Author

cmfcmf commented Sep 29, 2013

I'll add 🆗 behind everything documented and strike through everything wrong.

@ghost
Copy link

ghost commented Sep 29, 2013

@cmfcmf If you do that you would need to replicate all the changes in the UPGRADING-1.3.6.md document - that's the wrong way round. It's basically up to date now.

@ghost
Copy link

ghost commented Sep 29, 2013

Breaks with hacky implementations (not to be seen as BC breaks)

This is just plain wrong. The thing about CSS files moving is just like most of the other changes, Something changed, the change is transparent. You cannot call it a "break" by any stretch of the imagination - you cannot call it a hacky implementation either since the handling is the BC layer itself. That's not hack, that's what BC is. The ticket content is very confusing because of this. You should edit out things that were not true to start with.

@cmfcmf
Copy link
Contributor Author

cmfcmf commented Sep 29, 2013

Hmm yes, I'm understanding your point. but I see the bc breaks mentioned in the upgrading document as "accepted and well documented", whereas this ticket shall encourage people to think about further bc breaks, which weren't mentioned nor discussed, like the request filter one.

I'll remove the "hacky" section, if it is that confusing :)

@ghost
Copy link

ghost commented Sep 29, 2013

@cmfcmf agreed: to clarify the request->filter was unexpected and unseen - if someone cares enough it might be possible to handle with a proxy. Sluggable was unavoidable - pain now with almost zero adoption or pain later when adoption is greater.

@craigh
Copy link
Member

craigh commented Sep 29, 2013

Sluggable change -> craigh/Tag@f4fb25f for reference

@Guite
Copy link
Member

Guite commented Sep 29, 2013

Bootstrap components and HTML5 validation could cause problems with themes using no html5 doctype (see #1181 and #447 also).

@ghost
Copy link

ghost commented Sep 29, 2013

@craigh - already documented here

@ghost
Copy link

ghost commented Sep 29, 2013

Bootstrap components and HTML5 validation could cause problems with themes using no html5 doctype (see #1181 and #447 also).

This needs to be proved first. As far as I know, browsers are pretty forgiving but someone needs to demonstrate this is a problem first. I don't believe it is. Would someone like to test? Also it might be better to call this "HTML5 client side validation" so as not to confused with HTML validation which is a different beast.

@ghost
Copy link

ghost commented Nov 2, 2013

Closing. We just simple document as we go as part of PR approval process. It should be noted in the UPGRADING-1.3.6.md as usual. It serves the same purpose.

@ghost ghost closed this as completed Nov 2, 2013
@craigh
Copy link
Member

craigh commented Nov 2, 2013

don't you mean UPGRADING-1.3.7.md ? 😀

@cmfcmf cmfcmf added the BC Break label Jul 2, 2014
This was referenced Jul 3, 2014
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants
@Guite @craigh @cmfcmf and others