azdev 0.1.92__tar.gz → 0.1.94__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. {azdev-0.1.92 → azdev-0.1.94}/HISTORY.rst +8 -0
  2. {azdev-0.1.92/azdev.egg-info → azdev-0.1.94}/PKG-INFO +20 -2
  3. {azdev-0.1.92 → azdev-0.1.94}/azdev/__init__.py +1 -1
  4. {azdev-0.1.92 → azdev-0.1.94}/azdev/help.py +1 -1
  5. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/command_change/__init__.py +4 -3
  6. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/linter/linter.py +8 -3
  7. {azdev-0.1.92 → azdev-0.1.94}/azdev/params.py +2 -0
  8. {azdev-0.1.92 → azdev-0.1.94/azdev.egg-info}/PKG-INFO +20 -2
  9. {azdev-0.1.92 → azdev-0.1.94}/LICENSE +0 -0
  10. {azdev-0.1.92 → azdev-0.1.94}/MANIFEST.in +0 -0
  11. {azdev-0.1.92 → azdev-0.1.94}/README.md +0 -0
  12. {azdev-0.1.92 → azdev-0.1.94}/README.rst +0 -0
  13. {azdev-0.1.92 → azdev-0.1.94}/azdev/__main__.py +0 -0
  14. {azdev-0.1.92 → azdev-0.1.94}/azdev/commands.py +0 -0
  15. {azdev-0.1.92 → azdev-0.1.94}/azdev/completer.py +0 -0
  16. {azdev-0.1.92 → azdev-0.1.94}/azdev/config/__init__.py +0 -0
  17. {azdev-0.1.92 → azdev-0.1.94}/azdev/config/cli.flake8 +0 -0
  18. {azdev-0.1.92 → azdev-0.1.94}/azdev/config/cli_pylintrc +0 -0
  19. {azdev-0.1.92 → azdev-0.1.94}/azdev/config/ext.flake8 +0 -0
  20. {azdev-0.1.92 → azdev-0.1.94}/azdev/config/ext_pylintrc +0 -0
  21. {azdev-0.1.92 → azdev-0.1.94}/azdev/mod_templates/HISTORY.rst +0 -0
  22. {azdev-0.1.92 → azdev-0.1.94}/azdev/mod_templates/README.rst +0 -0
  23. {azdev-0.1.92 → azdev-0.1.94}/azdev/mod_templates/_client_factory.py +0 -0
  24. {azdev-0.1.92 → azdev-0.1.94}/azdev/mod_templates/_help.py +0 -0
  25. {azdev-0.1.92 → azdev-0.1.94}/azdev/mod_templates/_params.py +0 -0
  26. {azdev-0.1.92 → azdev-0.1.94}/azdev/mod_templates/_validators.py +0 -0
  27. {azdev-0.1.92 → azdev-0.1.94}/azdev/mod_templates/azext_metadata.json +0 -0
  28. {azdev-0.1.92 → azdev-0.1.94}/azdev/mod_templates/blank__init__.py +0 -0
  29. {azdev-0.1.92 → azdev-0.1.94}/azdev/mod_templates/commands.py +0 -0
  30. {azdev-0.1.92 → azdev-0.1.94}/azdev/mod_templates/custom.py +0 -0
  31. {azdev-0.1.92 → azdev-0.1.94}/azdev/mod_templates/module__init__.py +0 -0
  32. {azdev-0.1.92 → azdev-0.1.94}/azdev/mod_templates/pkg_declare__init__.py +0 -0
  33. {azdev-0.1.92 → azdev-0.1.94}/azdev/mod_templates/setup.cfg +0 -0
  34. {azdev-0.1.92 → azdev-0.1.94}/azdev/mod_templates/setup.py +0 -0
  35. {azdev-0.1.92 → azdev-0.1.94}/azdev/mod_templates/test_service_scenario.py +0 -0
  36. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/__init__.py +0 -0
  37. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/breaking_change/__init__.py +0 -0
  38. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/breaking_change/markdown_template.jinja2 +0 -0
  39. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/cmdcov/__init__.py +0 -0
  40. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/cmdcov/_macros.j2 +0 -0
  41. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/cmdcov/cmdcov.py +0 -0
  42. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/cmdcov/component.css +0 -0
  43. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/cmdcov/component.js +0 -0
  44. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/cmdcov/favicon.ico +0 -0
  45. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/cmdcov/index.j2 +0 -0
  46. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/cmdcov/index2.j2 +0 -0
  47. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/cmdcov/module.j2 +0 -0
  48. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/code_gen.py +0 -0
  49. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/command_change/custom.py +0 -0
  50. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/command_change/util.py +0 -0
  51. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/constant.py +0 -0
  52. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/extensions/__init__.py +0 -0
  53. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/extensions/util.py +0 -0
  54. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/extensions/version_upgrade.py +0 -0
  55. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/help/__init__.py +0 -0
  56. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/help/refdoc/__init__.py +0 -0
  57. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/help/refdoc/conf.py +0 -0
  58. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/legal.py +0 -0
  59. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/linter/__init__.py +0 -0
  60. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/linter/data/cmd_example_config.json +0 -0
  61. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/linter/pylint_checkers/__init__.py +0 -0
  62. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/linter/pylint_checkers/show_command.py +0 -0
  63. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/linter/rule_decorators.py +0 -0
  64. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/linter/rules/__init__.py +0 -0
  65. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/linter/rules/ci_exclusions.yml +0 -0
  66. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/linter/rules/command_coverage_rules.py +0 -0
  67. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/linter/rules/command_group_rules.py +0 -0
  68. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/linter/rules/command_rules.py +0 -0
  69. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/linter/rules/help_rules.py +0 -0
  70. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/linter/rules/linter_exclusions.yml +0 -0
  71. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/linter/rules/parameter_rules.py +0 -0
  72. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/linter/util.py +0 -0
  73. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/performance.py +0 -0
  74. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/pypi.py +0 -0
  75. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/python_sdk.py +0 -0
  76. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/regex.py +0 -0
  77. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/resource.py +0 -0
  78. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/secret.py +0 -0
  79. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/setup.py +0 -0
  80. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/statistics/__init__.py +0 -0
  81. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/statistics/util.py +0 -0
  82. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/style.py +0 -0
  83. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/testtool/__init__.py +0 -0
  84. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/testtool/incremental_strategy.py +0 -0
  85. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/testtool/profile_context.py +0 -0
  86. {azdev-0.1.92 → azdev-0.1.94}/azdev/operations/testtool/pytest_runner.py +0 -0
  87. {azdev-0.1.92 → azdev-0.1.94}/azdev/transformers.py +0 -0
  88. {azdev-0.1.92 → azdev-0.1.94}/azdev/utilities/__init__.py +0 -0
  89. {azdev-0.1.92 → azdev-0.1.94}/azdev/utilities/command.py +0 -0
  90. {azdev-0.1.92 → azdev-0.1.94}/azdev/utilities/config.py +0 -0
  91. {azdev-0.1.92 → azdev-0.1.94}/azdev/utilities/const.py +0 -0
  92. {azdev-0.1.92 → azdev-0.1.94}/azdev/utilities/display.py +0 -0
  93. {azdev-0.1.92 → azdev-0.1.94}/azdev/utilities/git_util.py +0 -0
  94. {azdev-0.1.92 → azdev-0.1.94}/azdev/utilities/path.py +0 -0
  95. {azdev-0.1.92 → azdev-0.1.94}/azdev/utilities/pypi.py +0 -0
  96. {azdev-0.1.92 → azdev-0.1.94}/azdev/utilities/testing.py +0 -0
  97. {azdev-0.1.92 → azdev-0.1.94}/azdev/utilities/tools.py +0 -0
  98. {azdev-0.1.92 → azdev-0.1.94}/azdev.egg-info/SOURCES.txt +0 -0
  99. {azdev-0.1.92 → azdev-0.1.94}/azdev.egg-info/dependency_links.txt +0 -0
  100. {azdev-0.1.92 → azdev-0.1.94}/azdev.egg-info/entry_points.txt +0 -0
  101. {azdev-0.1.92 → azdev-0.1.94}/azdev.egg-info/requires.txt +0 -0
  102. {azdev-0.1.92 → azdev-0.1.94}/azdev.egg-info/top_level.txt +0 -0
  103. {azdev-0.1.92 → azdev-0.1.94}/pyproject.toml +0 -0
  104. {azdev-0.1.92 → azdev-0.1.94}/setup.cfg +0 -0
  105. {azdev-0.1.92 → azdev-0.1.94}/setup.py +0 -0
