Allow update commands in the script to be ordered using `mkOrder`.
If we encounter ordered sub-objects we sort them by priority.
To implement this we now explicitly pass current node in `recurse`,
which also allows us to clean up edge case for top-level node.
Also refactor `recurse` to avoid passing result text argument; we
weren't tail recursive before anyway.
Last release from 2019, hasn't migrated to python3.
```
Traceback (most recent call last):
File "/build/DisplayCAL-3.8.9.3/nix_run_setup", line 8, in <module>
exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\\r\\n', '\\n'), __file__, 'exec'))
File "setup.py", line 258
print "Bumping version number %s ->" % \
^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print("Bumping version number %s ->" % \)?
```
Doesn't support recent python3 versions that use `async` as a keyword.
```
File "/build/source/mididings/units/call.py", line 36
def __init__(self, function, async, cont):
^
SyntaxError: invalid syntax
```
Stuck on python2 and there is a fork that isn't. Recommend getmail6
instead.
```
Traceback (most recent call last):
File "/build/getmail-5.14/nix_run_setup", line 8, in <module>
exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\\r\\n', '\\n'), __file__, 'exec'))
File "setup.py", line 51
print 'Default installation directories:'
^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print('Default installation directories:')?
```
The package is stuck on python2 while the upstream has archived its
repository and the last commit is from 2014.
```
File "/build/ino-0.3.6/ino/runner.py", line 78
print colorize(str(exc), 'red')
^
SyntaxError: invalid syntax
```
Also brings it closer to building again. Currently fails with:
```
CMake Error at platforms/scripts/cmake_install.cmake:54 (file):
file INSTALL cannot find "/build/source/build/bin/afu_platform_config": No
such file or directory.
Call Stack (most recent call first):
platforms/cmake_install.cmake:55 (include)
cmake_install.cmake:58 (include)
make: *** [Makefile:120: install] Error 1
```
Claims to support python3, but I'm seeing it use implicit relative
imports and it also has not adapted to python3.8 gettext API changes.
Removed for working only with python2.
Still actively developed and yet stuck on python2. Also marked as
vulnerable and their issue tracker contains yet another security issue
reported in 2021/10 that the upstream hasn't acknowledged yet.
Mind blown.
Closes: #135543, #97274, #97275