0.6.5 (March 25, 2022)#
Added#
columns parameter to
atoti.Session.read_csv()
,atoti.Session.read_parquet()
,atoti.Table.load_csv()
, andatoti.Table.load_parquet()
to rename or filter columns to be loaded in aatoti.Table
(issue #462).Support for isolated
atoti.Table
deletion (issue #85).del session.tables[table_name]
atoti_query.OAuth2ResourceOwnerPasswordAuthentication
to authenticate programmatically against a session secured with OIDC.atoti.math.isnan()
to compare measures toNaN
(issue #414).context parameter to
atoti.Cube.query()
,atoti_query.QueryCube.query()
,atoti.Session.query_mdx()
andatoti_query.QuerySession.query_mdx()
(issue #517).DefaultRoles
can be granted to users who had no roles granted byIndividualRoles
andRoleMapping
in an OIDC secured session.
User interface#
atoti_plus.app_extension.ADVANCED_APP_EXTENSION
to activate advanced features of the app.Style section at the bottom of the atoti sidebar (for widgets supporting it):
Changed#
Creating and configuring a session is done by passing the corresponding parameters to
atoti.Session.__init__()
.- session = tt.create_session( - config={ - "authentication": {"basic": {"realm": "Example"}}, - "port": 9090, - } - ) + session = tt.Session( + authentication=tt.BasicAuthenticationConfig(realm="Example"), + port=9090, + )
Passing a
atoti.UserContentStorageConfig
pointing to a local H2 database will automatically migrate the database to H2 v2 format during session startup.
User interface#
Upgraded ActiveUI to 5.0.8 (issue #223, issue #288, issue #320, issue #367).
Deprecated#
atoti.create_session()
. Instantiateatoti.Session
directly instead.atoti_aws.create_aws_key_pair()
andatoti_aws.create_aws_kms_config()
. Instantiateatoti_aws.AwsKeyPair
andatoti_aws.AwsKmsConfig
directly instead.atoti_azure.create_azure_key_pair()
. Instantiateatoti_azure.AzureKeyPair
directly instead.atoti.level.Level.comparator
.instead of
atoti.comparator.ASCENDING
andatoti.comparator.DESCENDING
, useatoti.NaturalOrder
.instead of
atoti.comparator.first_members()
, useatoti.CustomOrder
.
atoti_kafka.create_deserializer()
. Use the defaultJSON_DESERIALIZER
instead.Passing timeouts as instances of
int
. Usedatetime.timedelta
instead.
Removed#
Support for Python 3.7.
Fixed#
Unnecessary creation of index
atoti.Column
when usingatoti.Cube.create_parameter_hierarchy_from_members()
.Iteration over
atoti.Cube.levels
when multiple hierarchies have the same name.Running a
query()
on a cube based on an emptyTable
(issue #459).Data loading after having called
atoti.Cube.create_date_hierarchy()
(issue #409).Error handling of invalid
atoti.create_session()
’s app_extensions parameter (issue #454).Measures reordering in the UI (issue #390).
atoti.Session.create_cube()
performance issue (issue #445).Ability to hide hierarchies (issue #466).
Documentation of
atoti.agg.quantile()
andatoti.array.quantile()
(issue #485).Measure creation on an empty
atoti.Cube
(issue #460).Readability of query errors (issue #421).