vmware / vmware/pyvmomi

pyVmomi should never extend base or core types

Open
#69 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug help wanted high priority
Dominant language
Python
Stars
2.3k
Forks
763
PR merge metrics
No merged PRs in 30d

Description

This VmomiSupport.py#L179 is considered extremely bad form in the Python community. Extension of core types ties the code to interpreter internals that may not be intended for exposure. This is akin to using a hidden API and should be avoided or at least isolated so that potential damage is easier to control.

Rewrite the code so that the class Link is not needed anymore or so that Link can operate without directly extending a core type.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading VmomiSupport.py around line 179 and inspect how the Link class is used throughout the project. Determine whether Link can be removed or operate without extending a core type; done means the unwanted inheritance is gone while the existing Link behavior remains available.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
backend-api-design
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.