View Issue Details

IDProjectCategoryView StatusLast Update
0000366VisualDifferGeneralpublic2023-12-10 19:06
Reportertkmantis Assigned Toadmin  
PrioritynormalSeverityfeatureReproducibilityN/A
Status assignedResolutionopen 
Product Version1.8.7 
Summary0000366: Add feature to compare all extended attributes
DescriptionCan you please enable Visual Differ to detect differences in extended attributes of both files and folders that go beyond the "Check Resource Forks" option which I assume only checks for com.apple.ResourceFork?

Maybe an option "Check all xattr" could be added next to the "Check Resource Forks" option that compare sizes, existence, and content (if content option is also selected) of all types of extended attributes.
TagsNo tags attached.

Activities

tkmantis

2023-12-06 20:42

reporter   ~0000761

Since you are dealing with extended attributes on another bug fix, do you think this feature could become a possibility? Thanks.

admin

2023-12-07 07:20

administrator   ~0000763

adding xattrs comparison requires a huge amount of work so for now this feature is not planned

tkmantis

2023-12-10 19:06

reporter   ~0000764

I have some thoughts on how the xattr comparision could work, UI-wise....

You could add a checkbox below "Check Resource Forks" called "Check all Extended Attributes". If a user clicks this and "Check Resource Forks" is not already checked, it would become checked as well because the resoure fork is a type of extended attribute. (Or alternatively, to compare with "Check all Extended Attributes" checked and "Check Resource Forks" unchecked might mean to check all the other extended attributes and to skip the resource fork.)

Once a user checks "Check all Extended Attributes", it would have the following effects:

1) If the main comparison method includes "size", the sizes and existence of the data, resource fork, and each of the other extended attributes would be compared (I will consider each of these to be forks in the remainder of this description). If there is a size discrecpancy in any fork between two files being compared, then the file has a size discrepency. If one file has a particular fork that is missing in the other, that would be regarded as a size discrepancy as well. (I would probably also consider a situation where if one file has a particular fork of zero size, and the other file does not have that same fork at all also to be a size discrepancy, like zero and null being regarded as different values).

2) If the main comparison method includes "content", the content of each file fork would be compared bit-for-bit and a discrepancy in any fork would deem the files different.

3) For comparision of folders themselves, at the folder level, 1) and 2) would be applied to the extended attributes attached directly to the folder, as there will be no data or resource forks. (You have already dealt with the need to perform comparisons of folders themselves on the prior Finder Tag/Label fix where the Tag/Label was on the folder itself.)

4) The color to indicate difference in extended attributes could be the same color you already use if a discrepancy is found in the resource fork with "Check Resource Forks".

Finally, you might add a new kind of filter similar to "File Filters" where particular extended attribute types can be listed to be ignored. By default, "com.apple.quarantine" would be in this list, which would mean that the presence/absence/size/content discrepancies in this extended attribute would be ignored.

Issue History

Date Modified Username Field Change
2023-11-26 20:19 tkmantis New Issue
2023-11-26 20:19 tkmantis Status new => assigned
2023-11-26 20:19 tkmantis Assigned To => admin
2023-12-06 20:42 tkmantis Note Added: 0000761
2023-12-07 07:20 admin Note Added: 0000763
2023-12-10 19:06 tkmantis Note Added: 0000764