Quixstreams

Latest version: v3.3.0

Safety actively analyzes 681812 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 7

3.3.0

What's Changed
New Connectors for Google Cloud

In this release, 3 new connectors have been added:

- [Google Cloud Pub/Sub Source](https://quix.io/docs/quix-streams/connectors/sources/google-cloud-pubsub-source.html) by tim-quix in https://github.com/quixio/quix-streams/pull/622
- [Google Cloud Pub/Sub Sink](https://quix.io/docs/quix-streams/connectors/sinks/google-cloud-pubsub-sink.html) by gwaramadze in https://github.com/quixio/quix-streams/pull/616 , https://github.com/quixio/quix-streams/pull/626
- [Google Cloud BigQuery Sink](https://quix.io/docs/quix-streams/connectors/sinks/google-cloud-bigquery-sink.html) by daniil-quix in https://github.com/quixio/quix-streams/pull/621, https://github.com/quixio/quix-streams/pull/627

To learn more about them, see the respective docs pages.

Other updates
* Conda drop Python 3.8 support by gwaramadze in https://github.com/quixio/quix-streams/pull/629
* Remove connectors docs from the nav by daniil-quix in https://github.com/quixio/quix-streams/pull/630
* Update Documentation by github-actions in https://github.com/quixio/quix-streams/pull/617
* Update connectors docs by daniil-quix in https://github.com/quixio/quix-streams/pull/625


**Full Changelog**: https://github.com/quixio/quix-streams/compare/v3.2.1...v3.3.0

3.2.1

What's Changed
This is a bugfix release downgrading `confluent-kafka` to 2.4.0 because of the authentication issue introduced in 2.6.0.

**Full Changelog**: https://github.com/quixio/quix-streams/compare/v3.2.0...v3.2.1

3.2.0

What's Changed

[new] Sliding Windows
Sliding windows are overlapping time-based windows that advance with each incoming message rather than at fixed intervals like hopping windows.
They have a fixed 1 ms resolution, perform better, and are less resource-intensive than hopping windows with a 1 ms step.
Read more in [Sliding Windows docs](https://quix.io/docs/quix-streams/windowing.html#sliding-windows).

PR by gwaramadze - https://github.com/quixio/quix-streams/pull/515

[new] FileSink and FileSource connectors
FileSink allows to batches of data to files on disk in JSON and Parquet formats.

FileSource enables processing data streams from JSON or Parquet files.
The resulting messages can be produced in "replay" mode, where the time between record producing is matched as close as possible to the original.

Learn more on [File Sink](https://quix.io/docs/quix-streams/connectors/sinks/file-sink.html) and [FileSource](https://quix.io/docs/quix-streams/connectors/sources/file-source.html) pages.

PRs:

* local file sink by tomas-quix in https://github.com/quixio/quix-streams/pull/560
* local file source by tim-quix in https://github.com/quixio/quix-streams/pull/601


[upd] Updated time tracking in windowed aggregations
In previous versions, Windowed aggregations were tracking time in the streams per topic-partition, but kept expiring them per keys.
It was not a fully consistent behavior, and it also created problems when processing data from misaligned producers.

For example, IoT and other physical devices may produce data at certain frequency, which results in misaligned data streams within one topic-partition, and more data is considered "late" and dropped from the processing.

To make the processing of such data more complete, Quix Streams now tracks event time per each message key in the windows.

PRs:
- https://github.com/quixio/quix-streams/pull/591 by daniil-quix
- https://github.com/quixio/quix-streams/pull/607 by daniil-quix


[upd] Updated CSVSource
Some breaking changes were made to `CSVSource` to make it easier to use:

- It now accepts CSV files in arbitrary formats and produces each row as a message value, making it less opinionated about the data format.
- It now requires the `name` to be passed directly. Previously, it was using the file name as a name of the source.
- Message keys and timestamps can be extracted from the rows via `key_extractor` and `timestamp_extractor` params
- Removed params `key_serializer` and `value_serializer`

PR by daniil-quix in https://github.com/quixio/quix-streams/pull/602

Bug fixes

- Fix invalid mapping for `oauth_cb` in BaseSettings by daniil-quix in https://github.com/quixio/quix-streams/pull/606

Dependencies
- Update confluent-kafka requirement from <2.5,>=2.2 to >=2.6,<2.7 by dependabot in https://github.com/quixio/quix-streams/pull/578

Docs
* Update README by gwaramadze in https://github.com/quixio/quix-streams/pull/604
* Update sinks.md by SteveRosam in https://github.com/quixio/quix-streams/pull/610


**Full Changelog**: https://github.com/quixio/quix-streams/compare/v3.1.1...v3.2.0

3.1.1

What's Changed

Fixes
* Fix topics management for apps connecting to the Quix brokers by tim-quix in https://github.com/quixio/quix-streams/pull/594

Other
* Bump pydantic-settings for Conda by gwaramadze in https://github.com/quixio/quix-streams/pull/589
* Create pre-commit hook that checks Conda requirements by gwaramadze in https://github.com/quixio/quix-streams/pull/596
* Turn on isort check in Ruff by gwaramadze in https://github.com/quixio/quix-streams/pull/597
* Update Documentation by github-actions in https://github.com/quixio/quix-streams/pull/598



**Full Changelog**: https://github.com/quixio/quix-streams/compare/v3.1.0...v3.1.1

3.1.0

What's Changed


[NEW] Apache Iceberg sink
A new sink that writes batches of data to an Apache Iceberg table.

It serializes incoming data batches into Parquet format and appends them to the
Iceberg table, updating the table schema as necessary.

Currently, it supports Apache Iceberg hosted in **AWS** and **AWS Glue** data catalogs.

To learn more about the Iceberg sink, see the [docs](https://quix.io/docs/quix-streams/connectors/sinks/apache-iceberg-sink.html).

Added by tomas-quix in https://github.com/quixio/quix-streams/pull/555

Docs
* Update import paths in sources docs by daniil-quix in https://github.com/quixio/quix-streams/pull/570
* Fix missing imports in Windowing docs by daniil-quix in https://github.com/quixio/quix-streams/pull/574
* Update README.md by mikerosam in https://github.com/quixio/quix-streams/pull/582
* Iceberg sink docs by daniil-quix in https://github.com/quixio/quix-streams/pull/586
* Chore/docs updates by daniil-quix in https://github.com/quixio/quix-streams/pull/577

Dependencies
* Update pydantic-settings requirement from <2.6,>=2.3 to >=2.3,<2.7 by dependabot in https://github.com/quixio/quix-streams/pull/583
* Bump testcontainers from 4.8.1 to 4.8.2 by dependabot in https://github.com/quixio/quix-streams/pull/579


Misc
* Abstract away the state update cache by daniil-quix in https://github.com/quixio/quix-streams/pull/576
* Add Conda release script by gwaramadze in https://github.com/quixio/quix-streams/pull/571
* app: Add option to select store backend by quentin-quix in https://github.com/quixio/quix-streams/pull/544
* Refactor WindowedRocksDBPartitionTransaction.get_windows by gwaramadze in https://github.com/quixio/quix-streams/pull/558


New Contributors
* tomas-quix made their first contribution in https://github.com/quixio/quix-streams/pull/555

**Full Changelog**: https://github.com/quixio/quix-streams/compare/v3.0.0...v3.1.0

3.0

app = Application("localhost:9092")
sdf = app.dataframe(topic)
app.run()


:gem: Enhancements :gem:
- Extensive Documentation improvements and additions

:microbe: Bugfixes :microbe:
- Fix issue with handling of Quix Cloud topics where topic was being created with the workspace ID appended twice.
- Overlapping window names now properly print a message saying how to solve it.


**Full Changelog**: https://github.com/quixio/quix-streams/compare/v2.11.1...v3.0.0

Page 1 of 7

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.