Hash collision with renames, blank files, etc.

Đang mở
#414 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức phù hợp với người mới
52/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Đình trệ
Công nghệ
python
Lĩnh vực
backend

Hướng nghiên cứu

Bắt đầu trong hasher.py và so sánh các đầu vào hash cho hai ví dụ patch được liên kết. Theo dõi cách các thao tác đổi tên và việc tạo hoặc xóa các tệp rỗng được biểu diễn, sau đó xác minh rằng tên tệp và các thao tác của chúng ảnh hưởng đến kết quả. Hoàn thành khi các diff khác nhau này không còn tạo ra các hash giống hệt nhau.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

enhancement help wanted

The hash computation algorithm does not take into account file renames or new file creations, because of which if a diff has only renames or a blank file either being created or deleted, they all end up having the same hash. At the minimum, the filenames (and the operation on it) being hashed should be added to the hasher to eliminate these conflicts.

For example, these two patches end up with the same has with hasher.py:

https://patchwork.sourceware.org/project/glibc/patch/7c1fb956621e5644de7342022e4ae599b79b5626.1613577607.git.fweimer@redhat.com/
https://patchwork.sourceware.org/project/glibc/patch/20140621021718.2A4AA2C39AB@topped-with-meat.com/

Ngôn ngữ chính
Python
Star
317
Fork
91
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của getpatchwork/patchwork

Tất cả issue của getpatchwork/patchwork

Issue tương tự

Thêm issue về Python

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.