You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+11-2Lines changed: 11 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -2,10 +2,19 @@
2
2
3
3
All notable changes to this project will be documented in this file.
4
4
5
-
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
-
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
5
+
This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
6
## [Unreleased]
8
7
8
+
### Added
9
+
- class `Behavior`, a superclass of all behavior classes
10
+
- class `ExactlyOnceBehavior` indicating we want to create a `CommonBehavior` that results in each window prodcucing exactly one output (shifted in time by an optional `shift` parameter)
11
+
- function `exactly_once_behavior` creating an instance of `ExactlyOnceBehavior`
12
+
13
+
### Changed
14
+
-**BREAKING**: `WindowBehavior` is now called `CommonBehavior`, as it can be also used with interval joins
15
+
-**BREAKING**: `window_behavior` is now called `common_behavior`, as it can be also used with interval joins
16
+
- Deprecating parameter `keep_queries` in `pw.io.http.rest_connector`. Now `delete_completed_queries` with an opposite meaning should be used instead. The default is still `delete_completed_queries=True` (equivalent to `keep_queries=False`) but it will soon be required to be set explicitly.
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+2Lines changed: 2 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -26,6 +26,8 @@ After a pull request is opened it will be reviewed, and merged after
26
26
passing continuous integration tests and being accepted by a project or
27
27
sub-system maintainer.
28
28
29
+
We maintain a [Changelog](https://github.com/pathwaycom/pathway/blob/main/CHANGELOG.md) where all notable changes to this project are documented. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
30
+
29
31
We ask that developers sign our [contributor license
30
32
agreement](https://cla-assistant.io/pathwaycom/pathway). The
31
33
process of signing the CLA is automated, and you'll be prompted with instructions
[Pathway](https://pathway.com) is an open framework for high-throughput and low-latency real-time data processing. It is used to create Python code which seamlessly combines batch processing, streaming, and real-time API's for LLM apps. Pathway's distributed runtime (🦀-🐍) provides fresh results of your data pipelines whenever new inputs and requests are received.
26
37
@@ -37,7 +48,10 @@ In Pathway, data is represented in the form of Tables. Live data streams are als
37
48
38
49
For any questions, you will find the community and team behind the project [on Discord](https://discord.com/invite/pathway).
39
50
40
-
## Installation
51
+
## Getting started<aid="getting-started"></a>
52
+
53
+
54
+
### Installation<aid="installation"></a>
41
55
42
56
Pathway requires Python 3.10 or above.
43
57
@@ -49,7 +63,7 @@ $ pip install -U pathway
49
63
50
64
⚠️ Pathway is available on MacOS and Linux. Users of other systems should run Pathway on a Virtual Machine.
Pathway comes with a monitoring dashboard that allows you to keep track of the number of messages sent by each connector and the latency of the system. The dashboard also includes log messages.
105
130
@@ -109,18 +134,18 @@ This dashboard is enabled by default; you can disable it by passing `monitoring_
109
134
110
135
In addition to Pathway's built-in dashboard, you can [use Prometheus](https://pathway.com/developers/tutorials/prometheus-monitoring) to monitor your Pathway application.
111
136
112
-
## Resources
137
+
## Resources<aid="resources"></a>
113
138
114
-
See also: **[Pathway Developer Resources](https://pathway.com/developers/)** webpage (including API Docs).
139
+
See also: **📖 [Pathway Documentation](https://pathway.com/developers/)** webpage (including API Docs).
115
140
116
-
### Videos about Pathway
141
+
### Videos about Pathway<aid="videos-about-pathway"></a>
117
142
[▶️ Building an LLM Application without a vector database](https://www.youtube.com/watch?v=kcrJSk00duw) - by [Jan Chorowski](https://scholar.google.com/citations?user=Yc94070AAAAJ) (7min 56s)
118
143
119
144
[▶️ Linear regression on a Kafka Stream](https://vimeo.com/805069039) - by [Richard Pelgrim](https://twitter.com/richardpelgrim) (7min 53s)
120
145
121
146
[▶️ Introduction to reactive data processing](https://pathway.com/developers/user-guide/introduction/welcome) - by [Adrian Kosowski](https://scholar.google.com/citations?user=om8De_0AAAAJ) (27min 54s)
122
147
123
-
### Guides
148
+
### Guides<aid="guides"></a>
124
149
-[Core concepts of Pathway](https://pathway.com/developers/user-guide/introduction/key-concepts/)
Manuls (aka Pallas's Cats) [are creatures with fascinating habits](https://www.youtube.com/watch?v=rlSTBvViflc). As a tribute to them, we usually read `pw`, one of the most frequent tokens in Pathway code, as: `"paw"`.
Pathway is made to outperform state-of-the-art technologies designed for streaming and batch data processing tasks, including: Flink, Spark, and Kafka Streaming. It also makes it possible to implement a lot of algorithms/UDF's in streaming mode which are not readily supported by other streaming frameworks (especially: temporal joins, iterative graph algorithms, machine learning routines).
172
197
@@ -176,29 +201,39 @@ If you are curious, here are [some benchmarks to play with](https://github.com/p
176
201
177
202
If you try your own benchmarks, please don't hesitate to let us know. We investigate situations in which Pathway is underperforming on par with bugs (i.e., to our knowledge, they shouldn't happen...).
178
203
179
-
## Coming soon
204
+
## Coming soon<aid="coming-soon"></a>
180
205
181
-
Pathway continues to evolve and gain new capabilities. Here are some exciting new features that we plan to incorporate in the near future:
206
+
Here are some features we plan to incorporate in the near future:
182
207
183
208
- Enhanced monitoring, observability, and data drift detection (integrates with Grafana visualization and other dashboarding tools).
184
209
- New connectors: interoperability with Delta Lake and Snowflake data sources.
185
210
- Easier connection setup for MongoDB.
186
211
- More performant garbage collection.
187
212
188
-
Stay up to date with the latest developments and news surrounding Pathway on [our blog](https://pathway.com/blog/), or [subscribe to our newsletter].
189
213
190
214
191
-
## Dependencies
215
+
## Dependencies<aid="dependencies"></a>
192
216
193
217
Pathway is made to run in a "clean" Linux/MacOS + Python environment. When installing the pathway package with `pip` (from a wheel), you are likely to encounter a small number of Python package dependencies, such as sqlglot (used in the SQL API) and python-sat (useful for resolving dependencies during compilation). All necessary Rust crates are pre-built; the Rust compiler is not required to install Pathway, unless building from sources. A modified version of Timely/Differential Dataflow (which provides a dataflow assembly layer) is part of this repo.
194
218
195
-
## License
219
+
## License<aid="license"></a>
196
220
197
221
Pathway is distributed on a [BSL 1.1 License](https://github.com/pathwaycom/pathway/blob/main/LICENSE.txt) which allows for unlimited non-commercial use, as well as use of the Pathway package [for most commercial purposes](https://pathway.com/license/), free of charge. Code in this repository automatically converts to Open Source (Apache 2.0 License) after 4 years. Some [public repos](https://github.com/pathwaycom) which are complementary to this one (examples, libraries, connectors, etc.) are licensed as Open Source, under the MIT license.
If you develop a library or connector which you would like to integrate with this repo, we suggest releasing it first as a separate repo on a MIT/Apache 2.0 license.
203
227
204
228
For all concerns regarding core Pathway functionalities, Issues are encouraged. For further information, don't hesitate to engage with Pathway's [Discord community](https://discord.gg/pathway).
229
+
230
+
## Get Help<aid="get-help"></a>
231
+
232
+
If you have any questions, issues, or just want to chat about Pathway, we're here to help! Feel free to:
233
+
- Check out the [documentation](https://pathway.com/developers/) for detailed information.
234
+
-[Open an issue on GitHub](https://github.com/pathwaycom/pathway/issues) if you encounter any bugs or have feature requests.
235
+
- Join us on [Discord](https://discord.com/invite/pathway) to connect with other users and get support.
236
+
- Reach out to us via email at [contact@pathway.com](mailto:contact@pathway.com).
237
+
238
+
Our team is always happy to help you and ensure that you get the most out of Pathway.
239
+
If you would like to better understand how best to use Pathway in your project, please don't hesitate to reach out to us.
0 commit comments