From df8f0060bfc58e80f304ff57da6604fdf8054548 Mon Sep 17 00:00:00 2001 From: tanner0101 <me@tanner.xyz> Date: Sat, 13 Jun 2020 01:24:50 -0400 Subject: [PATCH 1/5] 2.0.0 release --- .github/workflows/test.yml | 6 +++--- Package.swift | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 737edb9..df79dae 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -31,11 +31,11 @@ jobs: - postgres:12 - postgres:13 include: - - depscmd: 'apt-get -q update && apt-get -q install -y postgresql-client' + - depscmd: apt-get -q update && apt-get -q install -y postgresql-client - image: swiftlang/swift:nightly-master-centos8 - depscmd: 'dnf install -y postgresql' + depscmd: dnf install -y postgresql - image: swiftlang/swift:nightly-master-amazonlinux2 - depscmd: 'yum install -y postgresql' + depscmd: yum install -y postgresql container: ${{ matrix.image }} services: postgres-a: diff --git a/Package.swift b/Package.swift index 7bd75a1..ad601db 100644 --- a/Package.swift +++ b/Package.swift @@ -10,7 +10,7 @@ let package = Package( .library(name: "FluentPostgresDriver", targets: ["FluentPostgresDriver"]), ], dependencies: [ - .package(url: "https://github.com/vapor/fluent-kit.git", from: "1.0.0-rc.2.7"), + .package(url: "https://github.com/vapor/fluent-kit.git", from: "1.0.0"), .package(url: "https://github.com/vapor/postgres-kit.git", from: "2.0.0"), ], targets: [ From 5caf5a162ba369179ce69725411ba6eae5c912bb Mon Sep 17 00:00:00 2001 From: tanner0101 <me@tanner.xyz> Date: Sat, 13 Jun 2020 01:27:18 -0400 Subject: [PATCH 2/5] ci updates --- .github/workflows/test.yml | 28 ++++++++++------------------ 1 file changed, 10 insertions(+), 18 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index df79dae..7a36c01 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -30,39 +30,30 @@ jobs: - postgres:11 - postgres:12 - postgres:13 - include: - - depscmd: apt-get -q update && apt-get -q install -y postgresql-client - - image: swiftlang/swift:nightly-master-centos8 - depscmd: dnf install -y postgresql - - image: swiftlang/swift:nightly-master-amazonlinux2 - depscmd: yum install -y postgresql container: ${{ matrix.image }} services: postgres-a: image: ${{ matrix.dbimage }} - env: { POSTGRES_USER: vapor_username, POSTGRES_PASSWORD: vapor_password, POSTGRES_DB: vapor_database } + env: + POSTGRES_USER: vapor_username + POSTGRES_PASSWORD: vapor_password + POSTGRES_DB: vapor_database postgres-b: image: ${{ matrix.dbimage }} - env: { POSTGRES_USER: vapor_username, POSTGRES_PASSWORD: vapor_password, POSTGRES_DB: vapor_database } + env: + POSTGRES_USER: vapor_username + POSTGRES_PASSWORD: vapor_password + POSTGRES_DB: vapor_database env: POSTGRES_HOSTNAME_A: postgres-a POSTGRES_HOSTNAME_B: postgres-b PGUSER: vapor_username PGPASSWORD: vapor_password steps: - - name: Install dependencies - run: ${{ matrix.depscmd }} - - name: Compensate for AmazonLinux2's Postgres - if: ${{ endsWith(matrix.image, 'amazonlinux2') }} - run: printf '#!/bin/bash\nexec psql "$@" </dev/null\n' >/usr/bin/pg_isready && chmod 0755 /usr/bin/pg_isready - - name: Wait for database servers to be ready - run: until pg_isready -hpostgres-a -dvapor_database && pg_isready -hpostgres-b -dvapor_database; do sleep 1; done - timeout-minutes: 2 - name: Checkout code uses: actions/checkout@v2 - name: Run tests with Thread Sanitizer run: swift test --enable-test-discovery --sanitize=thread - macOS: strategy: fail-fast: false @@ -79,7 +70,8 @@ jobs: steps: - name: Select latest available Xcode uses: maxim-lobanov/setup-xcode@1.0 - with: { 'xcode-version': 'latest' } + with: + xcode-version: latest - name: Replace Postgres install and start server run: | brew uninstall --force postgresql php && rm -rf /usr/local/{etc,var}/{postgres,pg}* From 12611516010920e692539297583a39ae18642069 Mon Sep 17 00:00:00 2001 From: tanner0101 <me@tanner.xyz> Date: Sat, 13 Jun 2020 01:35:51 -0400 Subject: [PATCH 3/5] update github docs --- .github/FUNDING.yml | 2 +- CONTRIBUTING.md | 33 +++++++++++++++++++++------------ contribute_boostrap.sh | 8 -------- docker-compose.yml | 25 ++++--------------------- 4 files changed, 26 insertions(+), 42 deletions(-) delete mode 100755 contribute_boostrap.sh diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index 0a22eec..b67cb67 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -1,2 +1,2 @@ -github: [tanner0101] # loganwright, joscdk +github: [tanner0101] open_collective: vapor diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e8159e2..849dbe1 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,27 +1,36 @@ -# Contributing to Fluent PostgreSQL +# Contributing to Fluent's PostgreSQL Driver 👋 Welcome to the Vapor team! -## Bootstrap +## Docker -To prepare your computer for developing this package, you can run the bootstrap script. +In order to build and test against Postgres, you will need a database running. The easiest way to do this is using Docker and the included `docker-compose.yml` file. + +If you have Docker installed on your computer, all you will need to do is: ```sh -./contribute_boostrap.sh +docker-compose up ``` -This script will start up a PostgreSQL docker container to test against. It will also generate and open Xcode for you. +This will start the two databases required for running this package's unit tests. + +## Xcode + +To open the project in Xcode: -Be careful to observe the script's output, it may have errors or ask you to do additional steps manually. +- Clone the repo to your computer +- Drag and drop the folder onto Xcode -## Testing +To test within Xcode, press `CMD+U`. -Once in Xcode, select the `FluentPostgreSQL-Package` scheme and use `CMD+U` to run the tests. +## SPM -Please add tests to cover bug fixes and new features. +To develop using SPM, open the code in your favorite code editor. Use the following commands from within the project's root folder to build and test. -If you are fixing a single GitHub issue in particular, you can add a test named `testGH<issue number>` to ensure -that your fix is working. This will also help prevent regression. +```sh +swift build +swift test +``` ## SemVer @@ -32,6 +41,6 @@ Code that is only additive and will not break any existing code can be included ---------- -Join us on Slack if you have any questions: [http://vapor.team](http://vapor.team). +Join us on Discord if you have any questions: [vapor.team](http://vapor.team). — Thanks! 🙌 diff --git a/contribute_boostrap.sh b/contribute_boostrap.sh deleted file mode 100755 index 2ee0796..0000000 --- a/contribute_boostrap.sh +++ /dev/null @@ -1,8 +0,0 @@ -echo "💧 generating xcode proj..." -swift package generate-xcodeproj - -echo "💧 opening xcode..." -open *.xcodeproj - -echo "💧 starting docker..." -docker-compose up psql-10 diff --git a/docker-compose.yml b/docker-compose.yml index c53cceb..13b7a21 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,36 +1,19 @@ version: '3' services: - psql-11-a: - image: postgres:11 + a: + image: postgres environment: POSTGRES_USER: vapor_username POSTGRES_DB: vapor_database POSTGRES_PASSWORD: vapor_password ports: - 5432:5432 - psql-11-b: - image: postgres:11 + b: + image: postgres environment: POSTGRES_USER: vapor_username POSTGRES_DB: vapor_database POSTGRES_PASSWORD: vapor_password ports: - 5433:5432 - psql-10: - image: postgres:10 - environment: - POSTGRES_USER: vapor_username - POSTGRES_DB: vapor_database - POSTGRES_PASSWORD: vapor_password - ports: - - 5432:5432 - psql-9: - image: postgres:9 - environment: - POSTGRES_USER: vapor_username - POSTGRES_DB: vapor_database - POSTGRES_PASSWORD: vapor_password - ports: - - 5432:5432 - From afea9023f0e9266d36a7ef98ee50c85603aff60e Mon Sep 17 00:00:00 2001 From: tanner0101 <me@tanner.xyz> Date: Sat, 13 Jun 2020 01:37:07 -0400 Subject: [PATCH 4/5] move contributing --- CONTRIBUTING.md => .github/CONTRIBUTING.md | 0 test.Dockerfile | 7 ------- 2 files changed, 7 deletions(-) rename CONTRIBUTING.md => .github/CONTRIBUTING.md (100%) delete mode 100644 test.Dockerfile diff --git a/CONTRIBUTING.md b/.github/CONTRIBUTING.md similarity index 100% rename from CONTRIBUTING.md rename to .github/CONTRIBUTING.md diff --git a/test.Dockerfile b/test.Dockerfile deleted file mode 100644 index 30c8ea0..0000000 --- a/test.Dockerfile +++ /dev/null @@ -1,7 +0,0 @@ -FROM swift -COPY ./Sources Sources -COPY ./Tests Tests -COPY ./Package.swift Package.swift -RUN swift package update -RUN swift package edit Core --revision fluent-gm -CMD swift test From 42419b0d02e1d14d189fccae094dc0ef4b6d1e30 Mon Sep 17 00:00:00 2001 From: tanner0101 <me@tanner.xyz> Date: Sat, 13 Jun 2020 01:44:37 -0400 Subject: [PATCH 5/5] fix log level --- .github/workflows/test.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 7a36c01..882a93c 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -47,8 +47,7 @@ jobs: env: POSTGRES_HOSTNAME_A: postgres-a POSTGRES_HOSTNAME_B: postgres-b - PGUSER: vapor_username - PGPASSWORD: vapor_password + LOG_LEVEL: info steps: - name: Checkout code uses: actions/checkout@v2