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

Update core #20

Merged
merged 1 commit into from
Oct 20, 2023
Merged

Update core #20

merged 1 commit into from
Oct 20, 2023

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Oct 16, 2023

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence Type Update
IPython (source) ==8.15.0 -> ==8.16.1 age adoption passing confidence minor
dvc ==3.21.1 -> ==3.27.0 age adoption passing confidence minor
iterative/dvc 3.21.1 -> 3.27.0 age adoption passing confidence repository minor
ruamel.yaml ==0.17.32 -> ==0.17.39 age adoption passing confidence patch
scipy (source) ==1.11.2 -> ==1.11.3 age adoption passing confidence patch
seaborn ==0.12.2 -> ==0.13.0 age adoption passing confidence minor

Note: The pre-commit manager in Renovate is not supported by the pre-commit maintainers or community. Please do not report any problems there, instead create a Discussion in the Renovate repository if you have any questions.


Release Notes

ipython/ipython (IPython)

v8.16.0

Compare Source

iterative/dvc (dvc)

v3.27.0

Compare Source

What's Changed
🚀 New Features and Enhancements
🐛 Bug Fixes
Other Changes

Full Changelog: iterative/dvc@3.26.2...3.27.0

v3.26.2

Compare Source

What's Changed
🐛 Bug Fixes

Full Changelog: iterative/dvc@3.26.1...3.26.2

v3.26.1

Compare Source

What's Changed
🔨 Maintenance
Other Changes
New Contributors

Full Changelog: iterative/dvc@3.26.0...3.26.1

v3.26.0

Compare Source

What's Changed
🚀 New Features and Enhancements
Other Changes

Full Changelog: iterative/dvc@3.25.0...3.26.0

v3.25.0

Compare Source

What's Changed
Other Changes

Full Changelog: iterative/dvc@3.24.0...3.25.0

v3.24.0

Compare Source

What's Changed

🚀 New Features and Enhancements
🐛 Bug Fixes

Full Changelog: iterative/dvc@3.23.0...3.24.0

v3.23.0

Compare Source

What's Changed

🚀 New Features and Enhancements
🐛 Bug Fixes
Other Changes

Full Changelog: iterative/dvc@3.22.1...3.23.0

v3.22.1

Compare Source

What's Changed

🐛 Bug Fixes
🔨 Maintenance
Other Changes

Full Changelog: iterative/dvc@3.22.0...3.22.1

v3.22.0

Compare Source

What's Changed

🚀 New Features and Enhancements
🐛 Bug Fixes

Full Changelog: iterative/dvc@3.21.1...3.22.0

scipy/scipy (scipy)

v1.11.3: SciPy 1.11.3

Compare Source

SciPy 1.11.3 Release Notes

SciPy 1.11.3 is a bug-fix release with no new features
compared to 1.11.2.

Authors

  • Name (commits)
  • Jake Bowhay (2)
  • CJ Carey (1)
  • Colin Carroll (1) +
  • Anirudh Dagar (2)
  • drestebon (1) +
  • Ralf Gommers (5)
  • Matt Haberland (2)
  • Julien Jerphanion (1)
  • Uwe L. Korn (1) +
  • Ellie Litwack (2)
  • Andrew Nelson (5)
  • Bharat Raghunathan (1)
  • Tyler Reddy (37)
  • Søren Fuglede Jørgensen (2)
  • Hielke Walinga (1) +
  • Warren Weckesser (1)
  • Bernhard M. Wiedemann (1)

A total of 17 people contributed to this release.
People with a "+" by their names contributed a patch for the first time.
This list of names is automatically generated, and may not be fully complete.

mwaskom/seaborn (seaborn)

v0.13.0: v0.13.0 (September 2023)

Compare Source

See the online docs for an annotated version of these notes with working links.

This is a major release with a number of important new features and changes. The highlight is a major overhaul to seaborn's categorical plotting functions, providing them with many new capabilities and better aligning their API with the rest of the library. There is also provisional support for alternate dataframe libraries like polars, a new theme and display configuration system for objects.Plot, and many smaller bugfixes and enhancements.

Updating is recommended, but users are encouraged to carefully check the outputs of existing code that uses the categorical functions, and they should be aware of some deprecations and intentional changes to the default appearance of the resulting plots (see notes below with and tags).

Major enhancements to categorical plots

Seaborn's categorical functions <categorical_api> have been completely rewritten for this release. This provided the opportunity to address some longstanding quirks as well as to add a number of smaller but much-desired features and enhancements.

Support for numeric and datetime data

The categorical functions have historically treated all data as categorical, even when it has a numeric or datetime type. This can now be controlled with the new native_scale parameter. The default remains False to preserve existing behavior. But with native_scale=True, values will be treated as they would by other seaborn or matplotlib functions. Element widths will be derived from the minimum distance between two unique values on the categorical axis.

Additionally, while seaborn previously determined the mapping from categorical values to ordinal positions internally, this is now delegated to matplotlib. The change should mostly be transparent to the user, but categorical plots (even with native_scale=False) will better align with artists added by other seaborn or matplotlib functions in most cases, and matplotlib's interactive machinery will work better.

Changes to color defaults and specification

The categorical functions now act more like the rest of seaborn in that they will produce a plot with a single main color unless the hue variable is assigned. Previously, there would be an implicit redundant color mapping (e.g., each box in a boxplot would get a separate color from the default palette). To retain the previous behavior, explicitly assign a redundant hue variable (e.g., boxplot(data, x="x", y="y", hue="x")).

Two related idiosyncratic color specifications are deprecated, but they will continue to work (with a warning) for one release cycle:

  • Passing a palette without explicitly assigning hue is no longer supported (add an explicitly redundant hue assignment instead).
  • Passing a color while assigning hue to produce a gradient is no longer supported (use palette="dark:{color}" or palette="light:{color}" instead).

