Page 1 of 2

Filtering Subfolders

Posted: Fri Sep 19, 2008 2:44 pm
by calvini
I'm going to despair of this feature: Given a Directory-Structure with many Folders where I just want to compare "folder1", "folder2\subfolder2" and "folder3\subfolder3" with any of their Subfolders, but nothing else outside these Paths - what can I do? Using something like "folder2\subfolder2\*" for filtering doesn't work :(.

Posted: Fri Sep 19, 2008 2:57 pm
by calvini
Solved it by using Sessions for each Path and combining them as a Project. But is that the way supposed for such jobs?

Posted: Mon Sep 22, 2008 5:20 am
by grigsoft
Recent version with "folder2\subfolder\*" syntax should work, but I will check this again.

Posted: Mon Sep 22, 2008 5:59 am
by grigsoft
If you have multiple folders named "folder1", "folder2" in root hierarchy, using "\folder" syntax may help. What is your problem exactly - program finds files from other folders, or skip everything?

Posted: Mon Sep 22, 2008 7:37 am
by calvini
Thank you for the answer, it's the latter one - it finds nothing. And adding a (Back)Slash infront of the Pattern results in finding nothing, too - even with only one Folder in Pattern. Where can I get the recent Version (currently using 3.4.1547)?

And if I filter by Folders - is it possible to exclude the Root Directory? It's a bit confusing if I filter by Folders and the Root Directory is parsed although it's not matched by the Filter-Pattern.

Posted: Mon Sep 22, 2008 8:03 am
by grigsoft
The version number is fine. Are you sure the problem is folder filter? When you clear it, everything works fine?
Currently there is no way to filter root content. Probably this is not right.

Posted: Mon Sep 22, 2008 9:44 am
by calvini
Without Filtering everything is compared (Option to compare only the same Folders is deactivated).

Filtering with Pattern containing only one Folder works as expected, where "folder*" and "folder\*" are identical. Root is compared too, even if not matched by pattern.

Filtering with Pattern starting with "\" (like "\foobar") compares nothing, even if "foobar" is located directly in Root of Source-Path (regardless of if Source-Path ends with "\" or not).

Filtering with Pattern containing "\" on any other Position than last (resp. last but one with "*" after it) compares nothing, regardless of having "*" in Pattern.

Happens on Win98 and WinXP. Tested with simple Pathes, no long Names, no System-Folders etc.

Surprisingly for excluding Patterns containing "\" do work (but not with "\" at first position). Even multiple "*" work. But using exactly the same Pattern, that excludes a Folder succesfully, for filtering, doesn't work.

Posted: Tue Sep 23, 2008 7:45 am
by grigsoft
How exactly your filter string looks, when using multiple folders?

Posted: Tue Sep 23, 2008 8:47 am
by calvini
There is a folder "test" in both, c:\ and d:\. On d:\ it's empty, on c:\ it contains:
dir /b /w /s wrote:C:\test\usr
C:\test\usr\home
C:\test\usr\home\home.pwd
C:\test\usr\home\bar
C:\test\usr\home\bar\bar.pwd
C:\test\usr\home\foo
C:\test\usr\home\foo\foo.pwd
Src is "c:\test", Dst is "d:\test", Filter string is "usr\home\foo*" (see Screenshot below, sorry for German translation, hope it's okay nevertheless).
Image
Result is "No files were found to synchronize!"

When just switching to "Exclude folders" (with the same Filter string), home.pwd and bar.pwd are compared (see screenshots below).
Image
Image

Using e.g. "*foo*" as Filter string leeds to exactly the same Results. However, "\usr\home\foo*" as Filter string compares nothing when used for filtering and compares all three files when used for excluding.

When I start to take Path-Components from Filter string into Src and Dst, with Src "c:\test\usr", Dst "d:\test\usr" and Filter string "home\foo*" Results are like above. With Src "c:\test\usr\home", Dst "d:\test\usr\home" and Filter string "foo*" for excluding Result is like above and for filtering foo.pwd and home.pwd are compared (home.pwd as mentioned above without being matched by Filter string).

I hope, this environment could be easy reproduced. But maybe results don't happen on every system (actually tested on WinXP Home 2002, SP3).

Posted: Wed Sep 24, 2008 11:31 am
by grigsoft
Looking at your version number again - are you sure this is 3.4? because final 3.4 had build number of 1636/ Can you update to http://www.grigsoft.com/wndsyncu.zip?

Posted: Wed Sep 24, 2008 10:03 pm
by calvini
I will try that tomorrow. Version number is shown under "help"/"about". Downloaded it some (many) days ago and didn't get information if there's a newer version - is there a possibility to get in touch with the newest version?

Posted: Thu Sep 25, 2008 6:04 am
by grigsoft
Your version must be marked as 3.4b in app title.
You can subscribe to RSS feeds on main site to get notifications of releases, or to blog rss, to be notified of all updates, including beta's. Also recently I have created google group for email notifications - http://www.grigsoft.com/maillist.htm

Posted: Thu Sep 25, 2008 7:12 am
by calvini
Jepp - Version 3.4.1640 works fine and as expected, thank you :).

The only thing is, that Root-Contents is compared even when not matched by a Filter String resp. can't be excluded from comparing - but that would be a persisting Problem, as there is no Filter String only matching the Root. Maybe it should be handled by an extra Option-Checkbox for filtering and excluding, something like "compare Root-Contents". But I think, that's a minor Problem.

I subscribed for the google group to be up to date from now on ;).

Posted: Thu Sep 25, 2008 7:43 am
by grigsoft
Yes, unfortunately I have missed this issue in original design. Now it's not a problem to change it in order to skip root when filtering is used, and explicitly add '\' entry to allow root, but this will change default behaviour. So I don't know...

Posted: Thu Sep 25, 2008 8:41 am
by calvini
With excluding there should be no problem: Currently excluding "\" doesn't work, which could be considered as bug. If someone explicitly added "\" to his exclude-patterns, he/she surely wants to exclude root from being compared and should be at most positively surprised if it works now.

With filtering there indeed is a problem, as it can't be excepted that some people rely on filtering working like it does now, comparing root even if it is not matched by pattern.

One possibility would be an option to switch on/off root-filtering by using "\" as pattern. Must be switched off by default (current behaviour). Another possibility would be, when introducing the new version, on it's first run it must add a "\" to every filter pattern (which will lead to the current behaviour).