@@ -2,6 +2,14 @@
2
2
 
3
3
  Release History
4
4
  ===============
5
+ 0.1.94
6
+ ++++++
7
+ * `azdev command-change meta-export`: Enable meta exporting for extension installed using `.whl` package by `include_whl_extensions`
8
+
9
+ 0.1.93
10
+ ++++++
11
+ * `azdev linter`: Fix `None` path for added files in `git diff` for `missing_command_example` rule
12
+
5
13
  0.1.92
6
14
  ++++++
7
15
  * `azdev linter`: Add `missing_command_example` rule
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.2
2
2
  Name: azdev
3
- Version: 0.1.92
3
+ Version: 0.1.94
4
4
  Summary: Microsoft Azure CLI Developer Tools
5
5
  Home-page: https://github.com/Azure/azure-cli-dev-tools
6
6
  Author: Microsoft Corporation
@@ -41,6 +41,16 @@ Requires-Dist: packaging
41
41
  Requires-Dist: tqdm
42
42
  Requires-Dist: wheel==0.30.0
43
43
  Requires-Dist: microsoft-security-utilities-secret-masker~=1.0.0b2
44
+ Dynamic: author
45
+ Dynamic: author-email
46
+ Dynamic: classifier
47
+ Dynamic: description
48
+ Dynamic: home-page
49
+ Dynamic: keywords
50
+ Dynamic: license
51
+ Dynamic: requires-dist
52
+ Dynamic: requires-python
53
+ Dynamic: summary
44
54
 
