Spaces Data

Minimal test - lines (41, 80)

path: .spaces[0].spaces[0].metrics.loc.cloc
old: 6.0
new: 8.0

path: .spaces[0].spaces[0].metrics.loc.sloc
old: 38.0
new: 40.0

path: .spaces[0].spaces[0].metrics.mi.mi_original
old: 75.95055590120779
new: 75.11960453212949

path: .spaces[0].spaces[0].metrics.mi.mi_visual_studio
old: 44.41552976678818
new: 43.929593293642974

path: .spaces[0].spaces[0].metrics.mi.mi_sei
old: 63.66091099685825
new: 65.52569820752097

Code

    def __init__(
        self,
        remote_no_context_takeover: bool,
        local_no_context_takeover: bool,
        remote_max_window_bits: int,
        local_max_window_bits: int,
        compress_settings: Optional[Dict[Any, Any]] = None,
    ) -> None:
        """
        Configure the Per-Message Deflate extension.

        """
        if compress_settings is None:
            compress_settings = {}

        assert remote_no_context_takeover in [False, True]
        assert local_no_context_takeover in [False, True]
        assert 8 <= remote_max_window_bits <= 15
        assert 8 <= local_max_window_bits <= 15
        assert "wbits" not in compress_settings

        self.remote_no_context_takeover = remote_no_context_takeover
        self.local_no_context_takeover = local_no_context_takeover
        self.remote_max_window_bits = remote_max_window_bits
        self.local_max_window_bits = local_max_window_bits
        self.compress_settings = compress_settings

        if not self.remote_no_context_takeover:
            self.decoder = zlib.decompressobj(wbits=-self.remote_max_window_bits)

        if not self.local_no_context_takeover:
            self.encoder = zlib.compressobj(
                wbits=-self.local_max_window_bits, **self.compress_settings
            )

        # To handle continuation frames properly, we must keep track of
        # whether that initial frame was encoded.
        self.decode_cont_data = False
        # There's no need for self.encode_cont_data because we always encode
        # outgoing frames, so it would always be True.