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

Replace is.na with rlang::is_na in map_color() #2131

Merged
merged 2 commits into from May 4, 2022
Merged

Replace is.na with rlang::is_na in map_color() #2131

merged 2 commits into from May 4, 2022

Conversation

mojaveazure
Copy link
Contributor

R 4.2 now throws an error if the input to if () is has a length greater than 1; this causes errors in map_color as one of the conditions in mapColor explicitly allows for multiple colors and is.na is vectorized. Replacing this with rlang::is_na forces the check to essentially be if (is.na(col) && length(col) == 1), thus no longer failing on R 4.2

@cpsievert
Copy link
Collaborator

Thank you! It'd also be great if you would add a NEWS.md item about this!

@mojaveazure
Copy link
Contributor Author

Of course, apologies for not doing that earlier

@cpsievert
Copy link
Collaborator

Thanks!

@cpsievert cpsievert merged commit 5583518 into plotly:master May 4, 2022
chschan added a commit to Displayr/plotly that referenced this pull request Jul 4, 2022
* Start v4.9.4 release candidate (plotly#1959)

* Add crosstalk mapping to computed_mapping (not mapping) when present (plotly#1964)

* Follow up to plotly#1952: add crosstalk mapping to computed_mapping (not mapping) when present

* use dev version; update news

* v4.9.4.1 release candidate (plotly#1965)

* v4.9.4.1 release candidate

* Reduce some of the warning noise

* Reduce some of the warning noise

* use dev version

* Upgrade to plotly.js 2.0 (plotly#1967)

* wip upgrade to plotly.js 2.0

* patch plotly.js source to support phantomjs/shinytest

reverts part of plotly/plotly.js#5380

* bump mathjax version

* use npm instead of yarn

* make geom_bar() default to textposition='none'; approve new vdiffr 0.4 + plotly.js 2.0 baselines

* Migrate to vdiffr 1.0

* Use layout.legend.title over layout.annotations to when converting guides for discrete scales

* wip migrate to gha

* try npm install

* setup node

* use recommended node version

* try mac instead

* install phantomjs; various cleanup

* intentionally break a visual test

* fix

* use thematic's approach to testing

* bump version

* regenerate snapshots

* map secrets to env variables

* accept new gha baselines

* whoops

* hmm

* approve shinytest baseline

* intentionally break a visual test

* always upload

* revert change; new baselines

* Remove the vdiffr dependency and use testthat snaphots directly

* More obvious env var naming

* more gha details

* always upload

* new snaps

* intentionally break a visual test (again)

* Revert "intentionally break a visual test (again)"

This reverts commit a4e306c.

* Update subplots.R (plotly#1974)

To get rid of "Error is get_domains(length(plots), nrows, margin, widths = widths, heights = heights): The sum of the widths and heights arguments must be less than 1.

* Better positioning of facet axis annotations (plotly#1975)

* Add kaleido() for static image exporting (plotly#1971)

* Close plotly#1970: revert plotly.js 2.0 change in default modebar buttons

* Add save_image(), a convenience wrapper around kaleido()$transform() (plotly#1981)

* Upgrade to plotly.js v2.2.1 (plotly#1982)

* Use Plotly.react() to redraw in Shiny if layout.transition is populated (plotly#2001)

* Use Plotly.react() to redraw in Shiny if layout.transition is populated

* update news

* Update to plotly.js v2.5.1 (plotly#2002)

* update to plotly.js v2.5.1

* new visual baselines

* Closes plotly#2031. ggplot internaly convert `color` to `colour`

* Update README.md

* update baselines

* update URLs

* add_area() now uses barpolar instead of area (plotly#2041)

* Closes plotly#1872. Implemented to_basic for `geom_function`

* 4.10.0 release

* Added unit tests. And ran tests using

* Conformed with carson's review

* Reverted the deletion of _snaps

* Added test to check whether the fix works or not.

* Added test to check whether the fix works or not.

* use dev versioning

* Fix "partial argument match" warnings (plotly#1977)

* No partial-argument-match warning in ggplotly

* Update NEWS.md

* Solved the LaTeX2exp error. Closes plotly#2027 (plotly#2030)

Co-authored-by: Carson Sievert <cpsievert1@gmail.com>

* Revert "Solved the LaTeX2exp error. Closes plotly#2027 (plotly#2030)"

This reverts commit aeaecd6.

* Add ggalluvial support (plotly#2061)

Co-authored-by: Carson Sievert <cpsievert1@gmail.com>
Co-authored-by: Abdessabour Moutik <abds.papa@gmail.com>

* Fix ordering of lines in stat_ecdf() (plotly#2065)

* Handle geom_tile() with no fill aesthetic (plotly#2063)

* More careful joining of group columns (plotly#2064)

* Avoid with() to better account for missing tickvals/ticktext (plotly#2062)

* Test discrete-ness of fill after statistics have been calculated (plotly#2066)

* Announce snapshot files when visual testing isn't enabled so they won't get deleted

* Respect guide(aes = 'none') when constructing legend entries (plotly#2067)

* Add 'plotly_selecting' to acceptable 'on' events (plotly#1280)

* Use faster versions of system.file()/packageVersion()/is_installed() (plotly#2072)

* Bump plotly.js to 2.11.1 (plotly#2096)

* approve new visual baselines

* Use rlang::local_options() in test

* new shinytest baselines; avoid rlang altogether

* plotly.js fix bug when crosstalk filter keys are null (plotly#2087)

* transition `tidyr::gather_` -> `tidyr::pivot_longer` (plotly#2125)

* transition `tidyr::gather_` -> `tidyr::pivot_longer`

* add `NEWS` entry

* Replace `is.na` with `rlang::is_na` in `map_color()` (plotly#2131)

* roxygenize

* Support renderValue within iframe

* Add yaml for auto-P.R./fork updating; RS-2202

* [pull] master from ropensci:master (#2)

* New version of scales no longer 'spans the gamut' of a qualitative color palette

* reduce Reduce() for merging lists

use do.call() instead to avoid quadratic complexity of growing lists

* ensure_one(): reduce noise if attrs are NULL

ignore NULL values

* ggplotly: fix Xaxis anchor if the last row incomplete

attach X axis to the last non-empty row in a column

* stylistic changes

* validate new visual baselines

* Doesn't seem like we need to handle yaxis being a factor

and if we do, it likely needs a different fix

* update shinytest baselines

* ugh maintaining shinytest tests for htmlwidgets is a real pain

* update sf baselines

* go back to using ggplotly() to prepare the widget for shiny rendering

* the extra call to plotly_build() forces more computation then necessary and fixes plotly#1569

* Generation of non-intercept data in hline/vline should respect coord_flip(), closes plotly#1519

* update news; fix typo

* Account for new changes in ggplot2's internal API, fixes plotly#1561

* Break values of positional scales have moved from  to
* Text labels of positional scales have moved from  to
* sf graticule degree labels are now quoted?

* include braces

* gsub

* moar braces

* new sf baselines

* update news

* upgrade to plotly.js v1.49.0

* upgrade to plotly.js v1.49.2

* upgrade to plotly.js v1.49.4

* update baseline

* update shinytest baseline

* make a deep copy of x.layout.width/x.layout.height for use in the resize method, closes plotly#1553

* Wrap user-supplied expression in evalq(), closes plotly#1528

* Use shiny::installExprFunction to register debug hooks

* Asynchronously register plot events

* Revert "Merge pull request plotly#1539 from ropensci/renderWidgetPrep"

This reverts commit d416cea, reversing
changes made to d11bb5a.

* no need to be making deep copies

* Improvements to algorithm for attaching key attribute for shiny's event data, fixes plotly#1610

* Account for pointNumbers
* Do nothing if we don't recognize the case

* When pointNumber is a constant, relay it as such

* handle the 3 cases separately

* use idx instead of i

* update news

* Call setInputValue only if it's defined, closes plotly#1624

* Revert "Revert "Merge pull request plotly#1539 from ropensci/renderWidgetPrep""

This reverts commit 2856731.

* pass along a quoted expr that calls func()

* Revert "go back to using ggplotly() to prepare the widget for shiny rendering"

This reverts commit a0fa68f.

* update news

* verify_webgl() shouldn't warn about types that are already gl, closes plotly#1569

* fix test

* Do not create structure with NULL to remove warnings

* Fix management of environments in renderPlotly(), fixes plotly#1639

Both assignment and evaluation of func() should happen in the local environment

* Add test to prove plotly#1299 fix

* proposed change to avoid peeking at 'grid' unit internals

* improve previous commit

* refactor Paul's unit type commits from plotly#1646

* Some CRAN builds don't have pandoc

* plot_mapbox() shouldn't force a scattermapbox trace type, closes plotly#1608

* fix R CMD check notes

* r-devel apparently doesn't yet have grid::unitType()

* remove outdated travis config

* Validate changes visual baselines due to changes in R3.6's new RNG method

* Add support for new plotly_sunburstclick event, closes plotly#1648

* validate new shinytest baselines

* update news

* fix silly mistake from 3cbccfc

* document

* test expectation should account for changes in the default color palette on r-devel

* improve the aforementioned test example and add a visual test

* Ignore calculated aesthetics that match specified aesthestics

After tidyverse/ggplot2@10fa0014, it's possible for calculated aes to exist for all default_aes

* fix broken link raster2uri and improve the description

* cran hyperlinks must be https

* fix roxygen warning

* In contrast to attr(x, unit), the new grid::unitType() function always return a vector the same length as it's input

* bump to release version; submit to CRAN

* Respect sf's plot12 graticule attribute when building axis ticks, fixes plotly#1673

* Remove missing values in ticktext/tickvals

As discussed in tidyverse/ggplot2#3566 (comment), it's now possible for the ggplot2 labels/positions to contains missing values, and we should be able to simply ignore them

* link to comment

* remove outdated/bad test expectation...the visual baseline covers it

* Don't assume sf geometry is always accessible via [['geometry']], fixes plotly#1659

* validate baselines

* update news

* update to plotly.js 1.52.2

* new baselines

* Add image and treemap visual tests. Also, ensure treemap's stroke reflects the paper's bgcolor

* Add Object.setPrototypeOf polyfill for shinytest and update shinytest json baseline

* Add add_image() for easier rendering of image traces via raster objects

* Bump version, update news, document, add unit test for add_image()

* roxygen escapes % now

* Only call locale_dependency() for locales not included with standard bundle, closes plotly#1686

* CRAN submission

* plot_mapbox() should default to scattermapbox unless z is present, fixes plotly#1707

* add visual test for plotly#1674

* update poor test expectations that assume stringsAsFactors defaults to TRUE

* bump version; update news

* update visual tests

* remove rnaturalearth dependency in tests

Co-authored-by: Carson Sievert <cpsievert1@gmail.com>
Co-authored-by: Alexey Stukalov <astukalov@gmail.com>
Co-authored-by: Wim <wfjvdham@gmail.com>
Co-authored-by: Paul Murrell <paul@stat.auckland.ac.nz>

* Add back missing layout attribute

* Pass element instead of ID

* VIS-992: add test, use rhtmlBuildUtils (#15)

* Initial commit

* Remove prepush

* Final line for plotly.yml

* Re-add lib

* Refactor

* Create test

* Specify rhtmlBuildUtils version

* Remove preinstall script

* Delete package-lock.json

* Update documentation

* Update documentation and remove library

* Restore files

* Restore file

* Update build files

* VIS-933: add rhtmlwidget-status attribute (#16)

* Test callback

* Update compiled files

* Add rhtmlwidget-status attribute

* wording change

* VIS-1064: fix PPT exporting issue (#17)

* Candidate fix

* Bump version

* Update widgetdefinition.js and build

Co-authored-by: Carson Sievert <cpsievert1@gmail.com>
Co-authored-by: Abhilash Lakshman <46469834+abhilashlakshman@users.noreply.github.com>
Co-authored-by: Abdessabour Moutik <abds.papa@gmail.com>
Co-authored-by: Jack Parmer <jparmer09@gmail.com>
Co-authored-by: bersbersbers <12128514+bersbersbers@users.noreply.github.com>
Co-authored-by: casperhart <39182232+casperhart@users.noreply.github.com>
Co-authored-by: Simon P. Couch <simonpatrickcouch@gmail.com>
Co-authored-by: Paul Hoffman <mojaveazure@users.noreply.github.com>
Co-authored-by: Jeffrey Shen <jeffrey.shen@displayr.com>
Co-authored-by: flipDevTools <opensource@displayr.com>
Co-authored-by: pull[bot] <39814207+pull[bot]@users.noreply.github.com>
Co-authored-by: Alexey Stukalov <astukalov@gmail.com>
Co-authored-by: Wim <wfjvdham@gmail.com>
Co-authored-by: Paul Murrell <paul@stat.auckland.ac.nz>
Co-authored-by: Justin Yap <JustinCCYap@users.noreply.github.com>
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

2 participants