Afraid the plugin's internal. On Wed Feb 18 2015 at 2:34:32 AM Rick Moynihan <rick.moyni...@gmail.com> wrote:
> This sounds very close to what I'm looking for. > > Is this plugin opensourced or something you're using locally, as the > closest thing I can find to what you describe is lein-git-version: > > https://github.com/cvillecsteele/lein-git-version > > Which seems to follow project middleware approach you describe, but > for a different use case. > > R. > > On 18 February 2015 at 06:18, Michael Blume <blume.m...@gmail.com> wrote: > > We use a Leiningen plugin to set the version dynamically > > > > https://github.com/technomancy/leiningen/blob/master/doc/PLUGINS.md -- > if > > you skip down to "project middleware" you'll see how to create the kind > of > > plugin I'm talking about. Within the middleware function, we update the > > :version key in the project map to a version string composed of a > timestamp > > and the first few characters of the commit hash. The timestamp part is > > important because it ensures that maven/lein consider newer builds to be > > newer. > > > > As for lein-ancient, we don't really have it *do* anything, it just > prints > > its suggestions in the build output, and if you look at your build from > time > > to time, you'll see there are libraries you can upgrade. It's not a > perfect > > system, but it helps. > > > > On Tue Feb 17 2015 at 4:23:03 PM Rick Moynihan <rick.moyni...@gmail.com> > > wrote: > >> > >> Thanks for the tip, I had used lein-ancient in the past and it seems > >> to have come along a bit since then. > >> > >> How is it that you have this configured? > >> > >> Do you run lein ancient upgrade before each build that you want to > >> check its dependencies? I tried this locally and I can't find a way > >> to tell lein ancient to only try and upgrade certain libraries, rather > >> than all or nothing. > >> > >> For example I have a dependency on incanter 1.5.5 - I don't want it to > >> upgrade to 1.9.0 because it will break the build catastrophically just > >> now... I do however want to whitelist it to my library, which I'm > >> expecting to keep more current. > >> > >> R. > >> > >> On 17 February 2015 at 19:14, Michael Blume <blume.m...@gmail.com> > wrote: > >> > Related -- we run lein ancient as part of a lot of our builds so that > we > >> > can > >> > easily pick up dependencies with newer available versions. > >> > > >> > On Tue Feb 17 2015 at 11:13:44 AM Michael Blume <blume.m...@gmail.com > > > >> > wrote: > >> >> > >> >> What we do at Climate is avoid SNAPSHOT builds. Every build gets a > >> >> version > >> >> string with timestamp and git commit. If an upstream library is > >> >> changed, > >> >> it's up to downstream maintainers to update their dependency on it. > If > >> >> you > >> >> update a dependency and your build fails, you a) don't update your > >> >> dependency just yet b) complain to the library maintainer that their > >> >> new > >> >> version breaks your project. > >> >> > >> >> On Tue Feb 17 2015 at 9:51:18 AM Rick Moynihan > >> >> <rick.moyni...@gmail.com> > >> >> wrote: > >> >>> > >> >>> Hi all, > >> >>> > >> >>> At work, we use Jenkins to continuously integrate our Clojure > projects > >> >>> which are factored into both applications and a small number of > >> >>> supporting libraries; all of which use Leiningen as their project > >> >>> build tool. > >> >>> > >> >>> Leiningen builds each project, and runs its tests; and then if they > >> >>> pass it lein installs the project jar into the local ~/.m2 repo and > >> >>> triggers any dependent builds to start. The dependencies then start > >> >>> building and pick up the latest SNAPSHOT build from the ~/.m2 > >> >>> directory. > >> >>> > >> >>> This works ok; but it has a relatively major flaw, which is that > just > >> >>> because a project passes its local tests; it doesn't mean that it > >> >>> hasn't broken an upstream library. When this happens the broken > >> >>> library is left in the shared ~/.m2 directory - breaking other > builds > >> >>> and generally lying around causing havoc. > >> >>> > >> >>> Fortunately this rarely happens in practice; but it is a potential > >> >>> cause of hard to diagnose (unrepeatable build) problems - especially > >> >>> when using snapshot builds - which is what I think we want to use > for > >> >>> tracking branches until we > >> >>> > >> >>> We currently use the Jenkins leiningen plugin, but I don't think it > >> >>> supports a more sophisticated setup than this. > >> >>> > >> >>> I was wondering if anyone with experience of running robust CI > builds > >> >>> (with Jenkins) might have any ideas about to solve this in a more > >> >>> robust manner?? > >> >>> > >> >>> Many thanks, > >> >>> > >> >>> Rick > >> >>> -- > >> >>> http://twitter.com/RickMoynihan > >> >>> > >> >>> -- > >> >>> 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. > >> > > >> > -- > >> > 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. > >> > >> -- > >> 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. > > > > -- > > 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. > > -- > 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. > -- 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.