For the record: I will push for 8.2 at the latest Q1 next year. Going for a 9.0 in Q2 instead would be manageble I think.
I'm somewhat worried that it was easy to construct a plausible test case where the the glob behaviour will break old code:
Pike v7.8 release 834 running Hilfe v3.5 (Incremental Pike Frontend)
array files = ({ "C:\foo.bat", "C:\bar.exe" }); glob("C:\*.exe", files);
(2) Result: ({ /* 1 element */ "C:\bar.exe" })
Pike v8.1 release 4 running Hilfe v3.5 (Incremental Pike Frontend)
array files = ({ "C:\foo.bat", "C:\bar.exe" }); glob("C:\*.exe", files);
(1) Result: ({ })
Handling this with deprication isn't possible in a nice way, but I do think it's a change we want to make.
How about this butt ugly gludge: Make a pike-global flag switching to the new behaviour. Depricate-warn for any use of glob in 8.2 that isn't first setting that flag or using the compatibility interface to directly specify a version. The flag could be full-hog ugly: Make it a command line switch. Or something you set in the master. Or a new builtin. :-/
I guess I'm talking about "import from Future". Ugh.