Skip to content

Dash R Core Package Unification #243

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

Merged
merged 32 commits into from
May 18, 2021
Merged
Show file tree
Hide file tree
Changes from 12 commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
32ba6bb
Initialize npm and gulpfile in repo
HammadTheOne Jan 16, 2021
e7c523e
Adding directory structure
HammadTheOne Jan 19, 2021
f28adce
Initial implementation of unification script
HammadTheOne Jan 25, 2021
e6fcb6e
Minor grep fixes
HammadTheOne Jan 25, 2021
ccce6ab
Merge branch 'dev' into consolidate-packages
HammadTheOne Jan 25, 2021
2b28268
Fixed DESCRIPTION imports
HammadTheOne Jan 25, 2021
4946ae6
Added updated dash-table deps
HammadTheOne Jan 26, 2021
ea39c8a
Regex for version numbers
HammadTheOne Mar 2, 2021
fae8c79
Cut import entries from NAMESPACE
HammadTheOne Mar 2, 2021
3e266c9
Remove && include(dashr)
HammadTheOne Mar 4, 2021
2ee8b56
Removing gulp-asset artifacts and rebuilding complete package
HammadTheOne Mar 4, 2021
bd6080b
Removing unnecessary files
HammadTheOne Mar 4, 2021
ef6a5c7
fix: remove html, core pkgs from tests
May 7, 2021
227df58
fix: update script tags unit test
May 8, 2021
3760784
Revert R6 import
HammadTheOne May 13, 2021
0ed9eb6
Add temporary collate
HammadTheOne May 13, 2021
028a5e1
Update README examples
HammadTheOne May 13, 2021
4662f93
Scrubbing imports
HammadTheOne May 16, 2021
b6a4736
More import scrubbing
HammadTheOne May 16, 2021
9977a3f
Package development updates
HammadTheOne May 16, 2021
f02b125
Update gitignore and namespace
HammadTheOne May 16, 2021
d8534f4
Updated gulpfile jobs
HammadTheOne May 16, 2021
d66d720
Updated all dependencies
HammadTheOne May 16, 2021
ace5af1
Added templates for namespace/internal exports
HammadTheOne May 16, 2021
bf0dc69
Update internal, namespace, and gulpfile cleanup
HammadTheOne May 16, 2021
7a8942b
Fix dependency sourcing
HammadTheOne May 16, 2021
6601411
Linting
HammadTheOne May 16, 2021
c7ee665
Adding job for asset retrieval and deletion
HammadTheOne May 17, 2021
5b9f960
Minor src change
HammadTheOne May 17, 2021
0427f28
Added error handling
HammadTheOne May 18, 2021
ec1ab35
Fixing favicon bug
HammadTheOne May 18, 2021
fb42f18
chore: use shallow clone
May 18, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@
All notable changes to `dash` will be documented in this file.
This project adheres to [Semantic Versioning](http://semver.org/).

## [1.0.0] - 2021-03-04
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

### Changed
- Unify the core Dash packages (dash, dashCoreComponents, dashHtmlComponents, dashTable) for streamlined maintenance and accessibility. The namespaces of these packages will be combined under the `dash` namespace, and all artifacts from the ancillary dash packages will be included with Dash for R. [#243](https://github.com/plotly/dashr/pull/243)

## [0.9.1] - 2020-11-16
### Fixed
- A regression which prevented favicons from displaying properly has been resolved, and a default Dash favicon is now supplied when none is provided in the `assets` directory. [#240](https://github.com/plotly/dashr/pull/240)
Expand Down
13 changes: 1 addition & 12 deletions DESCRIPTION
Original file line number Diff line number Diff line change
@@ -1,14 +1,11 @@
Package: dash
Title: An Interface to the Dash Ecosystem for Authoring Reactive Web Applications
Version: 0.9.1
Version: 1.0.0
Authors@R: c(person("Chris", "Parmer", role = c("aut"), email = "[email protected]"), person("Ryan Patrick", "Kyle", role = c("aut", "cre"), comment = c(ORCID = "0000-0001-5829-9867"), email = "[email protected]"), person("Carson", "Sievert", role = c("aut"), comment = c(ORCID = "0000-0002-4958-2844")), person("Hammad", "Khan", role = c("aut"), comment = c(ORCID = "0000-0003-2479-9841"), email = "[email protected]"), person(family = "Plotly Technologies", role = "cph"))
Description: A framework for building analytical web applications, Dash offers a pleasant and productive development experience. No JavaScript required.
Depends:
R (>= 3.0.2)
Imports:
dashHtmlComponents (== 1.1.1),
dashCoreComponents (== 1.13.0),
dashTable (== 4.11.0),
Comment on lines -9 to -11
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎉

R6,
fiery (> 1.0.0),
routr (> 0.2.0),
Expand All @@ -25,14 +22,6 @@ Imports:
glue
Suggests:
testthat
Collate:
'utils.R'
'dependencies.R'
'dash-package.R'
'dash.R'
'imports.R'
'print.R'
'internal.R'
Comment on lines -28 to -35
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Did this get removed when you re-ran devtools::document()? The collation order of the R source files may not be important, but if we remove the entry (or devtools did) we should just ensure that no issues arise from the new sourcing order.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did remove this manually. Ideally what I would expect to happen is that all the new .R files present in the package like htmlHeader.R would be appended to the Collate entry with roxygen2::oxygenise() . However, when I execute this, it does not generate an updated DESCRIPTION and instead reverts the dependencies in NAMESPACE instead. If we have the Collate entry present, all of the R files must be included or installation of the package fails.

Do you think there's a better way around it than simply removing it? I didn't notice any issues arising from removing it myself.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@HammadTheOne Collate probably doesn't matter unless there are potential side effects, and apparently the most common cause of this is use of S4 methods, which we don't have in this package:

https://r-pkgs.org/description.html#:~:text=Collate%20controls%20the%20order%20in,access%20data%20in%20your%20package.

I think it's safe to remove it. If the tests pass, and the package functionality remains as before, I'm OK if we 🔪 this block.

Remotes: plotly/dash-html-components@7209e0a,
plotly/dash-core-components@91a424e,
plotly/dash-table@aa519b7
Expand Down
164 changes: 161 additions & 3 deletions NAMESPACE
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,6 @@ export(dashNoUpdate)
export(input)
export(output)
export(state)
import(dashCoreComponents)
import(dashHtmlComponents)
importFrom(R6,R6Class)
importFrom(assertthat,assert_that)
importFrom(base64enc,base64encode)
importFrom(brotli,brotli_compress)
Expand All @@ -34,3 +31,164 @@ importFrom(routr,ressource_route)
importFrom(stats,setNames)
importFrom(tools,file_ext)
importFrom(utils,getFromNamespace)
# dashCoreComponents exports appended by `npm unify` command: do not edit by hand

export(dccChecklist)
export(dccConfirmDialog)
export(dccConfirmDialogProvider)
export(dccDatePickerRange)
export(dccDatePickerSingle)
export(dccDropdown)
export(dccGraph)
export(dccInput)
export(dccInterval)
export(dccLink)
export(dccLoading)
export(dccLocation)
export(dccLogoutButton)
export(dccMarkdown)
export(dccRadioItems)
export(dccRangeSlider)
export(dccSlider)
export(dccStore)
export(dccTab)
export(dccTabs)
export(dccTextarea)
export(dccUpload)
# dashHtmlComponents exports appended by `npm unify` command: do not edit by hand

export(htmlA)
export(htmlAbbr)
export(htmlAcronym)
export(htmlAddress)
export(htmlArea)
export(htmlArticle)
export(htmlAside)
export(htmlAudio)
export(htmlB)
export(htmlBase)
export(htmlBasefont)
export(htmlBdi)
export(htmlBdo)
export(htmlBig)
export(htmlBlink)
export(htmlBlockquote)
export(htmlBr)
export(htmlButton)
export(htmlCanvas)
export(htmlCaption)
export(htmlCenter)
export(htmlCite)
export(htmlCode)
export(htmlCol)
export(htmlColgroup)
export(htmlCommand)
export(htmlContent)
export(htmlData)
export(htmlDatalist)
export(htmlDd)
export(htmlDel)
export(htmlDetails)
export(htmlDfn)
export(htmlDialog)
export(htmlDiv)
export(htmlDl)
export(htmlDt)
export(htmlElement)
export(htmlEm)
export(htmlEmbed)
export(htmlFieldset)
export(htmlFigcaption)
export(htmlFigure)
export(htmlFont)
export(htmlFooter)
export(htmlForm)
export(htmlFrame)
export(htmlFrameset)
export(htmlH1)
export(htmlH2)
export(htmlH3)
export(htmlH4)
export(htmlH5)
export(htmlH6)
export(htmlHeader)
export(htmlHgroup)
export(htmlHr)
export(htmlI)
export(htmlIframe)
export(htmlImg)
export(htmlIns)
export(htmlIsindex)
export(htmlKbd)
export(htmlKeygen)
export(htmlLabel)
export(htmlLegend)
export(htmlLi)
export(htmlLink)
export(htmlListing)
export(htmlMain)
export(htmlMapEl)
export(htmlMark)
export(htmlMarquee)
export(htmlMeta)
export(htmlMeter)
export(htmlMulticol)
export(htmlNav)
export(htmlNextid)
export(htmlNobr)
export(htmlNoscript)
export(htmlObjectEl)
export(htmlOl)
export(htmlOptgroup)
export(htmlOption)
export(htmlOutput)
export(htmlP)
export(htmlParam)
export(htmlPicture)
export(htmlPlaintext)
export(htmlPre)
export(htmlProgress)
export(htmlQ)
export(htmlRb)
export(htmlRp)
export(htmlRt)
export(htmlRtc)
export(htmlRuby)
export(htmlS)
export(htmlSamp)
export(htmlScript)
export(htmlSection)
export(htmlSelect)
export(htmlShadow)
export(htmlSlot)
export(htmlSmall)
export(htmlSource)
export(htmlSpacer)
export(htmlSpan)
export(htmlStrike)
export(htmlStrong)
export(htmlSub)
export(htmlSummary)
export(htmlSup)
export(htmlTable)
export(htmlTbody)
export(htmlTd)
export(htmlTemplate)
export(htmlTextarea)
export(htmlTfoot)
export(htmlTh)
export(htmlThead)
export(htmlTime)
export(htmlTitle)
export(htmlTr)
export(htmlTrack)
export(htmlU)
export(htmlUl)
export(htmlVar)
export(htmlVideo)
export(htmlWbr)
export(htmlXmp)
# dashTable exports appended by `npm unify` command: do not edit by hand

export(dashDataTable)
export(df_to_list)
Loading