This is valuable feedback. We’ll revisit the explanation of filename cache keys in our documentation.
Just to clarify, the
filename cache key will use the contents of a file you specify. Generally, good candidates for this will be your dependency manifest. For instance, this would be
Gemfile.lock for Ruby, and
mix.exs for Elixir.
Dependency manifests are a good to use for filename cache keys. When you change your dependencies and commit them, your next CircleCI 2.0 build will hash that file and get a different key. That different key won’t match an existing cache, so you’ll get a new set a dependencies and then cache-save that.