Daniel Mendler <[email protected]> writes: > Ihor Radchenko <[email protected]> writes: >> Morgan's patch only removes packages on make cleanall. > > It seems that Morgan invokes "make cleanall" too often, while "make > clean" would do, leaving him in a state where dependencies need to be > fetched again, breaking "offline mode"?
How did you infer that he uses make cleanall too often? The question of offline mode has little to do with what we are used or not used to do. It is about forcing people to download code from online resources they do not expect. >>> ... If you >>> also want to protect against "git clean" you could install the >>> dependencies outside the repository, e.g., in $XDG_CACHE_HOME/org-dev-deps/. >> >> That's a bad idea that can backfire if users need self-contained >> installation. >> I would personally be frustrated if git clean -xfd did not put the >> repository into truly clean state. > > Sure, but you cannot have both. Either "make cleanall" removes > everything but then you're left without dependencies (no offline mode), > or you preserve offline mode but then you cannot remove everything. > Vendoring is a third option, but it comes but it comes with the inherent > vendoring risks, which had been discussed (Distributions unintentionally > packaging the vendored code, Package managers accidentally installing > the vendored code, ...). > > So which alternative do you want? What is the preference? > > 1. Offline mode, compromising on cleaning. > 2. Clean repository, compromising on offline mode. > 3. Vendoring, accepting the vendoring risks. I still want to hear from Morgan. My tentative thinking is that we can ship compat in a separate folder as a submodule + have a make target to upgrade it. -- Ihor Radchenko // yantar92, Org mode maintainer, Learn more about Org mode at <https://orgmode.org/>. Support Org development at <https://liberapay.com/org-mode>, or support my work at <https://liberapay.com/yantar92>
