1
0
mirror of https://github.com/phpmyadmin/phpmyadmin.git synced 2026-10-23 18:29:15 +03:00

203 Commits

Author SHA1 Message Date
Kamil Tekiela
ea3c53e199 Remove ajax_request
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2026-10-19 02:05:05 +01:00
Maurício Meneghini Fauth
19958e00b0 Merge branch 'QA_5_2'
Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.com.br>
2026-10-17 13:34:49 -03:00
Maurício Meneghini Fauth
37b73b3e59 Add unit tests for create event action in Events\IndexController
Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.com.br>
2026-10-12 18:21:42 -03:00
Maurício Meneghini Fauth
5cb2daea60 Extract event export action into Events\ExportController
Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.com.br>
2026-10-12 17:39:00 -03:00
Maurício Meneghini Fauth
2b5b66989b Rename route /database/events to /events
Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.com.br>
2026-10-12 12:06:30 -03:00
Maurício Meneghini Fauth
fc3c643dc8 Move Database\EventsController to Events\IndexController
Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.com.br>
2026-10-12 11:46:51 -03:00
Kamil Tekiela
2bd0ac4b38 Replace Twig Random
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2026-09-25 00:07:48 +01:00
Maurício Meneghini Fauth
40b167a5d0 Merge branch 'QA_5_2'
Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.com.br>
2026-09-19 14:22:17 -03:00
Maurício Meneghini Fauth
9e4dc5b5f4 Merge pull request #20413 from MoonE/gis-editor-form
Fix Gis editor form in search view
2026-09-14 13:58:33 -03:00
Kamil Tekiela
40cf2fb2b1 Make DesignerTable readonly and remove getters
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2026-09-08 15:36:37 +01:00
William Desportes
1178149419 Merge branch 'QA_5_2'
QA_5_2 still lives in libraries/classes/ and test/classes/; master moved to
src/ and tests/unit/. Seven files therefore arrived as "deleted by us" and had
to be ported by hand rather than merged.

Upstream commit roll-call (060391b9a7..3d2594b2d3, 15 non-merge commits). The
5 merge commits in that range were checked with `git show --cc` and are all
empty, so they contribute no content of their own:

  366d165982  ported      Strip port from host in processes privileges link
  544839869d  ported      Test coverage for the port-stripping
  80638e8371  ported      Add LIMIT 0 when fetching metadata (4 of 7 hunks;
                          see below for the 3 that do not apply)
  3b46e5b869  ported      Fix Uncaught ReferenceError: CodeMirror is not defined
  8525d24e09  already in  Fix search of INET4 with = operator
  1730b7c0bf  no-op       Remove useless parentheses
  6c1568b15b  skipped     Move getColumnMapFromSql into the method
  afaeacecc9, cae0175274, 64c6890d6c, 669f8d17bc, eee3cd458a, 9c8246a127,
  5f1ae11fc4, 111993769e   not taken   Translated using Weblate (lv, vi)

Conflict resolutions, file by file:

