Skip to content

Commit f04a219

Browse files
claudespoorcc
authored andcommitted
Clarify _is_already_pinned: two explicit cases, no None==None revision match
Tag path: return tag equality directly. Revision path: return False if either revision is absent so that two unset revisions are never treated as pinned; otherwise require equality and revision_is_enough(). https://claude.ai/code/session_01Doq8oQtBRH4afusvp9Dv4p
1 parent 2a97d06 commit f04a219

1 file changed

Lines changed: 5 additions & 4 deletions

File tree

dfetch/project/subproject.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -463,10 +463,11 @@ def _is_already_pinned(
463463
self, project: ProjectEntry, on_disk_version: Version
464464
) -> bool:
465465
"""Return True if *project* is already pinned to *on_disk_version*."""
466-
if project.version.tag and project.version.tag == on_disk_version.tag:
467-
return True
466+
if project.version.tag:
467+
return project.version.tag == on_disk_version.tag
468+
if not project.version.revision or not on_disk_version.revision:
469+
return False
468470
return (
469-
project.version.tag == on_disk_version.tag
470-
and project.version.revision == on_disk_version.revision
471+
project.version.revision == on_disk_version.revision
471472
and self.revision_is_enough()
472473
)

0 commit comments

Comments
 (0)