On Wed, Jul 26, 2017 at 11:48 AM, Steve Miner <stevemi...@gmail.com> wrote:
> I’ve been using my own launch script that does something similar to the > new clj script. (I’m caching a Leiningen generated classpath.) I had some > bugs when my project directory was copied to another user or machine > because the cached classpath was not validate in the new environment, > particularly with a different Maven repository. The same kind of problem > can happen with a remotely mounted project directory. File time checks did > not necessarily protect against these relocations. > > I fixed my problem with two changes. First, I put the cache in the > PROJECT/target subdirectory so that a “lein clean” would allow the user to > recover. > This is a non-starter - we need the cache to survive a rebuild by separate build tool (also don't want to create target dir if not needed). > Second, I named my cache file with the inode of the project.clj file. If > the project is copied somewhere else, it is highly unlikely that the inode > numbers would match. The inode of the Maven repository or project deps.edn > should work with the new clj script. > Interesting, will think about that (portability issues though). > I use rlwrap, except within an Emacs shell. I suggest you test for the > presence of rlwrap as you do for java. $(type -p rlwrap) and ignore it if > it’s not found. I think Emacs is popular enough that it’s worth testing > for within your clj script ($EMACS will be defined). It would be good > enough if you provided an option to turn off rlwrap so I could wrap your > script with my own. > I've had feedback from others on rlwrap too (since it's currently missing from the installation instructions, which is just my oversight). The idea was that the installer would ensure it's installed so it can be assumed it exists. But there are surely cases where you might not want it so a jira for having a way to add more control around it would be fine. I don't want to check for $EMACS but wouldn't mind having a new env var that you could set to skip it or something like that. > I can file bugs and provide patches if you want. > > Steve Miner > stevemi...@gmail.com > > -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.