On Sun, Jul 09, 2017 at 07:55:22PM +0200, Boris Feld wrote:
> # HG changeset patch
> # User Boris Feld <boris.f...@octobus.net>
> # Date 1495197862 -7200
> #      Fri May 19 14:44:22 2017 +0200
> # Node ID 985d753d4f5799f2a332140adedb06efd465d62b
> # Parent  63214f4d9a766761259b650539eede424413e6a2
> # EXP-Topic obs-cache
> obsstore: pass a repository object for initialisation
>
> The cache will needs a repository object (to grab a 'vfs'), so we
> pass a repo object instead of just the 'svfs' and we grab the 'svfs'
> from there.

I suspect I'll get to it, but why does this cache want to know about
anything outside of svfs?

I'm pretty uncomfortable (architecturally) with passing all of `self`
into the cache layer.

>
> diff -r 63214f4d9a76 -r 985d753d4f57 contrib/perf.py
> --- a/contrib/perf.py Fri May 19 14:46:26 2017 +0200
> +++ b/contrib/perf.py Fri May 19 14:44:22 2017 +0200
> @@ -1391,8 +1391,7 @@
>
>      Result is the number of markers in the repo."""
>      timer, fm = gettimer(ui)
> -    svfs = getsvfs(repo)
> -    timer(lambda: len(obsolete.obsstore(svfs)))
> +    timer(lambda: len(obsolete.obsstore(repo)))
>      fm.end()
>
>  @command('perflrucachedict', formatteropts +
> diff -r 63214f4d9a76 -r 985d753d4f57 mercurial/obsolete.py
> --- a/mercurial/obsolete.py   Fri May 19 14:46:26 2017 +0200
> +++ b/mercurial/obsolete.py   Fri May 19 14:44:22 2017 +0200
> @@ -519,10 +519,10 @@
>      # 1024 byte should be about 10 markers in average
>      _obskeyspan = 1024
>
> -    def __init__(self, svfs, defaultformat=_fm1version, readonly=False):
> +    def __init__(self, repo, defaultformat=_fm1version, readonly=False):
>          # caches for various obsolescence related cache
>          self.caches = {}
> -        self.svfs = svfs
> +        self.svfs = repo.svfs
>          self._defaultformat = defaultformat
>          self._readonly = readonly
>
> @@ -799,7 +799,7 @@
>      if defaultformat is not None:
>          kwargs['defaultformat'] = defaultformat
>      readonly = not isenabled(repo, createmarkersopt)
> -    store = obsstore(repo.svfs, readonly=readonly, **kwargs)
> +    store = obsstore(repo, readonly=readonly, **kwargs)
>      if store and readonly:
>          ui.warn(_('obsolete feature not enabled but %i markers found!\n')
>                  % len(list(store)))
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel@mercurial-scm.org
> https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
_______________________________________________
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel

Reply via email to