Conversation
859333e to
9012077
Compare
brandur
added a commit
to riverqueue/riverqueue-ruby-sequel
that referenced
this pull request
Nov 20, 2023
Related to main `riverqueue` gem's push in [1], this one provides a driver implementation for the Sequel gem. This is a similar concept to use the use of `riverpgxv5` in the main Go package -- it breaks up implementations for specific database packages into separate gems so that projects using River don't have include every third party database framework under the sun. I'll also be writing one for ActiveRecord. Like with [1], functionality for unique jobs and batch inserts is currently missing, to be added on a follow up release. [1] riverqueue/riverqueue-ruby#1
brandur
added a commit
to riverqueue/riverqueue-ruby-sequel
that referenced
this pull request
Nov 20, 2023
Related to main `riverqueue` gem's push in [1], this one provides a driver implementation for the Sequel gem. This is a similar concept to use the use of `riverpgxv5` in the main Go package -- it breaks up implementations for specific database packages into separate gems so that projects using River don't have include every third party database framework under the sun. I'll also be writing one for ActiveRecord. Like with [1], functionality for unique jobs and batch inserts is currently missing, to be added on a follow up release. [1] riverqueue/riverqueue-ruby#1
9012077 to
6ebdab4
Compare
Contributor
Author
|
Usage instructions in README: |
6ebdab4 to
46b2985
Compare
brandur
added a commit
to riverqueue/riverqueue-ruby-sequel
that referenced
this pull request
Nov 20, 2023
Related to main `riverqueue` gem's push in [1], this one provides a driver implementation for the Sequel gem. This is a similar concept to use the use of `riverpgxv5` in the main Go package -- it breaks up implementations for specific database packages into separate gems so that projects using River don't have include every third party database framework under the sun. I'll also be writing one for ActiveRecord. Like with [1], functionality for unique jobs and batch inserts is currently missing, to be added on a follow up release. [1] riverqueue/riverqueue-ruby#1
brandur
added a commit
to riverqueue/riverqueue-ruby-sequel
that referenced
this pull request
Nov 26, 2023
Related to main `riverqueue` gem's push in [1], this one provides a driver implementation for the Sequel gem. This is a similar concept to use the use of `riverpgxv5` in the main Go package -- it breaks up implementations for specific database packages into separate gems so that projects using River don't have include every third party database framework under the sun. I'll also be writing one for ActiveRecord. Like with [1], functionality for unique jobs and batch inserts is currently missing, to be added on a follow up release. [1] riverqueue/riverqueue-ruby#1
46b2985 to
dce999d
Compare
brandur
added a commit
to riverqueue/riverqueue-ruby-sequel
that referenced
this pull request
Nov 26, 2023
Related to main `riverqueue` gem's push in [1], this one provides a driver implementation for the Sequel gem. This is a similar concept to use the use of `riverpgxv5` in the main Go package -- it breaks up implementations for specific database packages into separate gems so that projects using River don't have include every third party database framework under the sun. I'll also be writing one for ActiveRecord. Like with [1], functionality for unique jobs and batch inserts is currently missing, to be added on a follow up release. [1] riverqueue/riverqueue-ruby#1
dce999d to
eefeaa0
Compare
91b9ec4 to
95daf75
Compare
brandur
added a commit
to riverqueue/riverqueue-ruby-sequel
that referenced
this pull request
Mar 2, 2024
Related to main `riverqueue` gem's push in [1], this one provides a driver implementation for the Sequel gem. This is a similar concept to use the use of `riverpgxv5` in the main Go package -- it breaks up implementations for specific database packages into separate gems so that projects using River don't have include every third party database framework under the sun. I'll also be writing one for ActiveRecord. Like with [1], functionality for unique jobs and batch inserts is currently missing, to be added on a follow up release. [1] riverqueue/riverqueue-ruby#1
8e9e46f to
8d02904
Compare
brandur
added a commit
to riverqueue/riverqueue-ruby-sequel
that referenced
this pull request
Mar 2, 2024
Related to main `riverqueue` gem's push in [1], this one provides a driver implementation for the Sequel gem. This is a similar concept to use the use of `riverpgxv5` in the main Go package -- it breaks up implementations for specific database packages into separate gems so that projects using River don't have include every third party database framework under the sun. I'll also be writing one for ActiveRecord. Like with [1], functionality for unique jobs and batch inserts is currently missing, to be added on a follow up release. [1] riverqueue/riverqueue-ruby#1
8d02904 to
72d8f66
Compare
brandur
added a commit
to riverqueue/riverqueue-ruby-sequel
that referenced
this pull request
Mar 2, 2024
Related to main `riverqueue` gem's push in [1], this one provides a driver implementation for the Sequel gem. This is a similar concept to use the use of `riverpgxv5` in the main Go package -- it breaks up implementations for specific database packages into separate gems so that projects using River don't have include every third party database framework under the sun. I'll also be writing one for ActiveRecord. Like with [1], functionality for unique jobs and batch inserts is currently missing, to be added on a follow up release. [1] riverqueue/riverqueue-ruby#1
brandur
added a commit
to riverqueue/riverqueue-ruby-sequel
that referenced
this pull request
Mar 2, 2024
Related to main `riverqueue` gem's push in [1], this one provides a driver implementation for the Sequel gem. This is a similar concept to use the use of `riverpgxv5` in the main Go package -- it breaks up implementations for specific database packages into separate gems so that projects using River don't have include every third party database framework under the sun. I'll also be writing one for ActiveRecord. Like with [1], functionality for unique jobs and batch inserts is currently missing, to be added on a follow up release. [1] riverqueue/riverqueue-ruby#1
72d8f66 to
3936213
Compare
brandur
added a commit
to riverqueue/riverqueue-ruby-sequel
that referenced
this pull request
Mar 4, 2024
Related to main `riverqueue` gem's push in [1], this one provides a driver implementation for the Sequel gem. This is a similar concept to use the use of `riverpgxv5` in the main Go package -- it breaks up implementations for specific database packages into separate gems so that projects using River don't have include every third party database framework under the sun. I'll also be writing one for ActiveRecord. Like with [1], functionality for unique jobs and batch inserts is currently missing, to be added on a follow up release. [1] riverqueue/riverqueue-ruby#1
3936213 to
bd4a615
Compare
brandur
added a commit
to riverqueue/riverqueue-ruby-sequel
that referenced
this pull request
Mar 5, 2024
Related to main `riverqueue` gem's push in [1], this one provides a driver implementation for the Sequel gem. This is a similar concept to use the use of `riverpgxv5` in the main Go package -- it breaks up implementations for specific database packages into separate gems so that projects using River don't have include every third party database framework under the sun. I'll also be writing one for ActiveRecord. Like with [1], functionality for unique jobs and batch inserts is currently missing, to be added on a follow up release. [1] riverqueue/riverqueue-ruby#1
3491113 to
e25d151
Compare
Contributor
Author
|
So actually, I ended up just moving both the ActiveRecord and Sequel drivers into this main repo. This'll keep changes easier to make in the future since everything will be in one place. |
brandur
added a commit
to riverqueue/riverqueue-ruby-sequel
that referenced
this pull request
Mar 6, 2024
Add a note to the README to indicate that drivers are migrating to a subdirectory in the main GitHub repository: riverqueue/riverqueue-ruby#1
brandur
added a commit
to riverqueue/riverqueue-ruby-sequel
that referenced
this pull request
Mar 6, 2024
Add a note to the README to indicate that drivers are migrating to a subdirectory in the main GitHub repository: riverqueue/riverqueue-ruby#1
020d4a1 to
f96c103
Compare
A first push of Ruby bindings for River, providing insert-only client to work jobs that are implemented in Go. Includes two initial drivers in the `drivers/` directory, one for ActiveRecord and one for Sequel, which should cover the vast majority of Ruby applications making use of Postgres. The drivers are kept in the main gem's GitHub repository for convenience, but ship as separate gems so that programs including them can minimize their dependencies. Overall, I'm happy at how close I was able to keep the API to the Go version. A lot of syntax in Go just isn't needed due to the more dynamic and implicit nature of Ruby, but the parts that came through are quite close. e.g. We have a job args concept, along with `InsertOpts` that can be added to both jobs and at insert time, just like Go. Purposely not implemented on this first push (I'll follow up with these later on): * Unique jobs. * Batch insert. Try to maintain high Ruby quality standards with: * Full spec suite that requires 100.0% branch coverage. * Use standardrb for lint. * Include RBS files with type and run Steep against the project to verify correctness.
f96c103 to
4eba885
Compare
brandur
added a commit
that referenced
this pull request
Apr 26, 2024
Update various files to prepare for release 0.1.0, containing the initial implementation from #1.
brandur
added a commit
that referenced
this pull request
Apr 26, 2024
Update various files to prepare for release 0.1.0, containing the initial implementation from #1.
Merged
brandur
added a commit
that referenced
this pull request
Apr 26, 2024
Update various files to prepare for release 0.1.0, containing the initial implementation from #1.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A first push of Ruby bindings for River, providing insert-only client
to work jobs that are implemented in Go.
Includes two initial drivers in the
drivers/directory, one forActiveRecord and one for Sequel, which should cover the vast majority of
Ruby applications making use of Postgres. The drivers are kept in the
main gem's GitHub repository for convenience, but ship as separate gems
so that programs including them can minimize their dependencies.
Overall, I'm happy at how close I was able to keep the API to the Go
version. A lot of syntax in Go just isn't needed due to the more dynamic
and implicit nature of Ruby, but the parts that came through are quite
close. e.g. We have a job args concept, along with
InsertOptsthat canbe added to both jobs and at insert time, just like Go.
Purposely not implemented on this first push (I'll follow up with these
later on):
Try to maintain high Ruby quality standards with:
verify correctness.