* src/Server/Status/Processes.php
  Ported 366d165982 (#20315 / #19841): expose a 'user_host' row key holding
  the host with any `:port` suffix stripped. Adapted to master's lower-cased
  array keys from array_change_key_case().

* resources/templates/server/status/processes/list.twig
  The privileges link now uses row.user_host instead of row.host, so the
  hostname matches mysql.user.Host, which never contains a port.

* src/Plugins/Transformations/{Input/Text_Plain_{Json,Sql,Xml}Editor,
  Output/Text_Plain_{Json,Sql,Xml}}.php
  Ported 3b46e5b869. Kept master's
  Config::getInstance()->config->CodemirrorEnable accessor and expressed the
  HTTP_USER_AGENT check with Core::getEnv() rather than $_SERVER, to match
  the same #20159 guard already present in src/Header.php:225.

* src/SystemDatabase.php
  Ported the memory part of #20426 only: getColumnMapFromSql() now wraps the
  query as `SELECT * FROM (...) AS tmp LIMIT 0` (80638e8371) so a large VIEW
  cannot exhaust memory while only its column metadata is wanted. This is
  where libraries/classes/DatabaseInterface.php's hunk landed: the method
  moved from the DBAL to SystemDatabase on master.
  Deliberately did NOT port 6c1568b15b "Move getColumnMapFromSql into the
  method": that commit exists to stop 5.2's CreateController from running the
  view query when there is no transformation data, but master already only
  calls it inside `if ($pmaTransformationData !== false)`
  (src/Controllers/View/CreateController.php:205), and
  getExistingTransformationData() returns false precisely when
  browserTransformationFeature is null. Porting the signature churn would
  have degraded master's SystemColumn[] API for no behaviour gain, so
  src/Controllers/View/CreateController.php is left untouched and that
  commit's phpstan/psalm baseline hunks are moot.

* src/Table/Table.php
  Ported 80638e8371: getColumnsMeta() uses `LIMIT 0` instead of `LIMIT 1`.

* src/Table/Search.php
  Resolved as ours. QA_5_2's 8525d24e09 is the same fix master already
  carries via 725a767cc5 (#20398 / #20395), only expressed against the
  refactored $needsQuoting code. No change needed.

* tests/unit/Controllers/Server/Status/Processes/RefreshControllerTest.php
  Ported 544839869d: covers both that the Host column still shows the port
  and that the privileges link does not. Added the trailing comma PHPCS
  (SlevomatCodingStandard.Functions.RequireTrailingCommaInCall) requires.

* tests/unit/Stubs/DbiDummy.php
  Two fixtures updated, both kept in master's compact single-line style: the
  PROCESSLIST row now returns 'Host1:12345' to exercise port stripping
  (544839869d), and the `testdb`.`mytable` select moved from LIMIT 1 to
  LIMIT 0 (80638e8371).

* tests/unit/Table/TableTest.php and tests/unit/SystemDatabaseTest.php
  Expected queries updated for the two changes above (`LIMIT 0`, and
  `SELECT * FROM (PMA_sql_query) AS tmp LIMIT 0`). The latter is where
  test/classes/DatabaseInterfaceTest.php's hunk landed, following the method
  from the DBAL to SystemDatabase.

* tests/unit/Table/ColumnsDefinitionTest.php
  Not a conflicted file, but a master-only fixture that had to follow
  Table::getColumnsMeta(): the query is now `LIMIT 0` and returns no rows.

Incoming changes with no master counterpart:

* libraries/classes/Dbal/DbalInterface.php
  Dropped. The interface does not exist on master, so 80638e8371's rename of
  its getColumnMapFromSql() parameter has nothing to apply to.

* test/classes/Http/Factory/ServerRequestFactoryTest.php
  1730b7c0bf is a no-op here: master's
  tests/unit/Http/Factory/ServerRequestFactoryTest.php contains no
  `(new ReflectionMethod(ServerRequestFactory...))` construct at all, the
  test having been rewritten. Note that rename detection wrongly paired this
  file with tests/unit/Http/Factory/UriFactoryTest.php, which was therefore
  resolved as ours and is unchanged.

* phpstan-baseline.neon, psalm-baseline.xml
  Resolved as ours; the baselines are branch-specific.

* resources/po/lv.po, resources/po/vi.po
  Resolved as ours, dropping the 8 Weblate commits listed above. This matches
  how all eight previous "Merge branch 'QA_5_2'" commits were resolved
  (6f427d8785, ccf4064698, fe4be26eeb, 055f071473, 28cd3776d2, 3b4defeb35,
  ff06deaca2 all have a zero-file po diff against their first parent);
  master runs its own Weblate component.

Also removed the empty libraries/ and test/ directories the merge left behind.

Verification: `phpunit --testsuite unit` 5668 tests / 18476 assertions OK,
`phpcs` clean, `phpstan analyse` reports no errors. `psalm` reports one
UnusedBaselineEntry for src/Utils/HttpRequest.php, which is pre-existing on
master (neither that file nor psalm-baseline.xml is touched by this merge).

Signed-off-by: William Desportes <williamdes@wdes.fr>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-07 11:19:45 +02:00
Kamil Tekiela
dad9dbdc64 Add RoutineItem DTO and refactor Routines (#20455)
* RoutineItem

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Clean up

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Fix all escaping issues

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Fix param type in getParameterRow

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Use temp var to avoid SA issues

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Mirror Assert::allString in the other method

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

---------

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2026-08-26 10:17:18 -03:00
Maximilian Krög
96d5c685ea Fix copying of final editor data when opened from search view
HTML form elements cannot be nested, the inner form element
was silently stripped out of the dom which mean it could not be
found when searching for its id.

Signed-off-by: Maximilian Krög <maxi_kroeg@web.de>
2026-08-09 12:08:35 +02:00
Maximilian Krög
1cbfdbb795 Fix opening gis editor from search view
There is one event listener added in change.ts and one in select.ts, but there
should only be one active at a time.

Signed-off-by: Maximilian Krög <maxi_kroeg@web.de>
2026-08-09 12:08:33 +02:00
Kamil Tekiela
a743ab7eea Refactor TwoFactor
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2026-07-20 17:03:35 +01:00
Maurício Meneghini Fauth
c605fd63bc Merge branch 'QA_5_2'
Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.com.br>
2026-06-29 23:43:22 -03:00
Nicolai Ehrhardt
4d0fa87227 Fix #20253 - Missing parameter: db when clicking on index in tree
Signed-off-by: Nicolai Ehrhardt <245527909+predictor2718@users.noreply.github.com>
2026-04-26 11:39:41 +02:00
Maurício Meneghini Fauth
171a972ce6 Merge branch 'QA_5_2'
Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2026-04-22 20:41:40 -03:00
William Desportes
aad16a108c Merge branch 'QA_5_2' 2026-04-09 13:44:37 +02:00
William Desportes
cea7654274 Merge #20210 - Add a SQL button to the database list
Pull-request: #20210
Signed-off-by: William Desportes <williamdes@wdes.fr>
2026-04-09 11:59:38 +02:00
William Desportes
23f6245775 Merge branch 'QA_5_2' 2026-03-17 13:36:53 +01:00
William Desportes
63f642dd02 Merge #20126 - Fix #20121 - Find and Replace
Pull-request: #20126
Fixes: #20121
Signed-off-by: William Desportes <williamdes@wdes.fr>
2026-03-16 23:49:53 +01:00
William Desportes
8b2a2c41dc Merge #20144 - Add sql highlighting for Show create
Pull-request: #20144
Signed-off-by: William Desportes <williamdes@wdes.fr>
2026-03-16 23:48:38 +01:00
William Desportes
bf7e0c3d85 Merge #20213 - Improve design in structure snapshot page
Pull-request: #20213
Signed-off-by: William Desportes <williamdes@wdes.fr>
2026-03-16 23:45:31 +01:00
William Desportes
4265b512e6 Add a SQL button to the database list
Signed-off-by: William Desportes <williamdes@wdes.fr>
2026-03-10 00:01:00 +01:00
William Desportes
b3e2ac1ece Merge branch 'QA_5_2'
Config get was removed in 7547341bee

Config set was changed into adc834f1ae

Signed-off-by: William Desportes <williamdes@wdes.fr>
2026-03-05 13:03:23 +01:00
Liviu-Mihail Concioiu
8107a8f4b9 Improve table structure design in structure snapshot
Signed-off-by: Liviu-Mihail Concioiu <liviu.concioiu@gmail.com>
2026-03-04 23:06:01 +01:00
Liviu-Mihail Concioiu
d0954d8bdc Improve indexes design in structure snapshot
Signed-off-by: Liviu-Mihail Concioiu <liviu.concioiu@gmail.com>
2026-03-04 23:05:48 +01:00
Liviu-Mihail Concioiu
127e654bf7 Add missing direction
Signed-off-by: Liviu-Mihail Concioiu <liviu.concioiu@gmail.com>
2026-02-20 16:01:32 +01:00
Liviu-Mihail Concioiu
d489d893c7 Add sql highlighting for Show create
Signed-off-by: Liviu-Mihail Concioiu <liviu.concioiu@gmail.com>
2026-02-20 16:00:26 +01:00
Kamil Tekiela
60ef62d5e5 Fix Find and Replace
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2026-02-17 23:28:10 +00:00
Maurício Meneghini Fauth
ce3db158d7 Remove method Core::previewSQL()
Inlines it to remove the ResponseRenderer dependency.

Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2026-02-13 21:22:15 -03:00
Maurício Meneghini Fauth
17e34144a1 Merge branch 'QA_5_2'
Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2026-02-10 22:32:28 -03:00
Liviu-Mihail Concioiu
d8de539c61 Show stylesheets only if CodeMirror is enabled
Signed-off-by: Liviu-Mihail Concioiu <liviu.concioiu@gmail.com>
2026-02-07 15:21:20 +01:00
faissaloux
3025ef49f3 hide filter from print
Signed-off-by: faissaloux <fwahabali@gmail.com>
2026-01-27 03:52:35 +01:00
William Desportes
dc1408701f Merge #19997 - Fix Export checkboxes
Pull-request: #19997
Signed-off-by: William Desportes <williamdes@wdes.fr>
2026-01-25 19:44:47 +01:00
Kamil Tekiela
328a1d4cff Fix broken modal
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2026-01-22 15:47:09 +00:00
Maurício Meneghini Fauth
81104b0146 Refactor the sql/bookmark.twig template
Renames the template to _bookmark.twig to indicate that it's a partial
template. And uses Twig's include function to include the bookmark
template.

Extracts the onsubmit event from the form tag.

Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2026-01-17 14:27:57 -03:00
Kamil Tekiela
259e9fa542 Shorten checkbox value
We don't need any value, but to keep the code as is, we need at least one byte. Shorter value means less bytes transferred over network.

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2026-01-17 15:30:03 +00:00
William Desportes
4da3aaaf7a Merge branch 'QA_5_2'
Already merged in master: https://github.com/phpmyadmin/phpmyadmin/pull/19960
Re-write of the test from 4de9f0f0b1
Merge of 631cac096f
Merge of 58cee9656f but could not find the code to implement

Signed-off-by: William Desportes <williamdes@wdes.fr>
2025-12-29 18:50:41 +01:00
Mohammad Nassif Hamid
9b3070e94a Insert: Add padding below action buttons
Signed-off-by: Mohammad Nassif Hamid <nassiftheprogrammer@gmail.com>
2025-12-12 09:52:11 +05:30
Kamil Tekiela
d9426e17e4 Fix message_to_show
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2025-12-11 00:16:35 +00:00
Kamil Tekiela
13fad957cf Move hiddenFields HTML to template
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2025-12-11 00:16:35 +00:00
William Desportes
9610139710 Merge #19968 - Fix performance of table/create
Pull-request: #19968
Fixes: #19967
Signed-off-by: William Desportes <williamdes@wdes.fr>
2025-12-08 13:05:40 +01:00
Kamil Tekiela
4040d12bb9 Populate options only on focus
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2025-12-06 14:17:43 +00:00
Maurício Meneghini Fauth
f291fcc13c Merge branch 'QA_5_2'
Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2025-12-05 16:11:26 -03:00
William Desportes
150c4417c9 Merge #19564 - Fix #19118 - update table comment field to textarea
Pull-request: #19564
Fixes: #19118
Signed-off-by: William Desportes <williamdes@wdes.fr>
2025-12-05 14:43:39 +01:00
Kamil Tekiela
82c52d546d Fix performance of table/create
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2025-11-28 00:19:06 +00:00
Kamil Tekiela
9b4a522a77 Fix default value quoting
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2025-11-26 15:14:14 +00:00
Matt Harrison
675193093c Remove Berkeley DB support and references
- Remove Berkeley DB storage engine classes (Berkeleydb.php, Bdb.php)
- Update StorageEngine.php to remove BDB/BerkeleyDB from getEngine() method
- Remove BerkeleyDB references from table operations and stats templates
- Update StructureController.php to remove BerkeleyDB case handling
- Remove BDB from transactional engines list in Import.php
- Update test files and remove BdbTest.php
- Update documentation to remove Berkeley DB references

Berkeley DB engine was removed from MySQL 5.1.12 in 2006 and is no longer supported.

Signed-off-by: Matt Harrison <matt@harrison.us.com>
2025-10-19 06:44:31 -04:00