cabal-version: 2.0 -- Initial package description 'unmtime.cabal' generated by 'cabal init'. -- For further documentation, see http://haskell.org/cabal/users-guide/ name: unmtime version: 0.1.0.0 synopsis: Restore mtimes for olden build systems description: Many build systems (e.g: make, cabal) use mtimes to decide whether to rebuild things. . This is very unfortunate in many cases, when mtimes change but content does not. . For example, "git pull --rebase" re-applies all local commits on top of the fresh upstream branch. This touches all local files mtimes even though they mostly end up the same. . `unmtime` is a utility that records the content hashes and mtimes of all files in .db/files.json (while ignoring files listed in db/blacklist.json). When it detects an mtime changed but the content hash did not, it restores the old mtime. . Running `unmtime` prior to running "cabal" or "make" can save lots of unneeded rebuilds. . Sending mtime back could confuse build systems that compare mtimes via Ord, and not Eq. So use with care. -- bug-reports: license: BSD3 license-file: LICENSE author: Eyal Lotem maintainer: eyal.lotem@gmail.com -- copyright: category: Development build-type: Simple extra-source-files: CHANGELOG.md source-repository head type: git location: https://github.com/Peaker/unmtime.git executable unmtime main-is: unmtime.hs -- other-modules: -- other-extensions: build-depends: aeson >= 1.4.4.0 , aeson-pretty >= 0.8.7 , async >= 2.2.2 , base ^>=4.12.0.0 , bytestring >= 0.10.8.2 , containers >= 0.6.0.1 , cryptohash-sha256 >= 0.11.101.0 , directory >= 1.3.3.0 , filepath >= 1.4.2.1 , hexstring >= 0.11.1 , lens >= 4.18 , pathwalk >= 0.3.1.2 , text >= 1.2.3.1 , time >= 1.8.0.2 -- hs-source-dirs: default-language: Haskell2010