Sounds like there are no objections, and some additional good reasons I didn't mention to use this tool. I'll make the pull request to add apache/daffodil as a repo for Scala Steward to track.
I'd recommend creating a ticket for any updates you think would be useful, such as the versioning scheme. We don't want to lose track of these kinds of ideas. On 3/4/21 2:26 PM, Interrante, John A (GE Research, US) wrote: > P.S. I've been meaning to pass along another useful Scala ecosystem article > I read recently [1]. Library writers are being asked to define a `ThisBuild > / versionScheme` setting to declare a library's semantic versioning scheme > (like Daffodil's in our case) so that sbt can issue more reliable (no false > positives) warnings about conflicts between incompatible versions of > transitive library dependencies. I think we should define this setting to > tell downstream applications which semantic versioning scheme we use for > Daffodil's version numbers. > > [1] > https://scala-lang.org/blog/2021/02/16/preventing-version-conflicts-with-versionscheme.html > > -----Original Message----- > From: Steve Lawrence <slawre...@apache.org> > Sent: Thursday, March 4, 2021 1:10 PM > To: dev@daffodil.apache.org > Subject: EXT: Scala Steward for dependency updates? > > I just stumbled across Scala Steward [1]. From their website, "Scala Steward > is a bot that helps you keep library dependencies and sbt plugins up-to-date." > > This bot periodical checks to see if there are any newer versions of > dependencies, and if detected will create a pull request to update that > dependency in the project/Dependencies.scala file. > > I've enabled it on my fork as a test, and it just created a bunch of pull > requests, so you can see what it looks like at my fork: > > https://github.com/stevedlawrence/daffodil/pulls > > The benefit here is we can rely on this bot to keep our deps updated so we > don't fall behind, and can rely on our GitHub actions to test if anything > breaks for a particular dependency. So much of the process becomes automated. > > Some parts are still manual, like checking that the license for the > dependency hasn't changed, and updating the bin.NOTICE file which mentions > library versions, so there's still some work. But it it at least automates > part of the process. > > It also has a config file if needed to do things like pin certain > dependencies to a version if needed, configure pull request messages, etc. My > fork above just uses the default configuration. > > If we do want to enable this, all we need to do is create a pull request to > add "apache/daffodil" to to scala steward repo's file--pretty simple change. > > > Thoughts? > > [1] https://github.com/scala-steward-org/scala-steward >