Skip to content

kwargs are no longer passed to logging QueueHandler in 3.12 #118868

Closed
@Kaundur

Description

@Kaundur

Bug report

Bug description:

kwargs are no longer passed to logging QueueHandler in 3.12

import logging
import logging.config
import logging.handlers
import queue


class TestQueueHandler(logging.handlers.QueueHandler):
    def __init__(self, *args, **kwargs):
        super().__init__(queue.Queue())

        print('test' in kwargs)
        # True in 3.11
        # False in 3.12


def main():
    config = {
        'version': 1,
        'handlers': {
            'default': {
                'class': TestQueueHandler,
                'test': '123'
            },
        },
        'loggers': {
            'a': {
                'handlers': ['default'],
            },
        }
    }

    logging.config.dictConfig(config)


if __name__ == '__main__':
    main()

CPython versions tested on:

3.11, 3.12

Operating systems tested on:

Linux

Linked PRs

Metadata

Metadata

Assignees

No one assigned

    Labels

    type-bugAn unexpected behavior, bug, or error

    Projects

    • Status

      Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions