Skip to content

Latest commit

 

History

History
531 lines (361 loc) · 19.9 KB

CHANGES.rst

File metadata and controls

531 lines (361 loc) · 19.9 KB

Release 1.9.4

  • BUGFIX: Fixed TypeError which occurred on certain np.isnan() operations when serializing to JS Literal (courtesy of @ThomasGL) (closes #200).

Release 1.9.3

  • BUGFIX: Fixed incorrect export serialization of Highcharts Maps for Python map topologies.
  • BUGFIX: Added support for value 'allow' to DataLabel.overflow property. Fixes #198.
  • DOCS: Fixed some typos in documentation (courtesy of @JulienBacquart).

Release 1.9.2

  • BUGFIX: Resolved over-broad False-y validation of PieDataLabel.distance to allow for 0 values. Closes #192.
  • BUGFIX: Fixed over-broad False-y validation of Tooltip.header_format to allow for empty string values, bringing it in line with Tooltip.footer_format. Closes #193.

Release 1.9.1

  • ENHANCEMENT: Added stringified JSON serialization of callback functions when serializing via .to_json(for_export = True).

Release 1.9.0

  • BUGFIX: Fixed missing serialization/de-serialization of ChartEvents.render.
  • BUGFIX: Added new utility_classes.data_labels.PieDataLabel class to ensure support for the .distance property on Pie-chart (and descended) data labels. Closes #183.
  • BUGFIX: Fixed options.chart.height type validation to accept string values as per JS API. (Issue reported in #184).
  • BUGFIX: Added missing support for options.plot_options.sunburst.SunburstOptions.border_radius (issue reported in #184).
  • BUGFIX: Added support for concatenation via + operator in JS literal strings when parsed by .from_js_literal(). Closes #185.
  • ENHANCEMENT: Added support for utility_classes.border_radius.BorderRadius object.

Release 1.8.2

  • BUGFIX: Added missing support for 'areaMarker' legend symbol.
  • DOCS: Fixed some typos (courtesy of @JulienBacquart).

Release 1.8.1

  • ENHANCEMENT: Added resources (files, js, and css) support to chart export.

Release 1.8.0

  • BUGFIX: Fixed over-eager trimming of None data values when serializing .to_json() for export via the Export Server. Closes #168.
  • BUGFIX: Fixed DumbbellSeries.data incorrect type (reverted from CartesianData to RangeData-descended). Closes #176.
  • BUGFIX: Fixed coercion of datetime.date type values to milliseconds when serializaing .to_json() for export via the Export Server.
  • ENHANCEMENT: Added for_export as a special parameter to the .to_json() serialization method to maintain past behavior while simultaneously fixing serialization bugs related to export via the Node Export Server. Extended .trim_dict() and .trim_iterable() internal methods with for_export support for the same purpose.

Release 1.7.6

  • BUGFIX: Enabled support for the 'image/svg+xml' export type when using the Node Export Server. Now supplying a type of 'svg' will coerce (under the hood) to 'image/svg+xml' which supports more extensive rendering options.

Release 1.7.5

  • BUGFIX: Fixed encoding issue when handling certain exported SVGs from the Node Export Server.

Release 1.7.4

  • BUGFIX: Fixed incorrect .to_json() serialization of null values inside of an iterable.

Release 1.7.3

  • BUGFIX: Fixed handling of boolean values in GenericTypeOptions.animation property.
  • BUGFIX: Fixed incorrect serialization of format strings that begin with { and end with }. In particular, now added an "escape hatch" if the {...} string is prefixed with $ to ensure proper serialization.
  • BUGFIX: Adjusted export support for Highcharts Node Export Server v.3.1.1.

Release 1.7.2

  • BUGFIX: Fixed incorrect handling of empty string in YAxis.title.text (#171).
  • ENHANCEMENT: Bumped dependency on requests to v.2.32.

Release 1.7.1

  • BUGFIX: Fixed data collection roundtrip via .to_json() / .from_json() (#169).

Release 1.7.0

  • ENHANCEMENT: Align the API to Highcharts (JS) v.11.4 (#163). In particular, this includes: * Added Accessibility.high_contrast_mode support. * Added OrganizationOptions.hanging_side support. * Added SankeyOptions.node_distance support. * Added TreegraphOptions.node_distance support. * Adjusted diagram (ArcDiagramOptions, TreegraphOptions, DependencyWheelOptions, and

    SankeyOptions) .node_width support and documentation.

    • Added NodeOptions.height support.
  • ENHANCEMENT: Added utility_functions.datetime64_to_datetime() function to convert numpy.datetime64 to datetime.datetime (needed to close #162).


Release 1.6.0

  • ENHANCEMENT: Align the API to Highcharts (JS) v.11.3 (#146). In particular, this includes:
    • Added ChartOptions.axis_layout_runs property.
    • Added ColorAxis.height property.
    • Added ColorAxis.width property.
    • Added Data.column_types property.
    • Added Exporting.fetch_options property.
    • Implemented support for verbose axis date-time unit labelling configuration (see: DateTimeLabelFormats).
  • BUGFIX: Added support for nodeFormat and nodeFormatter to tooltip properties for diagram series (Organization, Dependency Wheel, and Sankey). (#148)
  • ENHANCEMENT: Added ability to remove or override the JavaScript event listener when serializing a chart to a JavaScript literal (#131 - courtesy of @ByronCook ).
  • ENHANCEMENT: Added support for the HCP_ALLOW_SPECIAL_IPS environment variable which allows localhost (or other special URLs) to pass URL validation. (#147)
  • DOCUMENTATION: Fixed typos in Getting Started tutorial. (#149)
  • DOCUMENTATION: Fixed typos in documentation (courtesy of @karlacio <https://github.com/karlacio> and @maxduganknight <https://github.com/maxduganknight>).

Release 1.5.1

  • BUGFIX: Fixed bug in JS literal serialization that would misinterpret strings that start with {, end with }, and contain a colon (:) as an object literal rather than as a string. (#130)

Release 1.5.0

  • ENHANCEMENT: Align the API to Highcharts (JS) v.11.2 (#127). In particular, this includes:
    • Added AxisEvents.point_break_out property.
    • Added .node_alignment property to SankeyOptions and SankeySeries.
    • Added .link_color_mode property to SankeyOptions and SankeySeries.
    • Added .inactive_other_points property to multiple series types.
    • Added .grouping property to Lollipop series type.
    • Added .low_marker property Area Range and Dumbell series types.
    • Added .show_export_in_progress and .export_in_progress support.
    • Added .drag annotation event support.
  • BUGFIX: Fixed missing .levels support in TreegraphOptions and TreegraphSeries.

Release 1.4.3

  • BUGFIX: Fixed edge case error when deserializing ChartOptions using .from_dict() with a dict that had been serialized using .to_dict() which errored on .margin and .spacing (#124).

Release 1.4.2

  • BUGFIX: Fixed location of the histogram.js module and bellcurve.js module to reflect latest changes in Highcharts (JS).

Release 1.4.1

  • BUGFIX: Fixed handling of numpy.datetime64 values in DataPointCollection. (#118)

Release 1.4.0

  • MAJOR performance gains in the .to_js_literal() method. Implementation seems to improve performance by 50 - 90%. (#51)
  • SIGNIFICANT performance gains in the .to_json() method. Implementation seems to improve performance by 30 - 90%.
  • ENHANCEMENT: Significantly simplified use of the .from_pandas() method to support:
    • creation of multiple series from one DataFrame in one method call
    • creation of series without needing to specify a full property map
    • support for creating series by DataFrame row, rather than just by DataFrame column
  • ENHANCEMENT: Added the .from_pandas_in_rows() method to support creation of charts and series from simple two-dimensional DataFrames laid out in rows.
  • ENHANCEMENT: Added one-shot chart creation and rendering from Series objects (#89).
  • ENHANCEMENT: Added one-shot chart creation using series and data/series_type keywords. (#90).
  • ENHANCEMENT: Added .convert_to() convenience method to Series objects (#107).
  • ENHANCEMENT: Added CallbackFunction.from_python() method which converts a Python function to its JavaScript equivalent using generative AI, with support for both OpenAI and Anthropic (#109).
  • BUGFIX: Fixed instability issues in Jupyter Notebooks, both when operating as a Notebook (outside of Jupyter Lab) and when saved to a static HTML file (#66).

Release 1.3.7

  • BUGFIX: Fixed bug in HighchartsMeta.copy() (#98).
  • BUGFIX: Fixed bug in data point serialization to primitive array.

Release 1.3.6

  • BUGFIX: Adding missing menu...Style properties to Navigation class (#95).

Release 1.3.5

  • BUGFIX: Fixed validation of style properties in the Legend class (#93).

Release 1.3.4

  • ENHANCEMENT: Converted ButtonTheme into an extensible descendent of JavaScriptDict (#86).

Release 1.3.3

  • BUGFIX: Added in a missing class extension for NavigationButtonConfiguration (#86).

Release 1.3.2

  • BUGFIX: Fixed incorrect handling when defining a new Exporting.buttons context button under a different key name than contextButton. (#84).

Release 1.3.1

  • BUGFIX: Fixed incorrect style property deserialization in certain places (#82).

Release 1.3.0

  • ENHANCEMENT: Modified the way that data points are serialized to JavaScript literal objects. Now, they are serialized to a JavaScript array if their configured properties are those that Highcharts (JS) supports in JavaScript array notation. Otherwise, the code falls back to serialize the data point as a JavaScript object literal. This change is intended to improve performance and reduce the size of the serialized data. (#77)
  • ENHANCEMENT: Added __repr__() method for Highcharts Core for Python classes (#76).
  • ENHANCEMENT: Added __str__() method with special handling for difficult-to-read classes (#76).
  • ENHANCEMENT: Added Chart.get_script_tags() to retrieve Javascript <script> tags (#78).
  • ENHANCEMENT: Added utility_functions.to_snake_case() function.
  • BUGFIX: Fixed incorrect serialization of datetime and Pandas Timestamp objects in .to_dict() and .to_json() (#74).
  • BUGFIX: Fixed incorrect serialization of EnforcedNull in .to_dict() and .to_json() (#75).

Release 1.2.6

  • BUGFIX: Fixed incorrect handling of an empty string in Annotation.draggable property (#71).

Release 1.2.5

  • BUGFIX: Fixed ExportServer handling of data relying on Pandas Timestamp instances.

Release 1.2.4

  • BUGFIX: Fixed .from_array() de-serialization to support propagation of string-type x values to ``name``(#67).

Release 1.2.3

  • BUGFIX: Fixed error when loading certain Highcharts (JS) scripts in Jupyter context.
  • ENHANCEMENT: Increased the default timeout for Chart.download_chart() and related.

Release 1.2.2

  • BUGFIX: Fixed behavior where Chart.download_chart(format = 'svg') was incorrectly returning a PNG rather than an SVG ( #63 ).

Release 1.2.1

  • ENHANCEMENT: Added autoconversion of plotLine.value from datetime.datetime to POSIX timestamp (#58).
  • BUGFIX: Fixed incorrect datetime serialization to SECONDS from Unix epoch. Now serializing to JS-compatible MILLISECONDS from Unix epoch (#61).

Release 1.2.0

  • ENHANCEMENT: Align the API to Highcharts (JS) v.11.1 (#52). In particular, this includes:
    • Added AccessibilityPoint.description_format property.
    • Added support for .legend_symbol to plot options and series options.
    • Added .border_radius support to FunnelOptions and FunnelSeries.
    • Added .interpolation support to HeatmapOptions and descendents.
    • Added .point_description_format support to SeriesOptions and descendents.
    • Added .fill_space support to TreegraphOptions and descendents.
    • Added .crossing support to axes.
    • Added .format support to Tooltip.
  • ENHANCEMENT: Added support for the inclusion of scripts based on features used in the chart (#12).
  • ENHANCEMENT: Added dict support to .style property on labels and titles.
  • DOCS: Various documentation updates and fixes.
  • DEPENDENCY: Bumped requests version for security patch.

Release 1.1.1

  • FIXED: Problem when producing a JS literal, with the JS code inserting an unnecessary new (#42 and #43).
  • ENHANCEMENT: Added more elegant error handling when something goes wrong displaying a chart in Jupyter (#43).

Release 1.1.0

  • Align the API to Highcharts (JS) v.11. In particular, this includes:
    • Updating documentation for options.chart.ChartOptions.styled_mode to align to new v11 design changes.
    • Updated documentation for options.series.data.base.DataBase.color_index to align to new v11 design changes.
    • Added new utility_classes.data_labels.SunburstDataLabel class to patch missing data label .rotation_mode property.
    • Updated options.plot_options.SunburstOptions.data_labels to accept SunburstDataLabel values.
    • Updated documentation of options.axes.labels.AxisLabelOptions.distance to reflect new (or newly-documented) behavior.
    • Added new utility_classes.data_labels.OrganizationDataLabel class to patch misisng data label . link_text_path property.
    • Updated options.plot_options.organization.OrganizationOptions.data_labels to accept OrganizationDataLabel values.
    • Added .description_format property to options.plot_options.accessibility.TypeOptionsAccessibility.
    • Added PictorialOptions / PictorialSeries series type with related classes.
    • Added .minor_ticks_per_major to options.axes.x_axis.XAxisOptions.
    • Added .stack_shadow to options.axes.y_axis.YAxisOptions.
    • Added .border_radius to ColumnRangeOptions / ColumnRangeSeries.
    • Added .play_as_sand and .download_midi to global_options.language.Language.
    • Added .border_radius to PieOptions / PieSeries.
    • Added .style to utility_classes.buttons.CollapseButtonConfiguration.
    • Added utility_classes.events.SimulationEvents and modified NetworkGraphOptions to support.
    • Added options.sonification and all related classes.
    • Added series-level SeriesSonification to all series.
  • FIXED: Broken heatmap and tilemap documentation links.
  • FIXED: Fixed missing TreegraphOptions / TreegraphSeries series type.

Release 1.0.2

  • DOCUMENTATION: Added documentation of hard dependencies to the README (issue #37).

Release 1.0.1

  • BUGFIX: Fixed a bug encountered when parsing CSV data (issue #32).
  • ENHANCEMENT: Added a catch for when trying to set Chart.options to a SharedOptions instance (issue #34).
  • Fixed a broken link in the documentation.

Release 1.0.0

  • First official release!

Release 1.0.0-rc9

  • Added demos to documentation.

Release 1.0.0-rc8

  • BUG: #25. Fixed the edge case where if multiple notebooks are open in Jupyter Labs and different notebooks use the same container, the charts get rendered in one container.
  • BUG: Fixed bug when serializing a string value equal to 'Date'.
  • BUG: Fixed boolean handling in options.legend.LegendOptions.shadow.
  • Enhancement: Added .from_array() support to the decorators.validate_types() function.
  • BUG: Fixed data valization in options.plot_options.pie.PieOptions.end_angle and .start_angle.
  • Added date and datetime support to axis min and max.
  • Added iterable support to .from_dict() method.

Release 1.0.0-rc7

  • Further tweaks to documentation CSS for better accessibility.

Release 1.0.0-rc6

  • Added CSS overrides to documentation for better accessibility.
  • Added jQuery to documentation to address issue in Sphinx 6.0 and Sphinx RTD Theme.

Release 1.0.0-rc5

  • Bug fixes to Jupyter Labs rendering.
  • Bug fix for timestamp serialization of timezone-naive datetime objects.
  • Bug fix: typo in Plot Bands serialization.
  • Added null support to color validation.
  • Bug fix in style deserialization.
  • Bug fix in CartesianData.from_array().
  • Fixed NaN handling in .load_from_pandas().
  • Fixed JSON deserialization in .from_array().
  • Added support for stylesheet links in Jupyter Labs context.
  • Several bug fixes in JS literal serialization.
  • Major improvements to JavaScript module inclusion.

Release 1.0.0-rc4

  • Revised the documentation.

Release 1.0.0-rc3

  • Revised the documentation.

Release 1.0.0-rc2

  • Closed #18. Fixed bug where loading data from a Pandas Dataframe could produce data points with None values.
  • Added HighchartsPandasDeserializationError and HighchartsPySparkDeserializationError.

Release 1.0.0-rc1

  • First public release: Release Candidate 1