Closed rasa closed 3 years ago
Thank you for your effort in bringing metastore to cygwin, but OS-dependent stuff has to be though-out for many systems before adding even one. I don't want bandaids and more #ifdef
spaghetti.
As I wrote in comment to issue #39, I want to ultimately make metastore more modular. There should be some generic POSIX module (e.g. for ownership, perms), and OS-specific ones (e.g. for xattr). Cygwin should be possibly treated as POSIX alternative (as it's kind of mixed world), similarly native Windows-dedicated module if it will ever be created (but it wouldn't use uid/gid nomenclature there, etc.). Sorry that it's not there yet, but I'm not focusing on metastore lately.
Because of what I wrote above, I have to reject your PR atm. It wouldn't be merged as-is also for other reasons. To name a few: Various changes in one commit are bad, so please try to put only one logical change in each commit. Embedding files from other project "along the way", i.e. during introducing other changes, is also bad, so please always perform such actions in commits solely dedicated to them. In future please also develop new stuff for PR in non-master branch, ideally named appropriately.
Why you even embedded strmode.h, strmode.c in the first place? (If it was done in its own commit, you could (and actually should) try to explain it in commit message.)
Would love a metastore like tool for Windows. Can you suggest other tools that store meta info w/ git that works on windows?
I attached my Windows versions (Mingw and Cygwin) of metastore to https://github.com/rasa/metastore/releases/tag/95d4e2d
I have it compiling and working in Cygwin and Mingw in https://github.com/rasa/metastore.git but since Windows doesn't really support
uid
's orgid
's, we need to tweak the code to useSID
's instead (at least for MingW, Cygwin works around this somehow).Cygwin's SID > uid mapping logic is at: https://cygwin.com/cygwin-ug-net/ntsec.html