- May 20, 2018
-
-
Pulkit Goyal authored
# skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3630
-
Pulkit Goyal authored
# skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3629
-
- May 18, 2018
-
-
Pulkit Goyal authored
We will soon be using CBOR format to write the data in state files. But we should not write the version number of the state files in CBOR format and we should rather write it in plain text because in future we can change the format of state files and we should be able to parse the version number of state file without requiring to understand a certain format. This will help us in making sure we have a good compatibility story with other versions of state files. Differential Revision: https://phab.mercurial-scm.org/D3579
-
Pulkit Goyal authored
Passing canonical=True to cbor.dump() will help in writing the data deterministically. This will sort all the sets and dicts before writing to the file. Thanks indygreg for recommending to use it. Differential Revision: https://phab.mercurial-scm.org/D3578
-
- Mar 28, 2018
-
-
Pulkit Goyal authored
This patch changes the cmdstate class to stop having a dict like interface and delete the __nonzero__ function. After this patch, the save fuction takes a dict to store the data and read function returns a dict of the data stored. Differential Revision: https://phab.mercurial-scm.org/D3572
-
- Feb 21, 2018
-
-
Pulkit Goyal authored
The current way of writing state files is very obscure with each state file having it's own format to store state files. There is no centralized way to write state files in a good format. Moreover the current state files are not extensible, you cannot add more data to store in state files in reliable ways. To solve the problem, I wrote my own serialization and deserialization format, looked into existing formats like Protobuf, MessagePack, JSON but CBOR looks very promising and is suggested by people in the community. The current interface to store state files is to directly write data in files when things abort. Using the class imported by this commit, we can create objects which has a dict like interface and can store data on the object and store it on the file when things abort. The evolve extension is using the state file for `evolve`, `grab` commands and using it for resolution of orphaness, phase-divergence and content-divergence. The file is moved from changeset e4ac2e2c2086f977afa35e23a62f849e9305a225 of the evolve extension which is also tagged as 7.3.0. The following changes are made to the file while moving to core: * import util from current directory as this file in mercurial/ now * make cmdstate class extend object * removed mutable default value for opts in cmdstate.__init__ * some doc changes to replace out of core things with in-core ones evolve extension can be found at https://bitbucket.org/marmoute/mutable-history Differential Revision: https://phab.mercurial-scm.org/D2591
-
- May 14, 2018
-
-
Paul Morelle authored
Without aggressivemergedeltas, ensure that when we decline the closest parent (by revision number), the other parent is examined too.
-
- May 15, 2018
-
-
Augie Fackler authored
This is in line with both Git and Subversion, and strikes me as a more humane behavior. Test output changes are expected once you read test-status.t, and I feel like we've still got adequate coverage on things. Differential Revision: https://phab.mercurial-scm.org/D3628
-
Augie Fackler authored
I want --terse=u basically 100% of the time, but there's not a good way to do that before this patch. I'm very unhappy with how the default value for --terse looks rigt now, but it does *work*. The alternative would be to define an "optional string" flag type using fancyopts.customopt and then use that, leaving the default as None. Does anyone have a strong preference for that, or a better idea? Differential Revision: https://phab.mercurial-scm.org/D3627
-
- May 19, 2018
-
-
Augie Fackler authored
Still some lingering failure in here, but it's much better. Differential Revision: https://phab.mercurial-scm.org/D3626
-
Augie Fackler authored
Differential Revision: https://phab.mercurial-scm.org/D3625
-
Augie Fackler authored
Differential Revision: https://phab.mercurial-scm.org/D3624
-
Augie Fackler authored
The Python 3 group reference error message is a little more helpful, so we'll allow the extra output. I tried matching this with an (re) line, but decided it wasn't worth the effort. Differential Revision: https://phab.mercurial-scm.org/D3623
-
Augie Fackler authored
parsers.versionerrortext is a sysstr, but it's only ever used in this test on the Python side, so I'm okay to just handle it like this. Differential Revision: https://phab.mercurial-scm.org/D3622
-
Augie Fackler authored
From a recent test run of mine: run-tests.py:1633: DeprecationWarning: invalid escape sequence '\(' This lets us encode the expectation without the badness. Differential Revision: https://phab.mercurial-scm.org/D3621
-
Augie Fackler authored
FreeBSD sh(1) doesn't accept -d, so we weren't testing what we expected there. Let's just use a simple Python script instead. Differential Revision: https://phab.mercurial-scm.org/D3620
-
Augie Fackler authored
Differential Revision: https://phab.mercurial-scm.org/D3619
-
Pulkit Goyal authored
Differential Revision: https://phab.mercurial-scm.org/D3615
-
Pulkit Goyal authored
Comparing None and integers on Python 3 is not allowed and raise error. Differential Revision: https://phab.mercurial-scm.org/D3614
-
Pulkit Goyal authored
The latter throws SyntaxError on Python 3. Differential Revision: https://phab.mercurial-scm.org/D3613
-
Pulkit Goyal authored
Differential Revision: https://phab.mercurial-scm.org/D3612
-
Pulkit Goyal authored
# skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3611
-
Pulkit Goyal authored
This patch adds b'' prefixes to make sure we write bytes and add `and None` in the end to suppress the output by .write() calls. Differential Revision: https://phab.mercurial-scm.org/D3610
-
Pulkit Goyal authored
Iterating on bytes give you ascii values instead of bytechr so we need to wrap the bytes in pycompat.bytestr() to get bytechr while iterating. Differential Revision: https://phab.mercurial-scm.org/D3609
-
Pulkit Goyal authored
Differential Revision: https://phab.mercurial-scm.org/D3608
-
Pulkit Goyal authored
Differential Revision: https://phab.mercurial-scm.org/D3607
-
Pulkit Goyal authored
we internally deal with bytes and should read files in bytes mode. Differential Revision: https://phab.mercurial-scm.org/D3606
-
Pulkit Goyal authored
# skip-blame because just a b'' prefix Differential Revision: https://phab.mercurial-scm.org/D3605
-
Pulkit Goyal authored
Differential Revision: https://phab.mercurial-scm.org/D3604
-
Pulkit Goyal authored
Differential Revision: https://phab.mercurial-scm.org/D3603
-
Pulkit Goyal authored
Differential Revision: https://phab.mercurial-scm.org/D3602
-
Pulkit Goyal authored
# skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3601
-
Pulkit Goyal authored
# skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3600
-
Pulkit Goyal authored
# skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3599
-
Pulkit Goyal authored
# skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3598
-
Pulkit Goyal authored
# skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3597
-
Pulkit Goyal authored
# skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3596
-
Pulkit Goyal authored
# skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3595
-
Pulkit Goyal authored
# skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3594
-
Pulkit Goyal authored
Differential Revision: https://phab.mercurial-scm.org/D3593
-