| Age | Commit message (Collapse) | Author |
|
Adds commit 29758ae ("setconfig: Use 'orig_type' instead of 'type' in
error message").
|
|
It's confusing to have tristate symbols show up as bool in the bad-value
error message when modules are disabled. set_value() validates the value
against 'orig_type' rather than 'type' as well.
Piggyback some quote consistency and make a comment in set_value() more
informative.
|
|
Adds commit e5e2fe5 ("Catch EnvironmentError instead of
OSError/IOError"), which fixes menuconfig.py crashes on I/O errors on
Python 2.
This might also improve error robustness elsewhere on Python 2 in
obscure cases.
|
|
menuconfig.py tended to crash on I/O errors on Python 2, due to
forgetting to update some 'except OSError's. Catch EnvironmentError
instead.
EnvironmentError is a common base class of IOError and OSError on Python
2, and an alias for OSError on Python 3. Use it elsewhere too, as it
might help catch obscure I/O errors on Python 2.
|
|
Shorter and still clear.
|
|
|
|
|
|
Things can be simplified a bit knowing that UNKNOWN is falsy.
|
|
Small optimization. We know that UNKNOWN == 0, and it's always tested
for by checking truthiness rather than identity within the library, so
there can't be trouble even without small integer optimization.
|
|
Adds some small documentation improvements:
- Commit b133331 ("Mention that passing subexpressions to expr_items()
works")
- Commit 6016156 ("Mention that the 'encoding' parameter is also used
for $(shell)")
- Commit 48ec584 ("Simplify eval_string() docstring re. syntax errors")
- Commit e44102a ("Make MenuNode.filename documentation more accurate
re. absolute paths")
Some minor optimizations are included as well.
|
|
Be more consistent re. continuation line indents.
|
|
An absolute path to within $srctree is turned into a relative path, and
a relative path with '..' in it might be turned into an absolute path.
Only whether the path is within $srctree matters.
|
|
Was meant as not-a-literal-if, but it looks confusing.
Piggyback a comment nit.
|
|
Syntax checking has been strict for a long time, so say "if there are
syntax errors" instead of "if syntax errors are detected".
|
|
|
|
Consistent with the other functions.
|
|
20% faster lookup in line_profiler in _tokenize(). The test usually
fails.
|
|
|
|
Symbol is the most common case by far.
Also rename _finalize_tree() to _finalize_node(), and make the
explanation for what it does more specific. The recursion gets a bit
tricky.
|
|
|
|
Adds commit 7403203 ("Make choice.set_value() no-change check work for
"n"/"m"/"y" strings").
|
|
Same deal as in commit f2ac5e3 ("Make set_value() no-change check work
for "n"/"m"/"y" strings"). Overlooked the similar logic for choices.
|
|
Adds commit a7302a6 ("menuconfig/guiconfig: Use orig_defaults in symbol
info").
|
|
Adds commit 0ca8e78 ("Add {Symbol,Choice}.orig_*, corresponding to the
MenuNode fields").
|
|
Getting defaults, select, implies, and ranges without dependencies
propagated to conditions can be useful for symbols and choices as well,
e.g. when generating standalone documentation for properties.
|
|
|
|
|
|
Adds commit 58c65e0 ("Make REL_TO_STR public").
|
|
Generally useful, and not likely to need any internal hackery.
|
|
Do 'add = fields.append'. Pointless as an optimization, but shaves some
lines, and obvious in context.
Also add test coverage for __repr__() for string symbols with user
values.
|
|
|
|
|
|
Makes set_value() smarter about saving redundant work, in commit f2ac5e3
("Make set_value() no-change check work for "n"/"m"/"y" strings").
|
|
Worth pointing out explicitly.
|
|
Convert "n"/"m"/"y" to 0/1/2 earlier, so that e.g. sym.set_value("y")
is recognized as a no-op when sym.user_value == 2.
This also helps when loading several configuration files that assign
some of the same symbols, because load_config() calls set_value() with
"n"/"m"/"y".
This could also cut down on the number of times a particular warning is
displayed when loading lots of overlapping configuration files.
|
|
- Reorganize symbol fetching to remove some duplicated _undef_assign()
calls
- Move duplicated assignment warning generation into an
_assigned_twice() helper function
|
|
Adds commit 0c79d23 ("menuconfig: Be silent when changing LC_CTYPE to a
UTF-8 locale").
|
|
|
|
It's pretty subtle that sym.config_string can be used instead of the
internal sym._write_to_conf variable in client code. Mention it in
comments near where _write_to_conf is used.
Seen client code access _write_to_conf a few times now. No plans to
remove it though, so it'll most likely keep working.
|
|
Same behavior, simpler.
|
|
Adds a small error message improvement, in commit 49831dd ("Give the
'source ...' line being parsed when a file can't be opened").
|
|
Bit cleaner-looking.
|
|
Helpful when env. variables are involved. Previously only shown when the
file couldn't be found.
|
|
Factors out some common code.
|
|
Adds a genconfig feature that can be used to avoid needless
reconfiguration, and improves the dumpvars output format.
- Commit dd1be54 ("genconfig: Support generating lists of files and
environment vars.")
- Commit f503ea3 ("dumpvars: Make the output format copy-pasteable")
|
|
This can be useful to avoid needless reconfiguration, by checking if any
Kconfig file or environment variable has changed value before running
genconfig.
|
|
Adds commit 443e6bb ("menuconfig: Fix help display on Python 2").
|
|
Do the opposite of what other people are doing and make menuconfig.py
Python 2-compatible. Turns out it's not that tricky after all, and it
makes everything consistently Python 2/3-compatible and streamlines
things.
- Commit 41b5891 ("menuconfig: Get rid of 'nonlocal'")
- Commit b2e211d ("menuconfig: Fall back on getch() when get_wch()
isn't available")
- Commit c3162be ("menuconfig: Only decode curses.erasechar() on Python
3")
- Commit fe6ed99 ("menuconfig: Import print_function for Python 2
compatibility")
- Commit c209188 ("menuconfig: Have hashbang point to 'python' instead
of 'python3'")
- Commit d577865 ("Remove Python 3 menuconfig special-casing from
Makefile patch")
- Commit 319f7f0 ("Update various comments now that menuconfig is
Python 2-compatible")
- Commit 5fbd70e ("Update setup.py now that menuconfig is Python
2-compatible")
Also investigate exactly what the Python version requirements are and tweak
and document things a bit:
- Commit e0baa79 ("Tweak python_requires to 2.7/3.2+")
- Commit 3a772a6 ("Add a section on version compatibility to the
README")
|
|
|
|
Adds commit 22f2778 ("Mention that the load_config() message is
different for replace=False")
|