Skip to content

Commit

Permalink
Merge pull request #104 from StevenMMortimer/dev
Browse files Browse the repository at this point in the history
[Release v1.0.0] Merge dev into main
  • Loading branch information
StevenMMortimer authored Jul 7, 2021
2 parents 7751e6c + c14b2be commit aef7aee
Show file tree
Hide file tree
Showing 589 changed files with 7,194 additions and 5,082 deletions.
10 changes: 8 additions & 2 deletions .github/workflows/main-01-pkgdown.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,12 @@
name: Build pkgdown site

on:
workflow_dispatch:
inputs:
trigger_next:
description: 'Whether to run the subsequent workflows after triggering this one manully.'
required: false
default: false
push:
branches: main

Expand Down Expand Up @@ -74,7 +80,7 @@ jobs:
Rscript -e 'pkgdown::deploy_to_branch(new_process = FALSE)'
- name: Trigger next workflow
if: success()
if: ${{ (github.event_name != 'workflow_dispatch' && success()) || (github.event_name == 'workflow_dispatch' && github.event.inputs.trigger_next && success()) }}
uses: peter-evans/repository-dispatch@v1
with:
token: ${{ secrets.REPO_GHA_PAT }}
Expand All @@ -83,7 +89,7 @@ jobs:
client-payload: '{"ref": "${{ github.ref }}", "sha": "${{ github.sha }}"}'

- name: Set final R-CMD-check status
if: failure()
if: ${{ (github.event_name != 'workflow_dispatch' && failure()) }}
uses: peter-evans/repository-dispatch@v1
with:
token: ${{ secrets.REPO_GHA_PAT }}
Expand Down
14 changes: 10 additions & 4 deletions .github/workflows/main-02-test-coverage.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,17 @@
name: Test coverage

on:
workflow_dispatch:
inputs:
trigger_next:
description: 'Whether to run the subsequent workflows after triggering this one manully.'
required: false
default: false
repository_dispatch:
types: [main-02-test-coverage]
schedule:
# Execute monthly at 9AM UTC (5AM EDT (during daylight savings), otherwise 4AM)
- cron: '0 9 1 * *'
# Execute monthly at 9AM UTC (5AM ET during daylight savings, otherwise 4AM)
- cron: '0 9 1 * *'

jobs:
test-coverage:
Expand Down Expand Up @@ -72,7 +78,7 @@ jobs:
shell: Rscript {0}

- name: Trigger next workflow
if: success()
if: ${{ (github.event_name != 'workflow_dispatch' && success()) || (github.event_name == 'workflow_dispatch' && github.event.inputs.trigger_next && success()) }}
uses: peter-evans/repository-dispatch@v1
with:
token: ${{ secrets.REPO_GHA_PAT }}
Expand All @@ -81,7 +87,7 @@ jobs:
client-payload: '{"ref": "${{ github.ref }}", "sha": "${{ github.sha }}"}'

- name: Set final R-CMD-check status
if: failure()
if: ${{ (github.event_name != 'workflow_dispatch' && failure()) }}
uses: peter-evans/repository-dispatch@v1
with:
token: ${{ secrets.REPO_GHA_PAT }}
Expand Down
10 changes: 8 additions & 2 deletions .github/workflows/main-03-R-CMD-check-mac.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,12 @@
name: R-CMD-check on Mac

on:
workflow_dispatch:
inputs:
trigger_next:
description: 'Whether to run the subsequent workflows after triggering this one manully.'
required: false
default: false
repository_dispatch:
types: [main-03-R-CMD-check-mac]

Expand Down Expand Up @@ -92,7 +98,7 @@ jobs:
path: check

- name: Trigger next workflow
if: success()
if: ${{ (github.event_name != 'workflow_dispatch' && success()) || (github.event_name == 'workflow_dispatch' && github.event.inputs.trigger_next && success()) }}
uses: peter-evans/repository-dispatch@v1
with:
token: ${{ secrets.REPO_GHA_PAT }}
Expand All @@ -101,7 +107,7 @@ jobs:
client-payload: '{"ref": "${{ github.ref }}", "sha": "${{ github.sha }}"}'

- name: Set final R-CMD-check status
if: failure()
if: ${{ (github.event_name != 'workflow_dispatch' && failure()) }}
uses: peter-evans/repository-dispatch@v1
with:
token: ${{ secrets.REPO_GHA_PAT }}
Expand Down
10 changes: 8 additions & 2 deletions .github/workflows/main-04-R-CMD-check-windows.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,12 @@
name: R-CMD-check on Windows

on:
workflow_dispatch:
inputs:
trigger_next:
description: 'Whether to run the subsequent workflows after triggering this one manully.'
required: false
default: false
repository_dispatch:
types: [main-04-R-CMD-check-windows]

Expand Down Expand Up @@ -92,7 +98,7 @@ jobs:
path: check

- name: Trigger next workflow
if: success()
if: ${{ (github.event_name != 'workflow_dispatch' && success()) || (github.event_name == 'workflow_dispatch' && github.event.inputs.trigger_next && success()) }}
uses: peter-evans/repository-dispatch@v1
with:
token: ${{ secrets.REPO_GHA_PAT }}
Expand All @@ -101,7 +107,7 @@ jobs:
client-payload: '{"ref": "${{ github.ref }}", "sha": "${{ github.sha }}"}'

- name: Set final R-CMD-check status
if: failure()
if: ${{ (github.event_name != 'workflow_dispatch' && failure()) }}
uses: peter-evans/repository-dispatch@v1
with:
token: ${{ secrets.REPO_GHA_PAT }}
Expand Down
8 changes: 7 additions & 1 deletion .github/workflows/main-05-R-CMD-check-linux.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,12 @@
name: R-CMD-check on Linux

on:
workflow_dispatch:
inputs:
trigger_next:
description: 'Whether to run the subsequent workflows after triggering this one manully.'
required: false
default: false
repository_dispatch:
types: [main-05-R-CMD-check-linux]

Expand Down Expand Up @@ -92,7 +98,7 @@ jobs:
path: check

- name: Set final R-CMD-check status
if: always()
if: ${{ (github.event_name != 'workflow_dispatch') || (github.event_name == 'workflow_dispatch' && github.event.inputs.trigger_next) }}
uses: peter-evans/repository-dispatch@v1
with:
token: ${{ secrets.REPO_GHA_PAT }}
Expand Down
9 changes: 8 additions & 1 deletion .github/workflows/main-06-R-CMD-check-final.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,12 @@
name: R-CMD-check

on:
workflow_dispatch:
inputs:
force_failure:
description: 'A backdoor trigger to force the final R CMD Check status to failed.'
required: true
default: false
repository_dispatch:
types: [main-06-R-CMD-check-final]

Expand All @@ -12,5 +18,6 @@ jobs:
steps:

- name: Convey final status of all R-CMD-check workflows
if: ${{ !github.event.client_payload.success }}
if: ${{ (github.event_name != 'workflow_dispatch' && !github.event.client_payload.success) || (github.event_name == 'workflow_dispatch' && github.event.inputs.force_failure) }}
run: exit 1

5 changes: 3 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@

