Jupyter extension for Rust.

Overview

rustdef

Test PyPI version

Jupyter extension for jupyter notebook and rust user.

You can define functions in rust and run them as python functions. This extension is built on PyO3 and maturin.

Examples

Prerequisite

Install

$ pip install rustdef

Usage

Define rust functions,

%%rustdef
#[pyfunction]
fn my_func(x: i64, y: &str) -> i64 {
    println!("{}", y);
    x + y.len() as i64
}

Add dependencies, (e.g. num crate)

%rustdef deps add [email protected]

Defined dependencies are valid only in the current notebook.

Show dependencies,

%rustdef deps show
num = "0.4.0"

[pyo3]
version = "0.13.2"
features = [ "extension-module",]

pyo3 is included by default.

Develop

How it works?

Roughly, definitions in rustdef are available in python after the following steps.

  1. Each rustdef magic cell is populated with module definition of pyo3
  2. A new crate is generated for the rustdef cell
  3. The crate is compiled into a python wheel by maturin
  4. Install the wheel with pip
  5. Functions with #[pyfunction] attributes are exported into interpreter name space in notebook
  6. Ready to call the function in notebook!

Build

maturin is required.

$ pip install maturin
$ maturin build
$ pip install target/wheels/rustdef-{version}-{python}-{platform}.whl

ToDo

  • execute within rustdef cell
  • class/module supports
  • customizable module name
  • use functions defined in another cell
  • verbose flag
  • serde support
  • windows support
Comments
  • Bump zip from 0.5.9 to 0.5.10

    Bump zip from 0.5.9 to 0.5.10

    Bumps zip from 0.5.9 to 0.5.10.

    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] 3
  • Bump numpy from 0.9.0 to 0.11.0

    Bump numpy from 0.9.0 to 0.11.0

    Bumps numpy from 0.9.0 to 0.11.0.

    Release notes

    Sourced from numpy's releases.

    rust-numpy v0.11.0

    • PyArray::get is now unsafe.
    • Introduce PyArray::get_owned and PyReadonlyArray::get.

    rust-numpy v0.10.0

    I want to note that there are two important changes in this version. One is that rust-numpy works on stable Rust as per PyO3 0.11, and the other is PyReadonlyArray. To prevent undefined behavior, PyArray::as_slice and families are unsafe now. Please use the safe PyReadonlyArray::as_slice instead.

    • Remove ErrorKind and introduce some concrete error types
    • PyArray::as_slice, PyArray::as_slice_mut, PyArray::as_array, and PyArray::as_array_mut is now unsafe.
    • Introduce PyArray::as_cell_slice, PyArray::to_vec, and PyArray::to_owned_array
    • Rename TypeNum trait Element, and NpyDataType DataType
    Changelog

    Sourced from numpy's changelog.

    Changelog

    • v0.11.0

      • PyArray::get is now unsafe.
      • Introduce PyArray::get_owned and PyReadonlyArray::get.
    • v0.10.0

      • Remove ErrorKind and introduce some concrete error types.
      • PyArray::as_slice, PyArray::as_slice_mut, PyArray::as_array, and PyArray::as_array_mut is now unsafe.
      • Introduce PyArray::as_cell_slice, PyArray::to_vec, and PyArray::to_owned_array.
      • Rename TypeNum trait Element, and NpyDataType DataType.
      • Update PyO3 to 0.11
    • v0.9.0

      • Update PyO3 to 0.10.0
    • v0.8.0

      • Update PyO3 to 0.9.0
      • Fix SliceBox initialization
    • v0.7.0

      • Update PyO3 to 0.8
    • v0.6.0

      • Update PyO3 to 0.7
      • Drop Python2 support
    • v0.5.0

      • Update PyO3 to 0.6
    • v0.4.0

      • Duplicate PyArrayModule and import Numpy API automatically
      • Fix memory leak of IntoPyArray and add ToPyArray crate
      • PyArray has dimension as type parameter. Now it looks like PyArray<T, D>
      • Use ndarray::IntoDimension to specify dimension
      • Python2 support
    • v0.3.1, v0.3.2

      • Just update dependencies
    • v0.3.0

    • v0.2.1

      • NEW: trait IntoPyErr, IntoPyResult for error translation
    • v0.2.0

      • NEW: traits IntoPyArray, ToPyArray
      • MOD: Interface of PyArray creation functions are changed
    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] 3
  • Error installing rustdef

    Error installing rustdef

    Installing rustdef using the command pip install rustdef gives me the following error messages. I'm using Python3 3.10.6.

    ERROR: Could not find a version that satisfies the requirement rustdef (from versions: none) ERROR: No matching distribution found for rustdef

    opened by dclong 2
  • Bump pyo3 from 0.13.2 to 0.15.0

    Bump pyo3 from 0.13.2 to 0.15.0

    Bumps pyo3 from 0.13.2 to 0.15.0.

    Release notes

    Sourced from pyo3's releases.

    PyO3 0.15.0

    This release of PyO3 brings support for Python 3.10 and PyPy 3.8. In addition, new optional dependencies on anyhow and eyre have been added for easy integration of the popular error-handling libraries with Python code.

    A number of consistency improvements have been made to PyList, PyTuple and PySequence APIs. They now all exclusively use usize- based indexing, and now also support Rust's indexing operator.

    In this release #[pymethods] are now able to implement many magic methods such as __str__ and __repr__, removing the need for #[pyproto] macro implementations. For the 0.15 release series both #[pymethods] and #[pyproto] will be supported; #[pyproto] is expected to be deprecated in the future.

    For full details of all changes, see the CHANGELOG. For help with upgrading, see the migration guide.

    Thank you to everyone who contributed code, documentation, design ideas, bug reports, and feedback.

    PyO3 0.14.5

    This release fixes a compile regression of PyO3 0.14.4 where not all APIs related to PyStringData were conditionally disabled correctly on big-endian platforms.

    In addition, a few public APIs have been added to the pyo3_build_config crate to support needs of the PyOxidizer project.

    Thanks to @​decathorpe and @​indygreg for further reports, discussions, and resolution.

    PyO3 0.14.4

    This release resolves issues with the PyString::data API added in 0.14.3. After release it was found to be unsound on certain platforms, so has been disabled on those platforms and marked unsafe with the safety expectation that users will ensure it works appropriately on their platform as part of usage.

    Thanks to @​decathorpe and @​indygreg for the report, discussion, and resolution.

    PyO3 0.14.3

    This release is a small set of bugfixes added on top of the PyO3 0.14.2 release.

    For full details of all changes, see the CHANGELOG.

    Thank you to everyone who contributed code, documentation, design ideas, bug reports, and feedback. The following users' commits are included in this release:

    @​awestlake87 @​davidhewitt @​indygreg @​mejrs @​messense @​mtreinish @​pschafhalter @​Ptrskay3 @​sansyrox @​tiran

    PyO3 0.14.2

    This release is a small quality-of-life update for the PyO3 0.14 release series. Optional support for the indexmap crate has been added. In addition, there have been a number of documentation improvements, and bugfixes for regressions and incorrect FFI definitions.

    Users who removed macOS cargo configuration from their setup after updating to PyO3 0.14 will unfortunately have to once again add configuration to their compilation after updating to this release. This is because PyO3 was using functionality which Cargo had erroneously allowed.

    The recommended way to restore configuration for macOS is to add a build script which invokes pyo3_build_config::add_extension_module_link_args(). The cargo configuration previously recommended is also still an option.

    For full details of all changes, see the CHANGELOG.

    ... (truncated)

    Changelog

    Sourced from pyo3's changelog.

    [0.15.0] - 2021-11-03

    Packaging

    • pyo3's Cargo.toml now advertises links = "python" to inform Cargo that it links against libpython. #1819
    • Added optional anyhow feature to convert anyhow::Error into PyErr. #1822
    • Support Python 3.10. #1889
    • Added optional eyre feature to convert eyre::Report into PyErr. #1893
    • Support PyPy 3.8. #1948

    Added

    • Add PyList::get_item_unchecked and PyTuple::get_item_unchecked to get items without bounds checks. #1733
    • Support #[doc = include_str!(...)] attributes on Rust 1.54 and up. #1746
    • Add PyAny::py as a convenience for PyNativeType::py. #1751
    • Add implementation of std::ops::Index<usize> for PyList, PyTuple and PySequence. #1825
    • Add range indexing implementations of std::ops::Index for PyList, PyTuple and PySequence. #1829
    • Add PyMapping type to represent the Python mapping protocol. #1844
    • Add commonly-used sequence methods to PyList and PyTuple. #1849
    • Add as_sequence methods to PyList and PyTuple. #1860
    • Add support for magic methods in #[pymethods], intended as a replacement for #[pyproto]. #1864
    • Add abi3-py310 feature. #1889
    • Add PyCFunction::new_closure to create a Python function from a Rust closure. #1901
    • Add support for positional-only arguments in #[pyfunction]. #1925
    • Add PyErr::take to attempt to fetch a Python exception if present. #1957

    Changed

    • PyList, PyTuple and PySequence's APIs now accepts only usize indices instead of isize. #1733, #1802, #1803
    • PyList::get_item and PyTuple::get_item now return PyResult<&PyAny> instead of panicking. #1733
    • PySequence::in_place_repeat and PySequence::in_place_concat now return PyResult<&PySequence> instead of PyResult<()>, which is needed in case of immutable sequences such as tuples. #1803
    • PySequence::get_slice now returns PyResult<&PySequence> instead of PyResult<&PyAny>. #1829
    • Deprecate PyTuple::split_from. #1804
    • Deprecate PyTuple::slice, new method PyTuple::get_slice added with usize indices. #1828
    • Deprecate FFI definitions PyParser_SimpleParseStringFlags, PyParser_SimpleParseStringFlagsFilename, PyParser_SimpleParseFileFlags when building for Python 3.9. #1830
    • Mark FFI definitions removed in Python 3.10 PyParser_ASTFromString, PyParser_ASTFromStringObject, PyParser_ASTFromFile, PyParser_ASTFromFileObject, PyParser_SimpleParseStringFlags, PyParser_SimpleParseStringFlagsFilename, PyParser_SimpleParseFileFlags, PyParser_SimpleParseString, PyParser_SimpleParseFile, Py_SymtableString, and Py_SymtableStringObject. #1830
    • #[pymethods] now handles magic methods similarly to #[pyproto]. In the future, #[pyproto] may be deprecated. #1864
    • Deprecate FFI definitions PySys_AddWarnOption, PySys_AddWarnOptionUnicode and PySys_HasWarnOptions. #1887
    • Deprecate #[call] attribute in favor of using fn __call__. #1929
    • Fix missing FFI definition _PyImport_FindExtensionObject on Python 3.10. #1942
    • Change PyErr::fetch to panic in debug mode if no exception is present. #1957

    Fixed

    • Fix building with a conda environment on Windows. #1873
    • Fix panic on Python 3.6 when calling Python::with_gil with Python initialized but threading not initialized. #1874
    • Fix incorrect linking to version-specific DLL instead of python3.dll when cross-compiling to Windows with abi3. #1880
    • Fix FFI definition for PyTuple_ClearFreeList incorrectly being present for Python 3.9 and up. #1887

    ... (truncated)

    Commits
    • 4774744 release: 0.15.0
    • 64df791 Merge pull request #1964 from PyO3/pymethods-args
    • 9ce363a guide: add hints for the signature of pymethods protos
    • 39d2b9d Merge pull request #1957 from davidhewitt/fetch-if-set
    • f801c19 err: add PyErr::take
    • 7b9ae8e Clean up Python documentation (#1963)
    • 0f92f28 Merge pull request #1958 from davidhewitt/pymethods-protos-arguments-cleanup
    • 6a3e1e7 macros: clean up protocol argument extraction a bit
    • bfe7086 Merge pull request #1954 from PyO3/feature-fix
    • 50df2c7 Merge pull request #1955 from PyO3/cargo-toml-deps
    • 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] 2
  • Bump pyo3 from 0.13.0 to 0.13.2

    Bump pyo3 from 0.13.0 to 0.13.2

    Bumps pyo3 from 0.13.0 to 0.13.2.

    Release notes

    Sourced from pyo3's releases.

    PyO3 0.13.2

    This release contains small improvements over PyO3 0.13.1. The minimum supported Rust version has been lowered to Rust 1.41. A serde feature has been added which provides implementations of Serialize and Deserialize for types inside the Py<T> smart pointer.

    Of note is that this release disables automatic finalization of the Python interpreter at program exit for Rust binaries embedding the Python interpreter. This was found to cause a number of issues with C extensions such as Tensorflow and Scipy which were sensitive to the deinitialization order. For the vast majority of users this should cause no impact or fix a number of problem cases. For the minority who did depend on finalization, the unsafe method with_embedded_python_interpreter has been added to manually control the interpreter lifecycle.

    For full details of all changes, see the CHANGELOG.

    Thank you to everyone who contributed code, documentation fixes, design ideas, bug reports, and feedback. The following users' commits are included in this release:

    @alex @awestlake87 @birkenfeld @cfbolz @daniil-konovalenko @davidhewitt @decathorpe @ijl @kangalioo @kngwyu @lazka @nw0 @tdamsma

    PyO3 0.13.1

    This release is a set of quality-of-life improvements and bugfixes for PyO3 0.13.0. All new functionality adds flexibility to pyo3 in rarer cases, such as fixing #[pyclass(dict)] support for the abi3 feature (on compatible Python versions). In addition, a long-overdue initiative to reconcile PyO3's ffi definitions with the current state of the upstream Python API has started. This resulted in a number of new deprecations where mismatches were found.

    For full details of all changes, see the CHANGELOG.

    Thank you to everyone who contributed code, documentation fixes, design ideas, bug reports, and feedback. The following users' commits are included in this release:

    @cecini @dalcde @daniil-konovalenko @davidhewitt @kngwyu @konstin @nw0 @OrangeTux

    Changelog

    Sourced from pyo3's changelog.

    [0.13.2] - 2021-02-12

    Packaging

    • Lower minimum supported Rust version to 1.41. #1421

    Added

    • Add unsafe API with_embedded_python_interpreter to initalize a Python interpreter, execute a closure, and finalize the interpreter. #1355
    • Add serde feature which provides implementations of Serialize and Deserialize for Py<T>. #1366
    • Add FFI definition _PyCFunctionFastWithKeywords on Python 3.7 and up. #1384
    • Add PyDateTime::new_with_fold() method. #1398

    Changed

    • prepare_freethreaded_python will no longer register an atexit handler to call Py_Finalize. This resolves a number of issues with incompatible C extensions causing crashes at finalization. #1355
    • Mark PyLayout::py_init, PyClassDict::clear_dict, and opt_to_pyobj safe, as they do not perform any unsafe operations. #1404

    Fixed

    • Fix support for using r#raw_idents as argument names in pyfunctions. #1383
    • Fix typo in FFI definition for PyFunction_GetCode (was incorrectly PyFunction_Code). #1387
    • Fix FFI definitions PyMarshal_WriteObjectToString and PyMarshal_ReadObjectFromString as available in limited API. #1387
    • Fix FFI definitions PyListObject and those from funcobject.h as requiring non-limited API. #1387
    • Fix unqualified Result usage in pyobject_native_type_base. #1402
    • Fix build on systems where the default Python encoding is not UTF-8. #1405
    • Fix build on mingw / MSYS2. #1423

    [0.13.1] - 2021-01-10

    Added

    • Add support for #[pyclass(dict)] and #[pyclass(weakref)] with the abi3 feature on Python 3.9 and up. #1342
    • Add FFI definitions PyOS_BeforeFork, PyOS_AfterFork_Parent, PyOS_AfterFork_Child for Python 3.7 and up. #1348
    • Add an auto-initialize feature to control whether PyO3 should automatically initialize an embedded Python interpreter. For compatibility this feature is enabled by default in PyO3 0.13.1, but is planned to become opt-in from PyO3 0.14.0. #1347
    • Add support for cross-compiling to Windows without needing PYO3_CROSS_INCLUDE_DIR. #1350

    Deprecated

    • Deprecate FFI definitions PyEval_CallObjectWithKeywords, PyEval_CallObject, PyEval_CallFunction, PyEval_CallMethod when building for Python 3.9. #1338
    • Deprecate FFI definitions PyGetSetDef_DICT and PyGetSetDef_INIT which have never been in the Python API. #1341
    • Deprecate FFI definitions PyGen_NeedsFinalizing, PyImport_Cleanup (removed in 3.9), and PyOS_InitInterrupts (3.10). #1348
    • Deprecate FFI definition PyOS_AfterFork for Python 3.7 and up. #1348
    • Deprecate FFI definitions PyCoro_Check, PyAsyncGen_Check, and PyCoroWrapper_Check, which have never been in the Python API (for the first two, it is possible to use PyCoro_CheckExact and PyAsyncGen_CheckExact instead; these are the actual functions provided by the Python API). #1348
    • Deprecate FFI definitions for PyUnicode_FromUnicode, PyUnicode_AsUnicode and PyUnicode_AsUnicodeAndSize, which will be removed from 3.12 and up due to PEP 613. #1370

    Removed

    • Remove FFI definition PyFrame_ClearFreeList when building for Python 3.9. #1341
    • Remove FFI definition _PyDict_Contains when building for Python 3.10. #1341
    • Remove FFI definitions PyGen_NeedsFinalizing and PyImport_Cleanup (for 3.9 and up), and PyOS_InitInterrupts (3.10). #1348

    Fixed

    • Stop including Py_TRACE_REFS config setting automatically if Py_DEBUG is set on Python 3.8 and up. #1334
    • Remove #[deny(warnings)] attribute (and instead refuse warnings only in CI). #1340
    • Fix deprecation warning for missing __module__ with #[pyclass]. #1343
    • Correct return type of PyFrozenSet::empty to &PyFrozenSet (was incorrectly &PySet). #1351
    • Fix missing Py_INCREF on heap type objects on Python versions before 3.8. #1365
    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] 2
  • Bump syn from 1.0.42 to 1.0.56

    Bump syn from 1.0.42 to 1.0.56

    Bumps syn from 1.0.42 to 1.0.56.

    Release notes

    Sourced from syn's releases.

    1.0.56

    1.0.55

    • Preserve None-delimited group around macro metavariable when parsing T<$ty> (#944, #945)

    1.0.54

    • Fix parsing of impl items with macro metavariable in the trait path: impl $trait for Type {...} (#942)

    1.0.53

    • Parse impl !Trait {...} syntax (#936)

    1.0.52

    • Parse unsafe extern block syntax (#918)
    • Parse unsafe mod syntax (#919)
    • Parse const {...} block syntax (#921)
    • Parse destructuring assignment syntax (#933)

    1.0.51

    • Allow parsing signatures in which const generic params appear in front of lifetime params (#920)

    1.0.50

    • Apply doc(cfg(...)) on feature gated APIs for docs.rs-rendered documentation (#925)

    1.0.49

    • Fix parsing async functions inside None-delimited groups in a statement context (#916)

    1.0.48

    1.0.47

    • Documentation improvements

    1.0.46

    • Fix parsing structured attributes that contain nested absolute paths, such as #[derive(::serde::Serialize)] (#909)

    1.0.45

    • Provide more detailed error messages when parsing specific literal kind (#908)

    1.0.44

    • Fix some parsing of patterns inside of None-delimited groups (#907)

    1.0.43

    • Add Parse impl for syn::Signature
    Commits
    • dd1b74f Release 1.0.56
    • 50c77c6 Add Error::into_compile_error
    • b341361 Ignore redundant_else pedantic clippy lint
    • 81a3d51 Release 1.0.55
    • ae7d47f Merge pull request #945 from dtolnay/path
    • d5d2990 Add test of $ty::<T>
    • 0a2e4e3 Add test of $ty::Item
    • f492305 Preserve None-delimited group around path type
    • 5822aea Add test of path type wrapped in None-delimited group
    • e7e4261 Merge pull request 944 from Aaron1011/fix/ty-group-peek
    • 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] 2
  • Bump quote from 1.0.7 to 1.0.8

    Bump quote from 1.0.7 to 1.0.8

    Bumps quote from 1.0.7 to 1.0.8.

    Release notes

    Sourced from quote's releases.

    1.0.8

    • Help debug invalid raw identifiers passed to format_ident! (#173, #175)
    Commits
    • 8294929 Release 1.0.8
    • df96ce8 Merge pull request #175 from dtolnay/ident
    • 6a67750 Include failed raw identifier in panic message
    • 9e9cae1 Update ui tests to nightly-2020-09-05
    • cd2ab06 Change not-repeatable test to work whether or not rust-src is installed
    • 175778d Update tests with proc-macro2 1.0.20's formatting
    • 306375a Merge pull request #164 from tkondrashov/patch-1
    • 79475fc Update lib.rs
    • f3b0627 Quote in benchmark no longer requires high recursion
    • 9b14113 Update ui tests to nightly-2020-07-06
    • 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] 2
  • Bump zip from 0.5.8 to 0.5.9

    Bump zip from 0.5.8 to 0.5.9

    Bumps zip from 0.5.8 to 0.5.9.

    Commits
    • 229fe94 chore: publish 0.5.9
    • 26710ee feat: read raw content of files
    • f5061c2 Merge pull request #178 from davide-romanini/forgive-after-comment-junk
    • b3c3279 Merge pull request #207 from ZaMaZaN4iK/master
    • 4d8a068 Merge pull request #98 from robmv/feature-copy
    • d72e67a Merge pull request #209 from zip-rs/compression-constants
    • ac4f5b3 fix: remove enum aliases
    • b20ada4 feat: provide constants for compression methods
    • b9f2d94 docs: add github actions to readme
    • 5a053cd Merge pull request #198 from zip-rs/path-sanitization
    • 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] 2
  • Bump pyo3 from 0.10.1 to 0.12.1

    Bump pyo3 from 0.10.1 to 0.12.1

    Bumps pyo3 from 0.10.1 to 0.12.1.

    Release notes

    Sourced from pyo3's releases.

    PyO3 0.12.1

    This release contains a couple of bugfixes to resolve complation issues with 0.12.0 on specific targets. Thank you to @alex and @mtreinish for the bug reports and subsequent patches.

    Fixed

    • Fix building for a 32-bit Python on 64-bit Windows with a 64-bit Rust toolchain. #1179
    • Fix building on platforms where c_char is u8. #1182

    PyO3 0.12.0

    This release includes a few careful revisions to the PyO3 API with the intention to make it easier to learn and use. The PyErr type is reworked to implement std::error::Error. The FromPy trait is removed. Finally, the PyObject struct is now just a type alias to Py<PyAny>. While we do not take pleasure in making breaking changes for users' code, we have done so with careful thought to make migration as simple as possible while also allowing the PyO3 API to mature. Please see the migration guide for help upgrading if any of these changes affect you.

    Also added is a new #[derive(FromPyObject)] macro, which enables a convenient way to accept arguments of the Python "type" Union. (See the guide entry on this new feature.)

    There have been many other improvements and bugfixes too numerous to go into detail here. For the full list, see the CHANGELOG.

    Thank you to everyone who contributed code, documentation fixes, design ideas, bug reports, and feedback on the way to PyO3 0.12. The full list of users who commited at least one contribution to PyO3 0.12 is below:

    @alex @birkenfeld @cathay4t @davidhewitt @Hakuyume @Hywan @kngwyu @konstin @marioortizmanero @MoritzLangenstein @mtreinish @mvaled @nagisa @noam93k @Progdrasil @programmerjake @rob-thatcher @sebpuetz @vorner @vthriller

    PyO3 0.11.1

    #[pyclass(unsendable)] is added, please check the guide!

    [0.11.1] - 2020-06-30

    Added

    • #[pyclass(unsendable)]. #1009

    Changed

    • Update parking_lot dependency to 0.11. #1010

    PyO3 0.11.0

    This is our first version that supports the stable Rust toolchain. The minimum required version is 1.39.0. Thank you @davidhewitt @scalexm @tamuhey @konstin @Nateckert @Alexander-N @m-ou-se and all issue reporters :slightly_smiling_face:

    Changelog

    Sourced from pyo3's changelog.

    [0.12.1] - 2020-09-16

    Fixed

    • Fix building for a 32-bit Python on 64-bit Windows with a 64-bit Rust toolchain. #1179
    • Fix building on platforms where c_char is u8. #1182

    [0.12.0] - 2020-09-12

    Added

    • Add FFI definitions Py_FinalizeEx, PyOS_getsig, and PyOS_setsig. #1021
    • Add PyString::to_str for accessing PyString as &str. #1023
    • Add Python::with_gil for executing a closure with the Python GIL. #1037
    • Add type information to failures in PyAny::downcast(). #1050
    • Implement Debug for PyIterator. #1051
    • Add PyBytes::new_with and PyByteArray::new_with for initialising bytes and bytearray objects using a closure. #1074
    • Add #[derive(FromPyObject)] macro for enums and structs. #1065
    • Add Py::as_ref and Py::into_ref for converting Py<T> to &T. #1098
    • Add ability to return Result types other than PyResult from #[pyfunction], #[pymethod] and #[pyproto] functions. #1106.
    • Implement ToPyObject, IntoPy, and FromPyObject for hashbrown's HashMap and HashSet types (requires the hashbrown feature). #1114
    • Add #[pyfunction(pass_module)] and #[pyfn(pass_module)] to pass the module object as the first function argument. #1143
    • Add PyModule::add_function and PyModule::add_submodule as typed alternatives to PyModule::add_wrapped. #1143
    • Add native PyCFunction and PyFunction types. #1163

    Changed

    • Rework exception types: #1024 #1115
      • Rename exception types from e.g. RuntimeError to PyRuntimeError. The old names continue to exist but are deprecated.
      • Exception objects are now accessible as &T or Py<T>, just like other Python-native types.
      • Rename PyException::py_err() to PyException::new_err().
      • Rename PyUnicodeDecodeErr::new_err() to PyUnicodeDecodeErr::new().
      • Remove PyStopIteration::stop_iteration().
    • Require T: Send for the return value T of Python::allow_threads. #1036
    • Rename PYTHON_SYS_EXECUTABLE to PYO3_PYTHON. The old name will continue to work (undocumented) but will be removed in a future release. #1039
    • Remove unsafe from signature of PyType::as_type_ptr. #1047
    • Change return type of PyIterator::from_object to PyResult<PyIterator> (was Result<PyIterator, PyDowncastError>). #1051
    • IntoPy is no longer implied by FromPy. #1063
    • Change PyObject to be a type alias for Py<PyAny>. #1063
    • Rework PyErr to be compatible with the std::error::Error trait: #1067 #1115
      • Implement Display, Error, Send and Sync for PyErr and PyErrArguments.
      • Add PyErr::instance() for accessing PyErr as &PyBaseException.
      • PyErr's fields are now an implementation detail. The equivalent values can be accessed with PyErr::ptype(), PyErr::pvalue() and PyErr::ptraceback().
      • Change receiver of PyErr::print() and PyErr::print_and_set_sys_last_vars() to &self (was self).
      • Remove PyErrValue, PyErr::from_value, PyErr::into_normalized(), and PyErr::normalize().
      • Remove PyException::into().
      • Remove Into<PyResult<T>> for PyErr and PyException.
    • Change methods generated by #[pyproto] to return NotImplemented if Python should try a reversed operation. #1072
    • Change argument to PyModule::add to impl IntoPy<PyObject> (was impl ToPyObject). #1124

    Removed

    • Remove many exception and PyErr APIs; see the "changed" section above. #1024 #1067 #1115
    • Remove PyString::to_string (use new PyString::to_str). #1023
    • Remove PyString::as_bytes. #1023
    • Remove Python::register_any. #1023
    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] 2
  • Bump pyo3 from 0.10.1 to 0.11.1

    Bump pyo3 from 0.10.1 to 0.11.1

    Bumps pyo3 from 0.10.1 to 0.11.1.

    Release notes

    Sourced from pyo3's releases.

    PyO3 0.11.1

    #[pyclass(unsendable)] is added, please check the guide!

    [0.11.1] - 2020-06-30

    Added

    • #[pyclass(unsendable)]. #1009

    Changed

    • Update parking_lot dependency to 0.11. #1010

    PyO3 0.11.0

    This is our first version that supports the stable Rust toolchain. The minimum required version is 1.39.0. Thank you @davidhewitt @scalexm @tamuhey @konstin @Nateckert @Alexander-N @m-ou-se and all issue reporters :slightly_smiling_face:

    Maybe the most influential change is now #[pyclass] requires Send. Please see the migration guide for more.

    Added

    • Support stable versions of Rust (>=1.39). #969
    • Add FFI definition PyObject_AsFileDescriptor. #938
    • Add PyByteArray::data, PyByteArray::as_bytes, and PyByteArray::as_bytes_mut. #967
    • Add GILOnceCell to use in situations where lazy_static or once_cell can deadlock. #975
    • Add Py::borrow, Py::borrow_mut, Py::try_borrow, and Py::try_borrow_mut for accessing #[pyclass] values. #976
    • Add IterNextOutput and IterANextOutput for returning from __next__ / __anext__. #997

    Changed

    • Simplify internals of #[pyo3(get)] attribute. (Remove the hidden API GetPropertyValue.) #934
    • Call Py_Finalize at exit to flush buffers, etc. #943
    • Add type parameter to PyBuffer. #951
    • Require Send bound for #[pyclass]. #966
    • Add Python argument to most methods on PyObject and Py<T> to ensure GIL safety. #970
    • Change signature of PyTypeObject::type_object() - now takes Python argument and returns &PyType. #970
    • Change return type of PyTuple::slice() and PyTuple::split_from() from Py<PyTuple> to &PyTuple. #970
    • Change return type of PyTuple::as_slice to &[&PyAny]. #971
    • Rename PyTypeInfo::type_object to type_object_raw, and add Python argument. #975
    • Update num-complex optional dependendency from 0.2 to 0.3. #977
    • Update num-bigint optional dependendency from 0.2 to 0.3. #978
    • #[pyproto] is re-implemented without specialization. #961
    • PyClassAlloc::alloc is renamed to PyClassAlloc::new. #990
    • #[pyproto] methods can now have return value T or PyResult<T> (previously only PyResult<T> was supported). #996
    • #[pyproto] methods can now skip annotating the return type if it is (). #998

    Removed

    • Remove ManagedPyRef (unused, and needs specialization) #930

    Fixed

    • Fix passing explicit None to Option<T> argument #[pyfunction] with a default value. #936
    • Fix PyClass.__new__'s not respecting subclasses when inherited by a Python class. #990
    • Fix returning Option<T> from #[pyproto] methods. #996
    • Fix accepting PyRef<Self> and PyRefMut<Self> to #[getter] and #[setter] methods. #999
    Changelog

    Sourced from pyo3's changelog.

    [0.11.1] - 2020-06-30

    Added

    • #[pyclass(unsendable)]. #1009

    Changed

    • Update parking_lot dependency to 0.11. #1010

    [0.11.0] - 2020-06-28

    Added

    • Support stable versions of Rust (>=1.39). #969
    • Add FFI definition PyObject_AsFileDescriptor. #938
    • Add PyByteArray::data, PyByteArray::as_bytes, and PyByteArray::as_bytes_mut. #967
    • Add GILOnceCell to use in situations where lazy_static or once_cell can deadlock. #975
    • Add Py::borrow, Py::borrow_mut, Py::try_borrow, and Py::try_borrow_mut for accessing #[pyclass] values. #976
    • Add IterNextOutput and IterANextOutput for returning from __next__ / __anext__. #997

    Changed

    • Simplify internals of #[pyo3(get)] attribute. (Remove the hidden API GetPropertyValue.) #934
    • Call Py_Finalize at exit to flush buffers, etc. #943
    • Add type parameter to PyBuffer. #951
    • Require Send bound for #[pyclass]. #966
    • Add Python argument to most methods on PyObject and Py<T> to ensure GIL safety. #970
    • Change signature of PyTypeObject::type_object() - now takes Python argument and returns &PyType. #970
    • Change return type of PyTuple::slice() and PyTuple::split_from() from Py<PyTuple> to &PyTuple. #970
    • Change return type of PyTuple::as_slice to &[&PyAny]. #971
    • Rename PyTypeInfo::type_object to type_object_raw, and add Python argument. #975
    • Update num-complex optional dependendency from 0.2 to 0.3. #977
    • Update num-bigint optional dependendency from 0.2 to 0.3. #978
    • #[pyproto] is re-implemented without specialization. #961
    • PyClassAlloc::alloc is renamed to PyClassAlloc::new. #990
    • #[pyproto] methods can now have return value T or PyResult<T> (previously only PyResult<T> was supported). #996
    • #[pyproto] methods can now skip annotating the return type if it is (). #998

    Removed

    • Remove ManagedPyRef (unused, and needs specialization) #930

    Fixed

    • Fix passing explicit None to Option<T> argument #[pyfunction] with a default value. #936
    • Fix PyClass.__new__'s not respecting subclasses when inherited by a Python class. #990
    • Fix returning Option<T> from #[pyproto] methods. #996
    • Fix accepting PyRef<Self> and PyRefMut<Self> to #[getter] and #[setter] methods. #999
    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] 2
  • Bump syn from 1.0.86 to 1.0.105

    Bump syn from 1.0.86 to 1.0.105

    Bumps syn from 1.0.86 to 1.0.105.

    Release notes

    Sourced from syn's releases.

    1.0.105

    • Improve parse errors related to dyn and impl type syntax (#1245)

    1.0.104

    • Add PathArguments::is_none()

    1.0.103

    1.0.102

    • More efficient internal representation for TokenBuffer (#1223, thanks @​CAD97)
    • Fix parsing of a left shift after macro metavariable in type position (#1229)

    1.0.101

    • Eliminate a bunch of redundant work done by LitStr::parse (#1221)

    1.0.100

    1.0.99

    • Add categories and keywords to crates.io metadata

    1.0.98

    • Format example code with rustfmt

    1.0.97

    • Update examples

    1.0.96

    • Add a punct_mut() method on syn::punctuated::Pair to return Option<&mut P> (#1183)

    1.0.95

    1.0.94

    • Resolve some unused_macro_rules warnings

    1.0.93

    • Fix compile error when Some means something unusual in the expression namespace of the scope where custom_keyword is invoked (#1171, thanks @​zakarumych)

    1.0.92

    1.0.91

    • impl ToTokens for RangeLimits
    • impl Parse for ExprAwait
    • impl Parse for GenericMethodArgument

    ... (truncated)

    Commits
    • 998e863 Release 1.0.105
    • 02e2a21 Merge pull request #1247 from dtolnay/punctdrop
    • 9113ad0 Help infer may_dangle on type parameter of Punctuated iterator Drop impls
    • 3eaa443 Add regression test for issue 1246
    • 17f9a5c Merge pull request #1245 from dtolnay/bounds
    • db874dd Improve dyn/impl-related parse errors
    • b8b0761 Move TypeParamBound parse loop to associated function
    • 3e915e5 Clean up naming in rustc syntax tree manipulation
    • ecacc47 Import token::Lit now there's no conflict with MetaItemLit
    • 2647b2a Update test suite to nightly-2022-11-29
    • 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 rust 
    opened by dependabot[bot] 1
  • Bump syn from 1.0.86 to 1.0.107

    Bump syn from 1.0.86 to 1.0.107

    Bumps syn from 1.0.86 to 1.0.107.

    Release notes

    Sourced from syn's releases.

    1.0.106

    • Documentation improvements

    1.0.105

    • Improve parse errors related to dyn and impl type syntax (#1245)

    1.0.104

    • Add PathArguments::is_none()

    1.0.103

    1.0.102

    • More efficient internal representation for TokenBuffer (#1223, thanks @​CAD97)
    • Fix parsing of a left shift after macro metavariable in type position (#1229)

    1.0.101

    • Eliminate a bunch of redundant work done by LitStr::parse (#1221)

    1.0.100

    1.0.99

    • Add categories and keywords to crates.io metadata

    1.0.98

    • Format example code with rustfmt

    1.0.97

    • Update examples

    1.0.96

    • Add a punct_mut() method on syn::punctuated::Pair to return Option<&mut P> (#1183)

    1.0.95

    1.0.94

    • Resolve some unused_macro_rules warnings

    1.0.93

    • Fix compile error when Some means something unusual in the expression namespace of the scope where custom_keyword is invoked (#1171, thanks @​zakarumych)

    1.0.92

    1.0.91

    ... (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 rust 
    opened by dependabot[bot] 0
  • Bump quote from 1.0.10 to 1.0.23

    Bump quote from 1.0.10 to 1.0.23

    Bumps quote from 1.0.10 to 1.0.23.

    Release notes

    Sourced from quote's releases.

    1.0.22

    • Documentation improvements

    1.0.21

    • Add keywords to crates.io metadata

    1.0.20

    • Remove workaround for dealing with invalid spans on new enough compilers (#224, thanks @​mystor)
    • Use Ident::new_raw to quote raw identifiers (#225, thanks @​mystor)

    1.0.19

    • Improve the way rustc's -Zunpretty=expanded renders quote's expanded code (#221)

    1.0.18

    • Special case quote!/quote_spanned! for inputs of size 1 and 2 tokens to improve performance (#217, thanks @​nnethercote)
    • Documentation improvement (#219)

    1.0.17

    • Documentation improvements

    1.0.16

    1.0.15

    1.0.14

    • Optimization to reduce calls over the proc macro bridge (#203)

    1.0.13

    • Documentation improvements

    1.0.12

    • Fix proc-macro2 dependency to work with -Zminimal-versions builds

    1.0.11

    • Improve performance of quote invocations involving literals, lifetimes, and underscore tokens
    Commits
    • 550af67 Release 1.0.23
    • b0337d0 Opt out -Zrustdoc-scrape-examples on docs.rs
    • 2386c5a Release 1.0.22
    • ead304a Update build status badge
    • 51d3bd2 Update ui test suite to nightly-2022-12-15
    • 2922a8e Time out workflows after 45 minutes
    • 6f42f3c Fix renamed let_underscore_drop lint
    • b2e30cc MIT copyright line
    • efc9b69 Ui test changes for trybuild 1.0.66
    • 1e2b198 Raise minimum tested toolchain to rust 1.56
    • 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 rust 
    opened by dependabot[bot] 0
  • Bump zip from 0.5.13 to 0.6.3

    Bump zip from 0.5.13 to 0.6.3

    Bumps zip from 0.5.13 to 0.6.3.

    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 rust 
    opened by dependabot[bot] 0
Releases(v0.4.0)
Owner
Ryosuke Kamesawa
Ryosuke Kamesawa
This automatically patches the RoPro extension for you, allowing you to have pro_tier for free.

RoPro Patcher This automatically patches the RoPro extension for you, allowing you to have pro_tier for free. NOTE Chrome, Brave (and possibly other b

Stefan 10 Jan 1, 2023
Extension to `thiserror` that helps reduce the amount of handwriting

justerror This macro piggybacks on thiserror crate and is supposed to reduce the amount of handwriting when you want errors in your app to be describe

ShakaCode 2 Nov 16, 2022
FileSorterX is an automatic file sorting application that sorts your files into folders based on their file extension

FileSorterX is an automatic file sorting application that sorts your files into folders based on their file extension. With FileSorterX, you can easily keep your files organized and find what you need quickly.

Xanthus 22 Apr 4, 2023
Experimental extension that brings OpenAI API to your PostgreSQL to run queries in human language.

Postgres <> ChatGPT Experimental PostgreSQL extension that enables the use of OpenAI GPT API inside PostgreSQL, allowing for queries to be written usi

CloudQuery 315 Apr 10, 2023
Extension trait to chunk iterators into const-length arrays.

const-chunks This crate provides an extension trait that lets you chunk iterators into constant-length arrays using const generics. See the docs for m

Louis Gariépy 6 Jun 12, 2023
GitHub CLI extension to search some repos interactively.

gh activity GitHub CLI extension to search some repos interactively. It's wrapper to build gh command provided by GitHub CLI, it could search more eas

taka naoga 3 Jul 28, 2023
Cross-platform GameMaker extension for getting system information and resource usage

GM Sysinfo Cross-platform GameMaker extension for getting system information and resource usage Table of Contents Table of Contents Examples Display m

SpikeHD 3 Dec 1, 2023
A PostgreSQL extension for rendering the Tera HTML templating language.

PGTera PGTera is a PostgreSQL extension that provides functions for using Tera to render HTML templates. When used with a tool like Postgrest, you can

Frankie 4 Feb 16, 2024
Rust-advent - Learning Rust by solving advent of code challenges (Streaming live on Twitch every Monday)

Rust advent ?? ?? Learning Rust by implementing solutions for Advent of Code problems. ?? HEY, we are live-streaming our attempts to solve the exercis

Luciano Mammino 20 Nov 11, 2022
Rust-clippy - A bunch of lints to catch common mistakes and improve your Rust code

Clippy A collection of lints to catch common mistakes and improve your Rust code. There are over 450 lints included in this crate! Lints are divided i

The Rust Programming Language 8.7k Dec 31, 2022
Rust-battery - Rust crate providing cross-platform information about the notebook batteries.

battery Rust crate providing cross-platform information about the notebook batteries. Table of contents Overview Supported platforms Install Examples

svartalf 326 Dec 21, 2022
A Rust-based shell script to create a folder structure to use for a single class every semester. Mostly an excuse to use Rust.

A Rust Course Folder Shell Script PROJECT IN PROGRESS (Spring 2022) When completed, script will create a folder structure of the following schema: [ro

Sebastián Romero Cruz 1 Apr 10, 2022
Rust Imaging Library's Python binding: A performant and high-level image processing library for Python written in Rust

ril-py Rust Imaging Library for Python: Python bindings for ril, a performant and high-level image processing library written in Rust. What's this? Th

Cryptex 13 Dec 6, 2022
FTL Rust Demangler is a command-line tool for demangling symbol names that are mangled with the Rust convention

FTL Rust Demangler is a command-line tool for demangling symbol names that are mangled with the Rust convention. It takes a mangled symbol name as input and returns the demangled name

timetravel3 7 Mar 30, 2023
rpm (Rust project manager) is a tool that helps you to manage your rust projects

rpm rpm (Rust project manager) is a open source tool for managing your rust project in an organized way Installation # make sure you have rust install

Dilshad 4 May 4, 2023
auto-rust is an experimental project that aims to automatically generate Rust code with LLM (Large Language Models) during compilation, utilizing procedural macros.

Auto Rust auto-rust is an experimental project that aims to automatically generate Rust code with LLM (Large Language Models) during compilation, util

Minsky 6 May 14, 2023
Rusty Shellcode Reflective DLL Injection (sRDI) - A small reflective loader in Rust 4KB in size for generating position-independent code (PIC) in Rust.

Shellcode Reflective DLL Injection (sRDI) Shellcode reflective DLL injection (sRDI) is a process injection technique that allows us to convert a given

null 242 Jul 5, 2023
This rust compiler backend emmits valid CLR IR, enambling you to use Rust in .NET projects

What is rustc_codegen_clr? NOTE: this project is a very early proof-of-concept This is a compiler backend for rustc which targets the .NET platform an

null 252 Sep 7, 2023
RustGPT is a ChatGPT UI built with Rust + HTMX: the power of Rust coupled with the simplicity of HTMX 💚

RustGPT ??✨ RustGPT.Blog.Post.mp4 Welcome to the RustGPT repository! Here, you'll find a web ChatGPT clone entirely crafted using Rust and HTMX, where

Bitswired 529 Dec 4, 2023