Skip to content

Commit c6f0183

Browse files
committed
update README and version
1 parent 7e4cc05 commit c6f0183

5 files changed

Lines changed: 12 additions & 37 deletions

File tree

README.md

Lines changed: 10 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,11 @@ Run `wypp --help` for usage information.
3737

3838
Here is the [Changelog](ChangeLog.md).
3939

40+
* **Breaking change** in version 2.0.0 (2025-0-24): type annotations are now only
41+
checked when entering/exiting a function. Before, certain things such as lists
42+
or callable were put behind wrapper objects. For example, these wrappers ensured
43+
that only ints could be appended to a list of type `list[int]`. However, these
44+
wrappers came with several drawbacks, so they were removed in release 2.0.0
4045
* **Breaking change** in version 0.12.0 (2021-09-28): type annotations are now checked
4146
dynamically when the code is executed.
4247
This behavior can be deactivated in the settings of the extension.
@@ -47,7 +52,10 @@ You need an explicit import statement such as `from wypp import *`.
4752

4853
Here is a screen shot:
4954

50-
![Screenshot](screenshot.jpg)
55+
![Screenshot](screenshot.png)
56+
57+
There is also a visualization mode, similar to [Python Tutor](https://pythontutor.com/):
58+
![Screenshot](screenshot2.png)
5159

5260
When hitting the RUN button, the vscode extension saves the current file, opens
5361
a terminal and executes the file with Python, staying in interactive mode after
@@ -56,7 +64,7 @@ all definitions have been executed.
5664
The file being executed should contain the following import statement in the first line:
5765

5866
~~~python
59-
from wypp import*
67+
from wypp import *
6068
~~~
6169

6270
Running the file with the RUN button makes the following features available:
@@ -190,39 +198,6 @@ before the type being defined, for example to define recursive types or as
190198
the type of `self` inside of classes. In fact, there is no check at all to make sure
191199
that anotations refer to existing types.
192200

193-
For builtin `list[T]` the following operations are typechecked:
194-
- `list[idx]`
195-
- `list[idx] = value`
196-
- `list += [...]`
197-
- `list.append(value)`
198-
- `list.insert(idx, value)`
199-
- `list.extend(iterator)`
200-
- `for i in list:` (Iterator)
201-
202-
For builtin `set[T]` these operations are typechecked:
203-
- `set.add(value)`
204-
- `set.pop()`
205-
- `set.remove(value)` Value must be of `T`
206-
- `set.update(other, ...)`
207-
- `value in set` Value must be of `T`
208-
- `for i in set:` (Iterator)
209-
210-
For builtin `dict[K,V]` the supported typechecked operations are:
211-
- `dict.get(key)`
212-
- `dict.items()`
213-
- `dict.keys()`
214-
- `dict.pop()`
215-
- `dict.popitem()`
216-
- `dict.setdefault(key, default)` <br/>_Note:_ In contrast to the standard library `default` is required, to avoid inserting `None` as value into otherwise typed dicts.
217-
- `dict.update(other)`
218-
- `dict.update(key=value, ...)`
219-
- `dict.values()`
220-
- `key in dict` Key must be of `K`
221-
- `del dict[key]`
222-
- `for k in dict` (Iterator)
223-
- `reversed(dict)`
224-
- `dict[key]`
225-
- `dict[key] = value`
226201

227202
## Module name and current working directory
228203

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,11 @@
33
"displayName": "Write Your Python Program!",
44
"description": "A user friendly python environment for beginners",
55
"license": "See license in LICENSE",
6-
"version": "1.3.2",
6+
"version": "2.0.",
77
"publisher": "StefanWehr",
88
"icon": "icon.png",
99
"engines": {
10-
"vscode": "^1.85.0"
10+
"vscode": "^1.94.2"
1111
},
1212
"keywords": [
1313
"Python",

screenshot.jpg

-194 KB
Binary file not shown.

screenshot.png

322 KB
Loading

screenshot2.png

226 KB
Loading

0 commit comments

Comments
 (0)