[MERGE] Patience diff
John A Meinel
john at arbash-meinel.com
Tue May 23 15:21:00 BST 2006
Aaron Bentley wrote:
> John A Meinel wrote:
>
>>> PEP8. Also, Bram seemed to like running self tests every time the module
>>> was imported. Which are what all these asserts are for.
>>> They should be fast, so I'm okay with keeping them, but I did add them
>>> to selftest, so it would be safe to get rid of them.
>
> I think we should take them out, to be consistent with bzr style. We're
> pretty clearly taking ownership of this code.
>
>>> Did you re-run the tests with the new patience-test.py? I'm guessing it
>>> still worked, but just thought I would check.
>
> Yes, I did.
>>> + chk_blocks('abcdefghijklmnop'
>>> + , 'abcXghiYZQRSTUVWXYZijklmnop'
>>> + , [(0, 0, 3), (6, 4, 3), (9, 20, 7)])
>>> +
>>> + chk_blocks('ABCd efghIjk L'
>>> + , 'AxyzBCn mo pqrstuvwI1 2 L'
>>> + , [(0,0,1), (1, 4, 2), (4, 7, 1), (9, 19, 1), (12, 23,
>>> 3)])
>>> +
>>>
>>> Is this the best way to write it? Basically, I needed a multi-line code
>>> snippet, that I could do diff with, and make sure it gave a reasonable
>>> answer. (It also highlights the difference between difflib and
>>> patiencediff).
>
> It looks okay, except that there shouldn't be leading commas; those
> should be on the previous line.
I guess it really wasn't clear. I was actually talking about the
chk_blocks('''\
big multiline text follows
''')
stuff.
I personally like the leading commas style. After I had seen it, I
realized that commas are logically attached more to the thing following
than the thing proceeding. If you add something else, you put another
comma, python has a workaround where it will ignore a trailing comma, so
you can do lists like:
[
a,
b,
c,
d,
]
But this works in C:
( a
, b
, c
, d
)
And means that if you add something it doesn't change the other lines.
(except for a, but that is less common).
Anyway, I try to avoid the style for bzr code, but this was written
before PEP8 was really firm, and it was originally just playing around code.
>
>>> I suppose we could move the static text out of the function and into the
>>> module scope, it may make it look a little cleaner. I don't really know
>>> what the 'best' thing here is.
>
> I might do that for the bigger chunks. Actually, I might rot13 the
> example taken from bzr source code, because it's hella confusing to see
> python function definitions as strings.
Yeah, especially without syntax highlighting, it is really hard to
figure out where things should be.
I have no problem using a different code snippet, just as long as it
demonstrates the behavior. (You need repeated lines, with a long trailer
of unmodified code)
>
>>> Other than the few things, I think its just about ready to be merged. So
>>> +1 from me after they are handled.
>
> Thanks. Submitted.
>
> Aaron
>
John
=:->
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 249 bytes
Desc: OpenPGP digital signature
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20060523/770fa297/attachment.pgp
More information about the bazaar
mailing list