Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v3.0.0 #735

Merged
merged 185 commits into from
May 2, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
185 commits
Select commit Hold shift + click to select a range
faa7d66
Reenable develop
evhub Nov 14, 2022
d13217b
Fix typedef wrapping
evhub Nov 14, 2022
c14787a
Minor code cleanup
evhub Nov 14, 2022
9379cf5
Fix py2 test
evhub Nov 14, 2022
0a5cf57
Warn about overriding builtins
evhub Nov 14, 2022
12933bd
Fix mypy test errors
evhub Nov 15, 2022
b354bf8
Change error message
evhub Nov 15, 2022
44a8f82
Fix errmsg test
evhub Nov 15, 2022
74d0935
Increase compiler strictness
evhub Nov 15, 2022
43e70b8
Fix tests
evhub Nov 15, 2022
106d7a3
Clarify kernel names
evhub Nov 15, 2022
e5c9f66
Fix pyston test
evhub Nov 15, 2022
5216913
Improve error messages
evhub Nov 15, 2022
66c5fcc
Add <: bound spec op
evhub Nov 17, 2022
5c4a450
Improve --no-wrap docs
evhub Nov 18, 2022
9561b6e
Fix line nums, no-wrap testing
evhub Nov 18, 2022
b1915af
Use --no-wrap in kernel
evhub Nov 18, 2022
c7822f5
Fix test
evhub Nov 18, 2022
64c8c5a
Improve docs, perf
evhub Nov 18, 2022
7f729de
Improve --jupyter perf
evhub Nov 18, 2022
735a960
Clean up command
evhub Nov 19, 2022
4ee388a
Fix tests on old Pythons
evhub Nov 22, 2022
9000c32
Fix py39 test
evhub Nov 23, 2022
63a7e3c
Add another wrong char check
evhub Nov 23, 2022
0c16a33
Remove ur/ru strs
evhub Nov 23, 2022
081598c
Add typing backport
evhub Nov 27, 2022
15be37c
Improve variable type annotations
evhub Nov 27, 2022
9660252
Further improve univ var typedefs
evhub Nov 29, 2022
eb35ec1
Fix tests
evhub Nov 29, 2022
4e18d4a
Improve timing
evhub Dec 1, 2022
11c4132
Fix recursion limit
evhub Dec 2, 2022
f979622
Improve dotted funcdef
evhub Dec 2, 2022
3cc98f9
Add numpy support to all_equal
evhub Dec 2, 2022
b0d2e33
Start adding cartesian_product
evhub Dec 2, 2022
a7b2deb
Fix cartesian_product
evhub Dec 2, 2022
b608dfc
Add numpy support to flatten
evhub Dec 2, 2022
4bf1eb0
Improve copying, docs
evhub Dec 2, 2022
9108b71
Fix teeing, copying
evhub Dec 3, 2022
4f26087
Fix py2 error
evhub Dec 5, 2022
ac9be06
Improve docstring
evhub Dec 5, 2022
0bacc51
Improve builtins
evhub Dec 6, 2022
caca549
Rename of to call
evhub Dec 6, 2022
d430528
Make chain of reiterables reiterable
evhub Dec 7, 2022
6655970
Overhaul tee, add safe_call + Expected, improve fmap typing
evhub Dec 7, 2022
58ed15d
Add multisets
evhub Dec 7, 2022
dab943a
Fix py2 __bool__, remove unclear unicode alts
evhub Dec 8, 2022
d77cce4
Remove more unicode alts
evhub Dec 8, 2022
645ec13
Add multiset.total
evhub Dec 8, 2022
793a412
Fix multiset comparisons
evhub Dec 8, 2022
c450e5a
Support set literal unpacking
evhub Dec 8, 2022
d321aea
Add cycle
evhub Dec 8, 2022
0072c6e
Add numpy cycle support
evhub Dec 8, 2022
373f621
Remove some numpy support
evhub Dec 9, 2022
f4f5f6c
Fix py2, improve docs, tests
evhub Dec 9, 2022
234df71
Add windowed builtin
evhub Dec 9, 2022
7c86b4a
Finish windows built-in
evhub Dec 9, 2022
cacf227
Improve docs, tests
evhub Dec 9, 2022
7ea9746
Change windows to windowsof
evhub Dec 10, 2022
74aaaf8
Update requirements
evhub Dec 10, 2022
d2ed8ac
Make addpattern nary
evhub Dec 10, 2022
7c4a0d8
Minor cleanup
evhub Dec 10, 2022
6bbb60e
Reduce v2 warnings
evhub Dec 10, 2022
3d5ec7f
Add fillvalue to groupsof
evhub Dec 10, 2022
aca8019
Fix typing
evhub Dec 11, 2022
d185a6a
Improve builtins
evhub Dec 13, 2022
f531dc1
Update pre-commit hooks
evhub Dec 15, 2022
0f14d25
Make builtins weakrefable
evhub Dec 15, 2022
9d9e9d4
Fix pypy error
evhub Dec 15, 2022
f0c01fd
Improve header
evhub Dec 15, 2022
b80f113
Fix py2
evhub Dec 16, 2022
6d1a47d
Improve docs
evhub Dec 17, 2022
9b97a11
Fix multiple MatchErrors
evhub Dec 24, 2022
67dd447
Fix py2, header recompilation
evhub Dec 24, 2022
90bb2b7
Further fix header handling
evhub Dec 24, 2022
42d53f7
Attempt to fix pickling
evhub Dec 24, 2022
6344246
Fix header recompilation/pickling
evhub Dec 24, 2022
78e1cc1
Fix py2
evhub Dec 24, 2022
71b6e43
Add and_then, join to Expected
evhub Dec 25, 2022
5bd0e63
Add result_or, unwrap to Expected
evhub Dec 25, 2022
e7a2316
Add or_else, result_or_else to Expected
evhub Dec 25, 2022
a137c16
Improve matching on datas with defaults
evhub Dec 26, 2022
5e697ce
Improve docs
evhub Dec 26, 2022
3786515
Improve paren balancer
evhub Dec 27, 2022
683ea4e
Update pre-commit
evhub Dec 27, 2022
2d2cdb3
Undo fmap of None is None
evhub Dec 27, 2022
cc065b7
Add new pipe operators
evhub Dec 28, 2022
d3749f3
Fix local sys binding
evhub Dec 28, 2022
7f62072
Fix docs
evhub Dec 28, 2022
1a5ac66
Fix MatchError pickling
evhub Dec 28, 2022
3f67b6f
Release v2.2.0
evhub Dec 28, 2022
0f7339d
Fix extras test
evhub Dec 28, 2022
fa928c3
Merge branch 'develop' of https://github.com/evhub/coconut into develop
evhub Dec 30, 2022
db20304
Reenable develop
evhub Dec 30, 2022
ba13d13
Add map_error to Expected
evhub Jan 1, 2023
e9c5a77
Clean up header
evhub Jan 1, 2023
a15ebc7
Improve Expected help
evhub Jan 2, 2023
bfe2d28
Improve header_info, --target
evhub Jan 2, 2023
42fd75b
Improve docs
evhub Jan 2, 2023
269de48
Add implicit coefficient syntax
evhub Jan 7, 2023
d6e378d
Improve set matching
evhub Jan 8, 2023
04db2a9
Fix broken test
evhub Jan 8, 2023
f5d0ec2
Fix pypy test
evhub Jan 8, 2023
afa0e6c
Finish coefficient syntax
evhub Jan 9, 2023
1191ada
Fix tests
evhub Jan 10, 2023
dff2b4f
Further fix tests
evhub Jan 10, 2023
ec2ecf3
Test removing jedi pin
evhub Jan 11, 2023
b4e174f
Fix pinned versions
evhub Jan 11, 2023
e8a896a
Clean up constants test
evhub Jan 11, 2023
6ef2c18
Fix coefficients, pypy, errmsgs
evhub Jan 12, 2023
1f2b187
Turn back off comp graph on pypy
evhub Jan 12, 2023
c7cca8c
Improve typing, refcounting
evhub Jan 13, 2023
d5e5f78
Test making pypy and cpy match
evhub Jan 14, 2023
248530f
Further test making pypy and cpy match
evhub Jan 14, 2023
a3d3d45
Test with no computation graph
evhub Jan 14, 2023
4743345
Add torch support
evhub Jan 14, 2023
68ae7e1
Get some more debugging info
evhub Jan 14, 2023
3aea6be
Attempt to fix pypy
evhub Jan 15, 2023
6dff5ff
Rename to --no-wrap-types
evhub Jan 20, 2023
baf124f
Fix multi_enumerate object arrays
evhub Jan 27, 2023
cd24a4f
Fix kernelspec test
evhub Jan 28, 2023
d12cd99
Link new emacs support
evhub Jan 30, 2023
a67bbe8
Fix jupyter qtconsole
evhub Feb 3, 2023
2aeb24d
Fix multi_enumerate
evhub Feb 11, 2023
a2565e0
Allow addpattern with no existing function
evhub Feb 19, 2023
f74465e
Add (is not) and (not in)
evhub Feb 19, 2023
1c21ca1
Add some more tests
evhub Feb 28, 2023
f94bf8f
Improve error message
evhub Mar 7, 2023
26b3b7c
Properly universalize dicts
evhub Mar 11, 2023
7e47001
Improve test error messages
evhub Mar 12, 2023
96f69e5
Fix numpy test
evhub Mar 12, 2023
9ef03b4
Fix mypy error
evhub Mar 12, 2023
a557bb9
Further fix mypy
evhub Mar 12, 2023
598bdbd
Fix py2 dict issues
evhub Mar 17, 2023
9af1fcb
Fix py35 issues
evhub Mar 18, 2023
d652d91
Fix more compat issues
evhub Mar 18, 2023
5985829
Fix broken test
evhub Mar 18, 2023
0b75f88
Fix dict, typing errors
evhub Mar 18, 2023
0b4cc09
Fix xontrib unloading
evhub Mar 30, 2023
cb36931
Disable coconut in xonsh execx
evhub Mar 31, 2023
bda76bf
Fix (in) operator
evhub Apr 4, 2023
1801648
Add combinator tests
evhub Apr 8, 2023
34c9568
Fix xonsh line numbers
evhub Apr 11, 2023
d68aa05
Fix xontrib unloading
evhub Apr 11, 2023
4f93fa6
Improve xonsh test
evhub Apr 11, 2023
c03c020
Fix combinator tests
evhub Apr 14, 2023
7281f15
Make async/await hard kwds
evhub Apr 15, 2023
f725b58
Fix super() in match func
evhub Apr 16, 2023
74b0ffb
Allow pipe into await
evhub Apr 16, 2023
d209297
Fix --verbose
evhub Apr 16, 2023
4a448f5
Disallow confusing syntax
evhub Apr 18, 2023
62db4b0
Remove implicit getattr partials
evhub Apr 21, 2023
6be6e90
Add copyclosure functions
evhub Apr 21, 2023
1e86b87
Fix dotted copyclosure funcs
evhub Apr 22, 2023
71ba4e9
Minor performance tuning
evhub Apr 22, 2023
b2fb794
Fix mypy errors
evhub Apr 22, 2023
bc645c4
Fix dict union
evhub Apr 22, 2023
263fc06
Fix root, docs
evhub Apr 22, 2023
7f10894
Fix reqs
evhub Apr 22, 2023
9318827
Start implementing protocol intersection
evhub Apr 23, 2023
be2656e
Add protocol intersection operator
evhub Apr 23, 2023
c82a8cf
Fix protocol intersection
evhub Apr 23, 2023
d5ad1f8
Add protocol operators
evhub Apr 24, 2023
f146d1b
Lots of fixes
evhub Apr 24, 2023
c88dcb4
Make --jobs default to sys
evhub Apr 24, 2023
a36776a
Fix wrap_comment
evhub Apr 24, 2023
2799c41
Fix --jobs
evhub Apr 25, 2023
932de0e
Fix requirements
evhub Apr 25, 2023
0a30552
Fix test errors
evhub Apr 25, 2023
3628e4f
Fix annotation wrapping
evhub Apr 26, 2023
4938f4b
Fix typing copyclosure funcs
evhub Apr 26, 2023
6b398e6
Attempt to fix multiprocessing
evhub Apr 26, 2023
55bd706
Increase stack size
evhub Apr 29, 2023
d26cd46
Fix ipy reqs
evhub Apr 29, 2023
a4514dc
Fix more test errors
evhub Apr 29, 2023
2748093
Improve pandas support
evhub Apr 29, 2023
4a04492
Improve .$[]
evhub Apr 30, 2023
52553e9
Fix req errors
evhub Apr 30, 2023
71bcdf7
Further fix reqs
evhub Apr 30, 2023
23d4959
Fix kernel
evhub Apr 30, 2023
b81719e
Improve fmap for pandas
evhub Apr 30, 2023
6041cba
Fix test errors
evhub Apr 30, 2023
fa66956
Fix tests
evhub Apr 30, 2023
c6c2ae8
Fix more test errors
evhub May 1, 2023
b233ebe
Update pre-commit
evhub May 1, 2023
dcf89c0
Prepare for v3 release
evhub May 1, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 1 addition & 1 deletion .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ repos:
args:
- --ignore=W503,E501,E265,E402,F405,E305,E126
- repo: https://github.com/pre-commit/mirrors-autopep8
rev: v2.0.1
rev: v2.0.2
hooks:
- id: autopep8
args:
Expand Down
410 changes: 322 additions & 88 deletions DOCS.md

Large diffs are not rendered by default.

1 change: 0 additions & 1 deletion HELP.md
Original file line number Diff line number Diff line change
Expand Up @@ -1132,7 +1132,6 @@ Another useful Coconut feature is implicit partials. Coconut supports a number o
```coconut
.attr
.method(args)
obj.
func$
seq[]
iter$[]
Expand Down
1 change: 1 addition & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ global-include *.md
global-include *.json
global-include *.toml
global-include *.coco
global-include *.ini
global-include py.typed
prune coconut/tests/dest
prune docs
Expand Down
37 changes: 25 additions & 12 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ dev-py3: clean setup-py3
.PHONY: setup
setup:
python -m ensurepip
python -m pip install --upgrade "setuptools<58" wheel pip pytest_remotedata
python -m pip install --upgrade setuptools wheel pip pytest_remotedata

.PHONY: setup-py2
setup-py2:
Expand All @@ -32,7 +32,7 @@ setup-py2:
.PHONY: setup-py3
setup-py3:
python3 -m ensurepip
python3 -m pip install --upgrade "setuptools<58" wheel pip pytest_remotedata
python3 -m pip install --upgrade setuptools wheel pip pytest_remotedata

.PHONY: setup-pypy
setup-pypy:
Expand All @@ -42,7 +42,7 @@ setup-pypy:
.PHONY: setup-pypy3
setup-pypy3:
pypy3 -m ensurepip
pypy3 -m pip install --upgrade "setuptools<58" wheel pip pytest_remotedata
pypy3 -m pip install --upgrade setuptools wheel pip pytest_remotedata

.PHONY: install
install: setup
Expand All @@ -57,11 +57,11 @@ install-py3: setup-py3
python3 -m pip install -e .[tests]

.PHONY: install-pypy
install-pypy:
install-pypy: setup-pypy
pypy -m pip install -e .[tests]

.PHONY: install-pypy3
install-pypy3:
install-pypy3: setup-pypy3
pypy3 -m pip install -e .[tests]

.PHONY: format
Expand Down Expand Up @@ -155,11 +155,19 @@ test-verbose: clean
python ./coconut/tests/dest/runner.py
python ./coconut/tests/dest/extras.py

# same as test-mypy but uses --verbose and --check-untyped-defs
# same as test-mypy but uses --verbose
.PHONY: test-mypy-verbose
test-mypy-verbose: export COCONUT_USE_COLOR=TRUE
test-mypy-verbose: clean
python ./coconut/tests --strict --force --target sys --verbose --jobs 0 --keep-lines --mypy --follow-imports silent --ignore-missing-imports --allow-redefinition
python ./coconut/tests/dest/runner.py
python ./coconut/tests/dest/extras.py

# same as test-mypy but uses --check-untyped-defs
.PHONY: test-mypy-all
test-mypy-all: export COCONUT_USE_COLOR=TRUE
test-mypy-all: clean
python ./coconut/tests --strict --force --target sys --verbose --keep-lines --mypy --follow-imports silent --ignore-missing-imports --allow-redefinition --check-untyped-defs
python ./coconut/tests --strict --force --target sys --keep-lines --mypy --follow-imports silent --ignore-missing-imports --allow-redefinition --check-untyped-defs
python ./coconut/tests/dest/runner.py
python ./coconut/tests/dest/extras.py

Expand Down Expand Up @@ -198,6 +206,12 @@ test-watch: clean
test-mini:
coconut ./coconut/tests/src/cocotest/agnostic ./coconut/tests/dest/cocotest --force --jobs 0

.PHONY: debug-comp-crash
debug-comp-crash: export COCONUT_USE_COLOR=TRUE
debug-comp-crash: export COCONUT_PURE_PYTHON=TRUE
debug-comp-crash:
python -X dev -m coconut ./coconut/tests/src/cocotest/agnostic ./coconut/tests/dest/cocotest --strict --line-numbers --keep-lines --force --jobs 0

.PHONY: debug-test-crash
debug-test-crash:
python -X dev ./coconut/tests/dest/runner.py
Expand All @@ -221,7 +235,7 @@ clean:

.PHONY: wipe
wipe: clean
rm -rf vprof.json profile.log *.egg-info
rm -rf vprof.json profile.log *.egg-info
-find . -name "__pycache__" -delete
-C:/GnuWin32/bin/find.exe . -name "__pycache__" -delete
-find . -name "*.pyc" -delete
Expand Down Expand Up @@ -253,19 +267,18 @@ check-reqs:
python ./coconut/requirements.py

.PHONY: profile-parser
profile-parser: export COCONUT_USE_COLOR=TRUE
profile-parser: export COCONUT_PURE_PYTHON=TRUE
profile-parser:
coconut ./coconut/tests/src/cocotest/agnostic ./coconut/tests/dest/cocotest --force --profile --verbose --recursion-limit 4096 2>&1 | tee ./profile.log

.PHONY: profile-time
profile-time: export COCONUT_PURE_PYTHON=TRUE
profile-time:
vprof -c h "coconut ./coconut/tests/src/cocotest/agnostic ./coconut/tests/dest/cocotest --force" --output-file ./vprof.json
vprof -c h "./coconut ./coconut/tests/src/cocotest/agnostic ./coconut/tests/dest/cocotest --force" --output-file ./vprof.json

.PHONY: profile-memory
profile-memory: export COCONUT_PURE_PYTHON=TRUE
profile-memory:
vprof -c m "coconut ./coconut/tests/src/cocotest/agnostic ./coconut/tests/dest/cocotest --force" --output-file ./vprof.json
vprof -c m "./coconut ./coconut/tests/src/cocotest/agnostic ./coconut/tests/dest/cocotest --force" --output-file ./vprof.json

.PHONY: view-profile
view-profile:
Expand Down