Skip to content

Updates to Python Feature Management#64

Merged
mrm9084 merged 8 commits intomainfrom
Modernize
Mar 11, 2026
Merged

Updates to Python Feature Management#64
mrm9084 merged 8 commits intomainfrom
Modernize

Conversation

@mrm9084
Copy link
Contributor

@mrm9084 mrm9084 commented Mar 9, 2026

Description

Only makes dev/build updates, besides adding module level doc strings.

  • Add's a copilot instructions file
  • moves dev and test requirements to pyproject.toml
  • removes un-needed setup file, add associated files
  • Adds module level doc strings
  • Updates mypy to be in fully strict mode, instead of mostly strict mode (No changes required)
  • pylint updated to not ignore lack of missing module level docstrings
  • fixes build system requirements.
  • Made version value dynamic during build.

Contribution checklist:

  • The pull request does not introduce [breaking changes]
  • CHANGELOG is updated for new features, bug fixes or other significant changes.
  • I have read the contribution guidelines.
  • Pull request includes test coverage for the included changes.

General Guidelines and Best Practices

  • Title of the pull request is clear and informative.
  • There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR modernizes the project’s Python packaging and developer tooling configuration by moving requirements and build metadata into pyproject.toml, tightening static analysis settings, and aligning the codebase with lint expectations (module-level docstrings).

Changes:

  • Migrate dev/test dependency management from dev_requirements.txt / tests/requirements.txt into pyproject.toml extras and update CI installation accordingly.
  • Remove legacy packaging files (setup.py, MANIFEST.in) and switch to dynamic versioning via featuremanagement._version.VERSION.
  • Add module-level docstrings across the package and set mypy to fully strict mode.

Reviewed changes

Copilot reviewed 36 out of 36 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
tests/requirements.txt Removes standalone test requirements file (moved to extras).
setup.py Removes legacy setuptools script in favor of pyproject.toml.
pyproject.toml Centralizes tooling config, build metadata, dynamic version, and dev/test extras.
mypy.ini Switches mypy configuration to strict = True.
featuremanagement/azuremonitor/_send_telemetry.py Adds module docstring.
featuremanagement/azuremonitor/init.py Adds module docstring.
featuremanagement/aio/_featuremanager.py Adds module docstring.
featuremanagement/aio/_featurefilters.py Adds module docstring.
featuremanagement/aio/_defaultfilters.py Adds module docstring.
featuremanagement/aio/init.py Adds module docstring.
featuremanagement/_version.py Adds module docstring (supports dynamic version source).
featuremanagement/_time_window_filter/_recurrence_validator.py Adds module docstring.
featuremanagement/_time_window_filter/_recurrence_evaluator.py Adds module docstring.
featuremanagement/_time_window_filter/_models.py Adds module docstring.
featuremanagement/_time_window_filter/init.py Adds module docstring.
featuremanagement/_models/_variant_reference.py Adds module docstring.
featuremanagement/_models/_variant_assignment_reason.py Adds module docstring.
featuremanagement/_models/_variant.py Adds module docstring.
featuremanagement/_models/_telemetry.py Adds module docstring.
featuremanagement/_models/_targeting_context.py Adds module docstring.
featuremanagement/_models/_feature_flag.py Adds module docstring.
featuremanagement/_models/_feature_conditions.py Adds module docstring.
featuremanagement/_models/_evaluation_event.py Adds module docstring.
featuremanagement/_models/_constants.py Adds module docstring.
featuremanagement/_models/_allocation.py Adds module docstring.
featuremanagement/_models/init.py Adds module docstring.
featuremanagement/_featuremanagerbase.py Adds module docstring.
featuremanagement/_featuremanager.py Adds module docstring.
featuremanagement/_featurefilters.py Adds module docstring.
featuremanagement/_defaultfilters.py Adds module docstring.
featuremanagement/init.py Adds module docstring.
dev_requirements.txt Removes standalone dev requirements file (moved to extras).
cspell.config.yaml Updates ignored paths to reflect removed files / typical dirs.
MANIFEST.in Removes legacy manifest configuration.
.github/workflows/validate.yml Installs dependencies via pyproject.toml extras instead of requirements files.
.github/copilot-instructions.md Adds repo-specific contributor/Copilot guidance for tooling and conventions.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 51 out of 51 changed files in this pull request and generated 3 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@mrm9084 mrm9084 merged commit 893b5cf into main Mar 11, 2026
6 checks passed
@mrm9084 mrm9084 deleted the Modernize branch March 11, 2026 17:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants