x <- tools::CRAN_package_db()
a <- lapply(x[["Authors@R"]],
            function(a) {
                if(!is.na(a)) {
                    a <- tryCatch(utils:::.read_authors_at_R_field(a), 
                                  error = identity)
                    if (inherits(a, "person")) 
                        return(a)
                }
                NULL
            })
a <- do.call(c, a)
a <- lapply(a,
            function(e) {
                if(is.null(o <- e$comment["ORCID"]) || is.na(o))
                    return(NULL)
                cbind(given = paste(e$given, collapse = " "),
                      family = paste(e$family, collapse = " "),
                      oid = unname(tools:::.ORCID_iD_canonicalize(o)))
            })
a <- unique(as.data.frame(do.call(rbind, a)))

