
This issue trackerhas been migrated toGitHub, and is currentlyread-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.
Created on2018-02-19 15:56 bycheryl.sabella, last changed2022-04-11 14:58 byadmin. This issue is nowclosed.
| Pull Requests | |||
|---|---|---|---|
| URL | Status | Linked | Edit |
| PR 5755 | merged | cheryl.sabella,2018-02-19 16:02 | |
| PR 5803 | merged | miss-islington,2018-02-22 03:48 | |
| PR 5804 | merged | miss-islington,2018-02-22 03:49 | |
| Messages (9) | |||
|---|---|---|---|
| msg312352 -(view) | Author: Cheryl Sabella (cheryl.sabella)*![]() | Date: 2018-02-19 15:56 | |
Add unit tests for pyparse.py in IDLE. | |||
| msg312353 -(view) | Author: Cheryl Sabella (cheryl.sabella)*![]() | Date: 2018-02-19 16:01 | |
I also moved existing comments in pyparse.py to be docstrings.Adding the tests revealed a bug in the initialization of self.lastopenbracketpos, but I didn't make any changes to fix it. With the bug, the tests weren't repeatable, so I modified the tests to work with the bug in place. | |||
| msg312375 -(view) | Author: Terry J. Reedy (terry.reedy)*![]() | Date: 2018-02-19 21:52 | |
My only contact with pyparse has been#21765, which modified hyperparser and pyparse to support unicode identifiers. It also added tests for hyperparser, but not pyparse (msg223150: "it seems to be working as expected"). Thanks for filling in this hole. | |||
| msg312428 -(view) | Author: Cheryl Sabella (cheryl.sabella)*![]() | Date: 2018-02-20 18:06 | |
Thanks for pointing out#21765 - very interesting reading. :-)Would the new str.isascii() be helpful or would it be too early to use something only available in 3.7? It would seem that and combinations of `if isascii() and isidentifier()` might be interesting to benchmark against some of the current code. | |||
| msg312438 -(view) | Author: Terry J. Reedy (terry.reedy)*![]() | Date: 2018-02-20 21:46 | |
Respone tomsg312353: Yes, let us restrict this to testing pyparse code as is. I opened issue#32880 for changing the code. My followup post discusses parse variable initialization.Putting instance variable defaults in class attributes is a known practice. But this is usually done when the 'default' is the most common value, not when the class attribute is always masked, before access, by an instance attribute of the same name.One could claim that it is buggy to not create a new Parser instance for each subtest. But the class appears to be designed for instance reuse, by having a separate set string method and by never looking at string-specific attributes until set from the string.We could instead say that the bug is the test checking an undefined value. I rejected the option of not looking when test.lastopenbracketpos is None and instead suggest on the new issue that this instance attribute always be freshly set, like all the others. | |||
| msg312440 -(view) | Author: Terry J. Reedy (terry.reedy)*![]() | Date: 2018-02-20 22:11 | |
Response tomsg312428: I would generally prefer to put off using 3.x feature in module m until after we think we are done patching m for 3.(x-1), but do so before 3.x.0 release. When 3.x-1 went to security status a week after the 3.x release, this was not much an issue.In this case, we could use 'isascii' freely after3.7+: isascii = str.isascii3.6: def isascii(s): return all(ord(c) < 128 for c in s)Concrete code change proposals, including in hyperparser, should go on#32880.In#21765, I mentioned looking at ColorDelegator and UndoDelegator. I never did that, but added this to my list of possible issues. | |||
| msg312529 -(view) | Author: Terry J. Reedy (terry.reedy)*![]() | Date: 2018-02-22 03:48 | |
New changesetc84cf6c03fce1fb73bfaf91d7909f1c2708f14a2 by Terry Jan Reedy (Cheryl Sabella) in branch 'master':bpo-32874: IDLE: add tests for pyparse (GH-5755)https://github.com/python/cpython/commit/c84cf6c03fce1fb73bfaf91d7909f1c2708f14a2 | |||
| msg312531 -(view) | Author: miss-islington (miss-islington) | Date: 2018-02-22 04:09 | |
New changesetc59bc98fb26ff1a2361f168a97da4a5f6c1e5b43 by Miss Islington (bot) in branch '3.7':bpo-32874: IDLE: add tests for pyparse (GH-5755)https://github.com/python/cpython/commit/c59bc98fb26ff1a2361f168a97da4a5f6c1e5b43 | |||
| msg312532 -(view) | Author: miss-islington (miss-islington) | Date: 2018-02-22 04:34 | |
New changeset52064c3d8a62c8c14967ec1e004927e9297bb62c by Miss Islington (bot) in branch '3.6':bpo-32874: IDLE: add tests for pyparse (GH-5755)https://github.com/python/cpython/commit/52064c3d8a62c8c14967ec1e004927e9297bb62c | |||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2022-04-11 14:58:57 | admin | set | github: 77055 |
| 2018-03-04 05:36:10 | terry.reedy | set | status: open -> closed resolution: fixed stage: patch review -> resolved |
| 2018-02-22 04:34:45 | miss-islington | set | messages: +msg312532 |
| 2018-02-22 04:09:42 | miss-islington | set | nosy: +miss-islington messages: +msg312531 |
| 2018-02-22 03:49:47 | miss-islington | set | pull_requests: +pull_request5582 |
| 2018-02-22 03:48:49 | miss-islington | set | pull_requests: +pull_request5581 |
| 2018-02-22 03:48:44 | terry.reedy | set | messages: +msg312529 |
| 2018-02-20 22:11:59 | terry.reedy | set | messages: +msg312440 |
| 2018-02-20 21:46:41 | terry.reedy | set | messages: +msg312438 |
| 2018-02-20 18:06:30 | cheryl.sabella | set | messages: +msg312428 |
| 2018-02-19 21:52:06 | terry.reedy | set | messages: +msg312375 versions: + Python 3.6 |
| 2018-02-19 16:02:12 | cheryl.sabella | set | keywords: +patch stage: patch review pull_requests: +pull_request5533 |
| 2018-02-19 16:01:02 | cheryl.sabella | set | messages: +msg312353 |
| 2018-02-19 15:56:06 | cheryl.sabella | create | |