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
> 

Reply via email to