======= Changes ======= Deprecation Warnings ==================== Removed in v9.0: ---------------- - Importing a PIL drawer from ``qrcode.image.styles.moduledrawers`` has been deprecated. Update your code to import directly from the ``pil`` module instead: .. code-block:: python from qrcode.image.styles.moduledrawers import SquareModuleDrawer # Old from qrcode.image.styles.moduledrawers.pil import SquareModuleDrawer # New - Calling ``QRCode.make_image`` or ``StyledPilImage`` with the arguments ``embeded_image`` or ``embeded_image_path`` have been deprecated due to typographical errors. Update your code to use the correct arguments ``embedded_image`` and ``embededd_image_path``: .. code-block:: python qr = QRCode() qr.make_image(embeded_image=..., embeded_image_path=...) # Old qr.make_image(embedded_image=..., embedded_image_path=...) # New StyledPilImage(embeded_image=..., embeded_image_path=...) # Old StyledPilImage(embedded_image=..., embedded_image_path=...) # New - The ``width`` and ``height`` attributes will be removed from the ```` tag. Instead, the ``viewBox`` attribute is now used for defining the dimensions. Additionally, all SVG elements now utilize pixel units rather than millimeters, which may cause rendering differences in browsers. Change Log ========== WIP 8.x ------- - **Added** ``GappedCircleModuleDrawer`` (PIL) to render QR code modules as non-contiguous circles. (BenwestGate in `#373`_) - **Added** ability to execute as a Python module: ``python -m qrcode --output qrcode.png "hello world"`` (stefansjs in `#400`_) - **Removed** the hardcoded 'id' argument from SVG elements. The fixed element ID caused conflicts when embedding multiple QR codes in a single document. (m000 in `#385`_) - **Fixed** typos in code that used ``embeded`` instead of ``embedded``. For backwards compatibility, the misspelled parameter names are still accepted but now emit deprecation warnings. These deprecated parameter names will be removed in v9.0. (benjnicholls in `#349`_) - **Fixed** an issue where an ``