Kexi/Releases/3.2.0 Changes: Difference between revisions

From KDE Community Wiki
< Kexi‎ | Releases
No edit summary
(10 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''General highlight:''' focus of the 3.2 release has been put on improving stability of KEXI and KEXI frameworks, [[KDb]], [[KProperty]], [[KReport]]. API of these frameworks is backward compatible with the 3.1.0 version. It is also is guaranteed to be stable until the 4.0.0 release.
'''General highlight:''' focus of the 3.2 release has been put on improving stability of KEXI and KEXI frameworks, [[KDb]], [[KProperty]], [[KReport]]. API of these frameworks is backward compatible with the 3.1.0 version. It is also is guaranteed to be stable until the 4.0.0 release.


Since the 3.1.0 release KEXI and the frameworks received over ?????????? improvements and bug fixes.
Since version 3.1.0 KEXI and the frameworks received about 80 improvements and bug fixes.


Documentation of the frameworks has also improved and is available at [https://api.kde.org/extragear-api/libs-apidocs/ api.kde.org], although tutorials and reference have to be added in coming releases. KEXI user's manual is outdated as it covers older versions 2.x. We're sorry for the inconvenience.
Documentation of the frameworks has also improved and is available at [https://api.kde.org/extragear-api/libs-apidocs/ api.kde.org], although tutorials and reference have to be added in coming releases. KEXI user's manual is outdated as it covers older versions 2.x. We're sorry for the inconvenience and invite volunteers to help out.


{{Note|KEXI 3.2.x depends on the KEXI frameworks in version 3.2.x or newer. It may or may not work with older versions. Just like the KDE Frameworks, we recommend to upgrade all the KEXI frameworks to the same version.}}
{{Note|KEXI 3.2.x depends on the KEXI frameworks in version 3.2.x or newer. There is no guarantee that it works with older frameworks. Just like the KDE Frameworks, we recommend to upgrade all the KEXI frameworks to the same version as KEXI.}}


== Changes in KEXI ==
== Changes in KEXI ==
Line 12: Line 12:
'''Highlight:'''  
'''Highlight:'''  


Date, Date/Time and Time type support has improved. TODO
Universal snapshots of this and future KEXI versions are also automatically built for Linux (Flatpak) and for Windows (Craft) every night. See [[Kexi/Snapshots]].
 
Date, Date/Time and Time type support has greatly improved in KEXI. Users requested to have clear way to enter date/time constants. It is now possible in a clear way without need to use text strings. Documentation of the format is currently accessible at [https://community.kde.org/Kexi/Plugins/Queries/SQL_Constants here].
In the future date/time related SQL functions would be added as well as planned [https://community.kde.org/Kexi/Plugins/Queries/SQL_Functions#Date_And_Time_Scalar_Functions here].
 
<gallery mode="packed">
File:Kexi-3.2-date-constants.png|Date constants in SELECT queries
File:Kexi-3.2-date-constants-2.png|Date constants in conditions of SELECT queries
</gallery>
Apart from the above notation improvements, data entry for dates are more reliably supported on computers that default default to two-digit years. KEXI switches itself to four-digit years by default (it can be switched off) to address the fact that for example date 19-01-21 can mean both 1919-01-21 and 2019-01-21.


* 3.2.0 Beta 1 (3.1.91)
* 3.2.0 Beta 1 (3.1.91)
Line 58: Line 67:
***{{commit|kexi|d9c7ab2b2}} Win/Mac: still install copied KEXI files but add the original ones to the binary because the copied ones do not exist yet before ecm_add_app_icon() gets called
***{{commit|kexi|d9c7ab2b2}} Win/Mac: still install copied KEXI files but add the original ones to the binary because the copied ones do not exist yet before ecm_add_app_icon() gets called
***{{commit|kexi|54b2bcfb2}} CMake: find PostgreSQL 11
***{{commit|kexi|54b2bcfb2}} CMake: find PostgreSQL 11
* 3.2.0
**Bug fixes
***{{commit|kexi|95a59ae11}} Add protection against invalid translation of widget names
***{{commit|kexi|bb554ba8b}} Fix compilation with KIO < 5.33 ({{diff|19616}})


== Changes in KDb ==
== Changes in KDb ==
''[[KDb]] is a database connectivity and creation framework for various database vendors.''
''[[KDb]] is a database connectivity and creation framework for various database vendors.''


'''Highlight:'''  TODO
'''Highlight:'''  As a top framework on which KEXI depends, KDb 3.2 received numerous date/time improvements.


* 3.2.0 Beta 1 (3.1.91)
* 3.2.0 Beta 1 (3.1.91)
Line 96: Line 110:
***{{commit|kdb|8bcde5e6}} Copy new FindICU.cmake from cmake and port to it
***{{commit|kdb|8bcde5e6}} Copy new FindICU.cmake from cmake and port to it
***{{commit|kdb|33392735}} ICU is required so do not check for it again in the sqlite driver's build
***{{commit|kdb|33392735}} ICU is required so do not check for it again in the sqlite driver's build
* 3.2.0
**Bug fixes
***{{commit|kdb|d6291d60}} Fix build with Qt < 5.8 (missing Qt::ISODateWithMs) ({{bug|404599}})
***{{commit|kdb|fc971325}} Port KDb to the Qt::ISODateWithMs fix ({{bug|404599}})
***{{commit|kdb|63085381}} Port KDbUtils::stringToHackedQTime the Qt::ISODateWithMs fix ({{bug|404599}})


== Changes in KProperty ==
== Changes in KProperty ==
Line 112: Line 132:
**Buildsystem
**Buildsystem
***{{commit|kproperty|9ea3375}} Fix data install dir for Windows, make icons installed relative to that, make icons coinstallable
***{{commit|kproperty|9ea3375}} Fix data install dir for Windows, make icons installed relative to that, make icons coinstallable
* 3.2.0
**Bug fixes
***{{commit|kproperty|c481044}} Bool editor: do not display None for 2-state mode
***{{commit|kproperty|f5ff8b5}} Adjust size hint of the property name column to fix bold text
**Improvements
***{{commit|kproperty|8a89673}} Update docs for 3State option


== Changes in KReport ==
== Changes in KReport ==
Line 124: Line 150:
***{{commit|kreport|ea0119fc28}} Fix data install dir for Windows, make icons installed relative to that, make icons coinstallable
***{{commit|kreport|ea0119fc28}} Fix data install dir for Windows, make icons installed relative to that, make icons coinstallable
***{{commit|kreport|04cb1e9368}} Make sure we don't try to build maps on Windows, even if Marble is around (it has Unix requirements)
***{{commit|kreport|04cb1e9368}} Make sure we don't try to build maps on Windows, even if Marble is around (it has Unix requirements)
* 3.2.0
** None

Revision as of 16:49, 9 April 2019

General highlight: focus of the 3.2 release has been put on improving stability of KEXI and KEXI frameworks, KDb, KProperty, KReport. API of these frameworks is backward compatible with the 3.1.0 version. It is also is guaranteed to be stable until the 4.0.0 release.

Since version 3.1.0 KEXI and the frameworks received about 80 improvements and bug fixes.

Documentation of the frameworks has also improved and is available at api.kde.org, although tutorials and reference have to be added in coming releases. KEXI user's manual is outdated as it covers older versions 2.x. We're sorry for the inconvenience and invite volunteers to help out.

Note

KEXI 3.2.x depends on the KEXI frameworks in version 3.2.x or newer. There is no guarantee that it works with older frameworks. Just like the KDE Frameworks, we recommend to upgrade all the KEXI frameworks to the same version as KEXI.


Changes in KEXI

KEXI is a visual database apps builder, developed since 2002.

Highlight:

Universal snapshots of this and future KEXI versions are also automatically built for Linux (Flatpak) and for Windows (Craft) every night. See Kexi/Snapshots.

Date, Date/Time and Time type support has greatly improved in KEXI. Users requested to have clear way to enter date/time constants. It is now possible in a clear way without need to use text strings. Documentation of the format is currently accessible at here. In the future date/time related SQL functions would be added as well as planned here.

Apart from the above notation improvements, data entry for dates are more reliably supported on computers that default default to two-digit years. KEXI switches itself to four-digit years by default (it can be switched off) to address the fact that for example date 19-01-21 can mean both 1919-01-21 and 2019-01-21.

  • 3.2.0 Beta 1 (3.1.91)
    • Bug fixes
      • 178f1f667 Startup: Improve display of tried locations for resources lookup and lookup algorithm (Bug #391810)
      • 360036d47 Startup: Add missing translations for "Could not open icon resource file" messages
      • d194b984a General: Make certain views work in User mode (Bug #396875, Review #14402)
      • db0df7fc6 General: Add "All files" filter to file widgets for non-Plasma systems
      • d92b07632 General: Welcome page: Always display the project file names in addition to captions
      • 6e41c5c03 General: Welcome page: Add long localized last opening date to project tool tips
      • 166ec49aa f0f2d52dc General: Welcome page: Show recent project files that start with "." / hidden files
      • 941cdfa75 Table View: Make zero values displayed for integer columns (Bug #395189, Review #13451)
      • 16076668c Table View: Fix validation of values in default input box of table view (Bug #395225, Review #13473)
      • b37727d3f Table and Form View: Fix two-digit year formats issue: do not allow by default (Bug #378481, Review #18035).
        • Years are 4 digits now in tables and forms. On the output INFO message says as explained at https://bugs.kde.org/show_bug.cgi?id=378481#c5. Data entry works based on this new year format. Changes are properly saved to db. Display output e.g. in queries and reports follow this format too.
        • Set AllowTwoDigitYearFormats=true in kexirc, [General] section to force using 2 digits.
      • a2ccf1e6a Queries: Fix crash on failed opening of query in Design view (Task #10134, Review #17847)
      • 96c30982d Forms: Fix crash when right-clicking in form data view on widget such as text box (Bug #402923)
      • 90c3ed325 Reports: Fix crash in data fetching and aggregation scripts in reports (Bug #392753, Review #12868)
      • 719ee0c4e Reports: Support params in report queries. KEXI now prompts for parameters in queries that use them. (Review #15438) (Bug #379694)
      • 5616004f9 Import: Fix translation issue in the Database Importing Assistant (Bug #399296)
      • bcebf0787 Import: Skip table name if physical table is non-existing, use the new tableNames API in migration (Bug #392112, Review #11549)
      • 08ac1466f MS Access import
        • Fix crash on importing zero-length memo data (long text)
        • Fix not being able to handle binary objects larger than 16 MiB. Limit is now 256 MiB.
        • Fix possible crash when importing MDB file having non-latin characters in column names of unexpected length (Bug #396984)
      • a6d385767 Export: Fix crash on exporting tabular data to clipboard (introduced in 3.1.0) (Bug #394519)
      • 861b4bceb Export: Fix filename selection for export dialogs and allow to pre-select filename in file dialogs
    • Improvements
      • fceff4e57 Assistants: properly focus input boxes after moving to other page, make Alt+arrows work for Back/Next, make Enter accept page if applicable
      • fbc39fd7a Project type selection in the new project assistant: do not assume user clicked the type button but just focused it
      • 8c4d2dd8d Improve display of Finish buttons of CSV export/import dialogs
      • New / Import project assistants
        • 0f751061c Destination file requester is now of Save type
        • a5d194d5a Use Documents location if there are no recent dirs known yet
        • c08416889 Better preserve path while updating filename based on project caption
    • Buildsystem
      • 12eed3a62 Install the application icons
      • f4c9aa0da Create (and install) rcc files with kexi icons in co-installable dirs
      • 1578fcb4a Fix build with Qt 5.11 (missing headers) (Review #11503)
      • 14dada252 Fix build with Qt 5.6 (Review #11544)
      • b1a9f6f68 Fix data install dir for Windows, make icons installed relative to that
      • 7c1e67632 Make appdata.xml, app icons and kexi.desktop co-installable
      • 519c4f1c3 Make KEXI compile for MOBILE productset (Review #10996)
      • d9c7ab2b2 Win/Mac: still install copied KEXI files but add the original ones to the binary because the copied ones do not exist yet before ecm_add_app_icon() gets called
      • 54b2bcfb2 CMake: find PostgreSQL 11

Changes in KDb

KDb is a database connectivity and creation framework for various database vendors.

Highlight: As a top framework on which KEXI depends, KDb 3.2 received numerous date/time improvements.

  • 3.2.0 Beta 1 (3.1.91)
    • New features / APIs
      • eef6b7c9 Add Date/Time classes for precise type support (Bug #393094)
      • 5b700dfd Add support for the Date/Time constants in the SQL parser (Bug #393094)
      • e5c3a99d Add KDbConnection::drv_getTableNames for low level list of table names, make tableNames() skip names with non-existing physical tables (Bug #392112)
      • d1c526ca Rework KDbConnection::drv_getTableNames API so error information is passed
    • Bug fixes
    • Improvements
      • d141d8a5 Add quotes when escaping identifiers only when string is not empty, invalid identifier or KDBSQL keyword
      • eac0f7b7 KDbUtils::stringToFileName(): Prepend '_' to recent project filenames that start with "." so files are not hidden
      • 4fdf53a5 Improve transliteration features by switching to unidecode
    • MySQL / MariaDB support
      • 94675801 Improve MariaDB detection on Windows builds, separately from MySQL
    • SQLite support
    • PostgreSQL support
    • Tests
      • 4867d51e HeadersTest: Use install_manifest.txt to obtain list of files, this improves accuracy, no need for blacklisting
      • f8116d03 KDbTestUtils: add convenience APIs for connecting and using db, support connection options
      • c2b0c4bd Add autotests for checking detection of every mime type that should be supported
      • 81ad5897 c2fcf8a6 Add autotests for the new Date/Time related features
    • Buildsystem
      • 8bcde5e6 Copy new FindICU.cmake from cmake and port to it
      • 33392735 ICU is required so do not check for it again in the sqlite driver's build

Changes in KProperty

KProperty is a property editing framework with editor widget similar to what is known from Qt Designer.

Highlight: Developers can now plug own handler for file/url selection to the Url type. Also, relative URLs can be now used. KPropertyExample example application has been updated to demonstrate these features.

  • 3.2.0 Beta 1 (3.1.91)
    • New features / APIs
      • f4cc272 Allow to override behavior of URL editors
        • added KPropertyEditorItemEvent and KPropertyEditorView::handlePropertyEditorItemEvent()
      • cd04f74 Add support for relative URL types and classes KPropertyComposedUrl, KPropertyComposedUrlEditor
        • Added ComposedUrl type
    • Bug fixes
      • 95f521f Remove infinite loop while resizing double spin box editor
    • Buildsystem
      • 9ea3375 Fix data install dir for Windows, make icons installed relative to that, make icons coinstallable
  • 3.2.0
    • Bug fixes
      • c481044 Bool editor: do not display None for 2-state mode
      • f5ff8b5 Adjust size hint of the property name column to fix bold text
    • Improvements
      • 8a89673 Update docs for 3State option

Changes in KReport

KReport is a framework for the creation and generation of reports in multiple formats.

Highlight: No new features in the 3.2 release, just stabilizations.

  • 3.2.0 Beta 1 (3.1.91)
    • Improvements
    • Buildsystem
      • ea0119fc28 Fix data install dir for Windows, make icons installed relative to that, make icons coinstallable
      • 04cb1e9368 Make sure we don't try to build maps on Windows, even if Marble is around (it has Unix requirements)
  • 3.2.0
    • None