Most web applications use a database to persist state.
Since the database is separate from the application and changes cannot be made to both simultaneously, there are various strategies for keeping them in sync.

If you’ve ever created a new Rails app and then ran bundle install on a Unix-like system, you’ve probably seen this warning:

The dependency tzinfo-data (>= 0) will be unused by any of the platforms Bundler is installing for. Bundler is installing for ruby but the dependency is only for x86-mingw32, x86-mswin32, x64-mingw32, java. To add those platforms to the bundle, run bundle lock –add-platform mingw, mswin, x64_mingw, jruby.