Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
43 changes: 35 additions & 8 deletions azure-mgmt-resource/HISTORY.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,21 +3,48 @@
Release History
===============

XXXXXXXXXXXX
++++++++++++
2.0.0rc1 (2018-04-20)
+++++++++++++++++++++

**Features**
**General Breaking changes**

- All clients now support Azure profiles.
This version uses a next-generation code generator that *might* introduce breaking changes.

1.3.0rc1 (2018-XX-XX)
+++++++++++++++++++++
- Model signatures now use only keyword-argument syntax. All positional arguments must be re-written as keyword-arguments.
To keep auto-completion in most cases, models are now generated for Python 2 and Python 3. Python 3 uses the "*" syntax for keyword-only arguments.
- Enum types now use the "str" mixin (class AzureEnum(str, Enum)) to improve the behavior when unrecognized enum values are encountered.
While this is not a breaking change, the distinctions are important, and are documented here:
https://docs.python.org/3/library/enum.html#others
At a glance:

- "is" should not be used at all.
- "format" will return the string value, where "%s" string formatting will return `NameOfEnum.stringvalue`. Format syntax should be prefered.

- New Long Running Operation:

- Return type changes from `msrestazure.azure_operation.AzureOperationPoller` to `msrest.polling.LROPoller`. External API is the same.
- Return type is now **always** a `msrest.polling.LROPoller`, regardless of the optional parameters used.
- The behavior has changed when using `raw=True`. Instead of returning the initial call result as `ClientRawResponse`,
without polling, now this returns an LROPoller. After polling, the final resource will be returned as a `ClientRawResponse`.
- New `polling` parameter. The default behavior is `Polling=True` which will poll using ARM algorithm. When `Polling=False`,
the response of the initial call will be returned without polling.
- `polling` parameter accepts instances of subclasses of `msrest.polling.PollingMethod`.
- `add_done_callback` will no longer raise if called after polling is finished, but will instead execute the callback right away.

**Features**

- Add generic resources update
- Add new ApiVersion 2018-02-01:

- Add on_error_deployment
- Support MSI in generic ARM resources

- All clients now support Azure profiles.
- Add generic resources update (2017-05-10 and 2018-02-01)
- Add version to Plan
- Links/Locks/Policy/Resource/Subscription clients now supports the "profile" parameter.

**Bugfixes**

- Compatibility of the sdist with wheel 0.31.0

1.2.2 (2017-10-17)
++++++++++++++++++
Expand Down
8 changes: 4 additions & 4 deletions azure-mgmt-resource/README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ This is the Microsoft Azure Resource Management Client Library.
Azure Resource Manager (ARM) is the next generation of management APIs that
replace the old Azure Service Management (ASM).

This package has been tested with Python 2.7, 3.3, 3.4, 3.5 and 3.6.
This package has been tested with Python 2.7, 3.4, 3.5 and 3.6.

For the older Azure Service Management (ASM) libraries, see
`azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.
Expand Down Expand Up @@ -36,9 +36,9 @@ If you see azure==0.11.0 (or any version below 1.0), uninstall it first:
Usage
=====

For code examples, see `Resource Management
<https://azure-sdk-for-python.readthedocs.org/en/latest/resourcemanagement.html>`__
on readthedocs.org.
For code examples, see `Resource Management
<https://docs.microsoft.com/python/api/overview/azure/resources>`__
on docs.microsoft.com.


Provide Feedback
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,12 @@
# regenerated.
# --------------------------------------------------------------------------

from .feature_properties import FeatureProperties
from .feature_result import FeatureResult
try:
from .feature_properties_py3 import FeatureProperties
from .feature_result_py3 import FeatureResult
except (SyntaxError, ImportError):
from .feature_properties import FeatureProperties
from .feature_result import FeatureResult
from .feature_result_paged import FeatureResultPaged

__all__ = [
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,6 @@ class FeatureProperties(Model):
'state': {'key': 'state', 'type': 'str'},
}

def __init__(self, state=None):
super(FeatureProperties, self).__init__()
self.state = state
def __init__(self, **kwargs):
super(FeatureProperties, self).__init__(**kwargs)
self.state = kwargs.get('state', None)
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for
# license information.
#
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------

from msrest.serialization import Model


class FeatureProperties(Model):
"""Information about feature.

:param state: The registration state of the feature for the subscription.
:type state: str
"""

_attribute_map = {
'state': {'key': 'state', 'type': 'str'},
}

def __init__(self, *, state: str=None, **kwargs) -> None:
super(FeatureProperties, self).__init__(**kwargs)
self.state = state
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,9 @@ class FeatureResult(Model):
'type': {'key': 'type', 'type': 'str'},
}

def __init__(self, name=None, properties=None, id=None, type=None):
super(FeatureResult, self).__init__()
self.name = name
self.properties = properties
self.id = id
self.type = type
def __init__(self, **kwargs):
super(FeatureResult, self).__init__(**kwargs)
self.name = kwargs.get('name', None)
self.properties = kwargs.get('properties', None)
self.id = kwargs.get('id', None)
self.type = kwargs.get('type', None)
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for
# license information.
#
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------

from msrest.serialization import Model


class FeatureResult(Model):
"""Previewed feature information.

:param name: The name of the feature.
:type name: str
:param properties: Properties of the previewed feature.
:type properties:
~azure.mgmt.resource.features.v2015_12_01.models.FeatureProperties
:param id: The resource ID of the feature.
:type id: str
:param type: The resource type of the feature.
:type type: str
"""

_attribute_map = {
'name': {'key': 'name', 'type': 'str'},
'properties': {'key': 'properties', 'type': 'FeatureProperties'},
'id': {'key': 'id', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
}

def __init__(self, *, name: str=None, properties=None, id: str=None, type: str=None, **kwargs) -> None:
super(FeatureResult, self).__init__(**kwargs)
self.name = name
self.properties = properties
self.id = id
self.type = type
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,14 @@
# regenerated.
# --------------------------------------------------------------------------

from .resource_link_filter import ResourceLinkFilter
from .resource_link_properties import ResourceLinkProperties
from .resource_link import ResourceLink
try:
from .resource_link_filter_py3 import ResourceLinkFilter
from .resource_link_properties_py3 import ResourceLinkProperties
from .resource_link_py3 import ResourceLink
except (SyntaxError, ImportError):
from .resource_link_filter import ResourceLinkFilter
from .resource_link_properties import ResourceLinkProperties
from .resource_link import ResourceLink
from .resource_link_paged import ResourceLinkPaged
from .management_link_client_enums import (
Filter,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,6 @@
from enum import Enum


class Filter(Enum):
class Filter(str, Enum):

at_scope = "atScope()"
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,8 @@ class ResourceLink(Model):
'properties': {'key': 'properties', 'type': 'ResourceLinkProperties'},
}

def __init__(self, properties=None):
super(ResourceLink, self).__init__()
def __init__(self, **kwargs):
super(ResourceLink, self).__init__(**kwargs)
self.id = None
self.name = None
self.properties = properties
self.properties = kwargs.get('properties', None)
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,9 @@
class ResourceLinkFilter(Model):
"""Resource link filter.

:param target_id: The ID of the target resource.
All required parameters must be populated in order to send to Azure.

:param target_id: Required. The ID of the target resource.
:type target_id: str
"""

Expand All @@ -27,6 +29,6 @@ class ResourceLinkFilter(Model):
'target_id': {'key': 'targetId', 'type': 'str'},
}

def __init__(self, target_id):
super(ResourceLinkFilter, self).__init__()
self.target_id = target_id
def __init__(self, **kwargs):
super(ResourceLinkFilter, self).__init__(**kwargs)
self.target_id = kwargs.get('target_id', None)
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for
# license information.
#
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------

from msrest.serialization import Model


class ResourceLinkFilter(Model):
"""Resource link filter.

All required parameters must be populated in order to send to Azure.

:param target_id: Required. The ID of the target resource.
:type target_id: str
"""

_validation = {
'target_id': {'required': True},
}

_attribute_map = {
'target_id': {'key': 'targetId', 'type': 'str'},
}

def __init__(self, *, target_id: str, **kwargs) -> None:
super(ResourceLinkFilter, self).__init__(**kwargs)
self.target_id = target_id
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,13 @@ class ResourceLinkProperties(Model):
Variables are only populated by the server, and will be ignored when
sending a request.

All required parameters must be populated in order to send to Azure.

:ivar source_id: The fully qualified ID of the source resource in the
link.
:vartype source_id: str
:param target_id: The fully qualified ID of the target resource in the
link.
:param target_id: Required. The fully qualified ID of the target resource
in the link.
:type target_id: str
:param notes: Notes about the resource link.
:type notes: str
Expand All @@ -39,8 +41,8 @@ class ResourceLinkProperties(Model):
'notes': {'key': 'notes', 'type': 'str'},
}

def __init__(self, target_id, notes=None):
super(ResourceLinkProperties, self).__init__()
def __init__(self, **kwargs):
super(ResourceLinkProperties, self).__init__(**kwargs)
self.source_id = None
self.target_id = target_id
self.notes = notes
self.target_id = kwargs.get('target_id', None)
self.notes = kwargs.get('notes', None)
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for
# license information.
#
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------

from msrest.serialization import Model


class ResourceLinkProperties(Model):
"""The resource link properties.

Variables are only populated by the server, and will be ignored when
sending a request.

All required parameters must be populated in order to send to Azure.

:ivar source_id: The fully qualified ID of the source resource in the
link.
:vartype source_id: str
:param target_id: Required. The fully qualified ID of the target resource
in the link.
:type target_id: str
:param notes: Notes about the resource link.
:type notes: str
"""

_validation = {
'source_id': {'readonly': True},
'target_id': {'required': True},
}

_attribute_map = {
'source_id': {'key': 'sourceId', 'type': 'str'},
'target_id': {'key': 'targetId', 'type': 'str'},
'notes': {'key': 'notes', 'type': 'str'},
}

def __init__(self, *, target_id: str, notes: str=None, **kwargs) -> None:
super(ResourceLinkProperties, self).__init__(**kwargs)
self.source_id = None
self.target_id = target_id
self.notes = notes
Loading