Skip to content

Remove join and subscribe & Release 1.0.0 #292

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Apr 17, 2023

Conversation

DifferentialOrange
Copy link
Member

@DifferentialOrange DifferentialOrange commented Apr 17, 2023

api: remove join and subscribe

This is a breaking change.

Current join and subscribe implementations are rather useless. Connector does not provide any API to process incoming replication requests. The only supported scenario is to "connect as replica, skip everything that has been sent through replication, close on error".

Current Tarantool team product strategy is to develop CDC features, including replication support in language connectors, as Enterprise edition products [1]. Since we don't plan to provide proper join and subscribe implementation in the open-source connector in the future, we decide to drop current half-baked implementation to not confuse new users.

  1. Add replication support go-tarantool#203

Release 1.0.0

Overview

This release introduces several minor behavior changes
to make API more consistent.

Starting from this release, connector no longer depends on pandas.

Breaking changes

  • Allow only named on_push and on_push_ctx for insert and replace.
  • tarantool.Datetime __repr__ has been changed.
  • tarantool.Datetime input arguments are validated with datetime.datetime rules.
  • tarantool.Datetime is no longer expected to throw pandas.Timestamp
    exceptions. datetime.datetime exceptions will be thrown instead of them.
  • Drop the support of __eq__ operator of tarantool.Datetime for pandas.Timestamp.
  • Remove join and subscribe connection methods.

Changes

  • Migrate to built-in Warning instead of a custom one.
  • Migrate to built-in RecursionError instead of a custom one.
  • Collect full exception traceback.
  • Package no longer depends on pandas (Make pandas dependency optional #290).

Infrastructure

  • Lint the code with pylint, flake8 and codespell.

This is a breaking change.

Current join and subscribe implementations are rather useless. Connector
does not provide any API to process incoming replication requests. The
only supported scenario is to "connect as replica, skip everything that
has been sent through replication, close on error".

Current Tarantool team product strategy is to develop CDC features,
including replication support in language connectors, as Enterprise
edition products [1]. Since we don't plan to provide proper join and
subscribe implementation in the open-source connector in the future, we
decide to drop current half-baked implementation to not confuse new
users.

1. tarantool/go-tarantool#203
Overview

  This release introduces several minor behavior changes
  to make API more consistent.

  Starting from this release, connector no longer depends on `pandas`.

Breaking changes

  - Allow only named `on_push` and `on_push_ctx` for `insert` and
    `replace`.
  - `tarantool.Datetime` `__repr__` has been changed.
  - `tarantool.Datetime` input arguments are validated with
    `datetime.datetime` rules.
  - `tarantool.Datetime` is no longer expected to throw
    `pandas.Timestamp` exceptions. `datetime.datetime` exceptions will
    be thrown instead of them.
  - Drop the support of `__eq__` operator of `tarantool.Datetime` for
    `pandas.Timestamp`.
  - Remove `join` and `subscribe` connection methods.

Changes

  - Migrate to built-in `Warning` instead of a custom one.
  - Migrate to built-in `RecursionError` instead of a custom one.
  - Collect full exception traceback.
  - Package no longer depends on `pandas` (#290).

Infrastructure

  - Lint the code with `pylint`, `flake8` and `codespell`.
@DifferentialOrange DifferentialOrange force-pushed the DifferentialOrange/remove-replication branch from 1a8b637 to 7a42b5b Compare April 17, 2023 09:57
@DifferentialOrange DifferentialOrange changed the title api: remove join and subscribe Remove join and subscribe & Release 1.0.0 Apr 17, 2023
Copy link

@LeonidVas LeonidVas left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi! Thank you for the patchset.
LGTM!

@DifferentialOrange DifferentialOrange merged commit f0f3054 into master Apr 17, 2023
@DifferentialOrange DifferentialOrange deleted the DifferentialOrange/remove-replication branch April 17, 2023 10:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants