Open theflow opened 4 years ago
Fantastic new feature! 🔥 I'm really excited about this 👍
We're using both .ruby-version
and the Gemfile
to specify the Ruby version, but we're using a relaxed definition in the Gemfile
like this:
ruby '~> 2.6.0'
The pull request to upgrade to Ruby 2.7.1 updated both the .ruby-version
and the Gemfile.lock
but didn't update the version specification in Gemfile
.
@benedikt Good catch, we only update the Gemfile if it's using a simple version requirement. I'm working on a fix. Thanks for the early testing!
Do you support the package.json
Volta pinned fields?
Changed my .node-version
by hand to the version depfu wanted to upgrade to (since I also had to adjust versions in the Dockerfiles) and depfu didn't autoclose its own PR because the version was already applied.
No biggie, just noticed. Nice feature all around! 👏
This is an incredible feature! Just tried it for the first time and was very surprised that it correctly updated our Dockerfile!
The one thing that this missed was a workflow for Github actions.
We're using Elixir with GitHub actions – it missed .github/workflows/*.yml
with the https://github.com/erlef/setup-elixir action, like this:
- name: Setup elixir
uses: erlef/setup-elixir@v1
with:
elixir-version: 1.12.1 # Define the elixir version [required]
otp-version: 24.0.2 # Define the OTP version [required]
I recognize that this is probably a tough one to support, but since you're supporting CircleCI, I thought I'd ask. If you've got the ability to add this, it'd be incredible.
this pull request https://github.com/CorySanin/ffa-tycoon/pull/13 is proposing I downgrade from the latest LTS version of node. Neat feature though.
edit: omg sorry for the thread bump 😬
Support for Dockerfile
works, bot how abut related files like Dockerfile.dev
and so on?
Also, if in package.json
I have something like "node": "~18.x",
I would like to have upgrade to "node": "~20.x"
and not "node": "^20.6.1"
. The same for all other files and engines.
What about an option to upgrade only to the latest LTS version (Node.js 18.18.0 LTS), rather to the latest available version (Node.js 20.7.0 Current)?
Our dockerfiles aren't touched bc their naming does not fit the general naming schema. Ours are
would it be feasible to add some kind of .depfurc
-file to add these files to or should the glob be extended to *Dockerfile*
?
Open Container Initiative file name is Containerfile
. Would be useful to support that as well.
Updaters are what we call the code handling a single file, like a
.ruby-version
or.circle/config.yml
. They know where to find the version and how to update it.As you can imagine this can be a bit brittle, but in most cases we're quite confident we can make it work well.
We started with a small list of files, so if you're specifying the version of your Ruby/Node.js/Elixir in a file we don't support, we want to know and quickly add support to it.
So far we support
.ruby-version
.node-version
.nvmrc
.exenv-version
.tool-versions
Gemfile
andGemfile.lock
mix.exs
package.json
.circleci/config.yml
.travis.yml
Dockerfile
docker-compose.yml
👉 Please just add a comment for any file that is missing and we'll take a look right away.