Update configobj to 5.1.0dev#7945
Conversation
|
Hi, I’ll take a look at this PR later today (as I’m the one who suggested this upgrade in the first place). Thanks.
|
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
|
Please also test the configuration file upgrade paths. |
This comment has been minimized.
This comment has been minimized.
|
@feerrenrut commented on 11 Apr 2018, 03:46 CEST:
Do you have an idea about how to properly test this? |
Essentially, get hold of an old config file (pre introduction of schema version), copy to user config directory, and start NVDA. Inspect the config file and log for errors. |
This comment has been minimized.
This comment has been minimized.
|
Hi, I propose queueing this for review after wxPython 4 is merged into master. In the meantime, can you merge current master so Appveyor can present status updates? Thanks. |
c1fea4d to
5721759
Compare
|
@feerrenrut commented on 11 Apr 2018, 03:46 CEST:
How would you like me to do this? |
|
@LeonarddeR Essentially:
It's probably wise to do this with a blank (default) config as well as with one that has been populated with a variety of options, focusing on the options that have upgrade steps (see The first version with the schema upgrade process was 2017.1 (introduced with #6558), so starting from a config file out of 2016.4 should suffice. I understand manually doing this is a little onerous, see #7220 |
|
@feerrenrut: I've been able to perform the tests, here are the results. This is what I did.
|
|
Ugh, I was quite sure that I included a changes.t2t update as part of this, but turns out i didn't. |
|
I wondered about a changes file update. I didn't think it was strictly necessary, but now looking at the original issue again there does seem to be a few changes that would be good to point out. Could you create another PR to handle that. |
Link to issue number:
Closes #4470
Summary of the issue:
configobj is currently on version 4.6.0, which is pretty old. The current stable version is 5.0.6, it is said to add full support for Python 3, but later commits suggest that support had to be improved for version 3.4 and 3.5. Also, version 5.0.6 contained the bug as described in #7945 (comment), it didn't allow executing
from validate import *.Description of how this pull request fixes the issue:
Adds a configobj submodule to the repository on github, and uses its current master version in favor of the version from miscdeps, which can be removed if this gets eventually merged.
Testing performed:
Ran NVDA from source, the configuration persisted. Also, ran tests as proposed by @feerrenrut, see #7945 (comment) for results.
Known issues with pull request:
I've seen a case where NVDA did restore its configuration to factory defaults, but that might have been because of me fiddling with the config in a majorly destructive way. This was in the 5.0.6 situation, and I don't have steps to reproduce.