azr 0.3.5
CRAN release: 2026-06-26
- Added
azr_dataset(),azr_catalog(), andazr_resolve_dataset()for declaring and resolving Azure Storage datasets across environment tiers. - Added
azr_logs_client()for running KQL queries against the Azure Log Analytics REST API. - Added
ManagedIdentityCredentialfor managed identity authentication via the IMDS endpoint. - Added
azr_options(), an option registry backing the newazr.*options. - Added
azure_spark_storage_conf()for generating Spark/Hadoop storage configuration keys, with sovereign-cloud support. - Added
parse_storage_path()for splitting Azure Storage URIs, includingaz:///azure://schemes and sovereign-cloud endpoints. -
api_client$new()gained averboseargument that gates request and response logging. -
azr_graph_client()gained anendpointargument so the Microsoft Graph host is no longer hardcoded. -
api_storage_clientgained aclient_idargument, andlist_files()now pages through all results automatically. - Breaking:
get_credential_provider()’sinteractiveargument is renamed toallow_interactive, anddefault_credential_chain()now tries workload identity, managed identity, and Azure CLI ahead of interactive credentials. - The base
Credentialclass no longer aborts at construction in non-interactive sessions (deferred toget_token()), and its shared configuration checks moved to a privatevalidate_base()helper. -
AzureCLICredential’sinteractiveargument is renamed toauto_login, with login checked lazily inget_token(). -
InteractiveCredential(andAuthCodeCredential/DeviceCodeCredential) renamed itsinteractiveargument toallow_prompt. -
cached_token_credential_chain()was updated to the renamedallow_prompt/auto_loginarguments. - Internal:
ClientSecretCredential’s$validate()now delegates to the sharedvalidate_base()helper. - Internal:
RefreshTokenCredential’s$validate()now delegates to the sharedvalidate_base()helper. -
WorkloadIdentityCredentialnow performs its requiredtenant_id/client_idchecks in$validate()rather than its constructor body. -
default_azure_scope()now accepts short service names without theazure_prefix. - Internal
azure_servicesreplacesazure_storage_endpoints/azure_scopes, consolidating per-service OAuth hosts and data-plane endpoints. - Added internal
list_redact_pattern()for redacting named list entries by pattern. - Added internal
validate_required_string()anddeprecated_arg()helpers. - Added an
.onLoad()hook that registers S7 methods viaS7::methods_register(). - Added namespace imports for the S7
@operator and rlang’s:=.
azr 0.3.4
CRAN release: 2026-05-09
- Removed
set_azr_defaults()that was announced in 0.3.3 but never shipped. The correspondinggetOption()reads indefault_azure_host(),default_azure_client_id(), anddefault_azure_tenant_id()were also not implemented; use environment variables (AZURE_AUTHORITY_HOST,AZURE_CLIENT_ID,AZURE_TENANT_ID) instead. -
WorkloadIdentityCredentialnow maintains an in-object token cache. Repeated calls toget_token()return the cached token immediately without re-reading the federated token file or exchanging it, until the token expires. -
AZURE_AUTHORITY_HOSTvalues with anhttps://scheme prefix (as recommended by the Azure SDK documentation) are now handled correctly. Previously, settingAZURE_AUTHORITY_HOST=https://login.microsoftonline.comwould produce malformed token URLs (#16).
azr 0.3.3
CRAN release: 2026-05-04
- Added
set_azr_defaults()to configure package-level overrides for the authority host, client ID, and tenant ID. These take priority over environment variables indefault_azure_host(),default_azure_client_id(), anddefault_azure_tenant_id(). -
AuthCodeCredentialandDeviceCodeCredentialnow maintain an in-object token cache keyed by scope. Repeated calls toget_token()for the same scope return the cached token immediately without hitting the httr2 cache or refresh token flow.
azr 0.3.2
CRAN release: 2026-03-30
-
is_hosted_session()now detects VS Code (VSCODE_INJECTION,VSCODE_PROXY_URI) and Kubernetes (KUBERNETES_SERVICE_HOST) environments, and supports anazr.hostedoption override. - Extracted internal
try_as_data_table()helper fromdefault_response_handler().
azr 0.3.1
CRAN release: 2026-03-04
- Interactive credentials (
AuthCodeCredential,DeviceCodeCredential) now attempt silent token acquisition via refresh token before prompting the user interactively.
azr 0.3.0
CRAN release: 2026-02-17
- Added
azr_storage_clientinterface to the Azure Storage API. - Added
CachedTokenCredentialfor non-interactive sessions that reuse previously cached tokens fromAuthCodeCredentialorDeviceCodeCredentialwithout triggering a new authentication flow. - Refactored
api_client$.fetch():req_datais now split into separatequeryandbodyarguments,req_methodis renamed tomethod, aheadersargument was added, and path interpolation now usesrlang::englue()instead ofglue::glue().
azr 0.2.1
CRAN release: 2026-01-07
azr 0.2.0
CRAN release: 2025-12-04
New features
- Added
api_clientR6 class providing a base HTTP client for Azure APIs with automatic authentication, retry logic, and error handling. - Added
api_resourceandapi_servicesclasses for Azure Resource Manager interactions. - Introduced custom credentials function support in API clients for flexible authentication.
- Added response handler callbacks to customize API response processing.
Authentication improvements
- Enhanced credential chain with support for Azure CLI authentication.
- Added interactive authentication flows (Device Code and Auth Code).
- Improved client secret credential handling.
- Fixed authentication issues with auth-code flow.
Bug fixes and improvements
- Fixed credential validation to properly check function objects in
api_client. - Fixed issues with Graph client authentication and request handling.
- Improved error messages and logging throughout the package.
- Added comprehensive tests for core functionality.
- Enhanced documentation with examples and usage guides.
