Skip to content

ty: un-ignore parameter-already-assigned (1 file, 1 spot) - #15463

Closed
HasanGenis wants to merge 1 commit into
TheAlgorithms:masterfrom
HasanGenis:ty-parameter-already-assigned
Closed

HasanGenis wants to merge 1 commit into
TheAlgorithms:masterfrom
HasanGenis:ty-parameter-already-assigned

Conversation

@HasanGenis

Copy link
Copy Markdown

plt.axes(projection="3d") is typed to return the base 2D Axes, so ax.scatter's 3rd positional argument (meant as zs) was resolving against 2D Axes.scatter's s parameter and colliding with the explicit s=100 kwarg — this was the repo's only parameter-already-assigned diagnostic. Cast ax to Axes3D so ty resolves the correct (xs, ys, zs, ...) overload instead (no runtime behavior change), and un-ignore the rule in pyproject.toml now that its diagnostic count is zero repo-wide.

Part of #15187 (supersedes #15460, which I accidentally left with an unmarked checklist)

Describe your change

  • Add an algorithm?
  • Fix a bug or typo in an existing algorithm?
  • Add or change doctests?
  • Documentation change?

Checklist

  • I have read CONTRIBUTING.md.
  • This pull request is all my own work -- I have not plagiarized.
  • I know that pull requests will not be merged if they fail the automated tests.
  • This PR only changes one algorithm file. To ease review, please open separate PRs for separate algorithms.
  • All new Python files are placed inside an existing directory.
  • All filenames are in all lowercase characters with no spaces or dashes.
  • All functions and variable names follow Python naming conventions.
  • All function parameters and return values are annotated with Python type hints.
  • All functions have doctests that pass the automated testing.
  • All new algorithms include at least one URL that points to Wikipedia or another similar explanation.
  • If this pull request resolves one or more open issues, then the description above includes the issue number(s) with a closing keyword: "Fixes #ISSUE-NUMBER".

plt.axes(projection="3d") is typed to return the base 2D Axes, so
ax.scatter's 3rd positional arg (meant as zs) was resolving against 2D
Axes.scatter's `s` parameter and colliding with the explicit s=100
kwarg. Cast ax to Axes3D so ty resolves the correct (xs, ys, zs, ...)
overload instead.

Part of TheAlgorithms#15187
@algorithms-keeper algorithms-keeper Bot added awaiting reviews This PR is ready to be reviewed enhancement This PR modified some existing files labels Sep 29, 2026
@0xbdleo

0xbdleo commented Sep 29, 2026

Copy link
Copy Markdown

So much difficult to understand 😕

@@ -157,7 +159,10 @@ def plot_heterogeneity(heterogeneity, k) -> None:


def plot_kmeans(data, centroids, cluster_assignment) -> None:

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

We need type hints for data, centroids, and cluster_assignment

@algorithms-keeper algorithms-keeper Bot added awaiting changes A maintainer has requested changes to this PR and removed awaiting reviews This PR is ready to be reviewed labels Sep 29, 2026
@cclauss cclauss closed this Sep 30, 2026
@cclauss

cclauss commented Sep 30, 2026

Copy link
Copy Markdown
Member

Clearing all open pull requests to prepare for Hacktoberfest 2026 -- https://hacktoberfest.com

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

awaiting changes A maintainer has requested changes to this PR enhancement This PR modified some existing files

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants