Skip to content

Conversation

@jfeser
Copy link
Contributor

@jfeser jfeser commented Nov 14, 2025

No description provided.

@eb8680 eb8680 merged commit f312c8f into master Nov 14, 2025
5 checks passed
@eb8680 eb8680 deleted the jf-pypandoc-ci branch November 14, 2025 15:58
eb8680 added a commit that referenced this pull request Dec 4, 2025
* Release v0.2.3 (#374)

* Install prettyprinter for term when library is available (#386)

* install prettyprinter for term when library is available

* lint

* move code into types.py

* fix pypandoc issue (#397)

* Convert evaluate to a singledispatch (#398)

* convert evaluate to a singledispatch

* lint

* add jnp.pi and ArrayTerm.T (#394)

* Deprecate defterm (#399)

* deprecate defterm

* remove defterm case

* remove defterm

* lint

* evaluate distribution arguments

* lint

* remove interpreter

* Revert "remove interpreter"

This reverts commit 3044277.

* wip

* lint

* Rework numpyro distribution handling to enable symbolic distributions and handling of distribution methods (#311)

* refactor distribution operations

* add a test for typeof of distributions

* add tests for symbolic dists/arguments

* introduce operations for distribution methods

* comment

* fix tests

* work around #310

* replace hack with new hack

* tweak repr for _BaseOperation

* lint

* work around #312

* clean up access to dist ops

* wip

* wip

* add type annotations to get correct term conversion

* lint

* include distribution arguments as properties

* fix distribution calls

* try again

* fixes

* format

* Box the output of `__type_rule__` (#387)

* box the output of __type_rule__

* fix tests

* fix tests

* require callers of __type_rule__ to box arguments

* fix

* move Box out of ops.types

* lint

* fix test

* fix syntactic_eq implementation for jax arrays (#405)

* Fix recursion error in sizesof (#406)

* fix recursion error in sizesof

* format

* Allow `_BaseOperation` subclasses to have an overrideable `apply` method (#414)

* stash

* fixes

* initial

* wip

* lint

* ensure each subclass has a fresh operation

* wip

* wip

* lint

* wip

* wip

* lint

* refactor class method support

* move defops

* fix test

* remove singledispatch case and add test

* move definition

* cleanup

* simplify

* cleanup

* lint

* fix failing test

* fix classmethod

* __isabstractmethod__

* revert

---------

Co-authored-by: Eli <eli@basis.ai>

* lint

---------

Co-authored-by: Tim Cooijmans <cooijmans.tim@gmail.com>
Co-authored-by: Eli <eli@basis.ai>
jfeser added a commit that referenced this pull request Dec 5, 2025
* Release v0.2.3 (#374)

* Install prettyprinter for term when library is available (#386)

* install prettyprinter for term when library is available

* lint

* move code into types.py

* fix pypandoc issue (#397)

* Convert evaluate to a singledispatch (#398)

* convert evaluate to a singledispatch

* lint

* add jnp.pi and ArrayTerm.T (#394)

* Deprecate defterm (#399)

* deprecate defterm

* remove defterm case

* remove defterm

* lint

* evaluate distribution arguments

* lint

* remove interpreter

* Revert "remove interpreter"

This reverts commit 3044277.

* wip

* lint

* Rework numpyro distribution handling to enable symbolic distributions and handling of distribution methods (#311)

* refactor distribution operations

* add a test for typeof of distributions

* add tests for symbolic dists/arguments

* introduce operations for distribution methods

* comment

* fix tests

* work around #310

* replace hack with new hack

* tweak repr for _BaseOperation

* lint

* work around #312

* clean up access to dist ops

* wip

* wip

* add type annotations to get correct term conversion

* lint

* include distribution arguments as properties

* fix distribution calls

* try again

* fixes

* format

* Box the output of `__type_rule__` (#387)

* box the output of __type_rule__

* fix tests

* fix tests

* require callers of __type_rule__ to box arguments

* fix

* move Box out of ops.types

* lint

* fix test

* fix syntactic_eq implementation for jax arrays (#405)

* Fix recursion error in sizesof (#406)

* fix recursion error in sizesof

* format

* Allow `_BaseOperation` subclasses to have an overrideable `apply` method (#414)

* stash

* fixes

* initial

* wip

* lint

* ensure each subclass has a fresh operation

* wip

* wip

* lint

* wip

* wip

* lint

* refactor class method support

* move defops

* fix test

* remove singledispatch case and add test

* move definition

* cleanup

* simplify

* cleanup

* lint

* fix failing test

* fix classmethod

* __isabstractmethod__

* revert

---------

Co-authored-by: Eli <eli@basis.ai>

* Try pulling in pyproject.toml from staging-llm to master (#425)

---------

Co-authored-by: Jack Feser <jack.feser@gmail.com>
Co-authored-by: Tim Cooijmans <cooijmans.tim@gmail.com>
datvo06 pushed a commit to datvo06/effectful that referenced this pull request Dec 8, 2025
* Release v0.2.3 (BasisResearch#374)

* Install prettyprinter for term when library is available (BasisResearch#386)

* install prettyprinter for term when library is available

* lint

* move code into types.py

* fix pypandoc issue (BasisResearch#397)

* Convert evaluate to a singledispatch (BasisResearch#398)

* convert evaluate to a singledispatch

* lint

* add jnp.pi and ArrayTerm.T (BasisResearch#394)

* Deprecate defterm (BasisResearch#399)

* deprecate defterm

* remove defterm case

* remove defterm

* lint

* evaluate distribution arguments

* lint

* remove interpreter

* Revert "remove interpreter"

This reverts commit 3044277.

* wip

* lint

* Rework numpyro distribution handling to enable symbolic distributions and handling of distribution methods (BasisResearch#311)

* refactor distribution operations

* add a test for typeof of distributions

* add tests for symbolic dists/arguments

* introduce operations for distribution methods

* comment

* fix tests

* work around BasisResearch#310

* replace hack with new hack

* tweak repr for _BaseOperation

* lint

* work around BasisResearch#312

* clean up access to dist ops

* wip

* wip

* add type annotations to get correct term conversion

* lint

* include distribution arguments as properties

* fix distribution calls

* try again

* fixes

* format

* Box the output of `__type_rule__` (BasisResearch#387)

* box the output of __type_rule__

* fix tests

* fix tests

* require callers of __type_rule__ to box arguments

* fix

* move Box out of ops.types

* lint

* fix test

* fix syntactic_eq implementation for jax arrays (BasisResearch#405)

* Fix recursion error in sizesof (BasisResearch#406)

* fix recursion error in sizesof

* format

* Allow `_BaseOperation` subclasses to have an overrideable `apply` method (BasisResearch#414)

* stash

* fixes

* initial

* wip

* lint

* ensure each subclass has a fresh operation

* wip

* wip

* lint

* wip

* wip

* lint

* refactor class method support

* move defops

* fix test

* remove singledispatch case and add test

* move definition

* cleanup

* simplify

* cleanup

* lint

* fix failing test

* fix classmethod

* __isabstractmethod__

* revert

---------

Co-authored-by: Eli <eli@basis.ai>

* lint

---------

Co-authored-by: Tim Cooijmans <cooijmans.tim@gmail.com>
Co-authored-by: Eli <eli@basis.ai>
datvo06 pushed a commit to datvo06/effectful that referenced this pull request Dec 8, 2025
* Release v0.2.3 (BasisResearch#374)

* Install prettyprinter for term when library is available (BasisResearch#386)

* install prettyprinter for term when library is available

* lint

* move code into types.py

* fix pypandoc issue (BasisResearch#397)

* Convert evaluate to a singledispatch (BasisResearch#398)

* convert evaluate to a singledispatch

* lint

* add jnp.pi and ArrayTerm.T (BasisResearch#394)

* Deprecate defterm (BasisResearch#399)

* deprecate defterm

* remove defterm case

* remove defterm

* lint

* evaluate distribution arguments

* lint

* remove interpreter

* Revert "remove interpreter"

This reverts commit 3044277.

* wip

* lint

* Rework numpyro distribution handling to enable symbolic distributions and handling of distribution methods (BasisResearch#311)

* refactor distribution operations

* add a test for typeof of distributions

* add tests for symbolic dists/arguments

* introduce operations for distribution methods

* comment

* fix tests

* work around BasisResearch#310

* replace hack with new hack

* tweak repr for _BaseOperation

* lint

* work around BasisResearch#312

* clean up access to dist ops

* wip

* wip

* add type annotations to get correct term conversion

* lint

* include distribution arguments as properties

* fix distribution calls

* try again

* fixes

* format

* Box the output of `__type_rule__` (BasisResearch#387)

* box the output of __type_rule__

* fix tests

* fix tests

* require callers of __type_rule__ to box arguments

* fix

* move Box out of ops.types

* lint

* fix test

* fix syntactic_eq implementation for jax arrays (BasisResearch#405)

* Fix recursion error in sizesof (BasisResearch#406)

* fix recursion error in sizesof

* format

* Allow `_BaseOperation` subclasses to have an overrideable `apply` method (BasisResearch#414)

* stash

* fixes

* initial

* wip

* lint

* ensure each subclass has a fresh operation

* wip

* wip

* lint

* wip

* wip

* lint

* refactor class method support

* move defops

* fix test

* remove singledispatch case and add test

* move definition

* cleanup

* simplify

* cleanup

* lint

* fix failing test

* fix classmethod

* __isabstractmethod__

* revert

---------

Co-authored-by: Eli <eli@basis.ai>

* Try pulling in pyproject.toml from staging-llm to master (BasisResearch#425)

---------

Co-authored-by: Jack Feser <jack.feser@gmail.com>
Co-authored-by: Tim Cooijmans <cooijmans.tim@gmail.com>
datvo06 pushed a commit that referenced this pull request Dec 9, 2025
* Release v0.2.3 (#374)

* Install prettyprinter for term when library is available (#386)

* install prettyprinter for term when library is available

* lint

* move code into types.py

* fix pypandoc issue (#397)

* Convert evaluate to a singledispatch (#398)

* convert evaluate to a singledispatch

* lint

* add jnp.pi and ArrayTerm.T (#394)

* Deprecate defterm (#399)

* deprecate defterm

* remove defterm case

* remove defterm

* lint

* evaluate distribution arguments

* lint

* remove interpreter

* Revert "remove interpreter"

This reverts commit 3044277.

* wip

* lint

* Rework numpyro distribution handling to enable symbolic distributions and handling of distribution methods (#311)

* refactor distribution operations

* add a test for typeof of distributions

* add tests for symbolic dists/arguments

* introduce operations for distribution methods

* comment

* fix tests

* work around #310

* replace hack with new hack

* tweak repr for _BaseOperation

* lint

* work around #312

* clean up access to dist ops

* wip

* wip

* add type annotations to get correct term conversion

* lint

* include distribution arguments as properties

* fix distribution calls

* try again

* fixes

* format

* Box the output of `__type_rule__` (#387)

* box the output of __type_rule__

* fix tests

* fix tests

* require callers of __type_rule__ to box arguments

* fix

* move Box out of ops.types

* lint

* fix test

* fix syntactic_eq implementation for jax arrays (#405)

* Fix recursion error in sizesof (#406)

* fix recursion error in sizesof

* format

* Allow `_BaseOperation` subclasses to have an overrideable `apply` method (#414)

* stash

* fixes

* initial

* wip

* lint

* ensure each subclass has a fresh operation

* wip

* wip

* lint

* wip

* wip

* lint

* refactor class method support

* move defops

* fix test

* remove singledispatch case and add test

* move definition

* cleanup

* simplify

* cleanup

* lint

* fix failing test

* fix classmethod

* __isabstractmethod__

* revert

---------

Co-authored-by: Eli <eli@basis.ai>

* Try pulling in pyproject.toml from staging-llm to master (#425)

---------

Co-authored-by: Jack Feser <jack.feser@gmail.com>
Co-authored-by: Tim Cooijmans <cooijmans.tim@gmail.com>
kiranandcode pushed a commit that referenced this pull request Dec 9, 2025
* Logging retries

* Remove redundant assignment

* Linting

* Adding mypy check and test

* SynthesizedFunction for constrained decoding, adapt the tests

* Linting

* Let LLM generate param names

* Pydantic field annotation

* Adding validation error example

* Linting

* Fix minor formatting for type context

* Update llm dependencies to include mypy

* More comprehensive error message

* linting

* More comprehensive import

* Fix `staging-llm` diff against `master` (#426)

* Release v0.2.3 (#374)

* Install prettyprinter for term when library is available (#386)

* install prettyprinter for term when library is available

* lint

* move code into types.py

* fix pypandoc issue (#397)

* Convert evaluate to a singledispatch (#398)

* convert evaluate to a singledispatch

* lint

* add jnp.pi and ArrayTerm.T (#394)

* Deprecate defterm (#399)

* deprecate defterm

* remove defterm case

* remove defterm

* lint

* evaluate distribution arguments

* lint

* remove interpreter

* Revert "remove interpreter"

This reverts commit 3044277.

* wip

* lint

* Rework numpyro distribution handling to enable symbolic distributions and handling of distribution methods (#311)

* refactor distribution operations

* add a test for typeof of distributions

* add tests for symbolic dists/arguments

* introduce operations for distribution methods

* comment

* fix tests

* work around #310

* replace hack with new hack

* tweak repr for _BaseOperation

* lint

* work around #312

* clean up access to dist ops

* wip

* wip

* add type annotations to get correct term conversion

* lint

* include distribution arguments as properties

* fix distribution calls

* try again

* fixes

* format

* Box the output of `__type_rule__` (#387)

* box the output of __type_rule__

* fix tests

* fix tests

* require callers of __type_rule__ to box arguments

* fix

* move Box out of ops.types

* lint

* fix test

* fix syntactic_eq implementation for jax arrays (#405)

* Fix recursion error in sizesof (#406)

* fix recursion error in sizesof

* format

* Allow `_BaseOperation` subclasses to have an overrideable `apply` method (#414)

* stash

* fixes

* initial

* wip

* lint

* ensure each subclass has a fresh operation

* wip

* wip

* lint

* wip

* wip

* lint

* refactor class method support

* move defops

* fix test

* remove singledispatch case and add test

* move definition

* cleanup

* simplify

* cleanup

* lint

* fix failing test

* fix classmethod

* __isabstractmethod__

* revert

---------

Co-authored-by: Eli <eli@basis.ai>

* Try pulling in pyproject.toml from staging-llm to master (#425)

---------

Co-authored-by: Jack Feser <jack.feser@gmail.com>
Co-authored-by: Tim Cooijmans <cooijmans.tim@gmail.com>

* Logging retries

* Make linter happy with the exception_cls

* More linting

* Revert the changes to synthesis, it belongs to a different PR

* Add test for retry handler

* More linting

* Removing mypy for llm

---------

Co-authored-by: eb8680 <eb8680@users.noreply.github.com>
Co-authored-by: Jack Feser <jack.feser@gmail.com>
Co-authored-by: Tim Cooijmans <cooijmans.tim@gmail.com>
eb8680 added a commit that referenced this pull request Dec 12, 2025
* Release v0.2.3 (#374)

* Install prettyprinter for term when library is available (#386)

* install prettyprinter for term when library is available

* lint

* move code into types.py

* fix pypandoc issue (#397)

* Convert evaluate to a singledispatch (#398)

* convert evaluate to a singledispatch

* lint

* add jnp.pi and ArrayTerm.T (#394)

* Deprecate defterm (#399)

* deprecate defterm

* remove defterm case

* remove defterm

* lint

* evaluate distribution arguments

* lint

* remove interpreter

* Revert "remove interpreter"

This reverts commit 3044277.

* wip

* lint

* Rework numpyro distribution handling to enable symbolic distributions and handling of distribution methods (#311)

* refactor distribution operations

* add a test for typeof of distributions

* add tests for symbolic dists/arguments

* introduce operations for distribution methods

* comment

* fix tests

* work around #310

* replace hack with new hack

* tweak repr for _BaseOperation

* lint

* work around #312

* clean up access to dist ops

* wip

* wip

* add type annotations to get correct term conversion

* lint

* include distribution arguments as properties

* fix distribution calls

* try again

* fixes

* format

* Box the output of `__type_rule__` (#387)

* box the output of __type_rule__

* fix tests

* fix tests

* require callers of __type_rule__ to box arguments

* fix

* move Box out of ops.types

* lint

* fix test

* fix syntactic_eq implementation for jax arrays (#405)

* Fix recursion error in sizesof (#406)

* fix recursion error in sizesof

* format

* Allow `_BaseOperation` subclasses to have an overrideable `apply` method (#414)

* stash

* fixes

* initial

* wip

* lint

* ensure each subclass has a fresh operation

* wip

* wip

* lint

* wip

* wip

* lint

* refactor class method support

* move defops

* fix test

* remove singledispatch case and add test

* move definition

* cleanup

* simplify

* cleanup

* lint

* fix failing test

* fix classmethod

* __isabstractmethod__

* revert

---------

Co-authored-by: Eli <eli@basis.ai>

* Try pulling in pyproject.toml from staging-llm to master (#425)

* Generate instance-level `Operation`s for bound methods (#351)

* generalize __get__

* nits

* coverage of methoddescriptor api

* methodtype

* simplify

* simplify

* simplify

* format

* revert

* restore

* simplify

* simplify

* retain instance op on term construction

* Simplify apply inheritance

* assign

* put call next to init_subclass

* add explanatory comment

* Operation.apply -> Operation.__apply__

* add test based on issue description

* fix doctest

* Fix dataclass @defops and added dataclass metaclass (#439)

* fixed dataclass ordering and added metaclass for simplifying construction of dataclass terms

* ensure term fields are not being overriden

* added decorator and dataclass

* updated to make defdata registration automatic

* simplified dataclass loop

* updated to give property op an appropriate name

* added failing tests

* fixed failing test

* fixed numpyro/pyro/torch interfaces

* minor fix + test for deffn kwargs

---------

Co-authored-by: Jack Feser <jack.feser@gmail.com>
Co-authored-by: Tim Cooijmans <cooijmans.tim@gmail.com>
Co-authored-by: Kiran Gopinathan <23038502+kiranandcode@users.noreply.github.com>
eb8680 added a commit that referenced this pull request Dec 22, 2025
* Release v0.2.3 (#374)

* Install prettyprinter for term when library is available (#386)

* install prettyprinter for term when library is available

* lint

* move code into types.py

* fix pypandoc issue (#397)

* Convert evaluate to a singledispatch (#398)

* convert evaluate to a singledispatch

* lint

* add jnp.pi and ArrayTerm.T (#394)

* Deprecate defterm (#399)

* deprecate defterm

* remove defterm case

* remove defterm

* lint

* evaluate distribution arguments

* lint

* remove interpreter

* Revert "remove interpreter"

This reverts commit 3044277.

* wip

* lint

* Rework numpyro distribution handling to enable symbolic distributions and handling of distribution methods (#311)

* refactor distribution operations

* add a test for typeof of distributions

* add tests for symbolic dists/arguments

* introduce operations for distribution methods

* comment

* fix tests

* work around #310

* replace hack with new hack

* tweak repr for _BaseOperation

* lint

* work around #312

* clean up access to dist ops

* wip

* wip

* add type annotations to get correct term conversion

* lint

* include distribution arguments as properties

* fix distribution calls

* try again

* fixes

* format

* Box the output of `__type_rule__` (#387)

* box the output of __type_rule__

* fix tests

* fix tests

* require callers of __type_rule__ to box arguments

* fix

* move Box out of ops.types

* lint

* fix test

* fix syntactic_eq implementation for jax arrays (#405)

* Fix recursion error in sizesof (#406)

* fix recursion error in sizesof

* format

* Allow `_BaseOperation` subclasses to have an overrideable `apply` method (#414)

* stash

* fixes

* initial

* wip

* lint

* ensure each subclass has a fresh operation

* wip

* wip

* lint

* wip

* wip

* lint

* refactor class method support

* move defops

* fix test

* remove singledispatch case and add test

* move definition

* cleanup

* simplify

* cleanup

* lint

* fix failing test

* fix classmethod

* __isabstractmethod__

* revert

---------

Co-authored-by: Eli <eli@basis.ai>

* Try pulling in pyproject.toml from staging-llm to master (#425)

* Generate instance-level `Operation`s for bound methods (#351)

* generalize __get__

* nits

* coverage of methoddescriptor api

* methodtype

* simplify

* simplify

* simplify

* format

* revert

* restore

* simplify

* simplify

* retain instance op on term construction

* Simplify apply inheritance

* assign

* put call next to init_subclass

* add explanatory comment

* Operation.apply -> Operation.__apply__

* add test based on issue description

* fix doctest

* Fix dataclass @defops and added dataclass metaclass (#439)

* fixed dataclass ordering and added metaclass for simplifying construction of dataclass terms

* ensure term fields are not being overriden

* added decorator and dataclass

* updated to make defdata registration automatic

* simplified dataclass loop

* updated to give property op an appropriate name

* added failing tests

* fixed failing test

* fixed numpyro/pyro/torch interfaces

* minor fix + test for deffn kwargs

* Type check and lint example code (#449)

* format example code

* type check examples

* Add beam search example using thermometer continuations (#431)

* add beam search example using thermometer continuations

* address comments

* add docstring

* lint

* Fix for jax 0.8.2 (#455)

* fix for jax 0.8.2

* add more register

* format

---------

Co-authored-by: Jack Feser <jack.feser@gmail.com>
Co-authored-by: Tim Cooijmans <cooijmans.tim@gmail.com>
Co-authored-by: Kiran Gopinathan <23038502+kiranandcode@users.noreply.github.com>
eb8680 added a commit that referenced this pull request Dec 29, 2025
* Release v0.2.3 (#374)

* stash

* Install prettyprinter for term when library is available (#386)

* install prettyprinter for term when library is available

* lint

* move code into types.py

* fixes

* fix pypandoc issue (#397)

* Convert evaluate to a singledispatch (#398)

* convert evaluate to a singledispatch

* lint

* add jnp.pi and ArrayTerm.T (#394)

* Deprecate defterm (#399)

* deprecate defterm

* remove defterm case

* remove defterm

* lint

* evaluate distribution arguments

* lint

* remove interpreter

* Revert "remove interpreter"

This reverts commit 3044277.

* wip

* lint

* Rework numpyro distribution handling to enable symbolic distributions and handling of distribution methods (#311)

* refactor distribution operations

* add a test for typeof of distributions

* add tests for symbolic dists/arguments

* introduce operations for distribution methods

* comment

* fix tests

* work around #310

* replace hack with new hack

* tweak repr for _BaseOperation

* lint

* work around #312

* clean up access to dist ops

* wip

* wip

* add type annotations to get correct term conversion

* lint

* include distribution arguments as properties

* fix distribution calls

* try again

* fixes

* format

* Box the output of `__type_rule__` (#387)

* box the output of __type_rule__

* fix tests

* fix tests

* require callers of __type_rule__ to box arguments

* fix

* move Box out of ops.types

* lint

* fix test

* fix syntactic_eq implementation for jax arrays (#405)

* Fix recursion error in sizesof (#406)

* fix recursion error in sizesof

* format

* initial

* wip

* lint

* ensure each subclass has a fresh operation

* wip

* wip

* lint

* wip

* wip

* lint

* refactor class method support

* move defops

* fix test

* remove singledispatch case and add test

* move definition

* cleanup

* simplify

* cleanup

* lint

* fix failing test

* wip

* Allow `_BaseOperation` subclasses to have an overrideable `apply` method (#414)

* stash

* fixes

* initial

* wip

* lint

* ensure each subclass has a fresh operation

* wip

* wip

* lint

* wip

* wip

* lint

* refactor class method support

* move defops

* fix test

* remove singledispatch case and add test

* move definition

* cleanup

* simplify

* cleanup

* lint

* fix failing test

* fix classmethod

* __isabstractmethod__

* revert

---------

Co-authored-by: Eli <eli@basis.ai>

* wip

* fix define signature

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* lint

* wip

* test fix

* fix merge error

* lint

* wip

* respond to feedback

* respond to feedback

* clean up notebook

* remove breakpoint

* relax typing requirement

* improve handling of method templates

* lint

* remove imprecise check

* handle nested classes using qualname

* feedback

* fix scoping issue and add tests

* address feedback

* add xfail tests

* lint

---------

Co-authored-by: Eli <eli@basis.ai>
Co-authored-by: Tim Cooijmans <cooijmans.tim@gmail.com>
Co-authored-by: eb8680 <eb8680@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants