Hello community, here is the log from the commit of package adminer for openSUSE:Factory checked in at 2017-04-20 20:56:46 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/adminer (Old) and /work/SRC/openSUSE:Factory/.adminer.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "adminer" Thu Apr 20 20:56:46 2017 rev:7 rq:488004 version:4.3.1 Changes: -------- --- /work/SRC/openSUSE:Factory/adminer/adminer.changes 2017-03-16 09:52:07.148828598 +0100 +++ /work/SRC/openSUSE:Factory/.adminer.new/adminer.changes 2017-04-20 20:56:50.501976135 +0200 @@ -1,0 +2,16 @@ +Fri Apr 14 18:11:49 UTC 2017 - jimmy@boombatower.com + +- Update to version 4.3.1: + * PostgreSQL: Fix index size computation in PostgreSQL < 9.0 (reverts 4c78976c) + * Fix PostgreSQL nullable fields in export + * Fix table dependency on export + * Updating Russian translation + * Update haeckel design (thanks to Klemens Haeckel) + * PostgreSQL: Support JSON and JSONB data types (bug #542) + * PostgreSQL: Fix JSONB version support + * Don't overwrite previous cookies (bug #539) + * Add a todo + * Fix SQL command autofocus + * Release 4.3.1 + +------------------------------------------------------------------- Old: ---- adminer-4.3.0.tar.xz New: ---- adminer-4.3.1.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ adminer.spec ++++++ --- /var/tmp/diff_new_pack.abarSr/_old 2017-04-20 20:56:51.241871501 +0200 +++ /var/tmp/diff_new_pack.abarSr/_new 2017-04-20 20:56:51.245870936 +0200 @@ -20,7 +20,7 @@ # pending php5-pear-Horde_Mongo package submission to Factory %bcond_with mongodb Name: adminer -Version: 4.3.0 +Version: 4.3.1 Release: 0 Summary: Database management in a single PHP file License: GPL-2.0 or Apache-2.0 ++++++ _service ++++++ --- /var/tmp/diff_new_pack.abarSr/_old 2017-04-20 20:56:51.293864148 +0200 +++ /var/tmp/diff_new_pack.abarSr/_new 2017-04-20 20:56:51.293864148 +0200 @@ -2,7 +2,7 @@ <service name="tar_scm" mode="disabled"> <param name="versionformat">@PARENT_TAG@</param> <param name="versionrewrite-pattern">v(.*)</param> - <param name="revision">refs/tags/v4.3.0</param> + <param name="revision">refs/tags/v4.3.1</param> <param name="url">https://github.com/vrana/adminer.git</param> <param name="scm">git</param> <param name="changesgenerate">enable</param> ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.abarSr/_old 2017-04-20 20:56:51.313861320 +0200 +++ /var/tmp/diff_new_pack.abarSr/_new 2017-04-20 20:56:51.317860755 +0200 @@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/vrana/adminer.git</param> - <param name="changesrevision">22d0cf4171a94dd489ee12dba023e79da1ed4baf</param> + <param name="changesrevision">7af1ee3702420620641d075ebfd54d4b1d220409</param> </service> </servicedata> ++++++ adminer-4.3.0.tar.xz -> adminer-4.3.1.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/adminer-4.3.0/.gitmodules new/adminer-4.3.1/.gitmodules --- old/adminer-4.3.0/.gitmodules 1970-01-01 01:00:00.000000000 +0100 +++ new/adminer-4.3.1/.gitmodules 2017-04-14 09:48:11.000000000 +0200 @@ -0,0 +1,9 @@ +[submodule "jush"] + path = externals/jush + url = git://git.code.sf.net/p/jush/git +[submodule "wymeditor"] + path = externals/wymeditor + url = git://github.com/wymeditor/wymeditor.git +[submodule "JsShrink"] + path = externals/JsShrink + url = git://github.com/vrana/JsShrink.git diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/adminer-4.3.0/adminer/drivers/pgsql.inc.php new/adminer-4.3.1/adminer/drivers/pgsql.inc.php --- old/adminer-4.3.0/adminer/drivers/pgsql.inc.php 2017-03-15 18:24:12.000000000 +0100 +++ new/adminer-4.3.1/adminer/drivers/pgsql.inc.php 2017-04-14 09:48:11.000000000 +0200 @@ -186,12 +186,20 @@ } function connect() { - global $adminer; + global $adminer, $types, $structured_types; $connection = new Min_DB; $credentials = $adminer->credentials(); if ($connection->connect($credentials[0], $credentials[1], $credentials[2])) { if ($connection->server_info >= 9) { $connection->query("SET application_name = 'Adminer'"); + if ($connection->server_info >= 9.2) { + $structured_types[lang('Strings')][] = "json"; + $types["json"] = 4294967295; + if ($connection->server_info >= 9.4) { + $structured_types[lang('Strings')][] = "jsonb"; + $types["jsonb"] = 4294967295; + } + } } return $connection; } @@ -244,11 +252,11 @@ function table_status($name = "") { $return = array(); - foreach (get_rows("SELECT c.relname AS \"Name\", CASE c.relkind WHEN 'r' THEN 'table' WHEN 'm' THEN 'materialized view' ELSE 'view' END AS \"Engine\", pg_relation_size(c.oid) AS \"Data_length\", pg_indexes_size(c.oid) AS \"Index_length\", obj_description(c.oid, 'pg_class') AS \"Comment\", c.relhasoids::int AS \"Oid\", c.reltuples as \"Rows\", n.nspname + foreach (get_rows("SELECT c.relname AS \"Name\", CASE c.relkind WHEN 'r' THEN 'table' WHEN 'm' THEN 'materialized view' ELSE 'view' END AS \"Engine\", pg_relation_size(c.oid) AS \"Data_length\", pg_total_relation_size(c.oid) - pg_relation_size(c.oid) AS \"Index_length\", obj_description(c.oid, 'pg_class') AS \"Comment\", c.relhasoids::int AS \"Oid\", c.reltuples as \"Rows\", n.nspname FROM pg_class c JOIN pg_namespace n ON(n.nspname = current_schema() AND n.oid = c.relnamespace) WHERE relkind IN ('r', 'm', 'v') -" . ($name != "" ? "AND relname = " . q($name) : "ORDER BY relname") +" . ($name != "" ? "AND relname = " . q($name) : "ORDER BY c.oid") ) as $row) { //! Index_length, Auto_increment $return[$row["Name"]] = $row; } @@ -638,7 +646,7 @@ foreach ($fields as $field_name => $field) { $part = idf_escape($field['field']) . ' ' . $field['full_type'] . (is_null($field['default']) ? "" : " DEFAULT $field[default]") - . ($field['attnotnull'] ? "" : " NOT NULL"); + . ($field['attnotnull'] ? " NOT NULL" : ""); $return_parts[] = $part; // sequences for fields diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/adminer-4.3.0/adminer/include/functions.inc.php new/adminer-4.3.1/adminer/include/functions.inc.php --- old/adminer-4.3.0/adminer/include/functions.inc.php 2017-03-15 18:24:12.000000000 +0100 +++ new/adminer-4.3.1/adminer/include/functions.inc.php 2017-04-14 09:48:11.000000000 +0200 @@ -481,8 +481,8 @@ . ($lifetime ? "; expires=" . gmdate("D, d M Y H:i:s", time() + $lifetime) . " GMT" : "") . "; path=" . preg_replace('~\\?.*~', '', $_SERVER["REQUEST_URI"]) . ($HTTPS ? "; secure" : "") - . "; HttpOnly; SameSite=lax" - ); + . "; HttpOnly; SameSite=lax", + false); } /** Restart stopped session diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/adminer-4.3.0/adminer/include/lang.inc.php new/adminer-4.3.1/adminer/include/lang.inc.php --- old/adminer-4.3.0/adminer/include/lang.inc.php 2017-03-15 18:24:12.000000000 +0100 +++ new/adminer-4.3.1/adminer/include/lang.inc.php 2017-04-14 09:48:11.000000000 +0200 @@ -30,7 +30,7 @@ 'pt' => 'Português', // André Dias 'pt-br' => 'Português (Brazil)', // Gian Live - gian@live.com, Davi Alexandre davi@davialexandre.com.br, RobertoPC - http://www.robertopc.com.br 'ro' => 'Limba Română', // .nick .messing - dot.nick.dot.messing@gmail.com - 'ru' => 'Русский язык', // Maksim Izmaylov + 'ru' => 'Русский', // Maksim Izmaylov; Andre Polykanine - https://github.com/Oire/ 'sk' => 'Slovenčina', // Ivan Suchy - http://www.ivansuchy.com, Juraj Krivda - http://www.jstudio.cz 'sl' => 'Slovenski', // Matej Ferlan - www.itdinamik.com, matej.ferlan@itdinamik.com 'sr' => 'Српски', // Nikola Radovanović - cobisimo@gmail.com diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/adminer-4.3.0/adminer/include/version.inc.php new/adminer-4.3.1/adminer/include/version.inc.php --- old/adminer-4.3.0/adminer/include/version.inc.php 2017-03-15 18:24:12.000000000 +0100 +++ new/adminer-4.3.1/adminer/include/version.inc.php 2017-04-14 09:48:11.000000000 +0200 @@ -1,2 +1,2 @@ 'Имя пользователя', 'Password' => 'Пароль', 'Select database' => 'Выбрать базу данных', - 'Invalid database.' => 'Плохая база данных.', + 'Invalid database.' => 'Неверная база данных.', 'Table has been dropped.' => 'Таблица была удалена.', 'Table has been altered.' => 'Таблица была изменена.', 'Table has been created.' => 'Таблица была создана.', 'Alter table' => 'Изменить таблицу', 'Create table' => 'Создать таблицу', 'Table name' => 'Название таблицы', - 'engine' => 'тип', + 'engine' => 'Тип таблицы', 'collation' => 'режим сопоставления', 'Column name' => 'Название поля', 'Type' => 'Тип', @@ -29,7 +29,7 @@ 'Database has been altered.' => 'База данных была изменена.', 'Alter database' => 'Изменить базу данных', 'Create database' => 'Создать базу данных', - 'SQL command' => 'SQL запрос', + 'SQL command' => 'SQL-запрос', 'Logout' => 'Выйти', 'database' => 'база данных', 'Use' => 'Выбрать', @@ -67,7 +67,7 @@ 'Triggers' => 'Триггеры', 'View' => 'Представление', 'Unable to select the table' => 'Не удалось получить данные из таблицы', - 'Invalid CSRF token. Send the form again.' => 'Недействительный CSRF токен. Отправите форму ещё раз.', + 'Invalid CSRF token. Send the form again.' => 'Недействительный CSRF-токен. Отправите форму ещё раз.', 'Comment' => 'Комментарий', 'Default values' => 'Значения по умолчанию', '%d byte(s)' => array('%d байт', '%d байта', '%d байтов'), @@ -90,13 +90,13 @@ 'Change' => 'Изменить', 'Source' => 'Источник', 'Target' => 'Цель', - 'Add column' => 'Добавить колонку', + 'Add column' => 'Добавить поле', 'Alter' => 'Изменить', 'Add foreign key' => 'Добавить внешний ключ', 'ON DELETE' => 'При стирании', 'ON UPDATE' => 'При обновлении', 'Index Type' => 'Тип индекса', - 'Column (length)' => 'Колонка (длина)', + 'Column (length)' => 'Поле (длина)', 'View has been dropped.' => 'Представление было удалено.', 'View has been altered.' => 'Представление было изменено.', 'View has been created.' => 'Представление было создано.', @@ -134,11 +134,11 @@ 'User has been altered.' => 'Пользователь был изменён.', 'User has been created.' => 'Пользователь был создан.', 'Hashed' => 'Хешировано', - 'Column' => 'Колонка', + 'Column' => 'поле', 'Routine' => 'Процедура', 'Grant' => 'Позволить', 'Revoke' => 'Запретить', - 'Too big POST data. Reduce the data or increase the %s configuration directive.' => 'Слишком большой объем POST-данных. Пошлите меньший объем данных или увеличьте параметр конфигурационной директивы %s.', + 'Too big POST data. Reduce the data or increase the %s configuration directive.' => 'Слишком большой объем POST-данных. Пошлите меньший объём данных или увеличьте параметр конфигурационной директивы %s.', 'Logged as: %s' => 'Вы вошли как: %s', 'Move up' => 'Переместить вверх', 'Move down' => 'Переместить вниз', @@ -181,7 +181,7 @@ 'Tables have been moved.' => 'Таблицы были перемещены.', 'Move to other database' => 'Переместить в другую базу данных', 'Move' => 'Переместить', - 'Engine' => 'Тип', + 'Engine' => 'Тип таблиц', 'Save and continue edit' => 'Сохранить и продолжить редактирование', 'original' => 'исходный', '%d item(s) have been affected.' => array('Была изменена %d запись.', 'Были изменены %d записи.', 'Было изменено %d записей.'), @@ -202,20 +202,20 @@ '[yyyy]-mm-dd' => 'дд.мм.[гггг]', 'History' => 'История', 'Variables' => 'Переменные', - 'Source and target columns must have the same data type, there must be an index on the target columns and referenced data must exist.' => 'Колонки должны иметь одинаковые типы данных, в результирующей колонке должен быть индекс, данные для импорта должны существовать.', - 'Relations' => 'Реляции', + 'Source and target columns must have the same data type, there must be an index on the target columns and referenced data must exist.' => 'Поля должны иметь одинаковые типы данных, в результирующем поле должен быть индекс, данные для импорта должны существовать.', + 'Relations' => 'Отношения', 'Run file' => 'Запустить файл', 'Clear' => 'Очистить', - 'Maximum allowed file size is %sB.' => 'Максимальный разрешённый размер файла - %sB.', - 'Numbers' => 'Число', + 'Maximum allowed file size is %sB.' => 'Максимальный разрешённый размер файла — %sB.', + 'Numbers' => 'Числа', 'Date and time' => 'Дата и время', 'Strings' => 'Строки', 'Binary' => 'Двоичный тип', 'Lists' => 'Списки', 'Editor' => 'Редактор', - 'E-mail' => 'Электропочта', + 'E-mail' => 'Эл. почта', 'From' => 'От', - 'Subject' => 'Кому', + 'Subject' => 'Тема', 'Send' => 'Послать', '%d e-mail(s) have been sent.' => array('Было отправлено %d письмо.', 'Было отправлено %d письма.', 'Было отправлено %d писем.'), 'Webserver file %s' => 'Файл %s на вебсервере', @@ -241,7 +241,7 @@ 'Alter type' => 'Изменить тип', 'Type has been dropped.' => 'Тип удален.', 'Type has been created.' => 'Создан новый тип.', - 'Ctrl+click on a value to modify it.' => 'Ctrl+кликни по значению, чтобы его изменить.', + 'Ctrl+click on a value to modify it.' => 'Выполните Ctrl+Щелчок мышью по значению, чтобы его изменить.', 'Use edit link to modify this value.' => 'Изменить это значение можно с помощью ссылки «изменить».', 'last' => 'последняя', 'From server' => 'С сервера', @@ -265,4 +265,32 @@ 'Permanent link' => 'Постоянная ссылка', 'Edit all' => 'Редактировать всё', 'HH:MM:SS' => 'ЧЧ:ММ:СС', + 'Tables have been optimized.' => 'Таблицы оптимизированы.', + 'Materialized view' => 'Материализованное представление', + 'Vacuum' => 'Вакуум', + 'Selected' => 'Выбранные', + 'Replication' => 'Репликация', + 'Master status' => 'состояние мастер-сервера', + 'Slave status' => 'состояние ведомого сервера', + 'File must be in UTF-8 encoding.' => 'Файл должен быть в кодировке UTF-8.', + 'Modify' => 'Изменить', + 'Loading' => 'Загрузка', + 'Load more data' => 'Загрузить ещё данные', + 'ATTACH queries are not supported.' => 'ATTACH-запросы не поддерживаются.', + '%d / ' => '%d / ', + 'Limit rows' => 'Лимит строк', + '<a href="https://www.adminer.org/en/extension/" target="_blank">Implement</a> %s method to use SQLite.' => '<a href="https://www.adminer.org/en/extension/" target="_blank">Реализуйте</a> метод %s, чтобы использовать SQLite.', + 'Default value' => 'Значение по умолчанию', + 'Full table scan' => 'Анализ полной таблицы', + 'Too many unsuccessful logins, try again in %d minute(s).' => array('Слишком много неудачных попыток входа. Попробуйте снова через %d минуту.', 'Слишком много неудачных попыток входа. Попробуйте снова через %d минуты.', 'Слишком много неудачных попыток входа. Попробуйте снова через %d минут.'), + 'Master password expired. <a href="https://www.adminer.org/en/extension/" target="_blank">Implement</a> %s method to make it permanent.' => 'Мастер-пароль истёк. <a href="https://www.adminer.org/en/extension/" target="_blank">Реализуйте</a> метод %s, чтобы сделать его постоянным.', + 'If you did not send this request from Adminer then close this page.' => 'Если вы не посылали этот запрос из Adminer, закройте эту страницу.', + 'You can upload a big SQL file via FTP and import it from server.' => 'Вы можете закачать большой SQL-файл по FTP и затем импортировать его с сервера.', + 'Size' => 'Размер', + 'Compute' => 'Вычислить', + 'You are offline.' => 'Вы не выполнили вход.', + 'You have no privileges to update this table.' => 'У вас нет прав на обновление этой таблицы.', + 'Saving' => 'Сохранение', + 'yes' => 'Да', + 'no' => 'Нет', ); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/adminer-4.3.0/adminer/sql.inc.php new/adminer-4.3.1/adminer/sql.inc.php --- old/adminer-4.3.0/adminer/sql.inc.php 2017-03-15 18:24:12.000000000 +0100 +++ new/adminer-4.3.1/adminer/sql.inc.php 2017-04-14 09:48:11.000000000 +0200 @@ -208,7 +208,7 @@ } echo "<p>"; textarea("query", $q, 20); - echo ($_POST ? "" : "<script type='text/javascript'>focus(document.getElementsByTagName('textarea')[0]);</script>\n"); + echo ($_POST ? "" : "<script type='text/javascript'>document.getElementsByTagName('textarea')[0].focus();</script>\n"); echo "<p>$execute\n"; echo lang('Limit rows') . ": <input type='number' name='limit' class='size' value='" . h($_POST ? $_POST["limit"] : $_GET["limit"]) . "'>\n"; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/adminer-4.3.0/changes.txt new/adminer-4.3.1/changes.txt --- old/adminer-4.3.0/changes.txt 2017-03-15 18:24:12.000000000 +0100 +++ new/adminer-4.3.1/changes.txt 2017-04-14 09:48:11.000000000 +0200 @@ -1,3 +1,10 @@ +Adminer 4.3.1 (released 2017-04-14): +Fix permanent login after logout (bug #539) +Fix SQL command autofocus (regression from 4.0.0) +PostgreSQL: Support JSON and JSONB data types +PostgreSQL: Fix index size computation in PostgreSQL < 9.0 (regression from 4.3.0) +PostgreSQL: Fix nullable fields in export + Adminer 4.3.0 (released 2017-03-15): Make maxlength in edit fields a soft limit Add accessibility labels diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/adminer-4.3.0/designs/haeckel/adminer.css new/adminer-4.3.1/designs/haeckel/adminer.css --- old/adminer-4.3.0/designs/haeckel/adminer.css 2017-03-15 18:24:12.000000000 +0100 +++ new/adminer-4.3.1/designs/haeckel/adminer.css 2017-04-14 09:48:11.000000000 +0200 @@ -3,7 +3,8 @@ * * Klemens Häckel [http://clickdimension.wordpress.com/] * - * update 2014-01 + * update 2017-03 + * adapted for adminer 4.3.0 * * new remaster based on style for WT-NMP 13.12 * @@ -77,7 +78,7 @@ right: 8px; text-indent: 8px; top: 6px; - width: 80px; + width: 120px; position:fixed; z-index: 10; } @@ -154,10 +155,10 @@ } /* Select data */ -html>/**/body #tables li a[href*="&select="], html>/**/body .links a[href*="&select="] { +html>/**/body #menu li a[href*="&select="], html>/**/body .links a[href*="&select="] { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAdVJREFUeNqck8tO21AQhn8bB8ehRe0SUEBOlIsSVFGqqlK3oey6K+9A96wTKU/RFU/AG7CrKhAg7gmKiJKIplFWqItWIQEfuzOT2LmsSo408j+2/5lvjo+1rULhM4AFTLfahuu6i3vF4rdp3F/y+W3DVUrzKNk8BTzPC4IKS3h8Hc0Hz49zr8BeXSml8wu8PsU1uW7EhjpHOmd7wX1fs4e9hnIcTUkBDfs1DzGjS5N1pPOGRR3bLjR6ztoNNJm9ebDXcBxnjMD99YCdzGvJT25v8T6ZFH1QLuNjNiv6++UlESyDvSMEEIKcCZzX6zLvXDiMo0pFZn5hWfhxfS2aF3sCAkUvDwmA1ZUVyS9qNawnEn0aKvQhkxF9WCqBPUIgBSYISnd3QmCZJs6qVekaYZqbmzGCfoGnp2AEnyAdjUpeajTwJh4XfU778S6d7tNQISlA3rFN9AkqzaYQmLOzuKIxuGuYaE4H++F/RvbqVEVXE+cgsbSEFFH0Hh+RtW2sxmLo9npYoy/yNpUajkBeo9ftzkwSVFstIeBVpjH8rhc0xigBe43f9/dmKBTCburv4ISb//VvsYe9mmXbX/VIZHman8ntdH7y0BbFSwrjmX6H4s8/AQYAQChL+KIinhAAAAAASUVORK5CYII=") no-repeat left bottom } -html>/**/body #tables li a[href*="&select="] { +html>/**/body #menu li a[href*="&select="] { clear: left; display: block; float: left; @@ -316,7 +317,7 @@ background: transparent; font-size: .9em; left: auto; - right: 90px; + right: 120px; position:fixed; z-index: 10; padding-top: 2px; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/adminer-4.3.0/todo.txt new/adminer-4.3.1/todo.txt --- old/adminer-4.3.0/todo.txt 2017-03-15 18:24:12.000000000 +0100 +++ new/adminer-4.3.1/todo.txt 2017-04-14 09:48:11.000000000 +0200 @@ -20,6 +20,7 @@ Rank, Tree structure MySQL: +Generated columns (MySQL >= 5.7.6) Data longer than max_allowed_packet can be sent by mysqli_stmt_send_long_data() SQLite: