Releases: hopeit-git/hopeit.engine
hopeit.engine 0.25.4
Release Notes
Version 0.25.4
-
Engine:
- Removed
typing_inspect
dependency in favor oftyping
built-in module
- Removed
-
Plugins:
- DataFrames:
- Experimental:
DataBlocks
API, to allow manipulating and saving multiple datasets at once
- Experimental:
- DataFrames:
hopeit.engine 0.25.3
Version 0.25.3
-
Engine:
- Web:
- Allow to specify
cors_routes_prefix
to allowcors_origin
to be applied
to custom routes names
- Allow to specify
- Web:
hopeit.engine 0.25.2
Version 0.25.2
-
Plugins:
- DataFrames:
- Support for
bool
fields Dataframes.to_dataobjects
: option to convert null values (nan
,NaT
, etc) to None
- Support for
- DataFrames:
hopeit.engine 0.25.1
Version 0.25.1
-
Engine
- API: Support for
type | None
syntax, as well asOptional[type]
annotation for optional query args
- API: Support for
-
Plugins:
- DataFrames, feature to allow schema evolution:
- Allowing optional and default values in
@dataframe
objects - Saving
json
schema for serialized Datasets - Handling load errors with
DatasetLoadException
- Allowing load dataset with deprecated fields (removed fields)
- Allowing load dataset with new fields in schema using a default value
- Allowing optional and default values in
- DataFrames, feature to allow schema evolution:
hopeit.engine 0.25.0
Version 0.25.0
-
Engine:
-
This release adopts
pydantic
as a the library for dataclasses and schema validation -
StreamManager: add support for
username
andpassword
inStreamsConfig
-
Fix: support for empty values in environment variables used in config files
BREAKING CHANGES
-
Dropped support for
Python 3.8
-
Python
dataclasses.dataclass
is no longer supported in@dataobjects
annotated classes.
Pydantic@dataclasses
(and in the future BaseModel should be used). -
The recommended way is to import from dataobjects module:
from hopeit.dataobjects import dataclass, dataobject, field
where dataclass and field are aliases of
pydantic.dataclasses.dataclass
andpydantic.Field
-
In most of the cases replacing the import clause in applications should suffice,
but could be features of dataclasses (like i.e.metadata
) that should be replaced by its
equivalent inpydantic
. -
API validation: now payload validation is not done in
api
module and is deferred and done bypydantic
when the
payload is being parsed. Response in case of validation error will returnBadRequest
(400) but with
different error message than in previous versions.
-
-
Plugins:
-
Dataframes
- Made it compatible with pydantic dataclasses
- Removed
@dataframeobject
annotation in favor of Dataset[T] generic type - Introduced
.DataObject
companion type for@dataframe
conversion toDataObject
- Fixed type coercion for string fields
- Datetime fields are converted to UTC when dataframe object is initialized
-
redis-streams: update
StreamsConfig
usage to support newusername
andpassword
fields -
redis-storage: add support for
username
andpassword
in theconnect
method
-
-
Development (internal)
- Simplified and accelerated linting using
ruff
. Droppingpylint
andflake
- Reformatted code files
- Moved linting and test logic to
Makefile
- Simplified and accelerated linting using
hopeit.engine 0.25.0b9
Version 0.25.0
-
Engine:
-
This release adopts
pydantic
as a the library for dataclasses and schema validation -
StreamManager: add support for
username
andpassword
inStreamsConfig
-
Fix: support for empty values in environment variables used in config files
BREAKING CHANGES
-
Dropped support for
Python 3.8
-
Python
dataclasses.dataclass
is no longer supported in@dataobjects
annotated classes.
Pydantic@dataclasses
(and in the future BaseModel should be used). -
The recommended way is to import from dataobjects module:
from hopeit.dataobjects import dataclass, dataobject, field
where dataclass and field are aliases of
pydantic.dataclasses.dataclass
andpydantic.Field
-
In most of the cases replacing the import clause in applications should suffice,
but could be features of dataclasses (like i.e.metadata
) that should be replaced by its
equivalent inpydantic
. -
API validation: now payload validation is not done in
api
module and is deferred and done bypydantic
when the
payload is being parsed. Response in case of validation error will returnBadRequest
(400) but with
different error message than in previous versions.
-
-
Plugins:
-
Dataframes
- Made it compatible with
pydantic
dataclasses - Removed
@dataframeobject
annotation in favor of Dataset[T] generic type - Introduced
.DataObject
companion type for@dataframe
conversion toDataObject
- Fixed type coercion for string fields
- Datetime fields are converted to UTC when dataframe object is initialized
- Made it compatible with
-
redis-streams: update
StreamsConfig
usage to support newusername
andpassword
fields -
redis-storage: add support for
username
andpassword
in theconnect
method
-
-
Development (internal)
- Simplified and accelerated linting using
ruff
. Droppingpylint
andflake
- Reformatted code files
- Moved linting and test logic to
Makefile
- Simplified and accelerated linting using
hopeit.engine 0.25.0b7
Version 0.25.0
-
Engine:
-
This release adopts
pydantic
as a the library for dataclasses and schema validation -
StreamManager: add support for
username
andpassword
inStreamsConfig
-
Fix: support for empty values in environment variables used in config files
BREAKING CHANGES
-
Python
dataclasses.dataclass
is no longer supported in@dataobjects
annotated classes.
Pydantic@dataclasses
(and in the future BaseModel should be used). -
The recommended way is to import from dataobjects module:
from hopeit.dataobjects import dataclass, dataobject, field
where dataclass and field are aliases of
pydantic.dataclasses.dataclass
andpydantic.Field
-
In most of the cases replacing the import clause in applications should suffice,
but could be features of dataclasses (like i.e.metadata
) that should be replaced by its
equivalent inpydantic
. -
API validation: now payload validation not done in api module and is deferred and done by
pydantic
when the
payload is being parsed. Response in case of validation error will returnBadRequest
(400) but with
different error message than in previous versions.
-
-
Plugins:
-
Dataframes
- Made it compatible with pydantic dataclasses
- Removed
@dataframeobject
annotation in favor of Dataset[T] generic type - Introduced
.DataObject
companion type for@dataframe
conversion toDataObject
- Fixed type coercion for string fields
- Datetime fields are converted to UTC when dataframe object is initialized
-
redis-streams: update
StreamsConfig
usage to support newusername
andpassword
fields -
redis-storage: add support for
username
andpassword
in theconnect
method
-
hopeit.engine 0.25.0b6
Version 0.25.0
-
Engine:
-
This release adopts
pydantic
as a the library for dataclasses and schema validation -
StreamManager: add support for
username
andpassword
inStreamsConfig
-
Fix: support for empty values in environment variables used in config files
BREAKING CHANGES
-
Python
dataclasses.dataclass
is no longer supported in@dataobjects
annotated classes.
Pydantic@dataclasses
(and in the future BaseModel should be used). -
The recommended way is to import from dataobjects module:
from hopeit.dataobjects import dataclass, dataobject, field
where dataclass and field are aliases of
pydantic.dataclasses.dataclass
andpydantic.Field
-
In most of the cases replacing the import clause in applications should suffice,
but could be features of dataclasses (like i.e.metadata
) that should be replaced by its
equivalent inpydantic
.
-
-
Plugins:
-
Dataframes
- Made it compatible with pydantic dataclasses
- Removed
@dataframeobject
annotation in favor of Dataset[T] generic type - Introduced
.DataObject
companion type for@dataframe
conversion toDataObject
- Fixed type coercion for string fields
-
redis-streams: update
StreamsConfig
usage to support newusername
andpassword
fields -
redis-storage: add support for
username
andpassword
in theconnect
method
-
hopeit.engine 0.25.0b5
Version 0.25.0
-
Engine:
-
This release adopts
pydantic
as a the library for dataclasses and schema validation -
StreamManager: add support for
username
andpassword
inStreamsConfig
-
Fix: support for empty values in environment variables used in config files
BREAKING CHANGES
-
Python
dataclasses.dataclass
is no longer supported in@dataobjects
annotated classes.
Pydantic@dataclasses
(and in the future BaseModel should be used). -
The recommended way is to import from dataobjects module:
from hopeit.dataobjects import dataclass, dataobject, field
where dataclass and field are aliases of
pydantic.dataclasses.dataclass
andpydantic.Field
-
In most of the cases replacing the import clause in applications should suffice,
but could be features of dataclasses (like i.e.metadata
) that should be replaced by its
equivalent inpydantic
.
-
-
Plugins:
-
Dataframes
- Made it compatible with pydantic dataclasses
- Removed
@dataframeobject
annotation in favor of Dataset[T] generic type - Introduced
.DataObject
companion type for@dataframe
conversion toDataObject
-
redis-streams: update
StreamsConfig
usage to support newusername
andpassword
fields -
redis-storage: add support for
username
andpassword
in theconnect
method
-
hopeit.engine 0.25.0b4
Version 0.25.0
-
Engine:
-
This release adopts
pydantic
as a the library for dataclasses and schema validation -
StreamManager: add support for
username
andpassword
inStreamsConfig
BREAKING CHANGES
-
Python
dataclasses.dataclass
is no longer supported in@dataobjects
annotated classes.
Pydantic@dataclasses
(and in the future BaseModel should be used). -
The recommended way is to import from dataobjects module:
from hopeit.dataobjects import dataclass, dataobject, field
where dataclass and field are aliases of
pydantic.dataclasses.dataclass
andpydantic.Field
-
In most of the cases replacing the import clause in applications should suffice,
but could be features of dataclasses that should be replaced by its
equivalent inpydantic
. -
For cases where you store data in the field property metadata, you can access it as follows:
from hopeit.dataobjects import dataclass, dataobject, field @dataobject @dataclass class User: name: str = field(metadata={"key": "value"}) metadata = User.name.json_schema_extra["metadata"]
-
-
Plugins:
-
Dataframes
- Made it compatible with pydantic dataclasses
- Removed
@dataframeobject
annotation in favor of Dataset[T] generic type - Introduced
.DataObject
companion type for@dataframe
conversion toDataObject
-
redis-streams: update
StreamsConfig
usage to support newusername
andpassword
fields -
redis-storage: add support for
username
andpassword
in theconnect
method
-