Skip to content

Releases: aineko-dev/aineko

0.4.0

05 Mar 16:14
8bdcdae
Compare
Choose a tag to compare

What's Changed

Breaking Changes

We've redesigned the dataset implementation to be more flexible, and decoupled it from the core logic. This will allow for easier integration of new datasets in the future.

Please note the following breaking changes:

  • pipeline.yml: The type field of the dataset section should now be the dotted path of the dataset class, rather than the name of the dataset type. For example, aineko.datasets.kafka.KafkaDataset instead of kafka_stream.
  • running nodes in test mode:
    • The setup_test method of the AbstractNode class has been updated to include a dataset_type parameter. This is the same value as the type field in the pipeline.yml file.

    • The output messages of the run_test now return the complete message object, rather than just the message value. This is to allow for easier testing of the message metadata, such as the timestamp and key. If you only want the message value, you can use the message_helper fixture to extract the value from the message object.

      Before and After code examples

      Before:

      def test_mynode():
          """Unit test for MySumNode."""
      
          mynode = MySumNode(
              node_name="MySumNode",
              pipeline_name="test_pipeline",
              test=True
          )
          mynode.setup_test(
              inputs={
                  "test_sequence": [1, 2, 3]
              },  # input a list of elements to be read
              outputs=["test_sum"],  # list of dataset names that are written to
              params={"initial_state": 0, "increment": 1},
          )
          outputs = mynode.run_test()
          assert outputs["test_sum"] == [2, 3, 4]
          assert mynode.state == 4

      After:

      def test_mynode(message_helper):
          """Unit test for MySumNode."""
      
          mynode = MySumNode(
              node_name="MySumNode",
              pipeline_name="test_pipeline",
              test=True
          )
          mynode.setup_test(
              dataset_type="aineko.datasets.kafka.KafkaDataset", # The dataset type to use
              inputs={
                  "test_sequence": [1, 2, 3]
              },  # input a list of elements to be read
              outputs=["test_sum"],  # list of dataset names that are written to
              params={"initial_state": 0, "increment": 1},
          )
          outputs = mynode.run_test()
          assert message_helper(outputs["test_sum"]) == [2, 3, 4]
          assert mynode.state == 4

Full Changelog: 0.3.2...0.4.0

0.3.2

09 Feb 16:56
75bde78
Compare
Choose a tag to compare

What's Changed

  • feat: replace extras with aineko-plugins - BLD-1343 by @Barabazs in #154

Full Changelog: 0.3.1...0.3.2

0.3.1

06 Feb 15:37
e4ef61c
Compare
Choose a tag to compare

What's Changed

Full Changelog: 0.3.0...0.3.1

0.3.0

02 Feb 15:31
75b9139
Compare
Choose a tag to compare

What's Changed

Full Changelog: 0.2.7...0.3.0

0.2.7

22 Dec 17:26
9eb3683
Compare
Choose a tag to compare

What's Changed

Full Changelog: 0.2.6...0.2.7

0.2.6

14 Dec 01:00
0d616ad
Compare
Choose a tag to compare

What's Changed

Full Changelog: 0.2.5...0.2.6

0.2.5

30 Nov 16:20
2b512f3
Compare
Choose a tag to compare

What's Changed

Full Changelog: 0.2.4...0.2.5

0.2.4

18 Nov 00:22
b7038dd
Compare
Choose a tag to compare

What's Changed

Full Changelog: 0.2.3...0.2.4

0.2.3

13 Nov 03:22
4ddf542
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 0.2.2...0.2.3

0.2.2

05 Nov 21:43
842c372
Compare
Choose a tag to compare

What's Changed

Full Changelog: 0.2.1...0.2.2