Skip to content

Commit d1304fc

Browse files
committed
Get ready for release 1.4.0
1 parent 2e762fd commit d1304fc

File tree

9 files changed

+261
-105
lines changed

9 files changed

+261
-105
lines changed

ChangeLog-spell-corrected.diff

Lines changed: 177 additions & 86 deletions
Large diffs are not rendered by default.

NEWS.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
1.4.0 2025-07-26
2+
================
3+
4+
* Adjust for changes in the Python 3.13 for debugging, and breakage caused by Python 3.13 and its packaging system.
5+
* Environment variable `TREPAN_PYGMENTS_STYLE` now influences the default style used. This is useful in when going from a shell using Pygments goes into the debugger. In particular, the Mathics3 debugger and ``mathicsscript`` work this way.
6+
* Add set/show disasmflavor to set disassembly style. "Disasmflavor" is the name `gdb` uses.
7+
* Improve `run_eval()` based on use.
8+
* Go over docs, and README.rst
9+
110
1.3.1 2025-01-16
211
================
312

README.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ Abstract
1010
This is a gdb-like debugger for Python. It is a rewrite of *pdb* from
1111
the ground up. I was disappointed with the flakiness, imprecision, and
1212
poor quality of coding, modularity, and level of documentation when I
13-
first looked at *pdb*.
13+
first looked at *pdb*.
1414

1515
*pdb* has gotten better since then. But a complete debugger is way more complex than what you'd expect from
1616
a Standard Python module; it requires a larger set of supporting packages than is found in the Standard Python library.
@@ -108,7 +108,7 @@ GNU Readline is not just a simple static list but varies depending on
108108
the context. For example, for frame-changing commands that take
109109
optional numbers, the list of *valid numbers* is considered.
110110

111-
In time (and perhaps with some volunteers), ``prompt_toolkit will be as good as GNU Readline completion.
111+
In time (and perhaps with some volunteers), ``prompt_toolkit`` will be as good as GNU Readline completion.
112112

113113
Terminal Handling
114114
-----------------

admin-tools/make-dist-3.11.sh

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
#!/bin/bash
2+
PACKAGE=trepan3k
3+
4+
# FIXME put some of the below in a common routine
5+
function finish {
6+
cd $make_dist_311_owd
7+
}
8+
9+
make_trepan_dist_36_owd=$(pwd)
10+
trap finish EXIT
11+
12+
cd $(dirname ${BASH_SOURCE[0]})
13+
14+
if ! source ./pyenv-3.11-versions ; then
15+
exit $?
16+
fi
17+
if ! source ./setup-python-3.11.sh ; then
18+
exit $?
19+
fi
20+
21+
. ./setup-python-3.11.sh
22+
23+
cd ..
24+
source trepan/version.py
25+
if [[ ! -n $__version__ ]]; then
26+
echo "You need to set __version__ first"
27+
exit 1
28+
fi
29+
echo $__version__
30+
31+
for pyversion in $PYVERSIONS; do
32+
echo --- $pyversion ---
33+
if [[ ${pyversion:0:4} == "pypy" ]] ; then
34+
echo "$pyversion - PyPy does not get special packaging"
35+
continue
36+
fi
37+
if ! pyenv local $pyversion ; then
38+
exit $?
39+
fi
40+
# pip bdist_egg create too-general wheels. So
41+
# we narrow that by moving the generated wheel.
42+
43+
# Pick out first two number of version, e.g. 3.5.1 -> 35
44+
first_two=$(echo $pyversion | cut -d'.' -f 1-2 | sed -e 's/\.//')
45+
rm -fr build
46+
python setup.py bdist_egg bdist_wheel
47+
mv -v dist/${PACKAGE}-$__version__-{py2.py3,$first_two}-none-any.whl
48+
done
49+
50+
python ./setup.py sdist
51+
tarball=dist/${PACKAGE}-${__version__}.tar.gz
52+
53+
if [[ -f $tarball ]]; then
54+
mv -v $tarball dist/${PACKAGE}_11-${__version__}.tar.gz
55+
fi
56+
finish

admin-tools/make-dist-newest.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ for pyversion in $PYVERSIONS; do
3434
rm -fr build
3535
# We can't use a universal wheel because depdencies on the decompiler changes
3636
# for 3.7 and 3.8
37-
python setup.py bdist_egg bdist_wheel
37+
python wheel .
3838
if [[ $first_two =~ py* ]]; then
3939
if [[ $first_two =~ pypy* ]]; then
4040
# For PyPy, remove the what is after the dash, e.g. pypy37-none-any.whl instead of pypy37-7-none-any.whl

docs/syntax/command.rst

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ Debugger Command Syntax
44
=======================
55

66
Command names and arguments are separated with spaces like POSIX shell
7-
syntax. Parentheses around the arguments and commas between them are
8-
not used. If the first non-blank character of a line starts with ``#``,
7+
syntax. Parenthesis around the arguments and commas between them are
8+
not used. If the first non-blank character of a line starts with `#`,
99
the command is ignored.
1010

1111
Commands are split at wherever ``;;`` appears. This process disregards
@@ -21,7 +21,7 @@ Resolving a command name involves possibly 4 steps. Some steps may be
2121
omitted depending on early success or some debugger settings:
2222

2323
1. The leading token is first looked up in the macro table. If it is in the table, the expansion replaces the current command and
24-
possibly other commands pushed onto a command queue. Run `help macros` for
24+
possibly other commands pushed onto a command queue. See `help macros` for
2525
help on how to define macros, and `info macro` for current macro
2626
definitions.
2727

@@ -39,9 +39,9 @@ program at the point it is stopped. However, this is done only if
3939

4040
If :ref:`auto eval <set_autoeval>` is not set on, or if running the Python statement produces an error, we display an error message that the entered string is "undefined".
4141

42-
If you want a python-, ipython-, or bpython-like shell
43-
command-processing, it's possible to go into a Python shell with the
44-
corresponding command. It is also possible to arrange to go into a Python shell every time you enter the debugger.
42+
If you want python-, ipython-, or bpython-like shell
43+
command-processing, it's possible to go into a ``python`` shell with the
44+
corresponding command. It is also possible to arrange to go into a ``python`` shell every time you enter the debugger.
4545

4646
.. seealso::
4747

trepan/processor/command/help/arange.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ An address range is in one of the following forms:
1313

1414
A *location* is described elsewhere. *first* and *last* can also be
1515
linespecs but they also may be a number or address (bytecode
16-
offset). And finally *last* can be an (line number) offset.
16+
offset). And finally *last* can be a (line number) offset.
1717

1818
A number is just a decimal number. An offset is a number prefaced with "+" and
1919
indicates the number to increment the line number found in *first*.
@@ -23,7 +23,7 @@ Examples
2323

2424
::
2525

26-
*5 # start from bytecode offset 5 of current file
26+
*5 # start from bytecode offset 5 of the current file
2727
*5 , # Same as above.
2828
foo.py:*5 # start from bytecode offset 5 of file foo.py
2929

trepan/processor/command/help/command.rst

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -21,32 +21,32 @@ Resolving a command name involves possibly 4 steps. Some steps may be
2121
omitted depending on early success or some debugger settings:
2222

2323
1. The leading token is first looked up in the macro table. If it is in
24-
the table, the expansion is replaces the current command and possibly
24+
the table, the expansion replaces the current command and possibly
2525
other commands pushed onto a command queue. See `help macros` for
2626
help on how to define macros, and `info macro` for current macro
2727
definitions.
2828

29-
2. The leading token is next looked up in the debugger alias table and
29+
2. The leading token is next looked up in the debugger alias table, and
3030
the name may be substituted there. See "help alias" for how to define
3131
aliases, and "show alias" for the current list of aliases.
3232

33-
3. After the above, The leading token is looked up a table of debugger
33+
3. After the above, the leading token is looked up in a table of debugger
3434
commands. If an exact match is found, the command name and arguments
3535
are dispatched to that command.
3636

3737
4. If after all of the above, we still don't find a command, the line
3838
may be evaluated as a Python statement in the current context of the
39-
program at the point it is stopped. However this is done only if
39+
program at the point it is stopped. However, this is done only if
4040
"auto evaluation" is on. It is on by default.
4141

4242
If `auto eval` is not set on, or if running the Python statement
4343
produces an error, we display an error message that the entered string
4444
is "undefined".
4545

4646
If you want python-, ipython- or bpython-like shell
47-
command-processing, it's possible to go into an python shell with the
48-
corresponding command. It is also possible to arrange going into an
49-
python shell every time you enter the debugger.
47+
command-processing, it's possible to go into a ``python`` shell with the
48+
corresponding command. It is also possible to arrange going into a
49+
``python`` shell every time you enter the debugger.
5050

5151
See also:
5252
---------

trepan/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,4 @@
55
# debugger version number.
66

77
# fmt: off
8-
__version__="1.3.2.dev0" # noqa
8+
__version__="1.4.0" # noqa

0 commit comments

Comments
 (0)