Bloop CI sharing

Gradle supports a remote build cache.
It can be very conveniently to use night build compilation cache.

Is there any plan to add similar feature to bloop?

If it is complicated, will it be possible to add ‘bloop change dir’ command, so that it will be possible:

  • update local project from vcs
  • download .bloop directory with night build compilation
  • copy that directory to the local project
  • execute ‘bloop change dir’
  • change some files
  • execute ‘bloop compile project’, this will do incremental compilation from night build.

?

It is possible and it’s something we’ve built bloop to handle. You can follow progress on remote compilation in this scalacenter/bloop ticket. However, note that this is not a priority at the moment so it’s not currently in the roadmap.

1 Like

This ticket have been closed:

  • The message says: “any tool that wants remote compilation can implement it outside of bloop and that flexibility might be even better”

Would it be possible to make some commands which allow to implement external remote compilation much easier? For example:

How is it possible to reload analysis.bin on bloop server?
We can implement remote compilation outside of bloop.
But currently if we replace analysis files the bloop server just will not be able to see changes, We have to stop\start bloop server manually. It is very inconvenient.

Just to save time for somebody:
Thare are examples how to implement import\export analysis:
sbt.internal.inc.cached.ExportableCache#exportCache
sbt.inc.cached.ExportedCacheSpec
Note: The above implementation does not work with ivy and unmanaged libraries by default when there are files which are outside of the project directory.