From 192a56cdeecda7212974935e8e60f37fb206036b Mon Sep 17 00:00:00 2001 From: jrobinAV Date: Mon, 7 Oct 2024 16:13:52 +0200 Subject: [PATCH 1/9] Complete Release notes --- docs/release-notes/index.md | 126 +++++++++++++++++++++++++----------- 1 file changed, 90 insertions(+), 36 deletions(-) diff --git a/docs/release-notes/index.md b/docs/release-notes/index.md index 623e1884e..4e873f7d5 100644 --- a/docs/release-notes/index.md +++ b/docs/release-notes/index.md @@ -22,8 +22,8 @@ This is the list of changes to Taipy releases as they were published. (Work in progress - the following links are invalid for the time being) -[`taipy` 4.0](https://pypi.org/project/taipy/4.0.0/) contains the latest -[`taipy-config` 4.0](https://pypi.org/project/taipy-config/4.0.0/), +[`taipy` 4.0](https://pypi.org/project/taipy/4.0.0/) depends on the latest +[`taipy-common` 4.0](https://pypi.org/project/taipy-common/4.0.0/), [`taipy-gui` 4.0](https://pypi.org/project/taipy-gui/4.0.0/), [`taipy-core` 4.0](https://pypi.org/project/taipy-core/4.0.0/), [`taipy-templates` 4.0](https://pypi.org/project/taipy-templates/4.0.0/), and @@ -33,6 +33,20 @@ This is the list of changes to Taipy releases as they were published.

taipy 4.0.0

+- The User Experience of the Scenario and Data management Visual elements have been greatly + improved by the following new functionalities: + - The multiple selection is now available on the data node selector: TODO add details + - A filter capability has been added to the data node selector: TODO add details + - A sort capability has been added to the data node selector: TODO add details + - A search capability has been added to the data node selector: TODO add details + - A new detail panel has been added to the job selector: TODO add details + - The multiple selection is now available on the scenario selector: TODO add details + - A filter capability has been added to the scenario selector: TODO add details + - A sort capability has been added to the scenario selector: TODO add details + - A search capability has been added to the scenario selector: TODO add details + - The data node viewer now offers the possibility to upload/download data for the file + based data nodes: TODO add details +

taipy-gui 4.0.0

- A new control, [`metric`](../refmans/gui/viselements/generic/metric.md), has been added to @@ -55,7 +69,7 @@ This is the list of changes to Taipy releases as they were published. [*format_fn[column_name]*](../refmans/gui/viselements/generic/table.md#p-format_fn[column_name]) allows you to define a custom Python function to format cell values.
Please look at the - [example code](../refmans/gui/viselements/generic/table.md#custom-formatting) for details. + [example code](../refmans/gui/viselements/generic/table.md#custom-formatting) for details. - A new property, [*use_checkbox*](../refmans/gui/viselements/generic/table.md#p-use_checkbox), can be set to True to display checkboxes in cells containing Boolean values.
This significantly reduces the rendering time for large tables with Boolean columns. @@ -71,28 +85,37 @@ This is the list of changes to Taipy releases as they were published. - The `taipy.get_scenarios()` and `taipy.get_primary_scenarios()^` methods now accept optional parameters to: - - - sort the output list of scenarios by name, id, creation date, or tag - - filter the output list of scenarios that are created in a specific time range.
+ - sort the output list of scenarios by name, id, creation date, or tag + - filter the output list of scenarios that are created in a specific time range.
+ See [issue #393](https://github.com/Avaiga/taipy/issues/393).
For more information, please refer to [Get all scenarios](../userman/scenario_features/sdm/scenario/index.md#get-all-scenarios) and [Get primary scenarios](../userman/scenario_features/sdm/scenario/index.md#get-primary-scenarios). -- When the status of a `Job^` changes, the timestamp of the status change is now recorded. - These timestamps can be accessed using the following properties: *submitted_at*, *run_at*, - *finished_at*, *execution_duration*, *pending_duration*, and *blocked_duration*.
- For more information, please refer to - [Job Status](../userman/scenario_features/sdm/job/index.md#job-status). - -- The timestamps of the status changes of a `Submission^` are recorded. These timestamps can be - accessed using the following properties: *submitted_at*, *run_at*, *finished_at*, *execution_duration*.
- For more information, please refer to - [Submission Status](../userman/scenario_features/sdm/submission/index.md#submission-status). +- The `Job^` and `Submission^` entities have new attributes based on the record of job + status changes. For more information on job statuses, please refer to + [Job Status](../userman/scenario_features/sdm/job/index.md#job-status).
+ See [issue #1704](https://github.com/Avaiga/taipy/issues/1704) and + [issue #1544](https://github.com/Avaiga/taipy/issues/1544). + - The `Job^` entity exposes the following timestamp attributes: *submitted_at*, *run_at*, + *finished_at*. + - The `Job^` entity exposes the following duration attributes: *execution_duration*, + *pending_duration*, and *blocked_duration*. + - The `Submission^` entity exposes the following timestamp attributes: *submitted_at*, + *run_at*, *finished_at*. + - The `Submission^` entity exposes the *execution_duration* attribute. + + - Expose an Abstract class `CoreEventConsumerBase^` to implement a custom event consumer.
+ See [issue #405](https://github.com/Avaiga/taipy/issues/405).
+ A consumer can be used to listen to Taipy events (mainly CRUD operations on Taipy + entities) and react to them. For more information, please refer to the + [Track activities and Trigger actions](../userman/scenario_features/events/index.md) + documentation page.

taipy-templates 4.0.0

-- Creating a new application using any template now also supports initializing the application as a - Git repository. +- Creating a new application using any template now also supports initializing the application + as a Git repository. ## Improvements and changes @@ -100,6 +123,9 @@ This is the list of changes to Taipy releases as they were published. - Taipy and all its dependencies now stop support Python 3.8.
The minimum supported Python version is now 3.9. +- Taipy package structure has been reorganized. The dependency on `taipy-config` has been + removed. Taipy now depends on a new `taipy-common` package that includes the configuration + features among the common code shared by all `taipy`, `taipy-gui`, and `taipy-core` packages.

taipy-gui 4.0.0

@@ -154,28 +180,50 @@ This is the list of changes to Taipy releases as they were published. - In standalone job execution mode, the default value of *max_nb_of_workers* is now 2 instead of 1. For more information, please refer to [Job execution configuration](../userman/advanced_features/configuration/job-config.md). +- In standalone job execution mode, the workers are started in a separate process are now + started in "spawn" *mp_context* instead of the default from the system. +- The `Core` service has been deprecated and renamed `Orchestrator`. The `Core` service is still + available for backward compatibility but will be removed in a future release.
+ See [issue #1567](https://github.com/Avaiga/taipy/issues/1567). - When using the Taipy command-line interface, if an unsupported argument is provided, the CLI will display a message indicating the invalid argument. If the invalid argument is possibly a typo, the CLI will suggest the closest valid argument. - The `Scenario.export()` and `taipy.export_scenario()` functions have been transferred from the Community edition to the Enterprise edition as it is more suitable for enterprise applications. -- The production mode of the version management system has been transferred from the Community - edition to the Enterprise edition as it is more suitable for enterprise applications. -- Support for for the SQL repository was removed. Taipy Community edition now only supports the - `filesystem` repository type. +- The production mode and the migration configuration of the version management system has been + transferred from the Community edition to the Enterprise edition as it is more suitable for + enterprise applications. +- Support for the SQL repository was removed. Taipy Community edition now only supports the + `filesystem` repository type.
+ See [issue #1513](https://github.com/Avaiga/taipy/issues/1513). +- Support for different encodings in `S3ObjectDataNode^`.
+ See [issue #680](https://github.com/Avaiga/taipy/issues/680). +- Reading an `ExcelDataNode^` is more consistent across the various expose types.
+ See [issue #796](https://github.com/Avaiga/taipy/issues/796). - Two scenarios belonging to the same cycle can now have the same tag.
- See [issue #1292](https://github.com/Avaiga/taipy/issues/1292). + See [issue #1292](https://github.com/Avaiga/taipy/issues/1292).
+- The custom properties of a `Scenario` are not exposed as attribute anymore.
+ See [issue #1572](https://github.com/Avaiga/taipy/issues/1572). +- Methods and functions returning booleans and related to entities now return + `ReasonCollection^` as a set of `Reason^` instances. Each reason contains a message + explaining why the boolean is `False`. The collection is empty if the boolean is `True` + .
+ Examples: `is_deletable^`, `exists^`, `is_readable^` etc. + See [issue #1568](https://github.com/Avaiga/taipy/issues/1568). - The `Config.check()^` method now raises `ERROR` issues if any data node, task, or sequence of a `ScenarioConfig^` has the same configuration id as another one in the same `ScenarioConfig^`, or any additional property of any configuration has the same name as one of the attributes of the configuration class.
- For more information, please refer to + See [issue #1696](https://github.com/Avaiga/taipy/issues/1696) and + [issue #411](https://github.com/Avaiga/taipy/issues/411).
+ For more information on checkers, please refer to [Configuration checker](../userman/advanced_features/configuration/config-checker.md).

taipy-templates 4.0.0

- The *--template* option of the `taipy create` command is now renamed to *--application* option - to correctly reflect the application template to use when creating a new Taipy application. + to correctly reflect the application template to use when creating a new Taipy application.
+ See[issue #1472](https://github.com/Avaiga/taipy/issues/1472) ## Significant bug fixes @@ -197,6 +245,13 @@ This is the list of changes to Taipy releases as they were published. - `DataNode.is_up_to_date()^` raises an error when the data node has never been written.
See [issue #1198](https://github.com/Avaiga/taipy/issues/1198). +- Reload the cache on all _build_manager() methods when the *repository_type* is changed.
+ See [issue #1692](https://github.com/Avaiga/taipy/pull/1692) + +

taipy-templates 4.0.0

+- First cli option of the `taipy create` command is skipped if it's before the positional + argument.
+ See [issue #1687](https://github.com/Avaiga/taipy/issues/1687). # Enterprise edition: 4.0 @@ -208,8 +263,8 @@ additional features. ## New Features - Support for [Polars DataFrame Library](https://docs.pola.rs/).
- Tabular data nodes (`CSVDataNode^`, `ParquetDataNode^`, `ExcelDataNode^`, `SQLTableDataNode^` and - `SQLDataNode`) can now expose the data as Polars objects. They all support + Tabular data nodes (`CSVDataNode^`, `ParquetDataNode^`, `ExcelDataNode^`, `SQLTableDataNode^`, + and `SQLDataNode^`) can now expose the data as Polars objects. They all support [`polars.LazyFrame`](https://docs.pola.rs/api/python/stable/reference/lazyframe/index.html), [`polars.DataFrame`](https://docs.pola.rs/api/python/stable/reference/dataframe/index.html) or [`polars.Series`](https://docs.pola.rs/api/python/stable/reference/series/index.html) as exposed @@ -224,12 +279,11 @@ additional features. ## Improvements and changes -- The `taipy.export_scenario()^` function now supports exporting file-based data nodes' data to the - export folder if the path exists. -- The `taipy.export_scenario()^` function now exports a zip archive instead of a - folder. For more information, please refer to - [Export a scenario](../userman/scenario_features/sdm/scenario/index.md#export-a-scenario). -- The `taipy.export_scenario()^` function now raises the `ExportPathAlreadyExists^` - exception if the export path already exists. You can explicitly set the *overwrite* parameter to - True to overwrite the existing export path. For more information, please refer to - [Export a scenario](../userman/scenario_features/sdm/scenario/index.md#export-a-scenario). +- The `taipy.export_scenario()^` function now + - exports a zip archive instead of a folder. + - supports exporting file-based data nodes' data to the exported archive if the path exists. + - raises the `ExportPathAlreadyExists^` + exception if the export path already exists. You can explicitly set the *overwrite* parameter to + True to overwrite the existing export path. + For more information, please refer to + [Export a scenario](../userman/scenario_features/sdm/scenario/index.md#export-a-scenario). From 28412e3aa7f635b141f950cd8f6bd991a1dda026 Mon Sep 17 00:00:00 2001 From: Jean-Robin Date: Mon, 7 Oct 2024 17:18:25 +0200 Subject: [PATCH 2/9] Update docs/release-notes/index.md --- docs/release-notes/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/index.md b/docs/release-notes/index.md index 4e873f7d5..52a571b54 100644 --- a/docs/release-notes/index.md +++ b/docs/release-notes/index.md @@ -223,7 +223,7 @@ This is the list of changes to Taipy releases as they were published. - The *--template* option of the `taipy create` command is now renamed to *--application* option to correctly reflect the application template to use when creating a new Taipy application.
- See[issue #1472](https://github.com/Avaiga/taipy/issues/1472) + See [issue #1472](https://github.com/Avaiga/taipy/issues/1472) ## Significant bug fixes From 82337d23a5556789749c89c8feb5e80c756f7a2c Mon Sep 17 00:00:00 2001 From: Jean-Robin Date: Mon, 7 Oct 2024 17:18:48 +0200 Subject: [PATCH 3/9] Update docs/release-notes/index.md Co-authored-by: Fabien Lelaquais <86590727+FabienLelaquais@users.noreply.github.com> --- docs/release-notes/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/index.md b/docs/release-notes/index.md index 52a571b54..d746fa992 100644 --- a/docs/release-notes/index.md +++ b/docs/release-notes/index.md @@ -204,7 +204,7 @@ This is the list of changes to Taipy releases as they were published. See [issue #1292](https://github.com/Avaiga/taipy/issues/1292).
- The custom properties of a `Scenario` are not exposed as attribute anymore.
See [issue #1572](https://github.com/Avaiga/taipy/issues/1572). -- Methods and functions returning booleans and related to entities now return +- Methods and functions returning a Boolean value and related to entities now return `ReasonCollection^` as a set of `Reason^` instances. Each reason contains a message explaining why the boolean is `False`. The collection is empty if the boolean is `True` .
From 0331136cc88540277f0a5ff4775cfad19e150e04 Mon Sep 17 00:00:00 2001 From: Jean-Robin Date: Mon, 7 Oct 2024 17:19:01 +0200 Subject: [PATCH 4/9] Update docs/release-notes/index.md Co-authored-by: Fabien Lelaquais <86590727+FabienLelaquais@users.noreply.github.com> --- docs/release-notes/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/index.md b/docs/release-notes/index.md index d746fa992..1d3a8a983 100644 --- a/docs/release-notes/index.md +++ b/docs/release-notes/index.md @@ -208,7 +208,7 @@ This is the list of changes to Taipy releases as they were published. `ReasonCollection^` as a set of `Reason^` instances. Each reason contains a message explaining why the boolean is `False`. The collection is empty if the boolean is `True` .
- Examples: `is_deletable^`, `exists^`, `is_readable^` etc. + Examples: `is_deletable()^`, `exists()^`, `is_readable()^` etc. See [issue #1568](https://github.com/Avaiga/taipy/issues/1568). - The `Config.check()^` method now raises `ERROR` issues if any data node, task, or sequence of a `ScenarioConfig^` has the same configuration id as another one in the same `ScenarioConfig^`, From b9b3562fd525e62e6ee8262f5d138b5e2b98391f Mon Sep 17 00:00:00 2001 From: Jean-Robin Date: Mon, 7 Oct 2024 17:19:09 +0200 Subject: [PATCH 5/9] Update docs/release-notes/index.md Co-authored-by: Fabien Lelaquais <86590727+FabienLelaquais@users.noreply.github.com> --- docs/release-notes/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/index.md b/docs/release-notes/index.md index 1d3a8a983..c98f6e5e5 100644 --- a/docs/release-notes/index.md +++ b/docs/release-notes/index.md @@ -206,7 +206,7 @@ This is the list of changes to Taipy releases as they were published. See [issue #1572](https://github.com/Avaiga/taipy/issues/1572). - Methods and functions returning a Boolean value and related to entities now return `ReasonCollection^` as a set of `Reason^` instances. Each reason contains a message - explaining why the boolean is `False`. The collection is empty if the boolean is `True` + explaining why the boolean is `False`. The collection is empty if the Boolean is `True` .
Examples: `is_deletable()^`, `exists()^`, `is_readable()^` etc. See [issue #1568](https://github.com/Avaiga/taipy/issues/1568). From 5a3e9be232de8e45995173109f836ad4ceb1ceba Mon Sep 17 00:00:00 2001 From: Jean-Robin Date: Mon, 7 Oct 2024 17:19:36 +0200 Subject: [PATCH 6/9] Update docs/release-notes/index.md Co-authored-by: Fabien Lelaquais <86590727+FabienLelaquais@users.noreply.github.com> --- docs/release-notes/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/index.md b/docs/release-notes/index.md index c98f6e5e5..cacdfb8c4 100644 --- a/docs/release-notes/index.md +++ b/docs/release-notes/index.md @@ -205,7 +205,7 @@ This is the list of changes to Taipy releases as they were published. - The custom properties of a `Scenario` are not exposed as attribute anymore.
See [issue #1572](https://github.com/Avaiga/taipy/issues/1572). - Methods and functions returning a Boolean value and related to entities now return - `ReasonCollection^` as a set of `Reason^` instances. Each reason contains a message + a `ReasonCollection^` object, which is a set of `Reason^` instances. Each reason contains a message explaining why the boolean is `False`. The collection is empty if the Boolean is `True` .
Examples: `is_deletable()^`, `exists()^`, `is_readable()^` etc. From cacdc90f6ca2704efa75b7822d8a7e923a18d30b Mon Sep 17 00:00:00 2001 From: Jean-Robin Date: Mon, 7 Oct 2024 17:20:09 +0200 Subject: [PATCH 7/9] Update docs/release-notes/index.md Co-authored-by: Fabien Lelaquais <86590727+FabienLelaquais@users.noreply.github.com> --- docs/release-notes/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/index.md b/docs/release-notes/index.md index cacdfb8c4..a77b2d058 100644 --- a/docs/release-notes/index.md +++ b/docs/release-notes/index.md @@ -222,7 +222,7 @@ This is the list of changes to Taipy releases as they were published.

taipy-templates 4.0.0

- The *--template* option of the `taipy create` command is now renamed to *--application* option - to correctly reflect the application template to use when creating a new Taipy application.
+ to correctly reflect the application template to use when creating a new Taipy application.
See [issue #1472](https://github.com/Avaiga/taipy/issues/1472) ## Significant bug fixes From b1236cead393a0cf2b77a9ea37f51302e9de47d6 Mon Sep 17 00:00:00 2001 From: Jean-Robin Date: Mon, 7 Oct 2024 17:21:24 +0200 Subject: [PATCH 8/9] Apply suggestions from code review Co-authored-by: Fabien Lelaquais <86590727+FabienLelaquais@users.noreply.github.com> --- docs/release-notes/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/release-notes/index.md b/docs/release-notes/index.md index a77b2d058..47b834679 100644 --- a/docs/release-notes/index.md +++ b/docs/release-notes/index.md @@ -245,11 +245,11 @@ This is the list of changes to Taipy releases as they were published. - `DataNode.is_up_to_date()^` raises an error when the data node has never been written.
See [issue #1198](https://github.com/Avaiga/taipy/issues/1198). -- Reload the cache on all _build_manager() methods when the *repository_type* is changed.
+- Reload the cache on all *_build_manager()* methods when the *repository_type* is changed.
See [issue #1692](https://github.com/Avaiga/taipy/pull/1692)

taipy-templates 4.0.0

-- First cli option of the `taipy create` command is skipped if it's before the positional +- The first cli option of the `taipy create` command is skipped if it's before the positional argument.
See [issue #1687](https://github.com/Avaiga/taipy/issues/1687). From f0aa89322d1bf40938cbbd4ea90b31656b9d0121 Mon Sep 17 00:00:00 2001 From: Jean-Robin Date: Mon, 7 Oct 2024 17:26:05 +0200 Subject: [PATCH 9/9] Update docs/release-notes/index.md --- docs/release-notes/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/index.md b/docs/release-notes/index.md index 47b834679..5082247c2 100644 --- a/docs/release-notes/index.md +++ b/docs/release-notes/index.md @@ -206,7 +206,7 @@ This is the list of changes to Taipy releases as they were published. See [issue #1572](https://github.com/Avaiga/taipy/issues/1572). - Methods and functions returning a Boolean value and related to entities now return a `ReasonCollection^` object, which is a set of `Reason^` instances. Each reason contains a message - explaining why the boolean is `False`. The collection is empty if the Boolean is `True` + explaining why the returned value is `False`. The collection is empty if the value is `True` .
Examples: `is_deletable()^`, `exists()^`, `is_readable()^` etc. See [issue #1568](https://github.com/Avaiga/taipy/issues/1568).