Code Monkey home page Code Monkey logo

celery-exporter's People

Contributors

dependabot[bot] avatar itsx avatar messense avatar mroci avatar sharpedgemarshall avatar simobasso avatar xrmx avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

celery-exporter's Issues

How to see exposed metrics.

After attaching to the celery-exporter container via docker exec command, I put the Rabbit MQ url and run the following

celery-exporter -b "amqp://guest@rabbitmq:5672"

image

In the Readme, it's written

If you then look at the exposed metrics, you should see something like this:
`

celery_tasks_total{name="my_app.tasks.calculate_something",namespace="celery",queue="celery",state="RECEIVED"} 0.0
celery_tasks_total{name="my_app.tasks.calculate_something",namespace="celery",queue="celery",state="PENDING"} 0.0
celery_tasks_total{name="my_app.tasks.calculate_something",namespace="celery",queue="celery",state="STARTED"} 0.0
celery_tasks_total{name="my_app.tasks.calculate_something",namespace="celery",queue="celery",state="RETRY"} 0.0
celery_tasks_total{name="my_app.tasks.calculate_something",namespace="celery",queue="celery",state="FAILURE"} 0.0
celery_tasks_total{name="my_app.tasks.calculate_something",namespace="celery",queue="celery",state="REVOKED"} 0.0
celery_tasks_total{name="my_app.tasks.calculate_something",namespace="celery",queue="celery",state="SUCCESS"} 1.0
celery_tasks_total{name="my_app.tasks.fetch_some_data",namespace="celery",queue="celery",state="RECEIVED"} 3.0
celery_tasks_total{name="my_app.tasks.fetch_some_data",namespace="celery",queue="celery",state="PENDING"} 0.0
celery_tasks_total{name="my_app.tasks.fetch_some_data",namespace="celery",queue="celery",state="STARTED"} 1.0
celery_tasks_total{name="my_app.tasks.fetch_some_data",namespace="celery",queue="celery",state="RETRY"} 2.0
celery_tasks_total{name="my_app.tasks.fetch_some_data",namespace="celery",queue="celery",state="FAILURE"} 1.0
celery_tasks_total{name="my_app.tasks.fetch_some_data",namespace="celery",queue="celery",state="REVOKED"} 0.0
celery_tasks_total{name="my_app.tasks.fetch_some_data",namespace="celery",queue="celery",state="SUCCESS"} 7.0
...
...
`

How to get this ? Do we have to configure anything in celery worker container ?

Get number of celery workers by queue name

I have 2 different kinds of celery workers each executing tasks from its own queue. Can I get celery_workers count for each worker type(using queue name) by celery-exporter?

RabbitMQ Resets connection

I am facing the following issue with my connection to rabbitmq, the connection is stable at works at the beginning but after that it gets reset.

I believe this has to do with heartbeat pings not getting back to rabbitmq and it cutting the connection.

Similar issue:
Polyconseil/aioamqp#96

Logs:
[2020-04-27 16:31:20,179] task-thread:ERROR: Connection failed Traceback (most recent call last): File "/usr/local/lib/python3.6/site-packages/celery_exporter/monitor.py", line 61, in _monitor recv.capture(limit=None, timeout=None, wakeup=True) File "/usr/local/lib/python3.6/site-packages/celery/events/receiver.py", line 92, in capture return list(self.consume(limit=limit, timeout=timeout, wakeup=wakeup)) File "/usr/local/lib/python3.6/site-packages/kombu/mixins.py", line 192, in consume conn.drain_events(timeout=safety_interval) File "/usr/local/lib/python3.6/site-packages/kombu/connection.py", line 315, in drain_events return self.transport.drain_events(self.connection, **kwargs) File "/usr/local/lib/python3.6/site-packages/kombu/transport/pyamqp.py", line 103, in drain_events return connection.drain_events(**kwargs) File "/usr/local/lib/python3.6/site-packages/amqp/connection.py", line 500, in drain_events while not self.blocking_read(timeout): File "/usr/local/lib/python3.6/site-packages/amqp/connection.py", line 505, in blocking_read frame = self.transport.read_frame() File "/usr/local/lib/python3.6/site-packages/amqp/transport.py", line 256, in read_frame frame_header = read(7, True) File "/usr/local/lib/python3.6/site-packages/amqp/transport.py", line 440, in _read s = recv(n - len(rbuf)) ConnectionResetError: [Errno 104] Connection reset by peer Exception in thread Thread-2: Traceback (most recent call last): File "/usr/local/lib/python3.6/site-packages/celery_exporter/monitor.py", line 61, in _monitor recv.capture(limit=None, timeout=None, wakeup=True) File "/usr/local/lib/python3.6/site-packages/celery/events/receiver.py", line 92, in capture return list(self.consume(limit=limit, timeout=timeout, wakeup=wakeup)) File "/usr/local/lib/python3.6/site-packages/kombu/mixins.py", line 192, in consume conn.drain_events(timeout=safety_interval) File "/usr/local/lib/python3.6/site-packages/kombu/connection.py", line 315, in drain_events return self.transport.drain_events(self.connection, **kwargs) File "/usr/local/lib/python3.6/site-packages/kombu/transport/pyamqp.py", line 103, in drain_events return connection.drain_events(**kwargs) File "/usr/local/lib/python3.6/site-packages/amqp/connection.py", line 500, in drain_events while not self.blocking_read(timeout): File "/usr/local/lib/python3.6/site-packages/amqp/connection.py", line 505, in blocking_read frame = self.transport.read_frame() File "/usr/local/lib/python3.6/site-packages/amqp/transport.py", line 256, in read_frame frame_header = read(7, True) File "/usr/local/lib/python3.6/site-packages/amqp/transport.py", line 440, in _read s = recv(n - len(rbuf)) ConnectionResetError: [Errno 104] Connection reset by peer

Process hangs during startup if Redis instance is not responding

I tried to connect celery-exporter to a Redis based broker, which sits behind a firewall. Since i didn’t have my IP added to the firewall, i couldn’t connect to the Redis instance, which made celery-exporter hang without any response. After i added the IP to the firewall, it came up fine.

I would have expected a timeout error after a while, or at least an “Initial fetching of registered tasks”.

Metric data always shows pending and is not changing to success after completion. It only shows pending state.

I am using celery=5.0.2 and django=2.2.2. I have enabled these two settings in my django app: CELERY_WORKER_SEND_TASK_EVENTS = True
CELERY_TASK_SEND_SENT_EVENT = True

I am using the docker image and passing my broker url as args to it. It is able to connect to my broker and I can run it locally on port 9540 but only the pending counter is updating and doest change later.

celery-exporter.txt
metric.txt

Task thread can fail and not recover resulting in zero value metrics

Hi,

We run celery-exporter inside Kubernetes and communicate against a redis-broker.

We sometimes see failures like so:

[2020-05-21 13:21:01,747] root:INFO: Starting HTTPD on 0.0.0.0:9540                                       
[2020-05-21 13:21:02,842] task-thread:ERROR: Connection failed

Which looks like it hits some kind of issue, and then enters the recovery loop:

https://github.com/OvalMoney/celery-exporter/blob/master/celery_exporter/monitor.py#L63

At this point, the container remains up (and can communicate with it), but the metrics returned are always zero, so it does not capture events after this issue.

The underlying issue is not that important, and could be anything (i.e. network issue, pod restart, new rollouts etc).

I think either within this app, or within the scope of Kubernetes, there is an expectation of self-recovery.

If this issue were to propagate up to the parent process, and the main process died, that would actually be a good thing (at least for K8s), since the pod would get restarted.

If I restart the pod manually (which is my only workaround at the moment), things work as expected.

My thinking is that https://github.com/OvalMoney/celery-exporter/blob/master/celery_exporter/monitor.py#L64 is not working as expected...

Pip installation failed with crates.io error

Hi,
I'm using python 3.6 .when I try to install celery-exporter, it gave error in build rust
"Rust compiler not found".
I installed setuptools-rust. Rerun pip command for celery exporter Again I got error cargo not found.
Installed rust and cargo rpm using yum in CentOS. In build rust ,now it's trying to read subprocess.command(["cargo","manifest-metadata","cargo.toml"]) exit with error code 1 . It tries to reach crates.io/index github.com url.
My server is not having internet access. How shall I proceed?.

There is a internal artifactory for python packages but no repository for crates.io

celery_workers always 0.0

Hi. I'm using celery==5.1.2 and your exporter from branch for ver5, exporter was build in docker, connected fine, but metric celery_workers always show 0 count, can somebody help me with this?

error: Can not find Rust compiler

When I try to install the packet, it shows the following error:
Is there pre-build wheel available?

pip install celery-exporter
Collecting celery-exporter
Using cached https://files.pythonhosted.org/packages/a2/25/497d1aad19bde44ef918cf71be1dc23799126888d40af58e7b5a0e65542e/celery-exporter-1.4.0.tar.gz
Collecting click>=7celery>=4 (from celery-exporter)
Downloading https://files.pythonhosted.org/packages/fa/37/45185cb5abbc30d7257104c434fe0b07e5a195a6847506c074527aa599ec/Click-7.0-py2.py3-none-any.whl (81kB)
|████████████████████████████████| 81kB 174kB/s
Collecting prometheus_client>=0.0.20 (from celery-exporter)
Downloading https://files.pythonhosted.org/packages/b3/23/41a5a24b502d35a4ad50a5bb7202a5e1d9a0364d0c12f56db3dbf7aca76d/prometheus_client-0.7.1.tar.gz
Building wheels for collected packages: celery-exporter, prometheus-client
Building wheel for celery-exporter (setup.py) ... error
ERROR: Complete output from command /project/capspae/bin/python3.7 -u -c 'import setuptools, tokenize;file='"'"'/tmp/pip-install-ioypwnlq/celery-exporter/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-dxsngnta --python-tag cp37:
ERROR: running bdist_wheel
running build
running build_py
creating build
creating build/lib
creating build/lib/celery_exporter
copying celery_exporter/monitor.py -> build/lib/celery_exporter
copying celery_exporter/core.py -> build/lib/celery_exporter
copying celery_exporter/metrics.py -> build/lib/celery_exporter
copying celery_exporter/main.py -> build/lib/celery_exporter
copying celery_exporter/utils.py -> build/lib/celery_exporter
copying celery_exporter/init.py -> build/lib/celery_exporter
running build_ext
running build_rust
error: Can not find Rust compiler


ERROR: Failed building wheel for celery-exporter

Queue name in the Prometheus metrics

Hi, thank you for this project, I have a question please about the exposed metrics.

I'm trying the exporter locally, without any tasks I can check the celery_tasks_total metric in the Prometheus dashboard and I can see my tasks:

celery_tasks_total{instance="celery_exporter:9540",job="celery_exporter",name="info",namespace="celery",queue="default",state="STARTED"}

The queue as you can see is default, for this task the value is right because I have changed my default task name from celery to default, but the problem is that all the other tasks also have the queue as default even thought each task has a queue with the same name:

celery_tasks_total{instance="celery_exporter:9540",job="celery_exporter",name="process",namespace="celery",queue="default",state="STARTED"}

As you can see, here the queue should be process for my task process but it's default, that's also the case for other tasks.

Also when I delay new tasks to be processed, these metrics stay the same with their values of 0 and new metrics show up for every task but this time with the queue value of undefined with the correct number of tasks:

celery_tasks_total{instance="celery_exporter:9540",job="celery_exporter",name="info",namespace="celery",queue="undefined",state="STARTED"}

So what could be wrong here? I have my queues defined as the task_queues Celery option, and for all the tasks except the default one I'm setting the queue argument of the @app.task() decorator.

Cannot install via pipenv

pipenv install celery-exporter

Installing celery-exporter…
Error:  An error occurred while installing celery-exporter!
Error text: Collecting celery-exporter (from -r /var/folders/_0/cgwb3f7s5qz6psclx6yvw3ch0000gn/T/pipenv-9nb7gdjr-requirements/pipenv-9tx6mjbb-requirement.txt (line 1))
  Downloading https://files.pythonhosted.org/packages/a2/25/497d1aad19bde44ef918cf71be1dc23799126888d40af58e7b5a0e65542e/celery-exporter-1.4.0.tar.gz

    ERROR: Command errored out with exit status 1:
     command: /Users/lukaszmadon/.local/share/virtualenvs/airmed-KQn5-ojZ/bin/python3 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/_0/cgwb3f7s5qz6psclx6yvw3ch0000gn/T/pip-install-gvuh58kr/celery-exporter/setup.py'"'"'; __file__='"'"'/private/var/folders/_0/cgwb3f7s5qz6psclx6yvw3ch0000gn/T/pip-install-gvuh58kr/celery-exporter/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base pip-egg-info
         cwd: /private/var/folders/_0/cgwb3f7s5qz6psclx6yvw3ch0000gn/T/pip-install-gvuh58kr/celery-exporter/
    Complete output (5 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/_0/cgwb3f7s5qz6psclx6yvw3ch0000gn/T/pip-install-gvuh58kr/celery-exporter/setup.py", line 4, in <module>
        from setuptools_rust import Binding, RustExtension
    ModuleNotFoundError: No module named 'setuptools_rust'
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

This is likely caused by a bug in celery-exporter. Report this to its maintainers.
✘ Installation Failed

I think the dependency on rust is missing

Unable to build the Docker image

Hi,

Not sure why, seems to be related to this issue rust-lang/cargo#7154 but Rust is unknown to me ...

Processing /src
Collecting click>=7celery>=4 (from celery-exporter==1.4.0)
  Downloading https://files.pythonhosted.org/packages/fa/37/45185cb5abbc30d7257104c434fe0b07e5a195a6847506c074527aa599ec/Click-7.0-py2.py3-none-any.whl (81kB)
  Saved ./Click-7.0-py2.py3-none-any.whl
Collecting prometheus_client>=0.0.20 (from celery-exporter==1.4.0)
  Downloading https://files.pythonhosted.org/packages/b3/23/41a5a24b502d35a4ad50a5bb7202a5e1d9a0364d0c12f56db3dbf7aca76d/prometheus_client-0.7.1.tar.gz
Skipping click, due to already being wheel.
Building wheels for collected packages: celery-exporter, prometheus-client
  Building wheel for celery-exporter (setup.py): started
  Building wheel for celery-exporter (setup.py): finished with status 'error'
  ERROR: Command errored out with exit status 1:
   command: /usr/local/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-req-build-xnhwanae/setup.py'"'"'; __file__='"'"'/tmp/pip-req-build-xnhwanae/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-eo1o88hj
       cwd: /tmp/pip-req-build-xnhwanae/
  Complete output (52 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib
  creating build/lib/celery_exporter
  copying celery_exporter/__init__.py -> build/lib/celery_exporter
  copying celery_exporter/__main__.py -> build/lib/celery_exporter
  copying celery_exporter/core.py -> build/lib/celery_exporter
  copying celery_exporter/metrics.py -> build/lib/celery_exporter
  copying celery_exporter/monitor.py -> build/lib/celery_exporter
  copying celery_exporter/utils.py -> build/lib/celery_exporter
  running build_ext
  running build_rust
      Updating crates.io index
   Downloading crates ...
    Downloaded version_check v0.1.5
    Downloaded regex v1.1.9
    Downloaded autocfg v0.1.4
    Downloaded lazy_static v1.3.0
    Downloaded aho-corasick v0.7.4
    Downloaded memchr v2.2.1
    Downloaded utf8-ranges v1.0.3
    Downloaded proc-macro-hack v0.4.1
    Downloaded pyo3 v0.7.0
    Downloaded proc-macro-hack-impl v0.4.1
    Downloaded inventory v0.1.3
    Downloaded mashup v0.1.9
    Downloaded quote v0.6.12
    Downloaded ghost v0.1.0
    Downloaded pyo3cls v0.7.0
    Downloaded ctor v0.1.9
    Downloaded regex-syntax v0.6.8
    Downloaded inventory-impl v0.1.3
    Downloaded hashbrown v0.1.8
    Downloaded num-traits v0.2.8
    Downloaded lru v0.1.15
    Downloaded proc-macro2 v0.4.30
    Downloaded thread_local v0.3.6
    Downloaded syn v0.15.39
    Downloaded mashup-impl v0.1.9
    Downloaded libc v0.2.59
    Downloaded byteorder v1.3.2
    Downloaded pyo3-derive-backend v0.7.0
    Downloaded unicode-xid v0.1.0
    Downloaded scopeguard v0.3.3
    Downloaded spin v0.5.0
    Downloaded ucd-util v0.1.3
  cargo rustc --lib --manifest-path Cargo.toml --features pyo3/extension-module pyo3/python3 --release --verbose -- --crate-type cdylib
  error: cannot produce cdylib for `celery_state v0.1.0 (/tmp/pip-req-build-xnhwanae)` as the target `x86_64-unknown-linux-musl` does not support these crate types
  error: cargo failed with code: 101

Best regards,

receiving celery_worker_tasks_active = 0

celery_worker_tasks_active{hostname="worker2"} 0.0
celery_worker_tasks_active{hostname="worker1"} 0.0

Hey! i get 0 active tasks even though there are currently 10. it seems to me that celery-exporter monitoring is not updating active tasks often enough

Task's queue is 'undefined'

By some reason the output is the following:

celery_tasks_total{name="local.update_record",namespace="celery",queue="local_develop",state="STARTED"} 0.0
# skipped
celery_tasks_total{name="local.update_record",namespace="celery",queue="undefined",state="STARTED"} 1.0

All recorded tasks have queue as "undefined".

Build binary wheels

I'd love to be able to install this without having a rust compiler. Have you thought of building binary manylinux wheels and pushing them to PyPI?

Update python build to work with rust compiler from stable release channel

I'm getting build failures when running pip install celery-exporter on a system with rustc 1.39.0 compiler installed on it:

    error[E0554]: #![feature] may not be used on the stable release channel
     --> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/lib.rs:1:1
      |
    1 | #![feature(specialization)]
      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
    
    error: aborting due to previous error
    
    For more information about this error, try `rustc --explain E0554`.
    The following warnings were emitted during compilation:
    
    warning: pyo3 was unable to check rustc compatibility.
    warning: Build may fail due to incompatible rustc version.
    
    error: Could not compile `pyo3`.

I'd like to use this library but don't think I can if it is not based on a rust environment from the stable release channel.

Is there a reason why this package relies on a rust environment based on nightly-2019-06-20?

Task send vs receive latency

I noticed that the latency monitoring seems to only account for the time between when a worker receives a task and when it starts the task.

However, it would be great if we could also track the latency from when a task is published. The task-sent event is disabled by default, but if enabled on a cluster, it could be valuable in understanding where scheduling latencies are occurring.

Can we have an environment variable for passing --transport-options ?

Similar to all these options:

DEFAULT_BROKER = os.environ.get('BROKER_URL', 'redis://redis:6379/0')
DEFAULT_ADDR = os.environ.get('DEFAULT_ADDR', '0.0.0.0:8888')
DEFAULT_MAX_TASKS_IN_MEMORY = int(os.environ.get('DEFAULT_MAX_TASKS_IN_MEMORY',
                                                 '10000'))
DEFAULT_QUEUE_LIST = os.environ.get('QUEUE_LIST', [])

Can we have an environment variable for passing transport options ?

pip installation failed

I have try to install this package with pip, but it still show the following error. How can i fixed this?

       Compiling pyo3 v0.7.0
         Running `rustc --crate-name build_script_build --edition=2018 /home/artibrains/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C opt-level=3 --cfg 'feature="default"' --cfg 'feature="extension-module"' --cfg 'feature="python3"' -C metadata=f25afaacfcd318c4 -C extra-filename=-f25afaacfcd318c4 --out-dir /tmp/pip-install-3pnh2wrp/celery-exporter/target/release/build/pyo3-f25afaacfcd318c4 -L dependency=/tmp/pip-install-3pnh2wrp/celery-exporter/target/release/deps --extern regex=/tmp/pip-install-3pnh2wrp/celery-exporter/target/release/deps/libregex-e018eeb8e3ce2465.rlib --extern version_check=/tmp/pip-install-3pnh2wrp/celery-exporter/target/release/deps/libversion_check-4781dde8a68e1f08.rlib --cap-lints allow`
         Running `/tmp/pip-install-3pnh2wrp/celery-exporter/target/release/build/pyo3-f25afaacfcd318c4/build-script-build`
    error: failed to run custom build command for `pyo3 v0.7.0`

    Caused by:
      process didn't exit successfully: `/tmp/pip-install-3pnh2wrp/celery-exporter/target/release/build/pyo3-f25afaacfcd318c4/build-script-build` (exit code: 101)
    --- stderr
    Error: pyo3 requires a nightly or dev version of Rust.
    Installed version is: 1.42.0 (2020-03-09). Minimum required: 1.34.0-nightly (2019-02-06).
    thread 'main' panicked at 'Aborting compilation due to incompatible compiler.', /home/artibrains/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/build.rs:633:17
    note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

    warning: build failed, waiting for other jobs to finish...
    error: build failed
    error: cargo failed with code: 101

Release version 1.4.1

Hi there!

Would you be open to releasing a new patch version of the lib/image with any bugfixes since the last release? I can see there's a 'latest' tag in the Docker Hub from October 2020 but no corresponding tag, and it'd be awesome if there was a tagged release associated with it.

Thanks for the useful project!

Executable binary for isolated hosts

Is there a way to make an executable binary for isolated hosts?
The problem is that I need to run it on hosts that don't have internet connection, so I can't install a bunch of dependencies and such.
I've tried to build it via pip on the same architecture machine that had internet access, moved the binary across but it doesn't work.

$ ./celery-exporter
Traceback (most recent call last):
  File "/blah/./celery-exporter", line 33, in <module>
    sys.exit(load_entry_point('celery-exporter', 'console_scripts', 'celery-exporter')())
  File "/blah/./celery-exporter", line 22, in importlib_load_entry_point
    for entry_point in distribution(dist_name).entry_points
  File "/usr/local/lib/python3.9/importlib/metadata.py", line 524, in distribution
    return Distribution.from_name(distribution_name)
  File "/usr/local/lib/python3.9/importlib/metadata.py", line 187, in from_name
    raise PackageNotFoundError(name)
importlib.metadata.PackageNotFoundError: celery-exporter

Customize Histogram for `TASKS_RUNTIME` and `LATENCY`

The default histogram buckets are on the order of miliseconds and seconds. For celery if you have long running tasks like re-encoding a video and then uploading gigabyte sized files it puts all the tasks in the INF bucket. A solution could be to add a config.py which lets you customize the histogram. The super nice part is that it'd be pretty easy to put the file as a ConfigMap in Kubernetes or build the container with the extra file(basically as an overlay).

I'm happy to put up a pull request for this would be useful for the community.

Python 3.9 wheel support (pypi)

Hello,

was doing upgrade today to python version 3.9 and it looks like wheel file for Python version 3.9 is not present in pypi: https://pypi.org/project/celery-exporter/#files
Not sure if this is by intent, perhaps 3.9 version is not yet supported and therefor missing wheel file?
Installation/compilation can be performed manually by installing rust on machine, but it would be so much nicer to have it as wheel file.

By looking at travis.yaml and tox.ini it seems that 3.9 version is working fine and build on travis is passing.
Please let me know if i can help anyhow in building wheel file for python 3.9
Tnx!

No response after running it with Docker

Hi!

I am using this exporter to get the queue length from celery and autoscale in K8 using Prometheus based pipeline.

After running this command.
docker run -it --rm ovalmoney/celery-exporter
There is no output. Kindly see below image.

image

I have no clue what is happening. Can anyone help me regarding this or tell me how to use this exporter with docker-compose ?

Celery error after starting the exporter

Hi,

After I start the exporter, this message appear in loop in my Celery logs :

Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8: [2019-10-10 12:42:56,731: ERROR/MainProcess] Control command error: OperationalError("\nCannot route message for exchange 'reply.celery.pidbox': Table empty or key no longer exists.\nProbably the key ('_kombu.binding.reply.celery.pidbox') has been removed from the Redis database.\n",)
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8: Traceback (most recent call last):
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:  File "/opt/app-root/lib/python3.6/site-packages/kombu/connection.py", line 439, in _reraise_as_library_errors
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:    yield
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:  File "/opt/app-root/lib/python3.6/site-packages/kombu/connection.py", line 518, in _ensured
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:    return fun(*args, **kwargs)
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:  File "/opt/app-root/lib/python3.6/site-packages/kombu/messaging.py", line 203, in _publish
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:    mandatory=mandatory, immediate=immediate,
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:  File "/opt/app-root/lib/python3.6/site-packages/kombu/transport/virtual/base.py", line 605, in basic_publish
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:    message, exchange, routing_key, **kwargs
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:  File "/opt/app-root/lib/python3.6/site-packages/kombu/transport/virtual/exchange.py", line 70, in deliver
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:    for queue in _lookup(exchange, routing_key):
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:  File "/opt/app-root/lib/python3.6/site-packages/kombu/transport/redis.py", line 877, in _lookup
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:    exchange, redis_key))
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8: kombu.exceptions.InconsistencyError: 
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8: Cannot route message for exchange 'reply.celery.pidbox': Table empty or key no longer exists.
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8: Probably the key ('_kombu.binding.reply.celery.pidbox') has been removed from the Redis database.
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8: 
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8: 
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8: During handling of the above exception, another exception occurred:
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8: 
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8: Traceback (most recent call last):
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:  File "/opt/app-root/lib/python3.6/site-packages/celery/worker/pidbox.py", line 46, in on_message
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:    self.node.handle_message(body, message)
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:  File "/opt/app-root/lib/python3.6/site-packages/kombu/pidbox.py", line 145, in handle_message
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:    return self.dispatch(**body)
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:  File "/opt/app-root/lib/python3.6/site-packages/kombu/pidbox.py", line 115, in dispatch
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:    ticket=ticket)
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:  File "/opt/app-root/lib/python3.6/site-packages/kombu/pidbox.py", line 151, in reply
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:    serializer=self.mailbox.serializer)
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:  File "/opt/app-root/lib/python3.6/site-packages/kombu/pidbox.py", line 285, in _publish_reply
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:    **opts
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:  File "/opt/app-root/lib/python3.6/site-packages/kombu/messaging.py", line 181, in publish
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:    exchange_name, declare,
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:  File "/opt/app-root/lib/python3.6/site-packages/kombu/connection.py", line 551, in _ensured
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:    errback and errback(exc, 0)
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:  File "/opt/rh/rh-python36/root/usr/lib64/python3.6/contextlib.py", line 99, in __exit__
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:    self.gen.throw(type, value, traceback)
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:  File "/opt/app-root/lib/python3.6/site-packages/kombu/connection.py", line 444, in _reraise_as_library_errors
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:    sys.exc_info()[2])
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:  File "/opt/app-root/lib/python3.6/site-packages/vine/five.py", line 194, in reraise
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:    raise value.with_traceback(tb)
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:  File "/opt/app-root/lib/python3.6/site-packages/kombu/connection.py", line 439, in _reraise_as_library_errors
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:    yield
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:  File "/opt/app-root/lib/python3.6/site-packages/kombu/connection.py", line 518, in _ensured
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:    return fun(*args, **kwargs)
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:  File "/opt/app-root/lib/python3.6/site-packages/kombu/messaging.py", line 203, in _publish
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:    mandatory=mandatory, immediate=immediate,
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:  File "/opt/app-root/lib/python3.6/site-packages/kombu/transport/virtual/base.py", line 605, in basic_publish
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:    message, exchange, routing_key, **kwargs
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:  File "/opt/app-root/lib/python3.6/site-packages/kombu/transport/virtual/exchange.py", line 70, in deliver
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:    for queue in _lookup(exchange, routing_key):
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:  File "/opt/app-root/lib/python3.6/site-packages/kombu/transport/redis.py", line 877, in _lookup
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8:    exchange, redis_key))
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8: kombu.exceptions.OperationalError: 
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8: Cannot route message for exchange 'reply.celery.pidbox': Table empty or key no longer exists.
Oct 10 12:42:56 [localhost] dockerc/pp-bo-celery/1d1823e96df8: Probably the key ('_kombu.binding.reply.celery.pidbox') has been removed from the Redis database.

Not sure/understanding why, is it a key created by the exporter and removed or other things ?

Best regards,

Installation of pip package fails on Debian / Ubuntu stable versions

I'm trying to install the package on debian stable like so:

# Create venv
mkvirtualenv -p python3 celery-exporter

# Install rust version manager
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env

# Install rust nightly (celery-exporter wants either nightly or dev)
rustup toolchain install nightly
rustup default nightly

# Install exporter pip requirements
sudo apt-get -y install python3-dev python-dev
pip install setuptools-rust

# Install exporter
pip install celery-exporter

However the last command fails with:

+ pip install celery-exporter
Collecting celery-exporter
  Using cached celery-exporter-1.4.0.tar.gz (11 kB)
Collecting click>=7celery>=4
  Using cached click-8.0.0a1-py3-none-any.whl (89 kB)
Collecting prometheus_client>=0.0.20
  Using cached prometheus_client-0.9.0-py2.py3-none-any.whl (53 kB)
Building wheels for collected packages: celery-exporter
  Building wheel for celery-exporter (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-48lrbb0c/celery-exporter/setup.py'"'"'; __file__='"'"'/tmp/pip-install-48lrbb0c/celery-exporter/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-ulzvc5z9
       cwd: /tmp/pip-install-48lrbb0c/celery-exporter/
  Complete output (1513 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib
  creating build/lib/celery_exporter
  copying celery_exporter/monitor.py -> build/lib/celery_exporter
  copying celery_exporter/__main__.py -> build/lib/celery_exporter
  copying celery_exporter/metrics.py -> build/lib/celery_exporter
  copying celery_exporter/utils.py -> build/lib/celery_exporter
  copying celery_exporter/__init__.py -> build/lib/celery_exporter
  copying celery_exporter/core.py -> build/lib/celery_exporter
  running build_ext
  running build_rust
      Updating crates.io index
  cargo rustc --lib --manifest-path Cargo.toml --features pyo3/extension-module --release --verbose -- --crate-type cdylib
     Compiling proc-macro2 v0.4.30
     Compiling proc-macro2 v1.0.24
     Compiling unicode-xid v0.2.1
     Compiling unicode-xid v0.1.0
     Compiling memchr v2.3.4
     Compiling syn v1.0.60
     Compiling syn v0.15.44
     Compiling proc-macro-hack-impl v0.4.2
       Running `rustc --crate-name build_script_build /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/proc-macro2-0.4.30/build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="proc-macro"' -C metadata=bc746ed6ac1291cb -C extra-filename=-bc746ed6ac1291cb --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/proc-macro2-bc746ed6ac1291cb -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
       Running `rustc --crate-name build_script_build --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/proc-macro2-1.0.24/build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="proc-macro"' -C metadata=70b9ba8e0873bfca -C extra-filename=-70b9ba8e0873bfca --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/proc-macro2-70b9ba8e0873bfca -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
       Running `rustc --crate-name unicode_xid /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/unicode-xid-0.2.1/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' -C metadata=222f0e750869ec41 -C extra-filename=-222f0e750869ec41 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
       Running `rustc --crate-name unicode_xid /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/unicode-xid-0.1.0/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' -C metadata=5f6f0613524b3651 -C extra-filename=-5f6f0613524b3651 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
       Running `rustc --crate-name build_script_build /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/memchr-2.3.4/build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="std"' --cfg 'feature="use_std"' -C metadata=d3c835bf5eabb0a7 -C extra-filename=-d3c835bf5eabb0a7 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/memchr-d3c835bf5eabb0a7 -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
       Running `rustc --crate-name build_script_build --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/syn-1.0.60/build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="clone-impls"' --cfg 'feature="default"' --cfg 'feature="derive"' --cfg 'feature="full"' --cfg 'feature="parsing"' --cfg 'feature="printing"' --cfg 'feature="proc-macro"' --cfg 'feature="quote"' -C metadata=93a041d8813e8d95 -C extra-filename=-93a041d8813e8d95 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/syn-93a041d8813e8d95 -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
       Running `rustc --crate-name build_script_build /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/syn-0.15.44/build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="clone-impls"' --cfg 'feature="default"' --cfg 'feature="derive"' --cfg 'feature="extra-traits"' --cfg 'feature="full"' --cfg 'feature="parsing"' --cfg 'feature="printing"' --cfg 'feature="proc-macro"' --cfg 'feature="quote"' -C metadata=665f6690189572d3 -C extra-filename=-665f6690189572d3 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/syn-665f6690189572d3 -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
       Running `rustc --crate-name proc_macro_hack_impl /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/proc-macro-hack-impl-0.4.2/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type proc-macro --emit=dep-info,link -C prefer-dynamic -C embed-bitcode=no -C debug-assertions=off -C metadata=035a5290e2676023 -C extra-filename=-035a5290e2676023 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro --cap-lints allow`
     Compiling once_cell v1.5.2
       Running `rustc --crate-name once_cell --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/once_cell-1.5.2/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="alloc"' --cfg 'feature="default"' --cfg 'feature="std"' -C metadata=a14ccf1b28fa585e -C extra-filename=-a14ccf1b28fa585e --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
     Compiling regex-syntax v0.6.22
       Running `rustc --crate-name regex_syntax /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/regex-syntax-0.6.22/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="unicode"' --cfg 'feature="unicode-age"' --cfg 'feature="unicode-bool"' --cfg 'feature="unicode-case"' --cfg 'feature="unicode-gencat"' --cfg 'feature="unicode-perl"' --cfg 'feature="unicode-script"' --cfg 'feature="unicode-segment"' -C metadata=529e8e64405e9a1c -C extra-filename=-529e8e64405e9a1c --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
     Compiling autocfg v1.0.1
       Running `rustc --crate-name autocfg /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/autocfg-1.0.1/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off -C metadata=eaf3a4b21f4512fc -C extra-filename=-eaf3a4b21f4512fc --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
     Compiling version_check v0.1.5
       Running `rustc --crate-name version_check /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/version_check-0.1.5/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off -C metadata=0d09839629235ade -C extra-filename=-0d09839629235ade --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
     Compiling inventory v0.1.10
       Running `rustc --crate-name build_script_build --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/inventory-0.1.10/build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off -C metadata=e5e69b3c9fdc979f -C extra-filename=-e5e69b3c9fdc979f --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/inventory-e5e69b3c9fdc979f -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
     Compiling libc v0.2.85
       Running `rustc --crate-name build_script_build /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/libc-0.2.85/build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="std"' -C metadata=5404c481b3a75226 -C extra-filename=-5404c481b3a75226 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/libc-5404c481b3a75226 -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
     Compiling spin v0.5.2
       Running `rustc --crate-name spin /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/spin-0.5.2/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no -C metadata=638b2ded4481154c -C extra-filename=-638b2ded4481154c --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
     Compiling hashbrown v0.5.0
       Running `rustc --crate-name hashbrown --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/hashbrown-0.5.0/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no --cfg 'feature="default"' -C metadata=0ae6d34bb12bf8ea -C extra-filename=-0ae6d34bb12bf8ea --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
     Compiling thread_local v1.1.3
       Running `rustc --crate-name thread_local --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/thread_local-1.1.3/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off -C metadata=e60ec9865252cfb1 -C extra-filename=-e60ec9865252cfb1 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern once_cell=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libonce_cell-a14ccf1b28fa585e.rmeta --cap-lints allow`
       Running `/tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/memchr-d3c835bf5eabb0a7/build-script-build`
       Running `/tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/syn-665f6690189572d3/build-script-build`
       Running `/tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/syn-93a041d8813e8d95/build-script-build`
       Running `/tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/proc-macro2-70b9ba8e0873bfca/build-script-build`
       Running `/tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/proc-macro2-bc746ed6ac1291cb/build-script-build`
     Compiling proc-macro-hack v0.4.2
       Running `rustc --crate-name proc_macro_hack /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/proc-macro-hack-0.4.2/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off -C metadata=187068e14d5baf40 -C extra-filename=-187068e14d5baf40 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro_hack_impl=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro_hack_impl-035a5290e2676023.so --cap-lints allow`
       Running `rustc --crate-name proc_macro_hack /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/proc-macro-hack-0.4.2/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no -C metadata=d2d214166bb2d48c -C extra-filename=-d2d214166bb2d48c --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro_hack_impl=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro_hack_impl-035a5290e2676023.so --cap-lints allow`
       Running `rustc --crate-name memchr /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/memchr-2.3.4/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="std"' --cfg 'feature="use_std"' -C metadata=396ffb27b4729a17 -C extra-filename=-396ffb27b4729a17 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow --cfg memchr_runtime_simd --cfg memchr_runtime_sse2 --cfg memchr_runtime_sse42 --cfg memchr_runtime_avx`
       Running `/tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/inventory-e5e69b3c9fdc979f/build-script-build`
       Running `rustc --crate-name proc_macro2 --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/proc-macro2-1.0.24/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="proc-macro"' -C metadata=3d30b1cf012cba61 -C extra-filename=-3d30b1cf012cba61 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern unicode_xid=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libunicode_xid-222f0e750869ec41.rmeta --cap-lints allow --cfg lexerror_display --cfg hygiene --cfg use_proc_macro --cfg wrap_proc_macro --cfg proc_macro_span`
       Running `/tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/libc-5404c481b3a75226/build-script-build`
     Compiling num-traits v0.2.14
       Running `rustc --crate-name build_script_build /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/num-traits-0.2.14/build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="std"' -C metadata=91b8cf90a5e47c8f -C extra-filename=-91b8cf90a5e47c8f --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/num-traits-91b8cf90a5e47c8f -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern autocfg=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libautocfg-eaf3a4b21f4512fc.rlib --cap-lints allow`
       Running `rustc --crate-name proc_macro2 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/proc-macro2-0.4.30/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="proc-macro"' -C metadata=c15da2d35fd6b882 -C extra-filename=-c15da2d35fd6b882 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern unicode_xid=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libunicode_xid-5f6f0613524b3651.rmeta --cap-lints allow --cfg u128 --cfg use_proc_macro --cfg wrap_proc_macro --cfg proc_macro_span`
     Compiling lru v0.1.17
       Running `rustc --crate-name lru /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/lru-0.1.17/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no -C metadata=f9e1586075937229 -C extra-filename=-f9e1586075937229 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern hashbrown=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libhashbrown-0ae6d34bb12bf8ea.rmeta --cap-lints allow`
       Running `rustc --crate-name libc /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/libc-0.2.85/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no --cfg 'feature="default"' --cfg 'feature="std"' -C metadata=9e1e5be5fbec308b -C extra-filename=-9e1e5be5fbec308b --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow --cfg freebsd11 --cfg libc_priv_mod_use --cfg libc_union --cfg libc_const_size_of --cfg libc_align --cfg libc_core_cvoid --cfg libc_packedN --cfg libc_cfg_target_vendor`
       Running `/tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/num-traits-91b8cf90a5e47c8f/build-script-build`
     Compiling aho-corasick v0.7.15
       Running `rustc --crate-name aho_corasick /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/aho-corasick-0.7.15/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="std"' -C metadata=1b8dbda8e0b45746 -C extra-filename=-1b8dbda8e0b45746 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern memchr=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libmemchr-396ffb27b4729a17.rmeta --cap-lints allow`
     Compiling quote v1.0.8
       Running `rustc --crate-name quote --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/quote-1.0.8/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="proc-macro"' -C metadata=6e384319eb964c78 -C extra-filename=-6e384319eb964c78 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro2=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro2-3d30b1cf012cba61.rmeta --cap-lints allow`
     Compiling quote v0.6.13
       Running `rustc --crate-name quote /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/quote-0.6.13/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="proc-macro"' -C metadata=2210637c5717f8df -C extra-filename=-2210637c5717f8df --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro2=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro2-c15da2d35fd6b882.rmeta --cap-lints allow`
       Running `rustc --crate-name num_traits /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/num-traits-0.2.14/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no --cfg 'feature="default"' --cfg 'feature="std"' -C metadata=b9cd4cd2c6156acf -C extra-filename=-b9cd4cd2c6156acf --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow --cfg has_i128 --cfg has_to_int_unchecked`
       Running `rustc --crate-name syn --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/syn-1.0.60/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="clone-impls"' --cfg 'feature="default"' --cfg 'feature="derive"' --cfg 'feature="full"' --cfg 'feature="parsing"' --cfg 'feature="printing"' --cfg 'feature="proc-macro"' --cfg 'feature="quote"' -C metadata=8e47350e18924cd4 -C extra-filename=-8e47350e18924cd4 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro2=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro2-3d30b1cf012cba61.rmeta --extern quote=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libquote-6e384319eb964c78.rmeta --extern unicode_xid=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libunicode_xid-222f0e750869ec41.rmeta --cap-lints allow`
       Running `rustc --crate-name syn /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/syn-0.15.44/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="clone-impls"' --cfg 'feature="default"' --cfg 'feature="derive"' --cfg 'feature="extra-traits"' --cfg 'feature="full"' --cfg 'feature="parsing"' --cfg 'feature="printing"' --cfg 'feature="proc-macro"' --cfg 'feature="quote"' -C metadata=730e1afe94ec8000 -C extra-filename=-730e1afe94ec8000 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro2=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro2-c15da2d35fd6b882.rmeta --extern quote=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libquote-2210637c5717f8df.rmeta --extern unicode_xid=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libunicode_xid-5f6f0613524b3651.rmeta --cap-lints allow --cfg syn_can_match_trailing_dollar --cfg syn_can_use_thread_id --cfg syn_can_use_associated_constants --cfg syn_can_call_macro_by_path`
     Compiling mashup-impl v0.1.12
       Running `rustc --crate-name mashup_impl /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/mashup-impl-0.1.12/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type proc-macro --emit=dep-info,link -C prefer-dynamic -C embed-bitcode=no -C debug-assertions=off -C metadata=864c3ceaee8709d5 -C extra-filename=-864c3ceaee8709d5 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro_hack=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro_hack-187068e14d5baf40.rlib --extern proc_macro2=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro2-c15da2d35fd6b882.rlib --extern proc_macro --cap-lints allow`
     Compiling mashup v0.1.12
       Running `rustc --crate-name mashup /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/mashup-0.1.12/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no -C metadata=a1fe0a2bd5505ba2 -C extra-filename=-a1fe0a2bd5505ba2 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern mashup_impl=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libmashup_impl-864c3ceaee8709d5.so --extern proc_macro_hack=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro_hack-d2d214166bb2d48c.rmeta --cap-lints allow`
     Compiling regex v1.4.3
       Running `rustc --crate-name regex /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/regex-1.4.3/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="aho-corasick"' --cfg 'feature="default"' --cfg 'feature="memchr"' --cfg 'feature="perf"' --cfg 'feature="perf-cache"' --cfg 'feature="perf-dfa"' --cfg 'feature="perf-inline"' --cfg 'feature="perf-literal"' --cfg 'feature="std"' --cfg 'feature="thread_local"' --cfg 'feature="unicode"' --cfg 'feature="unicode-age"' --cfg 'feature="unicode-bool"' --cfg 'feature="unicode-case"' --cfg 'feature="unicode-gencat"' --cfg 'feature="unicode-perl"' --cfg 'feature="unicode-script"' --cfg 'feature="unicode-segment"' -C metadata=a0b1a75da25f17cf -C extra-filename=-a0b1a75da25f17cf --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern aho_corasick=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libaho_corasick-1b8dbda8e0b45746.rmeta --extern memchr=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libmemchr-396ffb27b4729a17.rmeta --extern regex_syntax=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libregex_syntax-529e8e64405e9a1c.rmeta --extern thread_local=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libthread_local-e60ec9865252cfb1.rmeta --cap-lints allow`
     Compiling pyo3 v0.7.0
       Running `rustc --crate-name build_script_build --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="extension-module"' -C metadata=ab9c1ea45a3a427e -C extra-filename=-ab9c1ea45a3a427e --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/pyo3-ab9c1ea45a3a427e -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern regex=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libregex-a0b1a75da25f17cf.rlib --extern version_check=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libversion_check-0d09839629235ade.rlib --cap-lints allow`
       Running `/tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/pyo3-ab9c1ea45a3a427e/build-script-build`
     Compiling ctor v0.1.19
     Compiling inventory-impl v0.1.10
     Compiling ghost v0.1.2
       Running `rustc --crate-name ctor --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/ctor-0.1.19/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type proc-macro --emit=dep-info,link -C prefer-dynamic -C embed-bitcode=no -C debug-assertions=off -C metadata=fb6b9cf2e2199235 -C extra-filename=-fb6b9cf2e2199235 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern quote=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libquote-6e384319eb964c78.rlib --extern syn=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libsyn-8e47350e18924cd4.rlib --extern proc_macro --cap-lints allow`
       Running `rustc --crate-name inventory_impl --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/inventory-impl-0.1.10/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type proc-macro --emit=dep-info,link -C prefer-dynamic -C embed-bitcode=no -C debug-assertions=off -C metadata=6254cb54bb9272e6 -C extra-filename=-6254cb54bb9272e6 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro2=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro2-3d30b1cf012cba61.rlib --extern quote=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libquote-6e384319eb964c78.rlib --extern syn=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libsyn-8e47350e18924cd4.rlib --extern proc_macro --cap-lints allow`
       Running `rustc --crate-name ghost --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/ghost-0.1.2/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type proc-macro --emit=dep-info,link -C prefer-dynamic -C embed-bitcode=no -C debug-assertions=off -C metadata=61cd961599adf9d8 -C extra-filename=-61cd961599adf9d8 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro2=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro2-3d30b1cf012cba61.rlib --extern quote=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libquote-6e384319eb964c78.rlib --extern syn=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libsyn-8e47350e18924cd4.rlib --extern proc_macro --cap-lints allow`
     Compiling pyo3-derive-backend v0.7.0
       Running `rustc --crate-name pyo3_derive_backend --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-derive-backend-0.7.0/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off -C metadata=e2484e0e1a1620aa -C extra-filename=-e2484e0e1a1620aa --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro2=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro2-c15da2d35fd6b882.rmeta --extern quote=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libquote-2210637c5717f8df.rmeta --extern syn=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libsyn-730e1afe94ec8000.rmeta --cap-lints allow`
       Running `rustc --crate-name inventory --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/inventory-0.1.10/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no -C metadata=701eefaf91ecce0c -C extra-filename=-701eefaf91ecce0c --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern ctor=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libctor-fb6b9cf2e2199235.so --extern ghost=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libghost-61cd961599adf9d8.so --extern inventory_impl=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libinventory_impl-6254cb54bb9272e6.so --cap-lints allow`
     Compiling pyo3cls v0.7.0
       Running `rustc --crate-name pyo3cls --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3cls-0.7.0/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type proc-macro --emit=dep-info,link -C prefer-dynamic -C embed-bitcode=no -C debug-assertions=off -C metadata=98daaa7fb14b4973 -C extra-filename=-98daaa7fb14b4973 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro2=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro2-c15da2d35fd6b882.rlib --extern pyo3_derive_backend=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libpyo3_derive_backend-e2484e0e1a1620aa.rlib --extern quote=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libquote-2210637c5717f8df.rlib --extern syn=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libsyn-730e1afe94ec8000.rlib --extern proc_macro --cap-lints allow`
       Running `rustc --crate-name pyo3 --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no --cfg 'feature="default"' --cfg 'feature="extension-module"' -C metadata=2b02d3cc6934fdd6 -C extra-filename=-2b02d3cc6934fdd6 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern inventory=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libinventory-701eefaf91ecce0c.rmeta --extern libc=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/liblibc-9e1e5be5fbec308b.rmeta --extern mashup=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libmashup-a1fe0a2bd5505ba2.rmeta --extern num_traits=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libnum_traits-b9cd4cd2c6156acf.rmeta --extern pyo3cls=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libpyo3cls-98daaa7fb14b4973.so --extern spin=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libspin-638b2ded4481154c.rmeta --cap-lints allow --cfg Py_3_5 --cfg Py_3_6 --cfg Py_3_7 --cfg Py_3_8 --cfg Py_3_9 --cfg Py_3 --cfg 'py_sys_config="WITH_THREAD"'`
  error[E0520]: `methods` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:170:5
      |
  164 |   impl<T> PyObjectProtocolImpl for T {}
      |   ------------------------------------- parent `impl` is here
  ...
  170 | /     fn methods() -> Vec<PyMethodDef> {
  171 | |         let mut methods = Vec::new();
  172 | |
  173 | |         if let Some(def) = <Self as FormatProtocolImpl>::__format__() {
  ...   |
  182 | |         methods
  183 | |     }
      | |_____^ cannot specialize default item `methods`
      |
      = note: to specialize, `methods` in the parent `impl` must be marked `default`
  
  error[E0520]: `tp_as_object` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:184:5
      |
  164 |   impl<T> PyObjectProtocolImpl for T {}
      |   ------------------------------------- parent `impl` is here
  ...
  184 | /     fn tp_as_object(type_object: &mut ffi::PyTypeObject) {
  185 | |         type_object.tp_str = Self::tp_str();
  186 | |         type_object.tp_repr = Self::tp_repr();
  187 | |         type_object.tp_hash = Self::tp_hash();
  ...   |
  190 | |         type_object.tp_setattro = tp_setattro_impl::tp_setattro::<Self>();
  191 | |     }
      | |_____^ cannot specialize default item `tp_as_object`
      |
      = note: to specialize, `tp_as_object` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_bool_fn` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:192:5
      |
  164 |   impl<T> PyObjectProtocolImpl for T {}
      |   ------------------------------------- parent `impl` is here
  ...
  192 | /     fn nb_bool_fn() -> Option<ffi::inquiry> {
  193 | |         Self::nb_bool()
  194 | |     }
      | |_____^ cannot specialize default item `nb_bool_fn`
      |
      = note: to specialize, `nb_bool_fn` in the parent `impl` must be marked `default`
  
  error[E0520]: `tp_getattro` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:209:5
      |
  203 |   impl<'p, T> GetAttrProtocolImpl for T where T: PyObjectProtocol<'p> {}
      |   ---------------------------------------------------------------------- parent `impl` is here
  ...
  209 | /     fn tp_getattro() -> Option<ffi::binaryfunc> {
  210 | |         py_binary_func!(
  211 | |             PyObjectGetAttrProtocol,
  212 | |             T::__getattr__,
  ...   |
  215 | |         )
  216 | |     }
      | |_____^ cannot specialize default item `tp_getattro`
      |
      = note: to specialize, `tp_getattro` in the parent `impl` must be marked `default`
  
  error[E0520]: `tp_str` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:313:5
      |
  308 |   impl<'p, T> StrProtocolImpl for T where T: PyObjectProtocol<'p> {}
      |   ------------------------------------------------------------------ parent `impl` is here
  ...
  313 | /     fn tp_str() -> Option<ffi::unaryfunc> {
  314 | |         py_unary_func!(
  315 | |             PyObjectStrProtocol,
  316 | |             T::__str__,
  ...   |
  319 | |         )
  320 | |     }
      | |_____^ cannot specialize default item `tp_str`
      |
      = note: to specialize, `tp_str` in the parent `impl` must be marked `default`
  
  error[E0520]: `tp_repr` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:333:5
      |
  328 |   impl<'p, T> ReprProtocolImpl for T where T: PyObjectProtocol<'p> {}
      |   ------------------------------------------------------------------- parent `impl` is here
  ...
  333 | /     fn tp_repr() -> Option<ffi::unaryfunc> {
  334 | |         py_unary_func!(
  335 | |             PyObjectReprProtocol,
  336 | |             T::__repr__,
  ...   |
  339 | |         )
  340 | |     }
      | |_____^ cannot specialize default item `tp_repr`
      |
      = note: to specialize, `tp_repr` in the parent `impl` must be marked `default`
  
  error[E0520]: `tp_hash` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:377:5
      |
  372 |   impl<'p, T> HashProtocolImpl for T where T: PyObjectProtocol<'p> {}
      |   ------------------------------------------------------------------- parent `impl` is here
  ...
  377 | /     fn tp_hash() -> Option<ffi::hashfunc> {
  378 | |         py_unary_func!(
  379 | |             PyObjectHashProtocol,
  380 | |             T::__hash__,
  ...   |
  384 | |         )
  385 | |     }
      | |_____^ cannot specialize default item `tp_hash`
      |
      = note: to specialize, `tp_hash` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_bool` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:398:5
      |
  393 |   impl<'p, T> BoolProtocolImpl for T where T: PyObjectProtocol<'p> {}
      |   ------------------------------------------------------------------- parent `impl` is here
  ...
  398 | /     fn nb_bool() -> Option<ffi::inquiry> {
  399 | |         py_unary_func!(
  400 | |             PyObjectBoolProtocol,
  401 | |             T::__bool__,
  ...   |
  405 | |         )
  406 | |     }
      | |_____^ cannot specialize default item `nb_bool`
      |
      = note: to specialize, `nb_bool` in the parent `impl` must be marked `default`
  
  error[E0520]: `tp_richcompare` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:419:5
      |
  414 |   impl<'p, T> RichcmpProtocolImpl for T where T: PyObjectProtocol<'p> {}
      |   ---------------------------------------------------------------------- parent `impl` is here
  ...
  419 | /     fn tp_richcompare() -> Option<ffi::richcmpfunc> {
  420 | |         unsafe extern "C" fn wrap<T>(
  421 | |             slf: *mut ffi::PyObject,
  422 | |             arg: *mut ffi::PyObject,
  ...   |
  448 | |         Some(wrap::<T>)
  449 | |     }
      | |_____^ cannot specialize default item `tp_richcompare`
      |
      = note: to specialize, `tp_richcompare` in the parent `impl` must be marked `default`
  
  error[E0520]: `set_attr` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:257:9
      |
  251 |       impl<'p, T: PyObjectProtocol<'p>> SetAttr for T {}
      |       -------------------------------------------------- parent `impl` is here
  ...
  257 | /         fn set_attr() -> Option<ffi::setattrofunc> {
  258 | |             py_func_set!(PyObjectSetAttrProtocol, T, __setattr__)
  259 | |         }
      | |_________^ cannot specialize default item `set_attr`
      |
      = note: to specialize, `set_attr` in the parent `impl` must be marked `default`
  
  error[E0520]: `del_attr` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:274:9
      |
  268 |       impl<'p, T> DelAttr for T where T: PyObjectProtocol<'p> {}
      |       ---------------------------------------------------------- parent `impl` is here
  ...
  274 | /         fn del_attr() -> Option<ffi::setattrofunc> {
  275 | |             py_func_del!(PyObjectDelAttrProtocol, T, __delattr__)
  276 | |         }
      | |_________^ cannot specialize default item `del_attr`
      |
      = note: to specialize, `del_attr` in the parent `impl` must be marked `default`
  
  error[E0520]: `set_del_attr` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:291:9
      |
  285 |       impl<'p, T> SetDelAttr for T where T: PyObjectProtocol<'p> {}
      |       ------------------------------------------------------------- parent `impl` is here
  ...
  291 | /         fn set_del_attr() -> Option<ffi::setattrofunc> {
  292 | |             py_func_set_del!(
  293 | |                 PyObjectSetAttrProtocol,
  294 | |                 PyObjectDelAttrProtocol,
  ...   |
  298 | |             )
  299 | |         }
      | |_________^ cannot specialize default item `set_del_attr`
      |
      = note: to specialize, `set_del_attr` in the parent `impl` must be marked `default`
  
  error[E0520]: `tp_as_buffer` specializes an item from a parent `impl`, but that item is not marked `default`
    --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/buffer.rs:57:5
     |
  49 |   impl<T> PyBufferProtocolImpl for T {}
     |   ------------------------------------- parent `impl` is here
  ...
  57 | /     fn tp_as_buffer() -> Option<ffi::PyBufferProcs> {
  58 | |         Some(ffi::PyBufferProcs {
  59 | |             bf_getbuffer: Self::cb_bf_getbuffer(),
  60 | |             bf_releasebuffer: None,
  61 | |             ..ffi::PyBufferProcs_INIT
  62 | |         })
  63 | |     }
     | |_____^ cannot specialize default item `tp_as_buffer`
     |
     = note: to specialize, `tp_as_buffer` in the parent `impl` must be marked `default`
  
  error[E0520]: `cb_bf_getbuffer` specializes an item from a parent `impl`, but that item is not marked `default`
    --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/buffer.rs:79:5
     |
  72 |   impl<'p, T> PyBufferGetBufferProtocolImpl for T where T: PyBufferProtocol<'p> {}
     |   -------------------------------------------------------------------------------- parent `impl` is here
  ...
  79 | /     fn cb_bf_getbuffer() -> Option<ffi::getbufferproc> {
  80 | |         unsafe extern "C" fn wrap<T>(
  81 | |             slf: *mut ffi::PyObject,
  82 | |             arg1: *mut ffi::Py_buffer,
  ...  |
  95 | |         Some(wrap::<T>)
  96 | |     }
     | |_____^ cannot specialize default item `cb_bf_getbuffer`
     |
     = note: to specialize, `cb_bf_getbuffer` in the parent `impl` must be marked `default`
  
  error[E0520]: `methods` specializes an item from a parent `impl`, but that item is not marked `default`
    --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/context.rs:61:5
     |
  54 |   impl<T> PyContextProtocolImpl for T {}
     |   -------------------------------------- parent `impl` is here
  ...
  61 | /     fn methods() -> Vec<PyMethodDef> {
  62 | |         let mut methods = Vec::new();
  63 | |
  64 | |         if let Some(def) = <Self as PyContextEnterProtocolImpl>::__enter__() {
  ...  |
  71 | |         methods
  72 | |     }
     | |_____^ cannot specialize default item `methods`
     |
     = note: to specialize, `methods` in the parent `impl` must be marked `default`
  
  error[E0520]: `tp_descr_get` specializes an item from a parent `impl`, but that item is not marked `default`
    --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/descr.rs:83:5
     |
  77 |   impl<'p, T> PyDescrGetProtocolImpl for T where T: PyDescrProtocol<'p> {}
     |   ------------------------------------------------------------------------ parent `impl` is here
  ...
  83 | /     fn tp_descr_get() -> Option<ffi::descrgetfunc> {
  84 | |         py_ternary_func!(
  85 | |             PyDescrGetProtocol,
  86 | |             T::__get__,
  ...  |
  89 | |         )
  90 | |     }
     | |_____^ cannot specialize default item `tp_descr_get`
     |
     = note: to specialize, `tp_descr_get` in the parent `impl` must be marked `default`
  
  error[E0520]: `tp_descr_set` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/descr.rs:103:5
      |
  98  |   impl<'p, T> PyDescrSetProtocolImpl for T where T: PyDescrProtocol<'p> {}
      |   ------------------------------------------------------------------------ parent `impl` is here
  ...
  103 | /     fn tp_descr_set() -> Option<ffi::descrsetfunc> {
  104 | |         py_ternary_func!(
  105 | |             PyDescrSetProtocol,
  106 | |             T::__set__,
  ...   |
  110 | |         )
  111 | |     }
      | |_____^ cannot specialize default item `tp_descr_set`
      |
      = note: to specialize, `tp_descr_set` in the parent `impl` must be marked `default`
  
  error[E0520]: `methods` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/descr.rs:142:5
      |
  136 |   impl<T> PyDescrProtocolImpl for T {}
      |   ------------------------------------ parent `impl` is here
  ...
  142 | /     fn methods() -> Vec<PyMethodDef> {
  143 | |         Vec::new()
  144 | |     }
      | |_____^ cannot specialize default item `methods`
      |
      = note: to specialize, `methods` in the parent `impl` must be marked `default`
  
  error[E0520]: `tp_as_descr` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/descr.rs:145:5
      |
  136 |   impl<T> PyDescrProtocolImpl for T {}
      |   ------------------------------------ parent `impl` is here
  ...
  145 | /     fn tp_as_descr(type_object: &mut ffi::PyTypeObject) {
  146 | |         type_object.tp_descr_get = Self::tp_descr_get();
  147 | |         type_object.tp_descr_set = Self::tp_descr_set();
  148 | |     }
      | |_____^ cannot specialize default item `tp_as_descr`
      |
      = note: to specialize, `tp_as_descr` in the parent `impl` must be marked `default`
  
  error[E0520]: `update_type_object` specializes an item from a parent `impl`, but that item is not marked `default`
    --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/gc.rs:41:5
     |
  35 |   impl<'p, T> PyGCProtocolImpl for T {}
     |   ------------------------------------- parent `impl` is here
  ...
  41 | /     fn update_type_object(type_object: &mut ffi::PyTypeObject) {
  42 | |         type_object.tp_traverse = Self::tp_traverse();
  43 | |         type_object.tp_clear = Self::tp_clear();
  44 | |     }
     | |_____^ cannot specialize default item `update_type_object`
     |
     = note: to specialize, `update_type_object` in the parent `impl` must be marked `default`
  
  error[E0520]: `tp_traverse` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/gc.rs:85:5
      |
  77  |   impl<'p, T> PyGCTraverseProtocolImpl for T where T: PyGCProtocol<'p> {}
      |   ----------------------------------------------------------------------- parent `impl` is here
  ...
  85  | /     fn tp_traverse() -> Option<ffi::traverseproc> {
  86  | |         unsafe extern "C" fn tp_traverse<T>(
  87  | |             slf: *mut ffi::PyObject,
  88  | |             visit: ffi::visitproc,
  ...   |
  109 | |         Some(tp_traverse::<T>)
  110 | |     }
      | |_____^ cannot specialize default item `tp_traverse`
      |
      = note: to specialize, `tp_traverse` in the parent `impl` must be marked `default`
  
  error[E0520]: `tp_clear` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/gc.rs:126:5
      |
  119 |   impl<'p, T> PyGCClearProtocolImpl for T where T: PyGCProtocol<'p> {}
      |   -------------------------------------------------------------------- parent `impl` is here
  ...
  126 | /     fn tp_clear() -> Option<ffi::inquiry> {
  127 | |         unsafe extern "C" fn tp_clear<T>(slf: *mut ffi::PyObject) -> c_int
  128 | |         where
  129 | |             T: for<'p> PyGCClearProtocol<'p>,
  ...   |
  138 | |         Some(tp_clear::<T>)
  139 | |     }
      | |_____^ cannot specialize default item `tp_clear`
      |
      = note: to specialize, `tp_clear` in the parent `impl` must be marked `default`
  
  error[E0520]: `tp_as_iter` specializes an item from a parent `impl`, but that item is not marked `default`
    --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/iter.rs:58:5
     |
  51 |   impl<T> PyIterProtocolImpl for T {}
     |   ----------------------------------- parent `impl` is here
  ...
  58 | /     fn tp_as_iter(typeob: &mut ffi::PyTypeObject) {
  59 | |         typeob.tp_iter = Self::tp_iter();
  60 | |         typeob.tp_iternext = Self::tp_iternext();
  61 | |     }
     | |_____^ cannot specialize default item `tp_as_iter`
     |
     = note: to specialize, `tp_as_iter` in the parent `impl` must be marked `default`
  
  error[E0520]: `tp_iter` specializes an item from a parent `impl`, but that item is not marked `default`
    --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/iter.rs:77:5
     |
  70 |   impl<'p, T> PyIterIterProtocolImpl for T where T: PyIterProtocol<'p> {}
     |   ----------------------------------------------------------------------- parent `impl` is here
  ...
  77 | /     fn tp_iter() -> Option<ffi::getiterfunc> {
  78 | |         py_unary_pyref_func!(
  79 | |             PyIterIterProtocol,
  80 | |             T::__iter__,
  ...  |
  83 | |         )
  84 | |     }
     | |_____^ cannot specialize default item `tp_iter`
     |
     = note: to specialize, `tp_iter` in the parent `impl` must be marked `default`
  
  error[E0520]: `tp_iternext` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/iter.rs:100:5
      |
  93  |   impl<'p, T> PyIterNextProtocolImpl for T where T: PyIterProtocol<'p> {}
      |   ----------------------------------------------------------------------- parent `impl` is here
  ...
  100 | /     fn tp_iternext() -> Option<ffi::iternextfunc> {
  101 | |         py_unary_pyref_func!(
  102 | |             PyIterNextProtocol,
  103 | |             T::__next__,
  ...   |
  106 | |         )
  107 | |     }
      | |_____^ cannot specialize default item `tp_iternext`
      |
      = note: to specialize, `tp_iternext` in the parent `impl` must be marked `default`
  
  error[E0520]: `tp_as_mapping` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/mapping.rs:124:5
      |
  117 |   impl<T> PyMappingProtocolImpl for T {}
      |   -------------------------------------- parent `impl` is here
  ...
  124 | /     fn tp_as_mapping() -> Option<ffi::PyMappingMethods> {
  125 | |         let f = if let Some(df) = Self::mp_del_subscript() {
  126 | |             Some(df)
  127 | |         } else {
  ...   |
  135 | |         })
  136 | |     }
      | |_____^ cannot specialize default item `tp_as_mapping`
      |
      = note: to specialize, `tp_as_mapping` in the parent `impl` must be marked `default`
  
  error[E0520]: `methods` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/mapping.rs:139:5
      |
  117 |   impl<T> PyMappingProtocolImpl for T {}
      |   -------------------------------------- parent `impl` is here
  ...
  139 | /     fn methods() -> Vec<PyMethodDef> {
  140 | |         let mut methods = Vec::new();
  141 | |
  142 | |         if let Some(def) = <Self as PyMappingIterProtocolImpl>::__iter__() {
  ...   |
  152 | |         methods
  153 | |     }
      | |_____^ cannot specialize default item `methods`
      |
      = note: to specialize, `methods` in the parent `impl` must be marked `default`
  
  error[E0520]: `mp_length` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/mapping.rs:169:5
      |
  162 |   impl<'p, T> PyMappingLenProtocolImpl for T where T: PyMappingProtocol<'p> {}
      |   ---------------------------------------------------------------------------- parent `impl` is here
  ...
  169 | /     fn mp_length() -> Option<ffi::lenfunc> {
  170 | |         py_len_func!(PyMappingLenProtocol, T::__len__, LenResultConverter)
  171 | |     }
      | |_____^ cannot specialize default item `mp_length`
      |
      = note: to specialize, `mp_length` in the parent `impl` must be marked `default`
  
  error[E0520]: `mp_subscript` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/mapping.rs:187:5
      |
  180 |   impl<'p, T> PyMappingGetItemProtocolImpl for T where T: PyMappingProtocol<'p> {}
      |   -------------------------------------------------------------------------------- parent `impl` is here
  ...
  187 | /     fn mp_subscript() -> Option<ffi::binaryfunc> {
  188 | |         py_binary_func!(
  189 | |             PyMappingGetItemProtocol,
  190 | |             T::__getitem__,
  ...   |
  193 | |         )
  194 | |     }
      | |_____^ cannot specialize default item `mp_subscript`
      |
      = note: to specialize, `mp_subscript` in the parent `impl` must be marked `default`
  
  error[E0520]: `mp_ass_subscript` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/mapping.rs:210:5
      |
  203 |   impl<'p, T> PyMappingSetItemProtocolImpl for T where T: PyMappingProtocol<'p> {}
      |   -------------------------------------------------------------------------------- parent `impl` is here
  ...
  210 | /     fn mp_ass_subscript() -> Option<ffi::objobjargproc> {
  211 | |         py_func_set!(PyMappingSetItemProtocol, T, __setitem__)
  212 | |     }
      | |_____^ cannot specialize default item `mp_ass_subscript`
      |
      = note: to specialize, `mp_ass_subscript` in the parent `impl` must be marked `default`
  
  error[E0520]: `det_set_dispatch` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/mapping.rs:238:5
      |
  232 |   impl<T> DelSetItemDispatch for T where T: Sized + for<'p> PyMappingDelItemProtocol<'p> {}
      |   ----------------------------------------------------------------------------------------- parent `impl` is here
  ...
  238 | /     fn det_set_dispatch() -> Option<ffi::objobjargproc> {
  239 | |         py_func_set_del!(
  240 | |             PyMappingSetItemProtocol,
  241 | |             PyMappingDelItemProtocol,
  ...   |
  245 | |         )
  246 | |     }
      | |_____^ cannot specialize default item `det_set_dispatch`
      |
      = note: to specialize, `det_set_dispatch` in the parent `impl` must be marked `default`
  
  error[E0520]: `mp_del_subscript` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/mapping.rs:253:5
      |
  223 |   impl<'p, T> DeplItemDipatch for T where T: PyMappingProtocol<'p> {}
      |   ------------------------------------------------------------------- parent `impl` is here
  ...
  253 | /     fn mp_del_subscript() -> Option<ffi::objobjargproc> {
  254 | |         <T as DelSetItemDispatch>::det_set_dispatch()
  255 | |     }
      | |_____^ cannot specialize default item `mp_del_subscript`
      |
      = note: to specialize, `mp_del_subscript` in the parent `impl` must be marked `default`
  
  error[E0520]: `tp_as_number` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:647:5
      |
  641 |   impl<'p, T> PyNumberProtocolImpl for T {}
      |   ----------------------------------------- parent `impl` is here
  ...
  647 | /     fn tp_as_number() -> Option<ffi::PyNumberMethods> {
  648 | |         Some(ffi::PyNumberMethods {
  649 | |             nb_add: Self::nb_add(),
  650 | |             nb_subtract: Self::nb_subtract(),
  ...   |
  685 | |         })
  686 | |     }
      | |_____^ cannot specialize default item `tp_as_number`
      |
      = note: to specialize, `tp_as_number` in the parent `impl` must be marked `default`
  
  error[E0520]: `methods` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:689:5
      |
  641 |   impl<'p, T> PyNumberProtocolImpl for T {}
      |   ----------------------------------------- parent `impl` is here
  ...
  689 | /     fn methods() -> Vec<PyMethodDef> {
  690 | |         let mut methods = Vec::new();
  691 | |
  692 | |         if let Some(def) = <Self as PyNumberRAddProtocolImpl>::__radd__() {
  ...   |
  741 | |         methods
  742 | |     }
      | |_____^ cannot specialize default item `methods`
      |
      = note: to specialize, `methods` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_add` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:757:5
      |
  751 |   impl<'p, T> PyNumberAddProtocolImpl for T where T: PyNumberProtocol<'p> {}
      |   -------------------------------------------------------------------------- parent `impl` is here
  ...
  757 | /     fn nb_add() -> Option<ffi::binaryfunc> {
  758 | |         py_binary_num_func!(
  759 | |             PyNumberAddProtocol,
  760 | |             T::__add__,
  ...   |
  763 | |         )
  764 | |     }
      | |_____^ cannot specialize default item `nb_add`
      |
      = note: to specialize, `nb_add` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_subtract` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:779:5
      |
  773 |   impl<'p, T> PyNumberSubProtocolImpl for T where T: PyNumberProtocol<'p> {}
      |   -------------------------------------------------------------------------- parent `impl` is here
  ...
  779 | /     fn nb_subtract() -> Option<ffi::binaryfunc> {
  780 | |         py_binary_num_func!(
  781 | |             PyNumberSubProtocol,
  782 | |             T::__sub__,
  ...   |
  785 | |         )
  786 | |     }
      | |_____^ cannot specialize default item `nb_subtract`
      |
      = note: to specialize, `nb_subtract` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_multiply` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:801:5
      |
  795 |   impl<'p, T> PyNumberMulProtocolImpl for T where T: PyNumberProtocol<'p> {}
      |   -------------------------------------------------------------------------- parent `impl` is here
  ...
  801 | /     fn nb_multiply() -> Option<ffi::binaryfunc> {
  802 | |         py_binary_num_func!(
  803 | |             PyNumberMulProtocol,
  804 | |             T::__mul__,
  ...   |
  807 | |         )
  808 | |     }
      | |_____^ cannot specialize default item `nb_multiply`
      |
      = note: to specialize, `nb_multiply` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_matrix_multiply` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:823:5
      |
  817 |   impl<'p, T> PyNumberMatmulProtocolImpl for T where T: PyNumberProtocol<'p> {}
      |   ----------------------------------------------------------------------------- parent `impl` is here
  ...
  823 | /     fn nb_matrix_multiply() -> Option<ffi::binaryfunc> {
  824 | |         py_binary_num_func!(
  825 | |             PyNumberMatmulProtocol,
  826 | |             T::__matmul__,
  ...   |
  829 | |         )
  830 | |     }
      | |_____^ cannot specialize default item `nb_matrix_multiply`
      |
      = note: to specialize, `nb_matrix_multiply` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_true_divide` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:845:5
      |
  839 |   impl<'p, T> PyNumberTruedivProtocolImpl for T where T: PyNumberProtocol<'p> {}
      |   ------------------------------------------------------------------------------ parent `impl` is here
  ...
  845 | /     fn nb_true_divide() -> Option<ffi::binaryfunc> {
  846 | |         py_binary_num_func!(
  847 | |             PyNumberTruedivProtocol,
  848 | |             T::__truediv__,
  ...   |
  851 | |         )
  852 | |     }
      | |_____^ cannot specialize default item `nb_true_divide`
      |
      = note: to specialize, `nb_true_divide` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_floor_divide` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:867:5
      |
  861 |   impl<'p, T> PyNumberFloordivProtocolImpl for T where T: PyNumberProtocol<'p> {}
      |   ------------------------------------------------------------------------------- parent `impl` is here
  ...
  867 | /     fn nb_floor_divide() -> Option<ffi::binaryfunc> {
  868 | |         py_binary_num_func!(
  869 | |             PyNumberFloordivProtocol,
  870 | |             T::__floordiv__,
  ...   |
  873 | |         )
  874 | |     }
      | |_____^ cannot specialize default item `nb_floor_divide`
      |
      = note: to specialize, `nb_floor_divide` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_remainder` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:889:5
      |
  883 |   impl<'p, T> PyNumberModProtocolImpl for T where T: PyNumberProtocol<'p> {}
      |   -------------------------------------------------------------------------- parent `impl` is here
  ...
  889 | /     fn nb_remainder() -> Option<ffi::binaryfunc> {
  890 | |         py_binary_num_func!(
  891 | |             PyNumberModProtocol,
  892 | |             T::__mod__,
  ...   |
  895 | |         )
  896 | |     }
      | |_____^ cannot specialize default item `nb_remainder`
      |
      = note: to specialize, `nb_remainder` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_divmod` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:911:5
      |
  905 |   impl<'p, T> PyNumberDivmodProtocolImpl for T where T: PyNumberProtocol<'p> {}
      |   ----------------------------------------------------------------------------- parent `impl` is here
  ...
  911 | /     fn nb_divmod() -> Option<ffi::binaryfunc> {
  912 | |         py_binary_num_func!(
  913 | |             PyNumberDivmodProtocol,
  914 | |             T::__divmod__,
  ...   |
  917 | |         )
  918 | |     }
      | |_____^ cannot specialize default item `nb_divmod`
      |
      = note: to specialize, `nb_divmod` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_power` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:933:5
      |
  927 |   impl<'p, T> PyNumberPowProtocolImpl for T where T: PyNumberProtocol<'p> {}
      |   -------------------------------------------------------------------------- parent `impl` is here
  ...
  933 | /     fn nb_power() -> Option<ffi::ternaryfunc> {
  934 | |         py_ternary_num_func!(
  935 | |             PyNumberPowProtocol,
  936 | |             T::__pow__,
  ...   |
  939 | |         )
  940 | |     }
      | |_____^ cannot specialize default item `nb_power`
      |
      = note: to specialize, `nb_power` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_lshift` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:955:5
      |
  949 |   impl<'p, T> PyNumberLShiftProtocolImpl for T where T: PyNumberProtocol<'p> {}
      |   ----------------------------------------------------------------------------- parent `impl` is here
  ...
  955 | /     fn nb_lshift() -> Option<ffi::binaryfunc> {
  956 | |         py_binary_num_func!(
  957 | |             PyNumberLShiftProtocol,
  958 | |             T::__lshift__,
  ...   |
  961 | |         )
  962 | |     }
      | |_____^ cannot specialize default item `nb_lshift`
      |
      = note: to specialize, `nb_lshift` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_rshift` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:977:5
      |
  971 |   impl<'p, T> PyNumberRShiftProtocolImpl for T where T: PyNumberProtocol<'p> {}
      |   ----------------------------------------------------------------------------- parent `impl` is here
  ...
  977 | /     fn nb_rshift() -> Option<ffi::binaryfunc> {
  978 | |         py_binary_num_func!(
  979 | |             PyNumberRShiftProtocol,
  980 | |             T::__rshift__,
  ...   |
  983 | |         )
  984 | |     }
      | |_____^ cannot specialize default item `nb_rshift`
      |
      = note: to specialize, `nb_rshift` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_and` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:999:5
       |
  993  |   impl<'p, T> PyNumberAndProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   -------------------------------------------------------------------------- parent `impl` is here
  ...
  999  | /     fn nb_and() -> Option<ffi::binaryfunc> {
  1000 | |         py_binary_num_func!(
  1001 | |             PyNumberAndProtocol,
  1002 | |             T::__and__,
  ...    |
  1005 | |         )
  1006 | |     }
       | |_____^ cannot specialize default item `nb_and`
       |
       = note: to specialize, `nb_and` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_xor` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1021:5
       |
  1015 |   impl<'p, T> PyNumberXorProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   -------------------------------------------------------------------------- parent `impl` is here
  ...
  1021 | /     fn nb_xor() -> Option<ffi::binaryfunc> {
  1022 | |         py_binary_num_func!(
  1023 | |             PyNumberXorProtocol,
  1024 | |             T::__xor__,
  ...    |
  1027 | |         )
  1028 | |     }
       | |_____^ cannot specialize default item `nb_xor`
       |
       = note: to specialize, `nb_xor` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_or` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1043:5
       |
  1037 |   impl<'p, T> PyNumberOrProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   ------------------------------------------------------------------------- parent `impl` is here
  ...
  1043 | /     fn nb_or() -> Option<ffi::binaryfunc> {
  1044 | |         py_binary_num_func!(
  1045 | |             PyNumberOrProtocol,
  1046 | |             T::__or__,
  ...    |
  1049 | |         )
  1050 | |     }
       | |_____^ cannot specialize default item `nb_or`
       |
       = note: to specialize, `nb_or` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_inplace_add` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1065:5
       |
  1059 |   impl<'p, T> PyNumberIAddProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   --------------------------------------------------------------------------- parent `impl` is here
  ...
  1065 | /     fn nb_inplace_add() -> Option<ffi::binaryfunc> {
  1066 | |         py_binary_self_func!(PyNumberIAddProtocol, T::__iadd__)
  1067 | |     }
       | |_____^ cannot specialize default item `nb_inplace_add`
       |
       = note: to specialize, `nb_inplace_add` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_inplace_subtract` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1082:5
       |
  1076 |   impl<'p, T> PyNumberISubProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   --------------------------------------------------------------------------- parent `impl` is here
  ...
  1082 | /     fn nb_inplace_subtract() -> Option<ffi::binaryfunc> {
  1083 | |         py_binary_self_func!(PyNumberISubProtocol, T::__isub__)
  1084 | |     }
       | |_____^ cannot specialize default item `nb_inplace_subtract`
       |
       = note: to specialize, `nb_inplace_subtract` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_inplace_multiply` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1099:5
       |
  1093 |   impl<'p, T> PyNumberIMulProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   --------------------------------------------------------------------------- parent `impl` is here
  ...
  1099 | /     fn nb_inplace_multiply() -> Option<ffi::binaryfunc> {
  1100 | |         py_binary_self_func!(PyNumberIMulProtocol, T::__imul__)
  1101 | |     }
       | |_____^ cannot specialize default item `nb_inplace_multiply`
       |
       = note: to specialize, `nb_inplace_multiply` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_inplace_matrix_multiply` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1116:5
       |
  1110 |   impl<'p, T> PyNumberIMatmulProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   ------------------------------------------------------------------------------ parent `impl` is here
  ...
  1116 | /     fn nb_inplace_matrix_multiply() -> Option<ffi::binaryfunc> {
  1117 | |         py_binary_self_func!(PyNumberIMatmulProtocol, T::__imatmul__)
  1118 | |     }
       | |_____^ cannot specialize default item `nb_inplace_matrix_multiply`
       |
       = note: to specialize, `nb_inplace_matrix_multiply` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_inplace_true_divide` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1133:5
       |
  1127 |   impl<'p, T> PyNumberITruedivProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   ------------------------------------------------------------------------------- parent `impl` is here
  ...
  1133 | /     fn nb_inplace_true_divide() -> Option<ffi::binaryfunc> {
  1134 | |         py_binary_self_func!(PyNumberITruedivProtocol, T::__itruediv__)
  1135 | |     }
       | |_____^ cannot specialize default item `nb_inplace_true_divide`
       |
       = note: to specialize, `nb_inplace_true_divide` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_inplace_floor_divide` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1150:5
       |
  1144 |   impl<'p, T> PyNumberIFloordivProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   -------------------------------------------------------------------------------- parent `impl` is here
  ...
  1150 | /     fn nb_inplace_floor_divide() -> Option<ffi::binaryfunc> {
  1151 | |         py_binary_self_func!(PyNumberIFloordivProtocol, T::__ifloordiv__)
  1152 | |     }
       | |_____^ cannot specialize default item `nb_inplace_floor_divide`
       |
       = note: to specialize, `nb_inplace_floor_divide` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_inplace_remainder` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1167:5
       |
  1161 |   impl<'p, T> PyNumberIModProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   --------------------------------------------------------------------------- parent `impl` is here
  ...
  1167 | /     fn nb_inplace_remainder() -> Option<ffi::binaryfunc> {
  1168 | |         py_binary_self_func!(PyNumberIModProtocol, T::__imod__)
  1169 | |     }
       | |_____^ cannot specialize default item `nb_inplace_remainder`
       |
       = note: to specialize, `nb_inplace_remainder` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_inplace_power` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1184:5
       |
  1178 |   impl<'p, T> PyNumberIPowProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   --------------------------------------------------------------------------- parent `impl` is here
  ...
  1184 | /     fn nb_inplace_power() -> Option<ffi::ternaryfunc> {
  1185 | |         py_ternary_self_func!(PyNumberIPowProtocol, T::__ipow__)
  1186 | |     }
       | |_____^ cannot specialize default item `nb_inplace_power`
       |
       = note: to specialize, `nb_inplace_power` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_inplace_lshift` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1201:5
       |
  1195 |   impl<'p, T> PyNumberILShiftProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   ------------------------------------------------------------------------------ parent `impl` is here
  ...
  1201 | /     fn nb_inplace_lshift() -> Option<ffi::binaryfunc> {
  1202 | |         py_binary_self_func!(PyNumberILShiftProtocol, T::__ilshift__)
  1203 | |     }
       | |_____^ cannot specialize default item `nb_inplace_lshift`
       |
       = note: to specialize, `nb_inplace_lshift` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_inplace_rshift` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1218:5
       |
  1212 |   impl<'p, T> PyNumberIRShiftProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   ------------------------------------------------------------------------------ parent `impl` is here
  ...
  1218 | /     fn nb_inplace_rshift() -> Option<ffi::binaryfunc> {
  1219 | |         py_binary_self_func!(PyNumberIRShiftProtocol, T::__irshift__)
  1220 | |     }
       | |_____^ cannot specialize default item `nb_inplace_rshift`
       |
       = note: to specialize, `nb_inplace_rshift` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_inplace_and` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1235:5
       |
  1229 |   impl<'p, T> PyNumberIAndProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   --------------------------------------------------------------------------- parent `impl` is here
  ...
  1235 | /     fn nb_inplace_and() -> Option<ffi::binaryfunc> {
  1236 | |         py_binary_self_func!(PyNumberIAndProtocol, T::__iand__)
  1237 | |     }
       | |_____^ cannot specialize default item `nb_inplace_and`
       |
       = note: to specialize, `nb_inplace_and` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_inplace_xor` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1252:5
       |
  1246 |   impl<'p, T> PyNumberIXorProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   --------------------------------------------------------------------------- parent `impl` is here
  ...
  1252 | /     fn nb_inplace_xor() -> Option<ffi::binaryfunc> {
  1253 | |         py_binary_self_func!(PyNumberIXorProtocol, T::__ixor__)
  1254 | |     }
       | |_____^ cannot specialize default item `nb_inplace_xor`
       |
       = note: to specialize, `nb_inplace_xor` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_inplace_or` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1269:5
       |
  1263 |   impl<'p, T> PyNumberIOrProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   -------------------------------------------------------------------------- parent `impl` is here
  ...
  1269 | /     fn nb_inplace_or() -> Option<ffi::binaryfunc> {
  1270 | |         py_binary_self_func!(PyNumberIOrProtocol, T::__ior__)
  1271 | |     }
       | |_____^ cannot specialize default item `nb_inplace_or`
       |
       = note: to specialize, `nb_inplace_or` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_negative` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1399:5
       |
  1392 |   impl<'p, T> PyNumberNegProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   -------------------------------------------------------------------------- parent `impl` is here
  ...
  1399 | /     fn nb_negative() -> Option<ffi::unaryfunc> {
  1400 | |         py_unary_func!(
  1401 | |             PyNumberNegProtocol,
  1402 | |             T::__neg__,
  ...    |
  1405 | |         )
  1406 | |     }
       | |_____^ cannot specialize default item `nb_negative`
       |
       = note: to specialize, `nb_negative` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_positive` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1421:5
       |
  1415 |   impl<'p, T> PyNumberPosProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   -------------------------------------------------------------------------- parent `impl` is here
  ...
  1421 | /     fn nb_positive() -> Option<ffi::unaryfunc> {
  1422 | |         py_unary_func!(
  1423 | |             PyNumberPosProtocol,
  1424 | |             T::__pos__,
  ...    |
  1427 | |         )
  1428 | |     }
       | |_____^ cannot specialize default item `nb_positive`
       |
       = note: to specialize, `nb_positive` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_absolute` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1443:5
       |
  1437 |   impl<'p, T> PyNumberAbsProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   -------------------------------------------------------------------------- parent `impl` is here
  ...
  1443 | /     fn nb_absolute() -> Option<ffi::unaryfunc> {
  1444 | |         py_unary_func!(
  1445 | |             PyNumberAbsProtocol,
  1446 | |             T::__abs__,
  ...    |
  1449 | |         )
  1450 | |     }
       | |_____^ cannot specialize default item `nb_absolute`
       |
       = note: to specialize, `nb_absolute` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_invert` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1465:5
       |
  1459 |   impl<'p, T> PyNumberInvertProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   ----------------------------------------------------------------------------- parent `impl` is here
  ...
  1465 | /     fn nb_invert() -> Option<ffi::unaryfunc> {
  1466 | |         py_unary_func!(
  1467 | |             PyNumberInvertProtocol,
  1468 | |             T::__invert__,
  ...    |
  1471 | |         )
  1472 | |     }
       | |_____^ cannot specialize default item `nb_invert`
       |
       = note: to specialize, `nb_invert` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_int` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1487:5
       |
  1481 |   impl<'p, T> PyNumberIntProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   -------------------------------------------------------------------------- parent `impl` is here
  ...
  1487 | /     fn nb_int() -> Option<ffi::unaryfunc> {
  1488 | |         py_unary_func!(
  1489 | |             PyNumberIntProtocol,
  1490 | |             T::__int__,
  ...    |
  1493 | |         )
  1494 | |     }
       | |_____^ cannot specialize default item `nb_int`
       |
       = note: to specialize, `nb_int` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_float` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1509:5
       |
  1503 |   impl<'p, T> PyNumberFloatProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   ---------------------------------------------------------------------------- parent `impl` is here
  ...
  1509 | /     fn nb_float() -> Option<ffi::unaryfunc> {
  1510 | |         py_unary_func!(
  1511 | |             PyNumberFloatProtocol,
  1512 | |             T::__float__,
  ...    |
  1515 | |         )
  1516 | |     }
       | |_____^ cannot specialize default item `nb_float`
       |
       = note: to specialize, `nb_float` in the parent `impl` must be marked `default`
  
  error[E0520]: `nb_index` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1531:5
       |
  1525 |   impl<'p, T> PyNumberIndexProtocolImpl for T where T: PyNumberProtocol<'p> {}
       |   ---------------------------------------------------------------------------- parent `impl` is here
  ...
  1531 | /     fn nb_index() -> Option<ffi::unaryfunc> {
  1532 | |         py_unary_func!(
  1533 | |             PyNumberIndexProtocol,
  1534 | |             T::__index__,
  ...    |
  1537 | |         )
  1538 | |     }
       | |_____^ cannot specialize default item `nb_index`
       |
       = note: to specialize, `nb_index` in the parent `impl` must be marked `default`
  
  error[E0520]: `tp_as_async` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/pyasync.rs:109:5
      |
  102 |   impl<T> PyAsyncProtocolImpl for T {}
      |   ------------------------------------ parent `impl` is here
  ...
  109 | /     fn tp_as_async() -> Option<ffi::PyAsyncMethods> {
  110 | |         Some(ffi::PyAsyncMethods {
  111 | |             am_await: Self::am_await(),
  112 | |             am_aiter: Self::am_aiter(),
  113 | |             am_anext: Self::am_anext(),
  114 | |         })
  115 | |     }
      | |_____^ cannot specialize default item `tp_as_async`
      |
      = note: to specialize, `tp_as_async` in the parent `impl` must be marked `default`
  
  error[E0520]: `methods` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/pyasync.rs:118:5
      |
  102 |   impl<T> PyAsyncProtocolImpl for T {}
      |   ------------------------------------ parent `impl` is here
  ...
  118 | /     fn methods() -> Vec<PyMethodDef> {
  119 | |         let mut methods = Vec::new();
  120 | |
  121 | |         if let Some(def) = <Self as PyAsyncAenterProtocolImpl>::__aenter__() {
  ...   |
  128 | |         methods
  129 | |     }
      | |_____^ cannot specialize default item `methods`
      |
      = note: to specialize, `methods` in the parent `impl` must be marked `default`
  
  error[E0520]: `am_await` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/pyasync.rs:145:5
      |
  138 |   impl<'p, T> PyAsyncAwaitProtocolImpl for T where T: PyAsyncProtocol<'p> {}
      |   -------------------------------------------------------------------------- parent `impl` is here
  ...
  145 | /     fn am_await() -> Option<ffi::unaryfunc> {
  146 | |         py_unary_func!(
  147 | |             PyAsyncAwaitProtocol,
  148 | |             T::__await__,
  ...   |
  151 | |         )
  152 | |     }
      | |_____^ cannot specialize default item `am_await`
      |
      = note: to specialize, `am_await` in the parent `impl` must be marked `default`
  
  error[E0520]: `am_aiter` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/pyasync.rs:168:5
      |
  161 |   impl<'p, T> PyAsyncAiterProtocolImpl for T where T: PyAsyncProtocol<'p> {}
      |   -------------------------------------------------------------------------- parent `impl` is here
  ...
  168 | /     fn am_aiter() -> Option<ffi::unaryfunc> {
  169 | |         py_unary_func!(
  170 | |             PyAsyncAiterProtocol,
  171 | |             T::__aiter__,
  ...   |
  174 | |         )
  175 | |     }
      | |_____^ cannot specialize default item `am_aiter`
      |
      = note: to specialize, `am_aiter` in the parent `impl` must be marked `default`
  
  error[E0520]: `am_anext` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/pyasync.rs:224:9
      |
  184 |   impl<'p, T> PyAsyncAnextProtocolImpl for T where T: PyAsyncProtocol<'p> {}
      |   -------------------------------------------------------------------------- parent `impl` is here
  ...
  224 | /         fn am_anext() -> Option<ffi::unaryfunc> {
  225 | |             py_unary_func!(
  226 | |                 PyAsyncAnextProtocol,
  227 | |                 T::__anext__,
  ...   |
  230 | |             )
  231 | |         }
      | |_________^ cannot specialize default item `am_anext`
      |
      = note: to specialize, `am_anext` in the parent `impl` must be marked `default`
  
  error[E0520]: `tp_as_sequence` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/sequence.rs:148:5
      |
  142 |   impl<T> PySequenceProtocolImpl for T {}
      |   --------------------------------------- parent `impl` is here
  ...
  148 | /     fn tp_as_sequence() -> Option<ffi::PySequenceMethods> {
  149 | |         Some(ffi::PySequenceMethods {
  150 | |             sq_length: Self::sq_length(),
  151 | |             sq_concat: Self::sq_concat(),
  ...   |
  160 | |         })
  161 | |     }
      | |_____^ cannot specialize default item `tp_as_sequence`
      |
      = note: to specialize, `tp_as_sequence` in the parent `impl` must be marked `default`
  
  error[E0520]: `sq_length` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/sequence.rs:176:5
      |
  170 |   impl<'p, T> PySequenceLenProtocolImpl for T where T: PySequenceProtocol<'p> {}
      |   ------------------------------------------------------------------------------ parent `impl` is here
  ...
  176 | /     fn sq_length() -> Option<ffi::lenfunc> {
  177 | |         py_len_func!(PySequenceLenProtocol, T::__len__, LenResultConverter)
  178 | |     }
      | |_____^ cannot specialize default item `sq_length`
      |
      = note: to specialize, `sq_length` in the parent `impl` must be marked `default`
  
  error[E0520]: `sq_item` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/sequence.rs:193:5
      |
  187 |   impl<'p, T> PySequenceGetItemProtocolImpl for T where T: PySequenceProtocol<'p> {}
      |   ---------------------------------------------------------------------------------- parent `impl` is here
  ...
  193 | /     fn sq_item() -> Option<ffi::ssizeargfunc> {
  194 | |         py_ssizearg_func!(
  195 | |             PySequenceGetItemProtocol,
  196 | |             T::__getitem__,
  ...   |
  199 | |         )
  200 | |     }
      | |_____^ cannot specialize default item `sq_item`
      |
      = note: to specialize, `sq_item` in the parent `impl` must be marked `default`
  
  error[E0520]: `sq_ass_item` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/sequence.rs:215:5
      |
  209 |   impl<'p, T> PySequenceSetItemProtocolImpl for T where T: PySequenceProtocol<'p> {}
      |   ---------------------------------------------------------------------------------- parent `impl` is here
  ...
  215 | /     fn sq_ass_item() -> Option<ffi::ssizeobjargproc> {
  216 | |         unsafe extern "C" fn wrap<T>(
  217 | |             slf: *mut ffi::PyObject,
  218 | |             key: ffi::Py_ssize_t,
  ...   |
  248 | |         Some(wrap::<T>)
  249 | |     }
      | |_____^ cannot specialize default item `sq_ass_item`
      |
      = note: to specialize, `sq_ass_item` in the parent `impl` must be marked `default`
  
  error[E0520]: `sq_contains` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/sequence.rs:382:5
      |
  376 |   impl<'p, T> PySequenceContainsProtocolImpl for T where T: PySequenceProtocol<'p> {}
      |   ----------------------------------------------------------------------------------- parent `impl` is here
  ...
  382 | /     fn sq_contains() -> Option<ffi::objobjproc> {
  383 | |         py_binary_func!(
  384 | |             PySequenceContainsProtocol,
  385 | |             T::__contains__,
  ...   |
  389 | |         )
  390 | |     }
      | |_____^ cannot specialize default item `sq_contains`
      |
      = note: to specialize, `sq_contains` in the parent `impl` must be marked `default`
  
  error[E0520]: `sq_concat` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/sequence.rs:405:5
      |
  399 |   impl<'p, T> PySequenceConcatProtocolImpl for T where T: PySequenceProtocol<'p> {}
      |   --------------------------------------------------------------------------------- parent `impl` is here
  ...
  405 | /     fn sq_concat() -> Option<ffi::binaryfunc> {
  406 | |         py_binary_func!(
  407 | |             PySequenceConcatProtocol,
  408 | |             T::__concat__,
  ...   |
  411 | |         )
  412 | |     }
      | |_____^ cannot specialize default item `sq_concat`
      |
      = note: to specialize, `sq_concat` in the parent `impl` must be marked `default`
  
  error[E0520]: `sq_repeat` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/sequence.rs:427:5
      |
  421 |   impl<'p, T> PySequenceRepeatProtocolImpl for T where T: PySequenceProtocol<'p> {}
      |   --------------------------------------------------------------------------------- parent `impl` is here
  ...
  427 | /     fn sq_repeat() -> Option<ffi::ssizeargfunc> {
  428 | |         py_ssizearg_func!(
  429 | |             PySequenceRepeatProtocol,
  430 | |             T::__repeat__,
  ...   |
  433 | |         )
  434 | |     }
      | |_____^ cannot specialize default item `sq_repeat`
      |
      = note: to specialize, `sq_repeat` in the parent `impl` must be marked `default`
  
  error[E0520]: `sq_inplace_concat` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/sequence.rs:449:5
      |
  443 |   impl<'p, T> PySequenceInplaceConcatProtocolImpl for T where T: PySequenceProtocol<'p> {}
      |   ---------------------------------------------------------------------------------------- parent `impl` is here
  ...
  449 | /     fn sq_inplace_concat() -> Option<ffi::binaryfunc> {
  450 | |         py_binary_func!(
  451 | |             PySequenceInplaceConcatProtocol,
  452 | |             T::__inplace_concat__,
  ...   |
  455 | |         )
  456 | |     }
      | |_____^ cannot specialize default item `sq_inplace_concat`
      |
      = note: to specialize, `sq_inplace_concat` in the parent `impl` must be marked `default`
  
  error[E0520]: `sq_inplace_repeat` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/sequence.rs:471:5
      |
  465 |   impl<'p, T> PySequenceInplaceRepeatProtocolImpl for T where T: PySequenceProtocol<'p> {}
      |   ---------------------------------------------------------------------------------------- parent `impl` is here
  ...
  471 | /     fn sq_inplace_repeat() -> Option<ffi::ssizeargfunc> {
  472 | |         py_ssizearg_func!(
  473 | |             PySequenceInplaceRepeatProtocol,
  474 | |             T::__inplace_repeat__,
  ...   |
  477 | |         )
  478 | |     }
      | |_____^ cannot specialize default item `sq_inplace_repeat`
      |
      = note: to specialize, `sq_inplace_repeat` in the parent `impl` must be marked `default`
  
  error[E0520]: `del_item` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/sequence.rs:289:9
      |
  283 |       impl<'p, T> DelItem for T where T: PySequenceProtocol<'p> {}
      |       ------------------------------------------------------------ parent `impl` is here
  ...
  289 | /         fn del_item() -> Option<ffi::ssizeobjargproc> {
  290 | |             unsafe extern "C" fn wrap<T>(
  291 | |                 slf: *mut ffi::PyObject,
  292 | |                 key: ffi::Py_ssize_t,
  ...   |
  319 | |             Some(wrap::<T>)
  320 | |         }
      | |_________^ cannot specialize default item `del_item`
      |
      = note: to specialize, `del_item` in the parent `impl` must be marked `default`
  
  error[E0520]: `del_set_item` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/sequence.rs:335:9
      |
  329 |       impl<'p, T> DelSetItem for T where T: PySequenceProtocol<'p> {}
      |       --------------------------------------------------------------- parent `impl` is here
  ...
  335 | /         fn del_set_item() -> Option<ffi::ssizeobjargproc> {
  336 | |             unsafe extern "C" fn wrap<T>(
  337 | |                 slf: *mut ffi::PyObject,
  338 | |                 key: ffi::Py_ssize_t,
  ...   |
  365 | |             Some(wrap::<T>)
  366 | |         }
      | |_________^ cannot specialize default item `del_set_item`
      |
      = note: to specialize, `del_set_item` in the parent `impl` must be marked `default`
  
  error[E0520]: `with_borrowed_ptr` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/conversion.rs:117:5
      |
  111 |   impl<T> ToBorrowedObject for T where T: ToPyObject {}
      |   ----------------------------------------------------- parent `impl` is here
  ...
  117 | /     fn with_borrowed_ptr<F, R>(&self, _py: Python, f: F) -> R
  118 | |     where
  119 | |         F: FnOnce(*mut ffi::PyObject) -> R,
  120 | |     {
  121 | |         f(self.as_ptr())
  122 | |     }
      | |_____^ cannot specialize default item `with_borrowed_ptr`
      |
      = note: to specialize, `with_borrowed_ptr` in the parent `impl` must be marked `default`
  
  error[E0520]: `as_ref_dispatch` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/instance.rs:369:5
      |
  366 |   impl<T: PyTypeInfo> AsPyRefDispatch<T> for Py<T> {}
      |   --------------------------------------------------- parent `impl` is here
  ...
  369 | /     fn as_ref_dispatch(&self, _py: Python) -> &T {
  370 | |         unsafe { &*(self as *const instance::Py<T> as *const T) }
  371 | |     }
      | |_____^ cannot specialize default item `as_ref_dispatch`
      |
      = note: to specialize, `as_ref_dispatch` in the parent `impl` must be marked `default`
  
  error[E0520]: `as_mut_dispatch` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/instance.rs:372:5
      |
  366 |   impl<T: PyTypeInfo> AsPyRefDispatch<T> for Py<T> {}
      |   --------------------------------------------------- parent `impl` is here
  ...
  372 | /     fn as_mut_dispatch(&mut self, _py: Python) -> &mut T {
  373 | |         unsafe { &mut *(self as *mut _ as *mut T) }
  374 | |     }
      | |_____^ cannot specialize default item `as_mut_dispatch`
      |
      = note: to specialize, `as_mut_dispatch` in the parent `impl` must be marked `default`
  
  error[E0520]: `to_managed_py_ref` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/instance.rs:576:5
      |
  570 |   impl<T: ToPyObject + ?Sized> ManagedPyRefDispatch for T {}
      |   ---------------------------------------------------------- parent `impl` is here
  ...
  576 | /     fn to_managed_py_ref<'p>(&self, py: Python<'p>) -> ManagedPyRef<'p, Self> {
  577 | |         ManagedPyRef {
  578 | |             data: self.as_ptr(),
  579 | |             data_type: PhantomData,
  580 | |             _py: py,
  581 | |         }
  582 | |     }
      | |_____^ cannot specialize default item `to_managed_py_ref`
      |
      = note: to specialize, `to_managed_py_ref` in the parent `impl` must be marked `default`
  
  error[E0520]: `drop_impl` specializes an item from a parent `impl`, but that item is not marked `default`
     --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/instance.rs:585:5
      |
  570 | impl<T: ToPyObject + ?Sized> ManagedPyRefDispatch for T {}
      | ---------------------------------------------------------- parent `impl` is here
  ...
  585 |     fn drop_impl(_: &mut ManagedPyRef<T>) {}
      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot specialize default item `drop_impl`
      |
      = note: to specialize, `drop_impl` in the parent `impl` must be marked `default`
  
  error: aborting due to 89 previous errors
  
  For more information about this error, try `rustc --explain E0520`.
  error: could not compile `pyo3`
  
  Caused by:
    process didn't exit successfully: `rustc --crate-name pyo3 --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no --cfg 'feature="default"' --cfg 'feature="extension-module"' -C metadata=2b02d3cc6934fdd6 -C extra-filename=-2b02d3cc6934fdd6 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern inventory=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libinventory-701eefaf91ecce0c.rmeta --extern libc=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/liblibc-9e1e5be5fbec308b.rmeta --extern mashup=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libmashup-a1fe0a2bd5505ba2.rmeta --extern num_traits=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libnum_traits-b9cd4cd2c6156acf.rmeta --extern pyo3cls=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libpyo3cls-98daaa7fb14b4973.so --extern spin=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libspin-638b2ded4481154c.rmeta --cap-lints allow --cfg Py_3_5 --cfg Py_3_6 --cfg Py_3_7 --cfg Py_3_8 --cfg Py_3_9 --cfg Py_3 --cfg 'py_sys_config="WITH_THREAD"'` (exit code: 1)
  error: cargo failed with code: 101
  
  ----------------------------------------
  ERROR: Failed building wheel for celery-exporter
  Running setup.py clean for celery-exporter
Failed to build celery-exporter
Installing collected packages: click, prometheus-client, celery-exporter
    Running setup.py install for celery-exporter ... error
    ERROR: Command errored out with exit status 1:
     command: /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-48lrbb0c/celery-exporter/setup.py'"'"'; __file__='"'"'/tmp/pip-install-48lrbb0c/celery-exporter/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-qgkknkdc/install-record.txt --single-version-externally-managed --user --prefix= --compile --install-headers /home/user/.local/include/python3.9/celery-exporter
         cwd: /tmp/pip-install-48lrbb0c/celery-exporter/
    Complete output (1512 lines):
    running install
    running build
    running build_py
    creating build
    creating build/lib.linux-x86_64-3.9
    creating build/lib.linux-x86_64-3.9/celery_exporter
    copying celery_exporter/monitor.py -> build/lib.linux-x86_64-3.9/celery_exporter
    copying celery_exporter/__main__.py -> build/lib.linux-x86_64-3.9/celery_exporter
    copying celery_exporter/metrics.py -> build/lib.linux-x86_64-3.9/celery_exporter
    copying celery_exporter/utils.py -> build/lib.linux-x86_64-3.9/celery_exporter
    copying celery_exporter/__init__.py -> build/lib.linux-x86_64-3.9/celery_exporter
    copying celery_exporter/core.py -> build/lib.linux-x86_64-3.9/celery_exporter
    running build_ext
    running build_rust
    cargo rustc --lib --manifest-path Cargo.toml --features pyo3/extension-module --release --verbose -- --crate-type cdylib
       Compiling proc-macro2 v0.4.30
       Compiling proc-macro2 v1.0.24
       Compiling unicode-xid v0.1.0
       Compiling unicode-xid v0.2.1
       Compiling syn v1.0.60
       Compiling memchr v2.3.4
       Compiling proc-macro-hack-impl v0.4.2
       Compiling syn v0.15.44
         Running `rustc --crate-name build_script_build /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/proc-macro2-0.4.30/build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="proc-macro"' -C metadata=bc746ed6ac1291cb -C extra-filename=-bc746ed6ac1291cb --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/proc-macro2-bc746ed6ac1291cb -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
         Running `rustc --crate-name build_script_build --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/proc-macro2-1.0.24/build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="proc-macro"' -C metadata=70b9ba8e0873bfca -C extra-filename=-70b9ba8e0873bfca --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/proc-macro2-70b9ba8e0873bfca -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
         Running `rustc --crate-name unicode_xid /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/unicode-xid-0.1.0/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' -C metadata=5f6f0613524b3651 -C extra-filename=-5f6f0613524b3651 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
         Running `rustc --crate-name unicode_xid /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/unicode-xid-0.2.1/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' -C metadata=222f0e750869ec41 -C extra-filename=-222f0e750869ec41 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
         Running `rustc --crate-name build_script_build --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/syn-1.0.60/build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="clone-impls"' --cfg 'feature="default"' --cfg 'feature="derive"' --cfg 'feature="full"' --cfg 'feature="parsing"' --cfg 'feature="printing"' --cfg 'feature="proc-macro"' --cfg 'feature="quote"' -C metadata=93a041d8813e8d95 -C extra-filename=-93a041d8813e8d95 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/syn-93a041d8813e8d95 -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
         Running `rustc --crate-name build_script_build /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/memchr-2.3.4/build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="std"' --cfg 'feature="use_std"' -C metadata=d3c835bf5eabb0a7 -C extra-filename=-d3c835bf5eabb0a7 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/memchr-d3c835bf5eabb0a7 -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
         Running `rustc --crate-name proc_macro_hack_impl /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/proc-macro-hack-impl-0.4.2/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type proc-macro --emit=dep-info,link -C prefer-dynamic -C embed-bitcode=no -C debug-assertions=off -C metadata=035a5290e2676023 -C extra-filename=-035a5290e2676023 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro --cap-lints allow`
         Running `rustc --crate-name build_script_build /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/syn-0.15.44/build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="clone-impls"' --cfg 'feature="default"' --cfg 'feature="derive"' --cfg 'feature="extra-traits"' --cfg 'feature="full"' --cfg 'feature="parsing"' --cfg 'feature="printing"' --cfg 'feature="proc-macro"' --cfg 'feature="quote"' -C metadata=665f6690189572d3 -C extra-filename=-665f6690189572d3 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/syn-665f6690189572d3 -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
       Compiling once_cell v1.5.2
         Running `rustc --crate-name once_cell --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/once_cell-1.5.2/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="alloc"' --cfg 'feature="default"' --cfg 'feature="std"' -C metadata=a14ccf1b28fa585e -C extra-filename=-a14ccf1b28fa585e --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
       Compiling regex-syntax v0.6.22
         Running `rustc --crate-name regex_syntax /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/regex-syntax-0.6.22/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="unicode"' --cfg 'feature="unicode-age"' --cfg 'feature="unicode-bool"' --cfg 'feature="unicode-case"' --cfg 'feature="unicode-gencat"' --cfg 'feature="unicode-perl"' --cfg 'feature="unicode-script"' --cfg 'feature="unicode-segment"' -C metadata=529e8e64405e9a1c -C extra-filename=-529e8e64405e9a1c --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
       Compiling autocfg v1.0.1
         Running `rustc --crate-name autocfg /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/autocfg-1.0.1/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off -C metadata=eaf3a4b21f4512fc -C extra-filename=-eaf3a4b21f4512fc --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
       Compiling inventory v0.1.10
         Running `rustc --crate-name build_script_build --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/inventory-0.1.10/build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off -C metadata=e5e69b3c9fdc979f -C extra-filename=-e5e69b3c9fdc979f --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/inventory-e5e69b3c9fdc979f -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
       Compiling libc v0.2.85
         Running `rustc --crate-name build_script_build /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/libc-0.2.85/build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="std"' -C metadata=5404c481b3a75226 -C extra-filename=-5404c481b3a75226 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/libc-5404c481b3a75226 -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
       Compiling version_check v0.1.5
         Running `rustc --crate-name version_check /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/version_check-0.1.5/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off -C metadata=0d09839629235ade -C extra-filename=-0d09839629235ade --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
       Compiling hashbrown v0.5.0
         Running `rustc --crate-name hashbrown --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/hashbrown-0.5.0/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no --cfg 'feature="default"' -C metadata=0ae6d34bb12bf8ea -C extra-filename=-0ae6d34bb12bf8ea --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
       Compiling spin v0.5.2
         Running `rustc --crate-name spin /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/spin-0.5.2/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no -C metadata=638b2ded4481154c -C extra-filename=-638b2ded4481154c --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow`
       Compiling thread_local v1.1.3
         Running `rustc --crate-name thread_local --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/thread_local-1.1.3/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off -C metadata=e60ec9865252cfb1 -C extra-filename=-e60ec9865252cfb1 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern once_cell=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libonce_cell-a14ccf1b28fa585e.rmeta --cap-lints allow`
         Running `/tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/memchr-d3c835bf5eabb0a7/build-script-build`
         Running `/tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/syn-665f6690189572d3/build-script-build`
         Running `/tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/syn-93a041d8813e8d95/build-script-build`
         Running `/tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/proc-macro2-70b9ba8e0873bfca/build-script-build`
         Running `/tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/proc-macro2-bc746ed6ac1291cb/build-script-build`
       Compiling proc-macro-hack v0.4.2
         Running `rustc --crate-name proc_macro_hack /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/proc-macro-hack-0.4.2/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off -C metadata=187068e14d5baf40 -C extra-filename=-187068e14d5baf40 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro_hack_impl=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro_hack_impl-035a5290e2676023.so --cap-lints allow`
         Running `rustc --crate-name proc_macro_hack /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/proc-macro-hack-0.4.2/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no -C metadata=d2d214166bb2d48c -C extra-filename=-d2d214166bb2d48c --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro_hack_impl=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro_hack_impl-035a5290e2676023.so --cap-lints allow`
         Running `rustc --crate-name memchr /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/memchr-2.3.4/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="std"' --cfg 'feature="use_std"' -C metadata=396ffb27b4729a17 -C extra-filename=-396ffb27b4729a17 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow --cfg memchr_runtime_simd --cfg memchr_runtime_sse2 --cfg memchr_runtime_sse42 --cfg memchr_runtime_avx`
         Running `/tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/inventory-e5e69b3c9fdc979f/build-script-build`
         Running `rustc --crate-name proc_macro2 --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/proc-macro2-1.0.24/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="proc-macro"' -C metadata=3d30b1cf012cba61 -C extra-filename=-3d30b1cf012cba61 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern unicode_xid=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libunicode_xid-222f0e750869ec41.rmeta --cap-lints allow --cfg lexerror_display --cfg hygiene --cfg use_proc_macro --cfg wrap_proc_macro --cfg proc_macro_span`
         Running `/tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/libc-5404c481b3a75226/build-script-build`
       Compiling num-traits v0.2.14
         Running `rustc --crate-name build_script_build /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/num-traits-0.2.14/build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="std"' -C metadata=91b8cf90a5e47c8f -C extra-filename=-91b8cf90a5e47c8f --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/num-traits-91b8cf90a5e47c8f -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern autocfg=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libautocfg-eaf3a4b21f4512fc.rlib --cap-lints allow`
       Compiling lru v0.1.17
         Running `rustc --crate-name lru /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/lru-0.1.17/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no -C metadata=f9e1586075937229 -C extra-filename=-f9e1586075937229 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern hashbrown=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libhashbrown-0ae6d34bb12bf8ea.rmeta --cap-lints allow`
         Running `rustc --crate-name proc_macro2 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/proc-macro2-0.4.30/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="proc-macro"' -C metadata=c15da2d35fd6b882 -C extra-filename=-c15da2d35fd6b882 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern unicode_xid=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libunicode_xid-5f6f0613524b3651.rmeta --cap-lints allow --cfg u128 --cfg use_proc_macro --cfg wrap_proc_macro --cfg proc_macro_span`
         Running `rustc --crate-name libc /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/libc-0.2.85/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no --cfg 'feature="default"' --cfg 'feature="std"' -C metadata=9e1e5be5fbec308b -C extra-filename=-9e1e5be5fbec308b --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow --cfg freebsd11 --cfg libc_priv_mod_use --cfg libc_union --cfg libc_const_size_of --cfg libc_align --cfg libc_core_cvoid --cfg libc_packedN --cfg libc_cfg_target_vendor`
       Compiling aho-corasick v0.7.15
         Running `rustc --crate-name aho_corasick /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/aho-corasick-0.7.15/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="std"' -C metadata=1b8dbda8e0b45746 -C extra-filename=-1b8dbda8e0b45746 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern memchr=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libmemchr-396ffb27b4729a17.rmeta --cap-lints allow`
         Running `/tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/num-traits-91b8cf90a5e47c8f/build-script-build`
       Compiling quote v0.6.13
         Running `rustc --crate-name quote /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/quote-0.6.13/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="proc-macro"' -C metadata=2210637c5717f8df -C extra-filename=-2210637c5717f8df --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro2=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro2-c15da2d35fd6b882.rmeta --cap-lints allow`
       Compiling quote v1.0.8
         Running `rustc --crate-name quote --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/quote-1.0.8/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="proc-macro"' -C metadata=6e384319eb964c78 -C extra-filename=-6e384319eb964c78 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro2=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro2-3d30b1cf012cba61.rmeta --cap-lints allow`
         Running `rustc --crate-name syn /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/syn-0.15.44/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="clone-impls"' --cfg 'feature="default"' --cfg 'feature="derive"' --cfg 'feature="extra-traits"' --cfg 'feature="full"' --cfg 'feature="parsing"' --cfg 'feature="printing"' --cfg 'feature="proc-macro"' --cfg 'feature="quote"' -C metadata=730e1afe94ec8000 -C extra-filename=-730e1afe94ec8000 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro2=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro2-c15da2d35fd6b882.rmeta --extern quote=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libquote-2210637c5717f8df.rmeta --extern unicode_xid=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libunicode_xid-5f6f0613524b3651.rmeta --cap-lints allow --cfg syn_can_match_trailing_dollar --cfg syn_can_use_thread_id --cfg syn_can_use_associated_constants --cfg syn_can_call_macro_by_path`
       Compiling mashup-impl v0.1.12
         Running `rustc --crate-name mashup_impl /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/mashup-impl-0.1.12/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type proc-macro --emit=dep-info,link -C prefer-dynamic -C embed-bitcode=no -C debug-assertions=off -C metadata=864c3ceaee8709d5 -C extra-filename=-864c3ceaee8709d5 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro_hack=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro_hack-187068e14d5baf40.rlib --extern proc_macro2=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro2-c15da2d35fd6b882.rlib --extern proc_macro --cap-lints allow`
         Running `rustc --crate-name num_traits /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/num-traits-0.2.14/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no --cfg 'feature="default"' --cfg 'feature="std"' -C metadata=b9cd4cd2c6156acf -C extra-filename=-b9cd4cd2c6156acf --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --cap-lints allow --cfg has_i128 --cfg has_to_int_unchecked`
         Running `rustc --crate-name syn --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/syn-1.0.60/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="clone-impls"' --cfg 'feature="default"' --cfg 'feature="derive"' --cfg 'feature="full"' --cfg 'feature="parsing"' --cfg 'feature="printing"' --cfg 'feature="proc-macro"' --cfg 'feature="quote"' -C metadata=8e47350e18924cd4 -C extra-filename=-8e47350e18924cd4 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro2=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro2-3d30b1cf012cba61.rmeta --extern quote=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libquote-6e384319eb964c78.rmeta --extern unicode_xid=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libunicode_xid-222f0e750869ec41.rmeta --cap-lints allow`
       Compiling mashup v0.1.12
         Running `rustc --crate-name mashup /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/mashup-0.1.12/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no -C metadata=a1fe0a2bd5505ba2 -C extra-filename=-a1fe0a2bd5505ba2 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern mashup_impl=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libmashup_impl-864c3ceaee8709d5.so --extern proc_macro_hack=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro_hack-d2d214166bb2d48c.rmeta --cap-lints allow`
       Compiling regex v1.4.3
         Running `rustc --crate-name regex /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/regex-1.4.3/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="aho-corasick"' --cfg 'feature="default"' --cfg 'feature="memchr"' --cfg 'feature="perf"' --cfg 'feature="perf-cache"' --cfg 'feature="perf-dfa"' --cfg 'feature="perf-inline"' --cfg 'feature="perf-literal"' --cfg 'feature="std"' --cfg 'feature="thread_local"' --cfg 'feature="unicode"' --cfg 'feature="unicode-age"' --cfg 'feature="unicode-bool"' --cfg 'feature="unicode-case"' --cfg 'feature="unicode-gencat"' --cfg 'feature="unicode-perl"' --cfg 'feature="unicode-script"' --cfg 'feature="unicode-segment"' -C metadata=a0b1a75da25f17cf -C extra-filename=-a0b1a75da25f17cf --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern aho_corasick=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libaho_corasick-1b8dbda8e0b45746.rmeta --extern memchr=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libmemchr-396ffb27b4729a17.rmeta --extern regex_syntax=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libregex_syntax-529e8e64405e9a1c.rmeta --extern thread_local=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libthread_local-e60ec9865252cfb1.rmeta --cap-lints allow`
       Compiling pyo3 v0.7.0
         Running `rustc --crate-name build_script_build --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg 'feature="default"' --cfg 'feature="extension-module"' -C metadata=ab9c1ea45a3a427e -C extra-filename=-ab9c1ea45a3a427e --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/pyo3-ab9c1ea45a3a427e -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern regex=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libregex-a0b1a75da25f17cf.rlib --extern version_check=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libversion_check-0d09839629235ade.rlib --cap-lints allow`
         Running `/tmp/pip-install-48lrbb0c/celery-exporter/target/release/build/pyo3-ab9c1ea45a3a427e/build-script-build`
       Compiling pyo3-derive-backend v0.7.0
         Running `rustc --crate-name pyo3_derive_backend --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-derive-backend-0.7.0/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off -C metadata=e2484e0e1a1620aa -C extra-filename=-e2484e0e1a1620aa --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro2=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro2-c15da2d35fd6b882.rmeta --extern quote=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libquote-2210637c5717f8df.rmeta --extern syn=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libsyn-730e1afe94ec8000.rmeta --cap-lints allow`
       Compiling ctor v0.1.19
       Compiling inventory-impl v0.1.10
       Compiling ghost v0.1.2
         Running `rustc --crate-name ctor --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/ctor-0.1.19/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type proc-macro --emit=dep-info,link -C prefer-dynamic -C embed-bitcode=no -C debug-assertions=off -C metadata=fb6b9cf2e2199235 -C extra-filename=-fb6b9cf2e2199235 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern quote=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libquote-6e384319eb964c78.rlib --extern syn=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libsyn-8e47350e18924cd4.rlib --extern proc_macro --cap-lints allow`
         Running `rustc --crate-name inventory_impl --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/inventory-impl-0.1.10/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type proc-macro --emit=dep-info,link -C prefer-dynamic -C embed-bitcode=no -C debug-assertions=off -C metadata=6254cb54bb9272e6 -C extra-filename=-6254cb54bb9272e6 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro2=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro2-3d30b1cf012cba61.rlib --extern quote=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libquote-6e384319eb964c78.rlib --extern syn=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libsyn-8e47350e18924cd4.rlib --extern proc_macro --cap-lints allow`
         Running `rustc --crate-name ghost --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/ghost-0.1.2/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type proc-macro --emit=dep-info,link -C prefer-dynamic -C embed-bitcode=no -C debug-assertions=off -C metadata=61cd961599adf9d8 -C extra-filename=-61cd961599adf9d8 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro2=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro2-3d30b1cf012cba61.rlib --extern quote=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libquote-6e384319eb964c78.rlib --extern syn=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libsyn-8e47350e18924cd4.rlib --extern proc_macro --cap-lints allow`
         Running `rustc --crate-name inventory --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/inventory-0.1.10/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no -C metadata=701eefaf91ecce0c -C extra-filename=-701eefaf91ecce0c --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern ctor=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libctor-fb6b9cf2e2199235.so --extern ghost=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libghost-61cd961599adf9d8.so --extern inventory_impl=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libinventory_impl-6254cb54bb9272e6.so --cap-lints allow`
       Compiling pyo3cls v0.7.0
         Running `rustc --crate-name pyo3cls --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3cls-0.7.0/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type proc-macro --emit=dep-info,link -C prefer-dynamic -C embed-bitcode=no -C debug-assertions=off -C metadata=98daaa7fb14b4973 -C extra-filename=-98daaa7fb14b4973 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern proc_macro2=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libproc_macro2-c15da2d35fd6b882.rlib --extern pyo3_derive_backend=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libpyo3_derive_backend-e2484e0e1a1620aa.rlib --extern quote=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libquote-2210637c5717f8df.rlib --extern syn=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libsyn-730e1afe94ec8000.rlib --extern proc_macro --cap-lints allow`
         Running `rustc --crate-name pyo3 --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no --cfg 'feature="default"' --cfg 'feature="extension-module"' -C metadata=2b02d3cc6934fdd6 -C extra-filename=-2b02d3cc6934fdd6 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern inventory=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libinventory-701eefaf91ecce0c.rmeta --extern libc=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/liblibc-9e1e5be5fbec308b.rmeta --extern mashup=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libmashup-a1fe0a2bd5505ba2.rmeta --extern num_traits=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libnum_traits-b9cd4cd2c6156acf.rmeta --extern pyo3cls=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libpyo3cls-98daaa7fb14b4973.so --extern spin=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libspin-638b2ded4481154c.rmeta --cap-lints allow --cfg Py_3_5 --cfg Py_3_6 --cfg Py_3_7 --cfg Py_3_8 --cfg Py_3_9 --cfg Py_3 --cfg 'py_sys_config="WITH_THREAD"'`
    error[E0520]: `methods` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:170:5
        |
    164 |   impl<T> PyObjectProtocolImpl for T {}
        |   ------------------------------------- parent `impl` is here
    ...
    170 | /     fn methods() -> Vec<PyMethodDef> {
    171 | |         let mut methods = Vec::new();
    172 | |
    173 | |         if let Some(def) = <Self as FormatProtocolImpl>::__format__() {
    ...   |
    182 | |         methods
    183 | |     }
        | |_____^ cannot specialize default item `methods`
        |
        = note: to specialize, `methods` in the parent `impl` must be marked `default`
    
    error[E0520]: `tp_as_object` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:184:5
        |
    164 |   impl<T> PyObjectProtocolImpl for T {}
        |   ------------------------------------- parent `impl` is here
    ...
    184 | /     fn tp_as_object(type_object: &mut ffi::PyTypeObject) {
    185 | |         type_object.tp_str = Self::tp_str();
    186 | |         type_object.tp_repr = Self::tp_repr();
    187 | |         type_object.tp_hash = Self::tp_hash();
    ...   |
    190 | |         type_object.tp_setattro = tp_setattro_impl::tp_setattro::<Self>();
    191 | |     }
        | |_____^ cannot specialize default item `tp_as_object`
        |
        = note: to specialize, `tp_as_object` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_bool_fn` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:192:5
        |
    164 |   impl<T> PyObjectProtocolImpl for T {}
        |   ------------------------------------- parent `impl` is here
    ...
    192 | /     fn nb_bool_fn() -> Option<ffi::inquiry> {
    193 | |         Self::nb_bool()
    194 | |     }
        | |_____^ cannot specialize default item `nb_bool_fn`
        |
        = note: to specialize, `nb_bool_fn` in the parent `impl` must be marked `default`
    
    error[E0520]: `tp_getattro` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:209:5
        |
    203 |   impl<'p, T> GetAttrProtocolImpl for T where T: PyObjectProtocol<'p> {}
        |   ---------------------------------------------------------------------- parent `impl` is here
    ...
    209 | /     fn tp_getattro() -> Option<ffi::binaryfunc> {
    210 | |         py_binary_func!(
    211 | |             PyObjectGetAttrProtocol,
    212 | |             T::__getattr__,
    ...   |
    215 | |         )
    216 | |     }
        | |_____^ cannot specialize default item `tp_getattro`
        |
        = note: to specialize, `tp_getattro` in the parent `impl` must be marked `default`
    
    error[E0520]: `tp_str` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:313:5
        |
    308 |   impl<'p, T> StrProtocolImpl for T where T: PyObjectProtocol<'p> {}
        |   ------------------------------------------------------------------ parent `impl` is here
    ...
    313 | /     fn tp_str() -> Option<ffi::unaryfunc> {
    314 | |         py_unary_func!(
    315 | |             PyObjectStrProtocol,
    316 | |             T::__str__,
    ...   |
    319 | |         )
    320 | |     }
        | |_____^ cannot specialize default item `tp_str`
        |
        = note: to specialize, `tp_str` in the parent `impl` must be marked `default`
    
    error[E0520]: `tp_repr` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:333:5
        |
    328 |   impl<'p, T> ReprProtocolImpl for T where T: PyObjectProtocol<'p> {}
        |   ------------------------------------------------------------------- parent `impl` is here
    ...
    333 | /     fn tp_repr() -> Option<ffi::unaryfunc> {
    334 | |         py_unary_func!(
    335 | |             PyObjectReprProtocol,
    336 | |             T::__repr__,
    ...   |
    339 | |         )
    340 | |     }
        | |_____^ cannot specialize default item `tp_repr`
        |
        = note: to specialize, `tp_repr` in the parent `impl` must be marked `default`
    
    error[E0520]: `tp_hash` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:377:5
        |
    372 |   impl<'p, T> HashProtocolImpl for T where T: PyObjectProtocol<'p> {}
        |   ------------------------------------------------------------------- parent `impl` is here
    ...
    377 | /     fn tp_hash() -> Option<ffi::hashfunc> {
    378 | |         py_unary_func!(
    379 | |             PyObjectHashProtocol,
    380 | |             T::__hash__,
    ...   |
    384 | |         )
    385 | |     }
        | |_____^ cannot specialize default item `tp_hash`
        |
        = note: to specialize, `tp_hash` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_bool` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:398:5
        |
    393 |   impl<'p, T> BoolProtocolImpl for T where T: PyObjectProtocol<'p> {}
        |   ------------------------------------------------------------------- parent `impl` is here
    ...
    398 | /     fn nb_bool() -> Option<ffi::inquiry> {
    399 | |         py_unary_func!(
    400 | |             PyObjectBoolProtocol,
    401 | |             T::__bool__,
    ...   |
    405 | |         )
    406 | |     }
        | |_____^ cannot specialize default item `nb_bool`
        |
        = note: to specialize, `nb_bool` in the parent `impl` must be marked `default`
    
    error[E0520]: `tp_richcompare` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:419:5
        |
    414 |   impl<'p, T> RichcmpProtocolImpl for T where T: PyObjectProtocol<'p> {}
        |   ---------------------------------------------------------------------- parent `impl` is here
    ...
    419 | /     fn tp_richcompare() -> Option<ffi::richcmpfunc> {
    420 | |         unsafe extern "C" fn wrap<T>(
    421 | |             slf: *mut ffi::PyObject,
    422 | |             arg: *mut ffi::PyObject,
    ...   |
    448 | |         Some(wrap::<T>)
    449 | |     }
        | |_____^ cannot specialize default item `tp_richcompare`
        |
        = note: to specialize, `tp_richcompare` in the parent `impl` must be marked `default`
    
    error[E0520]: `set_attr` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:257:9
        |
    251 |       impl<'p, T: PyObjectProtocol<'p>> SetAttr for T {}
        |       -------------------------------------------------- parent `impl` is here
    ...
    257 | /         fn set_attr() -> Option<ffi::setattrofunc> {
    258 | |             py_func_set!(PyObjectSetAttrProtocol, T, __setattr__)
    259 | |         }
        | |_________^ cannot specialize default item `set_attr`
        |
        = note: to specialize, `set_attr` in the parent `impl` must be marked `default`
    
    error[E0520]: `del_attr` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:274:9
        |
    268 |       impl<'p, T> DelAttr for T where T: PyObjectProtocol<'p> {}
        |       ---------------------------------------------------------- parent `impl` is here
    ...
    274 | /         fn del_attr() -> Option<ffi::setattrofunc> {
    275 | |             py_func_del!(PyObjectDelAttrProtocol, T, __delattr__)
    276 | |         }
        | |_________^ cannot specialize default item `del_attr`
        |
        = note: to specialize, `del_attr` in the parent `impl` must be marked `default`
    
    error[E0520]: `set_del_attr` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/basic.rs:291:9
        |
    285 |       impl<'p, T> SetDelAttr for T where T: PyObjectProtocol<'p> {}
        |       ------------------------------------------------------------- parent `impl` is here
    ...
    291 | /         fn set_del_attr() -> Option<ffi::setattrofunc> {
    292 | |             py_func_set_del!(
    293 | |                 PyObjectSetAttrProtocol,
    294 | |                 PyObjectDelAttrProtocol,
    ...   |
    298 | |             )
    299 | |         }
        | |_________^ cannot specialize default item `set_del_attr`
        |
        = note: to specialize, `set_del_attr` in the parent `impl` must be marked `default`
    
    error[E0520]: `tp_as_buffer` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/buffer.rs:57:5
       |
    49 |   impl<T> PyBufferProtocolImpl for T {}
       |   ------------------------------------- parent `impl` is here
    ...
    57 | /     fn tp_as_buffer() -> Option<ffi::PyBufferProcs> {
    58 | |         Some(ffi::PyBufferProcs {
    59 | |             bf_getbuffer: Self::cb_bf_getbuffer(),
    60 | |             bf_releasebuffer: None,
    61 | |             ..ffi::PyBufferProcs_INIT
    62 | |         })
    63 | |     }
       | |_____^ cannot specialize default item `tp_as_buffer`
       |
       = note: to specialize, `tp_as_buffer` in the parent `impl` must be marked `default`
    
    error[E0520]: `cb_bf_getbuffer` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/buffer.rs:79:5
       |
    72 |   impl<'p, T> PyBufferGetBufferProtocolImpl for T where T: PyBufferProtocol<'p> {}
       |   -------------------------------------------------------------------------------- parent `impl` is here
    ...
    79 | /     fn cb_bf_getbuffer() -> Option<ffi::getbufferproc> {
    80 | |         unsafe extern "C" fn wrap<T>(
    81 | |             slf: *mut ffi::PyObject,
    82 | |             arg1: *mut ffi::Py_buffer,
    ...  |
    95 | |         Some(wrap::<T>)
    96 | |     }
       | |_____^ cannot specialize default item `cb_bf_getbuffer`
       |
       = note: to specialize, `cb_bf_getbuffer` in the parent `impl` must be marked `default`
    
    error[E0520]: `methods` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/context.rs:61:5
       |
    54 |   impl<T> PyContextProtocolImpl for T {}
       |   -------------------------------------- parent `impl` is here
    ...
    61 | /     fn methods() -> Vec<PyMethodDef> {
    62 | |         let mut methods = Vec::new();
    63 | |
    64 | |         if let Some(def) = <Self as PyContextEnterProtocolImpl>::__enter__() {
    ...  |
    71 | |         methods
    72 | |     }
       | |_____^ cannot specialize default item `methods`
       |
       = note: to specialize, `methods` in the parent `impl` must be marked `default`
    
    error[E0520]: `tp_descr_get` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/descr.rs:83:5
       |
    77 |   impl<'p, T> PyDescrGetProtocolImpl for T where T: PyDescrProtocol<'p> {}
       |   ------------------------------------------------------------------------ parent `impl` is here
    ...
    83 | /     fn tp_descr_get() -> Option<ffi::descrgetfunc> {
    84 | |         py_ternary_func!(
    85 | |             PyDescrGetProtocol,
    86 | |             T::__get__,
    ...  |
    89 | |         )
    90 | |     }
       | |_____^ cannot specialize default item `tp_descr_get`
       |
       = note: to specialize, `tp_descr_get` in the parent `impl` must be marked `default`
    
    error[E0520]: `tp_descr_set` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/descr.rs:103:5
        |
    98  |   impl<'p, T> PyDescrSetProtocolImpl for T where T: PyDescrProtocol<'p> {}
        |   ------------------------------------------------------------------------ parent `impl` is here
    ...
    103 | /     fn tp_descr_set() -> Option<ffi::descrsetfunc> {
    104 | |         py_ternary_func!(
    105 | |             PyDescrSetProtocol,
    106 | |             T::__set__,
    ...   |
    110 | |         )
    111 | |     }
        | |_____^ cannot specialize default item `tp_descr_set`
        |
        = note: to specialize, `tp_descr_set` in the parent `impl` must be marked `default`
    
    error[E0520]: `methods` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/descr.rs:142:5
        |
    136 |   impl<T> PyDescrProtocolImpl for T {}
        |   ------------------------------------ parent `impl` is here
    ...
    142 | /     fn methods() -> Vec<PyMethodDef> {
    143 | |         Vec::new()
    144 | |     }
        | |_____^ cannot specialize default item `methods`
        |
        = note: to specialize, `methods` in the parent `impl` must be marked `default`
    
    error[E0520]: `tp_as_descr` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/descr.rs:145:5
        |
    136 |   impl<T> PyDescrProtocolImpl for T {}
        |   ------------------------------------ parent `impl` is here
    ...
    145 | /     fn tp_as_descr(type_object: &mut ffi::PyTypeObject) {
    146 | |         type_object.tp_descr_get = Self::tp_descr_get();
    147 | |         type_object.tp_descr_set = Self::tp_descr_set();
    148 | |     }
        | |_____^ cannot specialize default item `tp_as_descr`
        |
        = note: to specialize, `tp_as_descr` in the parent `impl` must be marked `default`
    
    error[E0520]: `update_type_object` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/gc.rs:41:5
       |
    35 |   impl<'p, T> PyGCProtocolImpl for T {}
       |   ------------------------------------- parent `impl` is here
    ...
    41 | /     fn update_type_object(type_object: &mut ffi::PyTypeObject) {
    42 | |         type_object.tp_traverse = Self::tp_traverse();
    43 | |         type_object.tp_clear = Self::tp_clear();
    44 | |     }
       | |_____^ cannot specialize default item `update_type_object`
       |
       = note: to specialize, `update_type_object` in the parent `impl` must be marked `default`
    
    error[E0520]: `tp_traverse` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/gc.rs:85:5
        |
    77  |   impl<'p, T> PyGCTraverseProtocolImpl for T where T: PyGCProtocol<'p> {}
        |   ----------------------------------------------------------------------- parent `impl` is here
    ...
    85  | /     fn tp_traverse() -> Option<ffi::traverseproc> {
    86  | |         unsafe extern "C" fn tp_traverse<T>(
    87  | |             slf: *mut ffi::PyObject,
    88  | |             visit: ffi::visitproc,
    ...   |
    109 | |         Some(tp_traverse::<T>)
    110 | |     }
        | |_____^ cannot specialize default item `tp_traverse`
        |
        = note: to specialize, `tp_traverse` in the parent `impl` must be marked `default`
    
    error[E0520]: `tp_clear` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/gc.rs:126:5
        |
    119 |   impl<'p, T> PyGCClearProtocolImpl for T where T: PyGCProtocol<'p> {}
        |   -------------------------------------------------------------------- parent `impl` is here
    ...
    126 | /     fn tp_clear() -> Option<ffi::inquiry> {
    127 | |         unsafe extern "C" fn tp_clear<T>(slf: *mut ffi::PyObject) -> c_int
    128 | |         where
    129 | |             T: for<'p> PyGCClearProtocol<'p>,
    ...   |
    138 | |         Some(tp_clear::<T>)
    139 | |     }
        | |_____^ cannot specialize default item `tp_clear`
        |
        = note: to specialize, `tp_clear` in the parent `impl` must be marked `default`
    
    error[E0520]: `tp_as_iter` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/iter.rs:58:5
       |
    51 |   impl<T> PyIterProtocolImpl for T {}
       |   ----------------------------------- parent `impl` is here
    ...
    58 | /     fn tp_as_iter(typeob: &mut ffi::PyTypeObject) {
    59 | |         typeob.tp_iter = Self::tp_iter();
    60 | |         typeob.tp_iternext = Self::tp_iternext();
    61 | |     }
       | |_____^ cannot specialize default item `tp_as_iter`
       |
       = note: to specialize, `tp_as_iter` in the parent `impl` must be marked `default`
    
    error[E0520]: `tp_iter` specializes an item from a parent `impl`, but that item is not marked `default`
      --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/iter.rs:77:5
       |
    70 |   impl<'p, T> PyIterIterProtocolImpl for T where T: PyIterProtocol<'p> {}
       |   ----------------------------------------------------------------------- parent `impl` is here
    ...
    77 | /     fn tp_iter() -> Option<ffi::getiterfunc> {
    78 | |         py_unary_pyref_func!(
    79 | |             PyIterIterProtocol,
    80 | |             T::__iter__,
    ...  |
    83 | |         )
    84 | |     }
       | |_____^ cannot specialize default item `tp_iter`
       |
       = note: to specialize, `tp_iter` in the parent `impl` must be marked `default`
    
    error[E0520]: `tp_iternext` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/iter.rs:100:5
        |
    93  |   impl<'p, T> PyIterNextProtocolImpl for T where T: PyIterProtocol<'p> {}
        |   ----------------------------------------------------------------------- parent `impl` is here
    ...
    100 | /     fn tp_iternext() -> Option<ffi::iternextfunc> {
    101 | |         py_unary_pyref_func!(
    102 | |             PyIterNextProtocol,
    103 | |             T::__next__,
    ...   |
    106 | |         )
    107 | |     }
        | |_____^ cannot specialize default item `tp_iternext`
        |
        = note: to specialize, `tp_iternext` in the parent `impl` must be marked `default`
    
    error[E0520]: `tp_as_mapping` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/mapping.rs:124:5
        |
    117 |   impl<T> PyMappingProtocolImpl for T {}
        |   -------------------------------------- parent `impl` is here
    ...
    124 | /     fn tp_as_mapping() -> Option<ffi::PyMappingMethods> {
    125 | |         let f = if let Some(df) = Self::mp_del_subscript() {
    126 | |             Some(df)
    127 | |         } else {
    ...   |
    135 | |         })
    136 | |     }
        | |_____^ cannot specialize default item `tp_as_mapping`
        |
        = note: to specialize, `tp_as_mapping` in the parent `impl` must be marked `default`
    
    error[E0520]: `methods` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/mapping.rs:139:5
        |
    117 |   impl<T> PyMappingProtocolImpl for T {}
        |   -------------------------------------- parent `impl` is here
    ...
    139 | /     fn methods() -> Vec<PyMethodDef> {
    140 | |         let mut methods = Vec::new();
    141 | |
    142 | |         if let Some(def) = <Self as PyMappingIterProtocolImpl>::__iter__() {
    ...   |
    152 | |         methods
    153 | |     }
        | |_____^ cannot specialize default item `methods`
        |
        = note: to specialize, `methods` in the parent `impl` must be marked `default`
    
    error[E0520]: `mp_length` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/mapping.rs:169:5
        |
    162 |   impl<'p, T> PyMappingLenProtocolImpl for T where T: PyMappingProtocol<'p> {}
        |   ---------------------------------------------------------------------------- parent `impl` is here
    ...
    169 | /     fn mp_length() -> Option<ffi::lenfunc> {
    170 | |         py_len_func!(PyMappingLenProtocol, T::__len__, LenResultConverter)
    171 | |     }
        | |_____^ cannot specialize default item `mp_length`
        |
        = note: to specialize, `mp_length` in the parent `impl` must be marked `default`
    
    error[E0520]: `mp_subscript` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/mapping.rs:187:5
        |
    180 |   impl<'p, T> PyMappingGetItemProtocolImpl for T where T: PyMappingProtocol<'p> {}
        |   -------------------------------------------------------------------------------- parent `impl` is here
    ...
    187 | /     fn mp_subscript() -> Option<ffi::binaryfunc> {
    188 | |         py_binary_func!(
    189 | |             PyMappingGetItemProtocol,
    190 | |             T::__getitem__,
    ...   |
    193 | |         )
    194 | |     }
        | |_____^ cannot specialize default item `mp_subscript`
        |
        = note: to specialize, `mp_subscript` in the parent `impl` must be marked `default`
    
    error[E0520]: `mp_ass_subscript` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/mapping.rs:210:5
        |
    203 |   impl<'p, T> PyMappingSetItemProtocolImpl for T where T: PyMappingProtocol<'p> {}
        |   -------------------------------------------------------------------------------- parent `impl` is here
    ...
    210 | /     fn mp_ass_subscript() -> Option<ffi::objobjargproc> {
    211 | |         py_func_set!(PyMappingSetItemProtocol, T, __setitem__)
    212 | |     }
        | |_____^ cannot specialize default item `mp_ass_subscript`
        |
        = note: to specialize, `mp_ass_subscript` in the parent `impl` must be marked `default`
    
    error[E0520]: `det_set_dispatch` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/mapping.rs:238:5
        |
    232 |   impl<T> DelSetItemDispatch for T where T: Sized + for<'p> PyMappingDelItemProtocol<'p> {}
        |   ----------------------------------------------------------------------------------------- parent `impl` is here
    ...
    238 | /     fn det_set_dispatch() -> Option<ffi::objobjargproc> {
    239 | |         py_func_set_del!(
    240 | |             PyMappingSetItemProtocol,
    241 | |             PyMappingDelItemProtocol,
    ...   |
    245 | |         )
    246 | |     }
        | |_____^ cannot specialize default item `det_set_dispatch`
        |
        = note: to specialize, `det_set_dispatch` in the parent `impl` must be marked `default`
    
    error[E0520]: `mp_del_subscript` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/mapping.rs:253:5
        |
    223 |   impl<'p, T> DeplItemDipatch for T where T: PyMappingProtocol<'p> {}
        |   ------------------------------------------------------------------- parent `impl` is here
    ...
    253 | /     fn mp_del_subscript() -> Option<ffi::objobjargproc> {
    254 | |         <T as DelSetItemDispatch>::det_set_dispatch()
    255 | |     }
        | |_____^ cannot specialize default item `mp_del_subscript`
        |
        = note: to specialize, `mp_del_subscript` in the parent `impl` must be marked `default`
    
    error[E0520]: `tp_as_number` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:647:5
        |
    641 |   impl<'p, T> PyNumberProtocolImpl for T {}
        |   ----------------------------------------- parent `impl` is here
    ...
    647 | /     fn tp_as_number() -> Option<ffi::PyNumberMethods> {
    648 | |         Some(ffi::PyNumberMethods {
    649 | |             nb_add: Self::nb_add(),
    650 | |             nb_subtract: Self::nb_subtract(),
    ...   |
    685 | |         })
    686 | |     }
        | |_____^ cannot specialize default item `tp_as_number`
        |
        = note: to specialize, `tp_as_number` in the parent `impl` must be marked `default`
    
    error[E0520]: `methods` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:689:5
        |
    641 |   impl<'p, T> PyNumberProtocolImpl for T {}
        |   ----------------------------------------- parent `impl` is here
    ...
    689 | /     fn methods() -> Vec<PyMethodDef> {
    690 | |         let mut methods = Vec::new();
    691 | |
    692 | |         if let Some(def) = <Self as PyNumberRAddProtocolImpl>::__radd__() {
    ...   |
    741 | |         methods
    742 | |     }
        | |_____^ cannot specialize default item `methods`
        |
        = note: to specialize, `methods` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_add` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:757:5
        |
    751 |   impl<'p, T> PyNumberAddProtocolImpl for T where T: PyNumberProtocol<'p> {}
        |   -------------------------------------------------------------------------- parent `impl` is here
    ...
    757 | /     fn nb_add() -> Option<ffi::binaryfunc> {
    758 | |         py_binary_num_func!(
    759 | |             PyNumberAddProtocol,
    760 | |             T::__add__,
    ...   |
    763 | |         )
    764 | |     }
        | |_____^ cannot specialize default item `nb_add`
        |
        = note: to specialize, `nb_add` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_subtract` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:779:5
        |
    773 |   impl<'p, T> PyNumberSubProtocolImpl for T where T: PyNumberProtocol<'p> {}
        |   -------------------------------------------------------------------------- parent `impl` is here
    ...
    779 | /     fn nb_subtract() -> Option<ffi::binaryfunc> {
    780 | |         py_binary_num_func!(
    781 | |             PyNumberSubProtocol,
    782 | |             T::__sub__,
    ...   |
    785 | |         )
    786 | |     }
        | |_____^ cannot specialize default item `nb_subtract`
        |
        = note: to specialize, `nb_subtract` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_multiply` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:801:5
        |
    795 |   impl<'p, T> PyNumberMulProtocolImpl for T where T: PyNumberProtocol<'p> {}
        |   -------------------------------------------------------------------------- parent `impl` is here
    ...
    801 | /     fn nb_multiply() -> Option<ffi::binaryfunc> {
    802 | |         py_binary_num_func!(
    803 | |             PyNumberMulProtocol,
    804 | |             T::__mul__,
    ...   |
    807 | |         )
    808 | |     }
        | |_____^ cannot specialize default item `nb_multiply`
        |
        = note: to specialize, `nb_multiply` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_matrix_multiply` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:823:5
        |
    817 |   impl<'p, T> PyNumberMatmulProtocolImpl for T where T: PyNumberProtocol<'p> {}
        |   ----------------------------------------------------------------------------- parent `impl` is here
    ...
    823 | /     fn nb_matrix_multiply() -> Option<ffi::binaryfunc> {
    824 | |         py_binary_num_func!(
    825 | |             PyNumberMatmulProtocol,
    826 | |             T::__matmul__,
    ...   |
    829 | |         )
    830 | |     }
        | |_____^ cannot specialize default item `nb_matrix_multiply`
        |
        = note: to specialize, `nb_matrix_multiply` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_true_divide` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:845:5
        |
    839 |   impl<'p, T> PyNumberTruedivProtocolImpl for T where T: PyNumberProtocol<'p> {}
        |   ------------------------------------------------------------------------------ parent `impl` is here
    ...
    845 | /     fn nb_true_divide() -> Option<ffi::binaryfunc> {
    846 | |         py_binary_num_func!(
    847 | |             PyNumberTruedivProtocol,
    848 | |             T::__truediv__,
    ...   |
    851 | |         )
    852 | |     }
        | |_____^ cannot specialize default item `nb_true_divide`
        |
        = note: to specialize, `nb_true_divide` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_floor_divide` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:867:5
        |
    861 |   impl<'p, T> PyNumberFloordivProtocolImpl for T where T: PyNumberProtocol<'p> {}
        |   ------------------------------------------------------------------------------- parent `impl` is here
    ...
    867 | /     fn nb_floor_divide() -> Option<ffi::binaryfunc> {
    868 | |         py_binary_num_func!(
    869 | |             PyNumberFloordivProtocol,
    870 | |             T::__floordiv__,
    ...   |
    873 | |         )
    874 | |     }
        | |_____^ cannot specialize default item `nb_floor_divide`
        |
        = note: to specialize, `nb_floor_divide` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_remainder` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:889:5
        |
    883 |   impl<'p, T> PyNumberModProtocolImpl for T where T: PyNumberProtocol<'p> {}
        |   -------------------------------------------------------------------------- parent `impl` is here
    ...
    889 | /     fn nb_remainder() -> Option<ffi::binaryfunc> {
    890 | |         py_binary_num_func!(
    891 | |             PyNumberModProtocol,
    892 | |             T::__mod__,
    ...   |
    895 | |         )
    896 | |     }
        | |_____^ cannot specialize default item `nb_remainder`
        |
        = note: to specialize, `nb_remainder` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_divmod` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:911:5
        |
    905 |   impl<'p, T> PyNumberDivmodProtocolImpl for T where T: PyNumberProtocol<'p> {}
        |   ----------------------------------------------------------------------------- parent `impl` is here
    ...
    911 | /     fn nb_divmod() -> Option<ffi::binaryfunc> {
    912 | |         py_binary_num_func!(
    913 | |             PyNumberDivmodProtocol,
    914 | |             T::__divmod__,
    ...   |
    917 | |         )
    918 | |     }
        | |_____^ cannot specialize default item `nb_divmod`
        |
        = note: to specialize, `nb_divmod` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_power` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:933:5
        |
    927 |   impl<'p, T> PyNumberPowProtocolImpl for T where T: PyNumberProtocol<'p> {}
        |   -------------------------------------------------------------------------- parent `impl` is here
    ...
    933 | /     fn nb_power() -> Option<ffi::ternaryfunc> {
    934 | |         py_ternary_num_func!(
    935 | |             PyNumberPowProtocol,
    936 | |             T::__pow__,
    ...   |
    939 | |         )
    940 | |     }
        | |_____^ cannot specialize default item `nb_power`
        |
        = note: to specialize, `nb_power` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_lshift` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:955:5
        |
    949 |   impl<'p, T> PyNumberLShiftProtocolImpl for T where T: PyNumberProtocol<'p> {}
        |   ----------------------------------------------------------------------------- parent `impl` is here
    ...
    955 | /     fn nb_lshift() -> Option<ffi::binaryfunc> {
    956 | |         py_binary_num_func!(
    957 | |             PyNumberLShiftProtocol,
    958 | |             T::__lshift__,
    ...   |
    961 | |         )
    962 | |     }
        | |_____^ cannot specialize default item `nb_lshift`
        |
        = note: to specialize, `nb_lshift` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_rshift` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:977:5
        |
    971 |   impl<'p, T> PyNumberRShiftProtocolImpl for T where T: PyNumberProtocol<'p> {}
        |   ----------------------------------------------------------------------------- parent `impl` is here
    ...
    977 | /     fn nb_rshift() -> Option<ffi::binaryfunc> {
    978 | |         py_binary_num_func!(
    979 | |             PyNumberRShiftProtocol,
    980 | |             T::__rshift__,
    ...   |
    983 | |         )
    984 | |     }
        | |_____^ cannot specialize default item `nb_rshift`
        |
        = note: to specialize, `nb_rshift` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_and` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:999:5
         |
    993  |   impl<'p, T> PyNumberAndProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   -------------------------------------------------------------------------- parent `impl` is here
    ...
    999  | /     fn nb_and() -> Option<ffi::binaryfunc> {
    1000 | |         py_binary_num_func!(
    1001 | |             PyNumberAndProtocol,
    1002 | |             T::__and__,
    ...    |
    1005 | |         )
    1006 | |     }
         | |_____^ cannot specialize default item `nb_and`
         |
         = note: to specialize, `nb_and` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_xor` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1021:5
         |
    1015 |   impl<'p, T> PyNumberXorProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   -------------------------------------------------------------------------- parent `impl` is here
    ...
    1021 | /     fn nb_xor() -> Option<ffi::binaryfunc> {
    1022 | |         py_binary_num_func!(
    1023 | |             PyNumberXorProtocol,
    1024 | |             T::__xor__,
    ...    |
    1027 | |         )
    1028 | |     }
         | |_____^ cannot specialize default item `nb_xor`
         |
         = note: to specialize, `nb_xor` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_or` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1043:5
         |
    1037 |   impl<'p, T> PyNumberOrProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   ------------------------------------------------------------------------- parent `impl` is here
    ...
    1043 | /     fn nb_or() -> Option<ffi::binaryfunc> {
    1044 | |         py_binary_num_func!(
    1045 | |             PyNumberOrProtocol,
    1046 | |             T::__or__,
    ...    |
    1049 | |         )
    1050 | |     }
         | |_____^ cannot specialize default item `nb_or`
         |
         = note: to specialize, `nb_or` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_inplace_add` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1065:5
         |
    1059 |   impl<'p, T> PyNumberIAddProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   --------------------------------------------------------------------------- parent `impl` is here
    ...
    1065 | /     fn nb_inplace_add() -> Option<ffi::binaryfunc> {
    1066 | |         py_binary_self_func!(PyNumberIAddProtocol, T::__iadd__)
    1067 | |     }
         | |_____^ cannot specialize default item `nb_inplace_add`
         |
         = note: to specialize, `nb_inplace_add` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_inplace_subtract` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1082:5
         |
    1076 |   impl<'p, T> PyNumberISubProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   --------------------------------------------------------------------------- parent `impl` is here
    ...
    1082 | /     fn nb_inplace_subtract() -> Option<ffi::binaryfunc> {
    1083 | |         py_binary_self_func!(PyNumberISubProtocol, T::__isub__)
    1084 | |     }
         | |_____^ cannot specialize default item `nb_inplace_subtract`
         |
         = note: to specialize, `nb_inplace_subtract` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_inplace_multiply` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1099:5
         |
    1093 |   impl<'p, T> PyNumberIMulProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   --------------------------------------------------------------------------- parent `impl` is here
    ...
    1099 | /     fn nb_inplace_multiply() -> Option<ffi::binaryfunc> {
    1100 | |         py_binary_self_func!(PyNumberIMulProtocol, T::__imul__)
    1101 | |     }
         | |_____^ cannot specialize default item `nb_inplace_multiply`
         |
         = note: to specialize, `nb_inplace_multiply` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_inplace_matrix_multiply` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1116:5
         |
    1110 |   impl<'p, T> PyNumberIMatmulProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   ------------------------------------------------------------------------------ parent `impl` is here
    ...
    1116 | /     fn nb_inplace_matrix_multiply() -> Option<ffi::binaryfunc> {
    1117 | |         py_binary_self_func!(PyNumberIMatmulProtocol, T::__imatmul__)
    1118 | |     }
         | |_____^ cannot specialize default item `nb_inplace_matrix_multiply`
         |
         = note: to specialize, `nb_inplace_matrix_multiply` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_inplace_true_divide` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1133:5
         |
    1127 |   impl<'p, T> PyNumberITruedivProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   ------------------------------------------------------------------------------- parent `impl` is here
    ...
    1133 | /     fn nb_inplace_true_divide() -> Option<ffi::binaryfunc> {
    1134 | |         py_binary_self_func!(PyNumberITruedivProtocol, T::__itruediv__)
    1135 | |     }
         | |_____^ cannot specialize default item `nb_inplace_true_divide`
         |
         = note: to specialize, `nb_inplace_true_divide` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_inplace_floor_divide` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1150:5
         |
    1144 |   impl<'p, T> PyNumberIFloordivProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   -------------------------------------------------------------------------------- parent `impl` is here
    ...
    1150 | /     fn nb_inplace_floor_divide() -> Option<ffi::binaryfunc> {
    1151 | |         py_binary_self_func!(PyNumberIFloordivProtocol, T::__ifloordiv__)
    1152 | |     }
         | |_____^ cannot specialize default item `nb_inplace_floor_divide`
         |
         = note: to specialize, `nb_inplace_floor_divide` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_inplace_remainder` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1167:5
         |
    1161 |   impl<'p, T> PyNumberIModProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   --------------------------------------------------------------------------- parent `impl` is here
    ...
    1167 | /     fn nb_inplace_remainder() -> Option<ffi::binaryfunc> {
    1168 | |         py_binary_self_func!(PyNumberIModProtocol, T::__imod__)
    1169 | |     }
         | |_____^ cannot specialize default item `nb_inplace_remainder`
         |
         = note: to specialize, `nb_inplace_remainder` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_inplace_power` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1184:5
         |
    1178 |   impl<'p, T> PyNumberIPowProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   --------------------------------------------------------------------------- parent `impl` is here
    ...
    1184 | /     fn nb_inplace_power() -> Option<ffi::ternaryfunc> {
    1185 | |         py_ternary_self_func!(PyNumberIPowProtocol, T::__ipow__)
    1186 | |     }
         | |_____^ cannot specialize default item `nb_inplace_power`
         |
         = note: to specialize, `nb_inplace_power` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_inplace_lshift` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1201:5
         |
    1195 |   impl<'p, T> PyNumberILShiftProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   ------------------------------------------------------------------------------ parent `impl` is here
    ...
    1201 | /     fn nb_inplace_lshift() -> Option<ffi::binaryfunc> {
    1202 | |         py_binary_self_func!(PyNumberILShiftProtocol, T::__ilshift__)
    1203 | |     }
         | |_____^ cannot specialize default item `nb_inplace_lshift`
         |
         = note: to specialize, `nb_inplace_lshift` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_inplace_rshift` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1218:5
         |
    1212 |   impl<'p, T> PyNumberIRShiftProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   ------------------------------------------------------------------------------ parent `impl` is here
    ...
    1218 | /     fn nb_inplace_rshift() -> Option<ffi::binaryfunc> {
    1219 | |         py_binary_self_func!(PyNumberIRShiftProtocol, T::__irshift__)
    1220 | |     }
         | |_____^ cannot specialize default item `nb_inplace_rshift`
         |
         = note: to specialize, `nb_inplace_rshift` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_inplace_and` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1235:5
         |
    1229 |   impl<'p, T> PyNumberIAndProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   --------------------------------------------------------------------------- parent `impl` is here
    ...
    1235 | /     fn nb_inplace_and() -> Option<ffi::binaryfunc> {
    1236 | |         py_binary_self_func!(PyNumberIAndProtocol, T::__iand__)
    1237 | |     }
         | |_____^ cannot specialize default item `nb_inplace_and`
         |
         = note: to specialize, `nb_inplace_and` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_inplace_xor` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1252:5
         |
    1246 |   impl<'p, T> PyNumberIXorProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   --------------------------------------------------------------------------- parent `impl` is here
    ...
    1252 | /     fn nb_inplace_xor() -> Option<ffi::binaryfunc> {
    1253 | |         py_binary_self_func!(PyNumberIXorProtocol, T::__ixor__)
    1254 | |     }
         | |_____^ cannot specialize default item `nb_inplace_xor`
         |
         = note: to specialize, `nb_inplace_xor` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_inplace_or` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1269:5
         |
    1263 |   impl<'p, T> PyNumberIOrProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   -------------------------------------------------------------------------- parent `impl` is here
    ...
    1269 | /     fn nb_inplace_or() -> Option<ffi::binaryfunc> {
    1270 | |         py_binary_self_func!(PyNumberIOrProtocol, T::__ior__)
    1271 | |     }
         | |_____^ cannot specialize default item `nb_inplace_or`
         |
         = note: to specialize, `nb_inplace_or` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_negative` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1399:5
         |
    1392 |   impl<'p, T> PyNumberNegProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   -------------------------------------------------------------------------- parent `impl` is here
    ...
    1399 | /     fn nb_negative() -> Option<ffi::unaryfunc> {
    1400 | |         py_unary_func!(
    1401 | |             PyNumberNegProtocol,
    1402 | |             T::__neg__,
    ...    |
    1405 | |         )
    1406 | |     }
         | |_____^ cannot specialize default item `nb_negative`
         |
         = note: to specialize, `nb_negative` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_positive` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1421:5
         |
    1415 |   impl<'p, T> PyNumberPosProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   -------------------------------------------------------------------------- parent `impl` is here
    ...
    1421 | /     fn nb_positive() -> Option<ffi::unaryfunc> {
    1422 | |         py_unary_func!(
    1423 | |             PyNumberPosProtocol,
    1424 | |             T::__pos__,
    ...    |
    1427 | |         )
    1428 | |     }
         | |_____^ cannot specialize default item `nb_positive`
         |
         = note: to specialize, `nb_positive` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_absolute` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1443:5
         |
    1437 |   impl<'p, T> PyNumberAbsProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   -------------------------------------------------------------------------- parent `impl` is here
    ...
    1443 | /     fn nb_absolute() -> Option<ffi::unaryfunc> {
    1444 | |         py_unary_func!(
    1445 | |             PyNumberAbsProtocol,
    1446 | |             T::__abs__,
    ...    |
    1449 | |         )
    1450 | |     }
         | |_____^ cannot specialize default item `nb_absolute`
         |
         = note: to specialize, `nb_absolute` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_invert` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1465:5
         |
    1459 |   impl<'p, T> PyNumberInvertProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   ----------------------------------------------------------------------------- parent `impl` is here
    ...
    1465 | /     fn nb_invert() -> Option<ffi::unaryfunc> {
    1466 | |         py_unary_func!(
    1467 | |             PyNumberInvertProtocol,
    1468 | |             T::__invert__,
    ...    |
    1471 | |         )
    1472 | |     }
         | |_____^ cannot specialize default item `nb_invert`
         |
         = note: to specialize, `nb_invert` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_int` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1487:5
         |
    1481 |   impl<'p, T> PyNumberIntProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   -------------------------------------------------------------------------- parent `impl` is here
    ...
    1487 | /     fn nb_int() -> Option<ffi::unaryfunc> {
    1488 | |         py_unary_func!(
    1489 | |             PyNumberIntProtocol,
    1490 | |             T::__int__,
    ...    |
    1493 | |         )
    1494 | |     }
         | |_____^ cannot specialize default item `nb_int`
         |
         = note: to specialize, `nb_int` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_float` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1509:5
         |
    1503 |   impl<'p, T> PyNumberFloatProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   ---------------------------------------------------------------------------- parent `impl` is here
    ...
    1509 | /     fn nb_float() -> Option<ffi::unaryfunc> {
    1510 | |         py_unary_func!(
    1511 | |             PyNumberFloatProtocol,
    1512 | |             T::__float__,
    ...    |
    1515 | |         )
    1516 | |     }
         | |_____^ cannot specialize default item `nb_float`
         |
         = note: to specialize, `nb_float` in the parent `impl` must be marked `default`
    
    error[E0520]: `nb_index` specializes an item from a parent `impl`, but that item is not marked `default`
        --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/number.rs:1531:5
         |
    1525 |   impl<'p, T> PyNumberIndexProtocolImpl for T where T: PyNumberProtocol<'p> {}
         |   ---------------------------------------------------------------------------- parent `impl` is here
    ...
    1531 | /     fn nb_index() -> Option<ffi::unaryfunc> {
    1532 | |         py_unary_func!(
    1533 | |             PyNumberIndexProtocol,
    1534 | |             T::__index__,
    ...    |
    1537 | |         )
    1538 | |     }
         | |_____^ cannot specialize default item `nb_index`
         |
         = note: to specialize, `nb_index` in the parent `impl` must be marked `default`
    
    error[E0520]: `tp_as_async` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/pyasync.rs:109:5
        |
    102 |   impl<T> PyAsyncProtocolImpl for T {}
        |   ------------------------------------ parent `impl` is here
    ...
    109 | /     fn tp_as_async() -> Option<ffi::PyAsyncMethods> {
    110 | |         Some(ffi::PyAsyncMethods {
    111 | |             am_await: Self::am_await(),
    112 | |             am_aiter: Self::am_aiter(),
    113 | |             am_anext: Self::am_anext(),
    114 | |         })
    115 | |     }
        | |_____^ cannot specialize default item `tp_as_async`
        |
        = note: to specialize, `tp_as_async` in the parent `impl` must be marked `default`
    
    error[E0520]: `methods` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/pyasync.rs:118:5
        |
    102 |   impl<T> PyAsyncProtocolImpl for T {}
        |   ------------------------------------ parent `impl` is here
    ...
    118 | /     fn methods() -> Vec<PyMethodDef> {
    119 | |         let mut methods = Vec::new();
    120 | |
    121 | |         if let Some(def) = <Self as PyAsyncAenterProtocolImpl>::__aenter__() {
    ...   |
    128 | |         methods
    129 | |     }
        | |_____^ cannot specialize default item `methods`
        |
        = note: to specialize, `methods` in the parent `impl` must be marked `default`
    
    error[E0520]: `am_await` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/pyasync.rs:145:5
        |
    138 |   impl<'p, T> PyAsyncAwaitProtocolImpl for T where T: PyAsyncProtocol<'p> {}
        |   -------------------------------------------------------------------------- parent `impl` is here
    ...
    145 | /     fn am_await() -> Option<ffi::unaryfunc> {
    146 | |         py_unary_func!(
    147 | |             PyAsyncAwaitProtocol,
    148 | |             T::__await__,
    ...   |
    151 | |         )
    152 | |     }
        | |_____^ cannot specialize default item `am_await`
        |
        = note: to specialize, `am_await` in the parent `impl` must be marked `default`
    
    error[E0520]: `am_aiter` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/pyasync.rs:168:5
        |
    161 |   impl<'p, T> PyAsyncAiterProtocolImpl for T where T: PyAsyncProtocol<'p> {}
        |   -------------------------------------------------------------------------- parent `impl` is here
    ...
    168 | /     fn am_aiter() -> Option<ffi::unaryfunc> {
    169 | |         py_unary_func!(
    170 | |             PyAsyncAiterProtocol,
    171 | |             T::__aiter__,
    ...   |
    174 | |         )
    175 | |     }
        | |_____^ cannot specialize default item `am_aiter`
        |
        = note: to specialize, `am_aiter` in the parent `impl` must be marked `default`
    
    error[E0520]: `am_anext` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/pyasync.rs:224:9
        |
    184 |   impl<'p, T> PyAsyncAnextProtocolImpl for T where T: PyAsyncProtocol<'p> {}
        |   -------------------------------------------------------------------------- parent `impl` is here
    ...
    224 | /         fn am_anext() -> Option<ffi::unaryfunc> {
    225 | |             py_unary_func!(
    226 | |                 PyAsyncAnextProtocol,
    227 | |                 T::__anext__,
    ...   |
    230 | |             )
    231 | |         }
        | |_________^ cannot specialize default item `am_anext`
        |
        = note: to specialize, `am_anext` in the parent `impl` must be marked `default`
    
    error[E0520]: `tp_as_sequence` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/sequence.rs:148:5
        |
    142 |   impl<T> PySequenceProtocolImpl for T {}
        |   --------------------------------------- parent `impl` is here
    ...
    148 | /     fn tp_as_sequence() -> Option<ffi::PySequenceMethods> {
    149 | |         Some(ffi::PySequenceMethods {
    150 | |             sq_length: Self::sq_length(),
    151 | |             sq_concat: Self::sq_concat(),
    ...   |
    160 | |         })
    161 | |     }
        | |_____^ cannot specialize default item `tp_as_sequence`
        |
        = note: to specialize, `tp_as_sequence` in the parent `impl` must be marked `default`
    
    error[E0520]: `sq_length` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/sequence.rs:176:5
        |
    170 |   impl<'p, T> PySequenceLenProtocolImpl for T where T: PySequenceProtocol<'p> {}
        |   ------------------------------------------------------------------------------ parent `impl` is here
    ...
    176 | /     fn sq_length() -> Option<ffi::lenfunc> {
    177 | |         py_len_func!(PySequenceLenProtocol, T::__len__, LenResultConverter)
    178 | |     }
        | |_____^ cannot specialize default item `sq_length`
        |
        = note: to specialize, `sq_length` in the parent `impl` must be marked `default`
    
    error[E0520]: `sq_item` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/sequence.rs:193:5
        |
    187 |   impl<'p, T> PySequenceGetItemProtocolImpl for T where T: PySequenceProtocol<'p> {}
        |   ---------------------------------------------------------------------------------- parent `impl` is here
    ...
    193 | /     fn sq_item() -> Option<ffi::ssizeargfunc> {
    194 | |         py_ssizearg_func!(
    195 | |             PySequenceGetItemProtocol,
    196 | |             T::__getitem__,
    ...   |
    199 | |         )
    200 | |     }
        | |_____^ cannot specialize default item `sq_item`
        |
        = note: to specialize, `sq_item` in the parent `impl` must be marked `default`
    
    error[E0520]: `sq_ass_item` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/sequence.rs:215:5
        |
    209 |   impl<'p, T> PySequenceSetItemProtocolImpl for T where T: PySequenceProtocol<'p> {}
        |   ---------------------------------------------------------------------------------- parent `impl` is here
    ...
    215 | /     fn sq_ass_item() -> Option<ffi::ssizeobjargproc> {
    216 | |         unsafe extern "C" fn wrap<T>(
    217 | |             slf: *mut ffi::PyObject,
    218 | |             key: ffi::Py_ssize_t,
    ...   |
    248 | |         Some(wrap::<T>)
    249 | |     }
        | |_____^ cannot specialize default item `sq_ass_item`
        |
        = note: to specialize, `sq_ass_item` in the parent `impl` must be marked `default`
    
    error[E0520]: `sq_contains` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/sequence.rs:382:5
        |
    376 |   impl<'p, T> PySequenceContainsProtocolImpl for T where T: PySequenceProtocol<'p> {}
        |   ----------------------------------------------------------------------------------- parent `impl` is here
    ...
    382 | /     fn sq_contains() -> Option<ffi::objobjproc> {
    383 | |         py_binary_func!(
    384 | |             PySequenceContainsProtocol,
    385 | |             T::__contains__,
    ...   |
    389 | |         )
    390 | |     }
        | |_____^ cannot specialize default item `sq_contains`
        |
        = note: to specialize, `sq_contains` in the parent `impl` must be marked `default`
    
    error[E0520]: `sq_concat` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/sequence.rs:405:5
        |
    399 |   impl<'p, T> PySequenceConcatProtocolImpl for T where T: PySequenceProtocol<'p> {}
        |   --------------------------------------------------------------------------------- parent `impl` is here
    ...
    405 | /     fn sq_concat() -> Option<ffi::binaryfunc> {
    406 | |         py_binary_func!(
    407 | |             PySequenceConcatProtocol,
    408 | |             T::__concat__,
    ...   |
    411 | |         )
    412 | |     }
        | |_____^ cannot specialize default item `sq_concat`
        |
        = note: to specialize, `sq_concat` in the parent `impl` must be marked `default`
    
    error[E0520]: `sq_repeat` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/sequence.rs:427:5
        |
    421 |   impl<'p, T> PySequenceRepeatProtocolImpl for T where T: PySequenceProtocol<'p> {}
        |   --------------------------------------------------------------------------------- parent `impl` is here
    ...
    427 | /     fn sq_repeat() -> Option<ffi::ssizeargfunc> {
    428 | |         py_ssizearg_func!(
    429 | |             PySequenceRepeatProtocol,
    430 | |             T::__repeat__,
    ...   |
    433 | |         )
    434 | |     }
        | |_____^ cannot specialize default item `sq_repeat`
        |
        = note: to specialize, `sq_repeat` in the parent `impl` must be marked `default`
    
    error[E0520]: `sq_inplace_concat` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/sequence.rs:449:5
        |
    443 |   impl<'p, T> PySequenceInplaceConcatProtocolImpl for T where T: PySequenceProtocol<'p> {}
        |   ---------------------------------------------------------------------------------------- parent `impl` is here
    ...
    449 | /     fn sq_inplace_concat() -> Option<ffi::binaryfunc> {
    450 | |         py_binary_func!(
    451 | |             PySequenceInplaceConcatProtocol,
    452 | |             T::__inplace_concat__,
    ...   |
    455 | |         )
    456 | |     }
        | |_____^ cannot specialize default item `sq_inplace_concat`
        |
        = note: to specialize, `sq_inplace_concat` in the parent `impl` must be marked `default`
    
    error[E0520]: `sq_inplace_repeat` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/sequence.rs:471:5
        |
    465 |   impl<'p, T> PySequenceInplaceRepeatProtocolImpl for T where T: PySequenceProtocol<'p> {}
        |   ---------------------------------------------------------------------------------------- parent `impl` is here
    ...
    471 | /     fn sq_inplace_repeat() -> Option<ffi::ssizeargfunc> {
    472 | |         py_ssizearg_func!(
    473 | |             PySequenceInplaceRepeatProtocol,
    474 | |             T::__inplace_repeat__,
    ...   |
    477 | |         )
    478 | |     }
        | |_____^ cannot specialize default item `sq_inplace_repeat`
        |
        = note: to specialize, `sq_inplace_repeat` in the parent `impl` must be marked `default`
    
    error[E0520]: `del_item` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/sequence.rs:289:9
        |
    283 |       impl<'p, T> DelItem for T where T: PySequenceProtocol<'p> {}
        |       ------------------------------------------------------------ parent `impl` is here
    ...
    289 | /         fn del_item() -> Option<ffi::ssizeobjargproc> {
    290 | |             unsafe extern "C" fn wrap<T>(
    291 | |                 slf: *mut ffi::PyObject,
    292 | |                 key: ffi::Py_ssize_t,
    ...   |
    319 | |             Some(wrap::<T>)
    320 | |         }
        | |_________^ cannot specialize default item `del_item`
        |
        = note: to specialize, `del_item` in the parent `impl` must be marked `default`
    
    error[E0520]: `del_set_item` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/class/sequence.rs:335:9
        |
    329 |       impl<'p, T> DelSetItem for T where T: PySequenceProtocol<'p> {}
        |       --------------------------------------------------------------- parent `impl` is here
    ...
    335 | /         fn del_set_item() -> Option<ffi::ssizeobjargproc> {
    336 | |             unsafe extern "C" fn wrap<T>(
    337 | |                 slf: *mut ffi::PyObject,
    338 | |                 key: ffi::Py_ssize_t,
    ...   |
    365 | |             Some(wrap::<T>)
    366 | |         }
        | |_________^ cannot specialize default item `del_set_item`
        |
        = note: to specialize, `del_set_item` in the parent `impl` must be marked `default`
    
    error[E0520]: `with_borrowed_ptr` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/conversion.rs:117:5
        |
    111 |   impl<T> ToBorrowedObject for T where T: ToPyObject {}
        |   ----------------------------------------------------- parent `impl` is here
    ...
    117 | /     fn with_borrowed_ptr<F, R>(&self, _py: Python, f: F) -> R
    118 | |     where
    119 | |         F: FnOnce(*mut ffi::PyObject) -> R,
    120 | |     {
    121 | |         f(self.as_ptr())
    122 | |     }
        | |_____^ cannot specialize default item `with_borrowed_ptr`
        |
        = note: to specialize, `with_borrowed_ptr` in the parent `impl` must be marked `default`
    
    error[E0520]: `as_ref_dispatch` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/instance.rs:369:5
        |
    366 |   impl<T: PyTypeInfo> AsPyRefDispatch<T> for Py<T> {}
        |   --------------------------------------------------- parent `impl` is here
    ...
    369 | /     fn as_ref_dispatch(&self, _py: Python) -> &T {
    370 | |         unsafe { &*(self as *const instance::Py<T> as *const T) }
    371 | |     }
        | |_____^ cannot specialize default item `as_ref_dispatch`
        |
        = note: to specialize, `as_ref_dispatch` in the parent `impl` must be marked `default`
    
    error[E0520]: `as_mut_dispatch` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/instance.rs:372:5
        |
    366 |   impl<T: PyTypeInfo> AsPyRefDispatch<T> for Py<T> {}
        |   --------------------------------------------------- parent `impl` is here
    ...
    372 | /     fn as_mut_dispatch(&mut self, _py: Python) -> &mut T {
    373 | |         unsafe { &mut *(self as *mut _ as *mut T) }
    374 | |     }
        | |_____^ cannot specialize default item `as_mut_dispatch`
        |
        = note: to specialize, `as_mut_dispatch` in the parent `impl` must be marked `default`
    
    error[E0520]: `to_managed_py_ref` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/instance.rs:576:5
        |
    570 |   impl<T: ToPyObject + ?Sized> ManagedPyRefDispatch for T {}
        |   ---------------------------------------------------------- parent `impl` is here
    ...
    576 | /     fn to_managed_py_ref<'p>(&self, py: Python<'p>) -> ManagedPyRef<'p, Self> {
    577 | |         ManagedPyRef {
    578 | |             data: self.as_ptr(),
    579 | |             data_type: PhantomData,
    580 | |             _py: py,
    581 | |         }
    582 | |     }
        | |_____^ cannot specialize default item `to_managed_py_ref`
        |
        = note: to specialize, `to_managed_py_ref` in the parent `impl` must be marked `default`
    
    error[E0520]: `drop_impl` specializes an item from a parent `impl`, but that item is not marked `default`
       --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/instance.rs:585:5
        |
    570 | impl<T: ToPyObject + ?Sized> ManagedPyRefDispatch for T {}
        | ---------------------------------------------------------- parent `impl` is here
    ...
    585 |     fn drop_impl(_: &mut ManagedPyRef<T>) {}
        |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot specialize default item `drop_impl`
        |
        = note: to specialize, `drop_impl` in the parent `impl` must be marked `default`
    
    error: aborting due to 89 previous errors
    
    For more information about this error, try `rustc --explain E0520`.
    error: could not compile `pyo3`
    
    Caused by:
      process didn't exit successfully: `rustc --crate-name pyo3 --edition=2018 /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.7.0/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no --cfg 'feature="default"' --cfg 'feature="extension-module"' -C metadata=2b02d3cc6934fdd6 -C extra-filename=-2b02d3cc6934fdd6 --out-dir /tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps -L dependency=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps --extern inventory=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libinventory-701eefaf91ecce0c.rmeta --extern libc=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/liblibc-9e1e5be5fbec308b.rmeta --extern mashup=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libmashup-a1fe0a2bd5505ba2.rmeta --extern num_traits=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libnum_traits-b9cd4cd2c6156acf.rmeta --extern pyo3cls=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libpyo3cls-98daaa7fb14b4973.so --extern spin=/tmp/pip-install-48lrbb0c/celery-exporter/target/release/deps/libspin-638b2ded4481154c.rmeta --cap-lints allow --cfg Py_3_5 --cfg Py_3_6 --cfg Py_3_7 --cfg Py_3_8 --cfg Py_3_9 --cfg Py_3 --cfg 'py_sys_config="WITH_THREAD"'` (exit code: 1)
    error: cargo failed with code: 101
    
    ----------------------------------------
ERROR: Command errored out with exit status 1: /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-48lrbb0c/celery-exporter/setup.py'"'"'; __file__='"'"'/tmp/pip-install-48lrbb0c/celery-exporter/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-qgkknkdc/install-record.txt --single-version-externally-managed --user --prefix= --compile --install-headers /home/user/.local/include/python3.9/celery-exporter Check the logs for full command output.

SQS broker support?

Does the given library if of any use if SQS is configured to be used as broker for celery?

FUTURE OF CELERY-EXPORTER

Hi guys,

I'm sorry but I'm not working for OvalMoney anymore and since then I lost my write privileges to this repository.
I don't think OvalMoney has any interest in contributing to this project in the future.

Queue length metrics ?

Hiya,

I'm just wondering how easy/hard would it be to implement number of tasks in a queue (to detect whether celery is choking for example) ? Let me know what would be potentially needed pls and if I'd be able to pull it together in a PR as a layman. Greets

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.