Show More
@@ -1752,15 +1752,19 class ilocalrepositorymain(Protocol): | |||||
1752 | filecopiesmode: Any # TODO: add type hints |
|
1752 | filecopiesmode: Any # TODO: add type hints | |
1753 | """The way files copies should be dealt with in this repo.""" |
|
1753 | """The way files copies should be dealt with in this repo.""" | |
1754 |
|
1754 | |||
|
1755 | @abc.abstractmethod | |||
1755 | def close(self): |
|
1756 | def close(self): | |
1756 | """Close the handle on this repository.""" |
|
1757 | """Close the handle on this repository.""" | |
1757 |
|
1758 | |||
|
1759 | @abc.abstractmethod | |||
1758 | def peer(self, path=None): |
|
1760 | def peer(self, path=None): | |
1759 | """Obtain an object conforming to the ``peer`` interface.""" |
|
1761 | """Obtain an object conforming to the ``peer`` interface.""" | |
1760 |
|
1762 | |||
|
1763 | @abc.abstractmethod | |||
1761 | def unfiltered(self): |
|
1764 | def unfiltered(self): | |
1762 | """Obtain an unfiltered/raw view of this repo.""" |
|
1765 | """Obtain an unfiltered/raw view of this repo.""" | |
1763 |
|
1766 | |||
|
1767 | @abc.abstractmethod | |||
1764 | def filtered(self, name, visibilityexceptions=None): |
|
1768 | def filtered(self, name, visibilityexceptions=None): | |
1765 | """Obtain a named view of this repository.""" |
|
1769 | """Obtain a named view of this repository.""" | |
1766 |
|
1770 | |||
@@ -1782,72 +1786,92 class ilocalrepositorymain(Protocol): | |||||
1782 | narrowpats: Any # TODO: add type hints |
|
1786 | narrowpats: Any # TODO: add type hints | |
1783 | """Matcher patterns for this repository's narrowspec.""" |
|
1787 | """Matcher patterns for this repository's narrowspec.""" | |
1784 |
|
1788 | |||
|
1789 | @abc.abstractmethod | |||
1785 | def narrowmatch(self, match=None, includeexact=False): |
|
1790 | def narrowmatch(self, match=None, includeexact=False): | |
1786 | """Obtain a matcher for the narrowspec.""" |
|
1791 | """Obtain a matcher for the narrowspec.""" | |
1787 |
|
1792 | |||
|
1793 | @abc.abstractmethod | |||
1788 | def setnarrowpats(self, newincludes, newexcludes): |
|
1794 | def setnarrowpats(self, newincludes, newexcludes): | |
1789 | """Define the narrowspec for this repository.""" |
|
1795 | """Define the narrowspec for this repository.""" | |
1790 |
|
1796 | |||
|
1797 | @abc.abstractmethod | |||
1791 | def __getitem__(self, changeid): |
|
1798 | def __getitem__(self, changeid): | |
1792 | """Try to resolve a changectx.""" |
|
1799 | """Try to resolve a changectx.""" | |
1793 |
|
1800 | |||
|
1801 | @abc.abstractmethod | |||
1794 | def __contains__(self, changeid): |
|
1802 | def __contains__(self, changeid): | |
1795 | """Whether a changeset exists.""" |
|
1803 | """Whether a changeset exists.""" | |
1796 |
|
1804 | |||
|
1805 | @abc.abstractmethod | |||
1797 | def __nonzero__(self): |
|
1806 | def __nonzero__(self): | |
1798 | """Always returns True.""" |
|
1807 | """Always returns True.""" | |
1799 | return True |
|
1808 | return True | |
1800 |
|
1809 | |||
1801 | __bool__ = __nonzero__ |
|
1810 | __bool__ = __nonzero__ | |
1802 |
|
1811 | |||
|
1812 | @abc.abstractmethod | |||
1803 | def __len__(self): |
|
1813 | def __len__(self): | |
1804 | """Returns the number of changesets in the repo.""" |
|
1814 | """Returns the number of changesets in the repo.""" | |
1805 |
|
1815 | |||
|
1816 | @abc.abstractmethod | |||
1806 | def __iter__(self): |
|
1817 | def __iter__(self): | |
1807 | """Iterate over revisions in the changelog.""" |
|
1818 | """Iterate over revisions in the changelog.""" | |
1808 |
|
1819 | |||
|
1820 | @abc.abstractmethod | |||
1809 | def revs(self, expr, *args): |
|
1821 | def revs(self, expr, *args): | |
1810 | """Evaluate a revset. |
|
1822 | """Evaluate a revset. | |
1811 |
|
1823 | |||
1812 | Emits revisions. |
|
1824 | Emits revisions. | |
1813 | """ |
|
1825 | """ | |
1814 |
|
1826 | |||
|
1827 | @abc.abstractmethod | |||
1815 | def set(self, expr, *args): |
|
1828 | def set(self, expr, *args): | |
1816 | """Evaluate a revset. |
|
1829 | """Evaluate a revset. | |
1817 |
|
1830 | |||
1818 | Emits changectx instances. |
|
1831 | Emits changectx instances. | |
1819 | """ |
|
1832 | """ | |
1820 |
|
1833 | |||
|
1834 | @abc.abstractmethod | |||
1821 | def anyrevs(self, specs, user=False, localalias=None): |
|
1835 | def anyrevs(self, specs, user=False, localalias=None): | |
1822 | """Find revisions matching one of the given revsets.""" |
|
1836 | """Find revisions matching one of the given revsets.""" | |
1823 |
|
1837 | |||
|
1838 | @abc.abstractmethod | |||
1824 | def url(self): |
|
1839 | def url(self): | |
1825 | """Returns a string representing the location of this repo.""" |
|
1840 | """Returns a string representing the location of this repo.""" | |
1826 |
|
1841 | |||
|
1842 | @abc.abstractmethod | |||
1827 | def hook(self, name, throw=False, **args): |
|
1843 | def hook(self, name, throw=False, **args): | |
1828 | """Call a hook.""" |
|
1844 | """Call a hook.""" | |
1829 |
|
1845 | |||
|
1846 | @abc.abstractmethod | |||
1830 | def tags(self): |
|
1847 | def tags(self): | |
1831 | """Return a mapping of tag to node.""" |
|
1848 | """Return a mapping of tag to node.""" | |
1832 |
|
1849 | |||
|
1850 | @abc.abstractmethod | |||
1833 | def tagtype(self, tagname): |
|
1851 | def tagtype(self, tagname): | |
1834 | """Return the type of a given tag.""" |
|
1852 | """Return the type of a given tag.""" | |
1835 |
|
1853 | |||
|
1854 | @abc.abstractmethod | |||
1836 | def tagslist(self): |
|
1855 | def tagslist(self): | |
1837 | """Return a list of tags ordered by revision.""" |
|
1856 | """Return a list of tags ordered by revision.""" | |
1838 |
|
1857 | |||
|
1858 | @abc.abstractmethod | |||
1839 | def nodetags(self, node): |
|
1859 | def nodetags(self, node): | |
1840 | """Return the tags associated with a node.""" |
|
1860 | """Return the tags associated with a node.""" | |
1841 |
|
1861 | |||
|
1862 | @abc.abstractmethod | |||
1842 | def nodebookmarks(self, node): |
|
1863 | def nodebookmarks(self, node): | |
1843 | """Return the list of bookmarks pointing to the specified node.""" |
|
1864 | """Return the list of bookmarks pointing to the specified node.""" | |
1844 |
|
1865 | |||
|
1866 | @abc.abstractmethod | |||
1845 | def branchmap(self): |
|
1867 | def branchmap(self): | |
1846 | """Return a mapping of branch to heads in that branch.""" |
|
1868 | """Return a mapping of branch to heads in that branch.""" | |
1847 |
|
1869 | |||
|
1870 | @abc.abstractmethod | |||
1848 | def revbranchcache(self): |
|
1871 | def revbranchcache(self): | |
1849 | pass |
|
1872 | pass | |
1850 |
|
1873 | |||
|
1874 | @abc.abstractmethod | |||
1851 | def register_changeset(self, rev, changelogrevision): |
|
1875 | def register_changeset(self, rev, changelogrevision): | |
1852 | """Extension point for caches for new nodes. |
|
1876 | """Extension point for caches for new nodes. | |
1853 |
|
1877 | |||
@@ -1856,112 +1880,146 class ilocalrepositorymain(Protocol): | |||||
1856 | cache would be fragile when other revisions are accessed, too.""" |
|
1880 | cache would be fragile when other revisions are accessed, too.""" | |
1857 | pass |
|
1881 | pass | |
1858 |
|
1882 | |||
|
1883 | @abc.abstractmethod | |||
1859 | def branchtip(self, branchtip, ignoremissing=False): |
|
1884 | def branchtip(self, branchtip, ignoremissing=False): | |
1860 | """Return the tip node for a given branch.""" |
|
1885 | """Return the tip node for a given branch.""" | |
1861 |
|
1886 | |||
|
1887 | @abc.abstractmethod | |||
1862 | def lookup(self, key): |
|
1888 | def lookup(self, key): | |
1863 | """Resolve the node for a revision.""" |
|
1889 | """Resolve the node for a revision.""" | |
1864 |
|
1890 | |||
|
1891 | @abc.abstractmethod | |||
1865 | def lookupbranch(self, key): |
|
1892 | def lookupbranch(self, key): | |
1866 | """Look up the branch name of the given revision or branch name.""" |
|
1893 | """Look up the branch name of the given revision or branch name.""" | |
1867 |
|
1894 | |||
|
1895 | @abc.abstractmethod | |||
1868 | def known(self, nodes): |
|
1896 | def known(self, nodes): | |
1869 | """Determine whether a series of nodes is known. |
|
1897 | """Determine whether a series of nodes is known. | |
1870 |
|
1898 | |||
1871 | Returns a list of bools. |
|
1899 | Returns a list of bools. | |
1872 | """ |
|
1900 | """ | |
1873 |
|
1901 | |||
|
1902 | @abc.abstractmethod | |||
1874 | def local(self): |
|
1903 | def local(self): | |
1875 | """Whether the repository is local.""" |
|
1904 | """Whether the repository is local.""" | |
1876 | return True |
|
1905 | return True | |
1877 |
|
1906 | |||
|
1907 | @abc.abstractmethod | |||
1878 | def publishing(self): |
|
1908 | def publishing(self): | |
1879 | """Whether the repository is a publishing repository.""" |
|
1909 | """Whether the repository is a publishing repository.""" | |
1880 |
|
1910 | |||
|
1911 | @abc.abstractmethod | |||
1881 | def cancopy(self): |
|
1912 | def cancopy(self): | |
1882 | pass |
|
1913 | pass | |
1883 |
|
1914 | |||
|
1915 | @abc.abstractmethod | |||
1884 | def shared(self): |
|
1916 | def shared(self): | |
1885 | """The type of shared repository or None.""" |
|
1917 | """The type of shared repository or None.""" | |
1886 |
|
1918 | |||
|
1919 | @abc.abstractmethod | |||
1887 | def wjoin(self, f, *insidef): |
|
1920 | def wjoin(self, f, *insidef): | |
1888 | """Calls self.vfs.reljoin(self.root, f, *insidef)""" |
|
1921 | """Calls self.vfs.reljoin(self.root, f, *insidef)""" | |
1889 |
|
1922 | |||
|
1923 | @abc.abstractmethod | |||
1890 | def setparents(self, p1, p2): |
|
1924 | def setparents(self, p1, p2): | |
1891 | """Set the parent nodes of the working directory.""" |
|
1925 | """Set the parent nodes of the working directory.""" | |
1892 |
|
1926 | |||
|
1927 | @abc.abstractmethod | |||
1893 | def filectx(self, path, changeid=None, fileid=None): |
|
1928 | def filectx(self, path, changeid=None, fileid=None): | |
1894 | """Obtain a filectx for the given file revision.""" |
|
1929 | """Obtain a filectx for the given file revision.""" | |
1895 |
|
1930 | |||
|
1931 | @abc.abstractmethod | |||
1896 | def getcwd(self): |
|
1932 | def getcwd(self): | |
1897 | """Obtain the current working directory from the dirstate.""" |
|
1933 | """Obtain the current working directory from the dirstate.""" | |
1898 |
|
1934 | |||
|
1935 | @abc.abstractmethod | |||
1899 | def pathto(self, f, cwd=None): |
|
1936 | def pathto(self, f, cwd=None): | |
1900 | """Obtain the relative path to a file.""" |
|
1937 | """Obtain the relative path to a file.""" | |
1901 |
|
1938 | |||
|
1939 | @abc.abstractmethod | |||
1902 | def adddatafilter(self, name, fltr): |
|
1940 | def adddatafilter(self, name, fltr): | |
1903 | pass |
|
1941 | pass | |
1904 |
|
1942 | |||
|
1943 | @abc.abstractmethod | |||
1905 | def wread(self, filename): |
|
1944 | def wread(self, filename): | |
1906 | """Read a file from wvfs, using data filters.""" |
|
1945 | """Read a file from wvfs, using data filters.""" | |
1907 |
|
1946 | |||
|
1947 | @abc.abstractmethod | |||
1908 | def wwrite(self, filename, data, flags, backgroundclose=False, **kwargs): |
|
1948 | def wwrite(self, filename, data, flags, backgroundclose=False, **kwargs): | |
1909 | """Write data to a file in the wvfs, using data filters.""" |
|
1949 | """Write data to a file in the wvfs, using data filters.""" | |
1910 |
|
1950 | |||
|
1951 | @abc.abstractmethod | |||
1911 | def wwritedata(self, filename, data): |
|
1952 | def wwritedata(self, filename, data): | |
1912 | """Resolve data for writing to the wvfs, using data filters.""" |
|
1953 | """Resolve data for writing to the wvfs, using data filters.""" | |
1913 |
|
1954 | |||
|
1955 | @abc.abstractmethod | |||
1914 | def currenttransaction(self): |
|
1956 | def currenttransaction(self): | |
1915 | """Obtain the current transaction instance or None.""" |
|
1957 | """Obtain the current transaction instance or None.""" | |
1916 |
|
1958 | |||
|
1959 | @abc.abstractmethod | |||
1917 | def transaction(self, desc, report=None): |
|
1960 | def transaction(self, desc, report=None): | |
1918 | """Open a new transaction to write to the repository.""" |
|
1961 | """Open a new transaction to write to the repository.""" | |
1919 |
|
1962 | |||
|
1963 | @abc.abstractmethod | |||
1920 | def undofiles(self): |
|
1964 | def undofiles(self): | |
1921 | """Returns a list of (vfs, path) for files to undo transactions.""" |
|
1965 | """Returns a list of (vfs, path) for files to undo transactions.""" | |
1922 |
|
1966 | |||
|
1967 | @abc.abstractmethod | |||
1923 | def recover(self): |
|
1968 | def recover(self): | |
1924 | """Roll back an interrupted transaction.""" |
|
1969 | """Roll back an interrupted transaction.""" | |
1925 |
|
1970 | |||
|
1971 | @abc.abstractmethod | |||
1926 | def rollback(self, dryrun=False, force=False): |
|
1972 | def rollback(self, dryrun=False, force=False): | |
1927 | """Undo the last transaction. |
|
1973 | """Undo the last transaction. | |
1928 |
|
1974 | |||
1929 | DANGEROUS. |
|
1975 | DANGEROUS. | |
1930 | """ |
|
1976 | """ | |
1931 |
|
1977 | |||
|
1978 | @abc.abstractmethod | |||
1932 | def updatecaches(self, tr=None, full=False, caches=None): |
|
1979 | def updatecaches(self, tr=None, full=False, caches=None): | |
1933 | """Warm repo caches.""" |
|
1980 | """Warm repo caches.""" | |
1934 |
|
1981 | |||
|
1982 | @abc.abstractmethod | |||
1935 | def invalidatecaches(self): |
|
1983 | def invalidatecaches(self): | |
1936 | """Invalidate cached data due to the repository mutating.""" |
|
1984 | """Invalidate cached data due to the repository mutating.""" | |
1937 |
|
1985 | |||
|
1986 | @abc.abstractmethod | |||
1938 | def invalidatevolatilesets(self): |
|
1987 | def invalidatevolatilesets(self): | |
1939 | pass |
|
1988 | pass | |
1940 |
|
1989 | |||
|
1990 | @abc.abstractmethod | |||
1941 | def invalidatedirstate(self): |
|
1991 | def invalidatedirstate(self): | |
1942 | """Invalidate the dirstate.""" |
|
1992 | """Invalidate the dirstate.""" | |
1943 |
|
1993 | |||
|
1994 | @abc.abstractmethod | |||
1944 | def invalidate(self, clearfilecache=False): |
|
1995 | def invalidate(self, clearfilecache=False): | |
1945 | pass |
|
1996 | pass | |
1946 |
|
1997 | |||
|
1998 | @abc.abstractmethod | |||
1947 | def invalidateall(self): |
|
1999 | def invalidateall(self): | |
1948 | pass |
|
2000 | pass | |
1949 |
|
2001 | |||
|
2002 | @abc.abstractmethod | |||
1950 | def lock(self, wait=True): |
|
2003 | def lock(self, wait=True): | |
1951 | """Lock the repository store and return a lock instance.""" |
|
2004 | """Lock the repository store and return a lock instance.""" | |
1952 |
|
2005 | |||
|
2006 | @abc.abstractmethod | |||
1953 | def currentlock(self): |
|
2007 | def currentlock(self): | |
1954 | """Return the lock if it's held or None.""" |
|
2008 | """Return the lock if it's held or None.""" | |
1955 |
|
2009 | |||
|
2010 | @abc.abstractmethod | |||
1956 | def wlock(self, wait=True): |
|
2011 | def wlock(self, wait=True): | |
1957 | """Lock the non-store parts of the repository.""" |
|
2012 | """Lock the non-store parts of the repository.""" | |
1958 |
|
2013 | |||
|
2014 | @abc.abstractmethod | |||
1959 | def currentwlock(self): |
|
2015 | def currentwlock(self): | |
1960 | """Return the wlock if it's held or None.""" |
|
2016 | """Return the wlock if it's held or None.""" | |
1961 |
|
2017 | |||
|
2018 | @abc.abstractmethod | |||
1962 | def checkcommitpatterns(self, wctx, match, status, fail): |
|
2019 | def checkcommitpatterns(self, wctx, match, status, fail): | |
1963 | pass |
|
2020 | pass | |
1964 |
|
2021 | |||
|
2022 | @abc.abstractmethod | |||
1965 | def commit( |
|
2023 | def commit( | |
1966 | self, |
|
2024 | self, | |
1967 | text=b'', |
|
2025 | text=b'', | |
@@ -1974,15 +2032,19 class ilocalrepositorymain(Protocol): | |||||
1974 | ): |
|
2032 | ): | |
1975 | """Add a new revision to the repository.""" |
|
2033 | """Add a new revision to the repository.""" | |
1976 |
|
2034 | |||
|
2035 | @abc.abstractmethod | |||
1977 | def commitctx(self, ctx, error=False, origctx=None): |
|
2036 | def commitctx(self, ctx, error=False, origctx=None): | |
1978 | """Commit a commitctx instance to the repository.""" |
|
2037 | """Commit a commitctx instance to the repository.""" | |
1979 |
|
2038 | |||
|
2039 | @abc.abstractmethod | |||
1980 | def destroying(self): |
|
2040 | def destroying(self): | |
1981 | """Inform the repository that nodes are about to be destroyed.""" |
|
2041 | """Inform the repository that nodes are about to be destroyed.""" | |
1982 |
|
2042 | |||
|
2043 | @abc.abstractmethod | |||
1983 | def destroyed(self): |
|
2044 | def destroyed(self): | |
1984 | """Inform the repository that nodes have been destroyed.""" |
|
2045 | """Inform the repository that nodes have been destroyed.""" | |
1985 |
|
2046 | |||
|
2047 | @abc.abstractmethod | |||
1986 | def status( |
|
2048 | def status( | |
1987 | self, |
|
2049 | self, | |
1988 | node1=b'.', |
|
2050 | node1=b'.', | |
@@ -1995,50 +2057,64 class ilocalrepositorymain(Protocol): | |||||
1995 | ): |
|
2057 | ): | |
1996 | """Convenience method to call repo[x].status().""" |
|
2058 | """Convenience method to call repo[x].status().""" | |
1997 |
|
2059 | |||
|
2060 | @abc.abstractmethod | |||
1998 | def addpostdsstatus(self, ps): |
|
2061 | def addpostdsstatus(self, ps): | |
1999 | pass |
|
2062 | pass | |
2000 |
|
2063 | |||
|
2064 | @abc.abstractmethod | |||
2001 | def postdsstatus(self): |
|
2065 | def postdsstatus(self): | |
2002 | pass |
|
2066 | pass | |
2003 |
|
2067 | |||
|
2068 | @abc.abstractmethod | |||
2004 | def clearpostdsstatus(self): |
|
2069 | def clearpostdsstatus(self): | |
2005 | pass |
|
2070 | pass | |
2006 |
|
2071 | |||
|
2072 | @abc.abstractmethod | |||
2007 | def heads(self, start=None): |
|
2073 | def heads(self, start=None): | |
2008 | """Obtain list of nodes that are DAG heads.""" |
|
2074 | """Obtain list of nodes that are DAG heads.""" | |
2009 |
|
2075 | |||
|
2076 | @abc.abstractmethod | |||
2010 | def branchheads(self, branch=None, start=None, closed=False): |
|
2077 | def branchheads(self, branch=None, start=None, closed=False): | |
2011 | pass |
|
2078 | pass | |
2012 |
|
2079 | |||
|
2080 | @abc.abstractmethod | |||
2013 | def branches(self, nodes): |
|
2081 | def branches(self, nodes): | |
2014 | pass |
|
2082 | pass | |
2015 |
|
2083 | |||
|
2084 | @abc.abstractmethod | |||
2016 | def between(self, pairs): |
|
2085 | def between(self, pairs): | |
2017 | pass |
|
2086 | pass | |
2018 |
|
2087 | |||
|
2088 | @abc.abstractmethod | |||
2019 | def checkpush(self, pushop): |
|
2089 | def checkpush(self, pushop): | |
2020 | pass |
|
2090 | pass | |
2021 |
|
2091 | |||
2022 | prepushoutgoinghooks: util.hooks |
|
2092 | prepushoutgoinghooks: util.hooks | |
2023 | """util.hooks instance.""" |
|
2093 | """util.hooks instance.""" | |
2024 |
|
2094 | |||
|
2095 | @abc.abstractmethod | |||
2025 | def pushkey(self, namespace, key, old, new): |
|
2096 | def pushkey(self, namespace, key, old, new): | |
2026 | pass |
|
2097 | pass | |
2027 |
|
2098 | |||
|
2099 | @abc.abstractmethod | |||
2028 | def listkeys(self, namespace): |
|
2100 | def listkeys(self, namespace): | |
2029 | pass |
|
2101 | pass | |
2030 |
|
2102 | |||
|
2103 | @abc.abstractmethod | |||
2031 | def debugwireargs(self, one, two, three=None, four=None, five=None): |
|
2104 | def debugwireargs(self, one, two, three=None, four=None, five=None): | |
2032 | pass |
|
2105 | pass | |
2033 |
|
2106 | |||
|
2107 | @abc.abstractmethod | |||
2034 | def savecommitmessage(self, text): |
|
2108 | def savecommitmessage(self, text): | |
2035 | pass |
|
2109 | pass | |
2036 |
|
2110 | |||
|
2111 | @abc.abstractmethod | |||
2037 | def register_sidedata_computer( |
|
2112 | def register_sidedata_computer( | |
2038 | self, kind, category, keys, computer, flags, replace=False |
|
2113 | self, kind, category, keys, computer, flags, replace=False | |
2039 | ): |
|
2114 | ): | |
2040 | pass |
|
2115 | pass | |
2041 |
|
2116 | |||
|
2117 | @abc.abstractmethod | |||
2042 | def register_wanted_sidedata(self, category): |
|
2118 | def register_wanted_sidedata(self, category): | |
2043 | pass |
|
2119 | pass | |
2044 |
|
2120 |
General Comments 0
You need to be logged in to leave comments.
Login now