homebrew-cask-versions/lib/cask/source
Roland Walker bf99c6b0a3 Store metadata with installed Casks.
Step 2: Snapshot the Cask file used at install-time, using
the previously-merged metadata directory support.

Using a simple filesystem-is-a-database approach, we set up a
`.metadata` directory for each installed Cask in which we can
record any information, starting with a copy of the Cask
definition which was used at install-time.

This should be useful for various cases such as:
- a fallback when the Cask was renamed/removed.  We
  currently cannot recover any uninstall info in that
  scenario
- installation of multiple versions of the same software

There might be a smarter way to discover the source filename
for the Cask through introspection or some deep Ruby voodoo.
All I could come up with was to pass the filename in on the
constructor, which seems perfectly reasonable if voodoo is
not available.  The existing code was taking the title as an
argument to the constructor, which is dispensable.

This PR contains no code to actually make use of the metadata,
but only takes care of the relevant book-keeping: creation,
destruction, as well as organization of metadata according to
software version number and timestamp.
2014-12-10 18:24:43 -05:00
..
gone.rb show resolved Cask source file or URI w/ --debug 2014-06-03 10:38:49 -04:00
path_base.rb Store metadata with installed Casks. 2014-12-10 18:24:43 -05:00
path_slash_optional.rb Don't prefer Cask files in the cwd 2014-06-03 10:33:19 -04:00
path_slash_required.rb Don't prefer Cask files in the cwd 2014-06-03 10:33:19 -04:00
tapped.rb remove support for title method in Casks 2014-12-05 18:41:24 -05:00
tapped_qualified.rb unify and recast "Cask name" & "title" as "token" 2014-12-01 11:00:23 -05:00
untapped_qualified.rb unify and recast "Cask name" & "title" as "token" 2014-12-01 11:00:23 -05:00
uri.rb isolate ErrorDuringExecution rescue 2014-06-03 11:39:58 -04:00