Package: rpgconn 0.4.1.9000

Bobby Fatemi

rpgconn: User-Friendly PostgreSQL Connection Management

Provides a user-friendly interface for managing PostgreSQL database connection settings. Supports standard PostgreSQL URI connection strings (postgresql://user:pass@host:port/db) with query parameters, IPv6 hosts, and URL-encoded credentials. The package supplies helper functions to create, edit and load connection and option configuration files stored in a user-specific directory using the 'RPostgres' back end. These helpers make it easy to construct a reproducible connection string from a configuration file, either by reading user-defined YAML files or by parsing an environment variable. Validation-first architecture provides clear, actionable error messages instead of cryptic connection failures.

Authors:Bobby Fatemi [aut, cre]

rpgconn_0.4.1.9000.tar.gz
rpgconn_0.4.1.9000.zip(r-4.7-any)rpgconn_0.4.1.9000.zip(r-4.6-any)rpgconn_0.4.1.9000.zip(r-4.5-any)
rpgconn_0.4.1.9000.tgz(r-4.6-any)rpgconn_0.4.1.9000.tgz(r-4.5-any)
rpgconn_0.4.1.9000.tar.gz(r-4.7-any)rpgconn_0.4.1.9000.tar.gz(r-4.6-any)
rpgconn_0.4.1.9000.tgz(r-4.6-emscripten)
manual.pdf |manual.html✨
DESCRIPTION |NEWS
card.svg |card.png
rpgconn/json (API)

# Install 'rpgconn' in R:
install.packages('rpgconn', repos = c('https://r-data-science.r-universe.dev', 'https://cloud.r-project.org'))

Bug tracker:https://github.com/r-data-science/rpgconn/issues

On CRAN:

Conda:

quarto

5.48 score 2 stars 6 scripts 204 downloads 7 exports 44 dependencies

Last updated from:0231c3562b. Checks:4 OK, 5 ERROR. Indexed: yes.

TargetResultTimeFilesSyslog
linux-develOK181
source / vignettesOK199
linux-releaseOK136
macos-releaseERROR152
macos-oldrelERROR196
windows-develERROR150
windows-releaseERROR159
windows-oldrelERROR146
wasm-releaseOK107

Exports:dbcdbddir_rpgedit_configedit_optionsinit_yamlsuse_config

Dependencies:askpassbitbit64blobclicliprcpp11crayoncredentialscurlDBIdescfsgenericsgertgitcredsgluehmshttr2inijsonlitelifecyclelubridatemagrittropensslpakpkgconfigpurrrR6rappdirsrlangRPostgresrprojrootrstudioapistringistringrsystimechangeusethisvctrswhiskerwithryamlzip

Get started with rpgconn
The Problem | The rpgconn Solution | 1. Fail-Fast Validation | 2. Portable Format | 3. Secure by Default | Design Philosophy | Single Responsibility | Zero Dependencies Beyond Essentials | Progressive Enhancement | Architecture | Connection String Parsing | Validation-First Approach | URL Encoding Support | Comparison: rpgconn vs DBI::dbConnect() | Without rpgconn | With rpgconn | When NOT to Use rpgconn | Next Steps | Learn More

Last update: 2026-02-21
Started: 2025-12-26

Maintainer Guide
Audience | Repository Structure | Development Setup | Daily Development Workflow | Design Principles | Testing Principles | Optional Local Postgres E2E | Conventions

Last update: 2026-02-21
Started: 2026-02-21

Release Playbook
Pre-release Checklist | Optional Integration Confidence | Release Metadata | Website and Docs | CRAN + GitHub Release

Last update: 2026-02-21
Started: 2026-02-21

Advanced Workflow
Connection String Formats Reference | URI Format (Recommended) | Minimal | With Authentication | With Query Parameters | Keyword/Value Format | Semicolon-Delimited (Legacy) | Whitespace-Delimited (libpq Standard) | With Quoted Values | SSL/TLS Configuration | sslmode Parameter | Examples | IPv6 Hosts | URL-Encoded Credentials | When URL Encoding is Required | URL Encoding in R | Custom Configuration Paths | Per-Project Configs | Environment-Based Config Selection | Separating Secrets from Config | Environment-Specific Configurations | Pattern 1: Single Config, Multiple Entries | Pattern 2: Multiple Config Files | Pattern 3: Environment Variable Override | Multiple Databases | Sequential Connections | Concurrent Connections (Advanced) | Troubleshooting | Error: "RPG_CONN_STRING not set" | Error: "Connection string must include a '/{database}' segment" | Error: "Connection string must not contain whitespace" | Error: "Port in connection string is not a valid integer" | Connection Timeout | SSL/TLS Issues | Performance Tips | Connection Reuse | Connection Pooling | Security Best Practices | Never Commit Secrets | Separate Dev and Prod Configs | Use Read-Only Credentials for Analytics | Environment Variable Precedence | Advanced Query Parameters | Runtime Configuration | Application Name | Statement Timeout | Testing Strategies | Pattern 1: Test-Specific Environment | Pattern 2: Shared Test Fixtures | Pattern 3: Mock Connections | CI/CD Integration | GitHub Actions | Docker Compose | Package Development Using rpgconn | In Your Package | In Package Tests | Learn More

Last update: 2025-12-26
Started: 2025-12-26

Quickstart
Installation | Choose Your Setup Path | Cloud Database Setup | Step 1: Get Your Connection String | Step 2: Set Environment Variable | Step 3: Connect | Local Database Setup | Prerequisites | Step 1: Create Database and User | Step 2: Build Connection String | Step 3: Connect and Test | YAML Configuration Setup | Step 1: Initialize Config Files | Step 2: Edit Configuration | Step 3: Connect Using Named Config | Step 4: Optional - Customize Connection Options | Common Workflows | Workflow 1: Quick Query | Workflow 2: Long-Running Script | Workflow 3: Shiny App | Workflow 4: Testing with Fixtures | Debugging Connection Issues | Check Connection String is Set | Preview Connection Arguments Without Connecting | Test Raw DBI Connection | Next Steps | Need Help?

Last update: 2025-12-26
Started: 2025-12-26

Readme and manuals

Help Manual

Help pageTopics
PostgreSQL Database Connection Managementdbc dbd dir_rpg edit_config edit_options init_yamls pgdbconn
Adopt External Configuration Fileuse_config