GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — Match CocoaPods names exactly when reading version lists by codewithfourtix · Pull Request #206 · aboutcode-org/fetchcode

Conversation

@codewithfourtix

@codewithfourtix codewithfourtix commented Sep 5, 2026

Copy link
Copy Markdown

Looking up Foo can return the versions of FooBar because the lookup only checks the name prefix. Include the field separator in the match so only the requested pod is selected.

Adds tests with an overlapping name and with no exact match.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@codewithfourtix
Match CocoaPods names exactly when reading version lists
4a8684f
Signed-off-by: Ali Zulfiqar <[email protected]>
Copilot AI lite review requested due to automatic review settings September 5, 2026 17:21
Copilot started reviewing on behalf of codewithfourtix September 5, 2026 17:22
View session
Copilot AI reviewed Sep 5, 2026
View reviewed changes

Copilot AI left a comment

Copy link
Copy Markdown

There was a problem hiding this comment.

Choose a reason for hiding this comment

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

🟡 Changes recommended

The updated “no exact match” behavior can propagate None to callers that iterate tags (e.g., CocoaPods route code), causing a runtime TypeError instead of safely yielding no results.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

This PR fixes CocoaPods version-list parsing to avoid selecting the wrong pod when one pod name is a prefix of another (e.g., Foo vs FooBar) by requiring an exact field match when scanning the versions index.

Changes:

  • Update CocoaPods version-line matching to require "{name}/" instead of a plain prefix match.
  • Add tests covering overlapping-name scenarios and the “no exact match” case.
File summaries
File Description
tests/test_cocoapods_tag_lookup.py Adds focused tests for overlapping CocoaPods names and missing exact matches.
src/fetchcode/package_util.py Tightens get_cocoapod_tags() matching to avoid prefix collisions.
Review details

Suppressed comments (1)

src/fetchcode/package_util.py:304

  • get_cocoapod_tags() can return None (no exact match or exception). The primary caller get_cocoapods_data_from_purl() iterates for tag in data_list without checking for None, so a missing pod entry will now raise TypeError: 'NoneType' object is not iterable instead of cleanly yielding no results. Consider making this helper always return a list (empty when not found / on error) and avoid the bare except: (it also catches KeyboardInterrupt/SystemExit).
            if line.startswith(name + "/"):
                data_list = line.split("/")
                if data_list[0] == name:
                    data_list.pop(0)
                return data_list
  • Files reviewed: 2/2 changed files
  • Comments generated: 1
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
Comment thread tests/test_cocoapods_tag_lookup.py
Comment on lines +11 to +13
def test_cocoapod_tags_return_none_when_only_prefix_matches(monkeypatch):
monkeypatch.setattr("fetchcode.utils.get_text_response", lambda url: "FooBar/9.0\n")
assert get_cocoapod_tags("https://example.com/versions", "Foo") is None
@codewithfourtix
Address review feedback and strengthen regression coverage
8f5c6f3
Signed-off-by: Ali Zulfiqar <[email protected]>

This branch has not been deployed

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

Reviewers

Copilot code review Copilot
Copilot review effort
Applies to this pull request for everyone.Learn more about Copilot code review.
Copilot left review comments

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

2 participants

@codewithfourtix
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.