Steve Boyd
137ebcebec
API Stop using deprecated API
2022-11-15 18:20:54 +13:00
Daniel Hensby
c49abf0fcc
Merge remote-tracking branch 'upstream/4.11' into 4.12
2022-11-11 13:25:54 +00:00
Lee Bradley
78b661dcf6
Prevent infinite loop when getting table name for ComponentID
...
If the field isn't in the first 2 classes then would just continue to loop
Fix means it will continue going to parent classes
Can be seen in the UsedOnTable in `admin` module if you have injected a new `Image` class that extends the built in one
2022-11-10 14:00:29 +00:00
Steve Boyd
6e9d3ab632
Merge branch '4' into 5
2022-10-21 12:00:39 +13:00
Steve Boyd
9c453abf89
API Update deprecations
2022-10-13 14:49:15 +13:00
Steve Boyd
33b6a00f49
ENH Update deprecation messages
2022-10-13 14:48:40 +13:00
Steve Boyd
2991901660
ENH Update deprecation messages
2022-10-13 14:05:49 +13:00
Steve Boyd
7b87926428
ENH Update deprecation messages
2022-10-13 14:05:49 +13:00
Steve Boyd
cc49036616
ENH Standardise deprecation messages
2022-10-13 14:05:49 +13:00
Guy Sartorelli
e140c3786c
FIX Ensure consistent behaviour with repeat iterations
2022-09-15 16:22:48 +12:00
Guy Sartorelli
62ee63706f
FIX PHP 8.1 compatability for iterators.
...
Setting a proper return type for these will be done in a separate PR
2022-09-15 13:29:41 +12:00
Guy Sartorelli
a76fa32a39
API Remove unnecessary getGenerator()
method.
...
`getIterator()` now returns a generator by default.
2022-09-15 13:29:29 +12:00
Guy Sartorelli
bf331072df
FIX Don't try to call count() on an iterator
2022-09-15 13:29:29 +12:00
Sam Minnee
81beddc161
Add deprecated method to make CMS tests work
2022-09-15 13:29:29 +12:00
Sam Minnee
9eb9e13071
FIX: Re-set finalisedQuery to allow recreation of iterator.
2022-09-15 13:29:29 +12:00
Sam Minnee
9c7ecb1f79
Further work on Loz’ solution
2022-09-15 13:29:29 +12:00
Loz Calver
850482138b
Proposed solution for caching template generator counts
2022-09-15 13:29:29 +12:00
Loz Calver
8e0e797b40
Fix code style
2022-09-15 13:29:27 +12:00
Loz Calver
1b8f601023
NEW: Make DataList::getIterator a generator
2022-09-15 13:29:00 +12:00
Sam Minnee
77c7552c3f
NEW: ORM’ Query is a generator-based IteratorAggregate
...
API: Query no longer has iterator methods current(), first(), rewind(), next()
Using generators reduces the amount of boilerplate needed for this
code.
Turning it into an IteratorAggregate means that the iterator can be
re-created for each subsequent foreach call. This means that the
rewind() and seek() functionality can be discarded.
2022-09-15 13:28:56 +12:00
Sam Minnee
d8735633a7
FIX: Don’t call PaginatedList::getIterator() directly.
...
It’s best for foreach() to call this for us.
2022-09-15 13:28:20 +12:00
Sam Minnee
1efe2b46ff
FIX: Fix PaginatedList::toArray()
...
It wasn’t respecting pagination.
2022-09-15 13:28:20 +12:00
Sam Minnee
6c136c9cf2
NEW: Iterate ArrayList via a generator
...
Using a generator here means that we don’t need to prepare a duplicate
array in-memory before iterating.
2022-09-15 13:28:20 +12:00
Sam Minnee
2ead3746d6
Replace Map_Iterator with a generator.
...
Generators (PHP 5.5+) make this kind of code structure much easier to
build.
2022-09-15 13:28:20 +12:00
Guy Sartorelli
03b929dd33
API Remove support for PDO ( #10499 )
2022-09-15 13:13:48 +12:00
Guy Sartorelli
06b13e0fa6
Revert "Merge pull request #10450 from creative-commoners/pulls/5/rescue-master-generators" ( #10483 )
...
This reverts commit 9edf3a5ca635f9687179143373fe25bddf10c5e3, reversing
changes made to 934fafd29d07a248e00b3055a2ae6d2edab243f6.
2022-09-02 10:58:37 +12:00
Guy Sartorelli
1bf86cf39f
API Revert shorten auto-generated table names ( #10482 )
...
* Revert "BUG Fix table name test"
This reverts commit b36a01a8fd7d83aa5abaa09dd76778c8b6c1db7d.
* Revert "ENH shorten auto-generated table names"
This reverts commit 156f63bce38a6b95d0f117eedbeb8819eb51d1b7.
2022-09-02 10:55:45 +12:00
Steve Boyd
37ff4ee46a
Merge pull request #10454 from creative-commoners/pulls/5/rescue-master-table-name
...
API rescue master-branch PR: Shorten auto-generated table names #7621
2022-09-01 09:12:11 +12:00
Guy Sartorelli
715415d5c8
Merge branch '4' into 5
2022-08-31 13:37:25 +12:00
Steve Boyd
9edf3a5ca6
Merge pull request #10450 from creative-commoners/pulls/5/rescue-master-generators
...
API rescue master-branch PR: Use Generators for ORM
2022-08-29 19:03:47 +12:00
Steve Boyd
b37921d0b1
Merge pull request #10462 from creative-commoners/pulls/5/rescue-master-join-aliases
...
Rescue Master Branch PR: Fix SQLConditionalExpression::getJoins so it always adds explicit aliases
2022-08-24 15:33:41 +12:00
Viktor Szépe
94d1ac8d99
ENH Various changes via static analysis tooling
2022-08-24 12:14:32 +12:00
Serge Latyntcev
e07671a890
Fix SQLConditionalExpression::getJoins so it always adds explicit aliases
...
This is a revert of https://github.com/silverstripe/silverstripe-framework/pull/8956
2022-08-24 11:27:02 +12:00
Andrew Aitken-Fincham
f2de39162d
API Allow dataobject get_one without passing a class
...
add class validation early in get_one()
2022-08-23 16:25:23 +12:00
Guy Sartorelli
a4521a7348
API Undeprecate table warning message
...
I think it's worth keeping this message around to encourage best
practices.
2022-08-22 17:45:00 +12:00
Christopher Joe
156f63bce3
ENH shorten auto-generated table names
...
Fix add check for legacy long table name and rename to short version
2022-08-22 17:44:51 +12:00
Guy Sartorelli
10ef46a5ec
ENH Make DataObject::exists() an alias of DataObject::isInDB() ( #10407 )
2022-08-16 09:43:54 +12:00
Guy Sartorelli
1153bacc11
API Remove unnecessary getGenerator()
method.
...
`getIterator()` now returns a generator by default.
2022-08-11 16:29:39 +12:00
Guy Sartorelli
5bdfaea78a
FIX Don't try to call count() on an iterator
2022-08-11 16:29:39 +12:00
Daniel Hensby
595835bb15
Merge pull request #6518 from sminnee/generators
...
Use Generators for ORM Query, Map, ArrayList
2022-08-11 16:29:32 +12:00
Guy Sartorelli
11595952f4
NEW Search across multiple searchable fields by default ( #10382 )
...
* NEW Search across multiple searchable fields by default
* ENH Split search query and search each term separately.
2022-08-01 12:19:02 +12:00
Guy Sartorelli
af3c50c9da
NEW Set many_many_extraFields data via the ORM
2022-07-28 09:29:36 +12:00
Nicola Fontana
d65ba0d718
DOCS Fix DataObject examples
2022-07-15 06:48:59 +02:00
Guy Sartorelli
29fae72211
API TableBuilder class reduces inconsistency between temp & prod db
2022-07-07 09:49:19 +12:00
Maxime Rainville
33600c3b73
BUG Manually create singleton when building table
2022-07-06 11:29:19 +12:00
Steve Boyd
b101b8bdb8
Merge branch '4.11' into 4
2022-07-04 13:20:12 +12:00
Brandon Iffert
ad83b78a10
FIX Handle null values passed to PDO::quote() ( #10383 )
2022-07-04 13:17:51 +12:00
Guy Sartorelli
cfb347dc9b
Merge branch '4.11' into 4
2022-06-30 16:33:12 +12:00
Guy Sartorelli
6c01661512
FIX Support search filters with match_any searchable_fields
2022-06-30 15:55:53 +12:00
Guy Sartorelli
4e53c35b53
MNT Deprecate unusable property
...
This property must always have the value 'AND' or an exception will be
thrown - it should be deprecated. Also, no need to process the query
before throwing.
2022-06-30 15:53:17 +12:00