Skip to content

Commit 8cef6e4

Browse files
ankanechaduo
andcommitted
Fixed equality for HalfVector with signed zeros - resolves #164
Co-authored-by: Zhuo Zhao <193034689+chaduo@users.noreply.github.com>
1 parent 1cbee1a commit 8cef6e4

4 files changed

Lines changed: 7 additions & 1 deletion

File tree

‎CHANGELOG.md‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
## 0.5.2 (unreleased)
2+
3+
- Fixed equality for `HalfVector` with signed zeros
4+
15
## 0.5.1 (2026-10-08)
26

37
- Fixed error with non-canonical SciPy sparse arrays

‎pgvector/halfvec.py‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ def __repr__(self) -> str:
3737
def __eq__(self, other: object, /) -> bool:
3838
if not isinstance(other, self.__class__):
3939
return NotImplemented
40-
return self._value == other._value
40+
return self.to_list() == other.to_list()
4141

4242
def dimensions(self) -> int:
4343
return len(self._value)

‎tests/test_half_vector.py‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ def test_equality(self) -> None:
5555
assert HalfVector([1, 2, 3]) == HalfVector([1, 2, 3])
5656
assert HalfVector([1, 2, 3]) != HalfVector([1, 2, 4])
5757
assert HalfVector([1, 2, 3]) != 1
58+
assert HalfVector([0.0]) == HalfVector([-0.0])
5859

5960
def test_dimensions(self) -> None:
6061
assert HalfVector([1, 2, 3]).dimensions() == 3

‎tests/test_vector.py‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ def test_equality(self) -> None:
5555
assert Vector([1, 2, 3]) == Vector([1, 2, 3])
5656
assert Vector([1, 2, 3]) != Vector([1, 2, 4])
5757
assert Vector([1, 2, 3]) != 1
58+
assert Vector([0.0]) == Vector([-0.0])
5859

5960
def test_dimensions(self) -> None:
6061
assert Vector([1, 2, 3]).dimensions() == 3

0 commit comments

Comments
 (0)