{"id":241300,"name":"time-cache","ecosystem":"hackage","description":"Suppose you have an IO action which runs very frequently, and one of the\nthings it does is getting the current UTCTime, possibly also formatting it\ninto a String or Text. The action cares about the current minute, and doesn't\ncare about seconds or milliseconds at all. Instead of reading and formatting\nthe time many times, using this library you can keep a cache which updates\nevery minute (or other interval) and allows your application to scale without\ntime reading and formatting ever becoming a bottleneck.\n\nThere are 2 modules provided. I suggest you start with the monadic one,\nespecially for simple usage, and switch to the other one if you need\nsome custom solution.\n\nThe Data.Time.Cache module allows you to create a time caching action which\nreturns time and a formatted time string. But instead of directly reading the\ntime and running a formatter, it takes the values from a cache it\nperiodically updates.\n\nThe Control.Monad.Trans.Time module provides a convenient monadic wrapper\nfor the time cache.\n\nIf you need the time cache in multiple threads, you can create the time\ngetter once and then pass to all the threads to share.","homepage":"http://rel4tion.org/projects/time-cache","licenses":"LicenseRef-PublicDomain","normalized_licenses":["Other"],"repository_url":"","keywords_array":["library","public-domain","system","time","Propose Tags"],"namespace":null,"versions_count":1,"first_release_published_at":"2016-03-15T20:53:07.000Z","latest_release_published_at":"2016-03-15T20:53:07.000Z","latest_release_number":"0.1","last_synced_at":"2026-03-21T18:00:34.652Z","created_at":"2022-04-06T02:47:08.377Z","updated_at":"2026-03-21T18:00:34.652Z","registry_url":"https://hackage.haskell.org/package/time-cache","install_command":"cabal install time-cache","documentation_url":null,"metadata":{},"repo_metadata":{},"repo_metadata_updated_at":"2026-02-19T20:27:45.270Z","dependent_packages_count":0,"downloads":918,"downloads_period":"total","dependent_repos_count":0,"rankings":{"downloads":84.8248342233437,"dependent_repos_count":55.143477495452146,"dependent_packages_count":12.217592864268529,"stargazers_count":null,"forks_count":null,"average":50.728634861021455},"purl":"pkg:hackage/time-cache","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/hackage/time-cache","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/hackage/time-cache","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/hackage/time-cache/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/packages/time-cache/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/packages/time-cache/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/packages/time-cache/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/packages/time-cache/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/packages/time-cache/codemeta","maintainers":[{"uuid":"akrasner","login":"akrasner","name":null,"email":null,"url":null,"packages_count":28,"html_url":"https://hackage.haskell.org/user/akrasner","role":null,"created_at":"2022-11-14T20:06:07.460Z","updated_at":"2022-11-14T20:06:07.460Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/maintainers/akrasner/packages"}]}