Finally, like other seaborn functions, the default palette now depends on the variable type, and a sequential palette will be used with numeric data. To retain the previous behavior, pass the name of a qualitative palette (e.g., palette="deep" for seaborn's default). Accordingly, the functions have gained a parameter to control numeric color mappings (hue_norm).

Other features, enhancements, and changes

The following updates apply to multiple categorical functions.

  • All functions now accept a legend parameter, which can be a boolean (to suppress the legend) or one of {"auto", "brief", "full"} to control the amount of information shown in the legend for a numerical color mapping.
  • All functions now accept a callable formatter parameter to control the string representation of the data.
  • All functions that draw a solid patch now accept a boolean fill parameter, which when set to False will draw line-art elements.
  • All functions that support dodging now have an additional gap parameter that can be set to a non-zero value to leave space between dodged elements.
  • The boxplot, boxenplot, and violinplot functions now support a single linecolor parameter.
  • The default value for dodge has changed from True to "auto". With "auto", elements will dodge only when at least one set of elements would otherwise overlap.
  • When the value axis of the plot has a non-linear scale, the statistical operations (e.g. an aggregation in pointplot or the kernel density fit in violinplot) are now applied in that scale space.
  • All functions now accept a log_scale parameter. With a single argument, this will set the scale on the "value" axis (opposite the categorical axis). A tuple will set each axis directly (although setting a log scale categorical axis also requires native_scale=True).
  • The orient parameter now accepts "x"/"y" to specify the categorical axis, matching the objects interface.
  • The categorical functions are generally more deferential to the user's additional matplotlib keyword arguments.
  • Using "gray" to select an automatic gray value that complements the main palette is now deprecated in favor of "auto".

The following updates are function-specific.

  • In pointplot, a single matplotlib.lines.Line2D artist is now used rather than adding separate matplotlib.collections.PathCollection artist for the points. As a result, it is now possible to pass additional keyword arguments for complete customization the appearance of both the lines and markers; additionally, the legend representation is improved. Accordingly, parameters that previously allowed only partial customization (scale, join, and errwidth) are now deprecated. The old parameters will now trigger detailed warning messages with instructions for adapting existing code.
  • The bandwidth specification in violinplot better aligns with kdeplot, as the bw parameter is now deprecated in favor of bw_method and bw_adjust.
  • In boxenplot, the boxen are now drawn with separate patch artists in each tail. This may have consequences for code that works with the underlying artists, but it produces a better result for low-alpha / unfilled plots and enables proper area/density scaling.
  • In barplot, the errcolor and errwidth parameters are now deprecated in favor of a more general err_kws` dictionary. The existing parameters will continue to work for two releases.
  • In violinplot, the scale and scale_hue parameters have been renamed to density_norm and common_norm for clarity and to reflect the fact that common normalization is now applied over both hue and faceting variables in catplot.
  • In boxenplot, the scale parameter has been renamed to width_method as part of a broader effort to de-confound the meaning of "scale" in seaborn parameters.
  • When passing a vector to the data parameter of barplot or pointplot, a bar or point will be drawn for each entry in the vector rather than plotting a single aggregated value. To retain the previous behavior, assign the vector to the y variable.
  • In boxplot, the default flier marker now follows the matplotlib rcparams so that it can be globally customized.
  • When using split=True and inner="box" in violinplot, a separate mini-box is now drawn for each split violin.
  • In boxenplot, all plots now use a consistent luminance ramp for the different box levels. This leads to a change in the appearance of existing plots, but reduces the chances of a misleading result.
  • The "area" scaling in boxenplot now approximates the density of the underlying observations, including for asymmetric distributions. This produces a substantial change in the appearance of plots with width_method="area", although the existing behavior was poorly defined.
  • In countplot, the new stat parameter can be used to apply a normalization (e.g to show a "percent" or "proportion").
  • The split parameter in violinplot is now more general and can be set to True regardless of the number of hue variable levels (or even without hue). This is probably most useful for showing half violins.
  • In violinplot, the new inner_kws parameter allows additional control over the interior artists.
  • It is no longer required to use a DataFrame in catplot, as data vectors can now be passed directly.
  • In boxplot, the artists that comprise each box plot are now packaged in a BoxPlotContainer for easier post-plotting access.

Support for alternate dataframe libraries

  • Nearly all functions / objects now use the dataframe exchange protocol to accept DataFrame objects from libraries other than pandas (e.g. polars). Note that seaborn will still convert the data object to pandas internally, but this feature will simplify code for users of other dataframe libraries (3369).

Improved configuration for the objects interface

  • Added control over the default theme to objects.Plot (3223)
  • Added control over the default notebook display to objects.Plot (3225).
  • Added the concept of a "layer legend" in objects.Plot via the new label parameter in objects.Plot.add (3456).
  • In objects.Plot.scale, objects.Plot.limit, and objects.Plot.label the x / y parameters can be used to set a common scale / limit / label for paired subplots (3458).

Other updates

  • Improved the legend display for relational and categorical functions to better represent the user's additional keyword arguments (3467).
  • In ecdfplot, stat="percent" is now a valid option (3336).
  • Data values outside the scale transform domain (e.g. non-positive values with a log scale) are now dropped prior to any statistical operations (3488).
  • In histplot, infinite values are now ignored when choosing the default bin range (3488).
  • There is now generalized support for performing statistics in the appropriate space based on axes scales; previously support for this was spotty and at best worked only for log scales (3440).
  • Updated load_dataset to use an approach more compatible with pyiodide (3234).
  • Support for array-typed palettes is now deprecated. This was not previously documented as supported, but it worked by accident in a few places (3452).
  • In histplot, treatment of the binwidth parameter has changed such that the actual bin width will be only approximately equal to the requested width when that value does not evenly divide the bin range. This fixes an issue where the largest data value was sometimes dropped due to floating point error (3489).
  • Fixed objects.Bar and objects.Bars widths when using a nonlinear scale (3217).
  • Worked around an issue in matplotlib that caused incorrect results in move_legend when labels were provided (3454).
  • Fixed a bug introduced in v0.12.0 where histplot added a stray empty BarContainer (3246).
  • Fixed a bug where objects.Plot.on would override a figure's layout engine (3216).
  • Fixed a bug introduced in v0.12.0 where lineplot with a list of tuples for the keyword argument dashes caused a TypeError (3316).
  • Fixed a bug in PairGrid that caused an exception when the input dataframe had a column multiindex (3407).
  • Improved a few edge cases when using pandas nullable dtypes (3394).

Configuration

📅 Schedule: Branch creation - "on the 16th day of the month" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@codecov
Copy link

codecov bot commented Oct 16, 2023

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (3a798cc) 80.22% compared to head (be6ff0a) 80.22%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #20   +/-   ##
=======================================
  Coverage   80.22%   80.22%           
=======================================
  Files          14       14           
  Lines         445      445           
  Branches       63       63           
=======================================
  Hits          357      357           
  Misses         77       77           
  Partials       11       11           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@renovate renovate bot force-pushed the renovate/core branch 3 times, most recently from aa4d208 to 998a535 Compare October 19, 2023 10:02
@blakeNaccarato blakeNaccarato merged commit 340b184 into main Oct 20, 2023
5 checks passed
@renovate renovate bot deleted the renovate/core branch October 20, 2023 01:04
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.

1 participant