Skip to content

Commit 01c9b87

Browse files
authored
Merge pull request #2 from Mathics3/release-2.0.0
Release 2.0.0
2 parents c5376a0 + 51c2fe4 commit 01c9b87

File tree

8 files changed

+286
-23
lines changed

8 files changed

+286
-23
lines changed

.github/workflows/pyodide.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,13 @@ jobs:
1212
pyodide-test:
1313
runs-on: ubuntu-latest
1414
env:
15-
PYODIDE_VERSION: 0.27.0a2
15+
PYODIDE_VERSION: 0.28.2
1616
# PYTHON_VERSION and EMSCRIPTEN_VERSION are determined by PYODIDE_VERSION.
1717
# The appropriate versions can be found in the Pyodide repodata.json
1818
# "info" field, or in Makefile.envs:
1919
# https://github.com/pyodide/pyodide/blob/main/Makefile.envs#L2
20-
PYTHON_VERSION: 3.12.1
21-
EMSCRIPTEN_VERSION: 3.1.58
20+
PYTHON_VERSION: 3.13.2
21+
EMSCRIPTEN_VERSION: 4.0.9
2222
NODE_VERSION: 20
2323
steps:
2424
- name: Checkout
@@ -51,9 +51,9 @@ jobs:
5151
5252
# Activate the virtual environment
5353
. .venv-pyodide/bin/activate
54-
pip install "setuptools>=70.0.0" PyYAML click packaging pytest
54+
pip install "setuptools>=70.0.0" "packaging>=24.2" PyYAML click pytest
5555
56-
pip install --no-build-isolation -v -v -v -e .
56+
pip install -e .
5757
- name: Test Timed Threads
5858
run: |
5959
# Activate the virtual environment

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
*.pyo
2424
.DS_Store
2525
/.python-version
26-
/ChangeLog-spell-corrected
2726
/Timed_Threads.egg-info
2827
/.pyodide-xbuildenv*
2928
/.python-version

CHANGES.rst

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,17 @@
1-
Changes log
2-
===========
1+
Changes
2+
=======
3+
4+
2.0.0 - 2025-12-17
5+
------------------
6+
7+
* Change to be suitable for Mathics3:
8+
- use ``pyproject.toml`` for packaging
9+
- works on Python 3.10 to 3.14
10+
- uses Mathics3-style precommit hooks and editorconfig
11+
12+
* Change ``ALARM`` list to store absolute time rather than relative time
13+
* Change name from ``stopit`` to ``Timed-Threads`` with module ``timed_threads``
314

4-
2.0.0 - 2025
5-
------------
615

716
1.1.2 - 2018-02-09
817
------------------

ChangeLog-spell-corrected

Lines changed: 248 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,248 @@
1+
2025-12-17 rocky <rb@dustyfeet.com>
2+
3+
* Makefile, timed_threads/version.py: Get ready for release 2.0.0
4+
5+
2025-12-17 R. Bernstein <rocky@users.noreply.github.com>
6+
7+
* : Merge pull request #1 from
8+
Mathics3/revise-for-modern-conventions Reworked for current Python conventions
9+
10+
2025-05-30 rocky <rb@dustyfeet.com>
11+
12+
* .editorconfig, .github/workflows/macos.yml,
13+
.github/workflows/pyodide.yml, .github/workflows/ubuntu.yml,
14+
.github/workflows/windows.yml, .gitignore, .pre-commit-config.yaml,
15+
CHANGES.rst, ChangeLog-spell-corrected.diff, Makefile, README.rst,
16+
admin-tools/git2cl, pyproject.toml, setup.cfg, setup.py,
17+
src/stopit/__init__.py, test/test_basic.py, tests.py,
18+
timed_threads/__init__.py, {src/stopit =>
19+
timed_threads}/signalstop.py, {src/stopit =>
20+
timed_threads}/threadstop.py, {src/stopit =>
21+
timed_threads}/utils.py, timed_threads/version.py: Reworked for
22+
current Python conventions * Use pyproject.toml * Reorganize along current Python project guidelines * Revise tests for pytest
23+
24+
2025-01-18 R. Bernstein <rocky@users.noreply.github.com>
25+
26+
* : Merge pull request #3 from
27+
Mathics3/fixing_nested_Timeout_contexts_using_signal-rocky Bump version
28+
29+
2025-01-18 rocky <rb@dustyfeet.com>
30+
31+
* .github/workflows/pyodide.yml: See what's up with pyodide
32+
33+
2025-01-18 R. Bernstein <rocky@users.noreply.github.com>
34+
35+
* : commit bc8c5c282ccc11ac6a8f15ee9a8678bfd3da4a60 Author: rocky
36+
<rb@dustyfeet.com> Date: Sat Jan 18 09:15:22 2025 -0500
37+
38+
2025-01-18 rocky <rb@dustyfeet.com>
39+
40+
* .gitignore: More ignore
41+
42+
2025-01-18 rocky <rb@dustyfeet.com>
43+
44+
* .github/workflows/pyodide.yml, src/stopit/signalstop.py,
45+
src/stopit/utils.py, tests.py: Minimal stopit load
46+
47+
2025-01-08 mmatera <matera@fisica.unlp.edu.ar>
48+
49+
* .github/workflows/pyodide.yml: more verbose install
50+
51+
2025-01-08 mmatera <matera@fisica.unlp.edu.ar>
52+
53+
* .github/workflows/pyodide.yml: fix workflow
54+
55+
2025-01-08 mmatera <matera@fisica.unlp.edu.ar>
56+
57+
* .github/workflows/pyodide.yml, setup.py: change version
58+
59+
2025-01-06 rocky <rb@dustyfeet.com>
60+
61+
* setup.py: Bump version
62+
63+
2025-01-05 mmatera <matera@fisica.unlp.edu.ar>
64+
65+
* .github/workflows/macos.yml, .github/workflows/pyodide.yml,
66+
.github/workflows/ubuntu.yml, .github/workflows/windows.yml: rename
67+
workflows
68+
69+
2025-01-04 mmatera <matera@fisica.unlp.edu.ar>
70+
71+
* .github/workflows/pyodide.yml: pip through python
72+
73+
2025-01-04 mmatera <matera@fisica.unlp.edu.ar>
74+
75+
* tests.py: removing control prints
76+
77+
2025-01-04 mmatera <matera@fisica.unlp.edu.ar>
78+
79+
* tests.py: improve await function
80+
81+
2025-01-04 mmatera <matera@fisica.unlp.edu.ar>
82+
83+
* tests.py: reordering tests
84+
85+
2025-01-04 mmatera <matera@fisica.unlp.edu.ar>
86+
87+
* tests.py: check time
88+
89+
2025-01-04 mmatera <matera@fisica.unlp.edu.ar>
90+
91+
* tests.py: show duration in test
92+
93+
2025-01-04 mmatera <matera@fisica.unlp.edu.ar>
94+
95+
* .github/workflows/pyodide.yml: no build isolation
96+
97+
2025-01-04 mmatera <matera@fisica.unlp.edu.ar>
98+
99+
* tests.py: fix typo
100+
101+
2025-01-04 mmatera <matera@fisica.unlp.edu.ar>
102+
103+
* .github/workflows/pyodide.yml: pyodide workflow
104+
105+
2025-01-04 mmatera <matera@fisica.unlp.edu.ar>
106+
107+
* .github/workflows/macos.yml, .github/workflows/windows.yml: macos
108+
and windows workflows
109+
110+
2025-01-04 mmatera <matera@fisica.unlp.edu.ar>
111+
112+
* .github/workflows/ubuntu.yml: adding dependencies
113+
114+
2025-01-04 mmatera <matera@fisica.unlp.edu.ar>
115+
116+
* .github/workflows/ubuntu.yml: workflows
117+
118+
2025-01-04 mmatera <matera@fisica.unlp.edu.ar>
119+
120+
* src/stopit/utils.py: comment out the warning when the timeout is
121+
reached.
122+
123+
2025-01-04 mmatera <matera@fisica.unlp.edu.ar>
124+
125+
* src/stopit/signalstop.py, src/stopit/threadstop.py,
126+
src/stopit/utils.py, tests.py: fix nested timeout contexts using
127+
signals
128+
129+
2025-01-03 mmatera <matera@fisica.unlp.edu.ar>
130+
131+
* src/stopit/threadstop.py, tests.py: fix nested timers when using
132+
Threads
133+
134+
2024-01-09 Gilles Lenfant <gilles.lenfant@gmail.com>
135+
136+
* : Merge pull request #31 from kajaste/ulong37 Use ulong for thread id on Python >= 3.7
137+
138+
2019-08-27 Gilles Lenfant <gilles.lenfant@gmail.com>
139+
140+
* : Merge pull request #22 from bartbroere/patch-1 Fix typo in setLevel
141+
142+
2019-08-03 Gilles Lenfant <gilles.lenfant@gmail.com>
143+
144+
* : Merge pull request #21 from graingert/patch-1 link to github from pypi
145+
146+
2018-02-09 Gilles Lenfant <gilles.lenfant@gmail.com>
147+
148+
* : commit 6634d280fb607d18774460988f264752f5cae436 Author: Gilles
149+
Lenfant <gilles.lenfant@gmail.com> Date: Fri Feb 9 00:28:49 2018
150+
+0100
151+
152+
2018-02-09 Gilles Lenfant <gilles.lenfant@gmail.com>
153+
154+
* LICENSE: Create LICENSE
155+
156+
2017-12-31 Gilles Lenfant <gilles.lenfant@gmail.com>
157+
158+
* README.rst: Typo
159+
160+
2017-12-31 Gilles Lenfant <gilles.lenfant@gmail.com>
161+
162+
* README.rst: RST syntax fix
163+
164+
2017-12-31 Gilles Lenfant <gilles.lenfant@gmail.com>
165+
166+
* README.rst: Comment on issue #13 "wontfix"
167+
168+
2016-09-02 Gilles Lenfant <gilles.lenfant@gmail.com>
169+
170+
* : Merge pull request #12 from Randl/patch-1 README typo signaling -> signal fixed
171+
172+
2016-02-18 Gilles Lenfant <gilles.lenfant@gmail.com>
173+
174+
* : Merge pull request #9 from magni-/patch-1 Fix the smallest of typos
175+
176+
2016-02-07 Gilles Lenfant <gilles.lenfant@gmail.com>
177+
178+
* : Merge pull request #8 from guysoft/to_ctx_mgr-typo Fix to_ctx_mrg to_ctx_mgr typo
179+
180+
2015-03-22 Gilles Lenfant <gilles.lenfant@gmail.com>
181+
182+
* CHANGES.rst: Release ready
183+
184+
2015-03-20 Gilles Lenfant <gilles.lenfant@gmail.com>
185+
186+
* README.rst: Supportedversions and rst markup change
187+
188+
2015-03-20 Gilles Lenfant <gilles.lenfant@gmail.com>
189+
190+
* CHANGES.rst, README.rst, setup.py, src/stopit/utils.py: * Fixed bug of timeout context manager as bool under Python 2.x * Tested with Python 3.4
191+
192+
2015-01-01 Gilles Lenfant <gilles.lenfant@gmail.com>
193+
194+
* README.rst: Typo : status <- state
195+
196+
2014-05-02 Gilles Lenfant <gilles.lenfant@gmail.com>
197+
198+
* MANIFEST.in: Added the MANIFEST.in to add missing dist files
199+
200+
2014-05-02 Gilles Lenfant <gilles.lenfant@gmail.com>
201+
202+
* CHANGES.rst, README.rst: Finished the doc before releasing
203+
204+
2014-05-02 Gilles Lenfant <gilles.lenfant@gmail.com>
205+
206+
* README.rst: Some typo on the doc...
207+
208+
2014-05-02 Gilles Lenfant <gilles.lenfant@gmail.com>
209+
210+
* CHANGES.rst, README.rst, setup.py, src/stopit/__init__.py,
211+
src/stopit/signalstop.py, src/stopit/threadstop.py,
212+
src/stopit/utils.py, tests.py: Completed the documentation and
213+
cleanup
214+
215+
2014-05-01 Gilles Lenfant <gilles.lenfant@gmail.com>
216+
217+
* README.rst, setup.py, src/stopit/__init__.py,
218+
src/stopit/signalstop.py, src/stopit/threadstop.py,
219+
src/stopit/utils.py, stopit.py, tests.py: Added timeoutcontrol with
220+
posix signals
221+
222+
2014-03-07 Gilles Lenfant <gilles.lenfant@gmail.com>
223+
224+
* .gitignore: Python 3 cache
225+
226+
2014-02-09 Gilles Lenfant <gilles.lenfant@gmail.com>
227+
228+
* setup.py: Marking 1st release
229+
230+
2014-02-09 Gilles Lenfant <gilles.lenfant@gmail.com>
231+
232+
* README.rst: Fixed rst formatting
233+
234+
2014-02-09 Gilles Lenfant <gilles.lenfant@gmail.com>
235+
236+
* README.rst: Fixed rst warning
237+
238+
2014-02-09 Gilles Lenfant <gilles.lenfant@gmail.com>
239+
240+
* README.rst: Added more doc
241+
242+
2014-02-09 Gilles Lenfant <gilles.lenfant@gmail.com>
243+
244+
* setup.py: marked dev version
245+
246+
2014-02-09 Gilles Lenfant <gilles.lenfant@gmail.com>
247+
248+
* Initial

Makefile

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,10 @@ RM ?= rm
1111
PIP_INSTALL_OPTS ?=
1212

1313
.PHONY: all build \
14+
ChangeLog-without-corrections \
1415
check clean \
1516
develop \
17+
dist \
1618
pytest \
1719
rmChangeLog \
1820
test
@@ -24,7 +26,10 @@ all: develop
2426
develop:
2527
$(PIP) install -e .$(PIP_INSTALL_OPTS)
2628

27-
#: Install timed_threads
29+
dist:
30+
$(PYTHON) -m build --sdist && $(PYTHON) -m build --wheel
31+
32+
#: Install development version of timed_threads
2833
install:
2934
$(PYTHON) -m pip install -e .
3035

@@ -46,7 +51,10 @@ pytest:
4651
rmChangeLog:
4752
$(RM) ChangeLog || true
4853

54+
#: Create ChangeLog from version control without corrections
55+
ChangeLog-without-corrections:
56+
git log --pretty --numstat --summary | $(GIT2CL) >ChangeLog
57+
4958
#: Create a ChangeLog from git via git log and git2cl
50-
ChangeLog: rmChangeLog
51-
git log --pretty --numstat --summary | $(GIT2CL) >$@
52-
patch -p0 ChangeLog < ChangeLog-spell-corrected.diff
59+
ChangeLog: rmChangeLog ChangeLog-without-corrections
60+
patch ChangeLog < ChangeLog-spell-corrected.diff

README.rst

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ Exception
5353
---------
5454

5555
``timed_threads.TimeoutException``
56-
...........................
56+
..................................
5757

5858
A ``timed_threads.TimeoutException`` may be raised in a timeout context manager
5959
controlled block.
@@ -81,7 +81,7 @@ Threading based resources
8181
**after** its execution.
8282

8383
``timed_threads.async_raise``
84-
......................
84+
..............................
8585

8686
A function that raises an arbitrary exception in another thread
8787

@@ -94,7 +94,7 @@ A function that raises an arbitrary exception in another thread
9494
- ``exception`` is the exception class or object to raise in the thread.
9595

9696
``timed_threads.ThreadingTimeout``
97-
...........................
97+
...................................
9898

9999
A context manager that "kills" its inner block execution that exceeds the
100100
provided time.
@@ -191,7 +191,7 @@ indicating (if ``True``) that the block executed normally:
191191
# Objects it created or changed may be considered consistent
192192
193193
``timed_threads.threading_timeoutable``
194-
................................
194+
.......................................
195195

196196
A decorator that kills the function or method it decorates, if it does not
197197
return within a given time frame.
@@ -616,10 +616,10 @@ Links
616616
=====
617617

618618
Source code (clone, fork, ...)
619-
https://github.com/glenfant/timed_threads
619+
https://github.com/Mathics3/python-timed-threads/timed_threads
620620

621621
Issues tracker
622-
https://github.com/glenfant/timed_threads/issues
622+
https://github.com/Mathics3/python-timed-threads/timed_threads/issues
623623

624624
PyPI
625625
https://pypi.python.org/pypi/timed_threads

0 commit comments

Comments
 (0)