Add extendWhere, orWhere and andWhere methods to database query class.#8718
Add extendWhere, orWhere and andWhere methods to database query class.#8718chrisdavenport wants to merge 2 commits intojoomla:stagingfrom
Conversation
|
Awesome 👍 I'll see if I can get around to testing soon. |
|
I have tested this item ✅ successfully on b8f060a
With the following Resulting search filter had unchanged behavior (and is much easier to read and convey the meaning with the changes) This change also worked with |
|
I have tested this item ✅ successfully on b8f060a This comment was created with the J!Tracker Application at issues.joomla.org/joomla-cms/8718. |
|
This PR has received new commits. CC: @anibalsanchez, @photodude This comment was created with the J!Tracker Application at issues.joomla.org/joomla-cms/8718. |
|
@Kubik-Rubik does this really have to pushed back until 3.6? No chance to add it to 3.5? |
|
Technically 3.5 is in beta phase which should mean feature complete and only bug fixes going forward. But hey, wouldn't be the first time something is done against the published dev strategy. |
|
Considering that this previously had a 3.5 milestone tag (original release) but somehow fell through the human testing cracks over the last year and didn't get the attention it deserves. I would hope that maybe it could regain it's original intended release placement. But I can see your point @mbabker. |
|
Apart from the fact that this doesn't deserve the New Feature label. Would even call this a bugfix considering the poor curren implementation of where! |
|
I agree, "It should be considered an improvement to an existing feature" and or a "bugfix" |
|
I concur. It is an enhancement to simplify query definition. |
|
Someone needs to define what is considered a feature in the world of Joomla then. Semantic Versioning states:
As this PR introduces new API endpoints, by that definition this change is a new feature. Given Joomla's supposed adoption of Semantic Versioning and a lack of any clarifying guidance in the published development strategy, that text tells me new endpoints should only be introduced at minor version bumps. Given 3.5 is already in beta phase, I'd consider it feature complete per the development strategy and new features must be targeted for 3.6 going forward. Note I'm not arguing the feature. But frankly why bother publishing rules if they aren't going to be followed. |
|
This shouldn't be considered new functionality when it is fixing a bug! |
|
If it's a bug fix, then it must be a really trivial one as the original PR was waiting for testers since January. It's a new feature, albeit a small one. I would love to have seen it in 3.5, but it's too late now. It will go into 3.6. |
|
You and I have vastly different definitions of fixing bugs then. If fixing On Monday, December 21, 2015, sovainfo notifications@github.com wrote:
|
|
@chrisdavenport The amount of attention given to PR here is more matter of popularity than a matter of severity. |
|
@mbabker: It also says under number 6: To me the above qualifies as
|
|
What bug is being fixed? I'll argue that as this patch doesn't replace any On Monday, December 21, 2015, sovainfo notifications@github.com wrote:
|
|
Quote of @chrisdavenport in #5837: Qualifies as a bug to me. And this pr implements a backwards compatiblie solution. |
|
I'm going to side with @mbabker on this even though I would really like to see this in 3.5 (hopefully 3.6 won't be more than 6 months out).
I'll agree it fails all the tests for being just a bug fix, it does pass as a minor version item. |
|
So it would qualify as both a bug fix and new feature implementation then. I use this same type of assessment on all versioned code, publicly shared It's nothing against Chris or anyone's opinions. It's how I manage On Monday, December 21, 2015, sovainfo notifications@github.com wrote:
|
|
@chrisdavenport It would be nice to see this get added the the Joomla framework too. Would you consider adding it there? I would be willing to copy your work and add it if you're ok with that. |
|
@photodude Please feel free. :-) |
|
@chrisdavenport Add extendWhere, orWhere and andWhere methods are now part of the Framework database package 1.3.0, It will be nice to see this feature finally get accepted into the CMS at 3.6. |
|
@mbabker @photodude Sounds like http://semver.org/spec/v2.0.0.html is diverting too much from the industry standard https://en.wikipedia.org/wiki/Software_versioning. Consider Joomla choosing SemVer a mistake, should have been Software Versioning (Sequence based identifiers) in my opinion. |
|
It's marked for release in 3.6. If you want to use it earlier, you can easily apply the patch to your own systems, safe in the knowledge that upgrading will not break anything (unless this PR gets changed in the meantime). |
SemVer is using a sequence based identifier system in that it sets guidelines for when each part of the identifier should be incremented. The way that wiki article reads, it basically says "let the author figure out what their version number scheme means and hope people follow along". SemVer at least gives folks a common standard to work from. Truthfully, I think too much marketing value has been placed in version numbers and how often they're incremented. People are scared to see a minor version bump too frequently, people are scared to see a major version bump at all. If you really want to throw people for a loop, let's use the SVN revision (since GitHub supports repo access using SVN) as the version number going forward. It's the most straightforward sequence based identifier we can provide (and yes that's me being sarcastic). |
|
Consider the current definition of SemVer more appropriate for the Framework or libraries with defined API's. The purpose for the system is to communicate the impact of a new release. A patch release only with bugfixes should be no problem to apply. Same thing for a minor release with some added functionality. Should trigger you to look into the new functionality to see whether you could use it. It is no surprise that with the track record of this project you need to treat any release as a major one and check everything before you apply it to your production site. No wonder that people still don't update. |
|
So how do you communicate version numbering for a distributed application which is built on an internal framework with a (albeit poorly) defined API? Part of what the Joomla CMS version number conveys is applicable to the developers writing code; a feature introduced in 3.2 cannot be used in a code base supporting 2.5 so one has to have a means to check that to know to programmatically enable/disable features. SemVer is a fair compromise for all parties. The problem isn't in SemVer itself; the problem is (and always has been) with those who are supposed to be enforcing it. How many development strategies have been published by Joomla in the last five years governing the CMS, Platform, and Framework, and how many are truly enforced in some form today? I'll be the first person to tell you, even though I highly encouraged for it to be merged, #7217 should have never been accepted until 4.0 because it very blatantly breaks B/C. |
|
That only proves how ridiculous it is to try to force semver upon Joomla CMS. Also it shows how bad the current procedure is. Concerning #7217 with Software Versioning applicable it would have been accepted for the next maintenance release. This assumes it is considered a bugfix, that by definition makes the break in BC irrelevant. Hopefully it also makes it to the Standard and Guidelines, so people know not only how to write contributions but also how they should be judged. |
|
Whichever version this goes in - it is RTC This comment was created with the J!Tracker Application at issues.joomla.org/joomla-cms/8718. |
|
Looking forward to seeing this in the development of 3.6 |
|
Merged with 9783a53 - thanks Chris :) |
Updates and replaces #5837
For full description and test instructions, see #5837