Wed, 28 May 2014 14:22:24 -0700 bundle2: rename UnknownPartError to BundleValueError
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 28 May 2014 14:22:24 -0700] rev 21617
bundle2: rename UnknownPartError to BundleValueError We are going to raise exceptions for a wider range of cases: unsupported mandatory stream and part parameters. We rename the exception with a wider name.
Tue, 27 May 2014 17:04:48 -0500 context: explicitly return a tuple
Sean Farley <sean.michael.farley@gmail.com> [Tue, 27 May 2014 17:04:48 -0500] rev 21616
context: explicitly return a tuple In the refactoring of removing localrepo.status, 2edb8648c500, we accidentally changed the return type from a tuple to a list. Philosophically, this is incorrect so we explicitly return a tuple again.
Thu, 22 May 2014 01:49:12 -0700 wireproto: expose the list of getbundle arguments to extensions stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 22 May 2014 01:49:12 -0700] rev 21615
wireproto: expose the list of getbundle arguments to extensions For now, getbundle accepts a fixed number of arguments: ``heads``, ``common`` and ``bundlecaps``. We make this list exposed at the module level to let extensions add content there. This is important for extensions that wish to use bundle2 for other contents than changegroup.
Tue, 27 May 2014 19:21:12 -0700 run-tests: write .err files earlier
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 27 May 2014 19:21:12 -0700] rev 21614
run-tests: write .err files earlier Earlier refactoring of run-tests.py accidentally broke --interactive and external diff generation by not having .err files written before they are consulted. This patch fixes that.
Tue, 27 May 2014 19:10:22 -0700 run-tests: exit with non-0 exit code when tests fail or warn
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 27 May 2014 19:10:22 -0700] rev 21613
run-tests: exit with non-0 exit code when tests fail or warn As part of the run-tests.py refactor, run-tests.py accidentally started exiting with 0 for most test runs. This patch restores the expected behavior.
Fri, 23 May 2014 20:23:54 -0700 bundle2: expose mandatory params in a mandatorykeys attribute
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 23 May 2014 20:23:54 -0700] rev 21612
bundle2: expose mandatory params in a mandatorykeys attribute We expose all keys that MUST be processed in ``part.mandatorykeys``. This makes it much easier to access the information. Enforcement of the mandatory parameters is coming in later changesets.
Mon, 26 May 2014 18:45:43 -0700 bundle2: use the new ``part.params`` dictionary
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 26 May 2014 18:45:43 -0700] rev 21611
bundle2: use the new ``part.params`` dictionary We use the new ``part.params`` dictionary to access the value of parameters instead of creating one from the part's attributes.
Fri, 23 May 2014 17:26:57 -0700 bundle2: introduce a ``params`` dictionary on unbundled parts
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 23 May 2014 17:26:57 -0700] rev 21610
bundle2: introduce a ``params`` dictionary on unbundled parts This exposes all parameters the part received into a ``part.params`` dictionary. This should be much easier to use. This dictionary itself does not expose the mandatory or advisory aspect of parameters, but no current users of bundle2 actually enforce any of this logic. Coming changesets will improve this aspect.
Fri, 23 May 2014 17:17:39 -0700 bundle2: make sure unbundled part param are read-only
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 23 May 2014 17:17:39 -0700] rev 21609
bundle2: make sure unbundled part param are read-only My old uncle Robert once trusted an API user. We never saw him again.
Wed, 28 May 2014 10:04:02 -0700 bundle2: introduce an ``_initparams`` method
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 28 May 2014 10:04:02 -0700] rev 21608
bundle2: introduce an ``_initparams`` method The handling of parameters will become much more sophisticated in the coming changesets. So we extract the logic in a function to not pollute the generic logic.
Thu, 22 May 2014 12:52:09 -0700 bundle2: forbid duplicate parameter keys
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 22 May 2014 12:52:09 -0700] rev 21607
bundle2: forbid duplicate parameter keys No rules were specified about parameter key uniqueness. We document that keys should be unique and document it. This opens the way to a more friendly (read dictionary like) way to access value of parameters in the code.
Fri, 23 May 2014 16:46:30 -0700 bundle2: update part creators to ``addparam`` when relevant
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 23 May 2014 16:46:30 -0700] rev 21606
bundle2: update part creators to ``addparam`` when relevant In some cases, the use of ``addparam`` makes code much clearer.
Thu, 22 May 2014 11:38:40 -0700 bundle2: introduce a ``addparam`` method on part
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 22 May 2014 11:38:40 -0700] rev 21605
bundle2: introduce a ``addparam`` method on part We make it easier to add new parameters after the part creation. As for the ``data`` attribute we make sure the part generation has not begun yet.
Thu, 22 May 2014 11:21:26 -0700 bundle2: the ability to set ``data`` attribute of the part is now official
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 22 May 2014 11:21:26 -0700] rev 21604
bundle2: the ability to set ``data`` attribute of the part is now official We make it safe to set the data attribute after part creation. It is an allowed operation as long as the part has not started to be generated.
Sat, 24 May 2014 16:08:05 -0700 bundle2: introduce a ReadOnlyPartError exception
Pierre-Yves David <pierre-yves.david@fb.com> [Sat, 24 May 2014 16:08:05 -0700] rev 21603
bundle2: introduce a ReadOnlyPartError exception As we will introduce functions to alter already created parts, we need a proper exception to raise when code tries to alter a part that cannot be altered anymore.
Fri, 23 May 2014 16:20:30 -0700 bundle2: warn about error during initialization in ``newpart`` docstring
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 23 May 2014 16:20:30 -0700] rev 21602
bundle2: warn about error during initialization in ``newpart`` docstring As we are moving toward being able to alter a part after its creation, we need to make the implication of the part being already part of the bundle2 clear.
Thu, 22 May 2014 11:14:02 -0700 bundle2: track life cycle of parts
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 22 May 2014 11:14:02 -0700] rev 21601
bundle2: track life cycle of parts We introduce a ``_generated`` attribute on parts. Coming changesets will make it easier to update a part's contents after its creation. We need a way to track if the part is still open to modification or if it is currently being generated and should not be touched anymore. As a bonus, we can now detect and crash if someone manages to write bogus code to get a part generated twice.
Fri, 23 May 2014 15:59:19 -0700 bundle2: update all ``addpart`` callers to ``newpart``
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 23 May 2014 15:59:19 -0700] rev 21600
bundle2: update all ``addpart`` callers to ``newpart`` The new method is what we want in all current cases.
Fri, 23 May 2014 15:54:18 -0700 bundle2: have ``newpart`` automatically add the part to the bundle
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 23 May 2014 15:54:18 -0700] rev 21599
bundle2: have ``newpart`` automatically add the part to the bundle The created part is automatically added to the bundle as this is most certainly the intent of the user code.
Fri, 23 May 2014 15:45:46 -0700 bundle2: add a ``newpart`` method to ``bundle20``
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 23 May 2014 15:45:46 -0700] rev 21598
bundle2: add a ``newpart`` method to ``bundle20`` Creating new parts is the most common operation people do when exposed to a bundler. We create a dedicated method on the bundler object for it. This will simplify the code and also avoid having to import the ``mercurial.bundle2`` module in multiple places. One part creators have been updated for testing purpose.
Thu, 22 May 2014 10:48:37 -0700 bundle2: small doc update on the bundler
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 22 May 2014 10:48:37 -0700] rev 21597
bundle2: small doc update on the bundler The `bundle20` class contains methods to help define the content and methods to generate the actual stream. We add small doc headers to help distinguish between the two.
Fri, 25 Apr 2014 15:44:55 -0500 localrepo: replace status method with a shim
Sean Farley <sean.michael.farley@gmail.com> [Fri, 25 Apr 2014 15:44:55 -0500] rev 21596
localrepo: replace status method with a shim The path of the righteous man is beset on all sides by the inequities of the selfish and the tyranny of evil men. Blessed is he, who in the name of charity and good will, shepherds the weak through the valley of darkness, for he is truly Mercurial's keeper and the finder of robust methods. And I will strike down upon thee with great vengeance and furious anger those who would attempt to poison and destroy Mercurial's codebase. And you will know my name is the Lord when I lay my vengeance upon thee.
Tue, 27 May 2014 15:55:35 -0700 workingctx: have status method call super instead of customized code.
Sean Farley <sean.michael.farley@gmail.com> [Tue, 27 May 2014 15:55:35 -0700] rev 21595
workingctx: have status method call super instead of customized code. The old code is unneeded now that basectx has the ability to calculate the status between two context objects. Now, we use the objected oriented pattern called 'super'.
Thu, 24 Apr 2014 18:07:42 -0500 basectx: copy localrepo.status method
Sean Farley <sean.michael.farley@gmail.com> [Thu, 24 Apr 2014 18:07:42 -0500] rev 21594
basectx: copy localrepo.status method Now that all the pieces are in place, we copy the status method from localrepo. In the next few patches, we will remove the old implementation.
Thu, 24 Apr 2014 17:42:53 -0500 committablectx: cache _status in _poststatus
Sean Farley <sean.michael.farley@gmail.com> [Thu, 24 Apr 2014 17:42:53 -0500] rev 21593
committablectx: cache _status in _poststatus A future patch will remove the old workingctx.status which caches the status of the working directory, therefore we now cache this status in the poststatus hook of committablectx.
Thu, 24 Apr 2014 17:31:20 -0500 committablectx: simplify caching the status
Sean Farley <sean.michael.farley@gmail.com> [Thu, 24 Apr 2014 17:31:20 -0500] rev 21592
committablectx: simplify caching the status Previously, workingctx had custom variables for the unknown, ignored, and clean list of files of status. These then got moved to committablectx and, after the refactoring of localrepo.status, are no longer needed. We, therefore, simplify the whole mess. As a bonus, we are able to remove the need for having 'assert'.
Wed, 23 Apr 2014 16:08:20 -0500 localrepo: remove cache code now handled by _prestatus
Sean Farley <sean.michael.farley@gmail.com> [Wed, 23 Apr 2014 16:08:20 -0500] rev 21591
localrepo: remove cache code now handled by _prestatus This patch removes the last of the 'working' variable that was sprinkled throughout localrepo.status which paves the way for future patches to use the object oriented design of contexts to handle calculating the status.
Wed, 23 Apr 2014 16:06:42 -0500 workingctx: add note about super._prestatus calling manifest
Sean Farley <sean.michael.farley@gmail.com> [Wed, 23 Apr 2014 16:06:42 -0500] rev 21590
workingctx: add note about super._prestatus calling manifest
(0) -10000 -3000 -1000 -300 -100 -50 -28 +28 +50 +100 +300 +1000 +3000 +10000 +30000 tip