# packages

pkgId: ba29ae93b3c9b89f4e192186358d24e014516758a0afda0d414f09ca94d90254
name: python-azure-eventhub-checkpointstoreblob
arch: src
version: 1.1.4
epoch: 0
release: 1
summary: Microsoft Azure Event Hubs checkpointer implementation with Blob Storage Client Library for Python
rpm_license: MIT License
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-da0310f4-c8dc-4150-bd49-0ab1a6d74001
checksum_type: sha256
description:
  Azure EventHubs Checkpoint Store is used for storing checkpoints while processing events from Azure Event Hubs.
  This Checkpoint Store package works as a plug-in package to `EventHubConsumerClient`. It uses Azure Storage Blob as the persistent store for maintaining checkpoints and partition ownership information.

  Please note that this is a sync library, for async version of the Azure EventHubs Checkpoint Store client library, please refer to [azure-eventhub-checkpointstoreblob-aio](https://github.com/Azure/azure-sdk-for-python/blob/master/sdk/eventhub/azure-eventhub-checkpointstoreblob-aio).

  [Source code](https://github.com/Azure/azure-sdk-for-python/blob/master/sdk/eventhub/azure-eventhub-checkpointstoreblob/) | [Package (PyPi)](https://pypi.org/project/azure-eventhub-checkpointstoreblob) | [API reference documentation](https://azuresdkdocs.blob.core.windows.net/$web/python/azure-eventhub/latest/azure.eventhub.html#azure.eventhub.CheckpointStore) | [Azure Eventhubs documentation](https://docs.microsoft.com/azure/event-hubs/) | [Azure Storage documentation](https://docs.microsoft.com/azure/storage/)





  - Python2.7, Python 3.6 or later.
  - **Microsoft Azure Subscription:**  To use Azure services, including Azure Event Hubs, you'll need a subscription. If you do not have an existing Azure account, you may sign up for a free trial or use your MSDN subscriber benefits when you [create an account](https://azure.microsoft.com/).

  - **Event Hubs namespace with an Event Hub:** To interact with Azure Event Hubs, you'll also need to have a namespace and Event Hub  available.  If you are not familiar with creating Azure resources, you may wish to follow the step-by-step guide for [creating an Event Hub using the Azure portal](https://docs.microsoft.com/azure/event-hubs/event-hubs-create).  There, you can also find detailed instructions for using the Azure CLI, Azure PowerShell, or Azure Resource Manager (ARM) templates to create an Event Hub.

  - **Azure Storage Account:** You'll need to have an Azure Storage Account and create a Azure Blob Storage Block Container to store the checkpoint data with blobs. You may follow the guide [creating an Azure Block Blob Storage Account](https://docs.microsoft.com/azure/storage/blobs/storage-blob-create-account-block-blob).



  ```
  $ pip install azure-eventhub-checkpointstoreblob
  ```





  Checkpointing is a process by which readers mark or commit their position within a partition event sequence.
  Checkpointing is the responsibility of the consumer and occurs on a per-partition basis within a consumer group.
  This responsibility means that for each consumer group, each partition reader must keep track of its current position
  in the event stream, and can inform the service when it considers the data stream complete. If a reader disconnects from
  a partition, when it reconnects it begins reading at the checkpoint that was previously submitted by the last reader of
  that partition in that consumer group. When the reader connects, it passes the offset to the event hub to specify the
  location at which to start reading. In this way, you can use checkpointing to both mark events as "complete" by
  downstream applications, and to provide resiliency if a failover between readers running on different machines occurs.
  It is possible to return to older data by specifying a lower offset from this checkpointing process. Through this
  mechanism, checkpointing enables both failover resiliency and event stream replay.


  Both offset & sequence number refer to the position of an event within a partition. You can think of them as a
  client-side cursor. The offset is a byte numbering of the event. The offset/sequence number enables an event consumer
  (reader) to specify a point in the event stream from which they want to begin reading events. You can specify a
  timestamp such that you receive events enqueued only after the given timestamp. Consumers are responsible for
  storing their own offset values outside of the Event Hubs service. Within a partition, each event includes an offset,
  sequence number and the timestamp of when it was enqueued.


  - [Create an Azure EventHubs `EventHubConsumerClient`](#create-an-eventhubconsumerclient)
  - [Consume events using a `BlobCheckpointStore`](#consume-events-using-a-blobcheckpointstore-to-do-checkpoint)


  The easiest way to create a `EventHubConsumerClient` is to use a connection string.
  ```python
  from azure.eventhub import EventHubConsumerClient
  eventhub_client = EventHubConsumerClient.from_connection_string("my_eventhub_namespace_connection_string", "my_consumer_group", eventhub_name="my_eventhub")
  ```
  For other ways of creating a `EventHubConsumerClient`, refer to [EventHubs library](https://github.com/Azure/azure-sdk-for-python/blob/master/sdk/eventhub/azure-eventhub) for more details.


  ```python

  from azure.eventhub import EventHubConsumerClient
  from azure.eventhub.extensions.checkpointstoreblob import BlobCheckpointStore

  connection_str = '<< CONNECTION STRING FOR THE EVENT HUBS NAMESPACE >>'
  consumer_group = '<< CONSUMER GROUP >>'
  eventhub_name = '<< NAME OF THE EVENT HUB >>'
  storage_connection_str = '<< CONNECTION STRING OF THE STORAGE >>'
  container_name = '<< STORAGE CONTAINER NAME>>'


  def on_event(partition_context, event):
      
      partition_context.update_checkpoint(event)  # Or update_checkpoint every N events for better performance.

  def main():
      checkpoint_store = BlobCheckpointStore.from_connection_string(
          storage_connection_str,
          container_name
      )
      client = EventHubConsumerClient.from_connection_string(
          connection_str,
          consumer_group,
          eventhub_name=eventhub_name,
          checkpoint_store=checkpoint_store,
      )

      with client:
          client.receive(on_event)

  if __name__ == '__main__':
      main()
  ```


  Some environments have different versions of Azure Storage Service API.
  `BlobCheckpointStore` by default uses the Storage Service API version 2019-07-07. To use it against a different
  version, specify `api_version` when you create the `BlobCheckpointStore` object.





  Enabling logging will be helpful to do trouble shooting.



  - Enable `azure.eventhub.extensions.checkpointstoreblob` logger to collect traces from the library.
  - Enable `azure.eventhub` logger to collect traces from the main azure-eventhub library.
  - Enable `azure.eventhub.extensions.checkpointstoreblob._vendor.storage` logger to collect traces from azure storage blob library.
  - Enable `uamqp` logger to collect traces from the underlying uAMQP library.
  - Enable AMQP frame level trace by setting `logging_enable=True` when creating the client.





  Get started with our [EventHubs Checkpoint Store samples](https://github.com/Azure/azure-sdk-for-python/blob/master/sdk/eventhub/azure-eventhub-checkpointstoreblob/samples).

  - [receive_events_using_checkpoint_store.py](https://github.com/Azure/azure-sdk-for-python/blob/master/sdk/eventhub/azure-eventhub-checkpointstoreblob/samples/receive_events_using_checkpoint_store.py) - EventHubConsumerClient with blob checkpoint store example
  - [receive_events_using_checkpoint_store_storage_api_version.py](https://github.com/Azure/azure-sdk-for-python/blob/master/sdk/eventhub/azure-eventhub-checkpointstoreblob/samples/receive_events_using_checkpoint_store_storage_api_version.py) - EventHubConsumerClient with blob checkpoint store and storage version example



  Reference documentation is available [here](https://azuresdkdocs.blob.core.windows.net/$web/python/azure-eventhub/latest/azure.eventhub.html#azure.eventhub.CheckpointStore).



  If you encounter any bugs or have suggestions, please file an issue in the [Issues](https://github.com/Azure/azure-sdk-for-python/issues) section of the project.



  This project welcomes contributions and suggestions.  Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

  When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

  This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).
  For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.

  ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-python/sdk/eventhub/azure-eventhub-checkpointstoreblob/README.png)






  This version and all future versions will require Python 2.7 or Python 3.6+, Python 3.5 is no longer supported.

  **New features**
  - Updated `list_ownership`, `claim_ownership`, `update_checkpoint`, `list_checkpoints` on `BlobCheckpointStore` to support taking `**kwargs`.



  This version will be the last version to officially support Python 3.5, future versions will require Python 2.7 or Python 3.6+.

  **Bug fixes**
  - Updated vendor azure-storage-blob dependency to v12.7.1.
    - Fixed storage blob authentication failure due to request date header too old (#16192).



  **Bug fixes**
  - Fixed a bug that `BlobCheckpointStore.list_ownership` and `BlobCheckpointStore.list_checkpoints` triggering `KeyError` due to reading empty metadata of parent node when working with Data Lake enabled Blob Storage.



  **Bug fixes**
  - Fixed a bug that may gradually slow down retrieving checkpoint data from the storage blob if the storage account "File share soft delete" is enabled. #12836



  **New features**
  - Param `api_version` of `BlobCheckpointStore` now supports older versions of Azure Storage Service API.


  Stable release. No new features or API changes.



  **Breaking changes**

  - Renamed `BlobPartitionManager` to `BlobCheckpointStore`.
  - Constructor of `BlobCheckpointStore` has been updated to take the storage container details directly rather than an instance of `ContainerClient`.
  - A `from_connection_string` constructor has been added for Blob Storage connection strings.
  - Module `blobstoragepm` is now internal, all imports should be directly from `azure.eventhub.extensions.checkpointstoreblob`.
  - `BlobCheckpointStore` now has a `close()` function for shutting down an HTTP connection pool, additionally the object can be used in a context manager to manage the connection.



  **New features**

  - `BlobPartitionManager` that uses Azure Blob Storage Block Blob to store EventProcessor checkpoint data

  ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-python/sdk/eventhub/azure-eventhub-checkpointstoreblob/HISTORY.png)

url:
  https://github.com/Azure/azure-sdk-for-python/tree/master/sdk/eventhub/azure-eventhub-checkpointstoreblob

location_href:
  00010620-python-azure-eventhub-checkpointstoreblob/python-azure-eventhub-checkpointstoreblob-1.1.4-1.src.rpm


pkgId: 4ae9f6fc539050bc1aa6b76d5221bc1c0bd70ab047549a2c31866fbeb183e6d0
name: python-azure-eventhub-checkpointstoreblob-help
arch: noarch
version: 1.1.4
epoch: 0
release: 1
summary: Development documents and examples for azure-eventhub-checkpointstoreblob
rpm_license: MIT License
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-da0310f4-c8dc-4150-bd49-0ab1a6d74001
rpm_sourcerpm: python-azure-eventhub-checkpointstoreblob-1.1.4-1.src.rpm
checksum_type: sha256
description:
  Azure EventHubs Checkpoint Store is used for storing checkpoints while processing events from Azure Event Hubs.
  This Checkpoint Store package works as a plug-in package to `EventHubConsumerClient`. It uses Azure Storage Blob as the persistent store for maintaining checkpoints and partition ownership information.

  Please note that this is a sync library, for async version of the Azure EventHubs Checkpoint Store client library, please refer to [azure-eventhub-checkpointstoreblob-aio](https://github.com/Azure/azure-sdk-for-python/blob/master/sdk/eventhub/azure-eventhub-checkpointstoreblob-aio).

  [Source code](https://github.com/Azure/azure-sdk-for-python/blob/master/sdk/eventhub/azure-eventhub-checkpointstoreblob/) | [Package (PyPi)](https://pypi.org/project/azure-eventhub-checkpointstoreblob) | [API reference documentation](https://azuresdkdocs.blob.core.windows.net/$web/python/azure-eventhub/latest/azure.eventhub.html#azure.eventhub.CheckpointStore) | [Azure Eventhubs documentation](https://docs.microsoft.com/azure/event-hubs/) | [Azure Storage documentation](https://docs.microsoft.com/azure/storage/)





  - Python2.7, Python 3.6 or later.
  - **Microsoft Azure Subscription:**  To use Azure services, including Azure Event Hubs, you'll need a subscription. If you do not have an existing Azure account, you may sign up for a free trial or use your MSDN subscriber benefits when you [create an account](https://azure.microsoft.com/).

  - **Event Hubs namespace with an Event Hub:** To interact with Azure Event Hubs, you'll also need to have a namespace and Event Hub  available.  If you are not familiar with creating Azure resources, you may wish to follow the step-by-step guide for [creating an Event Hub using the Azure portal](https://docs.microsoft.com/azure/event-hubs/event-hubs-create).  There, you can also find detailed instructions for using the Azure CLI, Azure PowerShell, or Azure Resource Manager (ARM) templates to create an Event Hub.

  - **Azure Storage Account:** You'll need to have an Azure Storage Account and create a Azure Blob Storage Block Container to store the checkpoint data with blobs. You may follow the guide [creating an Azure Block Blob Storage Account](https://docs.microsoft.com/azure/storage/blobs/storage-blob-create-account-block-blob).



  ```
  $ pip install azure-eventhub-checkpointstoreblob
  ```





  Checkpointing is a process by which readers mark or commit their position within a partition event sequence.
  Checkpointing is the responsibility of the consumer and occurs on a per-partition basis within a consumer group.
  This responsibility means that for each consumer group, each partition reader must keep track of its current position
  in the event stream, and can inform the service when it considers the data stream complete. If a reader disconnects from
  a partition, when it reconnects it begins reading at the checkpoint that was previously submitted by the last reader of
  that partition in that consumer group. When the reader connects, it passes the offset to the event hub to specify the
  location at which to start reading. In this way, you can use checkpointing to both mark events as "complete" by
  downstream applications, and to provide resiliency if a failover between readers running on different machines occurs.
  It is possible to return to older data by specifying a lower offset from this checkpointing process. Through this
  mechanism, checkpointing enables both failover resiliency and event stream replay.


  Both offset & sequence number refer to the position of an event within a partition. You can think of them as a
  client-side cursor. The offset is a byte numbering of the event. The offset/sequence number enables an event consumer
  (reader) to specify a point in the event stream from which they want to begin reading events. You can specify a
  timestamp such that you receive events enqueued only after the given timestamp. Consumers are responsible for
  storing their own offset values outside of the Event Hubs service. Within a partition, each event includes an offset,
  sequence number and the timestamp of when it was enqueued.


  - [Create an Azure EventHubs `EventHubConsumerClient`](#create-an-eventhubconsumerclient)
  - [Consume events using a `BlobCheckpointStore`](#consume-events-using-a-blobcheckpointstore-to-do-checkpoint)


  The easiest way to create a `EventHubConsumerClient` is to use a connection string.
  ```python
  from azure.eventhub import EventHubConsumerClient
  eventhub_client = EventHubConsumerClient.from_connection_string("my_eventhub_namespace_connection_string", "my_consumer_group", eventhub_name="my_eventhub")
  ```
  For other ways of creating a `EventHubConsumerClient`, refer to [EventHubs library](https://github.com/Azure/azure-sdk-for-python/blob/master/sdk/eventhub/azure-eventhub) for more details.


  ```python

  from azure.eventhub import EventHubConsumerClient
  from azure.eventhub.extensions.checkpointstoreblob import BlobCheckpointStore

  connection_str = '<< CONNECTION STRING FOR THE EVENT HUBS NAMESPACE >>'
  consumer_group = '<< CONSUMER GROUP >>'
  eventhub_name = '<< NAME OF THE EVENT HUB >>'
  storage_connection_str = '<< CONNECTION STRING OF THE STORAGE >>'
  container_name = '<< STORAGE CONTAINER NAME>>'


  def on_event(partition_context, event):
      
      partition_context.update_checkpoint(event)  # Or update_checkpoint every N events for better performance.

  def main():
      checkpoint_store = BlobCheckpointStore.from_connection_string(
          storage_connection_str,
          container_name
      )
      client = EventHubConsumerClient.from_connection_string(
          connection_str,
          consumer_group,
          eventhub_name=eventhub_name,
          checkpoint_store=checkpoint_store,
      )

      with client:
          client.receive(on_event)

  if __name__ == '__main__':
      main()
  ```


  Some environments have different versions of Azure Storage Service API.
  `BlobCheckpointStore` by default uses the Storage Service API version 2019-07-07. To use it against a different
  version, specify `api_version` when you create the `BlobCheckpointStore` object.





  Enabling logging will be helpful to do trouble shooting.



  - Enable `azure.eventhub.extensions.checkpointstoreblob` logger to collect traces from the library.
  - Enable `azure.eventhub` logger to collect traces from the main azure-eventhub library.
  - Enable `azure.eventhub.extensions.checkpointstoreblob._vendor.storage` logger to collect traces from azure storage blob library.
  - Enable `uamqp` logger to collect traces from the underlying uAMQP library.
  - Enable AMQP frame level trace by setting `logging_enable=True` when creating the client.





  Get started with our [EventHubs Checkpoint Store samples](https://github.com/Azure/azure-sdk-for-python/blob/master/sdk/eventhub/azure-eventhub-checkpointstoreblob/samples).

  - [receive_events_using_checkpoint_store.py](https://github.com/Azure/azure-sdk-for-python/blob/master/sdk/eventhub/azure-eventhub-checkpointstoreblob/samples/receive_events_using_checkpoint_store.py) - EventHubConsumerClient with blob checkpoint store example
  - [receive_events_using_checkpoint_store_storage_api_version.py](https://github.com/Azure/azure-sdk-for-python/blob/master/sdk/eventhub/azure-eventhub-checkpointstoreblob/samples/receive_events_using_checkpoint_store_storage_api_version.py) - EventHubConsumerClient with blob checkpoint store and storage version example



  Reference documentation is available [here](https://azuresdkdocs.blob.core.windows.net/$web/python/azure-eventhub/latest/azure.eventhub.html#azure.eventhub.CheckpointStore).



  If you encounter any bugs or have suggestions, please file an issue in the [Issues](https://github.com/Azure/azure-sdk-for-python/issues) section of the project.



  This project welcomes contributions and suggestions.  Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

  When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

  This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).
  For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.

  ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-python/sdk/eventhub/azure-eventhub-checkpointstoreblob/README.png)






  This version and all future versions will require Python 2.7 or Python 3.6+, Python 3.5 is no longer supported.

  **New features**
  - Updated `list_ownership`, `claim_ownership`, `update_checkpoint`, `list_checkpoints` on `BlobCheckpointStore` to support taking `**kwargs`.



  This version will be the last version to officially support Python 3.5, future versions will require Python 2.7 or Python 3.6+.

  **Bug fixes**
  - Updated vendor azure-storage-blob dependency to v12.7.1.
    - Fixed storage blob authentication failure due to request date header too old (#16192).



  **Bug fixes**
  - Fixed a bug that `BlobCheckpointStore.list_ownership` and `BlobCheckpointStore.list_checkpoints` triggering `KeyError` due to reading empty metadata of parent node when working with Data Lake enabled Blob Storage.



  **Bug fixes**
  - Fixed a bug that may gradually slow down retrieving checkpoint data from the storage blob if the storage account "File share soft delete" is enabled. #12836



  **New features**
  - Param `api_version` of `BlobCheckpointStore` now supports older versions of Azure Storage Service API.


  Stable release. No new features or API changes.



  **Breaking changes**

  - Renamed `BlobPartitionManager` to `BlobCheckpointStore`.
  - Constructor of `BlobCheckpointStore` has been updated to take the storage container details directly rather than an instance of `ContainerClient`.
  - A `from_connection_string` constructor has been added for Blob Storage connection strings.
  - Module `blobstoragepm` is now internal, all imports should be directly from `azure.eventhub.extensions.checkpointstoreblob`.
  - `BlobCheckpointStore` now has a `close()` function for shutting down an HTTP connection pool, additionally the object can be used in a context manager to manage the connection.



  **New features**

  - `BlobPartitionManager` that uses Azure Blob Storage Block Blob to store EventProcessor checkpoint data

  ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-python/sdk/eventhub/azure-eventhub-checkpointstoreblob/HISTORY.png)

url:
  https://github.com/Azure/azure-sdk-for-python/tree/master/sdk/eventhub/azure-eventhub-checkpointstoreblob

location_href:
  00010620-python-azure-eventhub-checkpointstoreblob/python-azure-eventhub-checkpointstoreblob-help-1.1.4-1.noarch.rpm


pkgId: 94dcf9e538855972fbe2f00529c0e06703dcd2be493d159a9926da2993e89d57
name: python-azure-functions
arch: src
version: 1.13.3
epoch: 0
release: 1
summary: Azure Functions for Python
url: https://pypi.org/project/azure-functions/
rpm_license: MIT
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-306adedf-2ed3-427e-a488-2d79b9d6f323
location_href: 00010074-python-azure-functions/python-azure-functions-1.13.3-1.src.rpm
checksum_type: sha256
description:
  | Branch | CodeCov                                                                                                                                                            |
  |--------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------|
  | master | [![codecov](https://codecov.io/gh/Azure/azure-functions-python-library/branch/master/graph/badge.svg)](https://codecov.io/gh/Azure/azure-functions-python-library) |
  | dev    | [![codecov](https://codecov.io/gh/Azure/azure-functions-python-library/branch/dev/graph/badge.svg)](https://codecov.io/gh/Azure/azure-functions-python-library)    |



  Python support for Azure Functions is based on Python 3.6/3.7/3.8/3.9 and 3.10 (coming soon), serverless hosting on Linux and the Functions 2.0, 3.0
  and 4.0 runtime.

  Here is the current status of Python in Azure Functions:

  _What are the supported Python versions?_

  | Azure Functions Runtime | Python 3.6 | Python 3.7 | Python 3.8 | Python 3.9 | Python 3.10  | Python 3.11 |
  |-------------------------|--------|-------|-------|--------|--------------|-------------|
  | Azure Functions 3.0     | [EOL](https://learn.microsoft.com/azure/azure-functions/migrate-version-3-version-4)|[EOL](https://learn.microsoft.com/azure/azure-functions/migrate-version-3-version-4)|[EOL](https://learn.microsoft.com/azure/azure-functions/migrate-version-3-version-4)| [EOL](https://learn.microsoft.com/azure/azure-functions/migrate-version-3-version-4)| -       |-        |
  | Azure Functions 4.0     | &#x2713; | &#x2713; | &#x2713; | &#x2713; | &#x2713;    | coming soon |

  _What's available?_
  - Build, test, debug and publish using Azure Functions Core Tools (CLI) or Visual Studio Code
  - Triggers / Bindings : HTTP, Blob, Queue, Timer, Cosmos DB, Event Grid, Event Hubs and Service Bus
  - Create a Python Function on Linux using a custom docker image
  - Triggers / Bindings : Custom binding support



  - [Create your first Python function](https://docs.microsoft.com/en-us/azure/azure-functions/functions-create-first-function-python)
  - [Developer guide](https://docs.microsoft.com/en-us/azure/azure-functions/functions-reference-python)
  - [Binding API reference](https://docs.microsoft.com/en-us/python/api/azure-functions/azure.functions?view=azure-python)
  - [Develop using VS Code](https://docs.microsoft.com/en-us/azure/azure-functions/functions-create-first-function-vs-code)
  - [Create a Python Function on Linux using a custom docker image](https://docs.microsoft.com/en-us/azure/azure-functions/functions-create-function-linux-custom-image)



  Issues and feature requests are tracked in a variety of places. To report this feedback, please file an issue to the relevant repository below:

  | Item          | Description                                  | Link                                                                           |
  |---------------|----------------------------------------------|--------------------------------------------------------------------------------|
  | Python Worker | Programming Model, Triggers & Bindings       | [File an Issue](https://github.com/Azure/azure-functions-python-worker/issues) |
  | Linux         | Base Docker Images                           | [File an Issue](https://github.com/Azure/azure-functions-docker/issues)        |
  | Runtime       | Script Host & Language Extensibility         | [File an Issue](https://github.com/Azure/azure-functions-host/issues)          |
  | VSCode        | VSCode Extension for Azure Functions         | [File an Issue](https://github.com/microsoft/vscode-azurefunctions/issues)     |
  | Core Tools    | Command Line Interface for Local Development | [File an Issue](https://github.com/Azure/azure-functions-core-tools/issues)    |
  | Portal        | User Interface or Experience Issue           | [File an Issue](https://github.com/azure/azure-functions-ux/issues)            |
  | Templates     | Code Issues with Creation Template           | [File an Issue](https://github.com/Azure/azure-functions-templates/issues)     |



  This project welcomes contributions and suggestions.  Most contributions require you to agree to a
  Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us
  the rights to use your contribution. For details, visit https://cla.microsoft.com.

  When you submit a pull request, a CLA-bot will automatically determine whether you need to provide
  a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions
  provided by the bot. You will only need to do this once across all repos using our CLA.

  This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).
  For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or
  contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.


pkgId: 2172248323315bdf18cf61f0464b1afe27e3258e99a431130020c5d8081e72f9
name: python-azure-functions-devops-build
arch: src
version: 0.0.22
epoch: 0
release: 1
url: https://github.com/Azure/azure-functions-devops-build
rpm_license: MIT
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-a89483f6-a132-45c6-913b-4eefcac63910
location_href: 00010476-python-azure-functions-devops-build/python-azure-functions-devops-build-0.0.22-1.src.rpm
checksum_type: sha256
summary:
  Python package for integrating Azure Functions with Azure DevOps. Specifically made for the Azure CLI

description:
  > :construction: The project is currently **work in progress**. Please **do not use in production** as we expect developments over time. :construction:

  This project provides the class AzureDevopsBuildManager and supporting classes. This manager class allows
  the caller to manage Azure Devops pipelines that are maintained within an Azure Devops account. This project was created to be able to support command line tooling for the AZ Cli.


  To install the package from pip:
  ```
  pip install azure-functions-devops-build
  ```

  To use the API, you need to first establish a connection to azure by loging into your azure account using `az login`. You can then follow the example as below. Firstly we get the token from login and use this to authenticate the different python function calls.

  ```python
  from azure.cli.core import get_default_cli
  from azure.cli.core._profile import Profile
  from azure_functions_devops_build.organization.organization_manager import OrganizationManager
  import pprint


  cli_ctx = get_default_cli()
  profile = Profile(cli_ctx=cli_ctx)
  creds, _, _ = profile.get_login_credentials(subscription_id=None)


  organization_manager = OrganizationManager(creds=creds)


  organizations = organization_manager.list_organizations()


  for organization in organizations.value:
      pprint.pprint(organization.__dict__)
  ```



  This Python library extensively uses the Azure DevOps REST APIs and Azure Devops Python API. See the [Azure DevOps REST API reference](https://docs.microsoft.com/en-us/rest/api/vsts/?view=vsts-rest-5.0) for details on calling different APIs and [Azure DevOps Python SDK](https://github.com/Microsoft/azure-devops-python-api) for details on the azure-devops-python-api.



  See samples by looking at tests or viewing the [az-cli functionapp devops-build module](https://github.com/Azure/azure-cli/tree/dev/src/command_modules/azure-cli-appservice/azure/cli/command_modules/appservice).



  Several things need to be setup before you can run the tests:
  1. Signed into the az cli. You can do this by using `az login`.
  2. Since this directly deploys to azure functions, [create an azure functions functionapp using the azure portal](https://docs.microsoft.com/en-us/azure/azure-functions/functions-create-first-azure-function). You need to make a functionapp for these tests to successfully run and make sure you record the details of the subscription name, project name, application type and storage name.
  3. Follow the tests/_config_example.py file, create a tests/_config.py with your own testing environment.
  4. Run the full test suite using `python -m tests.suite`
  5. To run specific manager tests run `python -m tests.{NAME_OF_MANAGER}` eg. `python -m tests.test_builder_manager`



  This project welcomes contributions and suggestions.  Most contributions require you to agree to a
  Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us
  the rights to use your contribution. For details, visit https://cla.microsoft.com.

  When you submit a pull request, a CLA-bot will automatically determine whether you need to provide
  a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions
  provided by the bot. You will only need to do this once across all repos using our CLA.

  This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).
  For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or
  contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.


pkgId: 6df60c94a11495a9868b4838197874307362194aab69f1301121b89e316882a3
name: python-azure-functions-devops-build-help
arch: noarch
version: 0.0.22
epoch: 0
release: 1
summary: Development documents and examples for azure-functions-devops-build
url: https://github.com/Azure/azure-functions-devops-build
rpm_license: MIT
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-a89483f6-a132-45c6-913b-4eefcac63910
rpm_sourcerpm: python-azure-functions-devops-build-0.0.22-1.src.rpm
checksum_type: sha256
description:
  > :construction: The project is currently **work in progress**. Please **do not use in production** as we expect developments over time. :construction:

  This project provides the class AzureDevopsBuildManager and supporting classes. This manager class allows
  the caller to manage Azure Devops pipelines that are maintained within an Azure Devops account. This project was created to be able to support command line tooling for the AZ Cli.


  To install the package from pip:
  ```
  pip install azure-functions-devops-build
  ```

  To use the API, you need to first establish a connection to azure by loging into your azure account using `az login`. You can then follow the example as below. Firstly we get the token from login and use this to authenticate the different python function calls.

  ```python
  from azure.cli.core import get_default_cli
  from azure.cli.core._profile import Profile
  from azure_functions_devops_build.organization.organization_manager import OrganizationManager
  import pprint


  cli_ctx = get_default_cli()
  profile = Profile(cli_ctx=cli_ctx)
  creds, _, _ = profile.get_login_credentials(subscription_id=None)


  organization_manager = OrganizationManager(creds=creds)


  organizations = organization_manager.list_organizations()


  for organization in organizations.value:
      pprint.pprint(organization.__dict__)
  ```



  This Python library extensively uses the Azure DevOps REST APIs and Azure Devops Python API. See the [Azure DevOps REST API reference](https://docs.microsoft.com/en-us/rest/api/vsts/?view=vsts-rest-5.0) for details on calling different APIs and [Azure DevOps Python SDK](https://github.com/Microsoft/azure-devops-python-api) for details on the azure-devops-python-api.



  See samples by looking at tests or viewing the [az-cli functionapp devops-build module](https://github.com/Azure/azure-cli/tree/dev/src/command_modules/azure-cli-appservice/azure/cli/command_modules/appservice).



  Several things need to be setup before you can run the tests:
  1. Signed into the az cli. You can do this by using `az login`.
  2. Since this directly deploys to azure functions, [create an azure functions functionapp using the azure portal](https://docs.microsoft.com/en-us/azure/azure-functions/functions-create-first-azure-function). You need to make a functionapp for these tests to successfully run and make sure you record the details of the subscription name, project name, application type and storage name.
  3. Follow the tests/_config_example.py file, create a tests/_config.py with your own testing environment.
  4. Run the full test suite using `python -m tests.suite`
  5. To run specific manager tests run `python -m tests.{NAME_OF_MANAGER}` eg. `python -m tests.test_builder_manager`



  This project welcomes contributions and suggestions.  Most contributions require you to agree to a
  Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us
  the rights to use your contribution. For details, visit https://cla.microsoft.com.

  When you submit a pull request, a CLA-bot will automatically determine whether you need to provide
  a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions
  provided by the bot. You will only need to do this once across all repos using our CLA.

  This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).
  For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or
  contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.

location_href:
  00010476-python-azure-functions-devops-build/python-azure-functions-devops-build-help-0.0.22-1.noarch.rpm


pkgId: faaed7c8fa322167087f822561d2cdf1e4bd69926ada96a5b6cc060c3b8b2aab
name: python-azure-identity
arch: src
version: 1.12.0
epoch: 0
release: 1
summary: Microsoft Azure Identity Library for Python
url: https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/identity/azure-identity
rpm_license: MIT License
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-01a693ed-9e69-4eeb-814b-73f40d1b0269
location_href: 00009018-python-azure-identity/python-azure-identity-1.12.0-1.src.rpm
checksum_type: sha256
description:
  The Azure Identity library provides [Azure Active Directory (Azure AD)](https://learn.microsoft.com/azure/active-directory/fundamentals/active-directory-whatis) token authentication support across the Azure SDK. It provides a set of [`TokenCredential`](https://learn.microsoft.com/python/api/azure-core/azure.core.credentials.tokencredential?view=azure-python) implementations which can be used to construct Azure SDK clients which support Azure AD token authentication.

  [Source code](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/identity/azure-identity)
  | [Package (PyPI)](https://pypi.org/project/azure-identity/)
  | [API reference documentation][ref_docs]
  | [Azure AD documentation](https://learn.microsoft.com/azure/active-directory/)





  Install Azure Identity with pip:

  ```sh
  pip install azure-identity
  ```



  - an [Azure subscription](https://azure.microsoft.com/free/)
  - Python 3.7 or a recent version of Python 3 (this library doesn't support
    end-of-life versions)



  When debugging and executing code locally it is typical for developers to use
  their own accounts for authenticating calls to Azure services. The Azure
  Identity library supports authenticating through developer tools to simplify
  local development.



  Developers using Visual Studio Code can use the [Azure Account extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.azure-account) to authenticate via the editor. Apps using `DefaultAzureCredential` or `VisualStudioCodeCredential` can then use this account to authenticate calls in their app when running locally.

  To authenticate in Visual Studio Code, ensure the Azure Account extension is installed. Once installed, open the **Command Palette** and run the **Azure: Sign In** command.

  It's a [known issue](https://github.com/Azure/azure-sdk-for-python/issues/23249) that `VisualStudioCodeCredential` doesn't work with [Azure Account extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.azure-account) versions newer than **0.9.11**. A long-term fix to this problem is in progress. In the meantime, consider [authenticating via the Azure CLI](#authenticate-via-the-azure-cli).



  `DefaultAzureCredential` and `AzureCliCredential` can authenticate as the user
  signed in to the [Azure CLI][azure_cli]. To sign in to the Azure CLI, run
  `az login`. On a system with a default web browser, the Azure CLI will launch
  the browser to authenticate a user.

  When no default browser is available, `az login` will use the device code
  authentication flow. This can also be selected manually by running `az login --use-device-code`.





  A credential is a class which contains or can obtain the data needed for a
  service client to authenticate requests. Service clients across the Azure SDK
  accept a credential instance when they are constructed, and use that credential
  to authenticate requests.

  The Azure Identity library focuses on OAuth authentication with Azure AD. It offers a variety of credential classes capable of acquiring
  an Azure AD access token. See the [Credential classes](#credential-classes "Credential classes") section below for a list of
  this library's credential classes.



  `DefaultAzureCredential` is appropriate for most applications which will run in Azure because it combines common production credentials with development credentials. `DefaultAzureCredential` attempts to authenticate via the following mechanisms, in this order, stopping when one succeeds:

  >Note: `DefaultAzureCredential` is intended to simplify getting started with the library by handling common
  >scenarios with reasonable default behaviors. Developers who want more control or whose scenario
  >isn't served by the default settings should use other credential types.

  ![DefaultAzureCredential authentication flow](https://raw.githubusercontent.com/Azure/azure-sdk-for-python/main/sdk/identity/azure-identity/images/mermaidjs/DefaultAzureCredentialAuthFlow.svg)

  1. **Environment** - `DefaultAzureCredential` will read account information specified via [environment variables](#environment-variables "environment variables") and use it to authenticate.
  1. **Managed Identity** - If the application is deployed to an Azure host with Managed Identity enabled, `DefaultAzureCredential` will authenticate with it.
  1. **Azure CLI** - If a user has signed in via the Azure CLI `az login` command, `DefaultAzureCredential` will authenticate as that user.
  1. **Azure PowerShell** - If a user has signed in via Azure PowerShell's `Connect-AzAccount` command, `DefaultAzureCredential` will authenticate as that user.
  1. **Interactive browser** - If enabled, `DefaultAzureCredential` will interactively authenticate a user via the default browser. This is disabled by default.



  Due to a [known issue](https://github.com/Azure/azure-sdk-for-python/issues/23249), `VisualStudioCodeCredential` has been removed from the `DefaultAzureCredential` token chain. When the issue is resolved in a future release, this change will be reverted.



  The following examples are provided below:

  - [Authenticate with DefaultAzureCredential](#authenticate-with-defaultazurecredential "Authenticate with DefaultAzureCredential")
  - [Define a custom authentication flow with ChainedTokenCredential](#define-a-custom-authentication-flow-with-chainedtokencredential "Define a custom authentication flow with ChainedTokenCredential")
  - [Async credentials](#async-credentials "Async credentials")



  More details on configuring your environment to use the `DefaultAzureCredential`
  can be found in the class's [reference documentation][default_cred_ref].

  This example demonstrates authenticating the `BlobServiceClient` from the
  [azure-storage-blob][azure_storage_blob] library using
  `DefaultAzureCredential`.

  ```py
  from azure.identity import DefaultAzureCredential
  from azure.storage.blob import BlobServiceClient

  default_credential = DefaultAzureCredential()

  client = BlobServiceClient(account_url, credential=default_credential)
  ```



  Interactive authentication is disabled in the `DefaultAzureCredential` by
  default and can be enabled with a keyword argument:

  ```py
  DefaultAzureCredential(exclude_interactive_browser_credential=False)
  ```

  When enabled, `DefaultAzureCredential` falls back to interactively
  authenticating via the system's default web browser when no other credential is
  available.



  Many Azure hosts allow the assignment of a user assigned managed identity. To
  configure `DefaultAzureCredential` to authenticate a user assigned identity,
  use the `managed_identity_client_id` keyword argument:

  ```py
  DefaultAzureCredential(managed_identity_client_id=client_id)
  ```

  Alternatively, set the environment variable `AZURE_CLIENT_ID` to the identity's
  client ID.



  `DefaultAzureCredential` is generally the quickest way to get started developing
  applications for Azure. For more advanced scenarios,
  [ChainedTokenCredential][chain_cred_ref] links multiple credential instances
  to be tried sequentially when authenticating. It will try each chained
  credential in turn until one provides a token or fails to authenticate due to
  an error.

  The following example demonstrates creating a credential which will attempt to
  authenticate using managed identity, and fall back to authenticating via the
  Azure CLI when a managed identity is unavailable. This example uses the
  `EventHubProducerClient` from the [azure-eventhub][azure_eventhub] client library.

  ```py
  from azure.eventhub import EventHubProducerClient
  from azure.identity import AzureCliCredential, ChainedTokenCredential, ManagedIdentityCredential

  managed_identity = ManagedIdentityCredential()
  azure_cli = AzureCliCredential()
  credential_chain = ChainedTokenCredential(managed_identity, azure_cli)

  client = EventHubProducerClient(namespace, eventhub_name, credential_chain)
  ```



  This library includes a set of async APIs. To use the async
  credentials in [azure.identity.aio][ref_docs_aio], you must first install an
  async transport, such as [aiohttp](https://pypi.org/project/aiohttp/). See
  [azure-core documentation][azure_core_transport_doc] for more information.

  Async credentials should be closed when they're no longer needed. Each async
  credential is an async context manager and defines an async `close` method. For
  example:

  ```py
  from azure.identity.aio import DefaultAzureCredential


  credential = DefaultAzureCredential()
  ...
  await credential.close()


  credential = DefaultAzureCredential()
  async with credential:
    ...
  ```

  This example demonstrates authenticating the asynchronous `SecretClient` from
  [azure-keyvault-secrets][azure_keyvault_secrets] with an asynchronous
  credential.

  ```py
  from azure.identity.aio import DefaultAzureCredential
  from azure.keyvault.secrets.aio import SecretClient

  default_credential = DefaultAzureCredential()
  client = SecretClient("https://my-vault.vault.azure.net", default_credential)
  ```



  [Managed identity authentication](https://learn.microsoft.com/azure/active-directory/managed-identities-azure-resources/overview) is supported via either the `DefaultAzureCredential` or the `ManagedIdentityCredential` directly for the following Azure services:

  * [Azure App Service and Azure Functions](https://learn.microsoft.com/azure/app-service/overview-managed-identity?tabs=python)
  * [Azure Arc](https://learn.microsoft.com/azure/azure-arc/servers/managed-identity-authentication)
  * [Azure Cloud Shell](https://learn.microsoft.com/azure/cloud-shell/msi-authorization)
  * [Azure Kubernetes Service](https://learn.microsoft.com/azure/aks/use-managed-identity)
  * [Azure Service Fabric](https://learn.microsoft.com/azure/service-fabric/concepts-managed-identity)
  * [Azure Virtual Machines](https://learn.microsoft.com/azure/active-directory/managed-identities-azure-resources/how-to-use-vm-token)
  * [Azure Virtual Machines Scale Sets](https://learn.microsoft.com/azure/active-directory/managed-identities-azure-resources/qs-configure-powershell-windows-vmss)





  ```py
  from azure.identity import ManagedIdentityCredential
  from azure.keyvault.secrets import SecretClient

  credential = ManagedIdentityCredential(client_id=managed_identity_client_id)
  client = SecretClient("https://my-vault.vault.azure.net", credential)
  ```



  ```py
  from azure.identity import ManagedIdentityCredential
  from azure.keyvault.secrets import SecretClient

  credential = ManagedIdentityCredential()
  client = SecretClient("https://my-vault.vault.azure.net", credential)
  ```


  Credentials default to authenticating to the Azure AD endpoint for
  Azure Public Cloud. To access resources in other clouds, such as Azure Government
  or a private cloud, configure credentials with the `authority` argument.
  [AzureAuthorityHosts](https://aka.ms/azsdk/python/identity/docs#azure.identity.AzureAuthorityHosts)
  defines authorities for well-known clouds:
  ```py
  from azure.identity import AzureAuthorityHosts

  DefaultAzureCredential(authority=AzureAuthorityHosts.AZURE_GOVERNMENT)
  ```
  Not all credentials require this configuration. Credentials which authenticate
  through a development tool, such as `AzureCliCredential`, use that tool's
  configuration. Similarly, `VisualStudioCodeCredential` accepts an `authority`
  argument but defaults to the authority matching VS Code's "Azure: Cloud" setting.





  |Credential|Usage
  |-|-
  |[`DefaultAzureCredential`][default_cred_ref]| Provides a simplified authentication experience to quickly start developing applications run in Azure.
  |[`ChainedTokenCredential`][chain_cred_ref]| Allows users to define custom authentication flows composing multiple credentials.
  |[`EnvironmentCredential`][environment_cred_ref]| Authenticates a service principal or user via credential information specified in environment variables.
  |[`ManagedIdentityCredential`][managed_id_cred_ref]| Authenticates the managed identity of an Azure resource.



  |Credential|Usage|Reference
  |-|-|-
  |[`CertificateCredential`][cert_cred_ref]| Authenticates a service principal using a certificate. | [Service principal authentication](https://learn.microsoft.com/azure/active-directory/develop/app-objects-and-service-principals)
  |[`ClientAssertionCredential`][client_assertion_cred_ref]| Authenticates a service principal using a signed client assertion. |
  |[`ClientSecretCredential`][client_secret_cred_ref]| Authenticates a service principal using a secret. | [Service principal authentication](https://learn.microsoft.com/azure/active-directory/develop/app-objects-and-service-principals)



  |Credential|Usage|Reference
  |-|-|-
  |[`AuthorizationCodeCredential`][auth_code_cred_ref]| Authenticates a user with a previously obtained authorization code. | [OAuth2 authentication code](https://learn.microsoft.com/azure/active-directory/develop/v2-oauth2-auth-code-flow)
  |[`DeviceCodeCredential`][device_code_cred_ref]| Interactively authenticates a user on devices with limited UI. | [Device code authentication](https://learn.microsoft.com/azure/active-directory/develop/v2-oauth2-device-code)
  |[`InteractiveBrowserCredential`][interactive_cred_ref]| Interactively authenticates a user with the default system browser. | [OAuth2 authentication code](https://learn.microsoft.com/azure/active-directory/develop/v2-oauth2-auth-code-flow)
  |[`OnBehalfOfCredential`][obo_cred_ref]| Propagates the delegated user identity and permissions through the request chain. | [On-behalf-of authentication](https://learn.microsoft.com/azure/active-directory/develop/v2-oauth2-on-behalf-of-flow)
  |[`UsernamePasswordCredential`][userpass_cred_ref]| Authenticates a user with a username and password (does not support multi-factor authentication). |  [Username + password authentication](https://learn.microsoft.com/azure/active-directory/develop/v2-oauth-ropc)



  |Credential|Usage|Reference
  |-|-|-
  |[`AzureCliCredential`][cli_cred_ref]| Authenticates in a development environment with the Azure CLI. | [Azure CLI authentication](https://learn.microsoft.com/cli/azure/authenticate-azure-cli)
  |[`PowerShellCredential`][powershell_cred_ref]| Authenticates in a development environment with the Azure PowerShell. | [Azure PowerShell authentication](https://learn.microsoft.com/powershell/azure/authenticate-azureps)
  |[`VisualStudioCodeCredential`][vscode_cred_ref]| Authenticates as the user signed in to the Visual Studio Code Azure Account extension. | [VS Code Azure Account extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.azure-account)



  [DefaultAzureCredential][default_cred_ref] and
  [EnvironmentCredential][environment_cred_ref] can be configured with
  environment variables. Each type of authentication requires values for specific
  variables:


  |Variable name|Value
  |-|-
  |`AZURE_CLIENT_ID`|ID of an Azure AD application
  |`AZURE_TENANT_ID`|ID of the application's Azure AD tenant
  |`AZURE_CLIENT_SECRET`|one of the application's client secrets


  |Variable name|Value
  |-|-
  |`AZURE_CLIENT_ID`|ID of an Azure AD application
  |`AZURE_TENANT_ID`|ID of the application's Azure AD tenant
  |`AZURE_CLIENT_CERTIFICATE_PATH`|path to a PEM or PKCS12 certificate file including private key
  |`AZURE_CLIENT_CERTIFICATE_PASSWORD`|password of the certificate file, if any


  |Variable name|Value
  |-|-
  |`AZURE_CLIENT_ID`|ID of an Azure AD application
  |`AZURE_USERNAME`|a username (usually an email address)
  |`AZURE_PASSWORD`|that user's password

  Configuration is attempted in the above order. For example, if values for a
  client secret and certificate are both present, the client secret will be used.



  See the [troubleshooting guide][troubleshooting_guide] for details on how to diagnose various failure scenarios.



  Credentials raise `CredentialUnavailableError` when they're unable to attempt
  authentication because they lack required data or state. For example,
  [EnvironmentCredential][environment_cred_ref] will raise this exception when
  [its configuration](#environment-variables "its configuration") is incomplete.

  Credentials raise `azure.core.exceptions.ClientAuthenticationError` when they fail
  to authenticate. `ClientAuthenticationError` has a `message` attribute which
  describes why authentication failed. When raised by
  `DefaultAzureCredential` or `ChainedTokenCredential`,
  the message collects error messages from each credential in the chain.

  For more details on handling specific Azure AD errors, see the Azure AD [error code documentation](https://learn.microsoft.com/azure/active-directory/develop/reference-aadsts-error-codes).



  This library uses the standard
  [logging](https://docs.python.org/3/library/logging.html) library for logging.
  Credentials log basic information, including HTTP sessions (URLs, headers, etc.) at INFO level. These log entries do not contain authentication secrets.

  Detailed DEBUG level logging, including request/response bodies and header values, is not enabled by default. It can be enabled with the `logging_enable` argument, for example:

  ```py
  credential = DefaultAzureCredential(logging_enable=True)
  ```

  > CAUTION: DEBUG level logs from credentials contain sensitive information.
  > These logs must be protected to avoid compromising account security.





  Client and management libraries listed on the
  [Azure SDK release page](https://azure.github.io/azure-sdk/releases/latest/python.html)
  which support Azure AD authentication accept credentials from this library. You can learn more
  about using these libraries in their documentation, which is linked from the release page.



  This library doesn't support [Azure AD B2C][b2c].

  For other open issues, refer to the library's [GitHub repository](https://github.com/Azure/azure-sdk-for-python/issues?q=is%3Aopen+is%3Aissue+label%3AAzure.Identity).



  If you encounter bugs or have suggestions, please
  [open an issue](https://github.com/Azure/azure-sdk-for-python/issues).



  This project welcomes contributions and suggestions. Most contributions require
  you to agree to a Contributor License Agreement (CLA) declaring that you have
  the right to, and actually do, grant us the rights to use your contribution.
  For details, visit [https://cla.microsoft.com](https://cla.microsoft.com).

  When you submit a pull request, a CLA-bot will automatically determine whether
  you need to provide a CLA and decorate the PR appropriately (e.g., label,
  comment). Simply follow the instructions provided by the bot. You will only
  need to do this once across all repos using our CLA.

  This project has adopted the
  [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).
  For more information, see the
  [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/)
  or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any
  additional questions or comments.

  [auth_code_cred_ref]: https://aka.ms/azsdk/python/identity/authorizationcodecredential
  [azure_appconfiguration]: https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/appconfiguration/azure-appconfiguration
  [azure_cli]: https://learn.microsoft.com/cli/azure
  [azure_core_transport_doc]: https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/core/azure-core/CLIENT_LIBRARY_DEVELOPER.md#transport
  [azure_eventhub]: https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/eventhub/azure-eventhub
  [azure_keyvault_certificates]: https://github.com/Azure/azure-sdk-for-python/blob/main/sdk//keyvault/azure-keyvault-certificates
  [azure_keyvault_keys]: https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/keyvault/azure-keyvault-keys
  [azure_keyvault_secrets]: https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/keyvault/azure-keyvault-secrets
  [azure_storage_blob]: https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/storage/azure-storage-blob
  [azure_storage_queue]: https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/storage/azure-storage-queue
  [b2c]: https://learn.microsoft.com/azure/active-directory-b2c/overview
  [cert_cred_ref]: https://aka.ms/azsdk/python/identity/certificatecredential
  [chain_cred_ref]: https://aka.ms/azsdk/python/identity/chainedtokencredential
  [cli_cred_ref]: https://aka.ms/azsdk/python/identity/azclicredential
  [client_assertion_cred_ref]: https://aka.ms/azsdk/python/identity/clientassertioncredential
  [client_secret_cred_ref]: https://aka.ms/azsdk/python/identity/clientsecretcredential
  [default_cred_ref]: https://aka.ms/azsdk/python/identity/defaultazurecredential
  [device_code_cred_ref]: https://aka.ms/azsdk/python/identity/devicecodecredential
  [environment_cred_ref]: https://aka.ms/azsdk/python/identity/environmentcredential
  [interactive_cred_ref]: https://aka.ms/azsdk/python/identity/interactivebrowsercredential
  [managed_id_cred_ref]: https://aka.ms/azsdk/python/identity/managedidentitycredential
  [obo_cred_ref]: https://aka.ms/azsdk/python/identity/onbehalfofcredential
  [powershell_cred_ref]: https://aka.ms/azsdk/python/identity/powershellcredential
  [ref_docs]: https://aka.ms/azsdk/python/identity/docs
  [ref_docs_aio]: https://aka.ms/azsdk/python/identity/aio/docs
  [troubleshooting_guide]: https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/identity/azure-identity/TROUBLESHOOTING.md
  [userpass_cred_ref]: https://aka.ms/azsdk/python/identity/usernamepasswordcredential
  [vscode_cred_ref]: https://aka.ms/azsdk/python/identity/vscodecredential

  ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-python%2Fsdk%2Fidentity%2Fazure-identity%2FREADME.png)








  - `AzureCliCredential` now works even when `az` prints warnings to stderr. ([#26857](https://github.com/Azure/azure-sdk-for-python/issues/26857)) (thanks to @micromaomao for the contribution)
  - Fixed issue where user-supplied `TokenCachePersistenceOptions` weren't propagated when using `SharedTokenCacheCredential` ([#26982](https://github.com/Azure/azure-sdk-for-python/issues/26982))



  - Excluded `VisualStudioCodeCredential` from `DefaultAzureCredential` token chain by default as SDK
    authentication via Visual Studio Code is broken due to
    issue [#23249](https://github.com/Azure/azure-sdk-for-python/issues/23249). The `VisualStudioCodeCredential` will be
    re-enabled in the `DefaultAzureCredential` flow once a fix is in place.
    Issue [#25713](https://github.com/Azure/azure-sdk-for-python/issues/25713) tracks this. In the meantime
    Visual Studio Code users can authenticate their development environment using the [Azure CLI](https://learn.microsoft.com/cli/azure/).



  - Added Python 3.11 support and stopped supporting Python 3.6.



  1.12.0 release candidate





  - Added ability to specify `tenant_id` for `AzureCliCredential` & `AzurePowerShellCredential` (thanks @tikicoder)    ([#25207](https://github.com/Azure/azure-sdk-for-python/pull/25207))
  - Removed `VisualStudioCodeCredential` from `DefaultAzureCredential` token chain. ([#23249](https://github.com/Azure/azure-sdk-for-python/issues/23249))
  - `EnvironmentCredential` added `AZURE_CLIENT_CERTIFICATE_PASSWORD` support for the cert password    ([#24652](https://github.com/Azure/azure-sdk-for-python/issues/24652))
  - Added `validate_authority` support for msal client  ([#22625](https://github.com/Azure/azure-sdk-for-python/issues/22625))





  - Added `additionally_allowed_tenants` to the following credential options to force explicit opt-in behavior for multi-tenant authentication:
    - `AuthorizationCodeCredential`
    - `AzureCliCredential`
    - `AzurePowerShellCredential`
    - `CertificateCredential`
    - `ClientAssertionCredential`
    - `ClientSecretCredential`
    - `DefaultAzureCredential`
    - `OnBehalfOfCredential`
    - `UsernamePasswordCredential`
    - `VisualStudioCodeCredential`



  - Credential types supporting multi-tenant authentication will now throw `ClientAuthenticationError` if the requested tenant ID doesn't match the credential's tenant ID, and is not included in `additionally_allowed_tenants`. Applications must now explicitly add additional tenants to the `additionally_allowed_tenants` list, or add '*' to list, to enable acquiring tokens from tenants other than the originally specified tenant ID.

  More information on this change and the consideration behind it can be found [here](https://aka.ms/azsdk/blog/multi-tenant-guidance).

  - These beta features in 1.11.0b3 have been removed from this release and will be added back in 1.12.0b1
    - `tenant_id` for `AzureCliCredential`
    - removed `VisualStudioCodeCredential` from `DefaultAzureCredential` token chain
    - `AZURE_CLIENT_CERTIFICATE_PASSWORD` support for `EnvironmentCredential`
    - `validate_authority` support



  Azure-identity is supported on Python 3.7 or later. For more details, please read our page on [Azure SDK for Python version support policy](https://github.com/Azure/azure-sdk-for-python/wiki/Azure-SDKs-Python-version-support-policy).



  - Added ability to specify `tenant_id` for `AzureCliCredential` (thanks @tikicoder)    ([#25207](https://github.com/Azure/azure-sdk-for-python/pull/25207))



  - Removed `VisualStudioCodeCredential` from `DefaultAzureCredential` token chain. ([#23249](https://github.com/Azure/azure-sdk-for-python/issues/23249))





  - `EnvironmentCredential` added `AZURE_CLIENT_CERTIFICATE_PASSWORD` support for the cert password    ([#24652](https://github.com/Azure/azure-sdk-for-python/issues/24652))



  - Fixed the issue that failed to parse PEM certificate if it does not start with "-----"    ([#24643](https://github.com/Azure/azure-sdk-for-python/issues/24643))





  - Added `validate_authority` support for msal client  ([#22625](https://github.com/Azure/azure-sdk-for-python/issues/22625))





  > These changes do not impact the API of stable versions such as 1.9.0.
  > Only code written against a beta version such as 1.10.0b1 may be affected.
  - `validate_authority` support is not available in 1.10.0.



  - Supported msal-extensions version 1.0.0    ([#23927](https://github.com/Azure/azure-sdk-for-python/issues/23927))





  - Added `validate_authority` support for msal client  ([#22625](https://github.com/Azure/azure-sdk-for-python/issues/22625))





  - Added PII logging if logging.DEBUG is enabled.    ([#23203](https://github.com/Azure/azure-sdk-for-python/issues/23203))



  > These changes do not impact the API of stable versions such as 1.8.0.
  > Only code written against a beta version such as 1.9.0b1 may be affected.
  - `validate_authority` support is not available in 1.9.0.



  - Added check on `content` from msal response.    ([#23483](https://github.com/Azure/azure-sdk-for-python/issues/23483))
  - Fixed the issue that async OBO credential does not refresh correctly.    ([#21981](https://github.com/Azure/azure-sdk-for-python/issues/21981))



  - Removed `resource_id`, please use `identity_config` instead.
  - Renamed argument name `get_assertion` to `func` for `ClientAssertionCredential`.





  - Added `validate_authority` support for msal client  ([#22625](https://github.com/Azure/azure-sdk-for-python/issues/22625))
  - Added `resource_id` support for user-assigned managed identity  ([#22329](https://github.com/Azure/azure-sdk-for-python/issues/22329))
  - Added `ClientAssertionCredential` support  ([#22328](https://github.com/Azure/azure-sdk-for-python/issues/22328))
  - Updated App service API version to "2019-08-01" ([#23034](https://github.com/Azure/azure-sdk-for-python/issues/23034))





  - Handle injected "tenant_id" and "claims" ([#23138](https://github.com/Azure/azure-sdk-for-python/issues/23138))

    "tenant_id" argument in get_token() method is only supported by:

    - `AuthorizationCodeCredential`
    - `AzureCliCredential`
    - `AzurePowerShellCredential`
    - `InteractiveBrowserCredential`
    - `DeviceCodeCredential`
    - `EnvironmentCredential`
    - `UsernamePasswordCredential`

     it is ignored by other types of credentials.



  - Python 2.7 is no longer supported. Please use Python version 3.6 or later.





  - Fix multi-tenant auth using async AadClient ([#21289](https://github.com/Azure/azure-sdk-for-python/issues/21289))




  > These changes do not impact the API of stable versions such as 1.6.0.
  > Only code written against a beta version such as 1.7.0b1 may be affected.

  - The `allow_multitenant_authentication` argument has been removed and the default behavior is now as if it were true.
    The multitenant authentication feature can be totally disabled by setting the environment variable
    `AZURE_IDENTITY_DISABLE_MULTITENANTAUTH` to `True`.
  - `azure.identity.RegionalAuthority` is removed.
  - `regional_authority` argument is removed for `CertificateCredential` and `ClientSecretCredential`.
  - `AzureApplicationCredential` is removed.
  - `client_credential` in the ctor of `OnBehalfOfCredential` is removed. Please use `client_secret` or `client_certificate` instead.
  - Make `user_assertion` in the ctor of `OnBehalfOfCredential` a keyword only argument.




  - `CertificateCredential` accepts certificates in PKCS12 format
    ([#13540](https://github.com/Azure/azure-sdk-for-python/issues/13540))
  - `OnBehalfOfCredential` supports the on-behalf-of authentication flow for
    accessing resources on behalf of users
    ([#19308](https://github.com/Azure/azure-sdk-for-python/issues/19308))
  - `DefaultAzureCredential` allows specifying the client ID of interactive browser via keyword argument `interactive_browser_client_id`
    ([#20487](https://github.com/Azure/azure-sdk-for-python/issues/20487))


  - Added context manager methods and `close()` to credentials in the
    `azure.identity` namespace. At the end of a `with` block, or when `close()`
    is called, these credentials close their underlying transport sessions.
    ([#18798](https://github.com/Azure/azure-sdk-for-python/issues/18798))





  - Persistent cache implementations are now loaded on demand, enabling
    workarounds when importing transitive dependencies such as pywin32
    fails
    ([#19989](https://github.com/Azure/azure-sdk-for-python/issues/19989))





  > These changes do not impact the API of stable versions such as 1.6.0.
  > Only code written against a beta version such as 1.7.0b1 may be affected.
  - Renamed `AZURE_POD_IDENTITY_TOKEN_URL` to `AZURE_POD_IDENTITY_AUTHORITY_HOST`.
    The value should now be a host, for example "http://169.254.169.254" (the
    default).


  - Fixed import of `azure.identity.aio.AzureApplicationCredential`
    ([#19943](https://github.com/Azure/azure-sdk-for-python/issues/19943))


  - Added `CustomHookPolicy` to credential HTTP pipelines. This allows applications
    to initialize credentials with `raw_request_hook` and `raw_response_hook`
    keyword arguments. The value of these arguments should be a callback taking a
    `PipelineRequest` and `PipelineResponse`, respectively. For example:
    `ManagedIdentityCredential(raw_request_hook=lambda request: print(request.http_request.url))`
  - Reduced redundant `ChainedTokenCredential` and `DefaultAzureCredential`
    logging. On Python 3.7+, credentials invoked by these classes now log debug
    rather than info messages.
    ([#18972](https://github.com/Azure/azure-sdk-for-python/issues/18972))
  - Persistent cache implementations are now loaded on demand, enabling
    workarounds when importing transitive dependencies such as pywin32
    fails
    ([#19989](https://github.com/Azure/azure-sdk-for-python/issues/19989))




  - `InteractiveBrowserCredential` keyword argument `login_hint` enables
    pre-filling the username/email address field on the login page
    ([#19225](https://github.com/Azure/azure-sdk-for-python/issues/19225))
  - `AzureApplicationCredential`, a default credential chain for applications
    deployed to Azure
    ([#19309](https://github.com/Azure/azure-sdk-for-python/issues/19309))


  - `azure.identity.aio.ManagedIdentityCredential` is an async context manager
    that closes its underlying transport session at the end of a `with` block


  - Most credentials can use tenant ID values returned from authentication
    challenges, enabling them to request tokens from the correct tenant. This
    behavior is optional and controlled by a new keyword argument,
    `allow_multitenant_authentication`.
    ([#19300](https://github.com/Azure/azure-sdk-for-python/issues/19300))
    - When `allow_multitenant_authentication` is False, which is the default, a
      credential will raise `ClientAuthenticationError` when its configured tenant
      doesn't match the tenant specified for a token request. This may be a
      different exception than was raised by prior versions of the credential. To
      maintain the prior behavior, set environment variable
      AZURE_IDENTITY_ENABLE_LEGACY_TENANT_SELECTION to "True".
  - `CertificateCredential` and `ClientSecretCredential` support regional STS
    on Azure VMs by either keyword argument `regional_authority` or environment
    variable `AZURE_REGIONAL_AUTHORITY_NAME`. See `azure.identity.RegionalAuthority`
    for possible values.
    ([#19301](https://github.com/Azure/azure-sdk-for-python/issues/19301))
  - Upgraded minimum `azure-core` version to 1.11.0 and minimum `msal` version to
    1.12.0
  - After IMDS authentication fails, `ManagedIdentityCredential` raises consistent
    error messages and uses `raise from` to propagate inner exceptions
    ([#19423](https://github.com/Azure/azure-sdk-for-python/pull/19423))


  Beginning with this release, this library requires Python 2.7 or 3.6+.


  - `VisualStudioCodeCredential` gets its default tenant and authority
    configuration from VS Code user settings
    ([#14808](https://github.com/Azure/azure-sdk-for-python/issues/14808))


  This is the last version to support Python 3.5. The next version will require
  Python 2.7 or 3.6+.


  - `AzurePowerShellCredential` authenticates as the identity logged in to Azure
    PowerShell. This credential is part of `DefaultAzureCredential` by default
    but can be disabled by a keyword argument:
    `DefaultAzureCredential(exclude_powershell_credential=True)`
    ([#17341](https://github.com/Azure/azure-sdk-for-python/issues/17341))


  - `AzureCliCredential` raises `CredentialUnavailableError` when the CLI times out,
    and kills timed out subprocesses
  - Reduced retry delay for `ManagedIdentityCredential` on Azure VMs



  > These changes do not impact the API of stable versions such as 1.5.0.
  > Only code written against a beta version such as 1.6.0b1 may be affected.
  - Removed property `AuthenticationRequiredError.error_details`


  - Credentials consistently retry token requests after connection failures, or
    when instructed to by a Retry-After header
  - ManagedIdentityCredential caches tokens correctly


  - `InteractiveBrowserCredential` functions in more WSL environments
    ([#17615](https://github.com/Azure/azure-sdk-for-python/issues/17615))



  > These changes do not impact the API of stable versions such as 1.5.0.
  > Only code written against a beta version such as 1.6.0b1 may be affected.
  - Renamed `CertificateCredential` keyword argument `certificate_bytes` to
    `certificate_data`
  - Credentials accepting keyword arguments `allow_unencrypted_cache` and
    `enable_persistent_cache` to configure persistent caching accept a
    `cache_persistence_options` argument instead whose value should be an
    instance of `TokenCachePersistenceOptions`. For example:
    ```
    
    DeviceCodeCredential(enable_persistent_cache=True, allow_unencrypted_cache=True)

    
    cache_options = TokenCachePersistenceOptions(allow_unencrypted_storage=True)
    DeviceCodeCredential(cache_persistence_options=cache_options)
    ```

    See the documentation and samples for more details.


  - New class `TokenCachePersistenceOptions` configures persistent caching
  - The `AuthenticationRequiredError.claims` property provides any additional
    claims required by a user credential's `authenticate()` method



  - Raised minimum msal version to 1.7.0
  - Raised minimum six version to 1.12.0


  - `InteractiveBrowserCredential` uses PKCE internally to protect authorization
    codes
  - `CertificateCredential` can load a certificate from bytes instead of a file
    path. To provide a certificate as bytes, use the keyword argument
    `certificate_bytes` instead of `certificate_path`, for example:
    `CertificateCredential(tenant_id, client_id, certificate_bytes=cert_bytes)`
    ([#14055](https://github.com/Azure/azure-sdk-for-python/issues/14055))
  - User credentials support Continuous Access Evaluation (CAE)
  - Application authentication APIs from 1.5.0b2


  - `ManagedIdentityCredential` correctly parses responses from the current
    (preview) version of Azure ML managed identity
    ([#15361](https://github.com/Azure/azure-sdk-for-python/issues/15361))



  - Renamed optional `CertificateCredential` keyword argument `send_certificate`
    (added in 1.5.0b1) to `send_certificate_chain`
  - Removed user authentication APIs added in prior betas. These will be
    reintroduced in 1.6.0b1. Passing the keyword arguments below
    generally won't cause a runtime error, but the arguments have no effect.
    ([#14601](https://github.com/Azure/azure-sdk-for-python/issues/14601))
    - Removed `authenticate` method from `DeviceCodeCredential`,
      `InteractiveBrowserCredential`, and `UsernamePasswordCredential`
    - Removed `allow_unencrypted_cache` and `enable_persistent_cache` keyword
      arguments from `CertificateCredential`, `ClientSecretCredential`,
      `DeviceCodeCredential`, `InteractiveBrowserCredential`, and
      `UsernamePasswordCredential`
    - Removed `disable_automatic_authentication` keyword argument from
      `DeviceCodeCredential` and `InteractiveBrowserCredential`
    - Removed `allow_unencrypted_cache` keyword argument from
      `SharedTokenCacheCredential`
    - Removed classes `AuthenticationRecord` and `AuthenticationRequiredError`
  - Removed `identity_config` keyword argument from `ManagedIdentityCredential`
    (was added in 1.5.0b1)


  - `DeviceCodeCredential` parameter `client_id` is now optional. When not
     provided, the credential will authenticate users to an Azure development
     application.
     ([#14354](https://github.com/Azure/azure-sdk-for-python/issues/14354))
  - Credentials raise `ValueError` when constructed with tenant IDs containing
    invalid characters
    ([#14821](https://github.com/Azure/azure-sdk-for-python/issues/14821))
  - Raised minimum msal version to 1.6.0


  - `ManagedIdentityCredential` supports Service Fabric
    ([#12705](https://github.com/Azure/azure-sdk-for-python/issues/12705))
    and Azure Arc
    ([#12702](https://github.com/Azure/azure-sdk-for-python/issues/12702))


  - Prevent `VisualStudioCodeCredential` using invalid authentication data when
    no user is signed in to Visual Studio Code
    ([#14438](https://github.com/Azure/azure-sdk-for-python/issues/14438))
  - `ManagedIdentityCredential` uses the API version supported by Azure Functions
    on Linux consumption hosting plans
    ([#14670](https://github.com/Azure/azure-sdk-for-python/issues/14670))
  - `InteractiveBrowserCredential.get_token()` raises a clearer error message when
    it times out waiting for a user to authenticate on Python 2.7
    ([#14773](https://github.com/Azure/azure-sdk-for-python/pull/14773))



  - `AzureCliCredential.get_token` correctly sets token expiration time,
    preventing clients from using expired tokens
    ([#14345](https://github.com/Azure/azure-sdk-for-python/issues/14345))


  - Adopted msal-extensions 0.3.0
  ([#13107](https://github.com/Azure/azure-sdk-for-python/issues/13107))



  - `AzureCliCredential.get_token` correctly sets token expiration time,
    preventing clients from using expired tokens
    ([#14345](https://github.com/Azure/azure-sdk-for-python/issues/14345))



  - Application authentication APIs from 1.4.0b7
  - `ManagedIdentityCredential` supports the latest version of App Service
    ([#11346](https://github.com/Azure/azure-sdk-for-python/issues/11346))
  - `DefaultAzureCredential` allows specifying the client ID of a user-assigned
    managed identity via keyword argument `managed_identity_client_id`
    ([#12991](https://github.com/Azure/azure-sdk-for-python/issues/12991))
  - `CertificateCredential` supports Subject Name/Issuer authentication when
    created with `send_certificate=True`. The async `CertificateCredential`
    (`azure.identity.aio.CertificateCredential`) will support this in a
    future version.
    ([#10816](https://github.com/Azure/azure-sdk-for-python/issues/10816))
  - Credentials in `azure.identity` support ADFS authorities, excepting
    `VisualStudioCodeCredential`. To configure a credential for this, configure
    the credential with `authority` and `tenant_id="adfs"` keyword arguments, for
    example
    `ClientSecretCredential(authority="<your ADFS URI>", tenant_id="adfs")`.
    Async credentials (those in `azure.identity.aio`) will support ADFS in a
    future release.
    ([#12696](https://github.com/Azure/azure-sdk-for-python/issues/12696))
  - `InteractiveBrowserCredential` keyword argument `redirect_uri` enables
    authentication with a user-specified application having a custom redirect URI
    ([#13344](https://github.com/Azure/azure-sdk-for-python/issues/13344))


  - Removed `authentication_record` keyword argument from the async
    `SharedTokenCacheCredential`, i.e. `azure.identity.aio.SharedTokenCacheCredential`



  - `DefaultAzureCredential` uses the value of environment variable
  `AZURE_CLIENT_ID` to configure a user-assigned managed identity.
  ([#10931](https://github.com/Azure/azure-sdk-for-python/issues/10931))


  - Renamed `VSCodeCredential` to `VisualStudioCodeCredential`
  - Removed application authentication APIs added in 1.4.0 beta versions. These
    will be reintroduced in 1.5.0b1. Passing the keyword arguments below
    generally won't cause a runtime error, but the arguments have no effect.
    - Removed `authenticate` method from `DeviceCodeCredential`,
      `InteractiveBrowserCredential`, and `UsernamePasswordCredential`
    - Removed `allow_unencrypted_cache` and `enable_persistent_cache` keyword
      arguments from `CertificateCredential`, `ClientSecretCredential`,
      `DeviceCodeCredential`, `InteractiveBrowserCredential`, and
      `UsernamePasswordCredential`
    - Removed `disable_automatic_authentication` keyword argument from
      `DeviceCodeCredential` and `InteractiveBrowserCredential`
    - Removed `allow_unencrypted_cache` keyword argument from
      `SharedTokenCacheCredential`
    - Removed classes `AuthenticationRecord` and `AuthenticationRequiredError`
    - Removed `identity_config` keyword argument from `ManagedIdentityCredential`


  - `DefaultAzureCredential` has a new optional keyword argument,
  `visual_studio_code_tenant_id`, which sets the tenant the credential should
  authenticate in when authenticating as the Azure user signed in to Visual
  Studio Code.
  - Renamed `AuthenticationRecord.deserialize` positional parameter `json_string`
  to `data`.



  - `AzureCliCredential` no longer raises an exception due to unexpected output
    from the CLI when run by PyCharm (thanks @NVolcz)
    ([#11362](https://github.com/Azure/azure-sdk-for-python/pull/11362))
  - Upgraded minimum `msal` version to 1.3.0
  - The async `AzureCliCredential` correctly invokes `/bin/sh`
    ([#12048](https://github.com/Azure/azure-sdk-for-python/issues/12048))


  - Prevent an error on importing `AzureCliCredential` on Windows caused by a bug
    in old versions of Python 3.6 (this bug was fixed in Python 3.6.5).
    ([#12014](https://github.com/Azure/azure-sdk-for-python/issues/12014))
  - `SharedTokenCacheCredential.get_token` raises `ValueError` instead of
    `ClientAuthenticationError` when called with no scopes.
    ([#11553](https://github.com/Azure/azure-sdk-for-python/issues/11553))


  - `ManagedIdentityCredential` can configure a user-assigned identity using any
    identifier supported by the current hosting environment. To specify an
    identity by its client ID, continue using the `client_id` argument. To
    specify an identity by any other ID, use the `identity_config` argument,
    for example: `ManagedIdentityCredential(identity_config={"object_id": ".."})`
    ([#10989](https://github.com/Azure/azure-sdk-for-python/issues/10989))
  - `CertificateCredential` and `ClientSecretCredential` can optionally store
    access tokens they acquire in a persistent cache. To enable this, construct
    the credential with `enable_persistent_cache=True`. On Linux, the persistent
    cache requires libsecret and `pygobject`. If these are unavailable or
    unusable (e.g. in an SSH session), loading the persistent cache will raise an
    error. You may optionally configure the credential to fall back to an
    unencrypted cache by constructing it with keyword argument
    `allow_unencrypted_cache=True`.
    ([#11347](https://github.com/Azure/azure-sdk-for-python/issues/11347))
  - `AzureCliCredential` raises `CredentialUnavailableError` when no user is
    logged in to the Azure CLI.
    ([#11819](https://github.com/Azure/azure-sdk-for-python/issues/11819))
  - `AzureCliCredential` and `VSCodeCredential`, which enable authenticating as
    the identity signed in to the Azure CLI and Visual Studio Code, respectively,
    can be imported from `azure.identity` and `azure.identity.aio`.
  - `azure.identity.aio.AuthorizationCodeCredential.get_token()` no longer accepts
    optional keyword arguments `executor` or `loop`. Prior versions of the method
    didn't use these correctly, provoking exceptions, and internal changes in this
    version have made them obsolete.
  - `InteractiveBrowserCredential` raises `CredentialUnavailableError` when it
    can't start an HTTP server on `localhost`.
    ([#11665](https://github.com/Azure/azure-sdk-for-python/pull/11665))
  - When constructing `DefaultAzureCredential`, you can now configure a tenant ID
    for `InteractiveBrowserCredential`. When none is specified, the credential
    authenticates users in their home tenants. To specify a different tenant, use
    the keyword argument `interactive_browser_tenant_id`, or set the environment
    variable `AZURE_TENANT_ID`.
    ([#11548](https://github.com/Azure/azure-sdk-for-python/issues/11548))
  - `SharedTokenCacheCredential` can be initialized with an `AuthenticationRecord`
    provided by a user credential.
    ([#11448](https://github.com/Azure/azure-sdk-for-python/issues/11448))
  - The user authentication API added to `DeviceCodeCredential` and
    `InteractiveBrowserCredential` in 1.4.0b3 is available on
    `UsernamePasswordCredential` as well.
    ([#11449](https://github.com/Azure/azure-sdk-for-python/issues/11449))
  - The optional persistent cache for `DeviceCodeCredential` and
    `InteractiveBrowserCredential` added in 1.4.0b3 is now available on Linux and
    macOS as well as Windows.
    ([#11134](https://github.com/Azure/azure-sdk-for-python/issues/11134))
    - On Linux, the persistent cache requires libsecret and `pygobject`. If these
      are unavailable, or libsecret is unusable (e.g. in an SSH session), loading
      the persistent cache will raise an error. You may optionally configure the
      credential to fall back to an unencrypted cache by constructing it with
      keyword argument `allow_unencrypted_cache=True`.


  - `EnvironmentCredential` correctly initializes `UsernamePasswordCredential`
  with the value of `AZURE_TENANT_ID`
  ([#11127](https://github.com/Azure/azure-sdk-for-python/pull/11127))
  - Values for the constructor keyword argument `authority` and
  `AZURE_AUTHORITY_HOST` may optionally specify an "https" scheme. For example,
  "https://login.microsoftonline.us" and "login.microsoftonline.us" are both valid.
  ([#10819](https://github.com/Azure/azure-sdk-for-python/issues/10819))
  - First preview of new API for authenticating users with `DeviceCodeCredential`
    and `InteractiveBrowserCredential`
    ([#10612](https://github.com/Azure/azure-sdk-for-python/pull/10612))
    - new method `authenticate` interactively authenticates a user, returns a
      serializable `AuthenticationRecord`
    - new constructor keyword arguments
      - `authentication_record` enables initializing a credential with an
        `AuthenticationRecord` from a prior authentication
      - `disable_automatic_authentication=True` configures the credential to raise
      `AuthenticationRequiredError` when interactive authentication is necessary
      to acquire a token rather than immediately begin that authentication
      - `enable_persistent_cache=True` configures these credentials to use a
      persistent cache on supported platforms (in this release, Windows only).
      By default they cache in memory only.
  - Now `DefaultAzureCredential` can authenticate with the identity signed in to
  Visual Studio Code's Azure extension.
  ([#10472](https://github.com/Azure/azure-sdk-for-python/issues/10472))


  - After an instance of `DefaultAzureCredential` successfully authenticates, it
  uses the same authentication method for every subsequent token request. This
  makes subsequent requests more efficient, and prevents unexpected changes of
  authentication method.
  ([#10349](https://github.com/Azure/azure-sdk-for-python/pull/10349))
  - All `get_token` methods consistently require at least one scope argument,
  raising an error when none is passed. Although `get_token()` may sometimes
  have succeeded in prior versions, it couldn't do so consistently because its
  behavior was undefined, and dependened on the credential's type and internal
  state. ([#10243](https://github.com/Azure/azure-sdk-for-python/issues/10243))
  - `SharedTokenCacheCredential` raises `CredentialUnavailableError` when the
  cache is available but contains ambiguous or insufficient information. This
  causes `ChainedTokenCredential` to correctly try the next credential in the
  chain. ([#10631](https://github.com/Azure/azure-sdk-for-python/issues/10631))
  - The host of the Active Directory endpoint credentials should use can be set
  in the environment variable `AZURE_AUTHORITY_HOST`. See
  `azure.identity.KnownAuthorities` for a list of common values.
  ([#8094](https://github.com/Azure/azure-sdk-for-python/issues/8094))




  - `ManagedIdentityCredential` raises `CredentialUnavailableError` when no
  identity is configured for an IMDS endpoint. This causes
  `ChainedTokenCredential` to correctly try the next credential in the chain.
  ([#10488](https://github.com/Azure/azure-sdk-for-python/issues/10488))



  - `DefaultAzureCredential` can now authenticate using the identity logged in to
  the Azure CLI, unless explicitly disabled with a keyword argument:
  `DefaultAzureCredential(exclude_cli_credential=True)`
  ([#10092](https://github.com/Azure/azure-sdk-for-python/pull/10092))




  - Correctly parse token expiration time on Windows App Service
  ([#9393](https://github.com/Azure/azure-sdk-for-python/issues/9393))
  - Credentials raise `CredentialUnavailableError` when they can't attempt to
  authenticate due to missing data or state
  ([#9372](https://github.com/Azure/azure-sdk-for-python/pull/9372))
  - `CertificateCredential` supports password-protected private keys
  ([#9434](https://github.com/Azure/azure-sdk-for-python/pull/9434))




  - All credential pipelines include `ProxyPolicy`
  ([#8945](https://github.com/Azure/azure-sdk-for-python/pull/8945))
  - Async credentials are async context managers and have an async `close` method
  ([#9090](https://github.com/Azure/azure-sdk-for-python/pull/9090))




  - Constructing `DefaultAzureCredential` no longer raises `ImportError` on Python
  3.8 on Windows ([8294](https://github.com/Azure/azure-sdk-for-python/pull/8294))
  - `InteractiveBrowserCredential` raises when unable to open a web browser
  ([8465](https://github.com/Azure/azure-sdk-for-python/pull/8465))
  - `InteractiveBrowserCredential` prompts for account selection
  ([8470](https://github.com/Azure/azure-sdk-for-python/pull/8470))
  - The credentials composing `DefaultAzureCredential` are configurable by keyword
  arguments ([8514](https://github.com/Azure/azure-sdk-for-python/pull/8514))
  - `SharedTokenCacheCredential` accepts an optional `tenant_id` keyword argument
  ([8689](https://github.com/Azure/azure-sdk-for-python/pull/8689))




  - `ClientCertificateCredential` uses application and tenant IDs correctly
  ([8315](https://github.com/Azure/azure-sdk-for-python/pull/8315))
  - `InteractiveBrowserCredential` properly caches tokens
  ([8352](https://github.com/Azure/azure-sdk-for-python/pull/8352))
  - Adopted msal 1.0.0 and msal-extensions 0.1.3
  ([8359](https://github.com/Azure/azure-sdk-for-python/pull/8359))




  - Async credentials now default to [`aiohttp`](https://pypi.org/project/aiohttp/)
  for transport but the library does not require it as a dependency because the
  async API is optional. To use async credentials, please install
  [`aiohttp`](https://pypi.org/project/aiohttp/) or see
  [azure-core documentation](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/core/azure-core/README.md#transport)
  for information about customizing the transport.
  - Renamed `ClientSecretCredential` parameter "`secret`" to "`client_secret`"
  - All credentials with `tenant_id` and `client_id` positional parameters now accept them in that order
  - Changes to `InteractiveBrowserCredential` parameters
    - positional parameter `client_id` is now an optional keyword argument. If no value is provided,
  the Azure CLI's client ID will be used.
    - Optional keyword argument `tenant` renamed `tenant_id`
  - Changes to `DeviceCodeCredential`
    - optional positional parameter `prompt_callback` is now a keyword argument
    - `prompt_callback`'s third argument is now a `datetime` representing the
    expiration time of the device code
    - optional keyword argument `tenant` renamed `tenant_id`
  - Changes to `ManagedIdentityCredential`
    - now accepts no positional arguments, and only one keyword argument:
    `client_id`
    - transport configuration is now done through keyword arguments as
    described in
    [`azure-core` documentation](https://github.com/Azure/azure-sdk-for-python/blob/azure-identity_1.0.0/sdk/core/azure-core/CLIENT_LIBRARY_DEVELOPER.md#transport)


  - Authenticating with a single sign-on shared with other Microsoft applications
  only requires a username when multiple users have signed in
  ([#8095](https://github.com/Azure/azure-sdk-for-python/pull/8095))
  - `DefaultAzureCredential` accepts an `authority` keyword argument, enabling
  its use in national clouds
  ([#8154](https://github.com/Azure/azure-sdk-for-python/pull/8154))


  - Adopted [`msal_extensions`](https://pypi.org/project/msal-extensions/) 0.1.2
  - Constrained [`msal`](https://pypi.org/project/msal/) requirement to >=0.4.1,
  <1.0.0




  - `AuthorizationCodeCredential` authenticates with a previously obtained
  authorization code. See Azure Active Directory's
  [authorization code documentation](https://docs.microsoft.com/azure/active-directory/develop/v2-oauth2-auth-code-flow)
  for more information about this authentication flow.
  - Multi-cloud support: client credentials accept the authority of an Azure Active
  Directory authentication endpoint as an `authority` keyword argument. Known
  authorities are defined in `azure.identity.KnownAuthorities`. The default
  authority is for Azure Public Cloud, `login.microsoftonline.com`
  (`KnownAuthorities.AZURE_PUBLIC_CLOUD`). An application running in Azure
  Government would use `KnownAuthorities.AZURE_GOVERNMENT` instead:
  >```
  >from azure.identity import DefaultAzureCredential, KnownAuthorities
  >credential = DefaultAzureCredential(authority=KnownAuthorities.AZURE_GOVERNMENT)
  >```


  - Removed `client_secret` parameter from `InteractiveBrowserCredential`


  - `UsernamePasswordCredential` correctly handles environment configuration with
  no tenant information ([#7260](https://github.com/Azure/azure-sdk-for-python/pull/7260))
  - user realm discovery requests are sent through credential pipelines
  ([#7260](https://github.com/Azure/azure-sdk-for-python/pull/7260))




  - `SharedTokenCacheCredential` authenticates with tokens stored in a local
  cache shared by Microsoft applications. This enables Azure SDK clients to
  authenticate silently after you've signed in to Visual Studio 2019, for
  example. `DefaultAzureCredential` includes `SharedTokenCacheCredential` when
  the shared cache is available, and environment variable `AZURE_USERNAME`
  is set. See the
  [README](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/identity/azure-identity/README.md#single-sign-on)
  for more information.


  - New dependency: [`msal-extensions`](https://pypi.org/project/msal-extensions/)
  0.1.1



  - Removed `azure.core.Configuration` from the public API in preparation for a
  revamped configuration API. Static `create_config` methods have been renamed
  `_create_config`, and will be removed in a future release.


  - Adopted [azure-core](https://pypi.org/project/azure-core/) 1.0.0b2
    - If you later want to revert to a version requiring azure-core 1.0.0b1,
    of this or another Azure SDK library, you must explicitly install azure-core
    1.0.0b1 as well. For example:
    `pip install azure-core==1.0.0b1 azure-identity==1.0.0b1`
  - Adopted [MSAL](https://pypi.org/project/msal/) 0.4.1
  - New dependency for Python 2.7: [mock](https://pypi.org/project/mock/)


  - Added credentials for authenticating users:
   - `DeviceCodeCredential`
   - `InteractiveBrowserCredential`
   - `UsernamePasswordCredential`
    - async versions of these credentials will be added in a future release


  Version 1.0.0b1 is the first preview of our efforts to create a user-friendly
  and Pythonic authentication API for Azure SDK client libraries. For more
  information about preview releases of other Azure SDK libraries, please visit
  https://aka.ms/azure-sdk-preview1-python.

  This release supports service principal and managed identity authentication.
  See the
  [documentation](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/identity/azure-identity/README.md)
  for more details. User authentication will be added in an upcoming preview
  release.

  This release supports only global Azure Active Directory tenants, i.e. those
  using the https://login.microsoftonline.com authentication endpoint.


pkgId: 6a84b7378f8bed29298c4a28aaa18415a71f5752cc72f73d12f6fc64ec5c9411
name: python-azure-mgmt-common
arch: src
version: 0.20.0
epoch: 0
release: 1
summary: Microsoft Azure Resource Management Client Library for Python (Common)
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: Apache License 2.0
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-ef754d9f-9f97-4073-9a6c-b9de1fbbfcb5
location_href: 00014174-python-azure-mgmt-common/python-azure-mgmt-common-0.20.0-1.src.rpm
checksum_type: sha256
description:
  This is the Microsoft Azure Resource Management common code.
  This package provides shared code by the Azure Management packages.
  If you are looking to install the Azure client libraries, see the
  `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


pkgId: 96827c5e1fbc7cad7973ced198e2374accd8cba1c5264045417bb6474e780950
name: python-azure-mgmt-core
arch: src
version: 1.4.0
epoch: 0
release: 1
summary: Microsoft Azure Management Core Library for Python
url: https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/core/azure-mgmt-core
rpm_license: MIT License
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-a0e454f3-53c7-43a2-b1f4-6cc781292140
location_href: 00009108-python-azure-mgmt-core/python-azure-mgmt-core-1.4.0-1.src.rpm
checksum_type: sha256
description:
  Azure management core library defines extensions to Azure Core that are specific to ARM (Azure Resource Management) needed when you use client libraries.

  As an end user, you don't need to manually install azure-mgmt-core because it will be installed automatically when you install other SDKs.

  [Source code](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/core/azure-mgmt-core/) | [Package (Pypi)][package] | [API reference documentation](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/core/azure-mgmt-core/)



  This project welcomes contributions and suggestions. Most contributions require
  you to agree to a Contributor License Agreement (CLA) declaring that you have
  the right to, and actually do, grant us the rights to use your contribution.
  For details, visit [https://cla.microsoft.com](https://cla.microsoft.com).

  When you submit a pull request, a CLA-bot will automatically determine whether
  you need to provide a CLA and decorate the PR appropriately (e.g., label,
  comment). Simply follow the instructions provided by the bot. You will only
  need to do this once across all repos using our CLA.

  This project has adopted the
  [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).
  For more information, see the
  [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/)
  or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any
  additional questions or comments.

  <!-- LINKS -->
  [package]: https://pypi.org/project/azure-mgmt-core/







  - Added AuxiliaryAuthenticationPolicy



  - Rename "DEFAULT_HEADERS_WHITELIST" to "DEFAULT_HEADERS_ALLOWLIST". Added a backward compatible alias.





  - Updated mindep about `azure-core` from `1.23.0` to `1.24.0`





  - Updated mindep about `azure-core` from `1.15.0` to `1.23.0`





  - Support CAE





  - Updated required `azure-core` version





  - Updated required `azure-core` version





  - ARMChallengeAuthenticationPolicy supports bearer token authorization and CAE challenges





  - Fixed bug to allow polling for PATCH long-running-operation.





  - Fixed bug to allow polling in the case of parameterized endpoints with relative polling urls  #14097





  - The `allowed_header_names` property of ARMHttpLoggingPolicy now includes the management plane specific
  allowed headers  #12218



  - Added `http_logging_policy` property on the `Configuration` object, allowing users to individually
  set the http logging policy of the config  #12218





  - Info logger now logs ARM throttling information  #10940






  - Internal refactoring of polling on top of azure-core 1.4.0



  - Preview 1 release


pkgId: f86b4333802fc33f8e4c5087d57e35fc6fbf468ced84be9ae73e0740524750b8
name: python-azure-mgmt-datalake-nspkg
arch: src
version: 3.0.1
epoch: 0
release: 1
summary: Microsoft Azure Data Lake Management Namespace Package [Internal]
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-b3f581cf-ff83-481d-925c-29bf58e5cd3c
location_href: 00009260-python-azure-mgmt-datalake-nspkg/python-azure-mgmt-datalake-nspkg-3.0.1-1.src.rpm
checksum_type: sha256
description:
  This is the Microsoft Azure Data Lake Management namespace package.
  This package is not intended to be installed directly by the end user.
  Since version 3.0, this is Python 2 package only, Python 3.x SDKs will use `PEP420 <https://www.python.org/dev/peps/pep-0420/>`__ as namespace package strategy.
  To avoid issues with package servers that does not support `python_requires`, a Python 3 package is installed but is empty.
  It provides the necessary files for other packages to extend the azure.mgmt.datalake namespace.
  If you are looking to install the Azure client libraries, see the
  `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


pkgId: 22c3cd1c5dd162a7ba2b4fcfee4569eb3cbd42840e1da2aaa69a50bae3b8d3aa
name: python-azure-mgmt-nspkg
arch: src
version: 3.0.2
epoch: 0
release: 1
summary: Microsoft Azure Resource Management Namespace Package [Internal]
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-57589b76-8306-487d-a36d-3df72befefe9
location_href: 00009216-python-azure-mgmt-nspkg/python-azure-mgmt-nspkg-3.0.2-1.src.rpm
checksum_type: sha256
description:
  This is the Microsoft Azure Management namespace package.
  This package is not intended to be installed directly by the end user.
  Since version 3.0, this is Python 2 package only, Python 3.x SDKs will use `PEP420 <https://www.python.org/dev/peps/pep-0420/>`__ as namespace package strategy.
  To avoid issues with package servers that does not support `python_requires`, a Python 3 package is installed but is empty.
  It provides the necessary files for other packages to extend the azure.mgmt namespace.
  If you are looking to install the Azure client libraries, see the
  `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


pkgId: 5399546f8eb8347de07a983e131ae6a3fff83c7f1298c840789f711a6d7a31e4
name: python-azure-multiapi-storage
arch: src
version: 1.0.0
epoch: 0
release: 1
summary: Microsoft Azure Storage Client Library for Python with multi API version support.
url: https://github.com/Azure/azure-multiapi-storage-python
rpm_license: MIT
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-6b8f02ce-36e6-4e2d-8c5b-1921dbaa5672
location_href: 00010091-python-azure-multiapi-storage/python-azure-multiapi-storage-1.0.0-1.src.rpm
checksum_type: sha256
description:
  Handles multi-API versions of Azure Storage Data Plane originally from https://github.com/Azure/azure-storage-python.
  **NOTE:**
  - This is not an official Azure Storage SDK.
  - It is used by https://github.com/Azure/azure-cli to support multiple API versions.
  - The official Azure Storage SDK is at https://github.com/Azure/azure-storage-python.
  - The official Azure CosmosDB Table SDK is at https://github.com/Azure/azure-cosmosdb-python/tree/master/azure-cosmosdb-table.
  - **Please file issues at the appropriate repository above.**


pkgId: a3ff463158f94bdf95b509aa80761fa04d2361d6c19f3ece7404456506dfce5e
name: python-azure-nspkg
arch: src
version: 3.0.2
epoch: 0
release: 1
summary: Microsoft Azure Namespace Package [Internal]
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-644e4e62-2b0c-4ca5-a89a-b0b7dbed4654
location_href: 00009101-python-azure-nspkg/python-azure-nspkg-3.0.2-1.src.rpm
checksum_type: sha256
description:
  This is the Microsoft Azure namespace package.
  This package is not intended to be installed directly by the end user.
  Since version 3.0, this is Python 2 package only, Python 3.x SDKs will use `PEP420 <https://www.python.org/dev/peps/pep-0420/>`__ as namespace package strategy.
  To avoid issues with package servers that does not support `python_requires`, a Python 3 package is installed but is empty.
  It provides the necessary files for other packages to extend the azure namespace.
  If you are looking to install the Azure client libraries, see the
  `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


pkgId: eb096c0c20a859c06f34978d03318c8d20412843b511b1d0a3d39b59974388e7
name: python-azure-servicemanagement-legacy
arch: src
version: 0.20.7
epoch: 0
release: 1
summary: Microsoft Azure Legacy Service Management Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: Apache License 2.0
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-2e2d1da4-6a3c-4d31-9c8e-5086feb98b12
checksum_type: sha256
description:
  This is the Microsoft Azure Service Management Legacy Client Library.

  All packages in this bundle have been tested with Python 2.7, 3.3, 3.4 and 3.5.

  For the newer Azure Resource Management (ARM) libraries, see [azure-mgmt](https://pypi.python.org/pypi/azure-mgmt).

  For a more complete set of Azure libraries, see the [azure](https://pypi.python.org/pypi/azure) bundle package.




  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  ```shell
  pip freeze
  ```

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  ```shell
  pip uninstall azure
  ```



  -  Cloud Service management (Virtual Machines, VM Images, OS Images)
  -  Storage accounts management
  -  Scheduler management
  -  Service Bus management
  -  Affinity Group management
  -  Management certificate management
  -  Web Apps (Website) management






  To install via the Python Package Index (PyPI), type:

  ```shell
  pip install azure-servicemanagement-legacy
  ```




  To get the source code of the SDK via **git** type:

  ```shell
  git clone https://github.com/Azure/azure-sdk-for-python.git
  cd azure-sdk-for-python
  cd azure-servicemanagement-legacy
  python setup.py install
  ```








  You will need two certificates, one for the server (a .cer file) and one for
  the client (a .pem file).



  You can download your Azure publish settings file and use the certificate that
  is embedded in that file to create the client certificate. The server
  certificate already exists, so you won't need to upload one.

  To do this, download your [publish settings](http://go.microsoft.com/fwlink/?LinkID=301775)
  then use this code to create the .pem file.

  ```python
  from azure.servicemanagement import get_certificate_from_publish_settings

  subscription_id = get_certificate_from_publish_settings(
      publish_settings_path='MyAccount.PublishSettings',
      path_to_write_certificate='mycert.pem',
      subscription_id='00000000-0000-0000-0000-000000000000',
  )
  ```

  The subscription id parameter is optional. If there are more than one
  subscription in the publish settings, the first one will be used.



  To create the .pem file using [OpenSSL](http://www.openssl.org), execute this:

  ```shell
  openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout mycert.pem -out mycert.pem
  ```
  To create the .cer certificate, execute this:

  ```shell
  openssl x509 -inform pem -in mycert.pem -outform der -out mycert.cer
  ```

  After you have created the certificate, you will need to upload the .cer
  file to Microsoft Azure via the "Upload" action of the "Settings" tab of
  the [management portal](http://manage.windowsazure.com).






  To initialize the management service, pass in your subscription id and
  the path to the .pem file.

  ```python
  from azure.servicemanagement import ServiceManagementService
  subscription_id = '00000000-0000-0000-0000-000000000000'
  cert_file = 'mycert.pem'
  sms = ServiceManagementService(subscription_id, cert_file)
  ```



  ```python
  locations = sms.list_locations()
  for location in locations:
      print(location.name)
  ```



  To create a storage service, you need a name for the service (between 3
  and 24 lowercase characters and unique within Microsoft Azure), a label
  (up to 100 characters, automatically encoded to base-64), and either a
  location or an affinity group.

  ```python
  name = "mystorageservice"
  desc = name
  label = name
  location = 'West US'

  result = sms.create_storage_account(name, desc, label, location=location)
  sms.wait_for_operation_status(result.request_id, timeout=30)
  ```



  A cloud service is also known as a hosted service (from earlier versions
  of Microsoft Azure). The **create\_hosted\_service** method allows you
  to create a new hosted service by providing a hosted service name (which
  must be unique in Microsoft Azure), a label (automatically encoded to
  base-64), and the location *or* the affinity group for your service.

  ```python
  name = "myhostedservice"
  desc = name
  label = name
  location = 'West US'

  result = sms.create_hosted_service(name, label, desc, location=location)
  sms.wait_for_operation_status(result.request_id, timeout=30)
  ```



  To create a virtual machine, you first need to create a cloud service.
  Then create the virtual machine deployment using the
  create_virtual_machine_deployment method.

  ```python
  from azure.servicemanagement import LinuxConfigurationSet, OSVirtualHardDisk

  name = "myhostedservice"


  image_name = 'OpenLogic__OpenLogic-CentOS-62-20120531-en-us-30GB.vhd'



  media_link = 'url_to_target_storage_blob_for_vm_hd'



  linux_config = LinuxConfigurationSet(
      'myhostname',
      'myuser',
      'mypassword',
      disable_ssh_password_authentication=True,
  )

  os_hd = OSVirtualHardDisk(image_name, media_link)

  result = sms.create_virtual_machine_deployment(
      service_name=name,
      deployment_name=name,
      deployment_slot='production',
      label=name,
      role_name=name,
      system_config=linux_config,
      os_virtual_hard_disk=os_hd,
      role_size='Small',
  )
  sms.wait_for_operation_status(result.request_id, timeout=600)
  ```




  Be sure to check out the Microsoft Azure [Developer Forums on Stack
  Overflow](http://go.microsoft.com/fwlink/?LinkId=234489) if you have
  trouble with the provided code.




  If you would like to become an active contributor to this project please
  follow the instructions provided in [Microsoft Azure Projects
  Contribution
  Guidelines](http://azure.github.io/guidelines.html).

  If you encounter any bugs with the library please file an issue in the
  [Issues](https://github.com/Azure/azure-sdk-for-python/issues)
  section of the project.




  [Microsoft Azure Python Developer
  Center](http://azure.microsoft.com/en-us/develop/python/)


  ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-python%2Fazure-servicemanagement-legacy%2FREADME.png)

location_href:
  00009433-python-azure-servicemanagement-legacy/python-azure-servicemanagement-legacy-0.20.7-1.src.rpm


pkgId: ae294c337e8e0447f8ab542b3ce65d0d6a6da5c6effd7386c4d0aaa41710b25f
name: python-azure-servicemanagement-legacy-help
arch: noarch
version: 0.20.7
epoch: 0
release: 1
summary: Development documents and examples for azure-servicemanagement-legacy
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: Apache License 2.0
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-2e2d1da4-6a3c-4d31-9c8e-5086feb98b12
rpm_sourcerpm: python-azure-servicemanagement-legacy-0.20.7-1.src.rpm
checksum_type: sha256
description:
  This is the Microsoft Azure Service Management Legacy Client Library.

  All packages in this bundle have been tested with Python 2.7, 3.3, 3.4 and 3.5.

  For the newer Azure Resource Management (ARM) libraries, see [azure-mgmt](https://pypi.python.org/pypi/azure-mgmt).

  For a more complete set of Azure libraries, see the [azure](https://pypi.python.org/pypi/azure) bundle package.




  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  ```shell
  pip freeze
  ```

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  ```shell
  pip uninstall azure
  ```



  -  Cloud Service management (Virtual Machines, VM Images, OS Images)
  -  Storage accounts management
  -  Scheduler management
  -  Service Bus management
  -  Affinity Group management
  -  Management certificate management
  -  Web Apps (Website) management






  To install via the Python Package Index (PyPI), type:

  ```shell
  pip install azure-servicemanagement-legacy
  ```




  To get the source code of the SDK via **git** type:

  ```shell
  git clone https://github.com/Azure/azure-sdk-for-python.git
  cd azure-sdk-for-python
  cd azure-servicemanagement-legacy
  python setup.py install
  ```








  You will need two certificates, one for the server (a .cer file) and one for
  the client (a .pem file).



  You can download your Azure publish settings file and use the certificate that
  is embedded in that file to create the client certificate. The server
  certificate already exists, so you won't need to upload one.

  To do this, download your [publish settings](http://go.microsoft.com/fwlink/?LinkID=301775)
  then use this code to create the .pem file.

  ```python
  from azure.servicemanagement import get_certificate_from_publish_settings

  subscription_id = get_certificate_from_publish_settings(
      publish_settings_path='MyAccount.PublishSettings',
      path_to_write_certificate='mycert.pem',
      subscription_id='00000000-0000-0000-0000-000000000000',
  )
  ```

  The subscription id parameter is optional. If there are more than one
  subscription in the publish settings, the first one will be used.



  To create the .pem file using [OpenSSL](http://www.openssl.org), execute this:

  ```shell
  openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout mycert.pem -out mycert.pem
  ```
  To create the .cer certificate, execute this:

  ```shell
  openssl x509 -inform pem -in mycert.pem -outform der -out mycert.cer
  ```

  After you have created the certificate, you will need to upload the .cer
  file to Microsoft Azure via the "Upload" action of the "Settings" tab of
  the [management portal](http://manage.windowsazure.com).






  To initialize the management service, pass in your subscription id and
  the path to the .pem file.

  ```python
  from azure.servicemanagement import ServiceManagementService
  subscription_id = '00000000-0000-0000-0000-000000000000'
  cert_file = 'mycert.pem'
  sms = ServiceManagementService(subscription_id, cert_file)
  ```



  ```python
  locations = sms.list_locations()
  for location in locations:
      print(location.name)
  ```



  To create a storage service, you need a name for the service (between 3
  and 24 lowercase characters and unique within Microsoft Azure), a label
  (up to 100 characters, automatically encoded to base-64), and either a
  location or an affinity group.

  ```python
  name = "mystorageservice"
  desc = name
  label = name
  location = 'West US'

  result = sms.create_storage_account(name, desc, label, location=location)
  sms.wait_for_operation_status(result.request_id, timeout=30)
  ```



  A cloud service is also known as a hosted service (from earlier versions
  of Microsoft Azure). The **create\_hosted\_service** method allows you
  to create a new hosted service by providing a hosted service name (which
  must be unique in Microsoft Azure), a label (automatically encoded to
  base-64), and the location *or* the affinity group for your service.

  ```python
  name = "myhostedservice"
  desc = name
  label = name
  location = 'West US'

  result = sms.create_hosted_service(name, label, desc, location=location)
  sms.wait_for_operation_status(result.request_id, timeout=30)
  ```



  To create a virtual machine, you first need to create a cloud service.
  Then create the virtual machine deployment using the
  create_virtual_machine_deployment method.

  ```python
  from azure.servicemanagement import LinuxConfigurationSet, OSVirtualHardDisk

  name = "myhostedservice"


  image_name = 'OpenLogic__OpenLogic-CentOS-62-20120531-en-us-30GB.vhd'



  media_link = 'url_to_target_storage_blob_for_vm_hd'



  linux_config = LinuxConfigurationSet(
      'myhostname',
      'myuser',
      'mypassword',
      disable_ssh_password_authentication=True,
  )

  os_hd = OSVirtualHardDisk(image_name, media_link)

  result = sms.create_virtual_machine_deployment(
      service_name=name,
      deployment_name=name,
      deployment_slot='production',
      label=name,
      role_name=name,
      system_config=linux_config,
      os_virtual_hard_disk=os_hd,
      role_size='Small',
  )
  sms.wait_for_operation_status(result.request_id, timeout=600)
  ```




  Be sure to check out the Microsoft Azure [Developer Forums on Stack
  Overflow](http://go.microsoft.com/fwlink/?LinkId=234489) if you have
  trouble with the provided code.




  If you would like to become an active contributor to this project please
  follow the instructions provided in [Microsoft Azure Projects
  Contribution
  Guidelines](http://azure.github.io/guidelines.html).

  If you encounter any bugs with the library please file an issue in the
  [Issues](https://github.com/Azure/azure-sdk-for-python/issues)
  section of the project.




  [Microsoft Azure Python Developer
  Center](http://azure.microsoft.com/en-us/develop/python/)


  ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-python%2Fazure-servicemanagement-legacy%2FREADME.png)

location_href:
  00009433-python-azure-servicemanagement-legacy/python-azure-servicemanagement-legacy-help-0.20.7-1.noarch.rpm


pkgId: 8891660ebd5804aaa32ec4a3c42c98c281ed0e530387f04790713222a9b22d30
name: python-azure-storage-blob
arch: src
version: 12.15.0
epoch: 0
release: 1
summary: Microsoft Azure Blob Storage Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-blob
rpm_license: MIT License
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-e34e4c1d-38a2-4b37-acca-63613b1c62fa
location_href: 00008940-python-azure-storage-blob/python-azure-storage-blob-12.15.0-1.src.rpm
checksum_type: sha256
description:
  Azure Blob storage is Microsoft's object storage solution for the cloud. Blob storage is optimized for storing massive amounts of unstructured data, such as text or binary data.

  Blob storage is ideal for:

  * Serving images or documents directly to a browser
  * Storing files for distributed access
  * Streaming video and audio
  * Storing data for backup and restore, disaster recovery, and archiving
  * Storing data for analysis by an on-premises or Azure-hosted service

  [Source code](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-blob/azure/storage/blob) | [Package (PyPI)](https://pypi.org/project/azure-storage-blob/) | [API reference documentation](https://aka.ms/azsdk-python-storage-blob-ref) | [Product documentation](https://docs.microsoft.com/azure/storage/) | [Samples](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-blob/samples)





  * Python 3.7 or later is required to use this package. For more details, please read our page on [Azure SDK for Python version support policy](https://github.com/Azure/azure-sdk-for-python/wiki/Azure-SDKs-Python-version-support-policy).
  * You must have an [Azure subscription](https://azure.microsoft.com/free/) and an
  [Azure storage account](https://docs.microsoft.com/azure/storage/common/storage-account-overview) to use this package.


  Install the Azure Storage Blobs client library for Python with [pip](https://pypi.org/project/pip/):

  ```bash
  pip install azure-storage-blob
  ```


  If you wish to create a new storage account, you can use the
  [Azure Portal](https://docs.microsoft.com/azure/storage/common/storage-quickstart-create-account?tabs=azure-portal),
  [Azure PowerShell](https://docs.microsoft.com/azure/storage/common/storage-quickstart-create-account?tabs=azure-powershell),
  or [Azure CLI](https://docs.microsoft.com/azure/storage/common/storage-quickstart-create-account?tabs=azure-cli):

  ```bash


  az group create --name my-resource-group --location westus2


  az storage account create -n my-storage-account-name -g my-resource-group
  ```


  The Azure Storage Blobs client library for Python allows you to interact with three types of resources: the storage
  account itself, blob storage containers, and blobs. Interaction with these resources starts with an instance of a
  [client](#clients). To create a client object, you will need the storage account's blob service account URL and a
  credential that allows you to access the storage account:

  ```python
  from azure.storage.blob import BlobServiceClient

  service = BlobServiceClient(account_url="https://<my-storage-account-name>.blob.core.windows.net/", credential=credential)
  ```


  You can find the storage account's blob service URL using the
  [Azure Portal](https://docs.microsoft.com/azure/storage/common/storage-account-overview#storage-account-endpoints),
  [Azure PowerShell](https://docs.microsoft.com/powershell/module/az.storage/get-azstorageaccount),
  or [Azure CLI](https://docs.microsoft.com/cli/azure/storage/account?view=azure-cli-latest#az-storage-account-show):

  ```bash

  az storage account show -n my-storage-account-name -g my-resource-group --query "primaryEndpoints.blob"
  ```


  The `credential` parameter may be provided in a number of different forms, depending on the type of
  [authorization](https://docs.microsoft.com/azure/storage/common/storage-auth) you wish to use:
  1. To use an [Azure Active Directory (AAD) token credential](https://docs.microsoft.com/azure/storage/common/storage-auth-aad),
     provide an instance of the desired credential type obtained from the
     [azure-identity](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/identity/azure-identity#credentials) library.
     For example, [DefaultAzureCredential](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/identity/azure-identity#defaultazurecredential)
     can be used to authenticate the client.

     This requires some initial setup:
     * [Install azure-identity](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/identity/azure-identity#install-the-package)
     * [Register a new AAD application](https://docs.microsoft.com/azure/active-directory/develop/quickstart-register-app) and give permissions to access Azure Storage
     * [Grant access](https://docs.microsoft.com/azure/storage/common/storage-auth-aad-rbac-portal) to Azure Blob data with RBAC in the Azure Portal
     * Set the values of the client ID, tenant ID, and client secret of the AAD application as environment variables:
       AZURE_TENANT_ID, AZURE_CLIENT_ID, AZURE_CLIENT_SECRET

     Use the returned token credential to authenticate the client:
      ```python
          from azure.identity import DefaultAzureCredential
          from azure.storage.blob import BlobServiceClient
          token_credential = DefaultAzureCredential()

          blob_service_client = BlobServiceClient(
              account_url="https://<my_account_name>.blob.core.windows.net",
              credential=token_credential
          )
      ```

  2. To use a [shared access signature (SAS) token](https://docs.microsoft.com/azure/storage/common/storage-sas-overview),
     provide the token as a string. If your account URL includes the SAS token, omit the credential parameter.
     You can generate a SAS token from the Azure Portal under "Shared access signature" or use one of the `generate_sas()`
     functions to create a sas token for the storage account, container, or blob:

      ```python
      from datetime import datetime, timedelta
      from azure.storage.blob import BlobServiceClient, generate_account_sas, ResourceTypes, AccountSasPermissions

      sas_token = generate_account_sas(
          account_name="<storage-account-name>",
          account_key="<account-access-key>",
          resource_types=ResourceTypes(service=True),
          permission=AccountSasPermissions(read=True),
          expiry=datetime.utcnow() + timedelta(hours=1)
      )

      blob_service_client = BlobServiceClient(account_url="https://<my_account_name>.blob.core.windows.net", credential=sas_token)
      ```

  3. To use a storage account [shared key](https://docs.microsoft.com/rest/api/storageservices/authenticate-with-shared-key/)
     (aka account key or access key), provide the key as a string. This can be found in the Azure Portal under the "Access Keys"
     section or by running the following Azure CLI command:

      ```az storage account keys list -g MyResourceGroup -n MyStorageAccount```

      Use the key as the credential parameter to authenticate the client:
      ```python
      from azure.storage.blob import BlobServiceClient
      service = BlobServiceClient(account_url="https://<my_account_name>.blob.core.windows.net", credential="<account_access_key>")
      ```

      If you are using **customized url** (which means the url is not in this format `<my_account_name>.blob.core.windows.net`),
      please instantiate the client using the credential below:
      ```python
      from azure.storage.blob import BlobServiceClient
      service = BlobServiceClient(account_url="https://<my_account_name>.blob.core.windows.net",
         credential={"account_name": "<your_account_name>", "account_key":"<account_access_key>"})
      ```

  4. To use [anonymous public read access](https://docs.microsoft.com/azure/storage/blobs/storage-manage-access-to-resources),
     simply omit the credential parameter.


  Depending on your use case and authorization method, you may prefer to initialize a client instance with a storage
  connection string instead of providing the account URL and credential separately. To do this, pass the storage
  connection string to the client's `from_connection_string` class method:

  ```python
  from azure.storage.blob import BlobServiceClient

  connection_string = "DefaultEndpointsProtocol=https;AccountName=xxxx;AccountKey=xxxx;EndpointSuffix=core.windows.net"
  service = BlobServiceClient.from_connection_string(conn_str=connection_string)
  ```

  The connection string to your storage account can be found in the Azure Portal under the "Access Keys" section or by running the following CLI command:

  ```bash
  az storage account show-connection-string -g MyResourceGroup -n MyStorageAccount
  ```


  The following components make up the Azure Blob Service:
  * The storage account itself
  * A container within the storage account
  * A blob within a container

  The Azure Storage Blobs client library for Python allows you to interact with each of these components through the
  use of a dedicated client object.


  Four different clients are provided to interact with the various components of the Blob Service:
  1. [BlobServiceClient](https://aka.ms/azsdk-python-storage-blob-blobserviceclient) -
      this client represents interaction with the Azure storage account itself, and allows you to acquire preconfigured
      client instances to access the containers and blobs within. It provides operations to retrieve and configure the
      account properties as well as list, create, and delete containers within the account. To perform operations on a
      specific container or blob, retrieve a client using the `get_container_client` or `get_blob_client` methods.
  2. [ContainerClient](https://aka.ms/azsdk-python-storage-blob-containerclient) -
      this client represents interaction with a specific container (which need not exist yet), and allows you to acquire
      preconfigured client instances to access the blobs within. It provides operations to create, delete, or configure a
      container and includes operations to list, upload, and delete the blobs within it. To perform operations on a
      specific blob within the container, retrieve a client using the `get_blob_client` method.
  3. [BlobClient](https://aka.ms/azsdk-python-storage-blob-blobclient) -
      this client represents interaction with a specific blob (which need not exist yet). It provides operations to
      upload, download, delete, and create snapshots of a blob, as well as specific operations per blob type.
  4. [BlobLeaseClient](https://aka.ms/azsdk-python-storage-blob-blobleaseclient) -
      this client represents lease interactions with a `ContainerClient` or `BlobClient`. It provides operations to
      acquire, renew, release, change, and break a lease on a specified resource.


  This library includes a complete async API supported on Python 3.5+. To use it, you must
  first install an async transport, such as [aiohttp](https://pypi.org/project/aiohttp/).
  See
  [azure-core documentation](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/core/azure-core/CLIENT_LIBRARY_DEVELOPER.md#transport)
  for more information.

  Async clients and credentials should be closed when they're no longer needed. These
  objects are async context managers and define async `close` methods.


  Once you've initialized a Client, you can choose from the different types of blobs:
  * [Block blobs](https://docs.microsoft.com/rest/api/storageservices/understanding-block-blobs--append-blobs--and-page-blobs#about-block-blobs)
    store text and binary data, up to approximately 4.75 TiB. Block blobs are made up of blocks of data that can be
    managed individually
  * [Append blobs](https://docs.microsoft.com/rest/api/storageservices/understanding-block-blobs--append-blobs--and-page-blobs#about-append-blobs)
    are made up of blocks like block blobs, but are optimized for append operations. Append blobs are ideal for scenarios
    such as logging data from virtual machines
  * [Page blobs](https://docs.microsoft.com/rest/api/storageservices/understanding-block-blobs--append-blobs--and-page-blobs#about-page-blobs)
    store random access files up to 8 TiB in size. Page blobs store virtual hard drive (VHD) files and serve as disks for
    Azure virtual machines


  The following sections provide several code snippets covering some of the most common Storage Blob tasks, including:

  * [Create a container](#create-a-container "Create a container")
  * [Uploading a blob](#uploading-a-blob "Uploading a blob")
  * [Downloading a blob](#downloading-a-blob "Downloading a blob")
  * [Enumerating blobs](#enumerating-blobs "Enumerating blobs")

  Note that a container must be created before to upload or download a blob.



  Create a container from where you can upload or download blobs.
  ```python
  from azure.storage.blob import ContainerClient

  container_client = ContainerClient.from_connection_string(conn_str="<connection_string>", container_name="my_container")

  container_client.create_container()
  ```

  Use the async client to upload a blob

  ```python
  from azure.storage.blob.aio import ContainerClient

  container_client = ContainerClient.from_connection_string(conn_str="<connection_string>", container_name="my_container")

  await container_client.create_container()
  ```


  Upload a blob to your container

  ```python
  from azure.storage.blob import BlobClient

  blob = BlobClient.from_connection_string(conn_str="<connection_string>", container_name="my_container", blob_name="my_blob")

  with open("./SampleSource.txt", "rb") as data:
      blob.upload_blob(data)
  ```

  Use the async client to upload a blob

  ```python
  from azure.storage.blob.aio import BlobClient

  blob = BlobClient.from_connection_string(conn_str="<connection_string>", container_name="my_container", blob_name="my_blob")

  with open("./SampleSource.txt", "rb") as data:
      await blob.upload_blob(data)
  ```


  Download a blob from your container

  ```python
  from azure.storage.blob import BlobClient

  blob = BlobClient.from_connection_string(conn_str="my_connection_string", container_name="my_container", blob_name="my_blob")

  with open("./BlockDestination.txt", "wb") as my_blob:
      blob_data = blob.download_blob()
      blob_data.readinto(my_blob)
  ```

  Download a blob asynchronously

  ```python
  from azure.storage.blob.aio import BlobClient

  blob = BlobClient.from_connection_string(conn_str="my_connection_string", container_name="my_container", blob_name="my_blob")

  with open("./BlockDestination.txt", "wb") as my_blob:
      stream = await blob.download_blob()
      data = await stream.readall()
      my_blob.write(data)
  ```


  List the blobs in your container

  ```python
  from azure.storage.blob import ContainerClient

  container = ContainerClient.from_connection_string(conn_str="my_connection_string", container_name="my_container")

  blob_list = container.list_blobs()
  for blob in blob_list:
      print(blob.name + '\n')
  ```

  List the blobs asynchronously

  ```python
  from azure.storage.blob.aio import ContainerClient

  container = ContainerClient.from_connection_string(conn_str="my_connection_string", container_name="my_container")

  blob_list = []
  async for blob in container.list_blobs():
      blob_list.append(blob)
  print(blob_list)
  ```



  Optional keyword arguments that can be passed in at the client and per-operation level.



  Use the following keyword arguments when instantiating a client to configure the retry policy:

  * __retry_total__ (int): Total number of retries to allow. Takes precedence over other counts.
  Pass in `retry_total=0` if you do not want to retry on requests. Defaults to 10.
  * __retry_connect__ (int): How many connection-related errors to retry on. Defaults to 3.
  * __retry_read__ (int): How many times to retry on read errors. Defaults to 3.
  * __retry_status__ (int): How many times to retry on bad status codes. Defaults to 3.
  * __retry_to_secondary__ (bool): Whether the request should be retried to secondary, if able.
  This should only be enabled of RA-GRS accounts are used and potentially stale data can be handled.
  Defaults to `False`.



  Use the following keyword arguments when instantiating a client to configure encryption:

  * __require_encryption__ (bool): If set to True, will enforce that objects are encrypted and decrypt them.
  * __encryption_version__ (str): Specifies the version of encryption to use. Current options are `'2.0'` or `'1.0'` and
  the default value is `'1.0'`. Version 1.0 is deprecated, and it is **highly recommended** to use version 2.0.
  * __key_encryption_key__ (object): The user-provided key-encryption-key. The instance must implement the following methods:
      - `wrap_key(key)`--wraps the specified key using an algorithm of the user's choice.
      - `get_key_wrap_algorithm()`--returns the algorithm used to wrap the specified symmetric key.
      - `get_kid()`--returns a string key id for this key-encryption-key.
  * __key_resolver_function__ (callable): The user-provided key resolver. Uses the kid string to return a key-encryption-key
  implementing the interface defined above.



  Other optional configuration keyword arguments that can be specified on the client or per-operation.

  **Client keyword arguments:**

  * __connection_timeout__ (int): The number of seconds the client will wait to establish a connection to the server.
  Defaults to 20 seconds.
  * __read_timeout__ (int): The number of seconds the client will wait, between consecutive read operations, for a
  response from the server. This is a socket level timeout and is not affected by overall data size. Client-side read
  timeouts will be automatically retried. Defaults to 60 seconds.
  * __transport__ (Any): User-provided transport to send the HTTP request.

  **Per-operation keyword arguments:**

  * __raw_response_hook__ (callable): The given callback uses the response returned from the service.
  * __raw_request_hook__ (callable): The given callback uses the request before being sent to service.
  * __client_request_id__ (str): Optional user specified identification of the request.
  * __user_agent__ (str): Appends the custom value to the user-agent header to be sent with the request.
  * __logging_enable__ (bool): Enables logging at the DEBUG level. Defaults to False. Can also be passed in at
  the client level to enable it for all requests.
  * __logging_body__ (bool): Enables logging the request and response body. Defaults to False. Can also be passed in at
  the client level to enable it for all requests.
  * __headers__ (dict): Pass in custom headers as key, value pairs. E.g. `headers={'CustomValue': value}`



  Storage Blob clients raise exceptions defined in [Azure Core](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/core/azure-core/README.md).

  This list can be used for reference to catch thrown exceptions. To get the specific error code of the exception, use the `error_code` attribute, i.e, `exception.error_code`.


  This library uses the standard
  [logging](https://docs.python.org/3/library/logging.html) library for logging.
  Basic information about HTTP sessions (URLs, headers, etc.) is logged at INFO
  level.

  Detailed DEBUG level logging, including request/response bodies and unredacted
  headers, can be enabled on a client with the `logging_enable` argument:
  ```python
  import sys
  import logging
  from azure.storage.blob import BlobServiceClient


  logger = logging.getLogger('azure.storage.blob')
  logger.setLevel(logging.DEBUG)


  handler = logging.StreamHandler(stream=sys.stdout)
  logger.addHandler(handler)


  service_client = BlobServiceClient.from_connection_string("your_connection_string", logging_enable=True)
  ```

  Similarly, `logging_enable` can enable detailed logging for a single operation,
  even when it isn't enabled for the client:
  ```py
  service_client.get_service_stats(logging_enable=True)
  ```





  Get started with our [Blob samples](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-blob/samples).

  Several Storage Blobs Python SDK samples are available to you in the SDK's GitHub repository. These samples provide example code for additional scenarios commonly encountered while working with Storage Blobs:

  * [blob_samples_container_access_policy.py](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-blob/samples/blob_samples_container_access_policy.py) ([async version](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-blob/samples/blob_samples_container_access_policy_async.py)) - Examples to set Access policies:
      * Set up Access Policy for container

  * [blob_samples_hello_world.py](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-blob/samples/blob_samples_hello_world.py) ([async version](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-blob/samples/blob_samples_hello_world_async.py)) - Examples for common Storage Blob tasks:
      * Set up a container
      * Create a block, page, or append blob
      * Upload blobs
      * Download blobs
      * Delete blobs

  * [blob_samples_authentication.py](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-blob/samples/blob_samples_authentication.py) ([async version](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-blob/samples/blob_samples_authentication_async.py)) - Examples for authenticating and creating the client:
      * From a connection string
      * From a shared access key
      * From a shared access signature token
      * From active directory

  * [blob_samples_service.py](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-blob/samples/blob_samples_service.py) ([async version](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-blob/samples/blob_samples_service_async.py)) - Examples for interacting with the blob service:
      * Get account information
      * Get and set service properties
      * Get service statistics
      * Create, list, and delete containers
      * Get the Blob or Container client

  * [blob_samples_containers.py](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-blob/samples/blob_samples_containers.py) ([async version](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-blob/samples/blob_samples_containers_async.py)) - Examples for interacting with containers:
      * Create a container and delete containers
      * Set metadata on containers
      * Get container properties
      * Acquire a lease on container
      * Set an access policy on a container
      * Upload, list, delete blobs in container
      * Get the blob client to interact with a specific blob

  * [blob_samples_common.py](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-blob/samples/blob_samples_common.py) ([async version](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-blob/samples/blob_samples_common_async.py)) - Examples common to all types of blobs:
      * Create a snapshot
      * Delete a blob snapshot
      * Soft delete a blob
      * Undelete a blob
      * Acquire a lease on a blob
      * Copy a blob from a URL

  * [blob_samples_directory_interface.py](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-blob/samples/blob_samples_directory_interface.py) - Examples for interfacing with Blob storage as if it were a directory on a filesystem:
      * Copy (upload or download) a single file or directory
      * List files or directories at a single level or recursively
      * Delete a single file or recursively delete a directory


  For more extensive documentation on Azure Blob storage, see the [Azure Blob storage documentation](https://docs.microsoft.com/azure/storage/blobs/) on docs.microsoft.com.


  This project welcomes contributions and suggestions.  Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

  When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

  This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.


pkgId: 3cbc5fc4b42b49e319914207bc026ca21e5367e58467a440c1021382ef198f8c
name: python-azure-storage-common
arch: src
version: 2.1.0
epoch: 0
release: 1
summary: Microsoft Azure Storage Common Client Library for Python
url: https://github.com/Azure/azure-storage-python
rpm_license: MIT License
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-063dedcf-5bf6-4f88-a917-7618bd29ba6a
location_href: 00009054-python-azure-storage-common/python-azure-storage-common-2.1.0-1.src.rpm
checksum_type: sha256
description:
  This project provides a client library in Python that makes it easy to
  consume Microsoft Azure Storage services. For documentation please see
  the Microsoft Azure `Python Developer Center`_ and our `API Reference`_ (also available on `readthedocs`_).
      If you are looking for the Service Bus or Azure Management
      libraries, please visit
      https://github.com/Azure/azure-sdk-for-python.


pkgId: 38f5d9115412af82b5cdbba7497c09ac811ea2f2eef6653bf85bd6d6a7e3b970
name: python-azure-storage-file-datalake
arch: src
version: 12.10.1
epoch: 0
release: 1
summary: Microsoft Azure File DataLake Storage Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-249e45ae-3a9c-45e9-8fbf-8bf79735135f
location_href: 00009171-python-azure-storage-file-datalake/python-azure-storage-file-datalake-12.10.1-1.src.rpm
checksum_type: sha256
description:
  Overview

  This preview package for Python includes ADLS Gen2 specific API support made available in Storage SDK. This includes:
  1. New directory level operations (Create, Rename, Delete) for hierarchical namespace enabled (HNS) storage account. For HNS enabled accounts, the rename/move operations are atomic.
  2. Permission related operations (Get/Set ACLs) for hierarchical namespace enabled (HNS) accounts.


  [Source code](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake) | [Package (PyPi)](https://pypi.org/project/azure-storage-file-datalake/) | [API reference documentation](https://aka.ms/azsdk-python-storage-filedatalake-ref) | [Product documentation](https://docs.microsoft.com/azure/storage/) | [Samples](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-file-datalake/samples)





  * Python 3.7 or later is required to use this package. For more details, please read our page on [Azure SDK for Python version support policy](https://github.com/Azure/azure-sdk-for-python/wiki/Azure-SDKs-Python-version-support-policy).
  * You must have an [Azure subscription](https://azure.microsoft.com/free/) and an
  [Azure storage account](https://docs.microsoft.com/azure/storage/blobs/data-lake-storage-quickstart-create-account) to use this package.


  Install the Azure DataLake Storage client library for Python with [pip](https://pypi.org/project/pip/):

  ```bash
  pip install azure-storage-file-datalake --pre
  ```


  If you wish to create a new storage account, you can use the
  [Azure Portal](https://docs.microsoft.com/azure/storage/blobs/data-lake-storage-quickstart-create-account#create-an-account-using-the-azure-portal),
  [Azure PowerShell](https://docs.microsoft.com/azure/storage/blobs/data-lake-storage-quickstart-create-account#create-an-account-using-powershell),
  or [Azure CLI](https://docs.microsoft.com/azure/storage/blobs/data-lake-storage-quickstart-create-account#create-an-account-using-azure-cli):

  ```bash


  az group create --name my-resource-group --location westus2


  az extension add --name storage-preview


  az storage account create --name my-storage-account-name --resource-group my-resource-group --sku Standard_LRS --kind StorageV2 --hierarchical-namespace true
  ```



  Interaction with DataLake Storage starts with an instance of the DataLakeServiceClient class. You need an existing storage account, its URL, and a credential to instantiate the client object.



  To authenticate the client you have a few options:
  1. Use a SAS token string
  2. Use an account shared access key
  3. Use a token credential from [azure.identity](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/identity/azure-identity)

  Alternatively, you can authenticate with a storage connection string using the `from_connection_string` method. See example: [Client creation with a connection string](#client-creation-with-a-connection-string).

  You can omit the credential if your account URL already has a SAS token.



  Once you have your account URL and credentials ready, you can create the DataLakeServiceClient:

  ```python
  from azure.storage.filedatalake import DataLakeServiceClient

  service = DataLakeServiceClient(account_url="https://<my-storage-account-name>.dfs.core.windows.net/", credential=credential)
  ```



  DataLake storage offers four types of resources:
  * The storage account
  * A file system in the storage account
  * A directory under the file system
  * A file in a the file system or under directory


  This library includes a complete async API supported on Python 3.5+. To use it, you must
  first install an async transport, such as [aiohttp](https://pypi.org/project/aiohttp/).
  See
  [azure-core documentation](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/core/azure-core/CLIENT_LIBRARY_DEVELOPER.md#transport)
  for more information.

  Async clients and credentials should be closed when they're no longer needed. These
  objects are async context managers and define async `close` methods.



  The DataLake Storage SDK provides four different clients to interact with the DataLake Service:
  1. **DataLakeServiceClient** - this client interacts with the DataLake Service at the account level.
      It provides operations to retrieve and configure the account properties
      as well as list, create, and delete file systems within the account.
      For operations relating to a specific file system, directory or file, clients for those entities
      can also be retrieved using the `get_file_client`, `get_directory_client` or `get_file_system_client` functions.
  2. **FileSystemClient** - this client represents interaction with a specific
      file system, even if that file system does not exist yet. It provides operations to create, delete, or
      configure file systems and includes operations to list paths under file system, upload, and delete file or
      directory in the file system.
      For operations relating to a specific file, the client can also be retrieved using
      the `get_file_client` function.
      For operations relating to a specific directory, the client can be retrieved using
      the `get_directory_client` function.
  3. **DataLakeDirectoryClient** - this client represents interaction with a specific
      directory, even if that directory does not exist yet. It provides directory operations create, delete, rename,
      get properties and set properties operations.
  3. **DataLakeFileClient** - this client represents interaction with a specific
      file, even if that file does not exist yet. It provides file operations to append data, flush data, delete,
      create, and read file.
  4. **DataLakeLeaseClient** - this client represents lease interactions with a FileSystemClient, DataLakeDirectoryClient
      or DataLakeFileClient. It provides operations to acquire, renew, release, change, and break leases on the resources.



  The following sections provide several code snippets covering some of the most common Storage DataLake tasks, including:

  * [Client creation with a connection string](#client-creation-with-a-connection-string)
  * [Uploading a file](#uploading-a-file)
  * [Downloading a file](#downloading-a-file)
  * [Enumerating paths](#enumerating-paths)



  Create the DataLakeServiceClient using the connection string to your Azure Storage account.

  ```python
  from azure.storage.filedatalake import DataLakeServiceClient

  service = DataLakeServiceClient.from_connection_string(conn_str="my_connection_string")
  ```


  Upload a file to your file system.

  ```python
  from azure.storage.filedatalake import DataLakeFileClient

  data = b"abc"
  file = DataLakeFileClient.from_connection_string("my_connection_string",
                                                   file_system_name="myfilesystem", file_path="myfile")
  file.create_file ()
  file.append_data(data, offset=0, length=len(data))
  file.flush_data(len(data))
  ```


  Download a file from your file system.

  ```python
  from azure.storage.filedatalake import DataLakeFileClient

  file = DataLakeFileClient.from_connection_string("my_connection_string",
                                                   file_system_name="myfilesystem", file_path="myfile")

  with open("./BlockDestination.txt", "wb") as my_file:
      download = file.download_file()
      download.readinto(my_file)
  ```


  List the paths in your file system.

  ```python
  from azure.storage.filedatalake import FileSystemClient

  file_system = FileSystemClient.from_connection_string("my_connection_string", file_system_name="myfilesystem")

  paths = file_system.get_paths()
  for path in paths:
      print(path.name + '\n')
  ```



  Optional keyword arguments that can be passed in at the client and per-operation level.



  Use the following keyword arguments when instantiating a client to configure the retry policy:

  * __retry_total__ (int): Total number of retries to allow. Takes precedence over other counts.
  Pass in `retry_total=0` if you do not want to retry on requests. Defaults to 10.
  * __retry_connect__ (int): How many connection-related errors to retry on. Defaults to 3.
  * __retry_read__ (int): How many times to retry on read errors. Defaults to 3.
  * __retry_status__ (int): How many times to retry on bad status codes. Defaults to 3.
  * __retry_to_secondary__ (bool): Whether the request should be retried to secondary, if able.
  This should only be enabled of RA-GRS accounts are used and potentially stale data can be handled.
  Defaults to `False`.



  Other optional configuration keyword arguments that can be specified on the client or per-operation.

  **Client keyword arguments:**

  * __connection_timeout__ (int): The number of seconds the client will wait to establish a connection to the server.
  Defaults to 20 seconds.
  * __read_timeout__ (int): The number of seconds the client will wait, between consecutive read operations, for a
  response from the server. This is a socket level timeout and is not affected by overall data size. Client-side read
  timeouts will be automatically retried. Defaults to 60 seconds.
  * __transport__ (Any): User-provided transport to send the HTTP request.

  **Per-operation keyword arguments:**

  * __raw_response_hook__ (callable): The given callback uses the response returned from the service.
  * __raw_request_hook__ (callable): The given callback uses the request before being sent to service.
  * __client_request_id__ (str): Optional user specified identification of the request.
  * __user_agent__ (str): Appends the custom value to the user-agent header to be sent with the request.
  * __logging_enable__ (bool): Enables logging at the DEBUG level. Defaults to False. Can also be passed in at
  the client level to enable it for all requests.
  * __logging_body__ (bool): Enables logging the request and response body. Defaults to False. Can also be passed in at
  the client level to enable it for all requests.
  * __headers__ (dict): Pass in custom headers as key, value pairs. E.g. `headers={'CustomValue': value}`



  DataLake Storage clients raise exceptions defined in [Azure Core](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/core/azure-core/README.md).

  This list can be used for reference to catch thrown exceptions. To get the specific error code of the exception, use the `error_code` attribute, i.e, `exception.error_code`.


  This library uses the standard
  [logging](https://docs.python.org/3/library/logging.html) library for logging.
  Basic information about HTTP sessions (URLs, headers, etc.) is logged at INFO
  level.

  Detailed DEBUG level logging, including request/response bodies and unredacted
  headers, can be enabled on a client with the `logging_enable` argument:
  ```python
  import sys
  import logging
  from azure.storage.filedatalake import DataLakeServiceClient


  logger = logging.getLogger('azure.storage')
  logger.setLevel(logging.DEBUG)


  handler = logging.StreamHandler(stream=sys.stdout)
  logger.addHandler(handler)


  service_client = DataLakeServiceClient.from_connection_string("your_connection_string", logging_enable=True)
  ```

  Similarly, `logging_enable` can enable detailed logging for a single operation,
  even when it isn't enabled for the client:
  ```py
  service_client.list_file_systems(logging_enable=True)
  ```





  Get started with our [Azure DataLake samples](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-file-datalake/samples).

  Several DataLake Storage Python SDK samples are available to you in the SDK's GitHub repository. These samples provide example code for additional scenarios commonly encountered while working with DataLake Storage:

  * [`datalake_samples_access_control.py`](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-file-datalake/samples/datalake_samples_access_control.py) - Examples for common DataLake Storage tasks:
      * Set up a file system
      * Create a directory
      * Set/Get access control for the directory
      * Create files under the directory
      * Set/Get access control for each file
      * Delete file system

  * [`datalake_samples_upload_download.py`](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-file-datalake/samples/datalake_samples_upload_download.py) - Examples for common DataLake Storage tasks:
      * Set up a file system
      * Create file
      * Append data to the file
      * Flush data to the file
      * Download the uploaded data
      * Delete file system




  Table for [ADLS Gen1 to ADLS Gen2 API Mapping](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/storage/azure-storage-file-datalake/GEN1_GEN2_MAPPING.md)
  For more extensive REST documentation on Data Lake Storage Gen2, see the [Data Lake Storage Gen2 documentation](https://docs.microsoft.com/rest/api/storageservices/datalakestoragegen2/filesystem) on docs.microsoft.com.



  This project welcomes contributions and suggestions.  Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

  When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

  This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.


pkgId: 334c767edf7787fd149036d6c5480c37949794fc77fe9052b2748eda54df075e
name: python-azure-storage-file-datalake-help
arch: noarch
version: 12.10.1
epoch: 0
release: 1
summary: Development documents and examples for azure-storage-file-datalake
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-249e45ae-3a9c-45e9-8fbf-8bf79735135f
rpm_sourcerpm: python-azure-storage-file-datalake-12.10.1-1.src.rpm
checksum_type: sha256
description:
  Overview

  This preview package for Python includes ADLS Gen2 specific API support made available in Storage SDK. This includes:
  1. New directory level operations (Create, Rename, Delete) for hierarchical namespace enabled (HNS) storage account. For HNS enabled accounts, the rename/move operations are atomic.
  2. Permission related operations (Get/Set ACLs) for hierarchical namespace enabled (HNS) accounts.


  [Source code](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake) | [Package (PyPi)](https://pypi.org/project/azure-storage-file-datalake/) | [API reference documentation](https://aka.ms/azsdk-python-storage-filedatalake-ref) | [Product documentation](https://docs.microsoft.com/azure/storage/) | [Samples](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-file-datalake/samples)





  * Python 3.7 or later is required to use this package. For more details, please read our page on [Azure SDK for Python version support policy](https://github.com/Azure/azure-sdk-for-python/wiki/Azure-SDKs-Python-version-support-policy).
  * You must have an [Azure subscription](https://azure.microsoft.com/free/) and an
  [Azure storage account](https://docs.microsoft.com/azure/storage/blobs/data-lake-storage-quickstart-create-account) to use this package.


  Install the Azure DataLake Storage client library for Python with [pip](https://pypi.org/project/pip/):

  ```bash
  pip install azure-storage-file-datalake --pre
  ```


  If you wish to create a new storage account, you can use the
  [Azure Portal](https://docs.microsoft.com/azure/storage/blobs/data-lake-storage-quickstart-create-account#create-an-account-using-the-azure-portal),
  [Azure PowerShell](https://docs.microsoft.com/azure/storage/blobs/data-lake-storage-quickstart-create-account#create-an-account-using-powershell),
  or [Azure CLI](https://docs.microsoft.com/azure/storage/blobs/data-lake-storage-quickstart-create-account#create-an-account-using-azure-cli):

  ```bash


  az group create --name my-resource-group --location westus2


  az extension add --name storage-preview


  az storage account create --name my-storage-account-name --resource-group my-resource-group --sku Standard_LRS --kind StorageV2 --hierarchical-namespace true
  ```



  Interaction with DataLake Storage starts with an instance of the DataLakeServiceClient class. You need an existing storage account, its URL, and a credential to instantiate the client object.



  To authenticate the client you have a few options:
  1. Use a SAS token string
  2. Use an account shared access key
  3. Use a token credential from [azure.identity](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/identity/azure-identity)

  Alternatively, you can authenticate with a storage connection string using the `from_connection_string` method. See example: [Client creation with a connection string](#client-creation-with-a-connection-string).

  You can omit the credential if your account URL already has a SAS token.



  Once you have your account URL and credentials ready, you can create the DataLakeServiceClient:

  ```python
  from azure.storage.filedatalake import DataLakeServiceClient

  service = DataLakeServiceClient(account_url="https://<my-storage-account-name>.dfs.core.windows.net/", credential=credential)
  ```



  DataLake storage offers four types of resources:
  * The storage account
  * A file system in the storage account
  * A directory under the file system
  * A file in a the file system or under directory


  This library includes a complete async API supported on Python 3.5+. To use it, you must
  first install an async transport, such as [aiohttp](https://pypi.org/project/aiohttp/).
  See
  [azure-core documentation](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/core/azure-core/CLIENT_LIBRARY_DEVELOPER.md#transport)
  for more information.

  Async clients and credentials should be closed when they're no longer needed. These
  objects are async context managers and define async `close` methods.



  The DataLake Storage SDK provides four different clients to interact with the DataLake Service:
  1. **DataLakeServiceClient** - this client interacts with the DataLake Service at the account level.
      It provides operations to retrieve and configure the account properties
      as well as list, create, and delete file systems within the account.
      For operations relating to a specific file system, directory or file, clients for those entities
      can also be retrieved using the `get_file_client`, `get_directory_client` or `get_file_system_client` functions.
  2. **FileSystemClient** - this client represents interaction with a specific
      file system, even if that file system does not exist yet. It provides operations to create, delete, or
      configure file systems and includes operations to list paths under file system, upload, and delete file or
      directory in the file system.
      For operations relating to a specific file, the client can also be retrieved using
      the `get_file_client` function.
      For operations relating to a specific directory, the client can be retrieved using
      the `get_directory_client` function.
  3. **DataLakeDirectoryClient** - this client represents interaction with a specific
      directory, even if that directory does not exist yet. It provides directory operations create, delete, rename,
      get properties and set properties operations.
  3. **DataLakeFileClient** - this client represents interaction with a specific
      file, even if that file does not exist yet. It provides file operations to append data, flush data, delete,
      create, and read file.
  4. **DataLakeLeaseClient** - this client represents lease interactions with a FileSystemClient, DataLakeDirectoryClient
      or DataLakeFileClient. It provides operations to acquire, renew, release, change, and break leases on the resources.



  The following sections provide several code snippets covering some of the most common Storage DataLake tasks, including:

  * [Client creation with a connection string](#client-creation-with-a-connection-string)
  * [Uploading a file](#uploading-a-file)
  * [Downloading a file](#downloading-a-file)
  * [Enumerating paths](#enumerating-paths)



  Create the DataLakeServiceClient using the connection string to your Azure Storage account.

  ```python
  from azure.storage.filedatalake import DataLakeServiceClient

  service = DataLakeServiceClient.from_connection_string(conn_str="my_connection_string")
  ```


  Upload a file to your file system.

  ```python
  from azure.storage.filedatalake import DataLakeFileClient

  data = b"abc"
  file = DataLakeFileClient.from_connection_string("my_connection_string",
                                                   file_system_name="myfilesystem", file_path="myfile")
  file.create_file ()
  file.append_data(data, offset=0, length=len(data))
  file.flush_data(len(data))
  ```


  Download a file from your file system.

  ```python
  from azure.storage.filedatalake import DataLakeFileClient

  file = DataLakeFileClient.from_connection_string("my_connection_string",
                                                   file_system_name="myfilesystem", file_path="myfile")

  with open("./BlockDestination.txt", "wb") as my_file:
      download = file.download_file()
      download.readinto(my_file)
  ```


  List the paths in your file system.

  ```python
  from azure.storage.filedatalake import FileSystemClient

  file_system = FileSystemClient.from_connection_string("my_connection_string", file_system_name="myfilesystem")

  paths = file_system.get_paths()
  for path in paths:
      print(path.name + '\n')
  ```



  Optional keyword arguments that can be passed in at the client and per-operation level.



  Use the following keyword arguments when instantiating a client to configure the retry policy:

  * __retry_total__ (int): Total number of retries to allow. Takes precedence over other counts.
  Pass in `retry_total=0` if you do not want to retry on requests. Defaults to 10.
  * __retry_connect__ (int): How many connection-related errors to retry on. Defaults to 3.
  * __retry_read__ (int): How many times to retry on read errors. Defaults to 3.
  * __retry_status__ (int): How many times to retry on bad status codes. Defaults to 3.
  * __retry_to_secondary__ (bool): Whether the request should be retried to secondary, if able.
  This should only be enabled of RA-GRS accounts are used and potentially stale data can be handled.
  Defaults to `False`.



  Other optional configuration keyword arguments that can be specified on the client or per-operation.

  **Client keyword arguments:**

  * __connection_timeout__ (int): The number of seconds the client will wait to establish a connection to the server.
  Defaults to 20 seconds.
  * __read_timeout__ (int): The number of seconds the client will wait, between consecutive read operations, for a
  response from the server. This is a socket level timeout and is not affected by overall data size. Client-side read
  timeouts will be automatically retried. Defaults to 60 seconds.
  * __transport__ (Any): User-provided transport to send the HTTP request.

  **Per-operation keyword arguments:**

  * __raw_response_hook__ (callable): The given callback uses the response returned from the service.
  * __raw_request_hook__ (callable): The given callback uses the request before being sent to service.
  * __client_request_id__ (str): Optional user specified identification of the request.
  * __user_agent__ (str): Appends the custom value to the user-agent header to be sent with the request.
  * __logging_enable__ (bool): Enables logging at the DEBUG level. Defaults to False. Can also be passed in at
  the client level to enable it for all requests.
  * __logging_body__ (bool): Enables logging the request and response body. Defaults to False. Can also be passed in at
  the client level to enable it for all requests.
  * __headers__ (dict): Pass in custom headers as key, value pairs. E.g. `headers={'CustomValue': value}`



  DataLake Storage clients raise exceptions defined in [Azure Core](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/core/azure-core/README.md).

  This list can be used for reference to catch thrown exceptions. To get the specific error code of the exception, use the `error_code` attribute, i.e, `exception.error_code`.


  This library uses the standard
  [logging](https://docs.python.org/3/library/logging.html) library for logging.
  Basic information about HTTP sessions (URLs, headers, etc.) is logged at INFO
  level.

  Detailed DEBUG level logging, including request/response bodies and unredacted
  headers, can be enabled on a client with the `logging_enable` argument:
  ```python
  import sys
  import logging
  from azure.storage.filedatalake import DataLakeServiceClient


  logger = logging.getLogger('azure.storage')
  logger.setLevel(logging.DEBUG)


  handler = logging.StreamHandler(stream=sys.stdout)
  logger.addHandler(handler)


  service_client = DataLakeServiceClient.from_connection_string("your_connection_string", logging_enable=True)
  ```

  Similarly, `logging_enable` can enable detailed logging for a single operation,
  even when it isn't enabled for the client:
  ```py
  service_client.list_file_systems(logging_enable=True)
  ```





  Get started with our [Azure DataLake samples](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-file-datalake/samples).

  Several DataLake Storage Python SDK samples are available to you in the SDK's GitHub repository. These samples provide example code for additional scenarios commonly encountered while working with DataLake Storage:

  * [`datalake_samples_access_control.py`](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-file-datalake/samples/datalake_samples_access_control.py) - Examples for common DataLake Storage tasks:
      * Set up a file system
      * Create a directory
      * Set/Get access control for the directory
      * Create files under the directory
      * Set/Get access control for each file
      * Delete file system

  * [`datalake_samples_upload_download.py`](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-file-datalake/samples/datalake_samples_upload_download.py) - Examples for common DataLake Storage tasks:
      * Set up a file system
      * Create file
      * Append data to the file
      * Flush data to the file
      * Download the uploaded data
      * Delete file system




  Table for [ADLS Gen1 to ADLS Gen2 API Mapping](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/storage/azure-storage-file-datalake/GEN1_GEN2_MAPPING.md)
  For more extensive REST documentation on Data Lake Storage Gen2, see the [Data Lake Storage Gen2 documentation](https://docs.microsoft.com/rest/api/storageservices/datalakestoragegen2/filesystem) on docs.microsoft.com.



  This project welcomes contributions and suggestions.  Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

  When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

  This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.

location_href:
  00009171-python-azure-storage-file-datalake/python-azure-storage-file-datalake-help-12.10.1-1.noarch.rpm


pkgId: 86f62b6c7ed9bbaaa26b807b334df4d584c329ca1c423023361abecfbc750c67
name: python-azure-storage-logging
arch: src
version: 0.5.1
epoch: 0
release: 1
summary: Logging handlers to send logs to Microsoft Azure Storage
url: https://github.com/michiya/azure-storage-logging
rpm_license: Apache License 2.0
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-166ca56f-bb35-4a2b-8fcc-894009bd1dbd
location_href: 00011183-python-azure-storage-logging/python-azure-storage-logging-0.5.1-1.src.rpm
checksum_type: sha256
description:
  *azure-storage-logging* provides functionality to send output from
  the standard Python logging APIs to Microsoft Azure Storage.


pkgId: d6c27467cac5234f55d628fd3a8d1e243090625ae4dc161da5fc537124fa4692
name: python-azure-storage-nspkg
arch: src
version: 3.1.0
epoch: 0
release: 1
summary: Microsoft Azure Storage Namespace Package [Internal]
url: https://github.com/Azure/azure-storage-python
rpm_license: MIT License
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-ca9e4353-e3ed-4c36-8a9e-374404158b4c
location_href: 00009539-python-azure-storage-nspkg/python-azure-storage-nspkg-3.1.0-1.src.rpm
checksum_type: sha256
description:
  This is the Microsoft Azure Storage namespace package.
  This package is not intended to be installed directly by the end user.
  It provides the necessary files for other packages to extend the azure.storage namespace.
  If you are looking to install the Azure Storage libraries, see the
  `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


pkgId: e53175e59ac0b01d7495683096d679c975ce81a164060633122580549a026fc3
name: python-azure-storage-queue
arch: src
version: 12.6.0
epoch: 0
release: 1
summary: Microsoft Azure Azure Queue Storage Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-queue
rpm_license: MIT License
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-75017cd5-6e00-474f-bcef-5fb1b7410d8e
location_href: 00009123-python-azure-storage-queue/python-azure-storage-queue-12.6.0-1.src.rpm
checksum_type: sha256
description:
  Azure Queue storage is a service for storing large numbers of messages that can be accessed from anywhere in the world via authenticated calls using HTTP or HTTPS. A single queue message can be up to 64 KiB in size, and a queue can contain millions of messages, up to the total capacity limit of a storage account.

  Common uses of Queue storage include:

  * Creating a backlog of work to process asynchronously
  * Passing messages between different parts of a distributed application

  [Source code](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-queue/azure/storage/queue) | [Package (PyPI)](https://pypi.org/project/azure-storage-queue/) | [API reference documentation](https://aka.ms/azsdk-python-storage-queue-ref) | [Product documentation](https://docs.microsoft.com/azure/storage/) | [Samples](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-queue/samples)




  * Python 3.7 or later is required to use this package. For more details, please read our page on [Azure SDK for Python version support policy](https://github.com/Azure/azure-sdk-for-python/wiki/Azure-SDKs-Python-version-support-policy).
  * You must have an [Azure subscription](https://azure.microsoft.com/free/) and an
  [Azure storage account](https://docs.microsoft.com/azure/storage/common/storage-account-overview) to use this package.


  Install the Azure Storage Queues client library for Python with [pip](https://pypi.org/project/pip/):

  ```bash
  pip install azure-storage-queue
  ```


  If you wish to create a new storage account, you can use the
  [Azure Portal](https://docs.microsoft.com/azure/storage/common/storage-quickstart-create-account?tabs=azure-portal),
  [Azure PowerShell](https://docs.microsoft.com/azure/storage/common/storage-quickstart-create-account?tabs=azure-powershell),
  or [Azure CLI](https://docs.microsoft.com/azure/storage/common/storage-quickstart-create-account?tabs=azure-cli):

  ```bash


  az group create --name my-resource-group --location westus2


  az storage account create -n my-storage-account-name -g my-resource-group
  ```


  The Azure Storage Queues client library for Python allows you to interact with three types of resources: the storage
  account itself, queues, and messages. Interaction with these resources starts with an instance of a [client](#clients).
  To create a client object, you will need the storage account's queue service endpoint URL and a credential that allows
  you to access the storage account:

  ```python
  from azure.storage.queue import QueueServiceClient

  service = QueueServiceClient(account_url="https://<my-storage-account-name>.queue.core.windows.net/", credential=credential)
  ```


  You can find the storage account's queue service URL using the
  [Azure Portal](https://docs.microsoft.com/azure/storage/common/storage-account-overview#storage-account-endpoints),
  [Azure PowerShell](https://docs.microsoft.com/powershell/module/az.storage/get-azstorageaccount),
  or [Azure CLI](https://docs.microsoft.com/cli/azure/storage/account?view=azure-cli-latest#az-storage-account-show):

  ```bash

  az storage account show -n my-storage-account-name -g my-resource-group --query "primaryEndpoints.queue"
  ```


  The `credential` parameter may be provided in a number of different forms, depending on the type of
  [authorization](https://docs.microsoft.com/azure/storage/common/storage-auth) you wish to use:
  1. To use a [shared access signature (SAS) token](https://docs.microsoft.com/azure/storage/common/storage-sas-overview),
     provide the token as a string. If your account URL includes the SAS token, omit the credential parameter.
     You can generate a SAS token from the Azure Portal under "Shared access signature" or use one of the `generate_sas()`
     functions to create a sas token for the storage account or queue:

      ```python
      from datetime import datetime, timedelta
      from azure.storage.queue import QueueServiceClient, generate_account_sas, ResourceTypes, AccountSasPermissions

      sas_token = generate_account_sas(
          account_name="<storage-account-name>",
          account_key="<account-access-key>",
          resource_types=ResourceTypes(service=True),
          permission=AccountSasPermissions(read=True),
          start=datetime.utcnow(),
          expiry=datetime.utcnow() + timedelta(hours=1)
      )

      queue_service_client = QueueServiceClient(account_url="https://<my_account_name>.queue.core.windows.net", credential=sas_token)
      ```

  2. To use a storage account [shared key](https://docs.microsoft.com/rest/api/storageservices/authenticate-with-shared-key/)
     (aka account key or access key), provide the key as a string. This can be found in the Azure Portal under the "Access Keys"
     section or by running the following Azure CLI command:

      ```az storage account keys list -g MyResourceGroup -n MyStorageAccount```

      Use the key as the credential parameter to authenticate the client:
      ```python
      from azure.storage.queue import QueueServiceClient
      service = QueueServiceClient(account_url="https://<my_account_name>.queue.core.windows.net", credential="<account_access_key>")
      ```

  3. To use an [Azure Active Directory (AAD) token credential](https://docs.microsoft.com/azure/storage/common/storage-auth-aad),
     provide an instance of the desired credential type obtained from the
     [azure-identity](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/identity/azure-identity#credentials) library.
     For example, [DefaultAzureCredential](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/identity/azure-identity#defaultazurecredential)
     can be used to authenticate the client.

     This requires some initial setup:
     * [Install azure-identity](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/identity/azure-identity#install-the-package)
     * [Register a new AAD application](https://docs.microsoft.com/azure/active-directory/develop/quickstart-register-app) and give permissions to access Azure Storage
     * [Grant access](https://docs.microsoft.com/azure/storage/common/storage-auth-aad-rbac-portal) to Azure Queue data with RBAC in the Azure Portal
     * Set the values of the client ID, tenant ID, and client secret of the AAD application as environment variables:
       AZURE_TENANT_ID, AZURE_CLIENT_ID, AZURE_CLIENT_SECRET

     Use the returned token credential to authenticate the client:
      ```python
          from azure.identity import DefaultAzureCredential
          from azure.storage.queue import QueueServiceClient
          token_credential = DefaultAzureCredential()

          queue_service_client = QueueServiceClient(
              account_url="https://<my_account_name>.queue.core.windows.net",
              credential=token_credential
          )
      ```


  Depending on your use case and authorization method, you may prefer to initialize a client instance with a storage
  connection string instead of providing the account URL and credential separately. To do this, pass the storage
  connection string to the client's `from_connection_string` class method:

  ```python
  from azure.storage.queue import QueueServiceClient

  connection_string = "DefaultEndpointsProtocol=https;AccountName=xxxx;AccountKey=xxxx;EndpointSuffix=core.windows.net"
  service = QueueServiceClient.from_connection_string(conn_str=connection_string)
  ```

  The connection string to your storage account can be found in the Azure Portal under the "Access Keys" section or by running the following CLI command:

  ```bash
  az storage account show-connection-string -g MyResourceGroup -n MyStorageAccount
  ```


  The following components make up the Azure Queue Service:
  * The storage account itself
  * A queue within the storage account, which contains a set of messages
  * A message within a queue, in any format, of up to 64 KiB

  The Azure Storage Queues client library for Python allows you to interact with each of these components through the
  use of a dedicated client object.


  This library includes a complete async API supported on Python 3.5+. To use it, you must
  first install an async transport, such as [aiohttp](https://pypi.org/project/aiohttp/).
  See
  [azure-core documentation](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/core/azure-core/CLIENT_LIBRARY_DEVELOPER.md#transport)
  for more information.

  Async clients and credentials should be closed when they're no longer needed. These
  objects are async context managers and define async `close` methods.


  Two different clients are provided to interact with the various components of the Queue Service:
  1. [QueueServiceClient](https://aka.ms/azsdk-python-storage-queue-queueserviceclient) -
      this client represents interaction with the Azure storage account itself, and allows you to acquire preconfigured
      client instances to access the queues within. It provides operations to retrieve and configure the account
      properties as well as list, create, and delete queues within the account. To perform operations on a specific queue,
      retrieve a client using the `get_queue_client` method.
  2. [QueueClient](https://aka.ms/azsdk-python-storage-queue-queueclient) -
      this client represents interaction with a specific queue (which need not exist yet). It provides operations to
      create, delete, or configure a queue and includes operations to send, receive, peek, delete, and update messages
      within it.


  * **Send** - Adds a message to the queue and optionally sets a visibility timeout for the message.
  * **Receive** - Retrieves a message from the queue and makes it invisible to other consumers.
  * **Peek** - Retrieves a message from the front of the queue, without changing the message visibility.
  * **Update** - Updates the visibility timeout of a message and/or the message contents.
  * **Delete** - Deletes a specified message from the queue.
  * **Clear** - Clears all messages from the queue.




  The following sections provide several code snippets covering some of the most common Storage Queue tasks, including:

  * [Creating a queue](#creating-a-queue "Creating a queue")
  * [Sending messages](#sending-messages "Sending messages")
  * [Receiving messages](#receiving-messages "Receiving messages")


  Create a queue in your storage account

  ```python
  from azure.storage.queue import QueueClient

  queue = QueueClient.from_connection_string(conn_str="<connection_string>", queue_name="my_queue")
  queue.create_queue()
  ```

  Use the async client to create a queue
  ```python
  from azure.storage.queue.aio import QueueClient

  queue = QueueClient.from_connection_string(conn_str="<connection_string>", queue_name="my_queue")
  await queue.create_queue()
  ```


  Send messages to your queue

  ```python
  from azure.storage.queue import QueueClient

  queue = QueueClient.from_connection_string(conn_str="<connection_string>", queue_name="my_queue")
  queue.send_message("I'm using queues!")
  queue.send_message("This is my second message")
  ```

  Send messages asynchronously

  ```python
  import asyncio
  from azure.storage.queue.aio import QueueClient

  queue = QueueClient.from_connection_string(conn_str="<connection_string>", queue_name="my_queue")
  await asyncio.gather(
      queue.send_message("I'm using queues!"),
      queue.send_message("This is my second message")
  )
  ```


  Receive and process messages from your queue

  ```python
  from azure.storage.queue import QueueClient

  queue = QueueClient.from_connection_string(conn_str="<connection_string>", queue_name="my_queue")
  response = queue.receive_messages()

  for message in response:
      print(message.content)
      queue.delete_message(message)




  ```

  Receive and process messages in batches

  ```python
  from azure.storage.queue import QueueClient

  queue = QueueClient.from_connection_string(conn_str="<connection_string>", queue_name="my_queue")
  response = queue.receive_messages(messages_per_page=10)

  for message_batch in response.by_page():
      for message in message_batch:
          print(message.content)
          queue.delete_message(message)
  ```

  Receive and process messages asynchronously

  ```python
  from azure.storage.queue.aio import QueueClient

  queue = QueueClient.from_connection_string(conn_str="<connection_string>", queue_name="my_queue")
  response = queue.receive_messages()

  async for message in response:
      print(message.content)
      await queue.delete_message(message)
  ```



  Optional keyword arguments that can be passed in at the client and per-operation level.



  Use the following keyword arguments when instantiating a client to configure the retry policy:

  * __retry_total__ (int): Total number of retries to allow. Takes precedence over other counts.
  Pass in `retry_total=0` if you do not want to retry on requests. Defaults to 10.
  * __retry_connect__ (int): How many connection-related errors to retry on. Defaults to 3.
  * __retry_read__ (int): How many times to retry on read errors. Defaults to 3.
  * __retry_status__ (int): How many times to retry on bad status codes. Defaults to 3.
  * __retry_to_secondary__ (bool): Whether the request should be retried to secondary, if able.
  This should only be enabled of RA-GRS accounts are used and potentially stale data can be handled.
  Defaults to `False`.



  Other optional configuration keyword arguments that can be specified on the client or per-operation.

  **Client keyword arguments:**

  * __connection_timeout__ (int): The number of seconds the client will wait to establish a connection to the server.
  Defaults to 20 seconds.
  * __read_timeout__ (int): The number of seconds the client will wait, between consecutive read operations, for a
  response from the server. This is a socket level timeout and is not affected by overall data size. Client-side read
  timeouts will be automatically retried. Defaults to 60 seconds.
  * __transport__ (Any): User-provided transport to send the HTTP request.

  **Per-operation keyword arguments:**

  * __raw_response_hook__ (callable): The given callback uses the response returned from the service.
  * __raw_request_hook__ (callable): The given callback uses the request before being sent to service.
  * __client_request_id__ (str): Optional user specified identification of the request.
  * __user_agent__ (str): Appends the custom value to the user-agent header to be sent with the request.
  * __logging_enable__ (bool): Enables logging at the DEBUG level. Defaults to False. Can also be passed in at
  the client level to enable it for all requests.
  * __logging_body__ (bool): Enables logging the request and response body. Defaults to False. Can also be passed in at
  the client level to enable it for all requests.
  * __headers__ (dict): Pass in custom headers as key, value pairs. E.g. `headers={'CustomValue': value}`




  Storage Queue clients raise exceptions defined in [Azure Core](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/core/azure-core/README.md).

  This list can be used for reference to catch thrown exceptions. To get the specific error code of the exception, use the `error_code` attribute, i.e, `exception.error_code`.


  This library uses the standard
  [logging](https://docs.python.org/3/library/logging.html) library for logging.
  Basic information about HTTP sessions (URLs, headers, etc.) is logged at INFO
  level.

  Detailed DEBUG level logging, including request/response bodies and unredacted
  headers, can be enabled on a client with the `logging_enable` argument:
  ```python
  import sys
  import logging
  from azure.storage.queue import QueueServiceClient


  logger = logging.getLogger('azure.storage.queue')
  logger.setLevel(logging.DEBUG)


  handler = logging.StreamHandler(stream=sys.stdout)
  logger.addHandler(handler)


  service_client = QueueServiceClient.from_connection_string("your_connection_string", logging_enable=True)
  ```

  Similarly, `logging_enable` can enable detailed logging for a single operation,
  even when it isn't enabled for the client:
  ```py
  service_client.get_service_stats(logging_enable=True)
  ```




  Get started with our [Queue samples](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-queue/samples).

  Several Storage Queues Python SDK samples are available to you in the SDK's GitHub repository. These samples provide example code for additional scenarios commonly encountered while working with Storage Queues:

  * [queue_samples_hello_world.py](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-queue/samples/queue_samples_hello_world.py) ([async version](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-queue/samples/queue_samples_hello_world_async.py)) - Examples found in this article:
      * Client creation
      * Create a queue
      * Send messages
      * Receive messages

  * [queue_samples_authentication.py](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-queue/samples/queue_samples_authentication.py) ([async version](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-queue/samples/queue_samples_authentication_async.py)) - Examples for authenticating and creating the client:
      * From a connection string
      * From a shared access key
      * From a shared access signature token
      * From Azure Active Directory

  * [queue_samples_service.py](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-queue/samples/queue_samples_service.py) ([async version](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-queue/samples/queue_samples_service_async.py)) - Examples for interacting with the queue service:
      * Get and set service properties
      * List queues in a storage account
      * Create and delete a queue from the service
      * Get the QueueClient

  * [queue_samples_message.py](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-queue/samples/queue_samples_message.py) ([async version](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-queue/samples/queue_samples_message_async.py)) - Examples for working with queues and messages:
      * Set an access policy
      * Get and set queue metadata
      * Send and receive messages
      * Delete specified messages and clear all messages
      * Peek and update messages


  For more extensive documentation on Azure Queue storage, see the [Azure Queue storage documentation](https://docs.microsoft.com/azure/storage/queues/) on docs.microsoft.com.


  This project welcomes contributions and suggestions.  Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

  When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

  This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.







  - Stable release of features from 12.6.0b1




  - Removed `msrest` dependency.
  - Added `typing-extensions>=4.0.1` as a dependency.
  - Added `isodate>=0.6.1` as a dependency.
  - Added extra dependency `aio` for installing optional async dependencies. Use `pip install azure-storage-queue[aio]` to install.




  - Stable release of features from 12.5.0b1.


  - Changed the default value for `read_timeout` to 60 seconds for all clients.



  This version and all future versions will require Python 3.7+. Python 3.6 is no longer supported.


  - Added support for `AzureNamedKeyCredential` as a valid `credential` type.




  - Stable release of features from 12.4.0b1.




  - Introduced version 2.0 of client-side encryption for Queue messages which utilizes AES-GCM-256 encryption.
  Version 1.0 is now deprecated and no longer considered secure. If you are using client-side encryption, it is
  **highly recommended** that you update to version 2.0.
  The encryption version can be specified on any client constructor via the `encryption_version`
  keyword (i.e. `encryption_version='2.0'`).




  - Stable release of features from 12.3.0b1.


  - Fixed a bug, introduced in the previous beta release, that caused Authentication errors when attempting to use
  an Account SAS with certain service level operations.




  - Added support for `max_messages` in `receive_messages()` to specify the maximum number of messages to receive from the queue.


  - Updated SAS token generation to use the latest supported service version by default. Moving to the latest version
  also included a change to how account SAS is generated to reflect a change made to the service in SAS generation for
  service version 2020-12-06.
  - Updated documentation for `receive_messages()` to explain iterator behavior and life-cycle.
  - Added a sample to `queue_samples_message.py` (and async-equivalent) showcasing the use of `max_messages` in `receive_messages()`.



  This version and all future versions will require Python 3.6+. Python 2.7 is no longer supported.


  - Update `azure-core` dependency to avoid inconsistent dependencies from being installed.


  **Fixes**
  - Make `AccountName`, `AccountKey` etc. in conn_str case insensitive
  - Fixed unclosed `ThreadPoolExecutor` (#8955)


  **New features**
  - Added support for `AzureSasCredential` to allow SAS rotation in long living clients.


  **New feature**
  - Added `receive_message` on QueueClient to support receiving one message from queue (#14844, #14762)

  **Notes**
  - Updated dependency `azure-core` from  azure-core<2.0.0,>=1.6.0 to azure-core<2.0.0,>=1.9.0 to get continuation_token attr on AzureError.



  **Fixes**
  - Fixed QueueClient type declaration (#11392).


  **Notes**
  - Updated dependency from azure-core<2.0.0,>=1.2.2 to azure-core<2.0.0,>=1.6.0



  **Fixes**
  - Responses are always decoded as UTF8

  **Notes**
  - The `StorageUserAgentPolicy` is now replaced with the `UserAgentPolicy` from azure-core. With this, the custom user agents are now added as a prefix instead of being appended.



   **New features**
  - All the clients now have a `close()` method to close the sockets opened by the client when using without a context manager.



  **Breaking changes**

  - `QueueClient` now accepts only `account_url` with mandatory a string param `queue_name`.
  To use a queue_url, the method `from_queue_url` must be used.
  - `set_queue_access_policy` has required parameter `signed_identifiers`.
  - `NoRetry` policy has been removed. Use keyword argument `retry_total=0` for no retries.
  - `NoEncodePolicy` and `NoDecodePolicy` have been removed. Use `message_encode_policy=None` and `message_decode_policy=None`.
  - Removed types that were accidentally exposed from two modules. Only `QueueServiceClient` and `QueueClient`
  should be imported from azure.storage.queue.aio
  - Some parameters have become keyword only, rather than positional. Some examples include:
    - `loop`
    - `max_concurrency`
    - `validate_content`
    - `timeout` etc.
  - `QueueMessage` has had its parameters renamed from `insertion_time`, `time_next_visible`, `expiration_time`
  to `inserted_on`, `next_visible_on`, `expires_on`, respectively.
  - `Logging` has been renamed to `QueueAnalyticsLogging`.
  - `enqueue_message` is now called `send_message`.
  - Client and model files have been made internal. Users should import from the top level modules `azure.storage.queue` and `azure.storage.queue.aio` only.
  - The `generate_shared_access_signature` methods on both `QueueServiceClient` and `QueueClient` have been replaced by module level functions `generate_account_sas` and `generate_queue_sas`.
  - `get_service_stats` now returns a dict
  - `get_service_properties` now returns a dict with keys consistent to `set_service_properties`

   **New features**

  - `ResourceTypes`, and `Services` now have method `from_string` which takes parameters as a string.

  **Fixes and improvements**

  - Fixed an issue where XML is being double encoded and double decoded.



  **Breaking changes**

  - Permission models.
    - `AccountPermissions`, `QueuePermissions` have been renamed to
    `AccountSasPermissions`, `QueueSasPermissions` respectively.
    - enum-like list parameters have been removed from both of them.
    - `__add__` and `__or__` methods are removed.
  - `max_connections` is now renamed to `max_concurrency`.

  **New features**

  - `AccountSasPermissions`, `QueueSasPermissions` now have method `from_string` which takes parameters as a string.



  **Dependency updates**
  - Adopted [azure-core](https://pypi.org/project/azure-core/) 1.0.0b3
    - If you later want to revert to previous versions of azure-storage-queue, or another Azure SDK
    library requiring azure-core 1.0.0b1 or azure-core 1.0.0b2, you must explicitly install
    the specific version of azure-core as well. For example:

    `pip install azure-core==1.0.0b2 azure-storage-queue==12.0.0b2`




  **Breaking changes**
  - The behavior of listing operations has been modified:
      - The previous `marker` parameter has been removed.
      - The iterable response object now supports a `by_page` function that will return a secondary iterator of batches of results. This function supports a `continuation_token` parameter to replace the previous `marker` parameter.
  - The new listing behaviour is also adopted by the `receive_messages` operation:
      - The receive operation returns a message iterator as before.
      - The returned iterator supports a `by_page` operation to receive messages in batches.

  **New features**
  - Added async APIs to subnamespace `azure.storage.queue.aio`.
  - Distributed tracing framework OpenCensus is now supported.

  **Dependency updates**
  - Adopted [azure-core](https://pypi.org/project/azure-core/) 1.0.0b2
    - If you later want to revert to azure-storage-queue 12.0.0b1, or another Azure SDK
    library requiring azure-core 1.0.0b1, you must explicitly install azure-core
    1.0.0b1 as well. For example:

    `pip install azure-core==1.0.0b1 azure-storage-queue==12.0.0b1`

  **Fixes and improvements**
  - General refactor of duplicate and shared code.




  Version 12.0.0b1 is the first preview of our efforts to create a user-friendly and Pythonic client library for Azure Storage Queues. For more information about this, and preview releases of other Azure SDK libraries, please visit
  https://aka.ms/azure-sdk-preview1-python.

  **Breaking changes: New API design**
  - Operations are now scoped to a particular client:
      - `QueueServiceClient`: This client handles account-level operations. This includes managing service properties and listing the queues within an account.
      - `QueueClient`: The client handles operations within a particular queue. This includes creating or deleting that queue, as well as enqueueing and dequeueing messages.

      These clients can be accessed by navigating down the client hierarchy, or instantiated directly using URLs to the resource (account or queue).
      For full details on the new API, please see the [reference documentation](https://azure.github.io/azure-sdk-for-python/storage.html#azure-storage-queue).
  - New message iterator, for receiving messages from a queue in a continuous stream.
  - New underlying REST pipeline implementation, based on the new `azure-core` library.
  - Client and pipeline configuration is now available via keyword arguments at both the client level, and per-operation. See reference documentation for a full list of optional configuration arguments.
  - Authentication using `azure-identity` credentials
    - see the
    [Azure Identity documentation](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/identity/azure-identity/README.md)
    for more information
  - New error hierarchy:
      - All service errors will now use the base type: `azure.core.exceptions.HttpResponseError`
      - The are a couple of specific exception types derived from this base type for common error scenarios:
          - `ResourceNotFoundError`: The resource (e.g. queue, message) could not be found. Commonly a 404 status code.
          - `ResourceExistsError`: A resource conflict - commonly caused when attempting to create a resource that already exists.
          - `ResourceModifiedError`: The resource has been modified (e.g. overwritten) and therefore the current operation is in conflict. Alternatively this may be raised if a condition on the operation is not met.
          - `ClientAuthenticationError`: Authentication failed.
  - No longer have specific operations for `get_metadata` - use `get_properties` instead.
  - No longer have specific operations for `exists` - use `get_properties` instead.
  - Operations `get_queue_acl` and `set_queue_acl` have been renamed to `get_queue_access_policy` and `set_queue_access_policy`.
  - Operation `put_message` has been renamed to `enqueue_message`.
  - Operation `get_messages` has been renamed to `receive_messages`.


  - Updated dependency on azure-storage-common.


  - Support for 2018-11-09 REST version.


  - azure-storage-nspkg is not installed anymore on Python 3 (PEP420-based namespace package)


  - Support for 2018-03-28 REST version. Please see our REST API documentation and blog for information about the related added features.


  - Support for 2017-11-09 REST version. Please see our REST API documentation and blog for information about the related added features.
  - Added support for OAuth authentication for HTTPS requests(Please note that this feature is available in preview).


  - Support for 2017-07-29 REST version. Please see our REST API documentation and blogs for information about the related added features.
  - Queue messages can now have an arbitrarily large or infinite time to live.
  - Error message now contains the ErrorCode from the x-ms-error-code header value.


  - The package has switched from Apache 2.0 to the MIT license.


pkgId: ba167275b231d08c8975242167566792f3e01dd963397f731447685d59075b2a
name: python-azure-synapse-artifacts
arch: src
version: 0.15.0
epoch: 0
release: 1
summary: Microsoft Synapse Artifacts Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python/tree/main/sdk
rpm_license: MIT License
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-de7032c7-6160-47d2-a9e2-fd983ffdcfca
location_href: 00010243-python-azure-synapse-artifacts/python-azure-synapse-artifacts-0.15.0-1.src.rpm
checksum_type: sha256
description:
  This is the Microsoft Azure Synapse Artifacts Client Library.
  This package has been tested with Python 3.7+.
  For a more complete view of Azure libraries, see the [azure sdk python release](https://aka.ms/azsdk/python/all).



  _Azure SDK Python packages support for Python 2.7 has ended 01 January 2022. For more information and questions, please refer to https://github.com/Azure/azure-sdk-for-python/issues/20691_



  For code examples, see [Synapse Artifacts](https://docs.microsoft.com/python/api/overview/azure/) on docs.microsoft.com.



  If you encounter any bugs or have suggestions, please file an issue in the
  [Issues](https://github.com/Azure/azure-sdk-for-python/issues)
  section of the project.


  ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-python%2Fazure-synapse-artifacts%2FREADME.png)


pkgId: b6064de16ab39fb3ee5280ab4a6dfa2b3a67b53175edd53df8666c79e0481ad0
name: python-b2
arch: src
version: 3.8.0
epoch: 0
release: 1
summary: Command Line Tool for Backblaze B2
url: https://github.com/Backblaze/B2_Command_Line_Tool
rpm_license: MIT
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-f54896b1-d7ba-4db5-ac36-ffb55681a0ce
location_href: 00012353-python-b2/python-b2-3.8.0-1.src.rpm
checksum_type: sha256
description:
  &nbsp;[![Continuous Integration](https://github.com/Backblaze/B2_Command_Line_Tool/workflows/Continuous%20Integration/badge.svg)](https://github.com/Backblaze/B2_Command_Line_Tool/actions?query=workflow%3A%22Continuous+Integration%22)&nbsp;[![License](https://img.shields.io/pypi/l/b2.svg?label=License)](https://pypi.python.org/pypi/b2)&nbsp;[![python versions](https://img.shields.io/pypi/pyversions/b2.svg?label=python%20versions)](https://pypi.python.org/pypi/b2)&nbsp;[![PyPI version](https://img.shields.io/pypi/v/b2.svg?label=PyPI%20version)](https://pypi.python.org/pypi/b2)&nbsp;[![Docs](https://readthedocs.org/projects/b2-command-line-tool/badge/?version=master)](https://b2-command-line-tool.readthedocs.io/en/master/?badge=master)




  The command-line tool that gives easy access to all of the capabilities of B2 Cloud Storage.

  This program provides command-line access to the B2 service.



  The latest documentation is available on [Read the Docs](https://b2-command-line-tool.readthedocs.io/).



  Detailed instructions on how to install the command line tool can be found [here](https://www.backblaze.com/b2/docs/quick_command_line.html)



  [Homebrew](https://brew.sh/) is widely used in the Mac community, particularly amongst developers. We recommend using the [B2 CLI Homebrew](https://formulae.brew.sh/formula/b2-tools) formula as the quickest setup method for Mac users:
  ```
  brew install b2-tools
  ```



  Stand-alone binaries are available for Linux and Windows - this is the most straightforward way to use the command-line tool and is sufficient in most use cases. The latest versions are available for download from the [Releases page](https://github.com/Backblaze/B2_Command_Line_Tool/releases).



  You can also install it in your python environment ([virtualenv](https://pypi.org/project/virtualenv/) is recommended) from PyPI with:

      pip install b2



  If installing from the repository is needed in order to, for example, check if a pre-release version resolves a bug effectively, it can be installed with:

      python3 setup.py install

  In this case of installing a pre-release, [virtualenv](https://pypi.org/project/virtualenv/) is strongly recommended.



      b2 authorize-account [-h]  [applicationKeyId] [applicationKey]
      b2 cancel-all-unfinished-large-files [-h] bucketName
      b2 cancel-large-file [-h] fileId
      b2 clear-account [-h]
      b2 copy-file-by-id [-h] [--fetchMetadata] [--contentType CONTENTTYPE] [--range RANGE] [--info INFO | --noInfo] [--destinationServerSideEncryption {SSE-B2,SSE-C}] [--destinationServerSideEncryptionAlgorithm {AES256}] [--sourceServerSideEncryption {SSE-C}] [--sourceServerSideEncryptionAlgorithm {AES256}] [--fileRetentionMode {compliance,governance}] [--retainUntil TIMESTAMP] [--legalHold {on,off}] sourceFileId destinationBucketName b2FileName
      b2 create-bucket [-h] [--bucketInfo BUCKETINFO] [--corsRules CORSRULES] [--lifecycleRules LIFECYCLERULES] [--fileLockEnabled] [--replication REPLICATION] [--defaultServerSideEncryption {SSE-B2,none}] [--defaultServerSideEncryptionAlgorithm {AES256}] bucketName bucketType
      b2 create-key [-h] [--bucket BUCKET] [--namePrefix NAMEPREFIX] [--duration DURATION] [--allCapabilities] keyName [capabilities]
      b2 delete-bucket [-h] bucketName
      b2 delete-file-version [-h] [fileName] fileId
      b2 delete-key [-h] applicationKeyId
      b2 download-file-by-id [-h] [--noProgress] [--threads THREADS] [--sourceServerSideEncryption {SSE-C}] [--sourceServerSideEncryptionAlgorithm {AES256}] [--write-buffer-size BYTES] [--skip-hash-verification] [--max-download-streams-per-file MAX_DOWNLOAD_STREAMS_PER_FILE] fileId localFileName
      b2 download-file-by-name [-h] [--noProgress] [--threads THREADS] [--sourceServerSideEncryption {SSE-C}] [--sourceServerSideEncryptionAlgorithm {AES256}] [--write-buffer-size BYTES] [--skip-hash-verification] [--max-download-streams-per-file MAX_DOWNLOAD_STREAMS_PER_FILE] bucketName b2FileName localFileName
      b2 get-account-info [-h]
      b2 get-bucket [-h] [--showSize] bucketName
      b2 get-file-info [-h] fileId
      b2 get-download-auth [-h] [--prefix PREFIX] [--duration DURATION] bucketName
      b2 get-download-url-with-auth [-h] [--duration DURATION] bucketName fileName
      b2 hide-file [-h] bucketName fileName
      b2 list-buckets [-h] [--json]
      b2 list-keys [-h] [--long]
      b2 list-parts [-h] largeFileId
      b2 list-unfinished-large-files [-h] bucketName
      b2 ls [-h] [--long] [--json] [--replication] [--versions] [--recursive] [--withWildcard] bucketName [folderName]
      b2 rm [-h] [--dryRun] [--threads THREADS] [--queueSize QUEUESIZE] [--noProgress] [--failFast] [--versions] [--recursive] [--withWildcard] bucketName [folderName]
      b2 make-url [-h] fileId
      b2 make-friendly-url [-h] bucketName fileName
      b2 sync [-h] [--noProgress] [--dryRun] [--allowEmptySource] [--excludeAllSymlinks] [--threads THREADS] [--syncThreads SYNCTHREADS] [--downloadThreads DOWNLOADTHREADS] [--uploadThreads UPLOADTHREADS] [--compareVersions {none,modTime,size}] [--compareThreshold MILLIS] [--excludeRegex REGEX] [--includeRegex REGEX] [--excludeDirRegex REGEX] [--excludeIfModifiedAfter TIMESTAMP] [--destinationServerSideEncryption {SSE-B2,SSE-C}] [--destinationServerSideEncryptionAlgorithm {AES256}] [--sourceServerSideEncryption {SSE-C}] [--sourceServerSideEncryptionAlgorithm {AES256}] [--write-buffer-size BYTES] [--skip-hash-verification] [--max-download-streams-per-file MAX_DOWNLOAD_STREAMS_PER_FILE] [--incrementalMode] [--skipNewer | --replaceNewer] [--delete | --keepDays DAYS] source destination
      b2 update-bucket [-h] [--bucketInfo BUCKETINFO] [--corsRules CORSRULES] [--lifecycleRules LIFECYCLERULES] [--defaultRetentionMode {compliance,governance,none}] [--defaultRetentionPeriod period] [--replication REPLICATION] [--fileLockEnabled] [--defaultServerSideEncryption {SSE-B2,none}] [--defaultServerSideEncryptionAlgorithm {AES256}] bucketName [bucketType]
      b2 upload-file [-h] [--noProgress] [--quiet] [--contentType CONTENTTYPE] [--minPartSize MINPARTSIZE] [--sha1 SHA1] [--threads THREADS] [--info INFO] [--destinationServerSideEncryption {SSE-B2,SSE-C}] [--destinationServerSideEncryptionAlgorithm {AES256}] [--legalHold {on,off}] [--fileRetentionMode {compliance,governance}] [--retainUntil TIMESTAMP] [--incrementalMode] bucketName localFilePath b2FileName
      b2 update-file-legal-hold [-h] [fileName] fileId {on,off}
      b2 update-file-retention [-h] [--retainUntil TIMESTAMP] [--bypassGovernance] [fileName] fileId {governance,compliance,none}
      b2 replication-setup [-h] [--destination-profile DESTINATION_PROFILE] [--name NAME] [--priority PRIORITY] [--file-name-prefix PREFIX] [--include-existing-files] SOURCE_BUCKET_NAME DESTINATION_BUCKET_NAME
      b2 replication-delete [-h] SOURCE_BUCKET_NAME REPLICATION_RULE_NAME
      b2 replication-pause [-h] SOURCE_BUCKET_NAME REPLICATION_RULE_NAME
      b2 replication-unpause [-h] SOURCE_BUCKET_NAME REPLICATION_RULE_NAME
      b2 replication-status [-h] [--rule REPLICATION_RULE_NAME] [--destination-profile DESTINATION_PROFILE] [--dont-scan-destination] [--output-format {console,json,csv}] [--noProgress] [--columns COLUMN ONE,COLUMN TWO] SOURCE_BUCKET_NAME
      b2 version [-h]
      b2 license [-h]


  The environment variable `B2_ACCOUNT_INFO` specifies the sqlite
  file to use for caching authentication information.
  The default file to use is: `~/.b2_account_info`

  For more details on one command: `b2 <command> --help`

  When authorizing with application keys, this tool requires that the key
  have the 'listBuckets' capability so that it can take the bucket names
  you provide on the command line and translate them into bucket IDs for the
  B2 Storage service.  Each different command may required additional
  capabilities.  You can find the details for each command in the help for
  that command.



  Users with high performance networks, file sets with very small files or high network latency, will usually benefit from increased parallelism. Experiment with using the `--threads` parameter to increase performance.

  Note that using many threads could in some cases be detrimental to the other users on your network.



  An official docker image is provided for these who want to use B2 Command Line Tool in a docker environment.
  An example workflow could be (with passing environmental variables):

      B2_APPLICATION_KEY=<key> B2_APPLICATION_KEY_ID=<key-id> docker run --rm -e B2_APPLICATION_KEY -e B2_APPLICATION_KEY_ID b2:latest authorize-account
      B2_APPLICATION_KEY=<key> B2_APPLICATION_KEY_ID=<key-id> docker run --rm -e B2_APPLICATION_KEY -e B2_APPLICATION_KEY_ID b2:latest create-bucket test-bucket allPrivate
      B2_APPLICATION_KEY=<key> B2_APPLICATION_KEY_ID=<key-id> docker run --rm -e B2_APPLICATION_KEY -e B2_APPLICATION_KEY_ID -v <absolute-local-path-to-data>:/data b2:latest upload-file test-bucket /data/local-file remote-file
      B2_APPLICATION_KEY=<key> B2_APPLICATION_KEY_ID=<key-id> docker run --rm -e B2_APPLICATION_KEY -e B2_APPLICATION_KEY_ID -v <absolute-local-path-to-data>:/data b2:latest ls test-bucket
      B2_APPLICATION_KEY=<key> B2_APPLICATION_KEY_ID=<key-id> docker run --rm -e B2_APPLICATION_KEY -e B2_APPLICATION_KEY_ID -v <absolute-local-path-to-data>:/data b2:latest download-file-by-name test-bucket remote-file /data/local-file-2

  or mapping to a directory where account info will be kept:

      docker run --rm -it -v <absolute-local-path-to-account-info>:/b2 b2:latest authorize-account
      docker run --rm -v <absolute-local-path-to-account-info>:/b2 b2:latest create-bucket test-bucket allPrivate
      docker run --rm -v <absolute-local-path-to-account-info>:/b2 -v <absolute-local-path-to-data>:/data b2:latest upload-file test-bucket /data/local-file remote-file
      docker run --rm -v <absolute-local-path-to-account-info>:/b2 -v <absolute-local-path-to-data>:/data b2:latest ls test-bucket
      docker run --rm -v <absolute-local-path-to-account-info>:/b2 -v <absolute-local-path-to-data>:/data b2:latest download-file-by-name test-bucket remote-file /data/local-file-2





  Verbose logs to stdout can be enabled with the `--verbose` flag.

  A hidden flag `--debugLogs` can be used to enable logging to a `b2_cli.log` file (with log rotation at midnight) in current working directory. Please take care to not launch the tool from the directory that you are syncing, or the logs will get synced to the remote server (unless that is really what you want to do).

  For advanced users, a hidden option `--logConfig <filename.ini>` can be used to enable logging in a user-defined format and verbosity. An example log configuration can be found [here](contrib/debug_logs.ini).

  In order to see the raw request headers you may `export B2_DEBUG_HTTP=1` before calling the cli.



  Please refer to the [changelog](CHANGELOG.md).



  Please see our [contributing guidelines](CONTRIBUTING.md).


pkgId: 188dee9a887c6a498282022da72c9dbd82e07e5143c2050486b276e1d876fbb6
name: python-b2sdk
arch: src
version: 1.19.0
epoch: 0
release: 1
summary: Backblaze B2 SDK
url: https://github.com/Backblaze/b2-sdk-python
rpm_license: MIT
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-fa2408f5-33a1-4091-8a41-836a2dddc0c4
location_href: 00003088-python-b2sdk/python-b2sdk-1.19.0-1.src.rpm
checksum_type: sha256
description:
  &nbsp;[![Continuous Integration](https://github.com/Backblaze/b2-sdk-python/workflows/Continuous%20Integration/badge.svg)](https://github.com/Backblaze/b2-sdk-python/actions?query=workflow%3A%22Continuous+Integration%22)&nbsp;[![License](https://img.shields.io/pypi/l/b2sdk.svg?label=License)](https://pypi.python.org/pypi/b2)&nbsp;[![python versions](https://img.shields.io/pypi/pyversions/b2sdk.svg?label=python%20versions)](https://pypi.python.org/pypi/b2sdk)&nbsp;[![PyPI version](https://img.shields.io/pypi/v/b2sdk.svg?label=PyPI%20version)](https://pypi.python.org/pypi/b2sdk)&nbsp;[![Docs](https://readthedocs.org/projects/b2-sdk-python/badge/?version=master)](https://b2-sdk-python.readthedocs.io/en/master/)



  This repository contains a client library and a few handy utilities for easy access to all of the capabilities of B2 Cloud Storage.

  [B2 command-line tool](https://github.com/Backblaze/B2_Command_Line_Tool) is an example of how it can be used to provide command-line access to the B2 service, but there are many possible applications (including FUSE filesystems, storage backend drivers for backup applications etc).



  The latest documentation is available on [Read the Docs](https://b2-sdk-python.readthedocs.io).



  The sdk can be installed with:

      pip install b2sdk



  b2sdk follows [Semantic Versioning](https://semver.org/) policy, so in essence the version number is MAJOR.MINOR.PATCH (for example 1.2.3) and:
  - we increase MAJOR version when we make incompatible API changes
  - we increase MINOR version when we add functionality in a backwards-compatible manner, and
  - we increase PATCH version when we make backwards-compatible bug fixes (unless someone relies on the undocumented behavior of a fixed bug)

  Therefore when setting up b2sdk as a dependency, please make sure to match the version appropriately, for example you could put this in your `requirements.txt` to make sure your code is compatible with the `b2sdk` version your user will get from pypi:

  ```
  b2sdk>=0.0.0,<1.0.0
  ```



  Please refer to the [changelog](CHANGELOG.md).



  Please see our [contributing guidelines](CONTRIBUTING.md).


pkgId: 6fa6a07199886b0c914e2f7d8c67c6c40ba81bea9e3a22864f8b5a55d5545794
name: python-babelfish
arch: src
version: 0.6.0
epoch: 0
release: 1
summary: A module to work with countries and languages
url: https://github.com/Diaoul/babelfish
rpm_license: BSD-3-Clause
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-8ae46e15-9cc8-4479-9cf9-d7bacc9df7c9
location_href: 00003089-python-babelfish/python-babelfish-0.6.0-1.src.rpm
checksum_type: sha256
description:
  BabelFish is a Python library to work with countries and languages.

  [![tests](https://github.com/Diaoul/babelfish/actions/workflows/test.yml/badge.svg)](https://github.com/Diaoul/babelfish/actions/workflows/test.yml)


  BabelFish provides scripts, countries and languages from their respective ISO
  standards and a handy way to manipulate them with converters.


  Script representation from 4-letter code (ISO-15924):
  ```python
  >>> import babelfish
  >>> script = babelfish.Script('Hira')
  >>> script
  <Script [Hira]>
  ```


  Country representation from 2-letter code (ISO-3166):
  ```python
  >>> country = babelfish.Country('GB')
  >>> country
  <Country [GB]>
  ```

  Built-in country converters (name):
  ```python
  >>> country = babelfish.Country('GB')
  >>> country
  <Country [GB]>
  ```


  Language representation from 3-letter code (ISO-639-3):
  ```python
  >>> language = babelfish.Language("eng")
  >>> language
  <Language [en]>
  ```

  Country-specific language:
  ```python
  >>> language = babelfish.Language('por', 'BR')
  >>> language
  <Language [pt-BR]>
  ```

  Language with specific script:
  ```python
  >>> language = babelfish.Language.fromalpha2('sr')
  >>> language.script = babelfish.Script('Cyrl')
  >>> language
  <Language [sr-Cyrl]>
  ```

  Built-in language converters (alpha2, alpha3b, alpha3t, name, scope, type and opensubtitles):
  ```python
  >>> language = babelfish.Language('por', 'BR')
  >>> language.alpha2
  'pt'
  >>> language.scope
  'individual'
  >>> language.type
  'living'
  >>> language.opensubtitles
  'pob'
  >>> babelfish.Language.fromalpha3b('fre')
  <Language [fr]>
  ```


  BabelFish is licensed under the [3-clause BSD license](http://opensource.org/licenses/BSD-3-Clause>)

  Copyright (c) 2013, the BabelFish authors and contributors.


pkgId: c340bc7ca427649d39d28ca85a9667c86c25ab32422d2d9faa655c1a3b01a2d5
name: python-backoff
arch: src
version: 2.2.1
epoch: 0
release: 1
summary: Function decoration for backoff and retry
url: https://github.com/litl/backoff
rpm_license: MIT
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-70ee950d-fe37-4583-9077-b5787bdc5fa8
location_href: 00003090-python-backoff/python-backoff-2.2.1-1.src.rpm
checksum_type: sha256
description:
  **Function decoration for backoff and retry**
  This module provides function decorators which can be used to wrap a
  function such that it will be retried until some condition is met. It
  is meant to be of use when accessing unreliable resources with the
  potential for intermittent failures i.e. network resources and external
  APIs. Somewhat more generally, it may also be of use for dynamically
  polling resources for externally generated content.
  Decorators support both regular functions for synchronous code and
  `asyncio <https://docs.python.org/3/library/asyncio.html>`__'s coroutines
  for asynchronous code.


pkgId: 5fe98ebd315af4545abbc6aad5d5de8b7a637b3e6d5b8e88fcd176c9d08e89a4
name: python-backports.shutil_which
arch: src
version: 3.5.2
epoch: 0
release: 1
summary: Backport of shutil.which from Python 3.3
url: https://github.com/minrk/backports.shutil_which
rpm_license: Python Software Foundation License
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-4fceca7a-1483-4222-8b76-91e56b36a76b
location_href: 00013137-python-backports-shutil-which/python-backports.shutil_which-3.5.2-1.src.rpm
checksum_type: sha256
description:
  Use Python 3 shutil.which on Python 2::

      try:
          from shutil import which
      except ImportError:
          from backports.shutil_which import which


pkgId: 7f64053154c965777ecef6b3d7c980e751b59ad6d583646e9780842f8ef8a666
name: python-backports.ssl_match_hostname
arch: src
version: 3.7.0.1
epoch: 0
release: 1
summary: The ssl.match_hostname() function from Python 3.5
url: http://bitbucket.org/brandon/backports.ssl_match_hostname
rpm_license: Python Software Foundation License
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-974c9ec4-8177-4d31-bd41-c79ff0a42fb1
location_href: 00009562-python-backports-ssl-match-hostname/python-backports.ssl_match_hostname-3.7.0.1-1.src.rpm
checksum_type: sha256
description:
  The Secure Sockets Layer is only actually *secure*
  if you check the hostname in the certificate returned
  by the server to which you are connecting,
  and verify that it matches to hostname
  that you are trying to reach.
  But the matching logic, defined in `RFC2818`_,
  can be a bit tricky to implement on your own.
  So the ``ssl`` package in the Standard Library of Python 3.2
  and greater now includes a ``match_hostname()`` function
  for performing this check instead of requiring every application
  to implement the check separately.
  This backport brings ``match_hostname()`` to users
  of earlier versions of Python.
  Simply make this distribution a dependency of your package,
  and then use it like this::
      from backports.ssl_match_hostname import match_hostname, CertificateError
      [...]
      sslsock = ssl.wrap_socket(sock, ssl_version=ssl.PROTOCOL_SSLv23,
                                cert_reqs=ssl.CERT_REQUIRED, ca_certs=...)
      try:
          match_hostname(sslsock.getpeercert(), hostname)
      except CertificateError, ce:
  Brandon Craig Rhodes is merely the packager of this distribution;
  the actual code inside comes from Python 3.7 with small changes for
  portability.


pkgId: 6513e1fb03e9bb4ce16194ce7d20b9ed55b0785c0c58524c2c256b8727449839
name: python-backports.ssl_match_hostname-help
arch: noarch
version: 3.7.0.1
epoch: 0
release: 1
summary: Development documents and examples for backports.ssl_match_hostname
url: http://bitbucket.org/brandon/backports.ssl_match_hostname
rpm_license: Python Software Foundation License
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-974c9ec4-8177-4d31-bd41-c79ff0a42fb1
rpm_sourcerpm: python-backports.ssl_match_hostname-3.7.0.1-1.src.rpm
checksum_type: sha256
description:
  The Secure Sockets Layer is only actually *secure*
  if you check the hostname in the certificate returned
  by the server to which you are connecting,
  and verify that it matches to hostname
  that you are trying to reach.
  But the matching logic, defined in `RFC2818`_,
  can be a bit tricky to implement on your own.
  So the ``ssl`` package in the Standard Library of Python 3.2
  and greater now includes a ``match_hostname()`` function
  for performing this check instead of requiring every application
  to implement the check separately.
  This backport brings ``match_hostname()`` to users
  of earlier versions of Python.
  Simply make this distribution a dependency of your package,
  and then use it like this::
      from backports.ssl_match_hostname import match_hostname, CertificateError
      [...]
      sslsock = ssl.wrap_socket(sock, ssl_version=ssl.PROTOCOL_SSLv23,
                                cert_reqs=ssl.CERT_REQUIRED, ca_certs=...)
      try:
          match_hostname(sslsock.getpeercert(), hostname)
      except CertificateError, ce:
  Brandon Craig Rhodes is merely the packager of this distribution;
  the actual code inside comes from Python 3.7 with small changes for
  portability.

location_href:
  00009562-python-backports-ssl-match-hostname/python-backports.ssl_match_hostname-help-3.7.0.1-1.noarch.rpm


pkgId: 343b032591a05d6f6caf8f6b56dde75bf022402c4c63bbf997f3000a956e8c4b
name: python-backports.zoneinfo
arch: src
version: 0.2.1
epoch: 0
release: 1
summary: Backport of the standard library zoneinfo module
url: https://github.com/pganssle/zoneinfo
rpm_license: Apache-2.0
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-bc2d85f6-c36e-4ea0-b5bd-1e8c75f61d7a
location_href: 00009098-python-backports-zoneinfo/python-backports.zoneinfo-0.2.1-1.src.rpm
checksum_type: sha256
description:
  This package was originally the reference implementation for [PEP 615](https://www.python.org/dev/peps/pep-0615/), which proposes support for the IANA time zone database in the standard library, and now serves as a backport to Python 3.6+ (including PyPy).

  This exposes the `backports.zoneinfo` module, which is a backport of the [`zoneinfo`](https://docs.python.org/3.9/library/zoneinfo.html#module-zoneinfo) module. The backport's documentation can be found [on readthedocs](https://zoneinfo.readthedocs.io/en/latest/).

  The module uses the system time zone data if available, and falls back to the [`tzdata`](https://tzdata.readthedocs.io/en/latest/) package (available [on PyPI](https://pypi.org/project/tzdata/)) if installed.



  This module is called [`backports.zoneinfo`](https://pypi.org/project/backports.zoneinfo) on PyPI. To install it in your local environment, use:

  ```
  pip install backports.zoneinfo
  ```

  Or (particularly on Windows), you can also use the `tzdata` extra (which basically just declares a dependency on `tzdata`, so this doesn't actually save you any typing 😅):

  ```
  pip install backports.zoneinfo[tzdata]
  ```

  If you want to use this in your application, it is best to use [PEP 508 environment markers](https://www.python.org/dev/peps/pep-0508/#environment-markers) to declare a dependency *conditional on the Python version*:

  ```
  backports.zoneinfo;python_version<"3.9"
  ```

  Support for `backports.zoneinfo` in Python 3.9+ is currently minimal, since it is expected that you would use the standard library `zoneinfo` module instead.



  The `backports.zoneinfo` module should be a drop-in replacement for the Python 3.9 standard library module `zoneinfo`. If you do not support anything earlier than Python 3.9, **you do not need this library**; if you are supporting Python 3.6+, you may want to use this idiom to "fall back" to ``backports.zoneinfo``:

  ```python
  try:
      import zoneinfo
  except ImportError:
      from backports import zoneinfo
  ```

  To get access to time zones with this module, construct a `ZoneInfo` object and attach it to your datetime:

  ```python
  >>> from backports.zoneinfo import ZoneInfo
  >>> from datetime import datetime, timedelta, timezone
  >>> dt = datetime(1992, 3, 1, tzinfo=ZoneInfo("Europe/Minsk"))
  >>> print(dt)
  1992-03-01 00:00:00+02:00
  >>> print(dt.utcoffset())
  2:00:00
  >>> print(dt.tzname())
  EET
  ```

  Arithmetic works as expected without the need for a "normalization" step:

  ```python
  >>> dt += timedelta(days=90)
  >>> print(dt)
  1992-05-30 00:00:00+03:00
  >>> dt.utcoffset()
  datetime.timedelta(seconds=10800)
  >>> dt.tzname()
  'EEST'
  ```

  Ambiguous and imaginary times are handled using the `fold` attribute added in [PEP 495](https://www.python.org/dev/peps/pep-0495/):

  ```python
  >>> dt = datetime(2020, 11, 1, 1, tzinfo=ZoneInfo("America/Chicago"))
  >>> print(dt)
  2020-11-01 01:00:00-05:00
  >>> print(dt.replace(fold=1))
  2020-11-01 01:00:00-06:00

  >>> UTC = timezone.utc
  >>> print(dt.astimezone(UTC))
  2020-11-01 06:00:00+00:00
  >>> print(dt.replace(fold=1).astimezone(UTC))
  2020-11-01 07:00:00+00:00
  ```



  Currently we are not accepting contributions to this repository because we have not put the CLA in place and we would like to avoid complicating the process of adoption into the standard library. Contributions to [CPython](https://github.com/python/cpython) will eventually be backported to this repository — see [the Python developer's guide](https://devguide.python.org/) for more information on how to contribute to CPython.


pkgId: 2827a91f28ce4160ab36a750d055c1074ec3204f36ee1f1b12e9ae1f38008ab6
name: python-backports.zoneinfo-debuginfo
arch: aarch64
version: 0.2.1
epoch: 0
release: 1
summary: Debug information for package python-backports.zoneinfo
url: https://github.com/pganssle/zoneinfo
rpm_license: Apache-2.0
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Development/Debug
rpm_buildhost: resalloc-bc2d85f6-c36e-4ea0-b5bd-1e8c75f61d7a
rpm_sourcerpm: python-backports.zoneinfo-0.2.1-1.src.rpm
location_href: 00009098-python-backports-zoneinfo/python-backports.zoneinfo-debuginfo-0.2.1-1.aarch64.rpm
checksum_type: sha256
description:
  This package provides debug information for package python-backports.zoneinfo.
  Debug information is useful when developing applications that use this
  package or when debugging this package.


pkgId: 1ba51d7caa42dfb7b644302ac09e481a2045356be0005fffafc43b67198e7ece
name: python-backports.zoneinfo-debugsource
arch: aarch64
version: 0.2.1
epoch: 0
release: 1
summary: Debug sources for package python-backports.zoneinfo
url: https://github.com/pganssle/zoneinfo
rpm_license: Apache-2.0
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Development/Debug
rpm_buildhost: resalloc-bc2d85f6-c36e-4ea0-b5bd-1e8c75f61d7a
rpm_sourcerpm: python-backports.zoneinfo-0.2.1-1.src.rpm
location_href: 00009098-python-backports-zoneinfo/python-backports.zoneinfo-debugsource-0.2.1-1.aarch64.rpm
checksum_type: sha256
description:
  This package provides debug sources for package python-backports.zoneinfo.
  Debug sources are useful when developing applications that use this
  package or when debugging this package.


pkgId: e7fe1616b3653f09a28d78ce37426c343427fa6efe8ce2e53eda6d2d210312d7
name: python-bandit
arch: src
version: 1.7.5
epoch: 0
release: 1
summary: Security oriented static analyser for python code.
url: https://bandit.readthedocs.io/
rpm_license: Apache-2.0 license
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-cbff181c-84f6-4506-9c37-9df9e184ab27
location_href: 00009371-python-bandit/python-bandit-1.7.5-1.src.rpm
checksum_type: sha256
description:
  A security linter from PyCQA
  * Free software: Apache license
  * Documentation: https://bandit.readthedocs.io/en/latest/
  * Source: https://github.com/PyCQA/bandit
  * Bugs: https://github.com/PyCQA/bandit/issues
  * Contributing: https://github.com/PyCQA/bandit/blob/main/CONTRIBUTING.md


pkgId: d1e436314a04cdae3ec365caf9736fe44f2ae467b691c1c0c241133ca64bf246
name: python-bapy
arch: src
version: 1.0.43
epoch: 0
release: 1
summary: Bapy Package.
url: https://pypi.org/project/bapy/
rpm_license: GNU General Public License v3 or later (GPLv3+)
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-57eb8670-6a68-491d-b020-009bebf7cd0b
location_href: 00011434-python-bapy/python-bapy-1.0.43-1.src.rpm
checksum_type: sha256
description:
  ```bash
  docker pull kalilinux/kali:latest
  ```

  ```bash
  apt update -y; apt full-upgrade -y; apt install -y kali-linux-everything
  sudo python3 -m pip install --upgrade bapy
  ```




  ```bash
  sudo apt update -y; apt install python3.8 python3-pip -y
  sudo python3 -m pip install --upgrade bapy

  ```


  ```bash
  sudo python3 -m pip install --upgrade bapy
  ```



  ```bash
  python3 -m pip install --upgrade bapy
  ```



  ```bash
  rebashrc
  ```





  Update the repository and:

  ```bash
  rc secrets  # secrets-push.sh
  rebash
  ```


  ```bash
  rc secrets  #secrets-pull.sh
  rebash
  ```





  Perform any tests and:

  ```bash
  rc up  # project-upload.sh <path> <major|minor> <j5pu|jose-nferx|pypi>
  ```



  ```bash
  upgrade.sh name
  ```


pkgId: a1584157fe459503ce180f0d5364421c378041413e6ca496d0066cf6845a01df
name: python-barman
arch: src
version: 3.4.0
epoch: 0
release: 1
summary: Backup and Recovery Manager for PostgreSQL
url: https://www.pgbarman.org/
rpm_license: GPL-3.0
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-ccd161f1-cda6-4c76-9a9a-3cf38db24531
location_href: 00003093-python-barman/python-barman-3.4.0-1.src.rpm
checksum_type: sha256
description:
  Barman (Backup and Recovery Manager) is an open-source administration
  tool for disaster recovery of PostgreSQL servers written in Python.
  It allows your organisation to perform remote backups of multiple
  servers in business critical environments to reduce risk and help DBAs
  during the recovery phase.

  Barman is distributed under GNU GPL 3 and maintained by EnterpriseDB.


pkgId: 49bfdc221e6769aec215f1850661ca5d833319c1679d4d75bc79428db6a22124
name: python-baron
arch: src
version: 0.10.1
epoch: 0
release: 1
summary: Full Syntax Tree for python to make writing refactoring code a realist task
url: https://github.com/PyCQA/baron
rpm_license: lgplv3+
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-99fb302f-b593-429f-99cc-0f7a7c4b7057
location_href: 00013858-python-baron/python-baron-0.10.1-1.src.rpm
checksum_type: sha256
description:
  Baron is a Full Syntax Tree (FST) library for Python. By opposition to an [AST](https://en.wikipedia.org/wiki/Abstract_syntax_tree) which
  drops some syntax information in the process of its creation (like empty lines,
  comments, formatting), a FST keeps everything and guarantees the operation
  <code>fst\_to\_code(code\_to\_fst(source\_code)) == source\_code</code>.


pkgId: f091d9c52d6a9623c5296748d01b6e87541f39e280d055ff047a95e79cd66320
name: python-base58
arch: src
version: 2.1.1
epoch: 0
release: 1
summary: Base58 and Base58Check implementation.
url: https://github.com/keis/base58
rpm_license: MIT
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-3528a059-9636-4ea7-b235-adf4065c6776
location_href: 00009589-python-base58/python-base58-2.1.1-1.src.rpm
checksum_type: sha256
description:
  [![PyPI Version][pypi-image]](https://pypi.python.org/pypi?name=base58&:action=display)
  [![PyPI Downloads][pypi-downloads-image]](https://pypi.python.org/pypi?name=base58&:action=display)
  [![Build Status][travis-image]](https://travis-ci.org/keis/base58)
  [![Coverage Status][coveralls-image]](https://coveralls.io/r/keis/base58?branch=master)

  Base58 and Base58Check implementation compatible with what is used by the
  bitcoin network. Any other alternative alphabet (like the XRP one) can be used.

  Starting from version 2.0.0 **python2 is no longer supported** the 1.x series
  will remain supported but no new features will be added.




      $ printf "hello world" | base58
      StV1DL6CwTryKyV

      $ printf "hello world" | base58 -c
      3vQB7B6MrGQZaxCuFg4oh

      $ printf "3vQB7B6MrGQZaxCuFg4oh" | base58 -dc
      hello world

      $ printf "4vQB7B6MrGQZaxCuFg4oh" | base58 -dc
      Invalid checksum




      >>> import base58
      >>> base58.b58encode(b'hello world')
      b'StV1DL6CwTryKyV'
      >>> base58.b58decode(b'StV1DL6CwTryKyV')
      b'hello world'
      >>> base58.b58encode_check(b'hello world')
      b'3vQB7B6MrGQZaxCuFg4oh'
      >>> base58.b58decode_check(b'3vQB7B6MrGQZaxCuFg4oh')
      b'hello world'
      >>> base58.b58decode_check(b'4vQB7B6MrGQZaxCuFg4oh')
      Traceback (most recent call last):
        File "<stdin>", line 1, in <module>
        File "base58.py", line 89, in b58decode_check
          raise ValueError("Invalid checksum")
      ValueError: Invalid checksum
      
      
      
      >>> base58.b58encode(b'hello world', alphabet=base58.XRP_ALPHABET)
      b'StVrDLaUATiyKyV'
      >>> base58.b58decode(b'StVrDLaUATiyKyV', alphabet=base58.XRP_ALPHABET)
      b'hello world'


  [pypi-image]: https://img.shields.io/pypi/v/base58.svg?style=flat
  [pypi-downloads-image]: https://img.shields.io/pypi/dm/base58.svg?style=flat
  [travis-image]: https://img.shields.io/travis/keis/base58.svg?style=flat
  [coveralls-image]: https://img.shields.io/coveralls/keis/base58.svg?style=flat


pkgId: 1b2528dde486700d1f4b1db141a9314b300100150f9ee96c5f472241698c3ef8
name: python-basemap
arch: src
version: 1.3.6
epoch: 0
release: 1
summary: Plot data on map projections with matplotlib
url: https://matplotlib.org/basemap
rpm_license: MIT
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-510bf3b4-c670-4e6c-bbdd-bb14d71f3423
location_href: 00003094-python-basemap/python-basemap-1.3.6-1.src.rpm
checksum_type: sha256
description:
  Plot on map projections (with coastlines and political boundaries) using
  [`matplotlib`].

  This package depends on the support package [`basemap-data`] with the
  basic [`basemap`] data assets, and optionally on the support package
  [`basemap-data-hires`] with high-resolution data assets.



  Precompiled binary wheels for Windows and GNU/Linux are available in
  PyPI (architectures x86 and x64, Python 2.7 and 3.5+) and can be
  installed with [`pip`]:
  ```sh
  python -m pip install basemap
  ```

  If you need to install from source, please visit the
  [GitHub repository](https://github.com/matplotlib/basemap) for a
  step-by-step description.



  The library is licensed under the terms of the [MIT] license (see
  [`LICENSE`]). The GEOS dynamic library bundled with the package wheels
  is provided under the terms of the [LGPLv2.1] license as given in
  [`LICENSE.geos`].


  [`matplotlib`]:
  https://matplotlib.org/
  [`basemap`]:
  https://matplotlib.org/basemap/
  [`basemap-data`]:
  https://pypi.org/project/basemap-data
  [`basemap-data-hires`]:
  https://pypi.org/project/basemap-data-hires
  [`pip`]:
  https://pip.pypa.io/

  [LGPLv2.1]:
  https://spdx.org/licenses/LGPL-2.1-only.html
  [MIT]:
  https://spdx.org/licenses/MIT.html

  [`LICENSE`]:
  https://github.com/matplotlib/basemap/blob/v1.3.3/packages/basemap/LICENSE
  [`LICENSE.geos`]:
  https://github.com/matplotlib/basemap/blob/v1.3.3/packages/basemap/LICENSE.geos


pkgId: 374e57db9672669014cd1ce9bd01b0cfb1fc3a9fbef16b1996ee454bf9ad9b8b
name: python-bashlex
arch: src
version: 0.18
epoch: 0
release: 1
summary: Python parser for bash
url: https://github.com/idank/bashlex.git
rpm_license: GPLv3+
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-9adfb2e7-e293-463e-9c0f-809e3dfef600
location_href: 00010279-python-bashlex/python-bashlex-0.18-1.src.rpm
checksum_type: sha256
description:
  bashlex is a Python port of the parser used internally by GNU bash.

  For the most part it's transliterated from C, the major differences are:

  1. it does not execute anything
  2. it is reentrant
  3. it generates a complete AST

  See https://github.com/idank/bashlex/blob/master/README.md for more info.


pkgId: a5296ed3d6365954a349aec4de36e85afb0a44ebbc507dfacc668a691d5fbce5
name: python-batinfo
arch: src
version: 0.4.2
epoch: 0
release: 1
summary: A simple Python module to retrieve battery information
url: https://github.com/nicolargo/batinfo
rpm_license: LGPLv3
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-1caddd89-aac6-4aee-a9a2-2f3f0ac300ec
location_href: 00003096-python-batinfo/python-batinfo-0.4.2-1.src.rpm
checksum_type: sha256
description:
  A simple Python module to retrieve battery information on Linux-based operating system.
  No ACPI or external software is needed.
  Only the Linux kernel and its `/sys/class/power_supply` folder.
  A simple example says more than thousand words:
      In [1]: import batinfo
      In [2]: bat = batinfo.Batteries()
      In [3]: bat
      Out[3]: <batinfo.Battery.Batteries at 0x31c87d0>
      In [4]: bat.stat
      Out[4]: [{"status": "Full", "capacity": 50, "name": "CMB1", "uevent": "POWER_SUPPLY_NAME=CMB1\nPOWER_SUPPLY_STATUS=Full\nPOWER_SUPPLY_PRESENT=1\nPOWER_SUPPLY_TECHNOLOGY=Li-ion\nPOWER_SUPPLY_CYCLE_COUNT=0\nPOWER_SUPPLY_VOLTAGE_MIN_DESIGN=10800000\nPOWER_SUPPLY_VOLTAGE_NOW=12496000\nPOWER_SUPPLY_CURRENT_NOW=0\nPOWER_SUPPLY_CHARGE_FULL_DESIGN=5800000\nPOWER_SUPPLY_CHARGE_FULL=5800000\nPOWER_SUPPLY_CHARGE_NOW=3900000\nPOWER_SUPPLY_CAPACITY=100\nPOWER_SUPPLY_MODEL_NAME=CP293550-01\nPOWER_SUPPLY_MANUFACTURER=Fujitsu\nPOWER_SUPPLY_SERIAL_NUMBER=01A-Z100320001158Z", "alarm": 0, "charge_full": 5800000, "voltage_now": 12496000, "serial_number": "01A-Z100320001158Z", "cycle_count": 0, "current_now": 0, "charge_now": 3900000, "voltage_min_design": 10800000, "path": "/sys/class/power_supply/CMB1", "technology": "Li-ion", "manufacturer": "Fujitsu", "type": "Battery", "model_name": "CP293550-01", "present": 1, "charge_full_design": 5800000}]
      In [6]: bat.stat[0]
      Out[6]: {"status": "Full", "capacity": 100, "name": "CMB1", "uevent": "POWER_SUPPLY_NAME=CMB1\nPOWER_SUPPLY_STATUS=Full\nPOWER_SUPPLY_PRESENT=1\nPOWER_SUPPLY_TECHNOLOGY=Li-ion\nPOWER_SUPPLY_CYCLE_COUNT=0\nPOWER_SUPPLY_VOLTAGE_MIN_DESIGN=10800000\nPOWER_SUPPLY_VOLTAGE_NOW=12496000\nPOWER_SUPPLY_CURRENT_NOW=0\nPOWER_SUPPLY_CHARGE_FULL_DESIGN=5800000\nPOWER_SUPPLY_CHARGE_FULL=5800000\nPOWER_SUPPLY_CHARGE_NOW=3900000\nPOWER_SUPPLY_CAPACITY=100\nPOWER_SUPPLY_MODEL_NAME=CP293550-01\nPOWER_SUPPLY_MANUFACTURER=Fujitsu\nPOWER_SUPPLY_SERIAL_NUMBER=01A-Z100320001158Z", "alarm": 0, "charge_full": 5800000, "voltage_now": 12496000, "serial_number": "01A-Z100320001158Z", "cycle_count": 0, "current_now": 0, "charge_now": 3900000, "voltage_min_design": 10800000, "path": "/sys/class/power_supply/CMB1", "technology": "Li-ion", "manufacturer": "Fujitsu", "type": "Battery", "model_name": "CP293550-01", "present": 1, "charge_full_design": 5800000}
      In [7]: bat.stat[0].capacity
      Out[7]: 50
      In [8]: print bat.stat[0]
      100
      In [9]: bat.stat[0].manufacturer
      Out[9]: 'Fujitsu'
      In [9]: bat.stat[0].technology
      Out[9]: 'Li-ion'
      In [11]: bat.stat[0].charge_full
      Out[11]: 5800000
      In [12]: bat.stat[0].charge_now
      Out[12]: 3900000
      In [12]: bat.update()
      > Refresh the stats
  Have fun...


pkgId: e575ad073e4b7d58452bf56ef28cdc806c61d9e281b81c541630777493f04e4e
name: python-bbcode
arch: src
version: 1.1.0
epoch: 0
release: 1
summary: A pure python bbcode parser and formatter.
url: https://github.com/dcwatson/bbcode
rpm_license: BSD
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-e7783215-8e32-420d-87ca-85bc321e7f54
location_href: 00011551-python-bbcode/python-bbcode-1.1.0-1.src.rpm
checksum_type: sha256
description:
  **Latest Package**
  http://pypi.python.org/pypi/bbcode
  **Source Code**
  https://github.com/dcwatson/bbcode
  **Documentation**
  https://dcwatson.github.io/bbcode/
  [![CI Status](https://github.com/dcwatson/bbcode/workflows/CI/badge.svg)](https://github.com/dcwatson/bbcode/actions)


pkgId: 91bfa2e47e6c886a4f6f168c4823864ddd618687373fdb597af1ad03af12d2ba
name: python-bc-python-hcl2
arch: src
version: 0.3.51
epoch: 0
release: 1
summary: A parser for HCL2
url: https://github.com/bridgecrewio/python-hcl2
rpm_license: MIT
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-899e7cc1-e6d1-4a59-9a34-d7f693930927
location_href: 00011077-python-bc-python-hcl2/python-bc-python-hcl2-0.3.51-1.src.rpm
checksum_type: sha256
description:
  [![Build Status](https://github.com/bridgecrewio/python-hcl2/workflows/build/badge.svg)](https://github.com/bridgecrewio/python-hcl2/actions)
  [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://raw.githubusercontent.com/amplify-education/python-hcl2/master/LICENSE)
  [![PyPI](https://img.shields.io/pypi/v/bc-python-hcl2.svg)](https://pypi.org/project/bc-python-hcl2/)
  [![Python Versions](https://img.shields.io/pypi/pyversions/bc-python-hcl2.svg)](https://pypi.python.org/pypi/bc-python-hcl2)
  [![Downloads](https://img.shields.io/badge/dynamic/json.svg?label=downloads&url=https%3A%2F%2Fpypistats.org%2Fapi%2Fpackages%2Fbc-python-hcl2%2Frecent&query=data.last_month&colorB=brightgreen&suffix=%2FMonth)](https://pypistats.org/packages/bc-python-hcl2)



  This is a fork of the [Python HCL2](https://github.com/amplify-education/python-hcl2) repo by Amplify and is
  officially supported by Bridgecrew. We contributed as much as possible to the upstream project, but the two projects
  are now deviating in a way that pushing new changes upstream doesn't make sense anymore.



  A parser for [HCL2](https://github.com/hashicorp/hcl/blob/hcl2/hclsyntax/spec.md) written in Python using
  [Lark](https://github.com/lark-parser/lark). This parser only supports HCL2 and isn't backwards compatible
  with HCL v1. It can be used to parse any HCL2 config file such as Terraform.



  Amplify builds innovative and compelling digital educational products that empower teachers and students across the
  country. We have a long history as the leading innovator in K-12 education - and have been described as the best tech
  company in education and the best education company in tech. While others try to shrink the learning experience into
  the technology, we use technology to expand what is possible in real classrooms with real students and teachers.

  Learn more at <https://www.amplify.com>




  python-hcl2 requires Python 3.6.0 or higher to run.



  This package can be installed using `pip`

  ```sh
  pip3 install python-hcl2
  ```


  ```python
  import hcl2
  with open('foo.tf', 'r') as file:
      dict = hcl2.load(file)
  ```



  For development, `tox>=2.9.1` is recommended.



  python-hcl2 uses `tox`. You will need to install tox with `pip install tox`.
  Running `tox` will automatically execute linters as well as the unit tests.

  You can also run them individually with the `-e` argument.

  For example, `tox -e py37-unit` will run the unit tests for python 3.7

  To see all the available options, run `tox -l`.


  If you have any security issue to report, contact project maintainers privately.
  You can reach us at <mailto:github@amplify.com>


  We welcome pull requests! For your pull request to be accepted smoothly, we suggest that you:
   1. For any sizable change, first open a GitHub issue to discuss your idea.
   2. Create a pull request.  Explain why you want to make the change and what it’s for.

  We’ll try to answer any PR’s promptly.


pkgId: ef9bf898ff75cf70756839e48a9be75ceb7e284fb1a61c72b62bbd9f6e572cd3
name: python-bcj-cffi-debuginfo
arch: aarch64
version: 0.5.1
epoch: 0
release: 1
summary: Debug information for package python-bcj-cffi
url: http://github.com/miurahr/bcj-cffi
rpm_license: LGPL-2.1+
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Development/Debug
rpm_buildhost: resalloc-8c44b798-288f-4c70-b85a-b5c785ee5e12
rpm_sourcerpm: python-bcj-cffi-0.5.1-1.src.rpm
location_href: 00012064-python-bcj-cffi/python-bcj-cffi-debuginfo-0.5.1-1.aarch64.rpm
checksum_type: sha256
description:
  This package provides debug information for package python-bcj-cffi.
  Debug information is useful when developing applications that use this
  package or when debugging this package.


pkgId: 30eb50c721479792233e31b9e5d237d620e9ceb39222eff3a223ea4cd98e0425
name: python-bcj-cffi-debugsource
arch: aarch64
version: 0.5.1
epoch: 0
release: 1
summary: Debug sources for package python-bcj-cffi
url: http://github.com/miurahr/bcj-cffi
rpm_license: LGPL-2.1+
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Development/Debug
rpm_buildhost: resalloc-8c44b798-288f-4c70-b85a-b5c785ee5e12
rpm_sourcerpm: python-bcj-cffi-0.5.1-1.src.rpm
location_href: 00012064-python-bcj-cffi/python-bcj-cffi-debugsource-0.5.1-1.aarch64.rpm
checksum_type: sha256
description:
  This package provides debug sources for package python-bcj-cffi.
  Debug sources are useful when developing applications that use this
  package or when debugging this package.


pkgId: 5ed8c1ef43f756cfaa6f53e6fd578ea20ffaaf9d8fc65841c77aba8dd3063335
name: python-bcpy
arch: src
version: 0.1.8
epoch: 0
release: 1
summary: Microsoft SQL Server bcp (Bulk Copy) wrapper
url: https://github.com/titan550/bcpy
rpm_license: MIT License
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-b27cd69c-5f62-4a63-956c-d13670e7311a
location_href: 00012698-python-bcpy/python-bcpy-0.1.8-1.src.rpm
checksum_type: sha256
description:
  <table>
  <tr>
    <td>Latest Release</td>
    <td>
      <a href="https://pypi.org/project/bcpy/">
      <img src="https://img.shields.io/pypi/v/bcpy.svg" alt="latest release" />
      </a>
    </td>
  </tr>
  <tr>
    <td>License</td>
    <td>
      <a href="https://github.com/titan550/bcpy/blob/master/LICENSE">
      <img src="https://img.shields.io/pypi/l/bcpy.svg" alt="license" />
      </a>
  </td>
  </tr>
  <tr>
    <td>Build Status (master)</td>
    <td>
      <a href="https://travis-ci.org/titan550/bcpy">
      <img src="https://api.travis-ci.org/titan550/bcpy.svg?branch=master" alt="travis build status" />
      </a>
    </td>
  </tr>
  </table>



  This package is a wrapper for Microsoft's SQL Server bcp utility. Current database drivers available in Python are not fast enough for transferring millions of records (yes, I have tried [pyodbc fast_execute_many](https://github.com/mkleehammer/pyodbc/wiki/Features-beyond-the-DB-API#fast_executemany)). Despite the IO hits, the fastest option by far is saving the data to a CSV file in file system (preferably /dev/shm tmpfs) and using the bcp utility to transfer the CSV file to SQL Server.



  1. Make sure your computeer has the [requirements](#requirements).
  1. You can download and install this package from PyPI repository by running the command below.

  ```bash
  pip install bcpy
  ```



  Following examples show you how to load (1) flat files and (2) DataFrame objects to SQL Server using this package.



  Following example assumes that you have a comma separated file with no qualifier in path 'tests/data1.csv'. The code below sends the the file to SQL Server.

  ```python
  import bcpy


  sql_config = {
      'server': 'sql_server_hostname',
      'database': 'database_name',
      'username': 'test_user',
      'password': 'test_user_password1234'
  }
  sql_table_name = 'test_data1'
  csv_file_path = 'tests/data1.csv'
  flat_file = bcpy.FlatFile(qualifier='', path=csv_file_path)
  sql_table = bcpy.SqlTable(sql_config, table=sql_table_name)
  flat_file.to_sql(sql_table)
  ```



  The following example creates a DataFrame with 100 rows and 4 columns populated with random data and then it sends it to SQL Server.

  ```python
  import bcpy
  import numpy as np
  import pandas as pd


  sql_config = {
      'server': 'sql_server_hostname',
      'database': 'database_name',
      'username': 'test_user',
      'password': 'test_user_password1234'
  }
  table_name = 'test_dataframe'
  df = pd.DataFrame(np.random.randint(-100, 100, size=(100, 4)),
                    columns=list('ABCD'))
  bdf = bcpy.DataFrame(df)
  sql_table = bcpy.SqlTable(sql_config, table=table_name)
  bdf.to_sql(sql_table)
  ```



  You need a working version of Microsoft bcp installed in your system. Your PATH environment variable should contain the directory of the bcp utility. Following are the installation tutorials for different operating systems.

  - [Dockerfile (Ubuntu 18.04)](./bcp.Dockerfile)
  - [Linux](https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-tools)
  - [Mac](https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-tools?view=sql-server-2017#macos)
  - [Windows](https://docs.microsoft.com/en-us/sql/tools/bcp-utility)


pkgId: e9c9de709d0820226743a9649cb157c2c67e3ae101ef9f89af0675650b267368
name: python-beanbag
arch: src
version: 1.9.2
epoch: 0
release: 1
summary: A helper module for accessing REST APIs
url: https://github.com/ajtowns/beanbag
rpm_license: MIT
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-93f09b7d-a466-4a41-810f-f6c2ba1e63a7
location_href: 00003098-python-beanbag/python-beanbag-1.9.2-1.src.rpm
checksum_type: sha256
description:
  BeanBag is a simple module that lets you access REST APIs in an easy
  way. For example:
     >>> import beanbag
     >>> github = beanbag.BeanBag("https://api.github.com")
     >>> watchers = github.repos.ajtowns.beanbag.watchers()
     >>> for w in watchers:
  See `http://beanbag.readthedocs.org/` for more information.


pkgId: 350440b49aaaaf47c7b5e9dee96f20f820da547fe118b8549bfa3bd12a5a48aa
name: python-behave-django
arch: src
version: 1.4.0
epoch: 0
release: 1
summary: Behave BDD integration for Django
url: https://github.com/behave/behave-django
rpm_license: MIT
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-60f2c3e6-054d-43e4-a97d-30194951f038
location_href: 00013373-python-behave-django/python-behave-django-1.4.0-1.src.rpm
checksum_type: sha256
description:
  |build-status| |health| |python-support| |license| |docs-status| |gitter|
  Behave BDD integration for Django


pkgId: 173325ef4f98a944ffe7d82043a02df5c8436f6d287d840f4c2af6aba3cb9c1e
name: python-beniget
arch: src
version: 0.4.1
epoch: 0
release: 1
summary: Extract semantic information about static Python code
url: https://github.com/serge-sans-paille/beniget/
rpm_license: BSD 3-Clause
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-db370669-abf5-467d-a014-7c2128d5b345
location_href: 00003100-python-beniget/python-beniget-0.4.1-1.src.rpm
checksum_type: sha256
description:
  A static analyzer for Python2 and Python3 code.

  Beniget provides a static over-approximation of the global and
  local definitions inside Python Module/Class/Function.
  It can also compute def-use chains from each definition.


pkgId: 6bc896b558b5d20d1a664f501c1dbd69b22f86359071ba00dff75f0ccfc435cc
name: python-betacal
arch: src
version: 1.1.0
epoch: 0
release: 1
summary: Beta calibration
url: https://betacal.github.io/
rpm_license: MIT
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-f4d9c473-07c3-4622-84c7-fdf50528069a
location_href: 00011603-python-betacal/python-betacal-1.1.0-1.src.rpm
checksum_type: sha256
description:
  This package provides a BetaCalibration class which allows the user to fit any of our three proposed beta calibration models. For the paper and tutorials, check [https://betacal.github.io/](https://betacal.github.io/).



  * [Numpy] - NumPy is the fundamental package for scientific computing with
    Python.
  * [Scikit-learn] - Machine Learning in Python.



   - Install from pip using "pip install betacal"
   - Alternatively, download from the repository, cd to the folder and use "pip install ."
   - Once installed, import the package using "import betacal"



  Create a virtual environment with the necessary dependencies

  ```
  virtualenv venv
  . ./venv/bin/activate
  pip install -r requirements.txt
  ```

  and then run the script runtests.sh

  ```
  bash runtests.sh
  ```



  MIT

  [//]: # (References)
     [Numpy]: <http://www.numpy.org/>
     [Scikit-learn]: <http://scikit-learn.org/>


pkgId: 58899fea5763b52e1df135180b823d1bcb0c8bc5666e8e234217c2efe1505a94
name: python-betamax
arch: src
version: 0.8.1
epoch: 0
release: 1
summary: A VCR imitation for python-requests
url: https://github.com/sigmavirus24/betamax
rpm_license: Apache 2.0
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-b319920a-17b5-4b9a-91a2-a7a98bba0554
location_href: 00003101-python-betamax/python-betamax-0.8.1-1.src.rpm
checksum_type: sha256
description:
  Betamax is a VCR_ imitation for requests. This will make mocking out requests
  much easier. It is tested on `Travis CI`_.
  Put in a more humorous way: "Betamax records your HTTP interactions so the NSA
  does not have to."


pkgId: c5591bbaf52813729507c04f6eb893932f00db278f22d0bbf2d1a0100358cd96
name: python-betamax-matchers
arch: src
version: 0.4.0
epoch: 0
release: 1
summary: A VCR imitation for python-requests
url: https://github.com/sigmavirus24/betamax_matchers
rpm_license: Copyright 2014 Ian Cordasco
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-cf85070c-7c2d-4735-abb0-3beb9aee464b
location_href: 00003102-python-betamax-matchers/python-betamax-matchers-0.4.0-1.src.rpm
checksum_type: sha256
description:
          Experimental set of Matchers for `Betamax
          <https://github.com/sigmavirus24/betamax>`_ that may possibly end up in the
          main package.


pkgId: 738d8813069ba801b8d45acc576e81166e5cd99cc418b458b7c9d5a51fad9f8f
name: python-betamax-serializers
arch: src
version: 0.2.1
epoch: 0
release: 1
summary: A set of third-party serializers for Betamax
url: https://gitlab.com/betamax/serializers
rpm_license: Apache 2.0
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-b802e9a8-8cec-4c89-aaea-436872f9b4ae
location_href: 00003103-python-betamax-serializers/python-betamax-serializers-0.2.1-1.src.rpm
checksum_type: sha256
description:
  Experimental set of Serializers for `Betamax
  <https://github.com/sigmavirus24/betamax>`_ that may possibly end up in the
  main package.


pkgId: 48b729d30a6732d5f5e4912568bebf3e9b31b7fa3cc79b824ccb7c132b23ec2d
name: python-better-boto
arch: src
version: 0.43.0
epoch: 0
release: 1
summary: Helpers to make using boto3 more enjoyable
url: https://github.com/eamonnfaherty/better-boto
rpm_license: MIT License
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-e25ef38f-276d-49e8-af47-44a48f2e39c2
location_href: 00013710-python-better-boto/python-better-boto-0.43.0-1.src.rpm
checksum_type: sha256
description:
  Better Boto aims to reduce the burden of using AWS Boto3.  AWS Boto3 is a low level SDK for interacting with AWS Services
  and sometimes it feels too low level or too crud like.

  Better Boto is a collection of helper functions to make using AWS Boto easier.  For example, it added a create_or_update
  method to the AWS CloudFormation client.  It also provides some helpers for dealing with pagination operations and some
  help using AWS Organizations.  Check out the [docs](https://better-boto.readthedocs.io/en/latest/) for the full set of examples.




  [![Codacy Badge](https://api.codacy.com/project/badge/Grade/186212a8957b42a594ec8aa5f8d8a70c)](https://www.codacy.com/app/eamonnfaherty/better-boto?utm_source=github.com&amp;utm_medium=referral&amp;utm_content=eamonnfaherty/better-boto&amp;utm_campaign=Badge_Grade)

  [![Build Status](https://travis-ci.org/eamonnfaherty/better-boto.svg?branch=master)](https://travis-ci.org/eamonnfaherty/better-boto)

  [![Docs Status](https://readthedocs.org/projects/better-boto/badge/?version=latest)](https://better-boto.readthedocs.io/en/latest/)


pkgId: eb904a9b0231bd9f5d023664db616ce4d725795acc882ddc6e5996e6fdd87689
name: python-bibtexparser
arch: src
version: 1.4.0
epoch: 0
release: 1
summary: Bibtex parser for python 3
url: https://github.com/sciunto-org/python-bibtexparser
rpm_license: LGPLv3 or BSD
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-bbd1be55-8683-4afd-9abf-d9468fd69b48
location_href: 00003104-python-bibtexparser/python-bibtexparser-1.4.0-1.src.rpm
checksum_type: sha256
description:
  Python library to parse `bibtex <https://en.wikipedia.org/wiki/BibTeX>`_ files.
  Bibtexparser relies on `pyparsing <https://pypi.python.org/pypi/pyparsing>`_ and is compatible with Python 3.3 or newer.


pkgId: 7edb94c0209d898f5c9749876cb564b1a7fa11b6a4eae52c9820b1467dcd7ed3
name: python-bids-validator
arch: src
version: 1.10.0
epoch: 0
release: 1
summary: Validator for the Brain Imaging Data Structure
url: https://github.com/bids-standard/bids-validator
rpm_license: MIT
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-b25ce875-1756-4b56-9f5d-02aea8bf96ea
location_href: 00003106-python-bids-validator/python-bids-validator-1.10.0-1.src.rpm
checksum_type: sha256
description:
  [![Node Tests](https://github.com/bids-standard/bids-validator/actions/workflows/node_tests.yml/badge.svg)](https://github.com/bids-standard/bids-validator/actions/workflows/node_tests.yml)
  [![Python tests](https://github.com/bids-standard/bids-validator/actions/workflows/python_tests.yml/badge.svg)](https://github.com/bids-standard/bids-validator/actions/workflows/python_tests.yml)
  [![bids-examples tests](https://github.com/bids-standard/bids-validator/actions/workflows/test-bids-examples.yml/badge.svg)](https://github.com/bids-standard/bids-validator/actions/workflows/test-bids-examples.yml)
  [![CircleCI](https://circleci.com/gh/bids-standard/bids-validator.svg?style=shield&circle-token=:circle-token)](https://circleci.com/gh/bids-standard/bids-validator)
  [![Codecov](https://codecov.io/gh/bids-standard/bids-validator/branch/master/graph/badge.svg)](https://codecov.io/gh/bids-standard/bids-validator)
  [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3688707.svg)](https://doi.org/10.5281/zenodo.3688707)



  - [BIDS-Validator](#bids-validator)
    - [Quickstart](#quickstart)
    - [Support](#support)
    - [Maintainers and Contributors](#maintainers-and-contributors)
    - [Use](#use)
      - [API](#api)
      - [.bidsignore](#bidsignore)
      - [Configuration](#configuration)
      - [In the Browser](#in-the-browser)
      - [On the Server](#on-the-server)
      - [Through Command Line](#through-command-line)
    - [Docker image](#docker-image)
    - [Python Library](#python-library)
      - [Example](#example)
    - [Development](#development)
      - [Running Locally in a Browser](#running-locally-in-a-browser)
      - [Testing](#testing)
      - [Publishing](#publishing)
    - [Acknowledgments](#acknowledgments)



  1. Web version:
     1. Open [Google Chrome](https://www.google.com/chrome/) or
        [Mozilla Firefox](https://mozilla.org/firefox) (currently the only
        supported browsers)
     1. Go to https://bids-standard.github.io/bids-validator/ and select a folder
        with your BIDS dataset. If the validator seems to be working longer than
        couple of minutes please open [developer tools ](https://developer.chrome.com/devtools)
        and report the error at [https://github.com/bids-standard/bids-validator/issues](https://github.com/bids-standard/bids-validator/issues).
  1. Command line version:
     1. Install [Node.js](https://nodejs.org) (at least version 12.12.0)
     1. Update `npm` to be at least version 7 (`npm install --global npm@^7`)
     1. From a terminal run `npm install -g bids-validator`
     1. Run `bids-validator` to start validating datasets.
  1. Docker
     1. Install Docker
     1. From a terminal run `docker run -ti --rm -v /path/to/data:/data:ro bids/validator /data`
        but replace the `/path/to/data` part of the command with your own path on your machine.
  1. Python Library:
     1. Install [Python](https://www.python.org/)
     1. Install [Pip](https://pip.pypa.io/en/stable/installing/) package manager for Python, if
        not already installed.
     1. From a terminal run `pip install bids_validator` to acquire the
        [BIDS Validator PyPI package](https://pypi.org/project/bids-validator/)
        or `conda install bids-validator` for the
        [Conda package](https://anaconda.org/conda-forge/bids-validator).
     1. Open a Python terminal and type: `python`
     1. Import the BIDS Validator package `from bids_validator import BIDSValidator`
     1. Check if a file is BIDS compatible `BIDSValidator().is_bids('path/to/a/bids/file')`



  The BIDS Validator is designed to work in both the browser and in Node.js. We
  target support for the latest long term stable (LTS) release of Node.js and the
  latest version of Chrome.

  There is also a library of helper functions written in Python, for use with BIDS
  compliant applications written in this language.

  Please report any issues you experience while using these support targets via
  the [GitHub issue tracker](https://github.com/bids-standard/bids-validator/issues).
  If you experience issues outside of these supported environments and believe we
  should extend our targeted support feel free to open a new issue describing the
  issue, your support target and why you require extended support and we will
  address these issues on a case by case basis.



  <!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->

  [![All Contributors](https://img.shields.io/badge/all_contributors-43-orange.svg?style=flat-square)](#contributors-)

  <!-- ALL-CONTRIBUTORS-BADGE:END -->

  This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification.
  Contributions of any kind are welcome!

  The project is maintained by [@rwblair](https://github.com/rwblair/) with the help of many contributors listed below.
  (The [emoji key](https://allcontributors.org/docs/en/emoji-key) is indicating the kind of contribution)

  Please also see [Acknowledgments](#acknowledgments).

  <!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
  <!-- prettier-ignore-start -->
  <!-- markdownlint-disable -->
  <table>
    <tr>
      <td align="center"><a href="https://adam2392.github.io/"><img src="https://avatars.githubusercontent.com/u/3460267?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Adam Li</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=adam2392" title="Code">💻</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=adam2392" title="Tests">⚠️</a> <a href="#userTesting-adam2392" title="User Testing">📓</a> <a href="https://github.com/bids-standard/bids-validator/issues?q=author%3Aadam2392" title="Bug reports">🐛</a></td>
      <td align="center"><a href="https://github.com/agt24"><img src="https://avatars.githubusercontent.com/u/7869017?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Adam Thomas</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=agt24" title="Documentation">📖</a></td>
      <td align="center"><a href="http://happy5214.freedynamicdns.org/"><img src="https://avatars.githubusercontent.com/u/2992751?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Alexander Jones</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=happy5214" title="Code">💻</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=happy5214" title="Tests">⚠️</a> <a href="#ideas-happy5214" title="Ideas, Planning, & Feedback">🤔</a></td>
      <td align="center"><a href="https://github.com/musicinmybrain"><img src="https://avatars.githubusercontent.com/u/6898909?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Ben Beasley</b></sub></a><br /><a href="#platform-musicinmybrain" title="Packaging/porting to new platform">📦</a></td>
      <td align="center"><a href="http://chrisgorgolewski.org"><img src="https://avatars.githubusercontent.com/u/238759?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Chris Gorgolewski</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/issues?q=author%3Achrisgorgo" title="Bug reports">🐛</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=chrisgorgo" title="Code">💻</a> <a href="#data-chrisgorgo" title="Data">🔣</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=chrisgorgo" title="Documentation">📖</a> <a href="#example-chrisgorgo" title="Examples">💡</a> <a href="#ideas-chrisgorgo" title="Ideas, Planning, & Feedback">🤔</a> <a href="#infra-chrisgorgo" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a> <a href="#maintenance-chrisgorgo" title="Maintenance">🚧</a> <a href="#mentoring-chrisgorgo" title="Mentoring">🧑‍🏫</a> <a href="#question-chrisgorgo" title="Answering Questions">💬</a> <a href="https://github.com/bids-standard/bids-validator/pulls?q=is%3Apr+reviewed-by%3Achrisgorgo" title="Reviewed Pull Requests">👀</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=chrisgorgo" title="Tests">⚠️</a> <a href="#tutorial-chrisgorgo" title="Tutorials">✅</a> <a href="#talk-chrisgorgo" title="Talks">📢</a> <a href="#userTesting-chrisgorgo" title="User Testing">📓</a></td>
      <td align="center"><a href="https://github.com/choldgraf"><img src="https://avatars.githubusercontent.com/u/1839645?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Chris Holdgraf</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=choldgraf" title="Code">💻</a></td>
      <td align="center"><a href="https://github.com/effigies"><img src="https://avatars.githubusercontent.com/u/83442?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Chris Markiewicz</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=effigies" title="Code">💻</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=effigies" title="Tests">⚠️</a> <a href="#ideas-effigies" title="Ideas, Planning, & Feedback">🤔</a> <a href="https://github.com/bids-standard/bids-validator/issues?q=author%3Aeffigies" title="Bug reports">🐛</a> <a href="#question-effigies" title="Answering Questions">💬</a> <a href="#tool-effigies" title="Tools">🔧</a> <a href="#maintenance-effigies" title="Maintenance">🚧</a></td>
    </tr>
    <tr>
      <td align="center"><a href="https://github.com/david-nishi"><img src="https://avatars.githubusercontent.com/u/28666458?v=4?s=50" width="50px;" alt=""/><br /><sub><b>David Nishikawa</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=david-nishi" title="Code">💻</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=david-nishi" title="Tests">⚠️</a></td>
      <td align="center"><a href="https://github.com/DimitriPapadopoulos"><img src="https://avatars.githubusercontent.com/u/3234522?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Dimitri Papadopoulos Orfanos</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=DimitriPapadopoulos" title="Code">💻</a></td>
      <td align="center"><a href="https://duncanmmacleod.github.io/"><img src="https://avatars.githubusercontent.com/u/1618530?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Duncan Macleod</b></sub></a><br /><a href="#infra-duncanmmacleod" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a></td>
      <td align="center"><a href="https://github.com/franklin-feingold"><img src="https://avatars.githubusercontent.com/u/35307458?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Franklin Feingold</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=franklin-feingold" title="Documentation">📖</a></td>
      <td align="center"><a href="https://github.com/thinknoack"><img src="https://avatars.githubusercontent.com/u/3342083?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Gregory noack</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=thinknoack" title="Code">💻</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=thinknoack" title="Tests">⚠️</a></td>
      <td align="center"><a href="http://chymera.eu/"><img src="https://avatars.githubusercontent.com/u/950524?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Horea Christian</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=TheChymera" title="Code">💻</a></td>
      <td align="center"><a href="https://kaczmarj.github.io/"><img src="https://avatars.githubusercontent.com/u/17690870?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Jakub Kaczmarzyk</b></sub></a><br /><a href="#infra-kaczmarj" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a></td>
    </tr>
    <tr>
      <td align="center"><a href="https://github.com/jokedurnez"><img src="https://avatars.githubusercontent.com/u/7630327?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Joke Durnez</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=jokedurnez" title="Code">💻</a></td>
      <td align="center"><a href="http://jasmainak.github.io/"><img src="https://avatars.githubusercontent.com/u/15852194?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Mainak Jas</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=jasmainak" title="Code">💻</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=jasmainak" title="Tests">⚠️</a> <a href="#ideas-jasmainak" title="Ideas, Planning, & Feedback">🤔</a> <a href="https://github.com/bids-standard/bids-validator/pulls?q=is%3Apr+reviewed-by%3Ajasmainak" title="Reviewed Pull Requests">👀</a> <a href="#userTesting-jasmainak" title="User Testing">📓</a></td>
      <td align="center"><a href="http://fair.dei.unipd.it/marco-castellaro"><img src="https://avatars.githubusercontent.com/u/5088923?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Marco Castellaro</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=marcocastellaro" title="Code">💻</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=marcocastellaro" title="Tests">⚠️</a></td>
      <td align="center"><a href="https://github.com/MaxvandenBoom"><img src="https://avatars.githubusercontent.com/u/43676624?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Max</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=MaxvandenBoom" title="Code">💻</a> <a href="https://github.com/bids-standard/bids-validator/issues?q=author%3AMaxvandenBoom" title="Bug reports">🐛</a></td>
      <td align="center"><a href="http://psychoinformatics.de/"><img src="https://avatars.githubusercontent.com/u/136479?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Michael Hanke</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=mih" title="Documentation">📖</a></td>
      <td align="center"><a href="https://github.com/naveau"><img src="https://avatars.githubusercontent.com/u/1488318?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Mikael Naveau</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=naveau" title="Code">💻</a></td>
      <td align="center"><a href="https://github.com/nellh"><img src="https://avatars.githubusercontent.com/u/11369795?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Nell Hardcastle</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=nellh" title="Code">💻</a> <a href="#ideas-nellh" title="Ideas, Planning, & Feedback">🤔</a> <a href="#infra-nellh" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a> <a href="#question-nellh" title="Answering Questions">💬</a> <a href="https://github.com/bids-standard/bids-validator/pulls?q=is%3Apr+reviewed-by%3Anellh" title="Reviewed Pull Requests">👀</a></td>
    </tr>
    <tr>
      <td align="center"><a href="https://github.com/ntraut"><img src="https://avatars.githubusercontent.com/u/22977927?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Nicolas Traut</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=ntraut" title="Code">💻</a></td>
      <td align="center"><a href="https://www.linkedin.com/in/parul-sethi"><img src="https://avatars.githubusercontent.com/u/11822050?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Parul Sethi</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=parulsethi" title="Code">💻</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=parulsethi" title="Tests">⚠️</a></td>
      <td align="center"><a href="https://github.com/patsycle"><img src="https://avatars.githubusercontent.com/u/41481345?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Patricia Clement</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=patsycle" title="Code">💻</a></td>
      <td align="center"><a href="https://remi-gau.github.io/"><img src="https://avatars.githubusercontent.com/u/6961185?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Remi Gau</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=Remi-Gau" title="Code">💻</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=Remi-Gau" title="Documentation">📖</a> <a href="#userTesting-Remi-Gau" title="User Testing">📓</a></td>
      <td align="center"><a href="https://hoechenberger.net/"><img src="https://avatars.githubusercontent.com/u/2046265?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Richard Höchenberger</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=hoechenberger" title="Code">💻</a> <a href="#userTesting-hoechenberger" title="User Testing">📓</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=hoechenberger" title="Tests">⚠️</a> <a href="https://github.com/bids-standard/bids-validator/issues?q=author%3Ahoechenberger" title="Bug reports">🐛</a></td>
      <td align="center"><a href="https://github.com/robertoostenveld"><img src="https://avatars.githubusercontent.com/u/899043?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Robert Oostenveld</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=robertoostenveld" title="Code">💻</a> <a href="#ideas-robertoostenveld" title="Ideas, Planning, & Feedback">🤔</a> <a href="https://github.com/bids-standard/bids-validator/issues?q=author%3Arobertoostenveld" title="Bug reports">🐛</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=robertoostenveld" title="Tests">⚠️</a></td>
      <td align="center"><a href="https://github.com/SetCodesToFire"><img src="https://avatars.githubusercontent.com/u/25459509?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Rohan Goyal</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=SetCodesToFire" title="Code">💻</a></td>
    </tr>
    <tr>
      <td align="center"><a href="https://github.com/rwblair"><img src="https://avatars2.githubusercontent.com/u/14927911?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Ross Blair</b></sub></a><br /><a href="#maintenance-rwblair" title="Maintenance">🚧</a> <a href="#ideas-rwblair" title="Ideas, Planning, & Feedback">🤔</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=rwblair" title="Code">💻</a> <a href="https://github.com/bids-standard/bids-validator/issues?q=author%3Arwblair" title="Bug reports">🐛</a> <a href="#infra-rwblair" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a> <a href="#projectManagement-rwblair" title="Project Management">📆</a> <a href="#question-rwblair" title="Answering Questions">💬</a> <a href="https://github.com/bids-standard/bids-validator/pulls?q=is%3Apr+reviewed-by%3Arwblair" title="Reviewed Pull Requests">👀</a> <a href="#tool-rwblair" title="Tools">🔧</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=rwblair" title="Tests">⚠️</a></td>
      <td align="center"><a href="http://www.poldracklab.org/"><img src="https://avatars.githubusercontent.com/u/871056?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Russ Poldrack</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=poldrack" title="Code">💻</a> <a href="#financial-poldrack" title="Financial">💵</a> <a href="#fundingFinding-poldrack" title="Funding Finding">🔍</a></td>
      <td align="center"><a href="http://soichi.us/"><img src="https://avatars.githubusercontent.com/u/923896?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Soichi Hayashi</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/issues?q=author%3Asoichih" title="Bug reports">🐛</a></td>
      <td align="center"><a href="https://www.stefanappelhoff.com"><img src="https://avatars.githubusercontent.com/u/9084751?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Stefan Appelhoff</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/issues?q=author%3Asappelhoff" title="Bug reports">🐛</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=sappelhoff" title="Code">💻</a> <a href="#data-sappelhoff" title="Data">🔣</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=sappelhoff" title="Documentation">📖</a> <a href="#example-sappelhoff" title="Examples">💡</a> <a href="#ideas-sappelhoff" title="Ideas, Planning, & Feedback">🤔</a> <a href="#infra-sappelhoff" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a> <a href="#maintenance-sappelhoff" title="Maintenance">🚧</a> <a href="#mentoring-sappelhoff" title="Mentoring">🧑‍🏫</a> <a href="#question-sappelhoff" title="Answering Questions">💬</a> <a href="https://github.com/bids-standard/bids-validator/pulls?q=is%3Apr+reviewed-by%3Asappelhoff" title="Reviewed Pull Requests">👀</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=sappelhoff" title="Tests">⚠️</a> <a href="#tutorial-sappelhoff" title="Tutorials">✅</a> <a href="#talk-sappelhoff" title="Talks">📢</a> <a href="#userTesting-sappelhoff" title="User Testing">📓</a></td>
      <td align="center"><a href="https://github.com/suyashdb"><img src="https://avatars.githubusercontent.com/u/11152799?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Suyash </b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=suyashdb" title="Code">💻</a></td>
      <td align="center"><a href="https://github.com/tsalo"><img src="https://avatars.githubusercontent.com/u/8228902?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Taylor Salo</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=tsalo" title="Code">💻</a></td>
      <td align="center"><a href="https://github.com/olgn"><img src="https://avatars.githubusercontent.com/u/8853289?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Teal Hobson-Lowther</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=olgn" title="Code">💻</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=olgn" title="Tests">⚠️</a></td>
    </tr>
    <tr>
      <td align="center"><a href="https://github.com/riddlet"><img src="https://avatars.githubusercontent.com/u/4789331?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Travis Riddle</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/issues?q=author%3Ariddlet" title="Bug reports">🐛</a></td>
      <td align="center"><a href="https://github.com/VisLab"><img src="https://avatars.githubusercontent.com/u/1189050?v=4?s=50" width="50px;" alt=""/><br /><sub><b>VisLab</b></sub></a><br /><a href="#ideas-VisLab" title="Ideas, Planning, & Feedback">🤔</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=VisLab" title="Code">💻</a></td>
      <td align="center"><a href="https://github.com/wazeerzulfikar"><img src="https://avatars.githubusercontent.com/u/15856554?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Wazeer Zulfikar</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=wazeerzulfikar" title="Documentation">📖</a></td>
      <td align="center"><a href="https://github.com/yarikoptic"><img src="https://avatars.githubusercontent.com/u/39889?v=4?s=50" width="50px;" alt=""/><br /><sub><b>Yaroslav Halchenko</b></sub></a><br /><a href="#ideas-yarikoptic" title="Ideas, Planning, & Feedback">🤔</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=yarikoptic" title="Code">💻</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=yarikoptic" title="Documentation">📖</a> <a href="#userTesting-yarikoptic" title="User Testing">📓</a></td>
      <td align="center"><a href="https://github.com/constellates"><img src="https://avatars.githubusercontent.com/u/4325905?v=4?s=50" width="50px;" alt=""/><br /><sub><b>constellates</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=constellates" title="Code">💻</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=constellates" title="Tests">⚠️</a></td>
      <td align="center"><a href="https://github.com/dewarrn1"><img src="https://avatars.githubusercontent.com/u/1322751?v=4?s=50" width="50px;" alt=""/><br /><sub><b>dewarrn1</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=dewarrn1" title="Code">💻</a></td>
      <td align="center"><a href="https://github.com/dkp"><img src="https://avatars.githubusercontent.com/u/965184?v=4?s=50" width="50px;" alt=""/><br /><sub><b>dkp</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=dkp" title="Code">💻</a></td>
    </tr>
    <tr>
      <td align="center"><a href="https://github.com/MatthewZito"><img src="https://avatars.githubusercontent.com/u/47864657?v=4?s=50" width="50px;" alt=""/><br /><sub><b>goldmund</b></sub></a><br /><a href="https://github.com/bids-standard/bids-validator/commits?author=MatthewZito" title="Code">💻</a> <a href="https://github.com/bids-standard/bids-validator/commits?author=MatthewZito" title="Tests">⚠️</a></td>
    </tr>
  </table>

  <!-- markdownlint-restore -->
  <!-- prettier-ignore-end -->

  <!-- ALL-CONTRIBUTORS-LIST:END -->





  The BIDS Validator has one primary method that takes a directory as either a
  path to the directory (node) or the object given by selecting a directory with a
  file input (browser), an options object, and a callback.

  Available options include:

  - ignoreWarnings - (boolean - defaults to false)
  - ignoreNiftiHeaders - (boolean - defaults to false)

  For example:

  `validate.BIDS(directory, {ignoreWarnings: true}, function (issues, summary) {console.log(issues.errors, issues.warnings);});`

  If you would like to test individual files you can use the file specific checks
  that we expose.

  - validate.BIDS()
  - validate.JSON()
  - validate.TSV()
  - validate.NIFTI()

  Additionally you can reformat stored errors against a new config using `validate.reformat()`



  Optionally one can include a `.bidsignore` file in the root of the dataset. This
  file lists patterns (compatible with the [.gitignore syntax](https://git-scm.com/docs/gitignore))
  defining files that should be ignored by the validator. This option is useful
  when the validated dataset includes file types not yet supported by BIDS
  specification.

  ```Text
  *_not_bids.txt
  extra_data/
  ```



  You can configure the severity of errors by passing a json configuration file
  with a `-c` or `--config` flag to the command line interface or by defining a
  config object on the options object passed during javascript usage.

  If no path is specified a default path of `.bids-validator-config.json` will be used. You can add this file to your dataset to share dataset specific validation configuration. To disable this behavior use `--no-config` and the default configuration will be used.

  The basic configuration format is outlined below. All configuration is optional.

  ```JSON
  {
  	"ignore": [],
  	"warn": [],
  	"error": [],
  	"ignoredFiles": []
  }
  ```

  `ignoredFiles` takes a list of file paths or glob patterns you'd like to ignore.
  Lets say we want to ignore all files and sub-directory under `/derivatives/`.
  **This is not the same syntax as used in the .bidsignore file**

  ```JSON
  {
  	"ignoredFiles": ["/derivatives/**"]
  }
  ```

  Note that adding two stars `**` in path makes validator recognize all files and
  sub-dir to be ignored.

  `ignore`, `warn`, and `error` take lists of issue codes or issue keys and change
  the severity of those issues so they are either ignored or reported as warnings
  or errors. You can find a list of all available issues at
  [utils/issues/list](https://github.com/bids-standard/bids-validator/blob/master/bids-validator/utils/issues/list.js).

  Some issues may be ignored by default, but can be elevated to warnings or errors.
  These provide a way to check for common things that are more specific than BIDS
  compatibility. An example is a check for the presence of a T1w modality. The
  following would raise an error if no T1W image was found in a dataset.

  ```JSON
  {
  	"error": ["NO_T1W"]
  }
  ```

  In addition to issue codes and keys these lists can also contain objects with
  and "and" or "or" properties set to arrays of codes or keys. These allow some
  level of conditional logic when configuring issues. For example:

  ```JSON
  {
  	"ignore": [
  		{
  			"and": [
  				"ECHO_TIME_GREATER_THAN",
  				"ECHO_TIME_NOT_DEFINED"
  			]
  		}
  	]
  }
  ```

  In the above example the two issues will only be ignored if both of them are
  triggered during validation.

  ```JSON
  {
  	"ignore": [
  		{
  			"and": [
  				"ECHO_TIME_GREATER_THAN",
  				"ECHO_TIME_NOT_DEFINED"
  				{
  					"or": [
  						"ECHO_TIME1-2_NOT_DEFINED",
  						"ECHO_TIME_MUST_DEFINE"
  					]
  				}
  			]
  		}
  	]
  }
  ```

  And in this example the listed issues will only be ignored if
  `ECHO_TIME_GREATER_THAN`, `ECHO_TIME_NOT_DEFINED` and either
  `ECHO_TIME1-2_NOT_DEFINED` or `ECHO_TIME_MUST_DEFINE` are triggered during
  validation.

  "or" arrays are not supported at the lowest level because it wouldn't add any
  functionality. For example the following is not supported.

  ```JSON
  {
  	"ignore": [
  		{
  			"or": [
  				"ECHO_TIME_GREATER_THAN",
  				"ECHO_TIME_NOT_DEFINED"
  			]
  		}
  	]
  }
  ```

  because it would be functionally the same as this:

  ```JSON
  {
  	"ignore": [
  		"ECHO_TIME_GREATER_THAN",
  		"ECHO_TIME_NOT_DEFINED"
  	]
  }
  ```

  For passing a configuration while using the bids-validator on the command line,
  you can use the following style to for example ignore empty
  file errors (99) and files that cannot be read (44):

  ```
  bids-validator --config.ignore=99 --config.ignore=44 path/to/bids/dir
  ```

  This style of use puts limits on what configuration you can require, so for
  complex scenarios, we advise users to create a dedicated configuration file with
  contents as described above.



  The BIDS Validator currently works in the browser with [browserify](https://browserify.org/)
  or [webpack](https://webpack.js.org/). You can add it to a project by cloning
  the validator and requiring it with browserify syntax
  `const validate = require('bids-validator');` or an ES2015 webpack import
  `import validate from 'bids-validator'`.



  The BIDS validator works like most npm packages. You can install it by running
  `npm install bids-validator`.



  If you install the bids validator globally by using `npm install -g bids-validator`
  you will be able to use it as a command line tool. Once installed you should be
  able to run `bids-validator /path/to/your/bids/directory` and see any validation
  issues logged to the terminal. Run `bids-validator` without a directory path to
  see available options.



  [![Docker Image Version (latest by date)](https://img.shields.io/docker/v/bids/validator?label=docker)](https://hub.docker.com/r/bids/validator)

  To use bids validator with [docker](https://www.docker.com/), you simply need to
  [install docker](https://docs.docker.com/install/) on your system.

  And then from a terminal run:

  - `docker run -ti --rm bids/validator --version` to print the version of the
    docker image
  - `docker run -ti --rm bids/validator --help` to print the help
  - `docker run -ti --rm -v /path/to/data:/data:ro bids/validator /data`
    to validate the dataset `/path/to/data` on your host machine

  See here for a brief explanation of the commands:

  - `docker run` is the command to tell docker to run a certain docker image,
    usually taking the form `docker run <IMAGENAME> <COMMAND>`
  - the `-ti` flag means the inputs are accepted and outputs are printed to the
    terminal
  - the `--rm` flag means that the state of the docker container is not saved
    after it has run
  - the `-v` flag is adding your local data to the docker container
    ([bind-mounts](https://docs.docker.com/storage/bind-mounts/)). Importantly,
    the input after the `-v` flag consists of three fields separated colons: `:`
    - the first field is the path to the directory on the host machine:
      `/path/to/data`
    - the second field is the path where the directory is mounted in the
      container
    - the third field is optional. In our case, we use `ro` to specify that the
      mounted data is _read only_



  [![PyPI version](https://badge.fury.io/py/bids-validator.svg)](https://badge.fury.io/py/bids-validator)
  [![Conda version](https://img.shields.io/conda/vn/conda-forge/bids-validator)](https://anaconda.org/conda-forge/bids-validator)

  There are is a limited library of helper functions written in Python. The main function
  determines if a file extension is compliant with the BIDS specification. You can find
  the available functions in the library, as well as their descriptions,
  [here](https://github.com/bids-standard/bids-validator/blob/master/bids-validator/bids_validator/bids_validator.py).
  To install, run `pip install -U bids_validator` (requires python and pip) or
  `conda install bids-validator` (requires a Conda environment).



  ```Python
  from bids_validator import BIDSValidator
  validator = BIDSValidator()
  filepaths = ["/sub-01/anat/sub-01_rec-CSD_T1w.nii.gz", "/sub-01/anat/sub-01_acq-23_rec-CSD_T1w.exe"]
  for filepath in filepaths:
      print(validator.is_bids(filepath))  # will print True, and then False
  ```



  To develop locally, clone the project and run `npm install` from the project
  root. This will install external dependencies. If you wish to install
  `bids-validator` globally (so that you can run it in other folders), use the
  following command to install it globally: `cd bids-validator && npm install -g` (for windows users, if in a different drive add /d, e.g. `cd /d F:\bids-validator && npm install -g`)

  Please see the [CONTRIBUTING.md](../CONTRIBUTING.md)
  for additional details.



  bids-validator is bundled with esbuild. While developing, the script `bids-validator/bin/bids-validator` will automatically bundle the project each time it is run. To test a build without publishing it `npm -w bids-validator run build`. This will generate a bids-validator/dist directory containing the local build and `bids-validator/bin/bids-validator` will use this build. To return to automatic bundling on each run, remove the dist directory.



  A note about OS X, the dependencies for the browser require a npm package called
  node-gyp which needs xcode to be installed in order to be compiled.

  1. The browser version of `bids-validator` lives in the repo subdirectory
     `/bids-validator-web`. It is a [React.js](https://reactjs.org/) application
     that uses the [next.js](https://nextjs.org/) framework.
  2. To develop `bids-validator` and see how it will act in the browser, simply run
     `npm run web-dev` in the project root and navigate to `localhost:3000`.
  3. In development mode, changes to the codebase will trigger rebuilds of the application
     automatically.
  4. Changes to the `/bids-validator` in the codebase will also be reflected in the
     web application.
  5. Tests use the [Jest](https://jestjs.io/index.html) testing library and should be developed in `/bids-validator-web/tests`.
     We can always use more tests, so please feel free to contribute a test that reduces the chance
     of any bugs you fix!
  6. To ensure that the web application compiles successfully in production, run `npm run web-export`



  If it's your first time running tests, first use the command `git submodule update --init --depth 1` to pull the test example data. This repo contains the [bids-examples github repository](https://github.com/bids-standard/bids-examples) as a [submodule](https://git-scm.com/book/en/v2/Git-Tools-Submodules).

  To start the test suite run `npm run test` from the project root. `npm run test -- --watch`
  is useful to run tests while making changes. A coverage report is available with
  `npm run coverage`.

  To run the linter which checks code conventions run `npm run lint`.



  Global installs are not recommended for development because of the possibility of package conflicts with other Node.js projects. If you do need to test with a global install from a development tree, follow these steps to generate the NPM package without publishing it and install the package locally.

  1. `npm -w bids-validator run build`
  2. `npm -w bids-validator pack`
  3. `npm install -g bids-validator-*.tgz`



  Publishing is done with [Lerna](https://github.com/lerna/lerna). Use the command `npx lerna publish` and follow instructions to set a new version.

  Using lerna publish will create a git commit with updated version information and create a version number tag for it, push the tag to GitHub, then publish to NPM and PyPI. The GitHub release is manual following that.



  Many contributions to the `bids-validator` were done by members of the
  BIDS community. See the
  [list of contributors](https://bids-specification.readthedocs.io/en/stable/99-appendices/01-contributors.html).

  A large part of the development of `bids-validator` is currently done by
  [Squishymedia](https://squishymedia.com/), who are in turn financed through
  different grants offered for the general development of BIDS. See the list
  below.

  Development and contributions were supported through the following federally
  funded projects/grants:

  - [BIDS Derivatives (NIMH: R24MH114705, PI: Poldrack)](https://grantome.com/grant/NIH/R24-MH114705-01)
  - [OpenNeuro (NIMH: R24MH117179, PI: Poldrack)](https://grantome.com/grant/NIH/R24-MH117179-01)
  - [Spokes: MEDIUM: WEST (NSF: 1760950, PI: Poldrack & Gorgolewski)](https://grantome.com/grant/NSF/IIS-1760950)
  - [ReproNim](http://repronim.org) [(NIH-NIBIB P41 EB019936, PI: Kennedy)](https://projectreporter.nih.gov/project_info_description.cfm?aid=8999833)


pkgId: b3172cc3c56243fbbed7871541b617dafaa7309922a08b28da917b6e5eb69a96
name: python-bigquery-schema-generator
arch: src
version: 1.5.1
epoch: 0
release: 1
summary: BigQuery schema generator from JSON or CSV data
url: https://github.com/bxparks/bigquery-schema-generator
rpm_license: Apache 2.0
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-a28c957a-81db-44a7-95a0-1684fdd51cb6
location_href: 00012151-python-bigquery-schema-generator/python-bigquery-schema-generator-1.5.1-1.src.rpm
checksum_type: sha256
description:
  [![BigQuery Schema Generator CI](https://github.com/bxparks/bigquery-schema-generator/actions/workflows/pythonpackage.yml/badge.svg)](https://github.com/bxparks/bigquery-schema-generator/actions/workflows/pythonpackage.yml)

  This script generates the BigQuery schema from the newline-delimited data
  records on the STDIN. The records can be in JSON format or CSV format. The
  BigQuery data importer (`bq load`) uses only the
  [first 500 records](https://cloud.google.com/bigquery/docs/schema-detect)
  when the schema auto-detection feature is enabled. In contrast, this script uses
  all data records to generate the schema.

  Usage:
  ```
  $ generate-schema < file.data.json > file.schema.json
  $ generate-schema --input_format csv < file.data.csv > file.schema.json
  ```

  **Version**: 1.5.1 (2022-12-04)

  **Changelog**: [CHANGELOG.md](CHANGELOG.md)



  * [Background](#Background)
  * [Installation](#Installation)
      * [Ubuntu Linux](#UbuntuLinux)
      * [MacOS](#MacOS)
          * [MacOS 11 (Big Sur)](#MacOS11)
          * [MacOS 10.14 (Mojave)](#MacOS1014)
  * [Usage](#Usage)
      * [Command Line](#CommandLine)
      * [Schema Output](#SchemaOutput)
      * [Command Line Flag Options](#FlagOptions)
          * [Help (`--help`)](#Help)
          * [Input Format (`--input_format`)](#InputFormat)
          * [Keep Nulls (`--keep_nulls`)](#KeepNulls)
          * [Quoted Values Are Strings(`--quoted_values_are_strings`)](#QuotedValuesAreStrings)
          * [Infer Mode (`--infer_mode`)](#InferMode)
          * [Debugging Interval (`--debugging_interval`)](#DebuggingInterval)
          * [Debugging Map (`--debugging_map`)](#DebuggingMap)
          * [Sanitize Names (`--sanitize_names`)](#SanitizedNames)
          * [Ignore Invalid Lines (`--ignore_invalid_lines`)](#IgnoreInvalidLines)
          * [Existing Schema Path (`--existing_schema_path`)](#ExistingSchemaPath)
          * [Preserve Input Sort Order
            (`--preserve_input_sort_order`)](#PreserveInputSortOrder)
      * [Using as a Library](#UsingAsLibrary)
          * [`SchemaGenerator.run()`](#SchemaGeneratorRun)
          * [`SchemaGenerator.deduce_schema()` with File](#SchemaGeneratorDeduceSchemaFromFile)
          * [`SchemaGenerator.deduce_schema()` with Dict](#SchemaGeneratorDeduceSchemaFromDict)
  * [Schema Types](#SchemaTypes)
      * [Supported Types](#SupportedTypes)
      * [Type Inference](#TypeInference)
  * [Examples](#Examples)
  * [Benchmarks](#Benchmarks)
  * [System Requirements](#SystemRequirements)
  * [License](#License)
  * [Feedback and Support](#Feedback)
  * [Authors](#Authors)

  <a name="Background"></a>


  Data can be imported into [BigQuery](https://cloud.google.com/bigquery/) using
  the [bq](https://cloud.google.com/bigquery/bq-command-line-tool) command line
  tool. It accepts a number of data formats including CSV or newline-delimited
  JSON. The data can be loaded into an existing table or a new table can be
  created during the loading process. The structure of the table is defined by
  its [schema](https://cloud.google.com/bigquery/docs/schemas). The table's
  schema can be defined manually or the schema can be
  [auto-detected](https://cloud.google.com/bigquery/docs/schema-detect#auto-detect).

  When the auto-detect feature is used, the BigQuery data importer examines only
  the [first 500 records](https://cloud.google.com/bigquery/docs/schema-detect)
  of the input data. In many cases, this is sufficient
  because the data records were dumped from another database and the exact schema
  of the source table was known. However, for data extracted from a service
  (e.g. using a REST API) the record fields could have been organically added
  at later dates. In this case, the first 100 records do not contain fields which
  are present in later records. The **bq load** auto-detection fails and the data
  fails to load.

  The **bq load** tool does not support the ability to process the entire dataset
  to determine a more accurate schema. This script fills in that gap. It
  processes the entire dataset given in the STDIN and outputs the BigQuery schema
  in JSON format on the STDOUT. This schema file can be fed back into the **bq
  load** tool to create a table that is more compatible with the data fields in
  the input dataset.

  <a name="Installation"></a>


  **Prerequisite**: You need have Python 3.6 or higher.

  Install from [PyPI](https://pypi.python.org/pypi) repository using `pip3`. There
  are too many ways to install packages in Python. The following are in order
  highest to lowest recommendation:

  1) If you are using a virtual environment (such as
  [venv](https://docs.python.org/3/library/venv.html)), then use:
  ```
  $ pip3 install bigquery_schema_generator
  ```

  2) If you aren't using a virtual environment you can install into
  your local Python directory:

  ```
  $ pip3 install --user bigquery_schema_generator
  ```

  3) If you want to install the package for your entire system globally, use
  ```
  $ sudo -H pip3 install bigquery_schema_generator
  ```
  but realize that you will be running code from PyPI as `root` so this has
  security implications.

  Sometimes, your Python environment gets into a complete mess and the `pip3`
  command won't work. Try typing `python3 -m pip` instead.

  A successful install should print out something like the following (the version
  number may be different):
  ```
  Collecting bigquery-schema-generator
  Installing collected packages: bigquery-schema-generator
  Successfully installed bigquery-schema-generator-1.1
  ```

  The shell script `generate-schema` will be installed somewhere in your system,
  depending on how your Python environment is configured. See below for
  some notes for Ubuntu Linux and MacOS.

  <a name="UbuntuLinux"></a>


  After running `pip3 install bigquery_schema_generator`, the `generate-schema`
  script may be installed in one the following locations:

  * `/usr/bin/generate-schema`
  * `/usr/local/bin/generate-schema`
  * `$HOME/.local/bin/generate-schema`
  * `$HOME/.virtualenvs/{your_virtual_env}/bin/generate-schema`

  <a name="MacOS"></a>


  I don't have any Macs which are able to run the latest macOS, and I don't use
  them much for software development these days, but here are some notes if they
  help.

  <a name="MacOS11"></a>


  I believe Big Sur comes preinstalled with Python 3.8. If you install
  `bigquery_schema_generator` using:

  ```
  $ pip3 install --user bigquery_schema_generator
  ```

  then the `generate-schema` wrapper script will be installed at:

  ```
  /User/{your-login}/Library/Python/3.8/bin/generate-schema
  ```

  <a name="MacOS1014"></a>


  This MacOS version comes with Python 2.7 only. To install Python 3, you can
  install using:

  1)) Downloading the [macos installer directly from
     Python.org](https://www.python.org/downloads/macos/).

  The python3 binary will be located at `/usr/local/bin/python3`, and the
  `/usr/local/bin/pip3` is a symlink to
  `/Library/Frameworks/Python.framework/Versions/3.6/bin/pip3`.

  So running

  ```
  $ pip3 install --user bigquery_schema_generator
  ```

  will install `generate-schema` at
  `/Library/Frameworks/Python.framework/Versions/3.6/bin/generate-schema`.

  The Python installer updates `$HOME/.bash_profile` to add
  `/Library/Frameworks/Python.framework/Versions/3.6/bin` to the `$PATH`
  environment variable. So you should be able to run the `generate-schema`
  command without typing in the full path.

  2)) Using [Homebrew](https://docs.brew.sh/Homebrew-and-Python).

  In this environment, the `generate-schema` script will probably be installed in
  `/usr/local/bin` but I'm not completely certain.

  <a name="Usage"></a>


  <a name="CommandLine"></a>


  The `generate_schema.py` script accepts a newline-delimited JSON or
  CSV data file on the STDIN. JSON input format has been tested extensively.
  CSV input format was added more recently (in v0.4) using the `--input_format
  csv` flag. The support is not as robust as JSON file. For example, CSV format
  supports only the comma-separator, and does not support the pipe (`|`) or tab
  (`\t`) character.

  Unlike `bq load`, the `generate_schema.py` script reads every record in the
  input data file to deduce the table's schema. It prints the JSON formatted
  schema file on the STDOUT.

  There are at least 3 ways to run this script:

  **1) Shell script**

  If you installed using `pip3`, then it should have installed a small helper
  script named `generate-schema` in your local `./bin` directory of your current
  environment (depending on whether you are using a virtual environment).

  ```
  $ generate-schema < file.data.json > file.schema.json
  ```

  **2) Python module**

  You can invoke the module directly using:
  ```
  $ python3 -m bigquery_schema_generator.generate_schema < file.data.json > file.schema.json
  ```
  This is essentially what the `generate-schema` command does.

  **3) Python script**

  If you retrieved this code from its
  [GitHub repository](https://github.com/bxparks/bigquery-schema-generator),
  then you can invoke the Python script directly:
  ```
  $ ./generate_schema.py < file.data.json > file.schema.json
  ```

  <a name="SchemaOutput"></a>


  The resulting schema file can be given to the **bq load** command using the
  `--schema` flag:
  ```

  $ bq load --source_format NEWLINE_DELIMITED_JSON \
      --ignore_unknown_values \
      --schema file.schema.json \
      mydataset.mytable \
      file.data.json
  ```
  where `mydataset.mytable` is the target table in BigQuery.

  For debugging purposes, here is the equivalent `bq load` command using schema
  autodetection:

  ```
  $ bq load --source_format NEWLINE_DELIMITED_JSON \
      --autodetect \
      mydataset.mytable \
      file.data.json
  ```

  If the input file is in CSV format, the first line will be the header line which
  enumerates the names of the columns. But this header line must be skipped when
  importing the file into the BigQuery table. We accomplish this using
  `--skip_leading_rows` flag:
  ```
  $ bq load --source_format CSV \
      --schema file.schema.json \
      --skip_leading_rows 1 \
      mydataset.mytable \
      file.data.csv
  ```

  Here is the equivalent `bq load` command for CSV files using autodetection:
  ```
  $ bq load --source_format CSV \
      --autodetect \
      mydataset.mytable \
      file.data.csv
  ```

  A useful flag for `bq load`, particularly for JSON files,  is
  `--ignore_unknown_values`, which causes `bq load` to ignore fields in the input
  data which are not defined in the schema. When `generate_schema.py` detects an
  inconsistency in the definition of a particular field in the input data, it
  removes the field from the schema definition. Without the
  `--ignore_unknown_values`, the `bq load` fails when the inconsistent data record
  is read.

  Another useful flag during development and debugging is `--replace` which
  replaces any existing BigQuery table.

  After the BigQuery table is loaded, the schema can be retrieved using:

  ```
  $ bq show --schema mydataset.mytable | python3 -m json.tool
  ```

  (The `python -m json.tool` command will pretty-print the JSON formatted schema
  file. An alternative is the [jq command](https://stedolan.github.io/jq/).)
  The resulting schema file should be identical to `file.schema.json`.

  <a name="FlagOptions"></a>


  The `generate_schema.py` script supports a handful of command line flags
  as shown by the `--help` flag below.

  <a name="Help"></a>


  Print the built-in help strings:

  ```bash
  $ generate-schema --help
  usage: generate-schema [-h] [--input_format INPUT_FORMAT] [--keep_nulls]
                         [--quoted_values_are_strings] [--infer_mode]
                         [--debugging_interval DEBUGGING_INTERVAL]
                         [--debugging_map] [--sanitize_names]
                         [--ignore_invalid_lines]
                         [--existing_schema_path EXISTING_SCHEMA_PATH]
                         [--preserve_input_sort_order]

  Generate BigQuery schema from JSON or CSV file.

  optional arguments:
    -h, --help            show this help message and exit
    --input_format INPUT_FORMAT
                          Specify an alternative input format ('csv', 'json',
                          'dict')
    --keep_nulls          Print the schema for null values, empty arrays or
                          empty records
    --quoted_values_are_strings
                          Quoted values should be interpreted as strings
    --infer_mode          Determine if mode can be 'NULLABLE' or 'REQUIRED'
    --debugging_interval DEBUGGING_INTERVAL
                          Number of lines between heartbeat debugging messages
    --debugging_map       Print the metadata schema_map instead of the schema
    --sanitize_names      Forces schema name to comply with BigQuery naming
                          standard
    --ignore_invalid_lines
                          Ignore lines that cannot be parsed instead of stopping
    --existing_schema_path EXISTING_SCHEMA_PATH
                          File that contains the existing BigQuery schema for a
                          table. This can be fetched with: `bq show --schema
                          <project_id>:<dataset>:<table_name>
    --preserve_input_sort_order
                          Preserve the original ordering of columns from input
                          instead of sorting alphabetically. This only impacts
                          `input_format` of json or dict

  ```

  <a name="InputFormat"></a>


  Specifies the format of the input file as a string. It must be one of `json`
  (default), `csv`, or `dict`:

  * `json`
      * a "file-like" object containing newline-delimited JSON
  * `csv`
      * a "file-like" object containing newline-delimited CSV
  * `dict`
      * a `list` of Python `dict` objects corresponding to list of
        newline-delimited JSON, in other words `List[Dict[str, Any]]`
      * applies only if `SchemaGenerator` is used as a library through the
        `run()` or `deduce_schema()` method
      * useful if the input data (usually JSON) has already been read into memory
        and parsed from newline-delimited JSON into native Python dict objects.

  If `csv` file is specified, the `--keep_nulls` flag is automatically activated.
  This is required because CSV columns are defined positionally, so the schema
  file must contain all the columns specified by the CSV file, in the same
  order, even if the column contains an empty value for every record.

  See [Issue #26](https://github.com/bxparks/bigquery-schema-generator/issues/26)
  for implementation details.

  <a name="KeepNulls"></a>


  Normally when the input data file contains a field which has a null, empty
  array or empty record as its value, the field is suppressed in the schema file.
  This flag enables this field to be included in the schema file.

  In other words, using a data file containing just nulls and empty values:
  ```bash
  $ generate_schema
  { "s": null, "a": [], "m": {} }
  ^D
  INFO:root:Processed 1 lines
  []
  ```

  With the `keep_nulls` flag, we get:
  ```bash
  $ generate-schema --keep_nulls
  { "s": null, "a": [], "m": {} }
  ^D
  INFO:root:Processed 1 lines
  [
    {
      "mode": "REPEATED",
      "type": "STRING",
      "name": "a"
    },
    {
      "mode": "NULLABLE",
      "fields": [
        {
          "mode": "NULLABLE",
          "type": "STRING",
          "name": "__unknown__"
        }
      ],
      "type": "RECORD",
      "name": "d"
    },
    {
      "mode": "NULLABLE",
      "type": "STRING",
      "name": "s"
    }
  ]
  ```

  <a name="QuotedValuesAreStrings"></a>


  By default, quoted values are inspected to determine if they can be interpreted
  as `DATE`, `TIME`, `TIMESTAMP`, `BOOLEAN`, `INTEGER` or `FLOAT`. This is
  consistent with the algorithm used by `bq load`. However, for the `BOOLEAN`,
  `INTEGER`, or `FLOAT` types, it is sometimes more useful to interpret those as
  normal strings instead. This flag disables type inference for `BOOLEAN`,
  `INTEGER` and `FLOAT` types inside quoted strings.

  ```bash
  $ generate-schema
  { "name": "1" }
  ^D
  [
    {
      "mode": "NULLABLE",
      "name": "name",
      "type": "INTEGER"
    }
  ]

  $ generate-schema --quoted_values_are_strings
  { "name": "1" }
  ^D
  [
    {
      "mode": "NULLABLE",
      "name": "name",
      "type": "STRING"
    }
  ]
  ```

  <a name="InferMode"></a>


  Set the schema `mode` of a field to `REQUIRED` instead of the default
  `NULLABLE` if the field contains a non-null or non-empty value for every data
  record in the input file. This option is available only for CSV
  (`--input_format csv`) files. It is theoretically possible to implement this
  feature for JSON files, but too difficult to implement in practice because
  fields are often completely missing from a given JSON record (instead of
  explicitly being defined to be `null`).

  In addition to the above, this option, when used in conjunction with
  `--existing_schema_map`, will allow fields to be relaxed from REQUIRED to
  NULLABLE if they were REQUIRED in the existing schema and NULL rows are found in
  the new data we are inferring a schema from. In this case it can be used with
  either input_format, CSV or JSON.

  See [Issue #28](https://github.com/bxparks/bigquery-schema-generator/issues/28)
  for implementation details.

  <a name="DebuggingInterval"></a>


  By default, the `generate_schema.py` script prints a short progress message
  every 1000 lines of input data. This interval can be changed using the
  `--debugging_interval` flag.

  ```bash
  $ generate-schema --debugging_interval 50 < file.data.json > file.schema.json
  ```

  <a name="DebuggingMap"></a>


  Instead of printing out the BigQuery schema, the `--debugging_map` prints out
  the bookkeeping metadata map which is used internally to keep track of the
  various fields and their types that were inferred using the data file. This
  flag is intended to be used for debugging.

  ```bash
  $ generate-schema --debugging_map < file.data.json > file.schema.json
  ```

  <a name="SanitizedNames"></a>


  BigQuery column names are [restricted to certain characters and
  length](https://cloud.google.com/bigquery/docs/schemas#column_names):
  * it must contain only letters (a-z, A-Z), numbers (0-9), or underscores
  * it must start with a letter or underscore
  * the maximum length is 128 characters
  * column names are case-insensitive

  For CSV files, the `bq load` command seems to automatically convert invalid
  column names into valid column names. This flag attempts to perform some of the
  same transformations, to avoid having to scan through the input data twice to
  generate the schema file. The transformations are:

  * any character outside of ASCII letters, numbers and underscore
    (`[a-zA-Z0-9_]`) are converted to an underscore. For example `go&2#there!` is
    converted to `go_2_there_`;
  * names longer than 128 characters are truncated to 128.

  My recollection is that the `bq load` command does *not* normalize the JSON key
  names. Instead it prints an error message. So the `--sanitize_names` flag is
  useful mostly for CSV files. For JSON files, you'll have to do a second pass
  through the data files to cleanup the column names anyway. See
  [Issue #14](https://github.com/bxparks/bigquery-schema-generator/issues/14) and
  [Issue #33](https://github.com/bxparks/bigquery-schema-generator/issues/33).

  <a name="IgnoreInvalidLines"></a>


  By default, if an error is encountered on a particular line, processing stops
  immediately with an exception. This flag causes invalid lines to be ignored and
  processing continues. A list of all errors and their line numbers will be
  printed on the STDERR after processing the entire file.

  This flag is currently most useful for JSON files, to ignore lines which do not
  parse correctly as a JSON object.

  This flag is probably not useful for CSV files. CSV files are processed by the
  `DictReader` class which performs its own line processing internally, including
  extracting the column names from the first line of the file. If the `DictReader`
  does throw an exception on a given line, we would not be able to catch it and
  continue processing. Fortunately, CSV files are fairly robust, and the schema
  deduction logic will handle any missing or extra columns gracefully.

  Fixes
  [Issue #49](https://github.com/bxparks/bigquery-schema-generator/issues/49).

  <a name="ExistingSchemaPath"></a>


  There are cases where we would like to start from an existing BigQuery table
  schema rather than starting from scratch with a new batch of data we would like
  to load. In this case we can specify the path to a local file on disk that is
  our existing bigquery table schema. This can be generated via the following `bq
  show --schema` command:
  ```bash
  bq show --schema <PROJECT_ID>:<DATASET_NAME>.<TABLE_NAME> > existing_table_schema.json
  ```

  We can then run generate-schema with the additional option
  ```bash
  --existing_schema_path existing_table_schema.json
  ```

  There is some subtle interaction between the `--existing_schema_path` and fields
  which are marked with a `mode` of `REQUIRED` in the existing schema. If the new
  data contains a `null` value (either in a CSV or JSON data file), it is not
  clear if the schema should be changed to `mode=NULLABLE` or whether the new data
  should be ignored and the schema should remain `mode=REQUIRED`. The choice is
  determined by overloading the `--infer_mode` flag:

  * If `--infer_mode` is given, the new schema will be allowed to revert back to
    `NULLABLE`.
  * If `--infer_mode` is not given, the offending new record will be ignored
    and the new schema will remain `REQUIRED`.

  See discussion in
  [PR #57](https://github.com/bxparks/bigquery-schema-generator/pull/57) for
  more details.

  <a name="PreserveInputSortOrder"></a>


  By default, the order of columns in the BQ schema file is sorted
  lexicographically, which matched the original behavior of `bq load
  --autodetect`. If the `--preserve_input_sort_order` flag is given, the columns
  in the resulting schema file is not sorted, but preserves the order of
  appearance in the input JSON data. For example, the following JSON data with
  the `--preserve_input_sort_order` flag will produce:

  ```bash
  $ generate-schema --preserve_input_sort_order
  { "s": "string", "i": 3, "x": 3.2, "b": true }
  ^D
  [
    {
      "mode": "NULLABLE",
      "name": "s",
      "type": "STRING"
    },
    {
      "mode": "NULLABLE",
      "name": "i",
      "type": "INTEGER"
    },
    {
      "mode": "NULLABLE",
      "name": "x",
      "type": "FLOAT"
    },
    {
      "mode": "NULLABLE",
      "name": "b",
      "type": "BOOLEAN"
    }
  ]
  ```

  It is possible that each JSON record line contains only a partial subset of the
  total possible columns in the data set. The order of the columns in the BQ
  schema will then be the order that each column was first *seen* by the
  script:

  ```bash
  $ generate-schema --preserve_input_sort_order
  { "s": "string", "i": 3 }
  { "x": 3.2, "s": "string", "i": 3 }
  { "b": true, "x": 3.2, "s": "string", "i": 3 }
  ^D
  [
    {
      "mode": "NULLABLE",
      "name": "s",
      "type": "STRING"
    },
    {
      "mode": "NULLABLE",
      "name": "i",
      "type": "INTEGER"
    },
    {
      "mode": "NULLABLE",
      "name": "x",
      "type": "FLOAT"
    },
    {
      "mode": "NULLABLE",
      "name": "b",
      "type": "BOOLEAN"
    }
  ]
  ```

  **Note**: In Python 3.6 (the earliest version of Python supported by this
  project), the order of keys in a `dict` was the insertion-order, but this
  ordering was an implementation detail, and not guaranteed. In Python 3.7, that
  ordering was made permanent. So the `--preserve_input_sort_order` flag
  **should** work in Python 3.6 but is not guaranteed.

  See discussion in
  [PR #75](https://github.com/bxparks/bigquery-schema-generator/pull/75) for
  more details.

  <a name="UsingAsLibrary"></a>


  The `SchemaGenerator` class can be used programmatically as a library from a
  larger Python application.

  <a name="SchemaGeneratorRun"></a>


  The `bigquery_schema_generator` module can be used as a library by an external
  Python client code by creating an instance of `SchemaGenerator` and calling the
  `run(input, output)` method:

  ```python
  from bigquery_schema_generator.generate_schema import SchemaGenerator

  generator = SchemaGenerator(
      input_format=input_format,
      infer_mode=infer_mode,
      keep_nulls=keep_nulls,
      quoted_values_are_strings=quoted_values_are_strings,
      debugging_interval=debugging_interval,
      debugging_map=debugging_map,
      sanitize_names=sanitize_names,
      ignore_invalid_lines=ignore_invalid_lines,
      preserve_input_sort_order=preserve_input_sort_order,
  )

  FILENAME = "..."

  with open(FILENAME) as input_file:
      generator.run(input_file=input_file, output_file=output_file)
  ```

  The `input_format` is one of `json`, `csv`, and `dict` as described in the
  [Input Format](#InputFormat) section above. The `input_file` must match the
  format given by this parameter.

  See [generatorrun.py](examples/generatorrun.py) for an example.

  <a name="SchemaGeneratorDeduceSchemaFromFile"></a>


  If you need to process the generated schema programmatically, use the
  `deduce_schema()` method and process the resulting `schema_map` and `error_log`
  data structures like this:

  ```python
  import json
  import logging
  import sys
  from bigquery_schema_generator.generate_schema import SchemaGenerator

  FILENAME = "jsonfile.json"

  generator = SchemaGenerator(
      input_format='json',
      quoted_values_are_strings=True,
  )

  with open(FILENAME) as file:
      schema_map, errors = generator.deduce_schema(file)

  schema_map, error_logs = generator.deduce_schema(input_data=input_data)

  for error in error_logs:
      logging.info("Problem on line %s: %s", error['line_number'], error['msg'])

  schema = generator.flatten_schema(schema_map)
  json.dump(schema, sys.stdout, indent=2)
  print()
  ```

  See [csvreader.py](examples/csvreader.py) and
  [jsoneader.py](examples/jsoneader.py) for 2 examples.

  The `deduce_schema()` also supports starting from an existing `schema_map`
  instead of starting from scratch. This is the internal version of the
  `--existing_schema_path` functionality.

  ```python
  schema_map1, error_logs = generator.deduce_schema(input_data=data1)
  schema_map2, error_logs = generator.deduce_schema(
      input_data=data1, schema_map=schema_map1
  )
  ```

  The `input_data` must match the `input_format` given in the constructor. The
  format is described in the [Input Format](#InputFormat) section above.

  <a name="SchemaGeneratorDeduceSchemaFromDict"></a>


  If the JSON data set has already been read into memory into a Python `dict`
  object, the `SchemaGenerator` can process that too like this:

  ```Python
  import json
  import logging
  import sys
  from bigquery_schema_generator.generate_schema import SchemaGenerator

  generator = SchemaGenerator(input_format='dict')
  input_data = [
      {
          's': 'string',
          'b': True,
      },
      {
          'd': '2021-08-18',
          'x': 3.1
      },
  ]
  schema_map, error_logs = generator.deduce_schema(input_data)
  schema = generator.flatten_schema(schema_map)
  json.dump(schema, sys.stdout, indent=2)
  print()
  ```

  See [dictreader.py](examples/dictreader.py) for an example.

  <a name="SchemaTypes"></a>


  <a name="SupportedTypes"></a>


  The `bq show --schema` command produces a JSON schema file that uses the
  older [Legacy SQL date types](https://cloud.google.com/bigquery/data-types).
  For compatibility, **generate-schema** script will also generate a schema file
  using the legacy data types.

  The supported types are:

  * `BOOLEAN`
  * `INTEGER`
  * `FLOAT`
  * `STRING`
  * `TIMESTAMP`
  * `DATE`
  * `TIME`
  * `RECORD`

  The `generate-schema` script supports both `NULLABLE` and `REPEATED` modes of
  all of the above types.

  The supported format of `TIMESTAMP` is as close as practical to the
  [bq load format](https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types#timestamp-type):
  ```
  YYYY-[M]M-[D]D[( |T)[H]H:[M]M:[S]S[.DDDDDD]][time zone]
  ```
  which appears to be an extension of the
  [ISO 8601 format](https://en.wikipedia.org/wiki/ISO_8601).
  The difference from `bq load` is that the `[time zone]` component can be only
  * `Z`
  * `UTC` (same as `Z`)
  * `(+|-)H[H][:M[M]]`

  Note that BigQuery supports up to 6 decimal places after the integer 'second'
  component. `generate-schema` follows the same restriction for compatibility. If
  your input file contains more than 6 decimal places, you need to write a data
  cleansing filter to fix this.

  The suffix `UTC` is not standard ISO 8601 nor
  [documented by Google](https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types#time-zones)
  but the `UTC` suffix is used by `bq extract` and the web interface. (See
  [Issue 19](https://github.com/bxparks/bigquery-schema-generator/issues/19).)

  Timezone names from the [tz database](http://www.iana.org/time-zones) (e.g.
  "America/Los_Angeles") are _not_ supported by `generate-schema`.

  The following types are _not_ supported at all:

  * `BYTES`
  * `DATETIME` (unable to distinguish from `TIMESTAMP`)

  <a name="TypeInference"></a>


  The `generate-schema` script attempts to emulate the various type conversion and
  compatibility rules implemented by **bq load**:

  * `INTEGER` can upgrade to `FLOAT`
      * if a field in an early record is an `INTEGER`, but a subsequent record
        shows this field to have a `FLOAT` value, the type of the field will be
        upgraded to a `FLOAT`
      * the reverse does not happen, once a field is a `FLOAT`, it will remain a
        `FLOAT`
  * conflicting `TIME`, `DATE`, `TIMESTAMP` types upgrades to `STRING`
      * if a field is determined to have one type of "time" in one record, then
        subsequently a different "time" type, then the field will be assigned a
        `STRING` type
  * `NULLABLE RECORD` can upgrade to a `REPEATED RECORD`
      * a field may be defined as `RECORD` (aka "Struct") type with `{ ... }`
      * if the field is subsequently read as an array with a `[{ ... }]`, the
        field is upgraded to a `REPEATED RECORD`
  * a primitive type (`FLOAT`, `INTEGER`, `STRING`) cannot upgrade to a `REPEATED`
    primitive type
      * there's no technical reason why this cannot be allowed, but **bq load**
        does not support it, so we follow its behavior
  * a `DATETIME` field is always inferred to be a `TIMESTAMP`
      * the format of these two fields is identical (in the absence of timezone)
      * we follow the same logic as **bq load** and always infer these as
        `TIMESTAMP`
  * `BOOLEAN`, `INTEGER`, and `FLOAT` can appear inside quoted strings
      * In other words, `"true"` (or `"True"` or `"false"`, etc) is considered a
        BOOLEAN type, `"1"` is considered an INTEGER type, and `"2.1"` is
        considered a FLOAT type. Luigi Mori (jtschichold@) added additional logic
        to replicate the type conversion logic used by `bq load` for these
        strings.
      * This type inference inside quoted strings can be disabled using the
        `--quoted_values_are_strings` flag
      * (See [Issue #22](https://github.com/bxparks/bigquery-schema-generator/issues/22) for more details.)
  * `INTEGER` values overflowing a 64-bit signed integer upgrade to `FLOAT`
      * integers greater than `2^63-1` (9223372036854775807)
      * integers less than `-2^63` (-9223372036854775808)
      * (See [Issue #18](https://github.com/bxparks/bigquery-schema-generator/issues/18) for more details)

  <a name="Examples"></a>


  Here is an example of a single JSON data record on the STDIN (the `^D` below
  means typing Control-D, which indicates "end of file" under Linux and MacOS):

  ```bash
  $ generate-schema
  { "s": "string", "b": true, "i": 1, "x": 3.1, "t": "2017-05-22T17:10:00-07:00" }
  ^D
  INFO:root:Processed 1 lines
  [
    {
      "mode": "NULLABLE",
      "name": "b",
      "type": "BOOLEAN"
    },
    {
      "mode": "NULLABLE",
      "name": "i",
      "type": "INTEGER"
    },
    {
      "mode": "NULLABLE",
      "name": "s",
      "type": "STRING"
    },
    {
      "mode": "NULLABLE",
      "name": "t",
      "type": "TIMESTAMP"
    },
    {
      "mode": "NULLABLE",
      "name": "x",
      "type": "FLOAT"
    }
  ]
  ```

  In most cases, the data file will be stored in a file:
  ```bash
  $ cat > file.data.json
  { "a": [1, 2] }
  { "i": 3 }
  ^D

  $ generate-schema < file.data.json > file.schema.json
  INFO:root:Processed 2 lines

  $ cat file.schema.json
  [
    {
      "mode": "REPEATED",
      "name": "a",
      "type": "INTEGER"
    },
    {
      "mode": "NULLABLE",
      "name": "i",
      "type": "INTEGER"
    }
  ]
  ```

  Here is the schema generated from a CSV input file. The first line is the header
  containing the names of the columns, and the schema lists the columns in the
  same order as the header:
  ```bash
  $ generate-schema --input_format csv
  e,b,c,d,a
  1,x,true,,2.0
  2,x,,,4
  3,,,,
  ^D
  INFO:root:Processed 3 lines
  [
    {
      "mode": "NULLABLE",
      "name": "e",
      "type": "INTEGER"
    },
    {
      "mode": "NULLABLE",
      "name": "b",
      "type": "STRING"
    },
    {
      "mode": "NULLABLE",
      "name": "c",
      "type": "BOOLEAN"
    },
    {
      "mode": "NULLABLE",
      "name": "d",
      "type": "STRING"
    },
    {
      "mode": "NULLABLE",
      "name": "a",
      "type": "FLOAT"
    }
  ]
  ```

  Here is an example of the schema generated with the `--infer_mode` flag:
  ```bash
  $ generate-schema --input_format csv --infer_mode
  name,surname,age
  John
  Michael,,
  Maria,Smith,30
  Joanna,Anders,21
  ^D
  INFO:root:Processed 4 lines
  [
    {
      "mode": "REQUIRED",
      "name": "name",
      "type": "STRING"
    },
    {
      "mode": "NULLABLE",
      "name": "surname",
      "type": "STRING"
    },
    {
      "mode": "NULLABLE",
      "name": "age",
      "type": "INTEGER"
    }
  ]
  ```

  <a name="Benchmarks"></a>


  I wrote the `bigquery_schema_generator/anonymize.py` script to create an
  anonymized data file `tests/testdata/anon1.data.json.gz`:
  ```bash
  $ ./bigquery_schema_generator/anonymize.py < original.data.json \
      > anon1.data.json
  $ gzip anon1.data.json
  ```
  This data file is 290MB (5.6MB compressed) with 103080 data records.

  Generating the schema using
  ```bash
  $ bigquery_schema_generator/generate_schema.py < anon1.data.json \
      > anon1.schema.json
  ```
  took 67s on a Dell Precision M4700 laptop with an Intel Core i7-3840QM CPU @
  2.80GHz, 32GB of RAM, Ubuntu Linux 18.04, Python 3.6.7.

  <a name="SystemRequirements"></a>


  This project was initially developed on Ubuntu 17.04 using Python 3.5.3, but it
  now requires Python 3.6 or higher, I think mostly due to the use of f-strings.

  I have tested it on:

  * Ubuntu 22.04, Python 3.10.6
  * Ubuntu 20.04, Python 3.8.5
  * Ubuntu 18.04, Python 3.7.7
  * Ubuntu 18.04, Python 3.6.7
  * Ubuntu 17.10, Python 3.6.3
  * MacOS 11.7.1 (Big Sur), Python 3.8.9
  * MacOS 10.14.2 (Mojave), Python 3.6.4
  * MacOS 10.13.2 (High Sierra), Python 3.6.4

  The GitHub Actions continuous integration pipeline validates on Python 3.6, 3.7
  and 3.8.

  The unit tests are invoked with `$ make tests` target, and depends only on the
  built-in Python `unittest` package.

  The coding style check is invoked using `$ make flake8` and depends on the
  `flake8` package. It can be installed using `$ pip3 install --user flake8`.

  <a name="License"></a>


  Apache License 2.0

  <a name="Feedback"></a>


  If you have any questions, comments, or feature requests for this library,
  please use the [GitHub
  Discussions](https://github.com/bxparks/bigquery-schema-generator/discussions)
  for this project. If you have bug reports, please file a ticket in [GitHub
  Issues](https://github.com/bxparks/bigquery-schema-generator/issues). Feature
  requests should go into Discussions first because they often have alternative
  solutions which are useful to remain visible, instead of disappearing from the
  default view of the Issue tracker after the ticket is closed.

  Please refrain from emailing me directly unless the content is sensitive. The
  problem with email is that I cannot reference the email conversation when other
  people ask similar questions later.

  <a name="Authors"></a>


  * Created by Brian T. Park (brian@xparks.net).
  * Type inference inside quoted strings by Luigi Mori (jtschichold@).
  * Flag to disable type inference inside quoted strings by Daniel Ecer
    (de-code@).
  * Support for CSV files and detection of `REQUIRED` fields by Sandor Korotkevics
    (korotkevics@).
  * Better support for using `bigquery_schema_generator` as a library from an
    external Python code by StefanoG_ITA (StefanoGITA@).
  * Sanitizing of column names to valid BigQuery characters and length by Jon
    Warghed (jonwarghed@).
  * Bug fix in `--sanitize_names` by Riccardo M. Cefala (riccardomc@).
  * Print full path of nested JSON elements in error messages, by Austin Brogle
    (abroglesc@).
  * Allow an existing schema file to be specified using `--existing_schema_path`,
    by Austin Brogle (abroglesc@) and Bozo Dragojevic (bozzzzo@).
  * Allow `SchemaGenerator.deduce_schema()` to accept a list of native Python
    `dict` objects, by Zigfrid Zvezdin (ZiggerZZ@).
  * Make the column order in the BQ schema file match the order of appearance in
    the JSON data file using the `--preserve_input_sort_order` flag. By Kevin
    Deggelman (kdeggelman@).


pkgId: aa473e242be5e4c1369024847262378dc9173f6b4997b369218f2bb41ca4c92d
name: python-bindep
arch: src
version: 2.11.0
epoch: 0
release: 1
summary: Binary dependency utility
url: https://docs.opendev.org/opendev/bindep
rpm_license: Apache License, Version 2.0
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-17680fec-1bb1-4a0d-b170-ad78e1e78391
location_href: 00012442-python-bindep/python-bindep-2.11.0-1.src.rpm
checksum_type: sha256
description:
  Bindep is a tool for checking the presence of binary packages needed to
  use an application / library. It started life as a way to make it easier to set
  up a development environment for OpenStack projects. While OpenStack depends
  heavily on `pip` for installation of Python dependencies, some dependencies are
  not Python based, and particularly for testing, some dependencies have to be
  installed before `pip` can be used - such as `virtualenv` and `pip` itself.


pkgId: 4c264eb45027710b85179b6d288f62247688d99217aca2aa7f0b4e47281d073d
name: python-binpacking
arch: src
version: 1.5.2
epoch: 0
release: 1
url: https://www.github.com/benmaier/binpacking
rpm_license: MIT
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-55afe15d-9499-45c2-8100-87476790c35d
location_href: 00011758-python-binpacking/python-binpacking-1.5.2-1.src.rpm
checksum_type: sha256
summary:
  Heuristic distribution of weighted items to bins (either a fixed number of bins or a fixed number of volume per bin). Data may be in form of list, dictionary, list of tuples or csv-file.

description:
  This package contains greedy algorithms to solve two typical bin packing
  problems, (i) sorting items into a constant number of bins, (ii) sorting
  items into a low number of bins of constant size. Here's a usage example
      >>> import binpacking
      >>>
      >>> b = { 'a': 10, 'b': 10, 'c':11, 'd':1, 'e': 2,'f':7 }
      >>> bins = binpacking.to_constant_bin_number(b,4) # 4 being the number of bins


pkgId: 963f001b29d3f8c8ac1051646a1908fc8396cde8c67029ccac8dc0226962b9cd
name: python-biplist
arch: src
version: 1.0.3
epoch: 0
release: 1
summary: biplist is a library for reading/writing binary plists.
url: https://bitbucket.org/wooster/biplist
rpm_license: BSD
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-e5982113-1080-46b0-87f8-7b4bd313d427
location_href: 00010694-python-biplist/python-biplist-1.0.3-1.src.rpm
checksum_type: sha256
description:
  `biplist` is a binary plist parser/generator for Python.

  Binary Property List (plist) files provide a faster and smaller serialization
  format for property lists on OS X. This is a library for generating binary
  plists which can be read by OS X, iOS, or other clients.

  This module requires Python 2.6 or higher or Python 3.4 or higher.


pkgId: 770d40714a597e9a96ced334c034727cfe4f3c603e4368b72c13b83228dd7468
name: python-biscuits
arch: src
version: 0.3.0
epoch: 0
release: 1
summary: Fast and tasty cookies handling.
url: https://github.com/pyrates/biscuits
rpm_license: MIT
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-ad29bc2d-e730-44fa-b06a-d7dc0b3211d5
location_href: 00003113-python-biscuits/python-biscuits-0.3.0-1.src.rpm
checksum_type: sha256
description:
  Low level API for handling cookies server side.




      pip install biscuits




      
      from biscuits import parse
      parse('some=value; and=more')
      > {'some': 'value', 'and': 'more'}

      
      from biscuits import Cookie
      cookie = Cookie(name='foo', value='bar', domain='www.example.org')
      str(cookie)
      > "foo=bar; Domain=www.example.org; Path=/"




      pip install cython
      make compile
      python setup.py develop



      make test



  ![benchmark](benchmark.png)

  See [Benchmark](https://github.com/pyrates/biscuits/wiki/Benchmark) for more
  details.






  - unescape antislash when parsing to be consistent with quoting (cf #3)
  - unescape octal ascii when parsing to be consistent with quoting (cf #4)



  - add support for the SameSite attribute (cf #8)


pkgId: a0e7178417ac926d18c525b9eba899240eaba6c8249924eb472d1bd9c6fcfdf9
name: python-bitarray
arch: src
version: 2.7.3
epoch: 0
release: 1
summary: efficient arrays of booleans -- C extension
url: https://github.com/ilanschnell/bitarray
rpm_license: PSF
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-4131a096-728a-47ae-82fe-083947266a98
location_href: 00003114-python-bitarray/python-bitarray-2.7.3-1.src.rpm
checksum_type: sha256
description:
  This library provides an object type which efficiently represents an array
  of booleans.  Bitarrays are sequence types and behave very much like usual
  lists.  Eight bits are represented by one byte in a contiguous block of
  memory.  The user can select between two representations: little-endian
  and big-endian.  All functionality is implemented in C.
  Methods for accessing the machine representation are provided, including the
  ability to import and export buffers.  This allows creating bitarrays that
  are mapped to other objects, including memory-mapped files.


pkgId: 8352f2fd24e37cb150ab39346216d70a7e2358bc22854f74e3a32b8b67de06dc
name: python-bitarray-debuginfo
arch: aarch64
version: 2.7.3
epoch: 0
release: 1
summary: Debug information for package python-bitarray
url: https://github.com/ilanschnell/bitarray
rpm_license: PSF
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Development/Debug
rpm_buildhost: resalloc-4131a096-728a-47ae-82fe-083947266a98
rpm_sourcerpm: python-bitarray-2.7.3-1.src.rpm
location_href: 00003114-python-bitarray/python-bitarray-debuginfo-2.7.3-1.aarch64.rpm
checksum_type: sha256
description:
  This package provides debug information for package python-bitarray.
  Debug information is useful when developing applications that use this
  package or when debugging this package.


pkgId: 7acc9b0a284dd2c60b5b9035abd70ad13c28b09e9eb1325d5aedfccfb38c984d
name: python-bitarray-debugsource
arch: aarch64
version: 2.7.3
epoch: 0
release: 1
summary: Debug sources for package python-bitarray
url: https://github.com/ilanschnell/bitarray
rpm_license: PSF
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Development/Debug
rpm_buildhost: resalloc-4131a096-728a-47ae-82fe-083947266a98
rpm_sourcerpm: python-bitarray-2.7.3-1.src.rpm
location_href: 00003114-python-bitarray/python-bitarray-debugsource-2.7.3-1.aarch64.rpm
checksum_type: sha256
description:
  This package provides debug sources for package python-bitarray.
  Debug sources are useful when developing applications that use this
  package or when debugging this package.


pkgId: 3fd8c2c9defa0287c15b8889a72ea9c2b039d5029e4fd8ff889eca9254001093
name: python-bitcoinlib
arch: src
version: 0.6.7
epoch: 0
release: 1
summary: Bitcoin and Other cryptocurrency Library
url: http://github.com/1200wd/bitcoinlib
rpm_license: GNU3
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-f77560be-0c62-4f5d-ad3b-460c47dba41f
location_href: 00003115-python-bitcoinlib/python-bitcoinlib-0.6.7-1.src.rpm
checksum_type: sha256
description:
  Bitcoin, Litecoin and Dash Crypto Currency Library for Python.
  Includes a fully functional wallet with multi-signature, multi-currency and multiple accounts.
  You this library at a high level and create and manage wallets for the command line or at a low level
  and create your own custom made transactions, keys or wallets.
  The BitcoinLib connects to various service providers automatically to update wallets, transactions and
  blockchain information. It does currently not parse the blockchain itself.


pkgId: caa3898c5025dd02b3947bfa0ce9a2932bda8d5c7bbc0479a4249648fc09b6c0
name: python-bitmath
arch: src
version: 1.3.3.1
epoch: 0
release: 1
url: https://github.com/tbielawa/bitmath
rpm_license: MIT
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-f8a0a541-5f75-4490-9af8-025018e22d45
location_href: 00003116-python-bitmath/python-bitmath-1.3.3.1-1.src.rpm
checksum_type: sha256
summary:
  Pythonic module for representing and manipulating file sizes with different prefix notations (file size unit conversion)

description:
  `bitmath <http://bitmath.readthedocs.org/en/latest/>`_ simplifies many
  facets of interacting with file sizes in various units. Originally
  focusing on file size unit conversion, functionality now includes:
  * Converting between **SI** and **NIST** prefix units (``kB`` to ``GiB``)
  * Converting between units of the same type (SI to SI, or NIST to NIST)
  * Automatic human-readable prefix selection (like in `hurry.filesize <https://pypi.python.org/pypi/hurry.filesize>`_)
  * Basic arithmetic operations (subtracting 42KiB from 50GiB)
  * Rich comparison operations (``1024 Bytes == 1KiB``)
  * bitwise operations (``<<``, ``>>``, ``&``, ``|``, ``^``)
  * Reading a device's storage capacity (Linux/OS X support only)
  * `argparse <https://docs.python.org/2/library/argparse.html>`_
    integration as a custom type
  * `progressbar <https://code.google.com/p/python-progressbar/>`_
    integration as a better file transfer speed widget
  * String parsing
  * Sorting
  In addition to the conversion and math operations, `bitmath` provides
  human readable representations of values which are suitable for use in
  interactive shells as well as larger scripts and applications. The
  format produced for these representations is customizable via the
  functionality included in stdlibs `string.format
  <https://docs.python.org/2/library/string.html>`_.
  In discussion we will refer to the NIST units primarily. I.e., instead
  of "megabyte" we will refer to "mebibyte". The former is ``10^3 =
  1,000,000`` bytes, whereas the second is ``2^20 = 1,048,576``
  bytes. When you see file sizes or transfer rates in your web browser,
  most of the time what you're really seeing are the base-2 sizes/rates.
  **Don't Forget!** The source for bitmath `is available on GitHub
  <https://github.com/tbielawa/bitmath>`_.
  And did we mention there's almost 200 unittests? `Check them out for
  yourself <https://github.com/tbielawa/bitmath/tree/master/tests>`_.


pkgId: a5cbf468d20abc24ea425d33de6a9aa4a0b68eda5ff0927ae8ff2a727f6ca6fa
name: python-bitstring
arch: src
version: 4.0.1
epoch: 0
release: 1
summary: Simple construction, analysis and modification of binary data.
url: https://pypi.org/project/bitstring/
rpm_license: MIT License
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-5987f41d-7530-4f08-bd18-7e171530c08d
location_href: 00003117-python-bitstring/python-bitstring-4.0.1-1.src.rpm
checksum_type: sha256
description:
  * New Python 3.7 minimum requirement. The code has been updated with type hints and legacy code removed.
  * Shorter and more versative properties are available.
        >>> a = BitArray('u8=20')
        >>> a += '0b0011, f16=5.52'
        >>> a[12:].f16
        5.51953125
  * A useful new pretty printing method. Gives a formatted view of a singe or two interpretations of the
    binary data.
        >>> a = Bits(bytes=b'hello world!!')
        >>> a.pp('bin, hex', width=40)
          0: 01101000 01100101   68 65
         16: 01101100 01101100   6c 6c
         32: 01101111 00100000   6f 20
         48: 01110111 01101111   77 6f
         64: 01110010 01101100   72 6c
         80: 01100100 00100001   64 21
         96: 00100001            21
  * LSB0 option (beta). This indexes the bits with the least significant bit being bit zero. This is the
    opposite way to the standard Python containers but is usual in some relevant fields.
        >>> bitstring.lsb0 = True
        >>> s = BitArray('0b00000')
        >>> s[0] = 1
        >>> s.bin
        '00001'
    This feature is still considered a beta as there may be issues with edge cases, especially around the
    interaction with the 'stream' features of the `BitStream` and `ConstBitStream` classes. For most usage
    cases it should be solid though, so please report any bugs in the issue tracker.
  * Command line usage. Useful for quick interpretations of binary data.
          $ python -m bitstring int:16=-400
          0xfe70
  * Support for 16 bit floating point types (both IEEE and bfloat).


pkgId: 748e9c2298616a370bf9d04e3088094f277970a97905c99abe1d7cd2fd4aef97
name: python-bitstruct
arch: src
version: 8.17.0
epoch: 0
release: 1
url: https://github.com/eerimoq/bitstruct
rpm_license: MIT
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-a055d037-fd79-458a-9c94-d7d1f0df321d
location_href: 00003118-python-bitstruct/python-bitstruct-8.17.0-1.src.rpm
checksum_type: sha256
summary:
  This module performs conversions between Python values and C bit field structs represented as Python byte strings.

description:
  This module is intended to have a similar interface as the python
  struct module, but working on bits instead of primitive data types
  (char, int, ...).
  Project homepage: https://github.com/eerimoq/bitstruct
  Documentation: https://bitstruct.readthedocs.io


pkgId: 3824808f6d4238e344def21396cb6a1076ba5d2ce66311a6bd13327aed8d89c3
name: python-blackduck
arch: src
version: 1.1.0
epoch: 0
release: 1
summary: Package for using the Synopsys Black Duck Hub REST API.
url: https://github.com/blackducksoftware/hub-rest-api-python
rpm_license: Apache
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-856a7b5f-a4e9-433d-a176-150274aab150
location_href: 00010207-python-blackduck/python-blackduck-1.1.0-1.src.rpm
checksum_type: sha256
description:
  The hub-rest-api-python provides Python bindings for Hub REST API.



  In v2022.2 of Black Duck the REST API introduced a max page size to protect system resource usage. See the Black Duck [release notes on Synopsys Community](https://community.synopsys.com/s/article/Black-Duck-Release-Notes) for the details of which API endpoints are affected. Users of the the python bindings here should leverage the Client interface which provides automatic paging support to make best use of these endpoints.

  **The old HubInstance interface and many of the examples using it do not perform paging and will break as a result of the changes in v2022.2**.

  Any issues related to the HubInstance Interface will be closed as *Won't Fix*

  Any PRs with new or modified example scripts/utilities **must** use the client interface.



  Introducing the new Client class.

  In order to provide a more robust long-term connection, faster performance, and an overall better experience a new
  Client class has been designed.

  It is backed by a [Requests session](https://docs.python-requests.org/en/master/user/advanced/#session-objects) object. The user specifies a base URL, timeout, retries, proxies, and TLS verification upon initialization and these attributes are persisted across all requests.

  At the REST API level, the Client class provides a consistent way to discover and traverse public resources, uses a
  [generator](https://wiki.python.org/moin/Generators) to fetch all items using pagination, and automatically renews the bearer token.

  See [Client versus HubInstance Comparison](https://github.com/blackducksoftware/hub-rest-api-python/wiki/Client-versus-HubInstance-Comparison) and also read the [Client User Guide](https://github.com/blackducksoftware/hub-rest-api-python/wiki/Client-User-Guide) on the [Hub REST API Python Wiki](https://github.com/blackducksoftware/hub-rest-api-python/wiki).


  The old HubInstance (in HubRestApi.py) keeps its existing functionality for backwards compatibility and therefore does **not** currently leverage any of the new features in the Client class.

  We believe that the new features are compelling enough to strongly encourage users to consider moving from HubInstance to Client.
  See [Client versus HubInstance Comparison](https://github.com/blackducksoftware/hub-rest-api-python/wiki/Client-versus-HubInstance-Comparison).


  Please give it a try and let us know what you think!



  ```
  pip3 install blackduck
  ```

  ```python
  from blackduck import Client
  import logging
  import os

  logging.basicConfig(
      level=logging.INFO,
      format="[s] {s:d} s - s"
  )

  bd = Client(
      token=os.environ.get('blackduck_token'),
      base_url="https://your.blackduck.url",
      
  )

  for project in bd.get_resource(name='projects'):
      print(project.get('name'))
  ```



  Example code showing how to work with the new Client can be found in the *examples/client* folder.

  **Examples which use the old HubInstance interface -which is not maintained- are not guaranteed to work. Use at your own risk.**



  Including a version history on a go-forward basis.



  Retries will be attempted for all HTTP verbs, not just GET.



  Using [pytest](https://pytest.readthedocs.io/en/latest/contents.html)

  ```bash
  git clone https://github.com/blackducksoftware/hub-rest-api-python.git
  cd hub-rest-api-python



  pip3 install -r requirements.txt
  pip3 install .
  cd test
  pytest
  ```



  Do this when testing a new version.

  ```
  git clone https://github.com/blackducksoftware/hub-rest-api-python.git
  cd hub-rest-api-python
  pip3 install -r requirements.txt
  pip3 install .
  ```

  To uninstall:

  ```
  pip3 uninstall blackduck
  ```


  This package is available on PyPi:

  `pip3 install blackduck`


  Documentation for hub-rest-api-python can be found on the base project:
  [Hub REST API Python Wiki](https://github.com/blackducksoftware/hub-rest-api-python/wiki)


pkgId: 50d0fbca3c99a6137c0d98f174b97eab7221c4b0fce7113389d749aaade60619
name: python-blindspin
arch: src
version: 2.0.1
epoch: 0
release: 1
summary: Braille Spinner for Click
url: https://github.com/kennethreitz/blindspin
rpm_license: MIT
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-94141c7f-188a-4fa1-afd6-a09460c400da
location_href: 00003123-python-blindspin/python-blindspin-2.0.1-1.src.rpm
checksum_type: sha256
description:
  Sometimes you would just like to show the user some progress,
  but a progress bar is not suitable because you don’t know how much longer it would take.
  In these cases you might want to display a simple spinner using the `spinner()` function.
  Example usage::
      with blindspin.spinner():
          do_something()
          do_something_else()
  It looks like this:
  Spinner class based on on a [gist by @cevaris](https://gist.github.com/cevaris/79700649f0543584009e).


pkgId: 766f6e60b529573b3314950704b6f45d346032f441c9fe7cde1d4ea862027eda
name: python-blockdiag
arch: src
version: 3.0.0
epoch: 0
release: 1
summary: blockdiag generates block-diagram image from text
url: http://blockdiag.com/
rpm_license: Apache License 2.0
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-93e2e192-350f-4545-b4f7-482d4ca39e33
location_href: 00003124-python-blockdiag/python-blockdiag-3.0.0-1.src.rpm
checksum_type: sha256
description:
  * Generate block-diagram from dot like text (basic feature).
  * Multilingualization for node-label (utf-8 only).
  You can get some examples and generated images on
  `blockdiag.com <http://blockdiag.com/en/blockdiag/examples.html>`_ .


pkgId: c1320cbd4a0ef2a66275bde67ff4373d4b8cce52bc3449ffde86c2aa466d030b
name: python-bloom
arch: src
version: 0.11.2
epoch: 0
release: 1
summary: Bloom is a release automation tool.
url: http://www.ros.org/wiki/bloom
rpm_license: BSD
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-e9d1cdda-0c9b-4174-98ce-7532abf308a0
location_href: 00003125-python-bloom/python-bloom-0.11.2-1.src.rpm
checksum_type: sha256
description:
  Bloom provides tools for releasing software on top of a git repository and leverages tools and patterns from git-buildpackage. Additionally, bloom leverages meta and build information from catkin (https://github.com/ros/catkin) to automate release branching and the generation of platform specific source packages, like debian's src-debs.


pkgId: 6ba14342ad85dc4a1e86f4a7ef41972099cc06df16442565165e59034e57fe5a
name: python-blowfish
arch: src
version: 0.6.1
epoch: 0
release: 1
summary: Fast, efficient Blowfish cipher implementation in pure Python (3.4+).
url: https://github.com/jashandeep-sohi/python-blowfish
rpm_license: GPLv3
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-0afcb01b-27c3-4081-a1b4-5a69eea0e5cb
location_href: 00003127-python-blowfish/python-blowfish-0.6.1-1.src.rpm
checksum_type: sha256
description:
  This module implements the Blowfish cipher using only Python (3.4+).
  Blowfish is a block cipher that can be used for symmetric-key encryption. It
  has a 8-byte block size and supports a variable-length key, from 4 to 56 bytes.
  It's fast, free and has been analyzed considerably. It was designed by Bruce
  Schneier and more details about it can be found at
  <https://www.schneier.com/blowfish.html>.


pkgId: 8ff2a9c4cba0b52edcaccc3bd1f530fb54c11018922b236e601a5fe2444f3fab
name: python-bna
arch: src
version: 5.1.0
epoch: 0
release: 1
summary: Blizzard Authenticator and OTP library in Python
url: https://github.com/jleclanche/python-bna
rpm_license: MIT
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-e15fd834-ab1f-4bfb-a129-836b619047fb
location_href: 00003132-python-bna/python-bna-5.1.0-1.src.rpm
checksum_type: sha256
description:
  - Python 3.6+




  bna is a command line interface to the python-bna library. It can store
  and manage multiple authenticators, as well as create new ones.


  Remember: Using an authenticator on the same device as the one you log in with
  is less secure than keeping the devices separate. Use this at your own risk.

  Configuration is stored in `~/.config/bna/bna.conf`. You can pass a
  different config path with `bna --config=~/.bna.conf` for example.




      $ bna new

  If you do not already have an authenticator, it will be set as default.
  You can pass `--set-default` otherwise.




      $ bna
      01234567
      $ bna EU-1234-1234-1234
      76543210




      $ bna show-restore-code
      Z45Q9CVXRR
      $ bna restore EU-1234-1234-1234 ABCDE98765
      Restored EU-1234-1234-1234




  To display the OTPAuth URL (used for setup QR Codes):

      $ bna show-url
      otpauth://totp/Blizzard:EU123412341234:?secret=ASFAS75ASDF75889G9AD7S69AS7697AS&issuer=Blizzard&digits=8

  Now paste this to your OTP app, or convert to QRCode and scan, or
  manually enter the secret.

  This is compatible with standard TOTP clients and password managers such as:
  - [andOTP](https://play.google.com/store/apps/details?id=org.shadowice.flocke.andotp) (Android),
  - [KeepassXC](https://keepassxc.org/) (Cross-platform)
  - [1Password](https://1password.com/) (Cross-platform)




  To encode to a QRCode on your local system install \'qrencode\'

  For a PNG file saved to disk :

      $ bna show-url | qrencode -o ~/BNA-qrcode.png
      
      $ rm ~/BNA-qrcode.png

  Or to attempt ot display QRCode in terminal as text output :

      $ bna --otpauth-url | qrencode -t ANSI






  ```py
  import bna
  try:
      
      
      serial, secret = bna.request_new_serial("US")
  except bna.HTTPError as e:
      print("Could not connect:", e)
  ```



  ```py
      
      from pyotp import TOTP
      totp = TOTP(secret, digits=8)
      print(totp.now())
  ```


pkgId: 58d5fbcf8067f2ed4e80a4275287acfc3102179e4d27f583780879a146223da7
name: python-boa-str
arch: src
version: 1.1.0
epoch: 0
release: 1
summary: Convert strings to snakecase
url: https://github.com/astronomerio/boa
rpm_license: MIT License
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-ebcb5f82-391c-41d0-b1dd-93c7195cc33c
location_href: 00011847-python-boa-str/python-boa-str-1.1.0-1.src.rpm
checksum_type: sha256
description:
  Boa is a Python package for normalizing and converting strings to snakecase.
  For example, it translates the user-defined event ``'User Buys Item'`` to ``'user_buys_item'`` which can then be used in a file path in S3, or as the name of a schema or table in Redshift.
  It also handles the more complex cases such as stripping punctuation and converting words from camelCase or PascalCase to snake_case (see examples below).


pkgId: 0bdd5baa71c0e1779c8e74ad4e16a6fa09569790d6d0153e63673e4c7b017e90
name: python-bokeh
arch: src
version: 3.0.3
epoch: 0
release: 1
summary: Interactive plots and applications in the browser from Python
url: https://pypi.org/project/bokeh/
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-d225502a-b988-45a4-9a28-f31b33545af4
location_href: 00003136-python-bokeh/python-bokeh-3.0.3-1.src.rpm
checksum_type: sha256
description:
  [Bokeh](https://bokeh.org) is an interactive visualization library for modern web browsers. It provides elegant, concise construction of versatile graphics and affords high-performance interactivity across large or streaming datasets. Bokeh can help anyone who wants to create interactive plots, dashboards, and data applications quickly and easily.
  <table>
  <tr>
    <td>Package</td>
    <td>
      <img src="https://img.shields.io/pypi/v/bokeh?label=Version&color=ECD078&style=for-the-badge"
           alt="Latest package version" />
    </td>
    <td>
      <a href="https://docs.bokeh.org/en/latest/docs/first_steps/installation.html">
      <img src="https://img.shields.io/pypi/pyversions/bokeh?color=ECD078&style=for-the-badge"
           alt="Supported Python versions" />
      </a>
    </td>
    <td>
      <a href="https://github.com/bokeh/bokeh/blob/main/LICENSE.txt">
      <img src="https://img.shields.io/github/license/bokeh/bokeh.svg?color=ECD078&style=for-the-badge"
           alt="Bokeh license (BSD 3-clause)" />
      </a>
    </td>
  </tr>
  <tr>
    <td>Project</td>
    <td>
      <img src="https://img.shields.io/github/contributors-anon/bokeh/bokeh?color=ECD078&style=for-the-badge"
           alt="Github contributors" />
    </td>
    <td>
      <a href="https://numfocus.org">
      <img src="https://img.shields.io/badge/sponsor-numfocus-ECD078?style=for-the-badge"
           alt="Link to NumFOCUS" />
      </a>
    </td>
    <td>
      <a href="https://docs.bokeh.org/en/latest/">
      <img src="https://img.shields.io/badge/documentation-latest-ECD078?style=for-the-badge"
           alt="Link to documentation" />
      </a>
    </td>
  </tr>
  <tr>
    <td>Downloads</td>
    <td>
      <a href="https://docs.bokeh.org/en/latest/docs/first_steps/installation.html">
      <img src="https://img.shields.io/pypi/dm/bokeh?color=D98B43&label=pypi&logo=python&logoColor=yellow&style=for-the-badge"
           alt="PyPI downloads per month" />
      </a>
    </td>
    <td>
      <a href="https://docs.bokeh.org/en/latest/docs/first_steps/installation.html">
      <img src="https://raw.githubusercontent.com/bokeh/badges/main/cache/bokeh-conda-monthly.svg"
           alt="Conda downloads per month" />
      </a>
    </td>
  </tr>
  <tr>
    <td>Build</td>
    <td>
      <a href="https://github.com/bokeh/bokeh/actions">
      <img src="https://img.shields.io/github/workflow/status/bokeh/bokeh/Bokeh-CI/branch-3.0?label=Bokeh-CI&logo=github&style=for-the-badge"
           alt="Current Bokeh-CI github actions build status" />
      </a>
    </td>
    <td>
      <a href="https://github.com/bokeh/bokeh/actions">
      <img src="https://img.shields.io/github/workflow/status/bokeh/bokeh/BokehJS-CI/branch-3.0?label=BokehJS-CI&logo=github&style=for-the-badge"
           alt="Current BokehJS-CI github actions build status" />
      </a>
    </td>
    <td>
      <a href="https://codecov.io/gh/bokeh/bokeh" >
      <img src="https://img.shields.io/codecov/c/github/bokeh/bokeh?logo=codecov&style=for-the-badge&token=bhEzGkDUaw"
           alt="Codecov coverage percentage" />
      </a>
    </td>
  </tr>
  <tr>
    <td>Community</td>
    <td>
      <a href="https://discourse.bokeh.org">
      <img src="https://img.shields.io/discourse/https/discourse.bokeh.org/posts.svg?color=blue&logo=discourse&style=for-the-badge"
           alt="Community support on discourse.bokeh.org" />
      </a>
    </td>
    <td>
      <a href="https://stackoverflow.com/questions/tagged/bokeh">
      <img src="https://raw.githubusercontent.com/bokeh/badges/main/cache/bokeh-stackoverflow-total.svg"
           alt="Bokeh-tagged questions on Stack Overflow" />
       </a>
    </td>
    <td>
      <a href="https://twitter.com/bokeh">
      <img src="https://img.shields.io/twitter/follow/bokeh?color=blue&logo=twitter&style=for-the-badge"
           alt="Follow Bokeh on Twitter" />
      </a>
    </td>
  </tr>
  </table>
  *Consider [making a donation](https://opencollective.com/bokeh) if you enjoy using Bokeh and want to support its development.*
  ![4x9 image grid of Bokeh plots](https://user-images.githubusercontent.com/1078448/190840954-dc243c99-9295-44de-88e9-fafd0f4f7f8a.jpg)

  To install Bokeh and its required dependencies using `pip`, enter the following command at a Bash or Windows command prompt:
  ```
  pip install bokeh
  ```
  To install `conda`, enter the following command at a Bash or Windows command prompt:
  ```
  conda install bokeh
  ```
  Refer to the [installation documentation](https://docs.bokeh.org/en/latest/docs/first_steps/installation.html) for more details.

  Once Bokeh is installed, check out the [first steps guides](https://docs.bokeh.org/en/latest/docs/first_steps.html#first-steps-guides).
  Visit the [full documentation site](https://docs.bokeh.org) to view the [User's Guide](https://docs.bokeh.org/en/latest/docs/user_guide.html) or [launch the Bokeh tutorial](https://mybinder.org/v2/gh/bokeh/bokeh-notebooks/HEAD?labpath=index.ipynb) to learn about Bokeh in live Jupyter Notebooks.
  Community support is available on the [Project Discourse](https://discourse.bokeh.org).
  If you would like to contribute to Bokeh, please review the [Contributor Guide](https://docs.bokeh.org/en/latest/docs/dev_guide.html) and [request an invitation to the Bokeh Dev Slack workspace](https://slack-invite.bokeh.org/).
  *Note: Everyone who engages in the Bokeh project's discussion forums, codebases, and issue trackers is expected to follow the [Code of Conduct](https://github.com/bokeh/bokeh/blob/branch-3.0/docs/CODE_OF_CONDUCT.md).*

  Follow us on Twitter [@bokeh](https://twitter.com/bokeh)


  The Bokeh project is grateful for [individual contributions](https://opencollective.com/bokeh), as well as for monetary support from the organizations and companies listed below:
  <table align="center">
  <tr>
    <td>
      <a href="https://www.numfocus.org/">
      <img src="https://static.bokeh.org/sponsor/numfocus.svg"
           alt="NumFocus Logo" width="200"/>
      </a>
    </td>
    <td>
      <a href="https://chanzuckerberg.com/">
      <img src="https://static.bokeh.org/sponsor/czi.svg"
           alt="CZI Logo" width="200"/>
      </a>
    </td>
    <td colspan="2">
      <a href="https://www.blackstone.com/the-firm/">
      <img src="https://static.bokeh.org/sponsor/blackstone.png"
           alt="Blackstone Logo" width="400"/>
      </a>
    </td>
   </tr>
   <tr>
    <td>
      <a href="https://tidelift.com/">
      <img src="https://static.bokeh.org/sponsor/tidelift.svg"
           alt="TideLift Logo" width="200"/>
      </a>
    </td>
    <td>
      <a href="https://www.anaconda.com/">
      <img src="https://static.bokeh.org/sponsor/anaconda.png"
           alt="Anaconda Logo" width="200"/>
      </a>
    </td>
    <td>
      <a href="https://www.nvidia.com">
      <img src="https://static.bokeh.org/sponsor/nvidia.png"
           alt="NVidia Logo" width="200"/>
      </a>
    </td>
    <td>
      <a href="https://developer.nvidia.com/rapids">
      <img src="https://static.bokeh.org/sponsor/rapids.png"
           alt="Rapids Logo" width="200"/>
      </a>
    </td>
  </tr>
  </table>
  If your company uses Bokeh and is able to sponsor the project, please contact <a href="info@bokeh.org">info@bokeh.org</a>
  *Bokeh is a Sponsored Project of NumFOCUS, a 501(c)(3) nonprofit charity in the United States. NumFOCUS provides Bokeh with fiscal, legal, and administrative support to help ensure the health and sustainability of the project. Visit [numfocus.org](https://numfocus.org) for more information.*
  *Donations to Bokeh are managed by NumFOCUS. For donors in the United States, your gift is tax-deductible to the extent provided by law. As with any donation, you should consult with your tax adviser about your particular tax situation.*

  Non-monetary support can help with development, collaboration, infrastructure, security, and vulnerability management. The Bokeh project is grateful to the following companies for their donation of services:
  * [Amazon Web Services](https://aws.amazon.com/)
  * [GitGuardian](https://gitguardian.com/)
  * [GitHub](https://github.com/)
  * [makepath](https://makepath.com/)
  * [Pentest Tools](https://pentest-tools.com)
  * [Pingdom](https://www.pingdom.com/website-monitoring)
  * [Slack](https://slack.com)
  * [QuestionScout](https://www.questionscout.com/)
  * [1Password](https://1password.com/)

rpm_license:
  Copyright (c) 2012 - 2022, Anaconda, Inc., and Bokeh Contributors All rights reserved.  Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:  Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.  Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.  Neither the name of Anaconda nor the names of any contributors may be used to endorse or promote products derived from this software without specific prior written permission.  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


pkgId: 76f93edf3ddaf6dc55c24bec3adf43d5fab044dfd9cf48f0fe4b1fe6a20175a2
name: python-boltons
arch: src
version: 23.0.0
epoch: 0
release: 1
summary: When they're not builtins, they're boltons.
url: https://github.com/mahmoud/boltons
rpm_license: BSD
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-7105cd4a-9456-43a8-a64e-8c33dc4c2218
location_href: 00009564-python-boltons/python-boltons-23.0.0-1.src.rpm
checksum_type: sha256
description:
  Functionality that should be in the standard library. Like
  builtins, but Boltons.

  Otherwise known as, "everyone's util.py," but cleaned up and
  tested.

  Contains over 250 BSD-licensed utility types and functions that can be
  used as a package or independently. `Extensively documented on Read
  the Docs <http://boltons.readthedocs.org>`_.


pkgId: d5408e41008c60103d612be21d4a239411f1b3df84f9021647ff1adca0aae6fb
name: python-booleanOperations
arch: src
version: 0.9.0
epoch: 0
release: 1
summary: Boolean operations on paths.
url: https://github.com/typemytype/booleanOperations
rpm_license: MIT
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-e3979219-8ca5-4a24-802d-80003816af1a
location_href: 00003138-python-booleanoperations/python-booleanOperations-0.9.0-1.src.rpm
checksum_type: sha256
description:
  Boolean operations on paths which uses a super fast `polygon clipper
  library by Angus Johnson <http://www.angusj.com/delphi/clipper.php>`__.
  You can download the latest version from PyPI:
  https://pypi.org/project/booleanOperations.


pkgId: d237ec8250d9dbf2fbd52795195a726345aae2e0ffdfcd386194f1fd6d49efae
name: python-boto
arch: src
version: 2.49.0
epoch: 0
release: 1
summary: Amazon Web Services Library
url: https://github.com/boto/boto/
rpm_license: MIT
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-0bde616d-a65d-4273-aafa-5c8aa14a5ada
location_href: 00003141-python-boto/python-boto-2.49.0-1.src.rpm
checksum_type: sha256
description:
  boto

  boto 2.49.0

  Released: 11-July-2018

  .. image:: https://travis-ci.org/boto/boto.svg?branch=develop
          :target: https://travis-ci.org/boto/boto

  .. image:: https://pypip.in/d/boto/badge.svg
          :target: https://pypi.python.org/pypi/boto/

  ******
  Boto 3
  ******

  `Boto3 <https://github.com/boto/boto3>`__, the next version of Boto, is now
  stable and recommended for general use.  It can be used side-by-side with Boto
  in the same project, so it is easy to start using Boto3 in your existing
  projects as well as new projects. Going forward, API updates and all new
  feature work will be focused on Boto3.

  To assist users who still depend on Boto and cannot immediately switch over, we
  will be triaging and addressing critical issues and PRs in Boto in the short
  term. As more users make the switch to Boto3, we expect to reduce our
  maintenance involvement over time. If we decide on a cutoff date or any
  significant changes to our maintenance plan, we will make pre-announcements
  well ahead of schedule to allow ample time for our users to adapt/migrate.


  ************
  Introduction
  ************

  Boto is a Python package that provides interfaces to Amazon Web Services.
  Currently, all features work with Python 2.6 and 2.7. Work is under way to
  support Python 3.3+ in the same codebase. Modules are being ported one at
  a time with the help of the open source community, so please check below
  for compatibility with Python 3.3+.

  To port a module to Python 3.3+, please view our `Contributing Guidelines`_
  and the `Porting Guide`_. If you would like, you can open an issue to let
  others know about your work in progress. Tests **must** pass on Python
  2.6, 2.7, 3.3, and 3.4 for pull requests to be accepted.


  ********
  Services
  ********

  At the moment, boto supports:

  * Compute

    * Amazon Elastic Compute Cloud (EC2) (Python 3)
    * Amazon Elastic Map Reduce (EMR) (Python 3)
    * AutoScaling (Python 3)
    * Amazon Kinesis (Python 3)
    * AWS Lambda (Python 3)
    * Amazon EC2 Container Service (Python 3)

  * Content Delivery

    * Amazon CloudFront (Python 3)

  * Database

    * Amazon Relational Data Service (RDS)
    * Amazon DynamoDB (Python 3)
    * Amazon SimpleDB (Python 3)
    * Amazon ElastiCache (Python 3)
    * Amazon Redshift (Python 3)

  * Deployment and Management

    * AWS Elastic Beanstalk (Python 3)
    * AWS CloudFormation (Python 3)
    * AWS Data Pipeline (Python 3)
    * AWS Opsworks (Python 3)
    * AWS CloudTrail (Python 3)
    * AWS CodeDeploy (Python 3)

  * Administration & Security

    * AWS Identity and Access Management (IAM) (Python 3)
    * AWS Key Management Service (KMS) (Python 3)
    * AWS Config (Python 3)
    * AWS CloudHSM (Python 3)

  * Application Services

    * Amazon CloudSearch (Python 3)
    * Amazon CloudSearch Domain (Python 3)
    * Amazon Elastic Transcoder (Python 3)
    * Amazon Simple Workflow Service (SWF) (Python 3)
    * Amazon Simple Queue Service (SQS) (Python 3)
    * Amazon Simple Notification Server (SNS) (Python 3)
    * Amazon Simple Email Service (SES) (Python 3)
    * Amazon Cognito Identity (Python 3)
    * Amazon Cognito Sync (Python 3)
    * Amazon Machine Learning (Python 3)

  * Monitoring

    * Amazon CloudWatch (EC2 Only) (Python 3)
    * Amazon CloudWatch Logs (Python 3)

  * Networking

    * Amazon Route53 (Python 3)
    * Amazon Route 53 Domains (Python 3)
    * Amazon Virtual Private Cloud (VPC) (Python 3)
    * Elastic Load Balancing (ELB) (Python 3)
    * AWS Direct Connect (Python 3)

  * Payments and Billing

    * Amazon Flexible Payment Service (FPS)

  * Storage

    * Amazon Simple Storage Service (S3) (Python 3)
    * Amazon Glacier (Python 3)
    * Amazon Elastic Block Store (EBS)
    * Google Cloud Storage

  * Workforce

    * Amazon Mechanical Turk

  * Other

    * Marketplace Web Services (Python 3)
    * AWS Support (Python 3)

  The goal of boto is to support the full breadth and depth of Amazon
  Web Services.  In addition, boto provides support for other public
  services such as Google Storage in addition to private cloud systems
  like Eucalyptus, OpenStack and Open Nebula.

  Boto is developed mainly using Python 2.6.6 and Python 2.7.3 on Mac OSX
  and Ubuntu Maverick.  It is known to work on other Linux distributions
  and on Windows.  Most of Boto requires no additional libraries or packages
  other than those that are distributed with Python.  Efforts are made
  to keep boto compatible with Python 2.5.x but no guarantees are made.

  ************
  Installation
  ************

  Install via `pip`_:

  ::

      $ pip install boto

  Install from source:

  ::

      $ git clone git://github.com/boto/boto.git
      $ cd boto
      $ python setup.py install

  **********
  ChangeLogs
  **********

  To see what has changed over time in boto, you can check out the
  release notes at `http://docs.pythonboto.org/en/latest/#release-notes`

  ***************************
  Finding Out More About Boto
  ***************************

  The main source code repository for boto can be found on `github.com`_.
  The boto project uses the `gitflow`_ model for branching.

  `Online documentation`_ is also available. The online documentation includes
  full API documentation as well as Getting Started Guides for many of the boto
  modules.

  Boto releases can be found on the `Python Cheese Shop`_.

  Join our IRC channel `#boto` on FreeNode.
  Webchat IRC channel: http://webchat.freenode.net/?channels=boto

  Join the `boto-users Google Group`_.

  *************************
  Getting Started with Boto
  *************************

  Your credentials can be passed into the methods that create
  connections.  Alternatively, boto will check for the existence of the
  following environment variables to ascertain your credentials:

  **AWS_ACCESS_KEY_ID** - Your AWS Access Key ID

  **AWS_SECRET_ACCESS_KEY** - Your AWS Secret Access Key

  Credentials and other boto-related settings can also be stored in a
  boto config file.  See `this`_ for details.

  .. _Contributing Guidelines: https://github.com/boto/boto/blob/develop/CONTRIBUTING
  .. _Porting Guide: http://boto.readthedocs.org/en/latest/porting_guide.html
  .. _pip: http://www.pip-installer.org/
  .. _release notes: https://github.com/boto/boto/wiki
  .. _github.com: http://github.com/boto/boto
  .. _Online documentation: http://docs.pythonboto.org
  .. _Python Cheese Shop: http://pypi.python.org/pypi/boto
  .. _this: http://docs.pythonboto.org/en/latest/boto_config_tut.html
  .. _gitflow: http://nvie.com/posts/a-successful-git-branching-model/
  .. _neo: https://github.com/boto/boto/tree/neo
  .. _boto-users Google Group: https://groups.google.com/forum/?fromgroups#!forum/boto-users


pkgId: 604cf368254978da606623c31798d8821f42acd63b3b8dc9690acfe8255a64f5
name: python-boto3-stubs
arch: src
version: 1.26.109
epoch: 0
release: 1
summary: Type annotations for boto3 1.26.109 generated with mypy-boto3-builder 7.14.5
url: https://github.com/youtype/mypy_boto3_builder
rpm_license: MIT License
rpm_vendor: openEuler Copr - user mywaaagh_admin
rpm_group: Unspecified
rpm_buildhost: resalloc-261ea7d9-ba5d-44a2-876a-38c629cdb6de
location_href: 00009720-python-boto3-stubs/python-boto3-stubs-1.26.109-1.src.rpm
checksum_type: sha256
description:
  <a id="boto3-stubs"></a>



  [![PyPI - boto3-stubs](https://img.shields.io/pypi/v/boto3-stubs.svg?color=blue)](https://pypi.org/project/boto3-stubs)
  [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/boto3-stubs.svg?color=blue)](https://pypi.org/project/boto3-stubs)
  [![Docs](https://img.shields.io/readthedocs/boto3-stubs.svg?color=blue)](https://youtype.github.io/boto3_stubs_docs/)
  [![PyPI - Downloads](https://img.shields.io/pypi/dm/boto3-stubs?color=blue)](https://pypistats.org/packages/boto3-stubs)

  ![boto3.typed](https://github.com/youtype/mypy_boto3_builder/raw/main/logo.png)

  Type annotations for
  [boto3 1.26.109](https://boto3.amazonaws.com/v1/documentation/api/1.26.109/index.html)
  compatible with [VSCode](https://code.visualstudio.com/),
  [PyCharm](https://www.jetbrains.com/pycharm/),
  [Emacs](https://www.gnu.org/software/emacs/),
  [Sublime Text](https://www.sublimetext.com/),
  [mypy](https://github.com/python/mypy),
  [pyright](https://github.com/microsoft/pyright) and other tools.

  Generated by
  [mypy-boto3-builder 7.14.5](https://github.com/youtype/mypy_boto3_builder).

  More information can be found in
  [boto3-stubs docs](https://youtype.github.io/boto3_stubs_docs/).

  See how it helps to find and fix potential bugs:

  ![boto3-stubs demo](https://github.com/youtype/mypy_boto3_builder/raw/main/demo.gif)

  - [boto3-stubs](#boto3-stubs)
    - [How to install](#how-to-install)
      - [VSCode extension](#vscode-extension)
      - [From PyPI with pip](#from-pypi-with-pip)
      - [From conda-forge](#from-conda-forge)
    - [How to uninstall](#how-to-uninstall)
    - [Usage](#usage)
      - [VSCode](#vscode)
      - [PyCharm](#pycharm)
      - [Emacs](#emacs)
      - [Sublime Text](#sublime-text)
      - [Other IDEs](#other-ides)
      - [mypy](#mypy)
      - [pyright](#pyright)
      - [Explicit type annotations](#explicit-type-annotations)
      - [Pylint compatibility](#pylint-compatibility)
    - [How it works](#how-it-works)
    - [What's new](#what's-new)
      - [Implemented features](#implemented-features)
      - [Latest changes](#latest-changes)
    - [Versioning](#versioning)
    - [Thank you](#thank-you)
    - [Documentation](#documentation)
    - [Support and contributing](#support-and-contributing)
    - [Submodules](#submodules)

  <a id="how-to-install"></a>



  <a id="vscode-extension"></a>



  Add
  [AWS Boto3](https://marketplace.visualstudio.com/items?itemName=Boto3typed.boto3-ide)
  extension to your VSCode and run `AWS boto3: Quick Start` command.

  Click `Auto-discover services` and select services you use in the current
  project.

  <a id="from-pypi-with-pip"></a>



  Install `boto3-stubs` to add type annotations for `boto3` package.

  ```bash

  python -m pip install boto3-stubs



  python -m pip install 'boto3-stubs[essential]'


  python -m pip install 'boto3-stubs[acm,apigateway]'


  python -m pip install 'boto3-stubs[boto3]'




  python -m pip install 'boto3-stubs-lite[essential]'

  ```

  <a id="from-conda-forge"></a>



  Add `conda-forge` to your channels with:

  ```bash
  conda config --add channels conda-forge
  conda config --set channel_priority strict
  ```

  Once the `conda-forge` channel has been enabled, `boto3-stubs` and
  `boto3-stubs-essential` can be installed with:

  ```bash
  conda install boto3-stubs boto3-stubs-essential
  ```

  It is possible to list all of the versions of `boto3-stubs` available on your
  platform with:

  ```bash
  conda search boto3-stubs --channel conda-forge
  ```

  <a id="how-to-uninstall"></a>



  ```bash

  python -m pip uninstall -y boto3-stubs
  ```

  <a id="usage"></a>



  <a id="vscode"></a>



  - Install
    [Python extension](https://marketplace.visualstudio.com/items?itemName=ms-python.python)
  - Install
    [Pylance extension](https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-pylance)
  - Set `Pylance` as your Python Language Server
  - Install `boto3-stubs[essential]` in your environment:

  ```bash
  python -m pip install 'boto3-stubs[essential]'
  ```

  Both type checking and code completion should now work. No explicit type
  annotations required, write your `boto3` code as usual.

  <a id="pycharm"></a>



  Install `boto3-stubs-lite[essential]` in your environment:

  ```bash
  python -m pip install 'boto3-stubs-lite[essential]'`
  ```

  Both type checking and code completion should now work. Explicit type
  annotations **are required**.

  Use `boto3-stubs` package instead for implicit type discovery.

  <a id="emacs"></a>



  - Install `boto3-stubs` with services you use in your environment:

  ```bash
  python -m pip install 'boto3-stubs[essential]'
  ```

  - Install [use-package](https://github.com/jwiegley/use-package),
    [lsp](https://github.com/emacs-lsp/lsp-mode/),
    [company](https://github.com/company-mode/company-mode) and
    [flycheck](https://github.com/flycheck/flycheck) packages
  - Install [lsp-pyright](https://github.com/emacs-lsp/lsp-pyright) package

  ```elisp
  (use-package lsp-pyright
    :ensure t
    :hook (python-mode . (lambda ()
                            (require 'lsp-pyright)
                            (lsp)))  ; or lsp-deferred
    :init (when (executable-find "python3")
            (setq lsp-pyright-python-executable-cmd "python3"))
    )
  ```

  - Make sure emacs uses the environment where you have installed `boto3-stubs`

  Type checking should now work. No explicit type annotations required, write
  your `boto3` code as usual.

  <a id="sublime-text"></a>



  - Install `boto3-stubs[essential]` with services you use in your environment:

  ```bash
  python -m pip install 'boto3-stubs[essential]'
  ```

  - Install [LSP-pyright](https://github.com/sublimelsp/LSP-pyright) package

  Type checking should now work. No explicit type annotations required, write
  your `boto3` code as usual.

  <a id="other-ides"></a>



  Not tested, but as long as your IDE supports `mypy` or `pyright`, everything
  should work.

  <a id="mypy"></a>



  - Install `mypy`: `python -m pip install mypy`
  - Install `boto3-stubs[essential]` in your environment:

  ```bash
  python -m pip install 'boto3-stubs[essential]'`
  ```

  Type checking should now work. No explicit type annotations required, write
  your `boto3` code as usual.

  <a id="pyright"></a>



  - Install `pyright`: `npm i -g pyright`
  - Install `boto3-stubs[essential]` in your environment:

  ```bash
  python -m pip install 'boto3-stubs[essential]'
  ```

  Optionally, you can install `boto3-stubs` to `typings` folder.

  Type checking should now work. No explicit type annotations required, write
  your `boto3` code as usual.

  <a id="explicit-type-annotations"></a>



  To speed up type checking and code completion, you can set types explicitly.

  ```python
  import boto3
  from boto3.session import Session

  from mypy_boto3_ec2.client import EC2Client
  from mypy_boto3_ec2.service_resource import EC2ServiceResource
  from mypy_boto3_ec2.waiter import BundleTaskCompleteWaiter
  from mypy_boto3_ec2.paginator import DescribeVolumesPaginator

  session = Session(region_name="us-west-1")

  ec2_client: EC2Client = boto3.client("ec2", region_name="us-west-1")
  ec2_resource: EC2ServiceResource = session.resource("ec2")

  bundle_task_complete_waiter: BundleTaskCompleteWaiter = ec2_client.get_waiter(
      "bundle_task_complete"
  )
  describe_volumes_paginator: DescribeVolumesPaginator = ec2_client.get_paginator("describe_volumes")
  ```

  <a id="pylint-compatibility"></a>



  It is totally safe to use `TYPE_CHECKING` flag in order to avoid `boto3-stubs`
  dependency in production. However, there is an issue in `pylint` that it
  complains about undefined variables. To fix it, set all types to `object` in
  non-`TYPE_CHECKING` mode.

  ```python
  import boto3
  from typing import TYPE_CHECKING

  if TYPE_CHECKING:
      from mypy_boto3_ec2 import EC2Client, EC2ServiceResource
      from mypy_boto3_ec2.waiters import BundleTaskCompleteWaiter
      from mypy_boto3_ec2.paginators import DescribeVolumesPaginator
  else:
      EC2Client = object
      EC2ServiceResource = object
      BundleTaskCompleteWaiter = object
      DescribeVolumesPaginator = object

  ...
  ```

  <a id="how-it-works"></a>



  Fully automated
  [mypy-boto3-builder](https://github.com/youtype/mypy_boto3_builder) carefully
  generates type annotations for each service, patiently waiting for `boto3`
  updates. It delivers drop-in type annotations for you and makes sure that:

  - All available `boto3` services are covered.
  - Each public class and method of every `boto3` service gets valid type
    annotations extracted from `botocore` schemas.
  - Type annotations include up-to-date documentation.
  - Link to documentation is provided for every method.
  - Code is processed by [black](https://github.com/psf/black) and
    [isort](https://github.com/PyCQA/isort) for readability.

  <a id="what's-new"></a>



  <a id="implemented-features"></a>



  - Fully type annotated `boto3`, `botocore`, `aiobotocore` and `aioboto3`
    libraries
  - `mypy`, `pyright`, `VSCode`, `PyCharm`, `Sublime Text` and `Emacs`
    compatibility
  - `Client`, `ServiceResource`, `Resource`, `Waiter` `Paginator` type
    annotations for each service
  - Generated `TypeDefs` for each service
  - Generated `Literals` for each service
  - Auto discovery of types for `boto3.client` and `boto3.resource` calls
  - Auto discovery of types for `session.client` and `session.resource` calls
  - Auto discovery of types for `client.get_waiter` and `client.get_paginator`
    calls
  - Auto discovery of types for `ServiceResource` and `Resource` collections
  - Auto discovery of types for `aiobotocore.Session.create_client` calls

  <a id="latest-changes"></a>



  Builder changelog can be found in
  [Releases](https://github.com/youtype/mypy_boto3_builder/releases).

  <a id="versioning"></a>



  `boto3-stubs` version is the same as related `boto3` version and follows
  [PEP 440](https://www.python.org/dev/peps/pep-0440/) format.

  <a id="thank-you"></a>



  - [Allie Fitter](https://github.com/alliefitter) for
    [boto3-type-annotations](https://pypi.org/project/boto3-type-annotations/),
    this package is based on top of his work
  - [black](https://github.com/psf/black) developers for an awesome formatting
    tool
  - [Timothy Edmund Crosley](https://github.com/timothycrosley) for
    [isort](https://github.com/PyCQA/isort) and how flexible it is
  - [mypy](https://github.com/python/mypy) developers for doing all dirty work
    for us
  - [pyright](https://github.com/microsoft/pyright) team for the new era of typed
    Python

  <a id="documentation"></a>



  All services type annotations can be found in
  [boto3 docs](https://youtype.github.io/boto3_stubs_docs/)

  <a id="support-and-contributing"></a>



  This package is auto-generated. Please reports any bugs or request new features
  in [mypy-boto3-builder](https://github.com/youtype/mypy_boto3_builder/issues/)
  repository.

  <a id="submodules"></a>



  - `boto3-stubs[all]` - Type annotations for all 343 services.
  - `boto3-stubs[essential]` - Type annotations for
    [CloudFormation](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cloudformation/),
    [DynamoDB](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_dynamodb/),
    [EC2](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ec2/),
    [Lambda](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_lambda/),
    [RDS](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_rds/),
    [S3](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_s3/) and
    [SQS](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sqs/) services.
  - `boto3-stubs[boto3]` - Install annotations in sync with `boto3` version.
  - `boto3-stubs[accessanalyzer]` - Type annotations for
    [AccessAnalyzer](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_accessanalyzer/)
    service.
  - `boto3-stubs[account]` - Type annotations for
    [Account](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_account/)
    service.
  - `boto3-stubs[acm]` - Type annotations for
    [ACM](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_acm/) service.
  - `boto3-stubs[acm-pca]` - Type annotations for
    [ACMPCA](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_acm_pca/)
    service.
  - `boto3-stubs[alexaforbusiness]` - Type annotations for
    [AlexaForBusiness](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_alexaforbusiness/)
    service.
  - `boto3-stubs[amp]` - Type annotations for
    [PrometheusService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_amp/)
    service.
  - `boto3-stubs[amplify]` - Type annotations for
    [Amplify](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_amplify/)
    service.
  - `boto3-stubs[amplifybackend]` - Type annotations for
    [AmplifyBackend](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_amplifybackend/)
    service.
  - `boto3-stubs[amplifyuibuilder]` - Type annotations for
    [AmplifyUIBuilder](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_amplifyuibuilder/)
    service.
  - `boto3-stubs[apigateway]` - Type annotations for
    [APIGateway](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_apigateway/)
    service.
  - `boto3-stubs[apigatewaymanagementapi]` - Type annotations for
    [ApiGatewayManagementApi](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_apigatewaymanagementapi/)
    service.
  - `boto3-stubs[apigatewayv2]` - Type annotations for
    [ApiGatewayV2](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_apigatewayv2/)
    service.
  - `boto3-stubs[appconfig]` - Type annotations for
    [AppConfig](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_appconfig/)
    service.
  - `boto3-stubs[appconfigdata]` - Type annotations for
    [AppConfigData](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_appconfigdata/)
    service.
  - `boto3-stubs[appflow]` - Type annotations for
    [Appflow](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_appflow/)
    service.
  - `boto3-stubs[appintegrations]` - Type annotations for
    [AppIntegrationsService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_appintegrations/)
    service.
  - `boto3-stubs[application-autoscaling]` - Type annotations for
    [ApplicationAutoScaling](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_application_autoscaling/)
    service.
  - `boto3-stubs[application-insights]` - Type annotations for
    [ApplicationInsights](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_application_insights/)
    service.
  - `boto3-stubs[applicationcostprofiler]` - Type annotations for
    [ApplicationCostProfiler](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_applicationcostprofiler/)
    service.
  - `boto3-stubs[appmesh]` - Type annotations for
    [AppMesh](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_appmesh/)
    service.
  - `boto3-stubs[apprunner]` - Type annotations for
    [AppRunner](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_apprunner/)
    service.
  - `boto3-stubs[appstream]` - Type annotations for
    [AppStream](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_appstream/)
    service.
  - `boto3-stubs[appsync]` - Type annotations for
    [AppSync](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_appsync/)
    service.
  - `boto3-stubs[arc-zonal-shift]` - Type annotations for
    [ARCZonalShift](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_arc_zonal_shift/)
    service.
  - `boto3-stubs[athena]` - Type annotations for
    [Athena](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_athena/)
    service.
  - `boto3-stubs[auditmanager]` - Type annotations for
    [AuditManager](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_auditmanager/)
    service.
  - `boto3-stubs[autoscaling]` - Type annotations for
    [AutoScaling](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_autoscaling/)
    service.
  - `boto3-stubs[autoscaling-plans]` - Type annotations for
    [AutoScalingPlans](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_autoscaling_plans/)
    service.
  - `boto3-stubs[backup]` - Type annotations for
    [Backup](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_backup/)
    service.
  - `boto3-stubs[backup-gateway]` - Type annotations for
    [BackupGateway](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_backup_gateway/)
    service.
  - `boto3-stubs[backupstorage]` - Type annotations for
    [BackupStorage](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_backupstorage/)
    service.
  - `boto3-stubs[batch]` - Type annotations for
    [Batch](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_batch/)
    service.
  - `boto3-stubs[billingconductor]` - Type annotations for
    [BillingConductor](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_billingconductor/)
    service.
  - `boto3-stubs[braket]` - Type annotations for
    [Braket](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_braket/)
    service.
  - `boto3-stubs[budgets]` - Type annotations for
    [Budgets](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_budgets/)
    service.
  - `boto3-stubs[ce]` - Type annotations for
    [CostExplorer](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ce/)
    service.
  - `boto3-stubs[chime]` - Type annotations for
    [Chime](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_chime/)
    service.
  - `boto3-stubs[chime-sdk-identity]` - Type annotations for
    [ChimeSDKIdentity](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_chime_sdk_identity/)
    service.
  - `boto3-stubs[chime-sdk-media-pipelines]` - Type annotations for
    [ChimeSDKMediaPipelines](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_chime_sdk_media_pipelines/)
    service.
  - `boto3-stubs[chime-sdk-meetings]` - Type annotations for
    [ChimeSDKMeetings](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_chime_sdk_meetings/)
    service.
  - `boto3-stubs[chime-sdk-messaging]` - Type annotations for
    [ChimeSDKMessaging](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_chime_sdk_messaging/)
    service.
  - `boto3-stubs[chime-sdk-voice]` - Type annotations for
    [ChimeSDKVoice](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_chime_sdk_voice/)
    service.
  - `boto3-stubs[cleanrooms]` - Type annotations for
    [CleanRoomsService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cleanrooms/)
    service.
  - `boto3-stubs[cloud9]` - Type annotations for
    [Cloud9](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cloud9/)
    service.
  - `boto3-stubs[cloudcontrol]` - Type annotations for
    [CloudControlApi](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cloudcontrol/)
    service.
  - `boto3-stubs[clouddirectory]` - Type annotations for
    [CloudDirectory](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_clouddirectory/)
    service.
  - `boto3-stubs[cloudformation]` - Type annotations for
    [CloudFormation](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cloudformation/)
    service.
  - `boto3-stubs[cloudfront]` - Type annotations for
    [CloudFront](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cloudfront/)
    service.
  - `boto3-stubs[cloudhsm]` - Type annotations for
    [CloudHSM](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cloudhsm/)
    service.
  - `boto3-stubs[cloudhsmv2]` - Type annotations for
    [CloudHSMV2](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cloudhsmv2/)
    service.
  - `boto3-stubs[cloudsearch]` - Type annotations for
    [CloudSearch](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cloudsearch/)
    service.
  - `boto3-stubs[cloudsearchdomain]` - Type annotations for
    [CloudSearchDomain](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cloudsearchdomain/)
    service.
  - `boto3-stubs[cloudtrail]` - Type annotations for
    [CloudTrail](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cloudtrail/)
    service.
  - `boto3-stubs[cloudtrail-data]` - Type annotations for
    [CloudTrailDataService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cloudtrail_data/)
    service.
  - `boto3-stubs[cloudwatch]` - Type annotations for
    [CloudWatch](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cloudwatch/)
    service.
  - `boto3-stubs[codeartifact]` - Type annotations for
    [CodeArtifact](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_codeartifact/)
    service.
  - `boto3-stubs[codebuild]` - Type annotations for
    [CodeBuild](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_codebuild/)
    service.
  - `boto3-stubs[codecatalyst]` - Type annotations for
    [CodeCatalyst](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_codecatalyst/)
    service.
  - `boto3-stubs[codecommit]` - Type annotations for
    [CodeCommit](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_codecommit/)
    service.
  - `boto3-stubs[codedeploy]` - Type annotations for
    [CodeDeploy](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_codedeploy/)
    service.
  - `boto3-stubs[codeguru-reviewer]` - Type annotations for
    [CodeGuruReviewer](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_codeguru_reviewer/)
    service.
  - `boto3-stubs[codeguruprofiler]` - Type annotations for
    [CodeGuruProfiler](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_codeguruprofiler/)
    service.
  - `boto3-stubs[codepipeline]` - Type annotations for
    [CodePipeline](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_codepipeline/)
    service.
  - `boto3-stubs[codestar]` - Type annotations for
    [CodeStar](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_codestar/)
    service.
  - `boto3-stubs[codestar-connections]` - Type annotations for
    [CodeStarconnections](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_codestar_connections/)
    service.
  - `boto3-stubs[codestar-notifications]` - Type annotations for
    [CodeStarNotifications](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_codestar_notifications/)
    service.
  - `boto3-stubs[cognito-identity]` - Type annotations for
    [CognitoIdentity](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cognito_identity/)
    service.
  - `boto3-stubs[cognito-idp]` - Type annotations for
    [CognitoIdentityProvider](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cognito_idp/)
    service.
  - `boto3-stubs[cognito-sync]` - Type annotations for
    [CognitoSync](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cognito_sync/)
    service.
  - `boto3-stubs[comprehend]` - Type annotations for
    [Comprehend](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_comprehend/)
    service.
  - `boto3-stubs[comprehendmedical]` - Type annotations for
    [ComprehendMedical](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_comprehendmedical/)
    service.
  - `boto3-stubs[compute-optimizer]` - Type annotations for
    [ComputeOptimizer](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_compute_optimizer/)
    service.
  - `boto3-stubs[config]` - Type annotations for
    [ConfigService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_config/)
    service.
  - `boto3-stubs[connect]` - Type annotations for
    [Connect](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_connect/)
    service.
  - `boto3-stubs[connect-contact-lens]` - Type annotations for
    [ConnectContactLens](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_connect_contact_lens/)
    service.
  - `boto3-stubs[connectcampaigns]` - Type annotations for
    [ConnectCampaignService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_connectcampaigns/)
    service.
  - `boto3-stubs[connectcases]` - Type annotations for
    [ConnectCases](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_connectcases/)
    service.
  - `boto3-stubs[connectparticipant]` - Type annotations for
    [ConnectParticipant](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_connectparticipant/)
    service.
  - `boto3-stubs[controltower]` - Type annotations for
    [ControlTower](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_controltower/)
    service.
  - `boto3-stubs[cur]` - Type annotations for
    [CostandUsageReportService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cur/)
    service.
  - `boto3-stubs[customer-profiles]` - Type annotations for
    [CustomerProfiles](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_customer_profiles/)
    service.
  - `boto3-stubs[databrew]` - Type annotations for
    [GlueDataBrew](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_databrew/)
    service.
  - `boto3-stubs[dataexchange]` - Type annotations for
    [DataExchange](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_dataexchange/)
    service.
  - `boto3-stubs[datapipeline]` - Type annotations for
    [DataPipeline](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_datapipeline/)
    service.
  - `boto3-stubs[datasync]` - Type annotations for
    [DataSync](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_datasync/)
    service.
  - `boto3-stubs[dax]` - Type annotations for
    [DAX](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_dax/) service.
  - `boto3-stubs[detective]` - Type annotations for
    [Detective](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_detective/)
    service.
  - `boto3-stubs[devicefarm]` - Type annotations for
    [DeviceFarm](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_devicefarm/)
    service.
  - `boto3-stubs[devops-guru]` - Type annotations for
    [DevOpsGuru](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_devops_guru/)
    service.
  - `boto3-stubs[directconnect]` - Type annotations for
    [DirectConnect](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_directconnect/)
    service.
  - `boto3-stubs[discovery]` - Type annotations for
    [ApplicationDiscoveryService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_discovery/)
    service.
  - `boto3-stubs[dlm]` - Type annotations for
    [DLM](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_dlm/) service.
  - `boto3-stubs[dms]` - Type annotations for
    [DatabaseMigrationService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_dms/)
    service.
  - `boto3-stubs[docdb]` - Type annotations for
    [DocDB](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_docdb/)
    service.
  - `boto3-stubs[docdb-elastic]` - Type annotations for
    [DocDBElastic](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_docdb_elastic/)
    service.
  - `boto3-stubs[drs]` - Type annotations for
    [drs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_drs/) service.
  - `boto3-stubs[ds]` - Type annotations for
    [DirectoryService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ds/)
    service.
  - `boto3-stubs[dynamodb]` - Type annotations for
    [DynamoDB](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_dynamodb/)
    service.
  - `boto3-stubs[dynamodbstreams]` - Type annotations for
    [DynamoDBStreams](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_dynamodbstreams/)
    service.
  - `boto3-stubs[ebs]` - Type annotations for
    [EBS](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ebs/) service.
  - `boto3-stubs[ec2]` - Type annotations for
    [EC2](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ec2/) service.
  - `boto3-stubs[ec2-instance-connect]` - Type annotations for
    [EC2InstanceConnect](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ec2_instance_connect/)
    service.
  - `boto3-stubs[ecr]` - Type annotations for
    [ECR](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ecr/) service.
  - `boto3-stubs[ecr-public]` - Type annotations for
    [ECRPublic](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ecr_public/)
    service.
  - `boto3-stubs[ecs]` - Type annotations for
    [ECS](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ecs/) service.
  - `boto3-stubs[efs]` - Type annotations for
    [EFS](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_efs/) service.
  - `boto3-stubs[eks]` - Type annotations for
    [EKS](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_eks/) service.
  - `boto3-stubs[elastic-inference]` - Type annotations for
    [ElasticInference](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_elastic_inference/)
    service.
  - `boto3-stubs[elasticache]` - Type annotations for
    [ElastiCache](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_elasticache/)
    service.
  - `boto3-stubs[elasticbeanstalk]` - Type annotations for
    [ElasticBeanstalk](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_elasticbeanstalk/)
    service.
  - `boto3-stubs[elastictranscoder]` - Type annotations for
    [ElasticTranscoder](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_elastictranscoder/)
    service.
  - `boto3-stubs[elb]` - Type annotations for
    [ElasticLoadBalancing](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_elb/)
    service.
  - `boto3-stubs[elbv2]` - Type annotations for
    [ElasticLoadBalancingv2](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_elbv2/)
    service.
  - `boto3-stubs[emr]` - Type annotations for
    [EMR](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_emr/) service.
  - `boto3-stubs[emr-containers]` - Type annotations for
    [EMRContainers](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_emr_containers/)
    service.
  - `boto3-stubs[emr-serverless]` - Type annotations for
    [EMRServerless](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_emr_serverless/)
    service.
  - `boto3-stubs[es]` - Type annotations for
    [ElasticsearchService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_es/)
    service.
  - `boto3-stubs[events]` - Type annotations for
    [EventBridge](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_events/)
    service.
  - `boto3-stubs[evidently]` - Type annotations for
    [CloudWatchEvidently](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_evidently/)
    service.
  - `boto3-stubs[finspace]` - Type annotations for
    [finspace](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_finspace/)
    service.
  - `boto3-stubs[finspace-data]` - Type annotations for
    [FinSpaceData](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_finspace_data/)
    service.
  - `boto3-stubs[firehose]` - Type annotations for
    [Firehose](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_firehose/)
    service.
  - `boto3-stubs[fis]` - Type annotations for
    [FIS](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_fis/) service.
  - `boto3-stubs[fms]` - Type annotations for
    [FMS](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_fms/) service.
  - `boto3-stubs[forecast]` - Type annotations for
    [ForecastService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_forecast/)
    service.
  - `boto3-stubs[forecastquery]` - Type annotations for
    [ForecastQueryService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_forecastquery/)
    service.
  - `boto3-stubs[frauddetector]` - Type annotations for
    [FraudDetector](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_frauddetector/)
    service.
  - `boto3-stubs[fsx]` - Type annotations for
    [FSx](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_fsx/) service.
  - `boto3-stubs[gamelift]` - Type annotations for
    [GameLift](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_gamelift/)
    service.
  - `boto3-stubs[gamesparks]` - Type annotations for
    [GameSparks](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_gamesparks/)
    service.
  - `boto3-stubs[glacier]` - Type annotations for
    [Glacier](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_glacier/)
    service.
  - `boto3-stubs[globalaccelerator]` - Type annotations for
    [GlobalAccelerator](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_globalaccelerator/)
    service.
  - `boto3-stubs[glue]` - Type annotations for
    [Glue](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_glue/) service.
  - `boto3-stubs[grafana]` - Type annotations for
    [ManagedGrafana](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_grafana/)
    service.
  - `boto3-stubs[greengrass]` - Type annotations for
    [Greengrass](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_greengrass/)
    service.
  - `boto3-stubs[greengrassv2]` - Type annotations for
    [GreengrassV2](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_greengrassv2/)
    service.
  - `boto3-stubs[groundstation]` - Type annotations for
    [GroundStation](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_groundstation/)
    service.
  - `boto3-stubs[guardduty]` - Type annotations for
    [GuardDuty](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_guardduty/)
    service.
  - `boto3-stubs[health]` - Type annotations for
    [Health](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_health/)
    service.
  - `boto3-stubs[healthlake]` - Type annotations for
    [HealthLake](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_healthlake/)
    service.
  - `boto3-stubs[honeycode]` - Type annotations for
    [Honeycode](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_honeycode/)
    service.
  - `boto3-stubs[iam]` - Type annotations for
    [IAM](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iam/) service.
  - `boto3-stubs[identitystore]` - Type annotations for
    [IdentityStore](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_identitystore/)
    service.
  - `boto3-stubs[imagebuilder]` - Type annotations for
    [imagebuilder](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_imagebuilder/)
    service.
  - `boto3-stubs[importexport]` - Type annotations for
    [ImportExport](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_importexport/)
    service.
  - `boto3-stubs[inspector]` - Type annotations for
    [Inspector](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_inspector/)
    service.
  - `boto3-stubs[inspector2]` - Type annotations for
    [Inspector2](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_inspector2/)
    service.
  - `boto3-stubs[internetmonitor]` - Type annotations for
    [CloudWatchInternetMonitor](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_internetmonitor/)
    service.
  - `boto3-stubs[iot]` - Type annotations for
    [IoT](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iot/) service.
  - `boto3-stubs[iot-data]` - Type annotations for
    [IoTDataPlane](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iot_data/)
    service.
  - `boto3-stubs[iot-jobs-data]` - Type annotations for
    [IoTJobsDataPlane](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iot_jobs_data/)
    service.
  - `boto3-stubs[iot-roborunner]` - Type annotations for
    [IoTRoboRunner](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iot_roborunner/)
    service.
  - `boto3-stubs[iot1click-devices]` - Type annotations for
    [IoT1ClickDevicesService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iot1click_devices/)
    service.
  - `boto3-stubs[iot1click-projects]` - Type annotations for
    [IoT1ClickProjects](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iot1click_projects/)
    service.
  - `boto3-stubs[iotanalytics]` - Type annotations for
    [IoTAnalytics](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iotanalytics/)
    service.
  - `boto3-stubs[iotdeviceadvisor]` - Type annotations for
    [IoTDeviceAdvisor](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iotdeviceadvisor/)
    service.
  - `boto3-stubs[iotevents]` - Type annotations for
    [IoTEvents](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iotevents/)
    service.
  - `boto3-stubs[iotevents-data]` - Type annotations for
    [IoTEventsData](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iotevents_data/)
    service.
  - `boto3-stubs[iotfleethub]` - Type annotations for
    [IoTFleetHub](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iotfleethub/)
    service.
  - `boto3-stubs[iotfleetwise]` - Type annotations for
    [IoTFleetWise](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iotfleetwise/)
    service.
  - `boto3-stubs[iotsecuretunneling]` - Type annotations for
    [IoTSecureTunneling](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iotsecuretunneling/)
    service.
  - `boto3-stubs[iotsitewise]` - Type annotations for
    [IoTSiteWise](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iotsitewise/)
    service.
  - `boto3-stubs[iotthingsgraph]` - Type annotations for
    [IoTThingsGraph](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iotthingsgraph/)
    service.
  - `boto3-stubs[iottwinmaker]` - Type annotations for
    [IoTTwinMaker](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iottwinmaker/)
    service.
  - `boto3-stubs[iotwireless]` - Type annotations for
    [IoTWireless](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iotwireless/)
    service.
  - `boto3-stubs[ivs]` - Type annotations for
    [IVS](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ivs/) service.
  - `boto3-stubs[ivs-realtime]` - Type annotations for
    [ivsrealtime](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ivs_realtime/)
    service.
  - `boto3-stubs[ivschat]` - Type annotations for
    [ivschat](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ivschat/)
    service.
  - `boto3-stubs[kafka]` - Type annotations for
    [Kafka](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_kafka/)
    service.
  - `boto3-stubs[kafkaconnect]` - Type annotations for
    [KafkaConnect](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_kafkaconnect/)
    service.
  - `boto3-stubs[kendra]` - Type annotations for
    [kendra](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_kendra/)
    service.
  - `boto3-stubs[kendra-ranking]` - Type annotations for
    [KendraRanking](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_kendra_ranking/)
    service.
  - `boto3-stubs[keyspaces]` - Type annotations for
    [Keyspaces](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_keyspaces/)
    service.
  - `boto3-stubs[kinesis]` - Type annotations for
    [Kinesis](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_kinesis/)
    service.
  - `boto3-stubs[kinesis-video-archived-media]` - Type annotations for
    [KinesisVideoArchivedMedia](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_kinesis_video_archived_media/)
    service.
  - `boto3-stubs[kinesis-video-media]` - Type annotations for
    [KinesisVideoMedia](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_kinesis_video_media/)
    service.
  - `boto3-stubs[kinesis-video-signaling]` - Type annotations for
    [KinesisVideoSignalingChannels](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_kinesis_video_signaling/)
    service.
  - `boto3-stubs[kinesis-video-webrtc-storage]` - Type annotations for
    [KinesisVideoWebRTCStorage](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_kinesis_video_webrtc_storage/)
    service.
  - `boto3-stubs[kinesisanalytics]` - Type annotations for
    [KinesisAnalytics](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_kinesisanalytics/)
    service.
  - `boto3-stubs[kinesisanalyticsv2]` - Type annotations for
    [KinesisAnalyticsV2](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_kinesisanalyticsv2/)
    service.
  - `boto3-stubs[kinesisvideo]` - Type annotations for
    [KinesisVideo](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_kinesisvideo/)
    service.
  - `boto3-stubs[kms]` - Type annotations for
    [KMS](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_kms/) service.
  - `boto3-stubs[lakeformation]` - Type annotations for
    [LakeFormation](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_lakeformation/)
    service.
  - `boto3-stubs[lambda]` - Type annotations for
    [Lambda](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_lambda/)
    service.
  - `boto3-stubs[lex-models]` - Type annotations for
    [LexModelBuildingService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_lex_models/)
    service.
  - `boto3-stubs[lex-runtime]` - Type annotations for
    [LexRuntimeService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_lex_runtime/)
    service.
  - `boto3-stubs[lexv2-models]` - Type annotations for
    [LexModelsV2](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_lexv2_models/)
    service.
  - `boto3-stubs[lexv2-runtime]` - Type annotations for
    [LexRuntimeV2](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_lexv2_runtime/)
    service.
  - `boto3-stubs[license-manager]` - Type annotations for
    [LicenseManager](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_license_manager/)
    service.
  - `boto3-stubs[license-manager-linux-subscriptions]` - Type annotations for
    [LicenseManagerLinuxSubscriptions](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_license_manager_linux_subscriptions/)
    service.
  - `boto3-stubs[license-manager-user-subscriptions]` - Type annotations for
    [LicenseManagerUserSubscriptions](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_license_manager_user_subscriptions/)
    service.
  - `boto3-stubs[lightsail]` - Type annotations for
    [Lightsail](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_lightsail/)
    service.
  - `boto3-stubs[location]` - Type annotations for
    [LocationService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_location/)
    service.
  - `boto3-stubs[logs]` - Type annotations for
    [CloudWatchLogs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_logs/)
    service.
  - `boto3-stubs[lookoutequipment]` - Type annotations for
    [LookoutEquipment](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_lookoutequipment/)
    service.
  - `boto3-stubs[lookoutmetrics]` - Type annotations for
    [LookoutMetrics](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_lookoutmetrics/)
    service.
  - `boto3-stubs[lookoutvision]` - Type annotations for
    [LookoutforVision](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_lookoutvision/)
    service.
  - `boto3-stubs[m2]` - Type annotations for
    [MainframeModernization](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_m2/)
    service.
  - `boto3-stubs[machinelearning]` - Type annotations for
    [MachineLearning](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_machinelearning/)
    service.
  - `boto3-stubs[macie]` - Type annotations for
    [Macie](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_macie/)
    service.
  - `boto3-stubs[macie2]` - Type annotations for
    [Macie2](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_macie2/)
    service.
  - `boto3-stubs[managedblockchain]` - Type annotations for
    [ManagedBlockchain](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_managedblockchain/)
    service.
  - `boto3-stubs[marketplace-catalog]` - Type annotations for
    [MarketplaceCatalog](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_marketplace_catalog/)
    service.
  - `boto3-stubs[marketplace-entitlement]` - Type annotations for
    [MarketplaceEntitlementService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_marketplace_entitlement/)
    service.
  - `boto3-stubs[marketplacecommerceanalytics]` - Type annotations for
    [MarketplaceCommerceAnalytics](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_marketplacecommerceanalytics/)
    service.
  - `boto3-stubs[mediaconnect]` - Type annotations for
    [MediaConnect](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_mediaconnect/)
    service.
  - `boto3-stubs[mediaconvert]` - Type annotations for
    [MediaConvert](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_mediaconvert/)
    service.
  - `boto3-stubs[medialive]` - Type annotations for
    [MediaLive](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_medialive/)
    service.
  - `boto3-stubs[mediapackage]` - Type annotations for
    [MediaPackage](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_mediapackage/)
    service.
  - `boto3-stubs[mediapackage-vod]` - Type annotations for
    [MediaPackageVod](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_mediapackage_vod/)
    service.
  - `boto3-stubs[mediastore]` - Type annotations for
    [MediaStore](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_mediastore/)
    service.
  - `boto3-stubs[mediastore-data]` - Type annotations for
    [MediaStoreData](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_mediastore_data/)
    service.
  - `boto3-stubs[mediatailor]` - Type annotations for
    [MediaTailor](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_mediatailor/)
    service.
  - `boto3-stubs[memorydb]` - Type annotations for
    [MemoryDB](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_memorydb/)
    service.
  - `boto3-stubs[meteringmarketplace]` - Type annotations for
    [MarketplaceMetering](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_meteringmarketplace/)
    service.
  - `boto3-stubs[mgh]` - Type annotations for
    [MigrationHub](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_mgh/)
    service.
  - `boto3-stubs[mgn]` - Type annotations for
    [mgn](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_mgn/) service.
  - `boto3-stubs[migration-hub-refactor-spaces]` - Type annotations for
    [MigrationHubRefactorSpaces](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_migration_hub_refactor_spaces/)
    service.
  - `boto3-stubs[migrationhub-config]` - Type annotations for
    [MigrationHubConfig](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_migrationhub_config/)
    service.
  - `boto3-stubs[migrationhuborchestrator]` - Type annotations for
    [MigrationHubOrchestrator](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_migrationhuborchestrator/)
    service.
  - `boto3-stubs[migrationhubstrategy]` - Type annotations for
    [MigrationHubStrategyRecommendations](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_migrationhubstrategy/)
    service.
  - `boto3-stubs[mobile]` - Type annotations for
    [Mobile](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_mobile/)
    service.
  - `boto3-stubs[mq]` - Type annotations for
    [MQ](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_mq/) service.
  - `boto3-stubs[mturk]` - Type annotations for
    [MTurk](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_mturk/)
    service.
  - `boto3-stubs[mwaa]` - Type annotations for
    [MWAA](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_mwaa/) service.
  - `boto3-stubs[neptune]` - Type annotations for
    [Neptune](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_neptune/)
    service.
  - `boto3-stubs[network-firewall]` - Type annotations for
    [NetworkFirewall](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_network_firewall/)
    service.
  - `boto3-stubs[networkmanager]` - Type annotations for
    [NetworkManager](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_networkmanager/)
    service.
  - `boto3-stubs[nimble]` - Type annotations for
    [NimbleStudio](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_nimble/)
    service.
  - `boto3-stubs[oam]` - Type annotations for
    [CloudWatchObservabilityAccessManager](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_oam/)
    service.
  - `boto3-stubs[omics]` - Type annotations for
    [Omics](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_omics/)
    service.
  - `boto3-stubs[opensearch]` - Type annotations for
    [OpenSearchService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_opensearch/)
    service.
  - `boto3-stubs[opensearchserverless]` - Type annotations for
    [OpenSearchServiceServerless](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_opensearchserverless/)
    service.
  - `boto3-stubs[opsworks]` - Type annotations for
    [OpsWorks](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_opsworks/)
    service.
  - `boto3-stubs[opsworkscm]` - Type annotations for
    [OpsWorksCM](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_opsworkscm/)
    service.
  - `boto3-stubs[organizations]` - Type annotations for
    [Organizations](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_organizations/)
    service.
  - `boto3-stubs[outposts]` - Type annotations for
    [Outposts](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_outposts/)
    service.
  - `boto3-stubs[panorama]` - Type annotations for
    [Panorama](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_panorama/)
    service.
  - `boto3-stubs[personalize]` - Type annotations for
    [Personalize](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_personalize/)
    service.
  - `boto3-stubs[personalize-events]` - Type annotations for
    [PersonalizeEvents](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_personalize_events/)
    service.
  - `boto3-stubs[personalize-runtime]` - Type annotations for
    [PersonalizeRuntime](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_personalize_runtime/)
    service.
  - `boto3-stubs[pi]` - Type annotations for
    [PI](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_pi/) service.
  - `boto3-stubs[pinpoint]` - Type annotations for
    [Pinpoint](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_pinpoint/)
    service.
  - `boto3-stubs[pinpoint-email]` - Type annotations for
    [PinpointEmail](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_pinpoint_email/)
    service.
  - `boto3-stubs[pinpoint-sms-voice]` - Type annotations for
    [PinpointSMSVoice](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_pinpoint_sms_voice/)
    service.
  - `boto3-stubs[pinpoint-sms-voice-v2]` - Type annotations for
    [PinpointSMSVoiceV2](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_pinpoint_sms_voice_v2/)
    service.
  - `boto3-stubs[pipes]` - Type annotations for
    [EventBridgePipes](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_pipes/)
    service.
  - `boto3-stubs[polly]` - Type annotations for
    [Polly](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_polly/)
    service.
  - `boto3-stubs[pricing]` - Type annotations for
    [Pricing](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_pricing/)
    service.
  - `boto3-stubs[privatenetworks]` - Type annotations for
    [Private5G](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_privatenetworks/)
    service.
  - `boto3-stubs[proton]` - Type annotations for
    [Proton](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_proton/)
    service.
  - `boto3-stubs[qldb]` - Type annotations for
    [QLDB](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_qldb/) service.
  - `boto3-stubs[qldb-session]` - Type annotations for
    [QLDBSession](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_qldb_session/)
    service.
  - `boto3-stubs[quicksight]` - Type annotations for
    [QuickSight](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_quicksight/)
    service.
  - `boto3-stubs[ram]` - Type annotations for
    [RAM](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ram/) service.
  - `boto3-stubs[rbin]` - Type annotations for
    [RecycleBin](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_rbin/)
    service.
  - `boto3-stubs[rds]` - Type annotations for
    [RDS](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_rds/) service.
  - `boto3-stubs[rds-data]` - Type annotations for
    [RDSDataService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_rds_data/)
    service.
  - `boto3-stubs[redshift]` - Type annotations for
    [Redshift](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_redshift/)
    service.
  - `boto3-stubs[redshift-data]` - Type annotations for
    [RedshiftDataAPIService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_redshift_data/)
    service.
  - `boto3-stubs[redshift-serverless]` - Type annotations for
    [RedshiftServerless](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_redshift_serverless/)
    service.
  - `boto3-stubs[rekognition]` - Type annotations for
    [Rekognition](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_rekognition/)
    service.
  - `boto3-stubs[resiliencehub]` - Type annotations for
    [ResilienceHub](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_resiliencehub/)
    service.
  - `boto3-stubs[resource-explorer-2]` - Type annotations for
    [ResourceExplorer](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_resource_explorer_2/)
    service.
  - `boto3-stubs[resource-groups]` - Type annotations for
    [ResourceGroups](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_resource_groups/)
    service.
  - `boto3-stubs[resourcegroupstaggingapi]` - Type annotations for
    [ResourceGroupsTaggingAPI](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_resourcegroupstaggingapi/)
    service.
  - `boto3-stubs[robomaker]` - Type annotations for
    [RoboMaker](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_robomaker/)
    service.
  - `boto3-stubs[rolesanywhere]` - Type annotations for
    [IAMRolesAnywhere](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_rolesanywhere/)
    service.
  - `boto3-stubs[route53]` - Type annotations for
    [Route53](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_route53/)
    service.
  - `boto3-stubs[route53-recovery-cluster]` - Type annotations for
    [Route53RecoveryCluster](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_route53_recovery_cluster/)
    service.
  - `boto3-stubs[route53-recovery-control-config]` - Type annotations for
    [Route53RecoveryControlConfig](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_route53_recovery_control_config/)
    service.
  - `boto3-stubs[route53-recovery-readiness]` - Type annotations for
    [Route53RecoveryReadiness](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_route53_recovery_readiness/)
    service.
  - `boto3-stubs[route53domains]` - Type annotations for
    [Route53Domains](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_route53domains/)
    service.
  - `boto3-stubs[route53resolver]` - Type annotations for
    [Route53Resolver](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_route53resolver/)
    service.
  - `boto3-stubs[rum]` - Type annotations for
    [CloudWatchRUM](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_rum/)
    service.
  - `boto3-stubs[s3]` - Type annotations for
    [S3](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_s3/) service.
  - `boto3-stubs[s3control]` - Type annotations for
    [S3Control](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_s3control/)
    service.
  - `boto3-stubs[s3outposts]` - Type annotations for
    [S3Outposts](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_s3outposts/)
    service.
  - `boto3-stubs[sagemaker]` - Type annotations for
    [SageMaker](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sagemaker/)
    service.
  - `boto3-stubs[sagemaker-a2i-runtime]` - Type annotations for
    [AugmentedAIRuntime](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sagemaker_a2i_runtime/)
    service.
  - `boto3-stubs[sagemaker-edge]` - Type annotations for
    [SagemakerEdgeManager](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sagemaker_edge/)
    service.
  - `boto3-stubs[sagemaker-featurestore-runtime]` - Type annotations for
    [SageMakerFeatureStoreRuntime](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sagemaker_featurestore_runtime/)
    service.
  - `boto3-stubs[sagemaker-geospatial]` - Type annotations for
    [SageMakergeospatialcapabilities](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sagemaker_geospatial/)
    service.
  - `boto3-stubs[sagemaker-metrics]` - Type annotations for
    [SageMakerMetrics](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sagemaker_metrics/)
    service.
  - `boto3-stubs[sagemaker-runtime]` - Type annotations for
    [SageMakerRuntime](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sagemaker_runtime/)
    service.
  - `boto3-stubs[savingsplans]` - Type annotations for
    [SavingsPlans](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_savingsplans/)
    service.
  - `boto3-stubs[scheduler]` - Type annotations for
    [EventBridgeScheduler](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_scheduler/)
    service.
  - `boto3-stubs[schemas]` - Type annotations for
    [Schemas](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_schemas/)
    service.
  - `boto3-stubs[sdb]` - Type annotations for
    [SimpleDB](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sdb/)
    service.
  - `boto3-stubs[secretsmanager]` - Type annotations for
    [SecretsManager](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_secretsmanager/)
    service.
  - `boto3-stubs[securityhub]` - Type annotations for
    [SecurityHub](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_securityhub/)
    service.
  - `boto3-stubs[securitylake]` - Type annotations for
    [SecurityLake](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_securitylake/)
    service.
  - `boto3-stubs[serverlessrepo]` - Type annotations for
    [ServerlessApplicationRepository](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_serverlessrepo/)
    service.
  - `boto3-stubs[service-quotas]` - Type annotations for
    [ServiceQuotas](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_service_quotas/)
    service.
  - `boto3-stubs[servicecatalog]` - Type annotations for
    [ServiceCatalog](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_servicecatalog/)
    service.
  - `boto3-stubs[servicecatalog-appregistry]` - Type annotations for
    [AppRegistry](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_servicecatalog_appregistry/)
    service.
  - `boto3-stubs[servicediscovery]` - Type annotations for
    [ServiceDiscovery](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_servicediscovery/)
    service.
  - `boto3-stubs[ses]` - Type annotations for
    [SES](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ses/) service.
  - `boto3-stubs[sesv2]` - Type annotations for
    [SESV2](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sesv2/)
    service.
  - `boto3-stubs[shield]` - Type annotations for
    [Shield](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_shield/)
    service.
  - `boto3-stubs[signer]` - Type annotations for
    [signer](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_signer/)
    service.
  - `boto3-stubs[simspaceweaver]` - Type annotations for
    [SimSpaceWeaver](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_simspaceweaver/)
    service.
  - `boto3-stubs[sms]` - Type annotations for
    [SMS](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sms/) service.
  - `boto3-stubs[sms-voice]` - Type annotations for
    [PinpointSMSVoice](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sms_voice/)
    service.
  - `boto3-stubs[snow-device-management]` - Type annotations for
    [SnowDeviceManagement](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_snow_device_management/)
    service.
  - `boto3-stubs[snowball]` - Type annotations for
    [Snowball](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_snowball/)
    service.
  - `boto3-stubs[sns]` - Type annotations for
    [SNS](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sns/) service.
  - `boto3-stubs[sqs]` - Type annotations for
    [SQS](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sqs/) service.
  - `boto3-stubs[ssm]` - Type annotations for
    [SSM](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ssm/) service.
  - `boto3-stubs[ssm-contacts]` - Type annotations for
    [SSMContacts](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ssm_contacts/)
    service.
  - `boto3-stubs[ssm-incidents]` - Type annotations for
    [SSMIncidents](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ssm_incidents/)
    service.
  - `boto3-stubs[ssm-sap]` - Type annotations for
    [SsmSap](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ssm_sap/)
    service.
  - `boto3-stubs[sso]` - Type annotations for
    [SSO](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sso/) service.
  - `boto3-stubs[sso-admin]` - Type annotations for
    [SSOAdmin](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sso_admin/)
    service.
  - `boto3-stubs[sso-oidc]` - Type annotations for
    [SSOOIDC](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sso_oidc/)
    service.
  - `boto3-stubs[stepfunctions]` - Type annotations for
    [SFN](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_stepfunctions/)
    service.
  - `boto3-stubs[storagegateway]` - Type annotations for
    [StorageGateway](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_storagegateway/)
    service.
  - `boto3-stubs[sts]` - Type annotations for
    [STS](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sts/) service.
  - `boto3-stubs[support]` - Type annotations for
    [Support](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_support/)
    service.
  - `boto3-stubs[support-app]` - Type annotations for
    [SupportApp](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_support_app/)
    service.
  - `boto3-stubs[swf]` - Type annotations for
    [SWF](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_swf/) service.
  - `boto3-stubs[synthetics]` - Type annotations for
    [Synthetics](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_synthetics/)
    service.
  - `boto3-stubs[textract]` - Type annotations for
    [Textract](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_textract/)
    service.
  - `boto3-stubs[timestream-query]` - Type annotations for
    [TimestreamQuery](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_timestream_query/)
    service.
  - `boto3-stubs[timestream-write]` - Type annotations for
    [TimestreamWrite](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_timestream_write/)
    service.
  - `boto3-stubs[tnb]` - Type annotations for
    [TelcoNetworkBuilder](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_tnb/)
    service.
  - `boto3-stubs[transcribe]` - Type annotations for
    [TranscribeService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_transcribe/)
    service.
  - `boto3-stubs[transfer]` - Type annotations for
    [Transfer](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_transfer/)
    service.
  - `boto3-stubs[translate]` - Type annotations for
    [Translate](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_translate/)
    service.
  - `boto3-stubs[voice-id]` - Type annotations for
    [VoiceID](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_voice_id/)
    service.
  - `boto3-stubs[vpc-lattice]` - Type annotations for
    [VPCLattice](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_vpc_lattice/)
    service.
  - `boto3-stubs[waf]` - Type annotations for
    [WAF](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_waf/) service.
  - `boto3-stubs[waf-regional]` - Type annotations for
    [WAFRegional](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_waf_regional/)
    service.
  - `boto3-stubs[wafv2]` - Type annotations for
    [WAFV2](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_wafv2/)
    service.
  - `boto3-stubs[wellarchitected]` - Type annotations for
    [WellArchitected](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_wellarchitected/)
    service.
  - `boto3-stubs[wisdom]` - Type annotations for
    [ConnectWisdomService](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_wisdom/)
    service.
  - `boto3-stubs[workdocs]` - Type annotations for
    [WorkDocs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_workdocs/)
    service.
  - `boto3-stubs[worklink]` - Type annotations for
    [WorkLink](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_worklink/)
    service.
  - `boto3-stubs[workmail]` - Type annotations for
    [WorkMail](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_workmail/)
    service.
  - `boto3-stubs[workmailmessageflow]` - Type annotations for
    [WorkMailMessageFlow](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_workmailmessageflow/)
    service.
  - `boto3-stubs[workspaces]` - Type annotations for
    [WorkSpaces](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_workspaces/)
    service.
  - `boto3-stubs[workspaces-web]` - Type annotations for
    [WorkSpacesWeb](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_workspaces_web/)
    service.
  - `boto3-stubs[xray]` - Type annotations for
    [XRay](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_xray/) service.