# produced vignettes
vignettes/*.html
vignettes/*.md
vignettes/*.pdf
vignettes/*.R

Expand All @@ -41,8 +42,8 @@ salesforcer.tar
.DS_Store

# Folders created by vignette builds
doc/
Meta/
/doc/
/Meta/

# Files created by tests
*.pdf
Expand Down
37 changes: 23 additions & 14 deletions DESCRIPTION
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Package: salesforcer
Title: An Implementation of 'Salesforce' APIs Using Tidy Principles
Version: 0.2.2.9000
Date: 2020-09-12
Version: 1.0.0
Date: 2021-07-04
Description: Functions connecting to the 'Salesforce' Platform APIs (REST, SOAP,
Bulk 1.0, Bulk 2.0, Metadata, Reports and Dashboards)
<https://trailhead.salesforce.com/en/content/learn/modules/api_basics/api_basics_overview>.
Expand All @@ -11,12 +11,23 @@ Description: Functions connecting to the 'Salesforce' Platform APIs (REST, SOAP,
API documentation and this package's website
<https://stevenmmortimer.github.io/salesforcer/> for more information,
documentation, and examples.
Authors@R: c(
person(c("Steven", "M."), "Mortimer", , "[email protected]", c("aut", "cre")),
person("Takekatsu", "Hiramura", , "[email protected]", c("ctb")),
person("Jennifer", "Bryan", , "[email protected]", c("ctb", "cph")),
person("Joanna", "Zhao", , "[email protected]", c("ctb", "cph"))
)
Authors@R:
c(person(given = c("Steven", "M."),
family = "Mortimer",
role = c("aut", "cre"),
email = "[email protected]"),
person(given = "Takekatsu",
family = "Hiramura",
role = "ctb",
email = "[email protected]"),
person(given = "Jennifer",
family = "Bryan",
role = c("ctb", "cph"),
email = "[email protected]"),
person(given = "Joanna",
family = "Zhao",
role = c("ctb", "cph"),
email = "[email protected]"))
License: MIT + file LICENSE
URL: https://github.com/StevenMMortimer/salesforcer
BugReports: https://github.com/StevenMMortimer/salesforcer/issues
Expand All @@ -32,6 +43,7 @@ Imports:
tibble (>= 3.0.3),
readr (>= 1.3.1),
lubridate (>= 1.7.8),
anytime (>= 0.3.9),
rlang (>= 0.4.7),
httr (>= 1.4.1),
curl (>= 4.3),
Expand All @@ -46,19 +58,16 @@ Imports:
lifecycle (>= 0.2.0)
Suggests:
knitr,
rmarkdown,
testthat,
spelling,
rmarkdown,
here,
microbenchmark,
ggplot2,
sessioninfo,
RForcecom
VignetteBuilder:
knitr
sessioninfo
VignetteBuilder: knitr
ByteCompile: true
Encoding: UTF-8
Language: en-US
LazyData: true
Roxygen: list(markdown = TRUE)
RoxygenNote: 7.1.1
12 changes: 12 additions & 0 deletions NAMESPACE
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ export(build_proxy)
export(build_soap_xml_from_list)
export(catch_errors)
export(catch_unknown_api)
export(check_and_encode_files)
export(collapse_list_with_dupe_names)
export(combine_parent_and_child_resultsets)
export(compact2)
Expand All @@ -38,6 +39,7 @@ export(format_headers_for_verbose)
export(format_report_row)
export(get_os)
export(guess_object_name_from_soql)
export(is_legit_token)
export(list_extract_parent_and_child_result)
export(make_analytics_folder_child_operations_url)
export(make_analytics_folder_collections_url)
Expand Down Expand Up @@ -151,6 +153,8 @@ export(sf_create)
export(sf_create_attachment)
export(sf_create_batches_bulk)
export(sf_create_job_bulk)
export(sf_create_job_bulk_v1)
export(sf_create_job_bulk_v2)
export(sf_create_metadata)
export(sf_create_report)
export(sf_dashboard_components_describe)
Expand Down Expand Up @@ -184,6 +188,7 @@ export(sf_find_duplicates)
export(sf_find_duplicates_by_id)
export(sf_format_date)
export(sf_format_datetime)
export(sf_format_time)
export(sf_get_all_jobs_bulk)
export(sf_get_all_query_jobs_bulk)
export(sf_get_dashboard_data)
Expand Down Expand Up @@ -282,6 +287,8 @@ importFrom(XML,xmlSApply)
importFrom(XML,xmlSize)
importFrom(XML,xmlToList)
importFrom(XML,xmlValue)
importFrom(anytime,anydate)
importFrom(anytime,anytime)
importFrom(base64enc,base64encode)
importFrom(curl,form_data)
importFrom(curl,form_file)
Expand All @@ -308,7 +315,11 @@ importFrom(dplyr,rename_at)
importFrom(dplyr,rename_with)
importFrom(dplyr,select)
importFrom(dplyr,tibble)
importFrom(httr,DELETE)
importFrom(httr,GET)
importFrom(httr,PATCH)
importFrom(httr,POST)
importFrom(httr,PUT)
importFrom(httr,RETRY)
importFrom(httr,add_headers)
importFrom(httr,build_url)
Expand Down Expand Up @@ -359,6 +370,7 @@ importFrom(purrr,transpose)
importFrom(readr,col_character)
importFrom(readr,col_guess)
importFrom(readr,cols)
importFrom(readr,locale)
importFrom(readr,parse_datetime)
importFrom(readr,read_csv)
importFrom(readr,type_convert)
Expand Down
43 changes: 39 additions & 4 deletions NEWS.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,51 @@
## salesforcer 0.2.2.9000
## salesforcer 1.0.0 [release](https://github.com/StevenMMortimer/salesforcer/releases/tag/v1.0.0)

### Dependencies

* None yet.
* Increase the package's default Salesforce API version to 52.0 (Summer '21).

* Remove uses of {RForcecom} after it was archived on CRAN on 6/8/2021 (#101)

* Remove LazyData option in DESCRIPTION since `data()` is not utilized

* Deprecate argument in `sf_write_csv()` from `path` to `file` as was done in
{readr} v1.4.0.

* Deprecate argument `bind_using_character_cols` because we will always need
to bind as character and then parse if `guess_types=TRUE`. Per comments in
tidyverse/readr#588 and tidyverse/readr#98, we must read all of the data as
character first and then use `type_convert()` to ensure that we use all values
in the column to guess the type. The default for `read_csv()` is to only use
the first 1,000 rows and its `guess_max` argument cannot be set to `Inf`.

* Change lifecycle status from "Maturing" to "Status" per the retirement of
"Maturing" in the {lifecycle} package. The documentation notes:

> Previously we used as maturing for functions that lay somewhere between experimental and stable. We stopped using this stage because, like questioning, it’s not clear what actionable information this stage delivers.
In addition, the lifecycle guidance states that experimental packages have
version numbers less than 1.0.0 and may have major changes in its future.
The {salesforcer} package has achieved a stable state with core
functionality implemented and a focus on backwards compatibility due to the
volume of users.

### Features

* None yet.
* Improve documentation to retrieve the access token or session ID after
authentication (#97)

* Improve parsing of Bulk API query recordsets from CSV where all values
in the column will be used to guess the type instead of the first 1000.

### Bug fixes

* None yet.
* Generalize the date and datetime parsing mechanism, such that, reports with
date and datetime fields are not returned as NA (#93)

* Fix the format of the `OwnerChangeOptions` header so it is accepted (#94)

* Fix bug that caused Bulk 2.0 calls to crash when the results had datetime
fields in the recordset (#95)

---

Expand Down
Loading

0 comments on commit aef7aee

Please sign in to comment.