45
55
  Microsoft Azure CLI Dev Tools (azdev)
46
56
  =====================================
@@ -148,6 +158,14 @@ License
148
158
 
149
159
  Release History
150
160
  ===============
161
+ 0.1.94
162
+ ++++++
163
+ * `azdev command-change meta-export`: Enable meta exporting for extension installed using `.whl` package by `include_whl_extensions`
164
+
165
+ 0.1.93
166
+ ++++++
167
+ * `azdev linter`: Fix `None` path for added files in `git diff` for `missing_command_example` rule
168
+
151
169
  0.1.92
152
170
  ++++++
153
171
  * `azdev linter`: Add `missing_command_example` rule
@@ -4,4 +4,4 @@
4
4
  # license information.
5
5
  # -----------------------------------------------------------------------------
6
6
 
7
- __VERSION__ = '0.1.92'
7
+ __VERSION__ = '0.1.94'
@@ -243,7 +243,7 @@ helps['command-change meta-diff'] = """
243
243
  short-summary: Diff the command meta between provided meta files.
244
244
  examples:
245
245
  - name: Diff the command meta change from fileA to fileB
246
- text: azdev statistics meta-diff --base-meta-file fileA --diff-meta-file fileB --only-break
246
+ text: azdev command-change meta-diff --base-meta-file fileA --diff-meta-file fileB --only-break
247
247
  """
248
248
 
249
249
  helps['command-change tree-export'] = """
@@ -28,7 +28,7 @@ def diff_export_format_choices():
28
28
 
29
29
  # pylint: disable=too-many-statements
30
30
  def export_command_meta(modules=None, git_source=None, git_target=None, git_repo=None,
31
- with_help=False, with_example=False,
31
+ with_help=False, with_example=False, include_whl_extensions=False,
32
32
  meta_output_path=None):
33
33
  require_azure_cli()
34
34
 
@@ -38,7 +38,7 @@ def export_command_meta(modules=None, git_source=None, git_target=None, git_repo
38
38
  if cli_only or ext_only:
39
39
  modules = None
40
40
 
41
- selected_modules = get_path_table(include_only=modules)
41
+ selected_modules = get_path_table(include_only=modules, include_whl_extensions=include_whl_extensions)
42
42
 
43
43
  if cli_only:
44
44
  selected_modules['ext'] = {}
@@ -84,7 +84,8 @@ def export_command_meta(modules=None, git_source=None, git_target=None, git_repo
84
84
  help_info[help_item.command] = help_item
85
85
 
86
86
  # trim command table to selected_modules
87
- command_loader = filter_modules(command_loader, modules=selected_mod_names)
87
+ command_loader = filter_modules(command_loader, modules=selected_mod_names,
88
+ include_whl_extensions=include_whl_extensions)
88
89
 
89
90
  if not command_loader.command_table:
90
91
  logger.warning('No commands selected to check.')
@@ -237,12 +237,13 @@ class Linter: # pylint: disable=too-many-public-methods, too-many-instance-attr
237
237
  cmd_help = self._loaded_help.get(cmd, None)
238
238
  if not cmd_help:
239
239
  continue
240
- # parameters = cmd_help.parameters
241
- # add if future parameter set required
242
240
  cmd_suffix = cmd.split()[-1]
243
241
  cmd_example_threshold = get_cmd_example_threshold(cmd_suffix, cmd_example_config)
244
242
  if cmd_example_threshold == 0:
245
243
  continue
244
+ if not hasattr(cmd_help, "parameters") or len(cmd_help.parameters) == 0:
245
+ # skip cmd without parameters
246
+ continue
246
247
  if not hasattr(cmd_help, "examples") or len(cmd_help.examples) < cmd_example_threshold:
247
248
  violations.append(f'Command `{cmd}` should have at least {cmd_example_threshold} example(s)')
248
249
  if violations:
@@ -427,7 +428,9 @@ class Linter: # pylint: disable=too-many-public-methods, too-many-instance-attr
427
428
  modified_commands = set()
428
429
  diff_patches = diff_branch_file_patch(repo=self.git_repo, target=self.git_target, source=self.git_source)
429
430
  for change in diff_patches:
430
- file_path, filename = self._split_path(change.a_path)
431
+ if not change.b_path or not change.diff:
432
+ continue
433
+ file_path, filename = self._split_path(change.b_path)
431
434
  if "commands.py" not in filename and "aaz" not in file_path:
432
435
  continue
433
436
  current_lines = self._read_blob_lines(change.b_blob)
@@ -462,6 +465,8 @@ class Linter: # pylint: disable=too-many-public-methods, too-many-instance-attr
462
465
  return
463
466
  diff_patches = diff_branch_file_patch(repo=self.git_repo, target=self.git_target, source=self.git_source)
464
467
  for change in diff_patches:
468
+ if not change.diff:
469
+ continue
465
470
  patch = change.diff.decode("utf-8")
466
471
  added_lines = [line for line in patch.splitlines() if line.startswith('+') and not line.startswith('+++')]
467
472
  self.diffed_lines |= set(added_lines)
@@ -165,6 +165,8 @@ def load_arguments(self, _):
165
165
  c.argument('with_help', action="store_true", help="State whether to include help message")
166
166
  c.argument('with_example', action="store_true", help="State whether to include examples")
167
167
  c.argument('meta_output_path', help='command meta json file path to store')
168
+ c.argument('include_whl_extensions', action='store_true',
169
+ help="Allow running cmd loader on extensions installed by `az extension add --source xxx.whl`.")
168
170
 
169
171
  with ArgumentsContext(self, 'command-change meta-diff') as c:
170
172
  c.argument('base_meta_file', required=True, help='command meta json file')
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.2
2
2
  Name: azdev
3
- Version: 0.1.92
3
+ Version: 0.1.94
4
4
  Summary: Microsoft Azure CLI Developer Tools
5
5
  Home-page: https://github.com/Azure/azure-cli-dev-tools
6
6
  Author: Microsoft Corporation
@@ -41,6 +41,16 @@ Requires-Dist: packaging
41
41
  Requires-Dist: tqdm
42
42
  Requires-Dist: wheel==0.30.0
43
43
  Requires-Dist: microsoft-security-utilities-secret-masker~=1.0.0b2
44
+ Dynamic: author
45
+ Dynamic: author-email
46
+ Dynamic: classifier
47
+ Dynamic: description
48
+ Dynamic: home-page
49
+ Dynamic: keywords
50
+ Dynamic: license
51
+ Dynamic: requires-dist
52
+ Dynamic: requires-python
53
+ Dynamic: summary
44
54
 
45
55
  Microsoft Azure CLI Dev Tools (azdev)
46
56
  =====================================
@@ -148,6 +158,14 @@ License
148
158
 
149
159
  Release History
150
160
  ===============
161
+ 0.1.94
162
+ ++++++
163
+ * `azdev command-change meta-export`: Enable meta exporting for extension installed using `.whl` package by `include_whl_extensions`
164
+
165
+ 0.1.93
166
+ ++++++
167
+ * `azdev linter`: Fix `None` path for added files in `git diff` for `missing_command_example` rule
168
+
151
169
  0.1.92
152
170
  ++++++
153
171
  * `azdev linter`: Add `missing_command_example` rule
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes