Skip to content

Commit bc8919f

Browse files
committed
0.33.2 release
1 parent 9d82a0e commit bc8919f

File tree

13 files changed

+77
-47
lines changed

13 files changed

+77
-47
lines changed

Diff for: VERSION

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
0.33.1
1+
0.33.2

Diff for: docs/source/_static/custom.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1398,7 +1398,7 @@ function useJsonPatchCallback(initial) {
13981398
// We CANNOT mutate the part of the document because React checks some
13991399
// attributes of the model (e.g. model.attributes.style is checked for
14001400
// identity).
1401-
doc.current = applyNonMutativePatch(doc, patch);
1401+
doc.current = applyNonMutativePatch(doc.current, patch);
14021402
} else {
14031403
// We CAN mutate the document here though because we know that nothing above
14041404
// The patch `path` is changing. Thus, maintaining the identity for that section

Diff for: docs/source/changelog.rst

+43-28
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,19 @@ Changelog
22
=========
33

44

5-
0.33.1
6-
------
5+
:release:`0.33.2`
6+
-----------------
7+
8+
A release to fix a memory leak caused by event handlers that were not being removed
9+
when components updated.
10+
11+
**Closed Issues**
12+
13+
- Non-root component event handlers cause memory leaks - :issue:`510`
14+
15+
16+
:release:`0.33.1`
17+
-----------------
718

819
A hot fix for a regression introduced in ``0.33.0`` where the root element of the layout
920
could not be updated. See :issue:`498` for more info. A regression test for this will
@@ -14,8 +25,8 @@ be introduced in a future release.
1425
- Fix 498 pt1 - :pull:`501`
1526

1627

17-
0.33.0
18-
------
28+
:release:`0.33.0`
29+
-----------------
1930

2031
The most significant fix in this release is for a regression which manifested in
2132
:issue:`480`, :issue:`489`, and :issue:`451` which resulted from an issue in the way
@@ -57,8 +68,8 @@ yet.
5768
- Update issue form - :pull:`471`
5869

5970

60-
0.32.0
61-
------
71+
:release:`0.32.0`
72+
-----------------
6273

6374
In addition to a variety of bug fixes and other minor improvements, there's a breaking
6475
change to the custom component interface - instead of exporting multiple functions that
@@ -93,8 +104,8 @@ See :ref:`Custom JavaScript Components` for details on the new interface.
93104
- fix #429 - move client JS to top of src/ dir - :pull:`430`
94105

95106

96-
0.31.0
97-
------
107+
:release:`0.31.0`
108+
-----------------
98109

99110
The :class:`~idom.core.layout.Layout` is now a prototype, and ``Layout.update`` is no
100111
longer a public API. This is combined with a much more significant refactor of the
@@ -129,8 +140,8 @@ Instead, a unique ID is generated internally which is associated with the
129140
- fix #419 and #412 - :pull:`422`
130141

131142

132-
0.30.1
133-
------
143+
:release:`0.30.1`
144+
-----------------
134145

135146
Removes the usage of the :func:`id` function for generating unique ideas because there
136147
were situations where the IDs bound to the lifetime of an object are problematic. Also
@@ -145,8 +156,8 @@ lead to confusing bugs.
145156
- add changelog entry for :ref:`0.30.0` - :pull:`415`
146157

147158

148-
0.30.0
149-
------
159+
:release:`0.30.0`
160+
-----------------
150161

151162
With recent changes to the custom component interface, it's now possible to remove all
152163
runtime reliance on NPM. Doing so has many virtuous knock-on effects:
@@ -189,8 +200,8 @@ desired library from a CDN.
189200
- Remove all runtime reliance on NPM - :pull:`398`
190201

191202

192-
0.29.0
193-
------
203+
:release:`0.29.0`
204+
-----------------
194205

195206
Contains breaking changes, the most significant of which are:
196207

@@ -220,8 +231,8 @@ Contains breaking changes, the most significant of which are:
220231
- correctly serialize File object - :commit:`a2398dc`
221232

222233

223-
0.28.0
224-
------
234+
:release:`0.28.0`
235+
-----------------
225236

226237
Includes a wide variety of improvements:
227238

@@ -274,8 +285,8 @@ and breaking changes, the most significant of which are:
274285
- pass children as props to mount() - :commit:`9494bc0`
275286

276287

277-
0.27.0
278-
------
288+
:release:`0.27.0`
289+
-----------------
279290

280291
Introduces changes to the interface for custom Javascript components. This now allows
281292
JS modules to export a ``mount(element, component, props)`` function which can be used
@@ -291,8 +302,8 @@ variety of component implementations.
291302
- federate modules with mount function - :commit:`bf63a62`
292303

293304

294-
0.26.0
295-
------
305+
:release:`0.26.0`
306+
-----------------
296307

297308
A collection of minor fixes and changes that, as a whole, add up to something requiring
298309
a minor release. The most significant addition is a fix for situations where a
@@ -309,8 +320,9 @@ update deletes the original button.
309320
- check component has model state before render - :commit:`6a50d56`
310321
- rename daemon to run_in_thread + misc - :commit:`417b687`
311322

312-
0.25.0
313-
------
323+
324+
:release:`0.25.0`
325+
-----------------
314326

315327
Completely refactors :ref:`Layout Dispatchers <Layout Dispatcher>` by switching from a
316328
class-based approach to one that leverages pure functions. While the logic itself isn't
@@ -329,8 +341,9 @@ of ``anyio``.
329341
- require anyio>=3.0 - :commit:`24aed28`
330342
- refactor dispatchers - :commit:`ce8e060`
331343

332-
0.24.0
333-
------
344+
345+
:release:`0.24.0`
346+
-----------------
334347

335348
This release contains an update that allows components and elements to have "identity".
336349
That is, their state can be preserved across updates. Before this point, only the state
@@ -359,15 +372,17 @@ to allow users to enable this behavior early.
359372
- fix docs typos - :commit:`42b2e20`
360373
- fixes: #331 - add roadmap to docs - :commit:`4226c12`
361374

362-
0.23.1
363-
------
375+
376+
:release:`0.23.1`
377+
-----------------
364378

365379
**Highlighted Commits:**
366380

367381
- fix non-deterministic return order in install() - :commit:`494d5c2`
368382

369-
0.23.0
370-
------
383+
384+
:release:`0.23.0`
385+
-----------------
371386

372387
**Highlighted Commits:**
373388

Diff for: docs/source/conf.py

+1
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
"pull": ("https://github.com/idom-team/idom/pull/%s", "#"),
3535
"discussion": ("https://github.com/idom-team/idom/discussions/%s", "#"),
3636
"commit": ("https://github.com/idom-team/idom/commit/%s", ""),
37+
"release": ("https://pypi.org/project/idom/%s", "v%s"),
3738
}
3839

3940
# -- General configuration ---------------------------------------------------

Diff for: docs/source/custom_js/package-lock.json

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: docs/source/developer-guide.rst

+2-2
Original file line numberDiff line numberDiff line change
@@ -295,8 +295,8 @@ bit like this:
295295

296296
.. code-block:: text
297297
298-
X.Y.Z
299-
-----
298+
:release:`X.Y.Z`
299+
----------------
300300
301301
The release summary...
302302

Diff for: noxfile.py

+6-2
Original file line numberDiff line numberDiff line change
@@ -198,12 +198,16 @@ def tag(session: Session):
198198
install_requirements_file(session, "make-release")
199199
session.run("pysemver", "check", version)
200200

201+
expected_title = f":release:`{version}`"
201202
changelog_file = ROOT / "docs" / "source" / "changelog.rst"
202203
for line in changelog_file.read_text().splitlines():
203-
if line == version:
204+
if line == expected_title:
204205
break
205206
else:
206-
session.error(f"No changelog entry for {version} in {changelog_file}")
207+
session.error(
208+
f"No changelog entry for {version} in {changelog_file} - "
209+
f"make sure you have a title section called {expected_title}."
210+
)
207211

208212
session.run("git", "tag", version, external=True)
209213

Diff for: scripts/common/github_utils.py

+14-4
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,33 @@
11
from __future__ import annotations
22

33
from datetime import datetime
4-
from typing import Any, Iterator
4+
from typing import Any, Iterator, Optional
55

66
import requests
77
from dateutil.parser import isoparse
88

99

1010
REPO_NAME = "idom-team/idom"
11-
STR_DATE_FORMAT = r"%Y-%m-%d"
1211

1312

1413
def last_release_date() -> datetime:
1514
response = requests.get(f"https://api.github.com/repos/{REPO_NAME}/releases/latest")
1615
return isoparse(response.json()["published_at"])
1716

1817

19-
def date_range_query(start: datetime, stop: datetime = datetime.now()) -> str:
20-
return start.strftime(STR_DATE_FORMAT) + ".." + stop.strftime(STR_DATE_FORMAT)
18+
def date_range_query(
19+
start: Optional[datetime] = None,
20+
stop: Optional[datetime] = None,
21+
) -> str:
22+
assert start or stop, "No date range given"
23+
24+
if stop is None:
25+
return ">" + start.isoformat()
26+
27+
if start is None:
28+
return "<=" + stop.isoformat()
29+
30+
return start.isoformat() + ".." + stop.isoformat()
2131

2232

2333
def search_idom_repo(query: str) -> Iterator[Any]:

Diff for: src/client/package-lock.json

+4-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: src/client/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
"publish": "npm --workspaces publish",
1818
"test": "npm --workspaces test"
1919
},
20-
"version": "0.33.1",
20+
"version": "0.33.2",
2121
"workspaces": [
2222
"./packages/*"
2323
]

Diff for: src/client/packages/idom-app-react/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,5 +20,5 @@
2020
"format": "prettier --write ./src",
2121
"test": "echo 'no tests'"
2222
},
23-
"version": "0.33.1"
23+
"version": "0.33.2"
2424
}

Diff for: src/client/packages/idom-client-react/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -29,5 +29,5 @@
2929
"test": "uvu tests"
3030
},
3131
"type": "module",
32-
"version": "0.33.1"
32+
"version": "0.33.2"
3333
}

Diff for: src/idom/__init__.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111

1212
__author__ = "idom-team"
13-
__version__ = "0.33.1" # DO NOT MODIFY
13+
__version__ = "0.33.2" # DO NOT MODIFY
1414

1515
__all__ = [
1616
"component",

0 commit comments

Comments
 (0)