Giter VIP home page Giter VIP logo

devroadmap's Introduction

devroadmap

rOpenSci Development Road Map

This document does not track every project/package within rOpenSci, but rather the larger efforts we are undertaking.

Go to Issues/Milestones for each respective package to get up to date information on issues and planned release dates.

For past changes on a per pacakge basis: All rOpenSci repositories should have notes on each release in the releases tab for (e.g., releases for rgbif). If releases is missing see the NEWS/NEWS.md file in the repository.


CRAN PACKAGES

Image Processing

Jeroen is working on a long term better infrastructure for image processing and analysis in R. Currently this includes dealing with formats for pictures and graphics, but the goal is to expand to video as well as spatial and medical imaging.

  • Implement magick feature requests complete
  • Implement drawing system (perhaps via a graphics device) complete
  • Integrate with Tesseract complete
  • Blog post complete
  • Update latest libmagick++: Done but need to do again complete
  • Refactoring documentation complete
  • Extract image classes, make pkg more extensible
  • Start exposing some magick image analsysis tools
  • Learn about medical imaging
  • Look into video processing library

Overdue Maintenance

  • CRAN has requested maintenance on the brotli package. Also the upstream library has had a lot of breaking changes in v1.0
  • The RAppArmor package needs cleanup now that most functionality has been extracted into unix.

Tutorial / Playground

Ideas for the new website:

  • Create rOpenSci rmarkdown theme to generate rOpenSci tutorials as vignettes
  • Experiment with interactive tutorials (playground) for rOpenSci tools using new OpenCPU
  • Blog about ropensci.ocpu.io for remotely calling ropensci tools

security

Improve security in R. We want to bootstrap a trust network based on the ropensci community to make it safer to install R packages from arbitrary sources (github, cran, etc). Git's ability to sign commits, combined with Github's GPG API and/or keybase for identifying peers.

  • gpg needs work to support multiple keyrings.
  • notary developed at unconf17, experiment with a version of install_github that shows and verifies signatures.

Bob Rudis has a keybase package which interacts with the keybase API that we might borrow from. I also want to look into another approached based off letsencrypt.

  • openssl needs a mainenance release to address bugs and features
  • jose implements Javascript Object Signing and Encryption based on openssl and jsonlite packages. Needed for letsencrypt client.
  • acme is the protocol used by letsenrypt. It uses jose for signing and encrypting tokens. To get started I will implement a letsencrypt client for R (which also allows for further testing and developing jose). One that works, perhaps we can use the certificates for other purposes as well.

Also doing research into additional methods of securing R such as libcgroups and docker).

geospatial

No big new projects in this space, but rather the focus here is to try to get some more traction for the GeoJSON workflow in R. Using pkgs we've developed and others out there, I want to get out a numbef of blog posts/screencasts/vignettes for how to do spatial work centered around GeoJSON - and point out where its worse and where better than the sp/sf workflow.

There's already a lot of traction for geojsonio package (see SO questions) - so that seems like a definite area to focus on.

Does include though some new pkgs or versions:

  • geoops - first version is up on CRAN - but lots more to do adding methods and optimizing, etc.
  • geofilter - not on CRAN yet. hoping to get up soon. will help users filter through GeoJSON just like you can for data.frame's/tibble's - using jq. i think this is an important piece for people to consider using a GeoJSON based workflow.

CRAN checks API

A REST API for cran check results. code: https://github.com/ropensci/cchecksapi api: https://cranchecks.info/heartbeat The main work done, but tweaking from feedback from various folks.

Once it's basically done, may try to set up a notification system to ropensci pkg maintainers (and others) to opt in to notifications (email, etc.) when there's errors, warnings, notes, etc.

http mocking/caching

target date: late January 2018

webmockr mocks HTTP requests, and vcr is used mostly to integrate with unit tests to cache HTTP requests. webmockr is now on CRAN and improvements are being made. vcr is very close to a CRAN release.

  • webmockr now on CRAN
  • vcr close to 1st version on CRAN

Both above will right away integrate with crul - but both will integrate with other http clients later (httr, curl, RCurl, etc.)

I will use vcr heavily in test suites in probably all the API wrappers I maintain. (and vcr depends on webmockr) - should see wide adoption outside of ropensci as there's nothing like these two out there currently.

Update: taking longer to get to this than I thought - so busy with maintenance and other projects.

text mining

target date: February 2018

A few pkgs need updates, will try to organize releases to coincide + blog post:

  • fulltext - shooting for milestone v0.2 - lots of new things, demo abstract mining, full text mining, etc.
  • microdemic - new pkg to work with Microsoft Academic Search API
  • rcoreoa - new pkg to work with CORE search API - also used in OpenknowledgeMaps
  • jaod - new pkg to work with Directory of Open Access Journals API
  • crminer - new version to go out
  • rbace - new pkg to work with BASE search API - also used in OpenknowledgeMaps

biodiversity data

target date: February 2018

Continual patch releases of these are put out, but targeting a grouped single date to release new versions of a suite of these pkgs:

Completed

text processing and analysis

Lots of suggestions from the textworkshop in London for wrapping new text processing libraries and utilities.

taxonomy

taxize is our core taxonomy package that's been around for years, and is used widely. We're targeting a v1.0 release for late in 2017, but will have a pre v1 for this target release.

  • taxize
  • taxizedb - use SQL dumps of taxonomic databases locally ON CRAN
  • binomen - dplyr like interface for taxonomic data being merged with taxa
  • taxa - classes for taxonomic data - in the future to be used by all other taxonomy packages waiting on this getting to CRAN, should be very soon - co-maintiner and his PI and I writing a paper on this as well
  • wikitaxa
  • ritis

infrastructure

We are working on a new system for massively concurrent requests in curl to support high performance scarpers and crawlers. Because this is a big update, it needs a few more rounds of tweaking and testing and revision.

system infrastructure

Jeroen is working on new packages sys and unix to improve interacting with low level system from R. This will make packages that require system calls more robust and easier to develop.

  • unix
  • sys (used by e.g antiword, unrtf, etc)

geospatial

J and S are working on geojson, a pkg for geojson classes, which we can use in other packages. We can pair this release with geoops, a package to do geospatial operations without the gdal/geos stack, and a new version of geojsonio, our geojson I/O client. We could include new release of geojsonlint if appropriate. Perhaps throw in wellknown if I can get around to updating it.

devroadmap's People

Contributors

sckott avatar jeroen avatar

Stargazers

Jemma Stachelek avatar  avatar Michael Sumner avatar

Watchers

Karthik Ram avatar  avatar Carl Boettiger avatar  avatar Jennifer (Jenny) Bryan avatar James Cloos avatar Rich FitzJohn avatar  avatar Jemma Stachelek avatar  avatar

Forkers

jimsforks

devroadmap's Issues

feedback

thoughts on what we have so far? https://github.com/ropensci/devroadmap#devroadmap

@ropensci/leadership @danielskatz

the format is based sorta on the jupyter roadmap repo.

i started with 2 pkgs i know well - just as a start to dial in the format we want to use

  • anything to change about the roadmap document? be less specific / more specific, something else
  • do yo think we still need something additional to this repo?
  • i figure we don't talk here about anything in ropenscilabs account since that is by definition in beta stage pkgs

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.