[12.x] Switch back to ternaries in DatabaseManager
to allow for empty named connections
#56906
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Within the scope of #56878 some ternaries were replaced with null-coalescing operators in the logic of
DatabaseManager
. This is a behavioral change w.r.t. explicitly empty string being used for connection names. These would previously fall back to being treated as the default connection (due to being falsey), but no longer are. An example of such usage can be found at https://github.com/Flynsarmy/laravel-csv-seeder/blob/master/src/CsvSeeder.php#L37.Whether or not such cases should be considered valid or not, especially in the long run, is up for debate (given they should probably use an explicit
null
instead of empty string). However, to prevent further disruption for now, this PR reverts back to using ternaries. If wanted, this may be reverted in a future (major) version.Should close #56888 and fix #56892.