pub fn sync_compiler_versions_task(
        &self,
    ) -> impl std::future::Future<Output = anyhow::Result<()>> {
        const UPDATE_INTERVAL: Duration = Duration::from_secs(60 * 60); // 1 hour.

        let resolver = self.compiler_resolver.clone();
        let pool = self.connection_pool.clone();
        async move {
            loop {
                tracing::info!("Updating compiler versions");
                if let Err(err) = Self::sync_compiler_versions(resolver.as_ref(), &pool).await {
                    tracing::error!("Failed to sync compiler versions: {:?}", err);
                }
                tokio::time::sleep(UPDATE_INTERVAL).await;
            }
        }
    }
Returns a future that would periodically update the supported compiler versions
in the database.
core/lib/contract_verifier/src/lib.rs