diff --git a/sdk/schemaregistry/azure-schemaregistry-avroserializer/CHANGELOG.md b/sdk/schemaregistry/azure-schemaregistry-avroserializer/CHANGELOG.md index a24aa8e035c3..7245b36e68ab 100644 --- a/sdk/schemaregistry/azure-schemaregistry-avroserializer/CHANGELOG.md +++ b/sdk/schemaregistry/azure-schemaregistry-avroserializer/CHANGELOG.md @@ -4,19 +4,20 @@ ### Features Added -- `auto_register_schemas` keyword argument has been added to `SchemaRegistryAvroSerializer`, which will allow for automatically registering schemas passed in to the `serialize`. -- `value` parameter in `serialize` on `SchemaRegistryAvroSerializer` takes type `Mapping` rather than `Dict`. +- `auto_register_schemas` keyword argument has been added to `AvroSerializer`, which will allow for automatically registering schemas passed in to the `serialize`. +- `value` parameter in `serialize` on `AvroSerializer` takes type `Mapping` rather than `Dict`. ### Breaking Changes -- `schema_registry` parameter in the `SchemaRegistryAvroSerializer` constructor has been renamed `client`. -- `schema_group` parameter in the `SchemaRegistryAvroSerializer` constructor has been renamed `group_name`. -- `data` parameter in the `serialize` and `deserialize` methods on `SchemaRegistryAvroSerializer` has been renamed `value`. -- `schema` parameter in the `serialize` method on `SchemaRegistryAvroSerializer` no longer accepts argument of type `bytes`. -- `SchemaRegistryAvroSerializer` constructor no longer takes in the `codec` keyword argument. +- `SchemaRegistryAvroSerializer` has been renamed `AvroSerializer`. +- `schema_registry` parameter in the `AvroSerializer` constructor has been renamed `client`. +- `schema_group` parameter in the `AvroSerializer` constructor has been renamed `group_name`. +- `data` parameter in the `serialize` and `deserialize` methods on `AvroSerializer` has been renamed `value`. +- `schema` parameter in the `serialize` method on `AvroSerializer` no longer accepts argument of type `bytes`. +- `AvroSerializer` constructor no longer takes in the `codec` keyword argument. - The following positional arguments are now required keyword arguments: - - `client` and `group_name` in `SchemaRegistryAvroSerializer` constructor - - `schema` in `serialize` on `SchemaRegistryAvroSerializer` + - `client` and `group_name` in `AvroSerializer` constructor + - `schema` in `serialize` on `AvroSerializer` ### Bugs Fixed diff --git a/sdk/schemaregistry/azure-schemaregistry-avroserializer/azure/schemaregistry/serializer/avroserializer/__init__.py b/sdk/schemaregistry/azure-schemaregistry-avroserializer/azure/schemaregistry/serializer/avroserializer/__init__.py index fe999769d03e..c9a4c0074933 100644 --- a/sdk/schemaregistry/azure-schemaregistry-avroserializer/azure/schemaregistry/serializer/avroserializer/__init__.py +++ b/sdk/schemaregistry/azure-schemaregistry-avroserializer/azure/schemaregistry/serializer/avroserializer/__init__.py @@ -27,8 +27,8 @@ __version__ = VERSION -from ._schema_registry_avro_serializer import SchemaRegistryAvroSerializer +from ._schema_registry_avro_serializer import AvroSerializer __all__ = [ - "SchemaRegistryAvroSerializer" + "AvroSerializer" ] diff --git a/sdk/schemaregistry/azure-schemaregistry-avroserializer/azure/schemaregistry/serializer/avroserializer/_schema_registry_avro_serializer.py b/sdk/schemaregistry/azure-schemaregistry-avroserializer/azure/schemaregistry/serializer/avroserializer/_schema_registry_avro_serializer.py index f316fa9d1f07..cbd6c1aefede 100644 --- a/sdk/schemaregistry/azure-schemaregistry-avroserializer/azure/schemaregistry/serializer/avroserializer/_schema_registry_avro_serializer.py +++ b/sdk/schemaregistry/azure-schemaregistry-avroserializer/azure/schemaregistry/serializer/avroserializer/_schema_registry_avro_serializer.py @@ -35,9 +35,9 @@ from ._avro_serializer import AvroObjectSerializer -class SchemaRegistryAvroSerializer(object): +class AvroSerializer(object): """ - SchemaRegistryAvroSerializer provides the ability to serialize and deserialize data according + AvroSerializer provides the ability to serialize and deserialize data according to the given avro schema. It would automatically register, get and cache the schema. :keyword client: Required. The schema registry client diff --git a/sdk/schemaregistry/azure-schemaregistry-avroserializer/samples/avro_serializer.py b/sdk/schemaregistry/azure-schemaregistry-avroserializer/samples/avro_serializer.py index a31e4a7b88ee..b93ebd71d450 100644 --- a/sdk/schemaregistry/azure-schemaregistry-avroserializer/samples/avro_serializer.py +++ b/sdk/schemaregistry/azure-schemaregistry-avroserializer/samples/avro_serializer.py @@ -27,7 +27,7 @@ from azure.identity import ClientSecretCredential from azure.schemaregistry import SchemaRegistryClient -from azure.schemaregistry.serializer.avroserializer import SchemaRegistryAvroSerializer +from azure.schemaregistry.serializer.avroserializer import AvroSerializer TENANT_ID=os.environ['AZURE_TENANT_ID'] CLIENT_ID=os.environ['AZURE_CLIENT_ID'] @@ -80,7 +80,7 @@ def deserialize(serializer, bytes_payload): if __name__ == '__main__': schema_registry = SchemaRegistryClient(endpoint=SCHEMAREGISTRY_FULLY_QUALIFIED_NAMESPACE, credential=token_credential) - serializer = SchemaRegistryAvroSerializer(client=schema_registry, group_name=GROUP_NAME, auto_register_schemas=True) + serializer = AvroSerializer(client=schema_registry, group_name=GROUP_NAME, auto_register_schemas=True) bytes_data_ben, bytes_data_alice = serialize(serializer) dict_data_ben = deserialize(serializer, bytes_data_ben) dict_data_alice = deserialize(serializer, bytes_data_alice) diff --git a/sdk/schemaregistry/azure-schemaregistry-avroserializer/samples/eventhub_receive_integration.py b/sdk/schemaregistry/azure-schemaregistry-avroserializer/samples/eventhub_receive_integration.py index 3cbf949adf00..5bcc2c803337 100644 --- a/sdk/schemaregistry/azure-schemaregistry-avroserializer/samples/eventhub_receive_integration.py +++ b/sdk/schemaregistry/azure-schemaregistry-avroserializer/samples/eventhub_receive_integration.py @@ -6,7 +6,7 @@ # -------------------------------------------------------------------------------------------- """ -Examples to show receiving events from EventHub with SchemaRegistryAvroSerializer integrated for data deserialization. +Examples to show receiving events from EventHub with AvroSerializer integrated for data deserialization. """ # pylint: disable=C0111 @@ -14,7 +14,7 @@ from azure.eventhub import EventHubConsumerClient from azure.identity import DefaultAzureCredential from azure.schemaregistry import SchemaRegistryClient -from azure.schemaregistry.serializer.avroserializer import SchemaRegistryAvroSerializer +from azure.schemaregistry.serializer.avroserializer import AvroSerializer EVENTHUB_CONNECTION_STR = os.environ['EVENT_HUB_CONN_STR'] EVENTHUB_NAME = os.environ['EVENT_HUB_NAME'] @@ -44,9 +44,9 @@ def on_event(partition_context, event): ) -# create a SchemaRegistryAvroSerializer instance +# create a AvroSerializer instance # TODO: after 'azure-schemaregistry==1.0.0b3' is released, update 'endpoint' to 'fully_qualified_namespace' -avro_serializer = SchemaRegistryAvroSerializer( +avro_serializer = AvroSerializer( client=SchemaRegistryClient( endpoint=SCHEMAREGISTRY_FULLY_QUALIFIED_NAMESPACE, credential=DefaultAzureCredential() diff --git a/sdk/schemaregistry/azure-schemaregistry-avroserializer/samples/eventhub_send_integration.py b/sdk/schemaregistry/azure-schemaregistry-avroserializer/samples/eventhub_send_integration.py index d184e87d89a8..2821272efe29 100644 --- a/sdk/schemaregistry/azure-schemaregistry-avroserializer/samples/eventhub_send_integration.py +++ b/sdk/schemaregistry/azure-schemaregistry-avroserializer/samples/eventhub_send_integration.py @@ -6,7 +6,7 @@ # -------------------------------------------------------------------------------------------- """ -Examples to show sending event to EventHub with SchemaRegistryAvroSerializer integrated for data serialization. +Examples to show sending event to EventHub with AvroSerializer integrated for data serialization. """ # pylint: disable=C0111 @@ -15,7 +15,7 @@ from azure.eventhub import EventHubProducerClient, EventData from azure.identity import DefaultAzureCredential from azure.schemaregistry import SchemaRegistryClient -from azure.schemaregistry.serializer.avroserializer import SchemaRegistryAvroSerializer +from azure.schemaregistry.serializer.avroserializer import AvroSerializer EVENTHUB_CONNECTION_STR = os.environ['EVENT_HUB_CONN_STR'] EVENTHUB_NAME = os.environ['EVENT_HUB_NAME'] @@ -58,9 +58,9 @@ def send_event_data_batch(producer, serializer): ) -# create a SchemaRegistryAvroSerializer instance +# create a AvroSerializer instance # TODO: after 'azure-schemaregistry==1.0.0b3' is released, update 'endpoint' to 'fully_qualified_namespace' -avro_serializer = SchemaRegistryAvroSerializer( +avro_serializer = AvroSerializer( client=SchemaRegistryClient( endpoint=SCHEMAREGISTRY_FULLY_QUALIFIED_NAMESPACE, credential=DefaultAzureCredential() diff --git a/sdk/schemaregistry/azure-schemaregistry-avroserializer/tests/recordings/test_avro_serializer.test_basic_sr_avro_serializer_with_auto_register_schemas.yaml b/sdk/schemaregistry/azure-schemaregistry-avroserializer/tests/recordings/test_avro_serializer.test_basic_sr_avro_serializer_with_auto_register_schemas.yaml index 90dc88aa96ec..cfd2920100e2 100644 --- a/sdk/schemaregistry/azure-schemaregistry-avroserializer/tests/recordings/test_avro_serializer.test_basic_sr_avro_serializer_with_auto_register_schemas.yaml +++ b/sdk/schemaregistry/azure-schemaregistry-avroserializer/tests/recordings/test_avro_serializer.test_basic_sr_avro_serializer_with_auto_register_schemas.yaml @@ -28,7 +28,7 @@ interactions: content-type: - application/json date: - - Tue, 28 Sep 2021 22:27:25 GMT + - Thu, 30 Sep 2021 02:05:53 GMT location: - https://swathip-test-eventhubs.servicebus.windows.net:443/$schemagroups/fakegroup/schemas/example.avro.User/versions/1?api-version=2017-04 server: diff --git a/sdk/schemaregistry/azure-schemaregistry-avroserializer/tests/recordings/test_avro_serializer.test_basic_sr_avro_serializer_without_auto_register_schemas.yaml b/sdk/schemaregistry/azure-schemaregistry-avroserializer/tests/recordings/test_avro_serializer.test_basic_sr_avro_serializer_without_auto_register_schemas.yaml index 7dce4b62fbfe..0feb5392eba4 100644 --- a/sdk/schemaregistry/azure-schemaregistry-avroserializer/tests/recordings/test_avro_serializer.test_basic_sr_avro_serializer_without_auto_register_schemas.yaml +++ b/sdk/schemaregistry/azure-schemaregistry-avroserializer/tests/recordings/test_avro_serializer.test_basic_sr_avro_serializer_without_auto_register_schemas.yaml @@ -28,7 +28,7 @@ interactions: content-type: - application/json date: - - Tue, 28 Sep 2021 22:27:26 GMT + - Thu, 30 Sep 2021 02:05:54 GMT location: - https://swathip-test-eventhubs.servicebus.windows.net:443/$schemagroups/fakegroup/schemas/example.avro.User/versions/1?api-version=2017-04 server: diff --git a/sdk/schemaregistry/azure-schemaregistry-avroserializer/tests/test_avro_serializer.py b/sdk/schemaregistry/azure-schemaregistry-avroserializer/tests/test_avro_serializer.py index bf2bca41907f..f392d8431917 100644 --- a/sdk/schemaregistry/azure-schemaregistry-avroserializer/tests/test_avro_serializer.py +++ b/sdk/schemaregistry/azure-schemaregistry-avroserializer/tests/test_avro_serializer.py @@ -25,7 +25,7 @@ from io import BytesIO from azure.schemaregistry import SchemaRegistryClient -from azure.schemaregistry.serializer.avroserializer import SchemaRegistryAvroSerializer +from azure.schemaregistry.serializer.avroserializer import AvroSerializer from azure.schemaregistry.serializer.avroserializer._avro_serializer import AvroObjectSerializer from azure.identity import ClientSecretCredential from azure.core.exceptions import ClientAuthenticationError, ServiceRequestError, HttpResponseError @@ -34,7 +34,7 @@ SchemaRegistryPowerShellPreparer = functools.partial(PowerShellPreparer, "schemaregistry", schemaregistry_fully_qualified_namespace="fake_resource.servicebus.windows.net/", schemaregistry_group="fakegroup") -class SchemaRegistryAvroSerializerTests(AzureTestCase): +class AvroSerializerTests(AzureTestCase): def test_raw_avro_serializer(self): schema_str = """{"namespace":"example.avro","type":"record","name":"User","fields":[{"name":"name","type":"string"},{"name":"favorite_number","type":["int","null"]},{"name":"favorite_color","type":["string","null"]}]}""" @@ -78,7 +78,7 @@ def test_raw_avro_serializer_negative(self): def test_basic_sr_avro_serializer_with_auto_register_schemas(self, schemaregistry_fully_qualified_namespace, schemaregistry_group, **kwargs): # TODO: AFTER RELEASING azure-schemaregistry=1.0.0b3, UPDATE 'endpoint' to 'fully_qualified_namespace' sr_client = self.create_basic_client(SchemaRegistryClient, endpoint=schemaregistry_fully_qualified_namespace) - sr_avro_serializer = SchemaRegistryAvroSerializer(client=sr_client, group_name=schemaregistry_group, auto_register_schemas=True) + sr_avro_serializer = AvroSerializer(client=sr_client, group_name=schemaregistry_group, auto_register_schemas=True) schema_str = """{"namespace":"example.avro","type":"record","name":"User","fields":[{"name":"name","type":"string"},{"name":"favorite_number","type":["int","null"]},{"name":"favorite_color","type":["string","null"]}]}""" schema = avro.schema.parse(schema_str) @@ -103,7 +103,7 @@ def test_basic_sr_avro_serializer_with_auto_register_schemas(self, schemaregistr def test_basic_sr_avro_serializer_without_auto_register_schemas(self, schemaregistry_fully_qualified_namespace, schemaregistry_group, **kwargs): # TODO: AFTER RELEASING azure-schemaregistry=1.0.0b3, UPDATE 'endpoint' to 'fully_qualified_namespace' sr_client = self.create_basic_client(SchemaRegistryClient, endpoint=schemaregistry_fully_qualified_namespace) - sr_avro_serializer = SchemaRegistryAvroSerializer(client=sr_client, group_name=schemaregistry_group) + sr_avro_serializer = AvroSerializer(client=sr_client, group_name=schemaregistry_group) schema_str = """{"namespace":"example.avro","type":"record","name":"User","fields":[{"name":"name","type":"string"},{"name":"favorite_number","type":["int","null"]},{"name":"favorite_color","type":["string","null"]}]}""" schema = avro.schema.parse(schema_str) diff --git a/sdk/schemaregistry/azure-schemaregistry/azure/schemaregistry/serializer/__init__.py b/sdk/schemaregistry/azure-schemaregistry/azure/schemaregistry/serializer/__init__.py index c36aaed14908..80f86cb969ec 100644 --- a/sdk/schemaregistry/azure-schemaregistry/azure/schemaregistry/serializer/__init__.py +++ b/sdk/schemaregistry/azure-schemaregistry/azure/schemaregistry/serializer/__init__.py @@ -23,3 +23,4 @@ # IN THE SOFTWARE. # # -------------------------------------------------------------------------- +__path__ = __import__("pkgutil").extend_path(__path__, __name__) # type: ignore