> Am 29.08.2024 um 14:46 schrieb Esteban Maringolo <emaring...@gmail.com>: > > Hi Norbert, > > Excellent news. > > What's the problem that's stopping it from working in Windows? I couldn't > find a Github issue for that.
Because you assume windows support is something we want. I personally do not care about windows because I never used it and I think it is a really bad operating system that kills lots of things. The technical view is: - soil uses file range locks to lock portions of a file (think of row-level locking in relational databases) - soil uses a system call fsync() on POSIX systems that flushes bytes from OS to disk. This is needed to meet transaction requirements The architecture view is: - I've seen the implementation of file opening with additional flags in OmniBase and how the design got really bad in order to support all of this. This might be non-issue today but needs to prove me wrong first - windows might have comparable support for the requirements above but I'm not easily convinced to ruin the design in order to support it. Might also not be true... The maintainer view is: - I won't add windows support ever and Pablo was the only one offering his help so far (why should we implement something nobody needs?) - even if there would be someone doing it initially I still need to be convinced that there is always someone maintaining it because I won't. And I surely do not want to block progress of soil just because things cannot move. They will be removed then. So there are basically two options: - windows supports the requirements (current and future ones) comparable to unix systems so that the design does not need to be changed a lot in order to support windows. Then adding support is feasible - in the meantime I made the file locking and fsync configurable. So by switching them off it might just work out of the box without any change. On a desktop machine it should(!) work reliably. Locking and range locks are mostly needed for concurrency. But noone would be insane enough to use windows as a server or in a distributed environment, haha, no that would be really foolish...hahaha But we also try to make soil the de-facto database for pharo so in the end we have no choice then to add windows support. Hope this helps, Norbert > > Regards! > > > Esteban A. Maringolo > > > On Wed, Aug 28, 2024 at 9:00 AM Norbert Hartl <norb...@hartl.name > <mailto:norb...@hartl.name>> wrote: >> We are proud to announce the availability of Soil version 2. >> >> This release is dated back to July because we made some bigger changes after >> that and all the bug fixes before that deserve a release. You can access the >> new release via >> >> <Soil.png> >> ApptiveGrid/Soil at v2 >> github.com >> <https://github.com/ApptiveGrid/Soil/tree/v2>ApptiveGrid/Soil at v2 >> <https://github.com/ApptiveGrid/Soil/tree/v2> >> github.com <https://github.com/ApptiveGrid/Soil/tree/v2> >> >> The changelog is available at >> >> >> Soil/docs/changelog.md at v2 · ApptiveGrid/Soil >> github.com >> >> <https://github.com/ApptiveGrid/Soil/blob/v2/docs/changelog.md>Soil/docs/changelog.md >> at v2 · ApptiveGrid/Soil >> <https://github.com/ApptiveGrid/Soil/blob/v2/docs/changelog.md> >> github.com <https://github.com/ApptiveGrid/Soil/blob/v2/docs/changelog.md> >> The new features need to mature a bit but we expect to have another release >> in a month or two. >> >> Enjoy, >> >> Norbert + Marcus > <Soil.png>