Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Scheduled monthly dependency update for May #893

Merged
merged 96 commits into from May 20, 2022

Conversation

pyup-bot
Copy link
Collaborator

@pyup-bot pyup-bot commented May 1, 2022

Update pymdown-extensions from 7.1 to 9.4.

Changelog

9.4

- **NEW**: Highlight: Changes in order to support Pygments 2.12+. If using Pygments and a version less than 2.12 is
installed, Highlight will raise an exception.

9.3

- **NEW**: B64: Allow SVG to be encoded and inlined.
- **NEW**: PathConverter: Add option to use `file://` prefix on absolute paths.
- **FIX**: Highlight: Ensure that `extend_pygments_lang` is not case sensitive regarding language names.

9.2

- **NEW**: Drop Python 3.6 support and formally add Python 3.10 support.
- **NEW**: Highlight: Add `pygments_lang_option` to enable attaching language classes to Pygments code blocks.
- **NEW**: SuperFences: Custom fence validators and formatters can now be forced to raise an exception by raising a
`SuperFencesException`.
- **NEW**: Keys: Add `power` and `fingerprint` keys.
- **FIX**: SuperFences: Fix case where custom fence in a blockquote was not gracefully handled.
- **FIX**: Arithmatex: fix issue where if you limit the inline or block syntax to specific input types, access to
certain matched groups could cause an error.

9.1

- **NEW**: Highlight: If `linenums` is enabled globally via the `highlight` extension, and a code block specifies a line
number of zero (e.g. SuperFences), disable line numbers for that code block.
- **FIX**: Snippets: Add missing documentation for `auto_append` feature that was added in 8.2.
- **FIX**: Highlight: When `attr_list` is enabled, attributes were not properly added to Pygments code blocks in the
`table` format. (1505)

9.0

Please see [Migration Notes](https://github.com/facelessuser/pymdown-extensions/blob/main/docs/src/markdown/about/releases/9.0.md) for details on upgrading to 9.0.

- **NEW**: Arithmatex: Wrap MathJax "script" format (non-preview) with a container element just like all other
Arithmatex output formats.
- **NEW**: Arithmatex: MathJax (non-generic) form's container element now has the `arithmatex` class added just like
everywhere else.
- **NEW**: Arithmatex: Add options to override HTML element container type of inline and block math.
- **NEW**: Arithmatex: Add new formatter functions intended to replace old math fenced/inline block formatters. New
formatter functions are configurable. All others are marked as deprecated and will be removed at some future date.
- **NEW**: Emoji: Upgraded Twitter emoji database to support latest emoji. It is a known issue that Twitter has
`:man_in_santa_hat:` and `:mx_claus:` backwards -- same for `:mrs_claus:` and `:woman_in_santa_hat:`. That is on
Twitter's side, not ours.
- **NEW**: Highlight: Add support for the Pygments option `linespans`.
- **NEW**: Highlight: Add support for Pygments option `lineanchors`.
- **NEW**: Highlight: Add support for Pygments option `anchorlinenos`.
- **NEW**: Highlight: Remove `legacy_no_wrap_code` option.
- **NEW**: Add support for generating title headers pulled from the Pygments lexer for code blocks. Feature can be
enabled via the new `auto_title` option. If a specific name is not preferred, these names can be overridden via
a user defined mapping called `auto_title_map`.
- **NEW**: SuperFences: Allow setting a title, or overriding an auto title via the new `title` option in a fenced code
header.
- **NEW**: SuperFences: Allow adding ID and arbitrary `data-` attributes on Pygments code blocks. The latter requires
the `attr_list` extension to be enabled.
- **NEW**: SuperFences: Removed old deprecated option `highlight_code` which no longer did anything.
- **NEW**: SuperFences: Remove legacy code meant to help with transitioning to new custom fence function format.
- **NEW**: Tabbed: New alternate style that allows for a scrollable tabs if they overflow. Feature is experimental, see
docs for more information.
- **NEW**: Slugs: Add new configurable `slugify` function that aims to replace all other slugify methods. Deprecate
`uslugify`, `uslugify_encoded`, `uslugify_case`, `uslugify_case_encoded`, `gfm`, and `gfm_encoded`. `slugify` takes
parameters returning a function that performs the desired slug handling. `slugify` adds new options `case="fold"` for
case folding and `normalize='<normalize format here>'` (uses `NFC` by default).
- **FIX**: BetterEm: Fix some complex cases related to "smart" logic. (1413)
- **FIX**: EscapeAll: Fix issue where an escaped HTML entity may end up with incorrect slug and incorrect table of
content entry.
- **FIX**: Highlight: Fix issue that occurs when showing only nth line numbers and using `pymdownx-inline`. Lines not
showing a line number would not render with the proper leading space.

8.2

- **NEW**: Snippets: now accepts a list of base paths which will be resolved in the order they are specified.
Compatibility is present with legacy behavior, and a single string path will still be accepted.
- **NEW**: Snippets: allow for specifying certain snippets to auto-append to every file. Useful for appending
abbreviations, reference links, etc.
- **NEW**: Snippets: a snippet base path can be a full path to a file. When a base path is a full path to a file, only
that file will be included from the specified folder. This allows for targeting a one off file outside of the normal
snippet paths(s).
- **NEW**: MagicLink: add GitHub Discussions support to MagicLink. Can now use `?<num>` to link discussions. Full
discussion links will also be shortened if shortening is enabled. (1187)
- **NEW**: MagicLink: add new `normalize_issue_symbols` option to make issues, pull request, and discussion links all
render with `` instead of ``, `!`, and `?` respectively. Input syntax is still the same. Great if you want a GitHub
style look where all issue types are just rendered with ``.
- **FIX**: MagicLink: documentation will not render links with special icons added via CSS so as not to confuse users
that may think that is part of MagicLink. While possible with CSS, MagicLink provides no CSS automatically.
- **FIX**: Tabbed & Details: Fix corner case with lists. (1225)
- **FIX**: Fix issue with unescaping logic in code blocks.

8.1.1

- **FIX**: Ensure content immediately before Details content or Tabbed content gets preserved.
- **FIX**: StripHTML: Fix some corner cases related to stripping comments.

8.1

- **NEW**: Drop support for Python 3.5.
- **NEW**: Officially support Python 3.9.
- **NEW**: Tabbed titles can now have simple Markdown in them which can be parsed and rendered (like emoji, bold, etc.).
- **FIX**: Avoid parsing script tags in PathConverter and B64 extensions.

8.0.1

- **FIX**: Fix issue with `pymdownx-inline` an Pygments 2.7+.

8.0

Please see [Release Notes](./releases/8.0.md8.0) for details on upgrading to 8.0.

- **NEW**: Added SaneHeaders extension.
- **NEW**: SuperFences \& InlineHilite: gracefully handle failing custom formatters and/or validators. Users should add their own debug code to their formatter/validator if they suspect it isn't working.
- **NEW**: SuperFences: if a custom fence validator fails, try the next custom fence until all are exhausted.
- **NEW**: SuperFences: no longer allow custom options in the form `key=` (no value). Only keys with values or keys with no value and no `=` are accepted. Keys with no value will now assume the value to be the key name.
- **NEW**: SuperFences: if `attr_list` extension is enabled, fenced code that use brace attribute list style headers (` {lang id .class attr=value}`) will attach arbitrary attributes that are included in the header to the code element.
- **NEW**: SuperFences: when Pygments is disabled, options (such as `linenums`) included in fenced code headers no  longer do anything. If `attr_list` is enabled, and the brace header is used, such options will be treated as HTML attributes. JavaScript highlighter options should be defined in the brace header form with `attr_list` enabled in order to generate appropriate, compatible HTML with the chosen JavaScript highlighter.
- **NEW**: SuperFences: backwards incompatible changes where made to custom fence API. See [Release Notes](./releases/8.0.md8.0) for instructions on how to migrate to the new API. Some temporary support for most of the old format is in place, but is deprecated.
- **NEW**: SuperFences: has removed legacy code tab feature. Associated `legacy_tab_classes` option has been removed. Please use the Tabbed extension to create general purpose tabs for code blocks or other content.
- **NEW**: Highlight: add new option `language_prefix` which controls the prefix applied to language classes when Pygments is not being used.
- **NEW**: Highlight: A new option called `code_attr_on_pre` was added to the Highlight extension and controls whether language classes, and any ids, attributes, and classes that are defined in fenced code attribute list style headers, are attached to the code element or pre element. This has effect when using Pygments.
- **NEW**: Highlight: option `linenums` now defaults to `None` and accepts `None`, `True`, or `False`. `None` is disabled by default, but can be enabled per code block. `True` enables line numbers globally. `False` disables globally and cannot be enabled manually per code block.
- **NEW**: ExtraRawHTML: remove extension.
- **FIX**: Fix issues with complex emphasis combinations in BetterEm.
- **FIX**: Details: fix corner cases related to extension and lists.
- **FIX**: Tabbed: fix corner cases related to extension and lists.
- **FIX**: EscapeAll: Handle HTML entities special.
- **FIX**: SuperFences: Fix parameter unpacking bug.
Links

Update mkdocs-material from 7.0.6 to 8.2.12.

Changelog

8.2.12

* Added support for GitHub-style hash fragments for dark/light images
* Improved rendering of nested code blocks in content tabs and annotations
* Fixed 3862: Upgraded to latest Pygments and Python Markdown Extensions

mkdocs-material-8.2.11+insiders-4.13.1 (2022-04-25)

* Fixed 3839: Tags plugin breaks without icons (4.13.0 regression)

8.2.11

* Temporarily pinned Pygments to <2.12
* Temporarily pinned Python Markdown Extensions to <9.4
* Improved rendering of code annotation markers

mkdocs-material-8.2.10+insiders-4.13.0 (2022-04-24)

* Added support for tag icons

8.2.10

* Added Macedonian translations
* Updated Mermaid.js to version 9.0.1
* Switched sidebar title in mobile navigation to bold font
* Fixed color of arrows in class and state diagrams for dark mode
* Fixed 3836: Inline admonitions overlayed by code block titles

8.2.9

* Mitigate flicker on color palette switch by disabling all transitions
* Fixed search suggestions not triggered when following deep link
* Fixed incorrectly computed header height when using instant loading
* Fixed 3782: Admonition titles have extra pixels on wide screens in Firefox
* Fixed 3802: Always render table of contents container (except when hidden)

mkdocs-material-8.2.8+insiders-4.12.0 (2022-03-27)

* Added support for card grids and grid layouts
* Fixed 3685: Annotations sometimes broken when using instant loading
* Fixed 3742: Automatically add Mermaid.js when building for offline usage

8.2.8

* Bumped MkDocs version to 1.3.0 to mitigate breaking changes in Jinja
* Reverted Jinja version range limitation (added in 8.2.7)
* Improved styling of annotations and fixed borders of code blocks in tabs
* Added background color to code blocks in focused/hovered links
* Added check in tags plugin whether tags overview page exists
* Fixed 3744: Content tab indicator on wrong position when using back button

8.2.7

* Temporarily limit Jinja version range to < 3.1 due to breaking changes

8.2.6

* Fixed 3695: Deprecation warning for unescaped backslashes in templates
* Fixed 3696: Annotations not mounted in some Terraform code blocks
* Fixed 3698: Annotations not mounted in long code blocks (8.2.5 regression)

mkdocs-material-8.2.5+insiders-4.11.0 (2022-03-06)

* Added support for excluding external assets from privacy plugin

8.2.5

* Fixed 3596: Mermaid not working when headline with name 'Mermaid' present
* Fixed 3643: Reduce time to render pages with thousands of code blocks
* Fixed 3665: Missing styles for Mermaid.js flowcharts cluster labels

mkdocs-material-8.2.4+insiders-4.10.1 (2022-03-02)

* Added missing build dependencies to Dockerfile
* Fixed encoding issues in privacy plugin, now forcing UTF-8 encoding
* Fixed 3624: Scroll to active navigation item unreliable in Firefox
* Fixed 3642: Privacy plugin errors when font setting was omitted

8.2.4

* Fixed malformed Google Fonts URL when a font setting was omitted
* Fixed 3648: Fixed specificity issue with admonitions in lists
* Fixed 3653: Invalid outdated version banner URL when using instant loading

mkdocs-material-8.2.3+insiders-4.10.0 (2022-02-27)

* Added support for offline plugin (supersedes offline search support)
* Improved built-in privacy plugin to download nested JavaScript assets
* Refactored configuration of built-in privacy plugin

8.2.3

* Fixed 3578: Active element in table of contents off-by-one on large screens

8.2.2

* Added automatic removal of query parameter when search is closed
* Fixed 3599: Anchors always overriden when using navigation tracking

mkdocs-material-8.2.1+insiders-4.9.1 (2022-02-21)

* Fixed 3610: missing lxml dependency for privacy plugin
* Fixed error when charset is missing in content-type header

mkdocs-material-8.2.1+insiders-4.9.0 (2022-02-20)

* Added privacy plugin: automatic downloading of external assets

8.2.1

* Fixed module 'material.plugins' not being found (8.2.0 regression)

8.2.0

* Added native support for Mermaid.js diagrams
* Added native support for tags (with search integration)
* Added support for staying on page when switching versions

mkdocs-material-8.1.11+insiders-4.8.3 (2022-02-13)

* Fixed 3560: Mermaid diagrams don't render for file:// locations

mkdocs-material-8.1.11+insiders-4.8.2 (2022-02-10)

* Fixed 3559: Mermaid diagrams don't render inside closed details

8.1.11

* Added Portuguese (Brasilian) translations
* Updated FontAwesome to v6 (might lead to missing icons)
* Fixed 3545: Color palette toggle and search overlaying version selector

mkdocs-material-8.1.10+insiders-4.8.1 (2022-02-06)

* Fixed jump back to top on mobile when using anchor following

mkdocs-material-8.1.10+insiders-4.8.0 (2022-02-06)

* Added support for anchor following table of contents (= auto scroll)

8.1.10

* Fixed cutoff of very wide logos in the sidebar on mobile

mkdocs-material-8.1.9+insiders-4.7.2 (2022-02-02)

* Fixed 3526: Transparent sidebar title due to Safari bug
* Fixed 3528: Firefox sometimes clips text in flow chart diagrams

mkdocs-material-8.1.9+insiders-4.7.1 (2022-01-30)

* Fixed 3506: Tags index not respecting title set via front matter

8.1.9

* Added support for mkdocs.yml validation and auto-complete
* Fixed errors in Latvian translations

mkdocs-material-8.1.8+insiders-4.7.0 (2022-01-25)

* Added native support for offline search

8.1.8

* Added Latvian translations
* Updated Giscus example integration with dynamic theme change support
* Fixed 3479: Back-to-top button not hidden when using sticky navigation tabs
* Fixed 3491: Logo in header and drawer doesn't honor aspect ratio

mkdocs-material-8.1.7+insiders-4.6.1 (2022-01-16)

* Fixed 3459: Section index pages picking up wrong title

8.1.7

* Improved back-to-top button behavior - now not shown on anchor jump

mkdocs-material-8.1.6-insiders-4.6.0 (2022-01-11)

* Added support for annotations (outside of code blocks)

8.1.6

* Fixed spacing of blockquotes (8.1.5 regression)
* Fixed edge cases for rounded corners on code blocks (8.1.5 regression)
* Fixed rendering issues with code annotation line heights

8.1.5

* Improved browser support: Chrome 49+, Safari 10+, Firefox 53+, Edge 79+
* Improved rendering of inline code blocks in headlines
* Added Bahasa Malaysian translations
* Fixed 3354: MathJax formulas show vertical scrollbar

mkdocs-material-8.1.4+insiders-4.5.2 (2022-01-08)

* Fixed 3440: Content tab indicator not moving when using linking
* Fixed 3445: Content tab switch flickers/jitters when using linking

mkdocs-material-8.1.4+insiders-4.5.1 (2022-01-02)

* Added support for setting initial state of cookie consent
* Fixed 3396: Disappearing link in navigation due to Safari bug

8.1.4

* Added indicator to navigation expander icon
* Improved support for reduced motion preference
* Fixed jitter of active content tab indicator

8.1.3

* Added animation to active content tab indicator
* Fixed 3360: Highlighted lines add blank lines in copied text
* Fixed usage of subsequent index files when using section index pages

mkdocs-material-8.1.2+insiders-4.5.0 (2021-12-16)

* Added support for navigation icons

8.1.2

* Switched CSS sources to logical properties
* Added transformation of logical properties to ltr/rtl equivalents
* Fixed spacing for admonitions inside lists (8.1.1 regression)

8.1.1

* Added support for only-light and only-dark image hash fragments
* Fixed copy-to-clipboard adding blank lines when using line anchors
* Fixed code annotation directionality for right-to-left languages
* Fixed header title positioning for right-to-left languages
* Fixed admonition borders for right-to-left languages (8.0.0 regression)
* Fixed footer navigation link positioning (8.0.0 regression)
* Fixed footer navigation title breaking out of container when too long
* Fixed shrinking arrow in navigation title when too long
* Fixed 3343: Filtered stopwords appear as missing search terms
* Fixed 3346: Site unusable due to usage of :not() (Firefox 78 ESR)

mkdocs-material-8.1.0+insiders-4.4.0 (2021-12-10)

* Added support for code annotation anchor links (deep linking)
* Added new code annotation syntax modifier to strip comment
* Updated German translations for cookie consent

8.1.0

* Added basic support for code block line anchors
* Switched code annotation markers to + signs to improve usability
* Switched main site title to bold font
* Improved admonition icon positioning to align when font-size is increased
* Improved and simplified footnotes CSS
* Improved and simplified code annotation positioning
* Fixed syntax error in Russian translations

8.0.5

* Fixed 3302: Footer refactoring induced ellipsis in some browsers
* Fixed 3313: Details always rendered closed on load (8.0.4 regression)

mkdocs-material-8.0.4+insiders-4.3.0 (2021-12-05)

* Added support for custom fonts in social cards
* Fixed 3300: Announcement bar reappearing when using instant loading

8.0.4

* Improved support for deeply nested code annotations
* Improved code annotation and copy-to-clipboard interop
* Improved styling for code annotations inside admonitions
* Fixed 3274: Invalid anchor positioning when using instant loading
* Fixed 3294: Lists after code blocks without code annotations disappearing
* Fixed several positioning issues for code annotations
* Fixed JavaScript source map roots

mkdocs-material-8.0.3+insiders-4.2.0 (2021-12-02)

* Added support for dismissable announcement bar
* Added support for named placeholders in feedback widget

8.0.3

* Removed deprecated google_analytics setting (was forgotten in 8.0.0)
* Fixed syntax error in Swedish and Polish translations
* Fixed 3283: Invalid back-to-top button position with sticky navigation tabs
* Fixed 3285: Default details marker showing due to Safari bug

mkdocs-material-8.0.2+insiders-4.1.0 (2021-11-30)

* Added support for passing page title to feedback forms

8.0.2

* Fixed 3275: Code annotations always disappear on click

8.0.1

* Improved rendering of code annotation markers
* Fixed 3265: Wrong margin on nested admonitions
* Fixed wrong box-sizing for code annotations in details

8.0.0

* Added support for code annotations
* Added support for anchor tracking
* Added support for version warning
* Added copyright partial for easier override
* Removed deprecated content tabs legacy implementation
* Removed deprecated seealso admonition type
* Removed deprecated site_keywords setting (unsupported by MkDocs)
* Removed deprecated prebuilt search index support
* Removed deprecated web app manifest – use customization
* Removed extracopyright variable – use new copyright partial
* Removed Disqus integation – use customization
* Switched to :is() selectors for simple selector lists
* Switched autoprefixer from last 4 years to last 2 years
* Improved CSS overall to match modern standards
* Improved CSS variable semantics for fonts
* Improved extensibility by restructuring partials
* Improved handling of details when printing
* Improved keyboard navigation for footnotes
* Fixed 3214: Search highlighting breaks site when empty

mkdocs-material-7.3.6+insiders-3.2.3 (2021-11-20)

* Updated Swedish and French translations
* Removed support for .mermaid-experimental class (now .mermaid)
* Fixed 3202: Cookie consent not dismissable on file:// locations
* Fixed 3216: Cookie consent not dismissed when invoked via anchor
* Fixed 3232: Mermaid.js sometimes runs twice (race condition)

mkdocs-material-7.3.6+insiders-3.2.2 (2021-11-06)

* Fixed always last feedback rating being sent
* Fixed 3145: Code annotations eat whole comment lines
* Fixed 3170: Feedback widget doesn't send data to GA4

mkdocs-material-7.3.6+insiders-3.2.1 (2021-11-04)

* Added support for custom Mermaid.js version via additional JavaScript
* Fixed some configuration edge cases for tags plugin (3.1.5 regression)
* Fixed feedback widget title not being centered in Firefox
* Fixed 3179: Safari doesn't send request for feedback widget

mkdocs-material-7.3.6+insiders-3.2.0 (2021-10-31)

* Added support for feedback widget (Was this page helpful?)

7.3.6

* Added support for adding titles to code blocks

mkdocs-material-7.3.5+insiders-3.1.5 (2021-10-28)

* Fixed 3144: Rogue link when using tags with auto-populated navigation
* Fixed 3147: Code block line numbers appear in search results
* Fixed 3158: Social cards do not strip HTML tags from title

7.3.5

* Added support for setting table of contents title via mkdocs.yml
* Fixed back-to-top button position for right-to-left languages

mkdocs-material-7.3.4+insiders-3.1.4 (2021-10-17)

* Fixed 2974: Text cropped with other fonts than Roboto in social plugin
* Fixed 3099: Encoding problems with non-latin character in social plugin
* Fixed 3112: Japanese segmenter not executed as part of new tokenizer
* Fixed tags (front matter) appearing in search with disabled tags plugin

7.3.4

* Bumped MkDocs version to 1.2.3 to mitigate CVE-2021-40978
* Fixed spacing issues when using integrate table of contents with tabs
* Fixed some spacings issues for right-to-left languages
* Fixed race condition in search initialization

mkdocs-material-7.3.3+insiders-3.1.3 (2021-10-12)

* Added warnings to search plugin for unsupported options and syntax
* Fixed 3503: Search sometimes returns entire page
* Fixed 3089: Single-line code annotations disappear when printing

7.3.3

* Rewrite of entire documentation
* Adjusted height of new content tabs to match single line code blocks
* Fixed new content tabs missing right padding in some browsers on overflow
* Fixed new content tabs bleeding out of flex container on overflow
* Fixed new content tabs overflow scrolling bugs on some browsers
* Fixed new content tabs stealing keyboard access when active
* Fixed some spacings issues for right-to-left languages

mkdocs-material-7.3.2+insiders-3.1.2 (2021-10-06)

* Fixed incorrect path separators for social cards on Windows

7.3.2

* Deprecated prebuilding of search index
* Improved graceful handling of broken search for file://
* Added minimum Jinja version to list of requirements
* Fixed 3071: Section index pages render empty directories
* Fixed margin issues when using navigation tabs (7.3.1 regression)
* Fixed search placeholder sometimes being shown too early

7.3.1

* Added new experimental content tabs implementation
* Fixed 3069: GitHub stats broken for users/orgs (7.1.0 regression)
* Fixed 3070: Sections not linking to index page
* Fixed title not linking to index page when using tabs
* Fixed Disqus integration when using instant loading
* Fixed some spacing issues for right-to-left languages
* Fixed syntax error in Serbian translations

mkdocs-material-7.3.0+insiders-3.1.1 (2021-09-26)

* Fixed ordering bug in search exclusion logic

mkdocs-material-7.3.0+insiders-3.1.0 (2021-09-26)

* Added support for excluding pages, sections, and elements from search
* Fixed 2803: Code block annotations not visible when printing

7.3.0

* Added support for sticky navigation tabs
* Added support for section index pages
* Added support for removing generator notice

7.2.8

* Fixed 3039: Search modal overlays menu on mobile (7.2.7 regression)

mkdocs-material-7.2.7+insiders-3.0.1 (2021-09-19)

* Added support for using literal h1-6 tags for search plugin
* Fixed search plugin breaking on void elements without slashes
* Fixed search plugin filtering link contents from headlines
* Fixed search plugin handling of multiple h1 headlines
* Fixed search plugin handling of missing h1 headlines

7.2.7

* Updated Serbian and Serbo-Croatian translations
* Improved appearance of outline on details
* Fixed 2934: Scrollbar when header is hidden on some mobile browsers
* Fixed 3032: Anchor in details doesn't open on load (7.0.0 regression)
* Fixed back-to-top button being focusable when invisible
* Fixed broken admonition icons (removed in upstream)

mkdocs-material-7.2.6+insiders-3.0.0 (2021-09-13)

* Rewrite of MkDocs' search plugin
* Added support for rich search previews
* Added support for tokenizer with lookahead
* Improved search indexing performance (twice as fast)
* Improved search highlighting

mkdocs-material-7.2.6+insiders-2.13.3 (2021-09-01)

* Added support for disabling social card generation

7.2.6

* Fixed rendering of blockquote elements (7.0.0 regression)
* Fixed 2973: Custom search worker setting ignored

mkdocs-material-7.2.5+insiders-2.13.2 (2021-08-25)

* Fixed 2965: Social plugin error when primary color is not defined

7.2.5

* Updated Portuguese translations
* Fixed execution of RxJS teardown logic (7.2.3 regression)
* Fixed 2970: Search results show escaped characters (7.2.2 regression)

mkdocs-material-7.2.4+insiders-2.13.1 (2021-08-22)

* Fixed 2948: Social cards are not cached
* Fixed 2953: Mermaid.js diagrams can't be centered anymore

7.2.4

* Fixed 2926: Version selector not working (7.2.3 regression)
* Fixed 2929: Missing CSS class for banner (consistency with Insiders)

7.2.3

* Slight facelift of data tables, now closer to Material Design
* Fixed instant loading not respecting clicks on search results
* Fixed 2881: Invalid anchor offsets when using instant loading

mkdocs-material-7.2.2+insiders-2.13.0 (2021-08-07)

* Added support for custom colors in social cards

mkdocs-material-7.2.2+insiders-2.12.2 (2021-08-04)

* Fixed 2891: Division by zero error in social plugin

7.2.2

* Updated Korean translations
* Fixed 2879: Search highlighting does not properly escape HTML

mkdocs-material-7.2.1+insiders-2.12.1 (2021-07-26)

* Fixed error in social plugin when site_description was not set
* Fixed error in social plugin for non-ASCII characters

mkdocs-material-7.2.1+insiders-2.12.0 (2021-07-25)

* Added support for social cards

7.2.1

* Fixed 2862: Back-to-top button overlays active search bar

7.2.0

* Added support for search suggestions to save keystrokes
* Added support for search highlighting
* Added support for search sharing (i.e. deep linking)

mkdocs-material-7.1.11+insiders-2.11.1 (2021-07-20)

* Fixed order of tags index, now sorted alphabetically

mkdocs-material-7.1.11+insiders-2.11.0 (2021-07-18)

* Improved Mermaid.js integration, now stable
* Added support for sequence diagrams
* Added support for entity relationship diagrams
* Added support for cookie consent configuration
* Added feature flag to always enable annotations

7.1.11

* Updated Spanish and Galician translations

mkdocs-material-7.1.10+insiders-2.10.0 (2021-07-10)

* Added support for cookie consent
* Fixed 2807: Back-to-top button not hidden when using sticky tabs

7.1.10

* Refactored appearance of back-to-top button
* Fixed graceful handling of search when browsing locally

7.1.9

* Improved search language support for Thai and Hindi
* Fixed 2761: License comments lined up at end of file

7.1.8

* Refactored analytics integration (because of MkDocs 1.2)
* Added support for Google Analytics 4 (gtag.js)
* Fixed missing escape for aria-label in footer links

7.1.7

* Improved screen reader support

mkdocs-material-7.1.6+insiders-2.9.2 (2021-05-30)

* Moved tags to partial for easier customization
* Added support for hiding tags on any page

7.1.6

* Deprecated seealso admonition qualifier
* Added Mongolian and updated Chinese translations
* Fixed 2429: Version selector not touch-friendly on Android devices
* Fixed 2703: Printed 'Initializing search' albeit ready on mobile

mkdocs-material-7.1.5+insiders-2.9.1 (2021-05-24)

* Added missing guard for linking of content tabs

mkdocs-material-7.1.5+insiders-2.9.0 (2021-05-23)

* Added support for linking of content tabs

7.1.5

* Fixed 2655: Details breaking page margins on print

mkdocs-material-7.1.4+insiders-2.8.0 (2021-05-12)

* Added support for boosting pages in search

mkdocs-material-7.1.4+insiders-2.7.2 (2021-05-08)

* Fixed 2638: Warnings shown when using tags plugin without directory URLs

7.1.4

* Added support for git-revision-date-localized plugin creation date
* Improved footnote styles on :target and :focus

mkdocs-material-7.1.3+insiders-2.7.1 (2021-05-03)

* Fixed git-revision-date-localized plugin integration (2.7.0 regression)

mkdocs-material-7.1.3+insiders-2.7.0 (2021-05-01)

* Added support for tags (with search integration)

7.1.3

* Fixed 2586: Empty table of contents shown (7.1.2 regression)

7.1.2

* Fixed 2554: List markers sometimes overlap floated elements
* Fixed 2563: Adding a class to a h1 breaks the table of contents
* Fixed 2566: Back-to-top button clickable when invisible

mkdocs-material-7.1.1+insiders-2.6.0 (2021-04-11)

* Stay on page when switching versions

7.1.1

* Fixed 2501: Nested definition lists compound bottom margin
* Fixed 2508: Switch extracopyright block to template variable
* Fixed 2533: Search (and other parts) not working in Safari <14
* Fixed 2538: Visual quirk when opening language selector

7.1.0

* Added support for color palette toggle
* Added support for back-to-top button
* Added latest release to repository info (GitHub)
* Slight facelift of repository info (lighter fonts, spacing and icons)

mkdocs-material-7.0.7+insiders-2.5.0 (2021-03-28)

* Added support for version warning

7.0.7

* Updated Hungarian translations
* Fixed 2466: Docker image not based on latest Python and Alpine
* Fixed 2488: Inconsistent header shadow behavior
* Fixed 2492: Inline code blocks in admonition titles missing background

mkdocs-material-7.0.6+insiders-2.4.0 (2021-03-20)

* Added support for custom admonition icons
* Fixed 2444: Code block annotations with extra comments have wrong index

mkdocs-material-7.0.6+insiders-2.3.1 (2021-03-14)

* Fixed anchor offset for permalinks when using sticky navigation tabs
Links

Update mkdocstrings from 0.12.0 to 0.18.1.

The bot wasn't able to find a changelog for this release. Got an idea?

Links

Update black from 19.10b0 to 22.3.0.

Changelog

22.3.0

Preview style

- Code cell separators `%%` are now standardised to ` %%` (2919)
- Remove unnecessary parentheses from `except` statements (2939)
- Remove unnecessary parentheses from tuple unpacking in `for` loops (2945)
- Avoid magic-trailing-comma in single-element subscripts (2942)

Configuration

- Do not format `__pypackages__` directories by default (2836)
- Add support for specifying stable version with `--required-version` (2832).
- Avoid crashing when the user has no homedir (2814)
- Avoid crashing when md5 is not available (2905)
- Fix handling of directory junctions on Windows (2904)

Documentation

- Update pylint config documentation (2931)

Integrations

- Move test to disable plugin in Vim/Neovim, which speeds up loading (2896)

Output

- In verbose, mode, log when _Black_ is using user-level config (2861)

Packaging

- Fix Black to work with Click 8.1.0 (2966)
- On Python 3.11 and newer, use the standard library's `tomllib` instead of `tomli`
(2903)
- `black-primer`, the deprecated internal devtool, has been removed and copied to a
[separate repository](https://github.com/cooperlees/black-primer) (#2924)

Parser

- Black can now parse starred expressions in the target of `for` and `async for`
statements, e.g `for item in *items_1, *items_2: pass` (2879).

22.1.0

At long last, _Black_ is no longer a beta product! This is the first non-beta release
and the first release covered by our new
[stability policy](https://black.readthedocs.io/en/stable/the_black_code_style/index.html#stability-policy).

Highlights

- **Remove Python 2 support** (2740)
- Introduce the `--preview` flag (2752)

Style

- Deprecate `--experimental-string-processing` and move the functionality under
`--preview` (2789)
- For stubs, one blank line between class attributes and methods is now kept if there's
at least one pre-existing blank line (2736)
- Black now normalizes string prefix order (2297)
- Remove spaces around power operators if both operands are simple (2726)
- Work around bug that causes unstable formatting in some cases in the presence of the
magic trailing comma (2807)
- Use parentheses for attribute access on decimal float and int literals (2799)
- Don't add whitespace for attribute access on hexadecimal, binary, octal, and complex
literals (2799)
- Treat blank lines in stubs the same inside top-level `if` statements (2820)
- Fix unstable formatting with semicolons and arithmetic expressions (2817)
- Fix unstable formatting around magic trailing comma (2572)

Parser

- Fix mapping cases that contain as-expressions, like `case {"key": 1 | 2 as password}`
(2686)
- Fix cases that contain multiple top-level as-expressions, like `case 1 as a, 2 as b`
(2716)
- Fix call patterns that contain as-expressions with keyword arguments, like
`case Foo(bar=baz as quux)` (2749)
- Tuple unpacking on `return` and `yield` constructs now implies 3.8+ (2700)
- Unparenthesized tuples on annotated assignments (e.g
`values: Tuple[int, ...] = 1, 2, 3`) now implies 3.8+ (2708)
- Fix handling of standalone `match()` or `case()` when there is a trailing newline or a
comment inside of the parentheses. (2760)
- `from __future__ import annotations` statement now implies Python 3.7+ (2690)

Performance

- Speed-up the new backtracking parser about 4X in general (enabled when
`--target-version` is set to 3.10 and higher). (2728)
- _Black_ is now compiled with [mypyc](https://github.com/mypyc/mypyc) for an overall 2x
speed-up. 64-bit Windows, MacOS, and Linux (not including musl) are supported. (1009,
2431)

Configuration

- Do not accept bare carriage return line endings in pyproject.toml (2408)
- Add configuration option (`python-cell-magics`) to format cells with custom magics in
Jupyter Notebooks (2744)
- Allow setting custom cache directory on all platforms with environment variable
`BLACK_CACHE_DIR` (2739).
- Enable Python 3.10+ by default, without any extra need to specify
`--target-version=py310`. (2758)
- Make passing `SRC` or `--code` mandatory and mutually exclusive (2804)

Output

- Improve error message for invalid regular expression (2678)
- Improve error message when parsing fails during AST safety check by embedding the
underlying SyntaxError (2693)
- No longer color diff headers white as it's unreadable in light themed terminals
(2691)
- Text coloring added in the final statistics (2712)
- Verbose mode also now describes how a project root was discovered and which paths will
be formatted. (2526)

Packaging

- All upper version bounds on dependencies have been removed (2718)
- `typing-extensions` is no longer a required dependency in Python 3.10+ (2772)
- Set `click` lower bound to `8.0.0` (2791)

Integrations

- Update GitHub action to support containerized runs (2748)

Documentation

- Change protocol in pip installation instructions to `https://` (#2761)
- Change HTML theme to Furo primarily for its responsive design and mobile support
(2793)
- Deprecate the `black-primer` tool (2809)
- Document Python support policy (2819)

21.12b0

_Black_

- Fix determination of f-string expression spans (2654)
- Fix bad formatting of error messages about EOF in multi-line statements (2343)
- Functions and classes in blocks now have more consistent surrounding spacing (2472)

Jupyter Notebook support

- Cell magics are now only processed if they are known Python cell magics. Earlier, all
cell magics were tokenized, leading to possible indentation errors e.g. with
`%%writefile`. (2630)
- Fix assignment to environment variables in Jupyter Notebooks (2642)

Python 3.10 support

- Point users to using `--target-version py310` if we detect 3.10-only syntax (2668)
- Fix `match` statements with open sequence subjects, like `match a, b:` or
`match a, *b:` (2639) (2659)
- Fix `match`/`case` statements that contain `match`/`case` soft keywords multiple
times, like `match re.match()` (2661)
- Fix `case` statements with an inline body (2665)
- Fix styling of starred expressions inside `match` subject (2667)
- Fix parser error location on invalid syntax in a `match` statement (2649)
- Fix Python 3.10 support on platforms without ProcessPoolExecutor (2631)
- Improve parsing performance on code that uses `match` under `--target-version py310`
up to ~50% (2670)

Packaging

- Remove dependency on `regex` (2644) (2663)

21.11b1

_Black_

- Bumped regex version minimum to 2021.4.4 to fix Pattern class usage (2621)

21.11b0

_Black_

- Warn about Python 2 deprecation in more cases by improving Python 2 only syntax
detection (2592)
- Add experimental PyPy support (2559)
- Add partial support for the match statement. As it's experimental, it's only enabled
when `--target-version py310` is explicitly specified (2586)
- Add support for parenthesized with (2586)
- Declare support for Python 3.10 for running Black (2562)

Integrations

- Fixed vim plugin with Python 3.10 by removing deprecated distutils import (2610)
- The vim plugin now parses `skip_magic_trailing_comma` from pyproject.toml (2613)

21.10b0

_Black_

- Document stability policy, that will apply for non-beta releases (2529)
- Add new `--workers` parameter (2514)
- Fixed feature detection for positional-only arguments in lambdas (2532)
- Bumped typed-ast version minimum to 1.4.3 for 3.10 compatibility (2519)
- Fixed a Python 3.10 compatibility issue where the loop argument was still being passed
even though it has been removed (2580)
- Deprecate Python 2 formatting support (2523)

_Blackd_

- Remove dependency on aiohttp-cors (2500)
- Bump required aiohttp version to 3.7.4 (2509)

_Black-Primer_

- Add primer support for --projects (2555)
- Print primer summary after individual failures (2570)

Integrations

- Allow to pass `target_version` in the vim plugin (1319)
- Install build tools in docker file and use multi-stage build to keep the image size
down (2582)

21.9b0

Packaging

- Fix missing modules in self-contained binaries (2466)
- Fix missing toml extra used during installation (2475)

21.8b0

_Black_

- Add support for formatting Jupyter Notebook files (2357)
- Move from `appdirs` dependency to `platformdirs` (2375)
- Present a more user-friendly error if .gitignore is invalid (2414)
- The failsafe for accidentally added backslashes in f-string expressions has been
hardened to handle more edge cases during quote normalization (2437)
- Avoid changing a function return type annotation's type to a tuple by adding a
trailing comma (2384)
- Parsing support has been added for unparenthesized walruses in set literals, set
comprehensions, and indices (2447).
- Pin `setuptools-scm` build-time dependency version (2457)
- Exclude typing-extensions version 3.10.0.1 due to it being broken on Python 3.10
(2460)

_Blackd_

- Replace sys.exit(-1) with raise ImportError as it plays more nicely with tools that
scan installed packages (2440)

Integrations

- The provided pre-commit hooks no longer specify `language_version` to avoid overriding
`default_language_version` (2430)

21.7b0

_Black_

- Configuration files using TOML features higher than spec v0.5.0 are now supported
(2301)
- Add primer support and test for code piped into black via STDIN (2315)
- Fix internal error when `FORCE_OPTIONAL_PARENTHESES` feature is enabled (2332)
- Accept empty stdin (2346)
- Provide a more useful error when parsing fails during AST safety checks (2304)

Docker

- Add new `latest_release` tag automation to follow latest black release on docker
images (2374)

Integrations

- The vim plugin now searches upwards from the directory containing the current buffer
instead of the current working directory for pyproject.toml. (1871)
- The vim plugin now reads the correct string normalization option in pyproject.toml
(1869)
- The vim plugin no longer crashes Black when there's boolean values in pyproject.toml
(1869)

21.6b0

_Black_

- Fix failure caused by `fmt: skip` and indentation (2281)
- Account for += assignment when deciding whether to split string (2312)
- Correct max string length calculation when there are string operators (2292)
- Fixed option usage when using the `--code` flag (2259)
- Do not call `uvloop.install()` when _Black_ is used as a library (2303)
- Added `--required-version` option to require a specific version to be running (2300)
- Fix incorrect custom breakpoint indices when string group contains fake f-strings
(2311)
- Fix regression where `R` prefixes would be lowercased for docstrings (2285)
- Fix handling of named escapes (`\N{...}`) when `--experimental-string-processing` is
used (2319)

Integrations

- The official Black action now supports choosing what version to use, and supports the
major 3 OSes. (1940)

21.5b2

_Black_

- A space is no longer inserted into empty docstrings (2249)
- Fix handling of .gitignore files containing non-ASCII characters on Windows (2229)
- Respect `.gitignore` files in all levels, not only `root/.gitignore` file (apply
`.gitignore` rules like `git` does) (2225)
- Restored compatibility with Click 8.0 on Python 3.6 when LANG=C used (2227)
- Add extra uvloop install + import support if in python env (2258)
- Fix --experimental-string-processing crash when matching parens are not found (2283)
- Make sure to split lines that start with a string operator (2286)
- Fix regular expression that black uses to identify f-expressions (2287)

_Blackd_

- Add a lower bound for the `aiohttp-cors` dependency. Only 0.4.0 or higher is
supported. (2231)

Packaging

- Release self-contained x86_64 MacOS binaries as part of the GitHub release pipeline
(2198)
- Always build binaries with the latest available Python (2260)

Documentation

- Add discussion of magic comments to FAQ page (2272)
- `--experimental-string-processing` will be enabled by default in the future (2273)
- Fix typos discovered by codespell (2228)
- Fix Vim plugin installation instructions. (2235)
- Add new Frequently Asked Questions page (2247)
- Fix encoding + symlink issues preventing proper build on Windows (2262)

21.5b1

_Black_

- Refactor `src/black/__init__.py` into many files (2206)

Documentation

- Replaced all remaining references to the
[`master`](https://github.com/psf/black/tree/main) branch with the
[`main`](https://github.com/psf/black/tree/main) branch. Some additional changes in
the source code were also made. (2210)
- Sigificantly reorganized the documentation to make much more sense. Check them out by
heading over to [the stable docs on RTD](https://black.readthedocs.io/en/stable/).
(2174)

21.5b0

_Black_

- Set `--pyi` mode if `--stdin-filename` ends in `.pyi` (2169)
- Stop detecting target version as Python 3.9+ with pre-PEP-614 decorators that are
being called but with no arguments (2182)

_Black-Primer_

- Add `--no-diff` to black-primer to suppress formatting changes (2187)

21.4b2

_Black_

- Fix crash if the user configuration directory is inaccessible. (2158)

- Clarify
[circumstances](https://github.com/psf/black/blob/master/docs/the_black_code_style.md#pragmatism)
in which _Black_ may change the AST (2159)

- Allow `.gitignore` rules to be overridden by specifying `exclude` in `pyproject.toml`
or on the command line. (2170)

_Packaging_

- Install `primer.json` (used by `black-primer` by default) with black. (2154)

21.4b1

_Black_

- Fix crash on docstrings ending with "\\ ". (2142)

- Fix crash when atypical whitespace is cleaned out of dostrings (2120)

- Reflect the `--skip-magic-trailing-comma` and `--experimental-string-processing` flags
in the name of the cache file. Without this fix, changes in these flags would not take
effect if the cache had already been populated. (2131)

- Don't remove necessary parentheses from assignment expression containing assert /
return statements. (2143)

_Packaging_

- Bump pathspec to >= 0.8.1 to solve invalid .gitignore exclusion handling

21.4b0

_Black_

- Fixed a rare but annoying formatting instability created by the combination of
optional trailing commas inserted by `Black` and optional parentheses looking at
pre-existing "magic" trailing commas. This fixes issue 1629 and all of its many many
duplicates. (2126)

- `Black` now processes one-line docstrings by stripping leading and trailing spaces,
and adding a padding space when needed to break up """". (1740)

- `Black` now cleans up leading non-breaking spaces in comments (2092)

- `Black` now respects `--skip-string-normalization` when normalizing multiline
docstring quotes (1637)

- `Black` no longer removes all empty lines between non-function code and decorators
when formatting typing stubs. Now `Black` enforces a single empty line. (1646)

- `Black` no longer adds an incorrect space after a parenthesized assignment expression
in if/while statements (1655)

- Added `--skip-magic-trailing-comma` / `-C` to avoid using trailing commas as a reason
to split lines (1824)

- fixed a crash when PWD=/ on POSIX (1631)

- fixed "I/O operation on closed file" when using --diff (1664)

- Prevent coloured diff output being interleaved with multiple files (1673)

- Added support for PEP 614 relaxed decorator syntax on python 3.9 (1711)

- Added parsing support for unparenthesized tuples and yield expressions in annotated
assignments (1835)

- added `--extend-exclude` argument (PR 2005)

- speed up caching by avoiding pathlib (1950)

- `--diff` correctly indicates when a file doesn't end in a newline (1662)

- Added `--stdin-filename` argument to allow stdin to respect `--force-exclude` rules
(1780)

- Lines ending with `fmt: skip` will now be not formatted (1800)

- PR 2053: Black no longer relies on typed-ast for Python 3.8 and higher

- PR 2053: Python 2 support is now optional, install with
`python3 -m pip install black[python2]` to maintain support.

- Exclude `venv` directory by default (1683)

- Fixed "Black produced code that is not equivalent to the source" when formatting
Python 2 docstrings (2037)

_Packaging_

- Self-contained native _Black_ binaries are now provided for releases via GitHub
Releases (1743)

20.8b1

_Packaging_

- explicitly depend on Click 7.1.2 or newer as `Black` no longer works with versions
older than 7.0

20.8b0

_Black_

- re-implemented support for explicit trailing commas: now it works consistently within
any bracket pair, including nested structures (1288 and duplicates)

- `Black` now reindents docstrings when reindenting code around it (1053)

- `Black` now shows colored diffs (1266)

- `Black` is now packaged using 'py3' tagged wheels (1388)

- `Black` now supports Python 3.8 code, e.g. star expressions in return statements
(1121)

- `Black` no longer normalizes capital R-string prefixes as those have a
community-accepted meaning (1244)

- `Black` now uses exit code 2 when specified configuration file doesn't exit (1361)

- `Black` now works on AWS Lambda (1141)

- added `--force-exclude` argument (1032)

- removed deprecated `--py36` option (1236)

- fixed `--diff` output when EOF is encountered (526)

- fixed ` fmt: off` handling around decorators (560)

- fixed unstable formatting with some ` type: ignore` comments (1113)

- fixed invalid removal on organizing brackets followed by indexing (1575)

- introduced `black-primer`, a CI tool that allows us to run regression tests against
existing open source users of Black (1402)

- introduced property-based fuzzing to our test suite based on Hypothesis and
Hypothersmith (1566)

- implemented experimental and disabled by default long string rewrapping (1132),
hidden under a `--experimental-string-processing` flag while it's being worked on;
this is an undocumented and unsupported feature, you lose Internet points for
depending on it (1609)

Vim plugin

- prefer virtualenv packages over global packages (1383)
Links

Update wheel from 0.34.2 to 0.37.1.

Changelog

0.37.1

- Fixed ``wheel pack`` duplicating the ``WHEEL`` contents when the build number has changed (415)
- Fixed parsing of file names containing commas in ``RECORD`` (PR by Hood Chatham)

0.37.0

- Added official Python 3.10 support
- Updated vendored ``packaging`` library to v20.9

0.36.2

- Updated vendored ``packaging`` library to v20.8
- Fixed wheel sdist missing ``LICENSE.txt``
- Don't use default ``macos/arm64`` deployment target in calculating the
platform tag for fat binaries (PR by Ronald Oussoren)

0.36.1

- Fixed ``AssertionError`` when ``MACOSX_DEPLOYMENT_TARGET`` was set to ``11``
(PR by Grzegorz Bokota and François-Xavier Coudert)
- Fixed regression introduced in 0.36.0 on Python 2.7 when a custom generator
name was passed as unicode (Scikit-build)
(``TypeError: 'unicode' does not have the buffer interface``)

0.36.0

- Added official Python 3.9 support
- Updated vendored ``packaging`` library to v20.7
- Switched to always using LF as line separator when generating ``WHEEL`` files
(on Windows, CRLF was being used instead)
- The ABI tag is taken from  the sysconfig SOABI value. On PyPy the SOABI value
is ``pypy37-pp73`` which is not compliant with PEP 3149, as it should have
both the API tag and the platform tag. This change future-proofs any change
in PyPy's SOABI tag to make sure only the ABI tag is used by wheel.
- Fixed regression and test for ``bdist_wheel --plat-name``. It was ignored for
C extensions in v0.35, but the regression was not detected by tests.

0.35.1

- Replaced install dependency on ``packaging`` with a vendored copy of its
``tags`` module
- Fixed ``bdist_wheel`` not working on FreeBSD due to mismatching platform tag
name (it was not being converted to lowercase)

0.35.0

- Switched to the packaging_ library for computing wheel tags
- Fixed a resource leak in ``WheelFile.open()`` (PR by Jon Dufresne)

.. _packaging: https://pypi.org/project/packaging/
Links

Update alembic from 1.4.2 to 1.7.7.

Changelog

1.7.5

:include_notes_from: unreleased

.. changelog::

1.7.4

:released: October 6, 2021

 .. change::
     :tags: bug, regression
     :tickets: 934

     Fixed a regression that prevented the use of post write hooks
     on python version lower than 3.9

 .. change::
     :tags: bug, environment
     :tickets: 944

     Fixed issue where the :meth:`.MigrationContext.autocommit_block` feature
     would fail to function when using a SQLAlchemy engine using 2.0 future
     mode.


.. changelog::

1.7.3

:released: September 17, 2021

 .. change::
     :tags: bug, mypy
     :tickets: 914

     Fixed type annotations for the "constraint_name" argument of operations
     ``create_primary_key()``, ``create_foreign_key()``.  Pull request courtesy
     TilmanK.


.. changelog::

1.7.2

:released: September 17, 2021

 .. change::
     :tags: bug, typing
     :tickets: 900

     Added missing attributes from context stubs.

 .. change::
     :tags: bug, mypy
     :tickets: 897

     Fixed an import in one of the .pyi files that was triggering an
     assertion error in some versions of mypy.

 .. change::
     :tags: bug, regression, ops
     :tickets: 920

     Fixed issue where registration of custom ops was prone to failure due to
     the registration process running ``exec()`` on generated code that as of
     the 1.7 series includes pep-484 annotations, which in the case of end user
     code would result in name resolution errors when the exec occurs. The logic
     in question has been altered so that the annotations are rendered as
     forward references so that the ``exec()`` can proceed.

.. changelog::

1.7.1

:released: August 30, 2021

 .. change::
     :tags: bug, installation
     :tickets: 893

     Corrected "universal wheel" directive in setup.cfg so that building a wheel
     does not target Python 2. The PyPi files index for 1.7.0 was corrected
     manually. Pull request courtesy layday.

 .. change::
     :tags: bug, pep484
     :tickets: 895

     Fixed issue in generated .pyi files where default values for ``Optional``
     arguments were missing, thereby causing mypy to consider them as required.


 .. change::
     :tags: bug, regression, batch
     :tickets: 896

     Fixed regression in batch mode due to :ticket:`883` where the "auto" mode
     of batch would fail to accommodate any additional migration directives
     beyond encountering an ``add_column()`` directive, due to a mis-application
     of the conditional logic that was added as part of this change, leading to
     "recreate" mode not being used in cases where it is required for SQLite
     such as for unique constraints.

.. changelog::

1.7.0

:released: August 30, 2021

 .. change::
     :tags: bug, operations
     :tickets: 879

     Fixed regression due to :ticket:`803` where the ``.info`` and ``.comment``
     attributes of ``Table`` would be lost inside of the :class:`.DropTableOp`
     class, which when "reversed" into a :class:`.CreateTableOp` would then have
     lost these elements. Pull request courtesy Nicolas CANIART.


 .. change::
     :tags: feature, environment
     :tickets: 842

     Enhance ``version_locations`` parsing to handle paths containing spaces.
     The new configuration option ``version_path_separator`` specifies the
     character to use when splitting the ``version_locations`` string. The
     default for new configurations is ``version_path_separator = os``,
     which will use ``os.pathsep`` (e.g., ``;`` on Windows).

 .. change::
     :tags: installation, changed

     Alembic 1.7 now supports Python 3.6 and above; support for prior versions
     including Python 2.7 has been dropped.

 .. change::
     :tags: bug, sqlite, batch
     :tickets: 883

     Batch "auto" mode will now select for "recreate" if the ``add_column()``
     operation is used on SQLite, and the column itself meets the criteria for
     SQLite where ADD COLUMN is not allowed, in this case a functional or
     parenthesized SQL expression or a ``Computed`` (i.e. generated) column.

 .. change::
     :tags: changed, installation
     :tickets: 674

     Make the ``python-dateutil`` library an optional dependency.
     This library is only required if the ``timezone`` option
     is used in the Alembic configuration.
     An extra require named ``tz`` is available with
     ``pip install alembic[tz]`` to install it.

 .. change::
     :tags: bug, commands
     :tickets: 856

     Re-implemented the ``python-editor`` dependency as a small internal
     function to avoid the need for external dependencies.

 .. change::
     :tags: usecase, batch
     :tickets: 884

     Named CHECK constraints are now supported by batch mode, and will
     automatically be part of the recreated table assuming they are named. They
     also can be explicitly dropped using ``op.drop_constraint()``. For
     "unnamed" CHECK constraints, these are still skipped as they cannot be
     distinguished from the CHECK constraints that are generated by the
     ``Boolean`` and ``Enum`` datatypes.

     Note that this change may require adjustments to migrations that drop or
     rename columns which feature an associated named check constraint, such
     that an additional ``op.drop_constraint()`` directive should be added for
     that named constraint as there will no longer be an associated column
     for it; for the ``Boolean`` and ``Enum`` datatypes, an ``existing_type``
     keyword may be passed to ``BatchOperations.drop_constraint`` as well.

     .. seealso::

       :ref:`batch_schematype_constraints`

       :ref:`batch_check_constraints`


 .. change::
     :tags: changed, installation
     :tickets: 885

     The dependency on ``pkg_resources`` which is part of ``setuptools`` has
     been removed, so there is no longer any runtime dependency on
     ``setuptools``. The functionality has been replaced with
     ``importlib.metadata`` and ``importlib.resources`` which are both part of
     Python std.lib, or via pypy dependency ``importlib-metadata`` for Python
     version < 3.8 and ``importlib-resources`` for Python version < 3.9
     (while importlib.resources was added to Python in 3.7, it did not include
     the "files" API until 3.9).

 .. change::
     :tags: feature, tests
     :tickets: 855

     Created a "test suite" similar to the one for SQLAlchemy, allowing
     developers of third-party dialects to test their code against a set of
     Alembic tests that have been specially selected to exercise
     back-end database operations. At the time of release,
     third-party dialects that have adopted the Alembic test suite to verify
     compatibility include
     `CockroachDB <https://pypi.org/project/sqlalchemy-cockroachdb/>`_ and
     `SAP ASE (Sybase) <https://pypi.org/project/sqlalchemy-sybase/>`_.

 .. change::
    :tags: bug, postgresql
    :tickets: 874

    Fixed issue where usage of the PostgreSQL ``postgresql_include`` option
    within a :meth:`.Operations.create_index` would raise a KeyError, as the
    additional column(s) need to be added to the table object used by the
    construct internally. The issue is equivalent to the SQL Server issue fixed
    in :ticket:`513`. Pull request courtesy Steven Bronson.

 .. change::
     :tags: feature, general

     pep-484 type annotations have been added throughout the library.
     Additionally, stub .pyi files have been added for the "dynamically"
     generated Alembic modules ``alembic.op`` and ``alembic.config``, which
     include complete function signatures and docstrings, so that the functions
     in these namespaces will have both IDE support (vscode, pycharm, etc) as
     well as support for typing tools like Mypy. The files themselves are
     statically generated from their source functions within the source tree.

.. changelog::

1.6.5

:released: May 27, 2021

 .. change::
     :tags: bug, autogenerate
     :tickets: 849

     Fixed issue where dialect-specific keyword arguments within the
     :class:`.DropIndex` operation directive would not render in the
     autogenerated Python code. As support was improved for adding dialect
     specific arguments to directives as part of :ticket:`803`, in particular
    

@ecsalomon
Copy link
Contributor

🙌🏻 ready for review, finally!

@shaycrk
Copy link
Contributor

shaycrk commented May 20, 2022

Thanks very much @ecsalomon! Looks good to me aside from the one print statement to remove.

@shaycrk
Copy link
Contributor

shaycrk commented May 20, 2022

Sorry -- just merged #883 and looks like that introduced a couple merge conflicts 😞

@shaycrk shaycrk merged commit 7b52958 into master May 20, 2022
@shaycrk shaycrk deleted the pyup-scheduled-update-2022-05-01 branch May 20, 2022 22:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants