Symbolic Parallel Adaptive Importance Sampling for Probabilistic Program Analysis in JAX

Overview

SYMPAIS: Symbolic Parallel Adaptive Importance Sampling for Probabilistic Program Analysis

Overview | Installation | Documentation | Examples | Notebooks | Paper

pytest license DOI Open In Colab

Python implementation of SYMPAIS introduced in the paper

Yicheng Luo, Antonio Filieri, and Yuan Zhou. Symbolic Parallel Adaptive Importance Sampling for Probabilistic Program Analysis. To appear in Proceedings of the 29th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE 2021). arXiv:2010.05050.

Note: the arXiv version is currently outdated and will updated soon to include the material from the conference submission.

Installation

Requirements

The library is tested in the following environment.

Install RealPaver

Note that SYMPAIS uses RealPaver v0.4 for interval constraint solving. We do not install RealPaver as part of pip install -e . Please refer to the RealPaver documentation for how to install RealPaver v0.4 on Linux. For our development, we use third_party/RealPaver/build.sh to install RealPaver v0.4 on Ubuntu,

To compile RealPaver from source, first run apt-get to install following system dependencies

sudo apt-get install flex bison libfl-dev libgmp-dev

Then run the following commands download realpaver-v0.4 source, compiles it and install it (assuming the right permissions) on the local environment.

curl -O http://pagesperso.lina.univ-nantes.fr/~granvilliers-l/realpaver/src/realpaver-0.4.tar.gz
tar -xzvf realpaver-0.4.tar.gz
cd realpaver-0.4
make
make install

Install Python packages

We do not provide PyPI installation so you have to install from source. First clone the repository by running

git clone --recursive [email protected]:ethanluoyc/sympais.git

We use Poetry for managing dependencies. To set up the environment with Poetry, run

poetry install

Alternatively you can also create a virtual environment for this repository, e.g., by running python3 -m venv venv && source venv/bin/activate.

Then install the project in development mode by running

pip install -U pip setuptools wheel # We require more recent versions of pip wheel and setuptools
pip install -e .

This installs both the the runtime dependencies and development dependencies.

Install with Docker

We also provide a Dockerfile for creating a environment similar to the one we used for producing the benchmark results. To reproduce an environment with Docker run

docker build -t sympais .

Please create an issue if the installation fails.

Examples

To run an example of probabilistic symbolic execution (PSE), refer to scripts in examples/.

In particular,

  • run_sphere_3_dmc.py will run the DMC baseline on sphere (d=3). You should get a final estimated mean of around 0.058 by running the DMC baseline.
  • run_sphere_3_sympais.py will run SYMPAIS on sphere (d=3), using the RMH kernel, with the initialization scheme introduced in the paper. Running this should also give you comparable results to the DMC baseline.

If you are using a Docker environment, you can run the example scripts above by first starting an interpreter with

docker run -it --rm --entrypoint /bin/bash sympais

Then you can run the examples with

poetry run python examples/run_sphere_3_dmc.py

Notice the prefix poetry run. This ensures that you are using the correct Python virtual environment when running the scripts.

Notebooks

Open In Colab

In addition to the example scripts, we provide Jupyter notebooks for reproducing the results in our paper as well as a tutorial notebook (getting_started.ipynb) which walks you through the APIs for extending SYMPAIS. The notebooks handle installing SYMPAIS in Colab so that you do not have to install the dependencies locally. A full list of the notebooks and descriptions can be found in notebooks/README.md.

Reproducing results

To reproduce results reported in the figure, refer to the *.sh files in scripts/ to reproduce results for individual tasks. The scripts call src/sympais/experiments/run.py with different sweeps of parameters to produce the results. We use Hydra to manage configurations and run sweeps.

The configuration is defined in config.yaml.

defaults:
    - hydra/launcher: joblib
    - method: pimais
    - task: sphere

seed: 0
num_samples: 1000000
disable_jit: false

You can override parts of the configuration by overriding the corresponding configuration group. For example, to run SYMPAIS on torus with the correlated input profile, enabling tuning of the RMH kernel, with seed 1 and for a total of 2e6 samples, run:

poetry run python src/sympais/experiments/run.py task=torus \
    task.profile_type=correlated \
    method=pimais \
    method.tune=true \
    num_samples=2_000_000 \
    seed=1

Refer to the Hydra documentation for how to override configuration.

Running the entire benchmark requires a large amount of computing power. We use a machine with 48 CPU cores (AMD EPYC 7401P) and memory of 441G to perform the benchmark sweeps. We limit each job to use at most two cores.

Nevertheless, running a single instance of SYMPAIS should be reasonably performant. We do not find actual sampling time to be a bottleneck for our SYMPAIS implementation thanks for JAX Just-in-Time compilation. However, we currently have known issues scaling the problems involving a large number of constraints as we found JAX to spend most of the time compiling the large computation graph.

We include a Jupyter notebook notebooks/results.ipynb for generating the figures from running the benchmark above. The results may differ slightly from the original conference submission since we have made some changes to the algorithm implementation. The results were obtained by running Python 3.8.3 on Ubuntu 18.04.5 LTS (Bionic Beaver).

Overview

This library represents the the problem of probabilistic analysis in the framework illustrated by the image above.

To perform probabilistic program analysis, we require the user to provide

  1. A definition for the input probabilistic distribution (the profile). In our implementation, this is represented by a class Profile similar to Distribution classes in numpyro and tensorflow_probability. This class implements functions that can sample inputs to a probabilistic profile as well as evaluating the log pdf or cdf given concrete input values.
  2. A list of path constraints that the user wants to obtain probabilistic quantification. This is represented as a list of SymPy expressions.

In addition to the above two requirements, the user also needs to provide the interval domain for the input distribution. When using a truncated distribution this would be the upper and lower parameters.

We provide a SYMPAIS implementation by implementing the underlying MCMC sampler and PI-MAIS with JAX. The inference algorithms are located in the directory src/sympais/infer/. We follow a similar design as FunMC to achieve compositionality. We batch the parallel chain sampling to efficiently scale to a large number of parallel chains and use jax.jit to speed up the computation. The samplers are separate from SYMPAIS and can be easily re-purposed for other research areas.

We provide implementations of the SYMPAIS algorithm combining with the RMH or HMC kernel, but we expect improvement in Bayesian inference algorithms and symbolic execution methods to continue improving SYMPAIS's performance.

We also include baseline implementation of DMC and qCoral. However, please refer to the official qCoral implementation if you are interested getting results from the original implementation.

Documentation

It's best to learn more about SYMPAIS by looking at the source. The documentation can be found in subfolders' READMEs and inline as docstrings. Check out the src folder. A good starting point is src/sympais/algorithm.py. Please don't hesitate and use GitHub issues for asking questions if anything is unclear.

Known limitations

Since this is a prototype implementation. There are some known limitations.

  • We do not support discrete distributions. In theory, SYMPAIS is generic to support arbitrary input distribution. However, since we only implemented the RWMH kernel with a Gaussian proposal (or Hamiltonian Monte Carlo, which only supports continuous distributions), we do not currently support discrete distribution. In the future, generic transition kernels can be implemented (or by using a mature MCMC library) to provide support for discrete distributions. Another technical difficulty in handling discrete inputs comes from using the RealPaver constraint solver. While RealPaver does support integer domains, it relies on continuous relaxation (i.e., relaxing the integers to reals for finding the interval domains and then casting back to reals), this is both efficient (and may be unsound).
  • Does not support numpyro native distributions as inputs. The user currently cannot use a numpyro.Distribution directly as the input probabilistic profile. This is so that SYMPAIS integrates well with SymPy. Refer to (Getting started)[notebooks/getting_started.ipynb] notebook for more details. Furthermore, this also means native correlated multivariate distribution (e.g., MulrivariateNormal) is not supported, although it is easy to easily create adaptors for multivariate correlated distributions. Refer to the notebook for examples.

Known issues

You may notice that SYMPAIS's running time grows disproportionally for more complex tasks (i.e., tasks that involve more constraints or higher-dimensional inputs.). We found the increase in running time to be primarily due to growing JIT compilation time (instead of sampling time). Evaluating the constraints involve a large number of small ops to be created, which in the worst case causes the JIT compilation time to grow quadratically. If this becomes a bottleneck, consider reusing the JIT-compiled functions if you want to reduce the JIT compilation overhead.

Contributing

Thanks for your interests in contributing to SYMPAIS! Please use the Github issues for asking questions. If you are interested in contributing new features, please first create an issue before submitting PRs. PRs should pass a set of checks for them to be merged. We use

  • poetry for managing dependencies,
  • pytest for running tests,
  • pylint for linting,
  • yapf for formatting the code,
  • isort for sorting the dependencies,
  • and pytype for typechecking.

Refer to the Makefile for how to run these pipelines.

We follow the Google Python Style Guide. This means using two-spaces instead of four-spaces as prescribed by PEP8.

All contributions should be accompanied by unit tests. You may find the pre-commit hooks useful for ensuring that your contributions conform to the styles used in this repo.

There is a list of things that we would love to receive contributions.

  1. Support alternative distribution backends. We (for legacy reasons) used NumPyro's distribution implementation to implement the input distribution. It would be nice if we can also support other distributions such as those in TensorFlow Probability substrates or Distrax. In particular, TensorFlow provides more native distribution implementations compared to NumPyro.
  2. Supporting a mature inference library. We would love to integrate with a mature MCMC such as those in numpyro, TensorFlow-Probability, PyMC3. Our current implementation uses a customized implementation with simple interface for performing MCMC sampling which should be easy to integrate with a inference library.
  3. Handling multivariate inputs as high-dimensional tensors. The multivariate inputs are currently represented as a list of scalar inputs. This may creates unnecessarily large computation graph in JAX, which slows down JIT compilation considerably. It may be interesting to represent these natively with symbolic tensors instead of a list of scalars. This requires the constraint solver to support vector inputs natively.

Citation

If you use this code for your research, please cite us as

@inproceedings{luo21sympais,
  author = {Yicheng Luo and Antonio Filieri and Yuan Zhou},
  title = {Symbolic Parallel Adaptive Importance Sampling for Probabilistic Program Analysis},
  year = {2021},
  publisher = {Association for Computing Machinery},
  booktitle = {Proceedings of the 29th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE)},
  location = {Athens, Greece},
  series = {ESEC-FSE '21}
}

How to pronounce SYMPAIS

sim-pai. The name is inspired by Senpai, the Japanese word for master (先輩).

Comments
  • Bump isort from 5.8.0 to 5.11.3

    Bump isort from 5.8.0 to 5.11.3

    Bumps isort from 5.8.0 to 5.11.3.

    Release notes

    Sourced from isort's releases.

    5.11.3

    Changes

    :beetle: Fixes

    :construction_worker: Continuous Integration

    v5.11.3

    Changes

    :beetle: Fixes

    :construction_worker: Continuous Integration

    5.11.2

    Changes

    5.11.1

    Changes December 12 2022

    :beetle: Fixes

    5.11.0

    Changes December 12 2022

    ... (truncated)

    Changelog

    Sourced from isort's changelog.

    5.11.3 December 16 2022

    5.11.2 December 12 2022

    5.11.1 December 12 2022

    5.11.0 December 12 2022

    5.10.1 November 8 2021

    • Fixed #1819: Occasional inconsistency with multiple src paths.
    • Fixed #1840: skip_file ignored when on the first docstring line

    5.10.0 November 3 2021

    • Implemented #1796: Switch to tomli for pyproject.toml configuration loader.
    • Fixed #1801: CLI bug (--exend-skip-glob, overrides instead of extending).

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump pytest-xdist from 2.2.1 to 3.0.2

    Bump pytest-xdist from 2.2.1 to 3.0.2

    Bumps pytest-xdist from 2.2.1 to 3.0.2.

    Changelog

    Sourced from pytest-xdist's changelog.

    pytest-xdist 3.0.2 (2022-10-25)

    Bug Fixes

    • [#813](https://github.com/pytest-dev/pytest-xdist/issues/813) <https://github.com/pytest-dev/pytest-xdist/issues/813>_: Cancel shutdown when a crashed worker is restarted.

    Deprecations

    • [#825](https://github.com/pytest-dev/pytest-xdist/issues/825) <https://github.com/pytest-dev/pytest-xdist/issues/825>_: The --rsyncdir command line argument and rsyncdirs config variable are deprecated.

      The rsync feature will be removed in pytest-xdist 4.0.

    • [#826](https://github.com/pytest-dev/pytest-xdist/issues/826) <https://github.com/pytest-dev/pytest-xdist/issues/826>_: The --looponfail command line argument and looponfailroots config variable are deprecated.

      The loop-on-fail feature will be removed in pytest-xdist 4.0.

    Improved Documentation

    • [#791](https://github.com/pytest-dev/pytest-xdist/issues/791) <https://github.com/pytest-dev/pytest-xdist/issues/791>_: Document the pytest_xdist_auto_num_workers hook.

    • [#796](https://github.com/pytest-dev/pytest-xdist/issues/796) <https://github.com/pytest-dev/pytest-xdist/issues/796>_: Added known limitations section to documentation.

    • [#829](https://github.com/pytest-dev/pytest-xdist/issues/829) <https://github.com/pytest-dev/pytest-xdist/issues/829>_: Document the -n logical option.

    Features

    • [#792](https://github.com/pytest-dev/pytest-xdist/issues/792) <https://github.com/pytest-dev/pytest-xdist/issues/792>_: The environment variable PYTEST_XDIST_AUTO_NUM_WORKERS can now be used to specify the default for -n auto and -n logical.

    • [#812](https://github.com/pytest-dev/pytest-xdist/issues/812) <https://github.com/pytest-dev/pytest-xdist/issues/812>_: Partially restore old initial batch distribution algorithm in LoadScheduling.

      pytest orders tests for optimal sequential execution - i. e. avoiding unnecessary setup and teardown of fixtures. So executing tests in consecutive chunks is important for optimal performance.

      In v1.14, initial test distribution in LoadScheduling was changed to round-robin, optimized for the corner case, when the number of tests is less than 2 * number of nodes. At the same time, it became worse for all other cases.

      For example: if some tests use some "heavy" fixture, and these tests fit into the initial batch, with round-robin distribution the fixture will be created

    ... (truncated)

    Commits
    • eed37d4 Update CHANGELOG
    • 3e9284b Merge remote-tracking branch 'upstream/master' into release-3.0.0
    • ccdab72 Merge pull request #831 from pytest-dev/fix-setup
    • 0c981d3 fix and update packaging
    • 38dcf52 Release 3.0.1
    • f2633f1 Fetch all tags, as required by setuptools-scm
    • 1921931 Update CHANGELOG for 3.0
    • 0f58a14 Fix towncrier command for latest version
    • bd23c24 Fix changelog fragments
    • 794f28b Use modern syntax for towncrier
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump numpy from 1.20.3 to 1.21.5

    Bump numpy from 1.20.3 to 1.21.5

    Bumps numpy from 1.20.3 to 1.21.5.

    Release notes

    Sourced from numpy's releases.

    v1.21.5

    NumPy 1.21.5 Release Notes

    NumPy 1.21.5 is a maintenance release that fixes a few bugs discovered after the 1.21.4 release and does some maintenance to extend the 1.21.x lifetime. The Python versions supported in this release are 3.7-3.10. If you want to compile your own version using gcc-11, you will need to use gcc-11.2+ to avoid problems.

    Contributors

    A total of 7 people contributed to this release. People with a "+" by their names contributed a patch for the first time.

    • Bas van Beek
    • Charles Harris
    • Matti Picus
    • Rohit Goswami
    • Ross Barnowski
    • Sayed Adel
    • Sebastian Berg

    Pull requests merged

    A total of 11 pull requests were merged for this release.

    • #20357: MAINT: Do not forward __(deep)copy__ calls of _GenericAlias...
    • #20462: BUG: Fix float16 einsum fastpaths using wrong tempvar
    • #20463: BUG, DIST: Print os error message when the executable not exist
    • #20464: BLD: Verify the ability to compile C++ sources before initiating...
    • #20465: BUG: Force npymath to respect npy_longdouble
    • #20466: BUG: Fix failure to create aligned, empty structured dtype
    • #20467: ENH: provide a convenience function to replace npy_load_module
    • #20495: MAINT: update wheel to version that supports python3.10
    • #20497: BUG: Clear errors correctly in F2PY conversions
    • #20613: DEV: add a warningfilter to fix pytest workflow.
    • #20618: MAINT: Help boost::python libraries at least not crash

    Checksums

    MD5

    e00a3c2e1461dd2920ab4af6b753d3da  numpy-1.21.5-cp310-cp310-macosx_10_9_universal2.whl
    50e0526fa29110fb6033fa8285fba4e1  numpy-1.21.5-cp310-cp310-macosx_10_9_x86_64.whl
    bdbb19e7656d66250aa67bd1c7924764  numpy-1.21.5-cp310-cp310-macosx_11_0_arm64.whl
    c5c982a07797c8963b8fec44aae6db09  numpy-1.21.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
    8b27b622f58caeeb7f14472651d655e3  numpy-1.21.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
    e545f6f85f950f57606efcaeeac2e50a  numpy-1.21.5-cp310-cp310-win_amd64.whl
    5c36eefdcb039c0d4db8882fddbeb695  numpy-1.21.5-cp37-cp37m-macosx_10_9_x86_64.whl
    b5d080e0fd8b658419b3636f1cf5dc3a  numpy-1.21.5-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl
    

    ... (truncated)

    Commits
    • c3d0a09 Merge pull request #20625 from charris/prepare-for-1.22.5
    • d8dfa93 REL: Prepare for NumPy 1.21.5 release.
    • e559d9a Merge pull request #20618 from charris/backport-20616
    • c2495e3 MAINT: Help boost::python libraries at least not crash
    • 8c04d2a Merge pull request #20613 from charris/backport-20604
    • 10f0878 DEV: add a warningfilter to fix pytest workflow.
    • f6bcca4 Merge pull request #20497 from charris/backport-20404
    • 1503492 BUG: Clear errors correctly in F2PY conversions
    • e34b45c Merge pull request #20495 from charris/backport-20486
    • 7cc278d MAINT: Sanitize C++ flags.
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump pytest-xdist from 2.2.1 to 2.5.0

    Bump pytest-xdist from 2.2.1 to 2.5.0

    Bumps pytest-xdist from 2.2.1 to 2.5.0.

    Changelog

    Sourced from pytest-xdist's changelog.

    pytest-xdist 2.5.0 (2021-12-10)

    Features

    • [#722](https://github.com/pytest-dev/pytest-xdist/issues/722) <https://github.com/pytest-dev/pytest-xdist/issues/722>_: Full compatibility with pytest 7 - no deprecation warnings or use of legacy features.

    • [#733](https://github.com/pytest-dev/pytest-xdist/issues/733) <https://github.com/pytest-dev/pytest-xdist/issues/733>_: New --dist=loadgroup option, which ensures all tests marked with @pytest.mark.xdist_group run in the same session/worker. Other tests run distributed as in --dist=load.

    Trivial Changes

    • [#708](https://github.com/pytest-dev/pytest-xdist/issues/708) <https://github.com/pytest-dev/pytest-xdist/issues/708>_: Use @pytest.hookspec decorator to declare hook options in newhooks.py to avoid warnings in pytest 7.0.

    • [#719](https://github.com/pytest-dev/pytest-xdist/issues/719) <https://github.com/pytest-dev/pytest-xdist/issues/719>_: Use up-to-date setup.cfg/pyproject.toml packaging setup.

    • [#720](https://github.com/pytest-dev/pytest-xdist/issues/720) <https://github.com/pytest-dev/pytest-xdist/issues/720>_: Require pytest>=6.2.0.

    • [#721](https://github.com/pytest-dev/pytest-xdist/issues/721) <https://github.com/pytest-dev/pytest-xdist/issues/721>_: Started using type annotations and mypy checking internally. The types are incomplete and not published.

    pytest-xdist 2.4.0 (2021-09-20)

    Features

    • [#696](https://github.com/pytest-dev/pytest-xdist/issues/696) <https://github.com/pytest-dev/pytest-xdist/issues/696>_: On Linux, the process title now changes to indicate the current worker state (running/idle).

      Depends on the setproctitle <https://pypi.org/project/setproctitle/>__ package, which can be installed with pip install pytest-xdist[setproctitle].

    • [#704](https://github.com/pytest-dev/pytest-xdist/issues/704) <https://github.com/pytest-dev/pytest-xdist/issues/704>_: Add support for Python 3.10.

    pytest-xdist 2.3.0 (2021-06-16)

    Deprecations and Removals

    • [#654](https://github.com/pytest-dev/pytest-xdist/issues/654) <https://github.com/pytest-dev/pytest-xdist/issues/654>_: Python 3.5 is no longer supported.

    Features

    • [#646](https://github.com/pytest-dev/pytest-xdist/issues/646) <https://github.com/pytest-dev/pytest-xdist/issues/646>_: Add --numprocesses=logical flag, which automatically uses the number of logical CPUs available, instead of physical CPUs with auto.

    ... (truncated)

    Commits
    • 13f3934 Remove unnecessary skip from test_logfinish_hook as we require pytest>=6.2
    • c76d562 Skip test_warning_captured_deprecated_in_pytest_6 in pytest>=7.1
    • 5f78c71 Fix CHANGELOG header
    • c8bbc03 Release 2.5.0
    • 8dbf367 Merge pull request #738 from pytest-dev/pre-commit-ci-update-config
    • a25c14b [pre-commit.ci] pre-commit autoupdate
    • 110c114 Merge pull request #734 from nicoddemus/revamp-readme
    • 83bdbf4 Revamp README
    • 630c1eb Merge pull request #733 from baekdohyeop/feature-loadgroup
    • 62e50d0 Address review
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump isort from 5.8.0 to 5.10.1

    Bump isort from 5.8.0 to 5.10.1

    Bumps isort from 5.8.0 to 5.10.1.

    Release notes

    Sourced from isort's releases.

    5.10.1 November 8 2021

    • Fixed #1819: Occasional inconsistency with multiple src paths.
    • Fixed #1840: skip_file ignored when on the first docstring line

    5.10.0

    Implemented [#1796](https://github.com/pycqa/isort/issues/1796): Switch to tomli for pyproject.toml configuration loader.
    Fixed [#1801](https://github.com/pycqa/isort/issues/1801): CLI bug (--exend-skip-glob, overrides instead of extending).
    Fixed [#1802](https://github.com/pycqa/isort/issues/1802): respect PATH customization in nested calls to git.
    Fixed [#1838](https://github.com/pycqa/isort/issues/1838): Append only with certain code snippets incorrectly adds imports.
    Added official support for Python 3.10
    

    5.9.3 July 28 2021

    • Improved text of skipped file message to mention gitignore feature.
    • Made all exceptions pickleable.
    • Fixed #1779: Pylama integration ignores pylama specific isort config overrides.
    • Fixed #1781: --from-first CLI flag shouldn't take any arguments.
    • Fixed #1792: Sorting literals sometimes ignored when placed on first few lines of file.
    • Fixed #1777: extend_skip is not honored wit a git submodule when skip_gitignore=true.

    5.9.2 July 8th 2021

    • Improved behavior of isort --check --atomic against Cython files.
    • Fixed #1769: Future imports added below assignments when no other imports present.
    • Fixed #1772: skip-gitignore will check files not in the git repository.
    • Fixed #1762: in some cases when skip-gitignore is set, isort fails to skip any files.
    • Fixed #1767: Encoding issues surfacing when invalid characters set in __init__.py files during placement.
    • Fixed #1771: Improved handling of skips against named streamed in content.

    5.9.1 June 21st 2021 [hotfix]

    • Fixed #1758: projects with many files and skip_ignore set can lead to a command-line overload.

    5.9.0 June 21st 2021

    • Improved CLI startup time.
    • Implemented #1697: Provisional support for PEP 582: skip __pypackages__ directories by default.
    • Implemented #1705: More intuitive handling of isort:skip_file comments on streams.
    • Implemented #1737: Support for using action comments to avoid adding imports to individual files.
    • Implemented #1750: Ability to customize output format lines.
    • Implemented #1732: Support for custom sort functions.
    • Implemented #1722: Improved behavior for running isort in atomic mode over Cython source files.
    • Fixed (PyCQA/isort#1695): added imports being added to doc string in some cases.
    • Fixed (PyCQA/isort#1714): in rare cases line continuation combined with tabs can output invalid code.
    • Fixed (PyCQA/isort#1726): isort ignores reverse_sort when force_sort_within_sections is true.
    • Fixed #1741: comments in hanging indent modes can lead to invalid code.
    • Fixed #1744: repeat noqa comments dropped when * import and non * imports exist from the same package.
    • Fixed #1721: repeat noqa comments on separate from lines with force-single-line set, sometimes get dropped.
    Changelog

    Sourced from isort's changelog.

    5.10.1 November 8 2021

    • Fixed #1819: Occasional inconsistency with multiple src paths.
    • Fixed #1840: skip_file ignored when on the first docstring line

    5.10.0 November 3 2021

    • Implemented #1796: Switch to tomli for pyproject.toml configuration loader.
    • Fixed #1801: CLI bug (--exend-skip-glob, overrides instead of extending).
    • Fixed #1802: respect PATH customization in nested calls to git.
    • Fixed #1838: Append only with certain code snippets incorrectly adds imports.
    • Added official support for Python 3.10

    Potentially breaking changes:

    • Fixed #1785: _ast module incorrectly excluded from stdlib definition.

    5.9.3 July 28 2021

    • Improved text of skipped file message to mention gitignore feature.
    • Made all exceptions pickleable.
    • Fixed #1779: Pylama integration ignores pylama specific isort config overrides.
    • Fixed #1781: --from-first CLI flag shouldn't take any arguments.
    • Fixed #1792: Sorting literals sometimes ignored when placed on first few lines of file.
    • Fixed #1777: extend_skip is not honored wit a git submodule when skip_gitignore=true.

    5.9.2 July 8th 2021

    • Improved behavior of isort --check --atomic against Cython files.
    • Fixed #1769: Future imports added below assignments when no other imports present.
    • Fixed #1772: skip-gitignore will check files not in the git repository.
    • Fixed #1762: in some cases when skip-gitignore is set, isort fails to skip any files.
    • Fixed #1767: Encoding issues surfacing when invalid characters set in __init__.py files during placement.
    • Fixed #1771: Improved handling of skips against named streamed in content.

    5.9.1 June 21st 2021 [hotfix]

    • Fixed #1758: projects with many files and skip_ignore set can lead to a command-line overload.

    5.9.0 June 21st 2021

    • Improved CLI startup time.
    • Implemented #1697: Provisional support for PEP 582: skip __pypackages__ directories by default.
    • Implemented #1705: More intuitive handling of isort:skip_file comments on streams.
    • Implemented #1737: Support for using action comments to avoid adding imports to individual files.
    • Implemented #1750: Ability to customize output format lines.
    • Implemented #1732: Support for custom sort functions.
    • Implemented #1722: Improved behavior for running isort in atomic mode over Cython source files.
    • Fixed (PyCQA/isort#1695): added imports being added to doc string in some cases.
    • Fixed (PyCQA/isort#1714): in rare cases line continuation combined with tabs can output invalid code.
    • Fixed (PyCQA/isort#1726): isort ignores reverse_sort when force_sort_within_sections is true.
    • Fixed #1741: comments in hanging indent modes can lead to invalid code.
    • Fixed #1744: repeat noqa comments dropped when * import and non * imports exist from the same package.
    • Fixed #1721: repeat noqa comments on separate from lines with force-single-line set, sometimes get dropped.

    Goal Zero (Tickets related to aspirational goal of achieving 0 regressions for remaining 5.0.0 lifespan):

    • Implemented #1394: 100% branch coverage (in addition to line coverage) enforced.

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump scipy from 1.6.3 to 1.7.2

    Bump scipy from 1.6.3 to 1.7.2

    Bumps scipy from 1.6.3 to 1.7.2.

    Release notes

    Sourced from scipy's releases.

    SciPy 1.7.2 Release Notes

    SciPy 1.7.2 is a bug-fix release with no new features compared to 1.7.1. Notably, the release includes wheels for Python 3.10, and wheels are now built with a newer version of OpenBLAS, 0.3.17. Python 3.10 wheels are provided for MacOS x86_64 (thin, not universal2 or arm64 at this time), and Windows/Linux 64-bit. Many wheels are now built with newer versions of manylinux, which may require newer versions of pip.

    Authors

    • Peter Bell
    • da-woods +
    • Isuru Fernando
    • Ralf Gommers
    • Matt Haberland
    • Nicholas McKibben
    • Ilhan Polat
    • Judah Rand +
    • Tyler Reddy
    • Pamphile Roy
    • Charles Harris
    • Matti Picus
    • Hugo van Kemenade
    • Jacob Vanderplas

    A total of 14 people contributed to this release. People with a "+" by their names contributed a patch for the first time. This list of names is automatically generated, and may not be fully complete.

    SciPy 1.7.1 Release Notes

    SciPy 1.7.1 is a bug-fix release with no new features compared to 1.7.0.

    Authors

    • Peter Bell
    • Evgeni Burovski
    • Justin Charlong +
    • Ralf Gommers
    • Matti Picus
    • Tyler Reddy
    • Pamphile Roy
    • Sebastian Wallkötter

    ... (truncated)

    Commits
    • e132a18 REL: SciPy 1.7.2 release commit
    • 0d1b7d4 Merge pull request #14981 from tylerjereddy/treddy_172_backport_and_docs
    • 542c017 DOC: update 1.7.2 relnotes
    • d450304 TST: silence test failures on macOS for beta.ppf overflow (#14938)
    • 5f587c6 Merge pull request #14937 from rgommers/ci-failures-17x
    • 0054fae BLD: update Pythran lower version constraint to 0.9.12
    • 1399bf6 Added missing np.import_array() (#14813)
    • cd2e9dc BUG: Fix alignment errors due to relaxed stride checking (#14893)
    • b4fb2ec BUG: avoid mutating inputs in multivariate distributions
    • 6c4e648 MAINT: disable include/source coverage warning. (#14803)
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump isort from 5.8.0 to 5.10.0

    Bump isort from 5.8.0 to 5.10.0

    Bumps isort from 5.8.0 to 5.10.0.

    Release notes

    Sourced from isort's releases.

    5.10.0

    Implemented [#1796](https://github.com/pycqa/isort/issues/1796): Switch to tomli for pyproject.toml configuration loader.
    Fixed [#1801](https://github.com/pycqa/isort/issues/1801): CLI bug (--exend-skip-glob, overrides instead of extending).
    Fixed [#1802](https://github.com/pycqa/isort/issues/1802): respect PATH customization in nested calls to git.
    Fixed [#1838](https://github.com/pycqa/isort/issues/1838): Append only with certain code snippets incorrectly adds imports.
    Added official support for Python 3.10
    

    5.9.3 July 28 2021

    • Improved text of skipped file message to mention gitignore feature.
    • Made all exceptions pickleable.
    • Fixed #1779: Pylama integration ignores pylama specific isort config overrides.
    • Fixed #1781: --from-first CLI flag shouldn't take any arguments.
    • Fixed #1792: Sorting literals sometimes ignored when placed on first few lines of file.
    • Fixed #1777: extend_skip is not honored wit a git submodule when skip_gitignore=true.

    5.9.2 July 8th 2021

    • Improved behavior of isort --check --atomic against Cython files.
    • Fixed #1769: Future imports added below assignments when no other imports present.
    • Fixed #1772: skip-gitignore will check files not in the git repository.
    • Fixed #1762: in some cases when skip-gitignore is set, isort fails to skip any files.
    • Fixed #1767: Encoding issues surfacing when invalid characters set in __init__.py files during placement.
    • Fixed #1771: Improved handling of skips against named streamed in content.

    5.9.1 June 21st 2021 [hotfix]

    • Fixed #1758: projects with many files and skip_ignore set can lead to a command-line overload.

    5.9.0 June 21st 2021

    • Improved CLI startup time.
    • Implemented #1697: Provisional support for PEP 582: skip __pypackages__ directories by default.
    • Implemented #1705: More intuitive handling of isort:skip_file comments on streams.
    • Implemented #1737: Support for using action comments to avoid adding imports to individual files.
    • Implemented #1750: Ability to customize output format lines.
    • Implemented #1732: Support for custom sort functions.
    • Implemented #1722: Improved behavior for running isort in atomic mode over Cython source files.
    • Fixed (PyCQA/isort#1695): added imports being added to doc string in some cases.
    • Fixed (PyCQA/isort#1714): in rare cases line continuation combined with tabs can output invalid code.
    • Fixed (PyCQA/isort#1726): isort ignores reverse_sort when force_sort_within_sections is true.
    • Fixed #1741: comments in hanging indent modes can lead to invalid code.
    • Fixed #1744: repeat noqa comments dropped when * import and non * imports exist from the same package.
    • Fixed #1721: repeat noqa comments on separate from lines with force-single-line set, sometimes get dropped.
    Changelog

    Sourced from isort's changelog.

    5.10.0 November 3 2021

    • Implemented #1796: Switch to tomli for pyproject.toml configuration loader.
    • Fixed #1801: CLI bug (--exend-skip-glob, overrides instead of extending).
    • Fixed #1802: respect PATH customization in nested calls to git.
    • Fixed #1838: Append only with certain code snippets incorrectly adds imports.
    • Added official support for Python 3.10

    Potentially breaking changes:

    • Fixed #1785: _ast module incorrectly excluded from stdlib definition.

    5.9.3 July 28 2021

    • Improved text of skipped file message to mention gitignore feature.
    • Made all exceptions pickleable.
    • Fixed #1779: Pylama integration ignores pylama specific isort config overrides.
    • Fixed #1781: --from-first CLI flag shouldn't take any arguments.
    • Fixed #1792: Sorting literals sometimes ignored when placed on first few lines of file.
    • Fixed #1777: extend_skip is not honored wit a git submodule when skip_gitignore=true.

    5.9.2 July 8th 2021

    • Improved behavior of isort --check --atomic against Cython files.
    • Fixed #1769: Future imports added below assignments when no other imports present.
    • Fixed #1772: skip-gitignore will check files not in the git repository.
    • Fixed #1762: in some cases when skip-gitignore is set, isort fails to skip any files.
    • Fixed #1767: Encoding issues surfacing when invalid characters set in __init__.py files during placement.
    • Fixed #1771: Improved handling of skips against named streamed in content.

    5.9.1 June 21st 2021 [hotfix]

    • Fixed #1758: projects with many files and skip_ignore set can lead to a command-line overload.

    5.9.0 June 21st 2021

    • Improved CLI startup time.
    • Implemented #1697: Provisional support for PEP 582: skip __pypackages__ directories by default.
    • Implemented #1705: More intuitive handling of isort:skip_file comments on streams.
    • Implemented #1737: Support for using action comments to avoid adding imports to individual files.
    • Implemented #1750: Ability to customize output format lines.
    • Implemented #1732: Support for custom sort functions.
    • Implemented #1722: Improved behavior for running isort in atomic mode over Cython source files.
    • Fixed (PyCQA/isort#1695): added imports being added to doc string in some cases.
    • Fixed (PyCQA/isort#1714): in rare cases line continuation combined with tabs can output invalid code.
    • Fixed (PyCQA/isort#1726): isort ignores reverse_sort when force_sort_within_sections is true.
    • Fixed #1741: comments in hanging indent modes can lead to invalid code.
    • Fixed #1744: repeat noqa comments dropped when * import and non * imports exist from the same package.
    • Fixed #1721: repeat noqa comments on separate from lines with force-single-line set, sometimes get dropped.

    Goal Zero (Tickets related to aspirational goal of achieving 0 regressions for remaining 5.0.0 lifespan):

    • Implemented #1394: 100% branch coverage (in addition to line coverage) enforced.
    • Implemented #1751: Strict typing enforcement (turned on mypy strict mode).
    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump numpy from 1.20.3 to 1.21.4

    Bump numpy from 1.20.3 to 1.21.4

    Bumps numpy from 1.20.3 to 1.21.4.

    Release notes

    Sourced from numpy's releases.

    v1.21.4

    NumPy 1.21.4 Release Notes

    The NumPy 1.21.4 is a maintenance release that fixes a few bugs discovered after 1.21.3. The most important fix here is a fix for the NumPy header files to make them work for both x86_64 and M1 hardware when included in the Mac universal2 wheels. Previously, the header files only worked for M1 and this caused problems for folks building x86_64 extensions. This problem was not seen before Python 3.10 because there were thin wheels for x86_64 that had precedence. This release also provides thin x86_64 Mac wheels for Python 3.10.

    The Python versions supported in this release are 3.7-3.10. If you want to compile your own version using gcc-11, you will need to use gcc-11.2+ to avoid problems.

    Contributors

    A total of 7 people contributed to this release. People with a "+" by their names contributed a patch for the first time.

    • Bas van Beek
    • Charles Harris
    • Isuru Fernando
    • Matthew Brett
    • Sayed Adel
    • Sebastian Berg
    • 傅立业(Chris Fu) +

    Pull requests merged

    A total of 9 pull requests were merged for this release.

    • #20278: BUG: Fix shadowed reference of dtype in type stub
    • #20293: BUG: Fix headers for universal2 builds
    • #20294: BUG: VOID_nonzero could sometimes mutate alignment flag
    • #20295: BUG: Do not use nonzero fastpath on unaligned arrays
    • #20296: BUG: Distutils patch to allow for 2 as a minor version (!)
    • #20297: BUG, SIMD: Fix 64-bit/8-bit integer division by a scalar
    • #20298: BUG, SIMD: Workaround broadcasting SIMD 64-bit integers on MSVC...
    • #20300: REL: Prepare for the NumPy 1.21.4 release.
    • #20302: TST: Fix a Arrayterator typing test failure

    Checksums

    MD5

    ... (truncated)

    Commits
    • c0b003e Merge pull request #20304 from charris/prepare-1.21.4-release-2
    • 0a7fba9 REL: Prepare for NumPy 1.21.4 release (2)
    • 5d3c424 Merge pull request #20302 from BvB93/arrayterator2
    • f9dce44 TST: Fix a Arrayterator typing test failure
    • 1584f12 Merge pull request #20300 from charris/prepare-1.21.4-release
    • 0eab6bb REL: Prepare for the NumPy 1.21.4 release.
    • b134e90 Merge pull request #20293 from charris/backport-20270
    • acbbf1a Merge pull request #20294 from charris/backport-20237
    • 5fe9833 Merge pull request #20295 from charris/backport-20179
    • 496c9c0 Merge pull request #20296 from charris/backport-20155
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump pytype from 2021.5.25 to 2021.10.25

    Bump pytype from 2021.5.25 to 2021.10.25

    Bumps pytype from 2021.5.25 to 2021.10.25.

    Changelog

    Sourced from pytype's changelog.

    Version 2021.10.25:

    New features and updates:

    • Completely remove the --preserve-union-macros flag. This was a no-op as of version 2021.10.17.
    • Add a new flag, --build-dict-literals-from-kwargs, to construct dict literals for dict(k=v, ...). This behavior will ultimately by enabled by default and the flag removed.
    • Add a new flag, --strict_namedtuple_checks, for typing.NamedTuple and collections.namedtuple to inherit from fixed-length tuples. This behavior will ultimately be enabled by default and the flag removed.

    Bug fixes:

    • Fix how the enum overlay calls base_type.__new__.
    • Improve how the enum overlay chooses base types.
    • When an attr.ib() call has type errors, construct the attrib anyway.
    • Support builtin str removeprefix/removesuffix.

    Version 2021.10.18

    New features and updates:

    • Completely remove the --attribute-variable-annotations flag. This was a no-op as of version 2021.10.11.
    • Enable --preserve-union-macros by default and make the flag a no-op. It will be removed in the next release.

    Bug fixes:

    • Enum overlay: fix crash due to loading __new__ from a PyTDClass.
    • Enum overlay: use ClassVar to differentiate enum class attributes.
    • Fix a parser bug involving nested class name conflicts.
    • Fix a crash when lazily loading a missing submodule.
    • Change PrintVisitor to group explicit imports with the ones collected from type annotations.

    Version 2021.10.11

    New features and updates:

    • Update pytype and typing annotation stubs for features added in attrs 21.1.0.
    • Enable --attribute-variable-annotations by default and make the flag a no-op. It will be removed in the next release.
    • The --use-enum-overlay flag is ready for general use. Enable this flag for precise typing of the stdlib enum library.

    Bug fixes:

    • Support quoted types as annotations in pyi files.
    • Add precise overloads for the map function.
    • Support Ellipsis annotations in pyi files.
    • Preserve None in unions containing Any.
    • Fix a pyi import printing bug.
    • Improve ignored-abstractmethod error message.

    ... (truncated)

    Commits
    • 60e8346 Merge pull request #1036 from google/google_sync
    • a98fb64 Prepare a PyPI release.
    • ed3a451 Update typing.NamedTuple to be considered a typing.Tuple[{field_types...}].
    • e890e3d Address some new errors generated by dict() change.
    • eaaf153 Merge pull request #1035 from google/google_sync
    • d5b7488 Finish removing --chex-overlay.
    • 9b4732e Fix oss lint issues.
    • 1b5174b Support builtin str removeprefix/removesuffix (#1033)
    • 1769e66 Construct dict literals for dict(k=v, ...).
    • dee755e Always enable --chex-overlay.
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump numpy from 1.20.3 to 1.21.3

    Bump numpy from 1.20.3 to 1.21.3

    Bumps numpy from 1.20.3 to 1.21.3.

    Release notes

    Sourced from numpy's releases.

    v1.21.3

    NumPy 1.21.3 Release Notes

    The NumPy 1.21.3 is a maintenance release the fixes a few bugs discovered after 1.21.2. It also provides 64 bit Python 3.10.0 wheels. Note a few oddities about Python 3.10:

    • There are no 32 bit wheels for Windows, Mac, or Linux.
    • The Mac Intel builds are only available in universal2 wheels.

    The Python versions supported in this release are 3.7-3.10. If you want to compile your own version using gcc-11 you will need to use gcc-11.2+ to avoid problems.

    Contributors

    A total of 7 people contributed to this release. People with a "+" by their names contributed a patch for the first time.

    • Aaron Meurer
    • Bas van Beek
    • Charles Harris
    • Developer-Ecosystem-Engineering +
    • Kevin Sheppard
    • Sebastian Berg
    • Warren Weckesser

    Pull requests merged

    A total of 8 pull requests were merged for this release.

    • #19745: ENH: Add dtype-support to 3 `generic/ndarray methods
    • #19955: BUG: Resolve Divide by Zero on Apple silicon + test failures...
    • #19958: MAINT: Mark type-check-only ufunc subclasses as ufunc aliases...
    • #19994: BUG: np.tan(np.inf) test failure
    • #20080: BUG: Correct incorrect advance in PCG with emulated int128
    • #20081: BUG: Fix NaT handling in the PyArray_CompareFunc for datetime...
    • #20082: DOC: Ensure that we add documentation also as to the dict for...
    • #20106: BUG: core: result_type(0, np.timedelta64(4)) would seg. fault.

    Checksums

    MD5

    9acea9630856659ba48fdb582ecc37b4  numpy-1.21.3-cp310-cp310-macosx_10_9_universal2.whl
    a70f80a4e74a3153a8307c4f0ea8d13d  numpy-1.21.3-cp310-cp310-macosx_11_0_arm64.whl
    

    ... (truncated)

    Commits
    • d4d0584 Merge pull request #20141 from charris/prepare-for-1.21.3-release
    • 649a2f6 REL: Prepare for 1.21.3 release.
    • c36c4e3 Merge pull request #20106 from charris/backport-20088
    • b30f189 BUG: core: result_type(0, np.timedelta64(4)) would seg. fault.
    • 707f650 Merge pull request #20082 from charris/backport-18775
    • 222dc20 Merge pull request #20081 from charris/backport-19607
    • 94c8a3c Merge pull request #20080 from charris/backport-20049
    • 8f0c4b0 Apply suggestions from code review
    • 2144b1c DOC: Ensure that we add documentation also as to the dict for types
    • 73e7a12 Fix the implementation of DATETIME_compare
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump pytype from 2021.5.25 to 2021.10.4

    Bump pytype from 2021.5.25 to 2021.10.4

    Bumps pytype from 2021.5.25 to 2021.10.4.

    Commits
    • bff3736 Merge pull request #1019 from google/google_sync
    • 300a3d3 Prepare a PyPI release.
    • e798285 Fix a bug in matching callables with TypeVar parameters.
    • d7afc20 Check Instance.maybe_missing_members earlier during attribute access.
    • bc6881b Add a separate logger for debug tracing.
    • 32448f8 Disable enum equality checks and don't use atomic strings for canonical names.
    • 2bef63f Rename annotations_util to annotation_utils.
    • 89d9e32 Allow enum members in Literals.
    • e6f5251 Merge BaseValue.cls and BaseValue.get_class().
    • 5be9b24 Merge pull request #1017 from google/google_sync
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump isort from 5.8.0 to 5.11.4

    Bump isort from 5.8.0 to 5.11.4

    Bumps isort from 5.8.0 to 5.11.4.

    Release notes

    Sourced from isort's releases.

    5.11.4

    Changes

    :package: Dependencies

    5.11.3

    Changes

    :beetle: Fixes

    :construction_worker: Continuous Integration

    v5.11.3

    Changes

    :beetle: Fixes

    :construction_worker: Continuous Integration

    5.11.2

    Changes

    5.11.1

    Changes December 12 2022

    ... (truncated)

    Changelog

    Sourced from isort's changelog.

    5.11.4 December 21 2022

    5.11.3 December 16 2022

    5.11.2 December 12 2022

    5.11.1 December 12 2022

    5.11.0 December 12 2022

    ... (truncated)

    Commits
    • 98390f5 Merge pull request #2059 from PyCQA/version/5.11.4
    • df69a05 Bump version 5.11.4
    • f9add58 Merge pull request #2058 from PyCQA/deps/poetry-1.3.1
    • 36caa91 Bump Poetry 1.3.1
    • 3c2e2d0 Merge pull request #1978 from mgorny/toml-test
    • 45d6abd Remove obsolete toml import from the test suite
    • 3020e0b Merge pull request #2057 from mgorny/poetry-install
    • a6fdbfd Stop installing documentation files to top-level site-packages
    • ff306f8 Fix tag template to match old standard
    • 227c4ae Merge pull request #2052 from hugovk/main
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Bump pytest-xdist from 2.2.1 to 3.1.0

    Bump pytest-xdist from 2.2.1 to 3.1.0

    Bumps pytest-xdist from 2.2.1 to 3.1.0.

    Changelog

    Sourced from pytest-xdist's changelog.

    pytest-xdist 3.1.0 (2022-12-01)

    Features

    • [#789](https://github.com/pytest-dev/pytest-xdist/issues/789) <https://github.com/pytest-dev/pytest-xdist/issues/789>_: Users can now set a default distribution mode in their configuration file:

      .. code-block:: ini

      [pytest]
      addopts = --dist loadscope
      
    • [#842](https://github.com/pytest-dev/pytest-xdist/issues/842) <https://github.com/pytest-dev/pytest-xdist/issues/842>_: Python 3.11 is now officially supported.

    Removals

    • [#842](https://github.com/pytest-dev/pytest-xdist/issues/842) <https://github.com/pytest-dev/pytest-xdist/issues/842>_: Python 3.6 is no longer supported.

    pytest-xdist 3.0.2 (2022-10-25)

    Bug Fixes

    • [#813](https://github.com/pytest-dev/pytest-xdist/issues/813) <https://github.com/pytest-dev/pytest-xdist/issues/813>_: Cancel shutdown when a crashed worker is restarted.

    Deprecations

    • [#825](https://github.com/pytest-dev/pytest-xdist/issues/825) <https://github.com/pytest-dev/pytest-xdist/issues/825>_: The --rsyncdir command line argument and rsyncdirs config variable are deprecated.

      The rsync feature will be removed in pytest-xdist 4.0.

    • [#826](https://github.com/pytest-dev/pytest-xdist/issues/826) <https://github.com/pytest-dev/pytest-xdist/issues/826>_: The --looponfail command line argument and looponfailroots config variable are deprecated.

      The loop-on-fail feature will be removed in pytest-xdist 4.0.

    Improved Documentation

    • [#791](https://github.com/pytest-dev/pytest-xdist/issues/791) <https://github.com/pytest-dev/pytest-xdist/issues/791>_: Document the pytest_xdist_auto_num_workers hook.

    • [#796](https://github.com/pytest-dev/pytest-xdist/issues/796) <https://github.com/pytest-dev/pytest-xdist/issues/796>_: Added known limitations section to documentation.

    ... (truncated)

    Commits
    • 92a76bb Release 3.1.0
    • 6226965 Merge pull request #851 from nicoddemus/789-default-dist-mode
    • 7a0bc4c Let users configure dist mode in the configuration file
    • c6bcd20 [pre-commit.ci] pre-commit autoupdate (#849)
    • 99c80c3 Fix typo psutils -> psutil (#848)
    • e14895a [pre-commit.ci] pre-commit autoupdate (#846)
    • bb27210 Merge pull request #844 from pytest-dev/pre-commit-ci-update-config
    • 4a33933 Use ternary operator to remove mypy error
    • 41620d2 [pre-commit.ci] pre-commit autoupdate
    • 6b6f133 Merge pull request #842 from nicoddemus/drop-py36-add-py311
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Bump numpy from 1.20.3 to 1.21.6

    Bump numpy from 1.20.3 to 1.21.6

    Bumps numpy from 1.20.3 to 1.21.6.

    Release notes

    Sourced from numpy's releases.

    v1.21.6

    NumPy 1.21.6 Release Notes

    NumPy 1.21.6 is a very small release that achieves two things:

    • Backs out the mistaken backport of C++ code into 1.21.5.
    • Provides a 32 bit Windows wheel for Python 3.10.

    The provision of the 32 bit wheel is intended to make life easier for oldest-supported-numpy.

    Checksums

    MD5

    5a3e5d7298056bcfbc3246597af474d4  numpy-1.21.6-cp310-cp310-macosx_10_9_universal2.whl
    d981d2859842e7b62dc93e24808c7bac  numpy-1.21.6-cp310-cp310-macosx_10_9_x86_64.whl
    171313893c26529404d09fadb3537ed3  numpy-1.21.6-cp310-cp310-macosx_11_0_arm64.whl
    5a7a6dfdd43069f9b29d3fe6b7f3a2ce  numpy-1.21.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
    a9e25375a72725c5d74442eda53af405  numpy-1.21.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
    6f9a782477380b2cdb7606f6f7634c00  numpy-1.21.6-cp310-cp310-win32.whl
    32a73a348864700a3fa510d2fc4350b7  numpy-1.21.6-cp310-cp310-win_amd64.whl
    0db8941ebeb0a02cd839d9cd3c5c20bb  numpy-1.21.6-cp37-cp37m-macosx_10_9_x86_64.whl
    67882155be9592850861f4ad8ba36623  numpy-1.21.6-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl
    c70e30e1ff9ab49f898c19e7a6492ae6  numpy-1.21.6-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
    e32dbd291032c7554a742f1bb9b2f7a3  numpy-1.21.6-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
    689bf804c2cd16cb241fd943e3833ffd  numpy-1.21.6-cp37-cp37m-win32.whl
    0062a7b0231a07cb5b9f3d7c495e6fe4  numpy-1.21.6-cp37-cp37m-win_amd64.whl
    0d08809980ab497659e7aa0df9ce120e  numpy-1.21.6-cp38-cp38-macosx_10_9_universal2.whl
    3c67d14ea2009069844b27bfbf74304d  numpy-1.21.6-cp38-cp38-macosx_10_9_x86_64.whl
    5f0e773745cb817313232ac1bf4c7eee  numpy-1.21.6-cp38-cp38-macosx_11_0_arm64.whl
    fa8011e065f1964d3eb870bb3926fc99  numpy-1.21.6-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl
    486cf9d4daab59aad253aa5b84a5aa83  numpy-1.21.6-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
    88509abab303c076dfb26f00e455180d  numpy-1.21.6-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
    f7234e2ef837f5f6ddbde8db246fd05b  numpy-1.21.6-cp38-cp38-win32.whl
    e1063e01fb44ea7a49adea0c33548217  numpy-1.21.6-cp38-cp38-win_amd64.whl
    61c4caad729e3e0e688accbc1424ed45  numpy-1.21.6-cp39-cp39-macosx_10_9_universal2.whl
    67488d8ccaeff798f2e314aae7c4c3d6  numpy-1.21.6-cp39-cp39-macosx_10_9_x86_64.whl
    128c3713b5d1de45a0f522562bac5263  numpy-1.21.6-cp39-cp39-macosx_11_0_arm64.whl
    50e79cd0610b4ed726b3bf08c3716dab  numpy-1.21.6-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl
    bd0c9e3c0e488faac61daf3227fb95af  numpy-1.21.6-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
    aa5e9baf1dec16b15e481c23f8a23214  numpy-1.21.6-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
    a2405b0e5d3f775ad30177296a997092  numpy-1.21.6-cp39-cp39-win32.whl
    f0d20eda8c78f957ea70c5527954303e  numpy-1.21.6-cp39-cp39-win_amd64.whl
    9682abbcc38cccb7f56e48aacca7de23  numpy-1.21.6-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
    6aa3c2e8ea2886bf593bd8e0a1425c64  numpy-1.21.6.tar.gz
    04aea95dcb1d256d13a45df42173aa1e  numpy-1.21.6.zip
    

    SHA256

    ... (truncated)

    Commits
    • ef0ec78 Merge pull request #21323 from charris/prepare-1.21.6-release
    • 24a8ec0 REL: Prepare for NumPy 1.21.6 release.
    • 68ff2d3 Merge pull request #21318 from charris/revert-20354
    • 30ba38c REV: Revert pull request #20464 from charris/backport-20354
    • 7cfef93 REL: prepare 1.21.x for further development
    • c3d0a09 Merge pull request #20625 from charris/prepare-for-1.22.5
    • d8dfa93 REL: Prepare for NumPy 1.21.5 release.
    • e559d9a Merge pull request #20618 from charris/backport-20616
    • c2495e3 MAINT: Help boost::python libraries at least not crash
    • 8c04d2a Merge pull request #20613 from charris/backport-20604
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Bump scipy from 1.6.3 to 1.7.3

    Bump scipy from 1.6.3 to 1.7.3

    Bumps scipy from 1.6.3 to 1.7.3.

    Release notes

    Sourced from scipy's releases.

    SciPy 1.7.3 Release Notes

    SciPy 1.7.3 is a bug-fix release that provides binary wheels for MacOS arm64 with Python 3.8, 3.9, and 3.10. The MacOS arm64 wheels are only available for MacOS version 12.0 and greater, as explained in Issue 14688.

    Authors

    • Anirudh Dagar
    • Ralf Gommers
    • Tyler Reddy
    • Pamphile Roy
    • Olivier Grisel
    • Isuru Fernando

    A total of 6 people contributed to this release. People with a "+" by their names contributed a patch for the first time. This list of names is automatically generated, and may not be fully complete.

    SciPy 1.7.2 Release Notes

    SciPy 1.7.2 is a bug-fix release with no new features compared to 1.7.1. Notably, the release includes wheels for Python 3.10, and wheels are now built with a newer version of OpenBLAS, 0.3.17. Python 3.10 wheels are provided for MacOS x86_64 (thin, not universal2 or arm64 at this time), and Windows/Linux 64-bit. Many wheels are now built with newer versions of manylinux, which may require newer versions of pip.

    Authors

    • Peter Bell
    • da-woods +
    • Isuru Fernando
    • Ralf Gommers
    • Matt Haberland
    • Nicholas McKibben
    • Ilhan Polat
    • Judah Rand +
    • Tyler Reddy
    • Pamphile Roy
    • Charles Harris
    • Matti Picus
    • Hugo van Kemenade
    • Jacob Vanderplas

    ... (truncated)

    Commits
    • 59e6539 REL: 1.7.3 release commit.
    • 9fcfc45 Merge pull request #15088 from tylerjereddy/treddy_backports_173
    • 7275c59 DOC: update 1.7.3 relnotes.
    • 20c42c2 MAINT: PR 15088 revisions
    • 759f76e DOC: draft 1.7.3 release notes
    • 4f14791 BUG: out of bounds indexing in stats.qmc.update_discrepancy.
    • 1b9e907 Merge pull request #15090 from rgommers/arm64-17x
    • d75f647 TST: skip failing integrate tests on macOS arm64 - zvode issue
    • b785d56 TST: skip a failing arpack test on macOS arm64
    • 526e6c4 TST: mark an mpmath test that appears to hang as xslow
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Bump pytype from 2021.5.25 to 2021.11.2

    Bump pytype from 2021.5.25 to 2021.11.2

    Bumps pytype from 2021.5.25 to 2021.11.2.

    Commits
    • 24e396b Merge pull request #1040 from google/google_sync
    • 1cb0647 Prepare a PyPI release.
    • 03df5c3 Add test for circular types in enum instance attributes.
    • 6e33205 Add a bit more support for PEP 612 in stubs.
    • c0ab8a9 Fix a crash caused by EnumInstance.instantiate() calling itself.
    • d97641f Add a feature flag, --gen-stub-imports, to improve pyi import handling.
    • 758e242 Fix a couple more pyi import bugs.
    • dff7917 Add __init__ attributes to canonical enum members.
    • 4849e94 Update comments about overwritten methods.
    • 1978155 Try again to fix Coverage timeout.
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
Releases(v0.0.1)
  • v0.0.1(Jun 4, 2021)

    v0.0.1

    Initial release of SYMPAIS.

    This includes

    1. SYMPAIS implementation with HMC and RWMH kernel.
    2. Baseline implementations (DMC, qCoral).
    3. Benchmark tasks described in the the ESEC/FSE paper.
    4. Experimental SMT interface implementation.
    Source code(tar.gz)
    Source code(zip)
Owner
Yicheng Luo
PhD student at UCL AI Center. Previous Research Engineering intern at DeepMind and Prowler.io.
Yicheng Luo
Code for reproducing our analysis in the paper titled: Image Cropping on Twitter: Fairness Metrics, their Limitations, and the Importance of Representation, Design, and Agency

Image Crop Analysis This is a repo for the code used for reproducing our Image Crop Analysis paper as shared on our blog post. If you plan to use this

Twitter Research 239 Jan 2, 2023
Official PyTorch implementation for FastDPM, a fast sampling algorithm for diffusion probabilistic models

Official PyTorch implementation for "On Fast Sampling of Diffusion Probabilistic Models". FastDPM generation on CIFAR-10, CelebA, and LSUN datasets. S

Zhifeng Kong 68 Dec 26, 2022
Model parallel transformers in Jax and Haiku

Mesh Transformer Jax A haiku library using the new(ly documented) xmap operator in Jax for model parallelism of transformers. See enwik8_example.py fo

Ben Wang 4.8k Jan 1, 2023
GAN JAX - A toy project to generate images from GANs with JAX

GAN JAX - A toy project to generate images from GANs with JAX This project aims to bring the power of JAX, a Python framework developped by Google and

Valentin Goldité 14 Nov 29, 2022
Mini-hmc-jax - A simple implementation of Hamiltonian Monte Carlo in JAX

mini-hmc-jax This is a simple implementation of Hamiltonian Monte Carlo in JAX t

Martin Marek 6 Mar 3, 2022
CLOOB training (JAX) and inference (JAX and PyTorch)

cloob-training Pretrained models There are two pretrained CLOOB models in this repo at the moment, a 16 epoch and a 32 epoch ViT-B/16 checkpoint train

Katherine Crowson 64 Nov 27, 2022
Face2webtoon - Despite its importance, there are few previous works applying I2I translation to webtoon.

Despite its importance, there are few previous works applying I2I translation to webtoon. I collected dataset from naver webtoon 연애혁명 and tried to transfer human faces to webtoon domain.

이상윤 64 Oct 19, 2022
Rethinking the Importance of Implementation Tricks in Multi-Agent Reinforcement Learning

RIIT Our open-source code for RIIT: Rethinking the Importance of Implementation Tricks in Multi-AgentReinforcement Learning. We implement and standard

null 405 Jan 6, 2023
I-SECRET: Importance-guided fundus image enhancement via semi-supervised contrastive constraining

I-SECRET This is the implementation of the MICCAI 2021 Paper "I-SECRET: Importance-guided fundus image enhancement via semi-supervised contrastive con

null 13 Dec 2, 2022
Official code of our work, AVATAR: A Parallel Corpus for Java-Python Program Translation.

AVATAR Official code of our work, AVATAR: A Parallel Corpus for Java-Python Program Translation. AVATAR stands for jAVA-pyThon progrAm tRanslation. AV

Wasi Ahmad 26 Dec 3, 2022
Theano is a Python library that allows you to define, optimize, and evaluate mathematical expressions involving multi-dimensional arrays efficiently. It can use GPUs and perform efficient symbolic differentiation.

============================================================================================================ `MILA will stop developing Theano <https:

null 9.6k Dec 31, 2022
Theano is a Python library that allows you to define, optimize, and evaluate mathematical expressions involving multi-dimensional arrays efficiently. It can use GPUs and perform efficient symbolic differentiation.

============================================================================================================ `MILA will stop developing Theano <https:

null 9.6k Jan 6, 2023
Theano is a Python library that allows you to define, optimize, and evaluate mathematical expressions involving multi-dimensional arrays efficiently. It can use GPUs and perform efficient symbolic differentiation.

============================================================================================================ `MILA will stop developing Theano <https:

null 9.3k Feb 12, 2021
ATOMIC 2020: On Symbolic and Neural Commonsense Knowledge Graphs

(Comet-) ATOMIC 2020: On Symbolic and Neural Commonsense Knowledge Graphs Paper Jena D. Hwang, Chandra Bhagavatula, Ronan Le Bras, Jeff Da, Keisuke Sa

AI2 152 Dec 27, 2022
PIGLeT: Language Grounding Through Neuro-Symbolic Interaction in a 3D World [ACL 2021]

piglet PIGLeT: Language Grounding Through Neuro-Symbolic Interaction in a 3D World [ACL 2021] This repo contains code and data for PIGLeT. If you like

Rowan Zellers 51 Oct 8, 2022
Official repository for the paper, MidiBERT-Piano: Large-scale Pre-training for Symbolic Music Understanding.

MidiBERT-Piano Authors: Yi-Hui (Sophia) Chou, I-Chun (Bronwin) Chen Introduction This is the official repository for the paper, MidiBERT-Piano: Large-

null 137 Dec 15, 2022
Source code and Dataset creation for the paper "Neural Symbolic Regression That Scales"

NeuralSymbolicRegressionThatScales Pytorch implementation and pretrained models for the paper "Neural Symbolic Regression That Scales", presented at I

null 35 Nov 25, 2022
Data and Code for ACL 2021 Paper "Inter-GPS: Interpretable Geometry Problem Solving with Formal Language and Symbolic Reasoning"

Introduction Code and data for ACL 2021 Paper "Inter-GPS: Interpretable Geometry Problem Solving with Formal Language and Symbolic Reasoning". We cons

Pan Lu 81 Dec 27, 2022
PyBullet CartPole and Quadrotor environments—with CasADi symbolic a priori dynamics—for learning-based control and reinforcement learning

safe-control-gym Physics-based CartPole and Quadrotor Gym environments (using PyBullet) with symbolic a priori dynamics (using CasADi) for learning-ba

Dynamic Systems Lab 300 Dec 28, 2022