{"id":24545102,"url":"https://github.com/gekomad/doobie-recipes","last_synced_at":"2025-07-05T00:05:29.057Z","repository":{"id":95417655,"uuid":"154669259","full_name":"gekomad/doobie-recipes","owner":"gekomad","description":"Doobie recipes","archived":false,"fork":false,"pushed_at":"2024-01-12T08:03:49.000Z","size":101,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-16T09:15:02.013Z","etag":null,"topics":["csv","doobie","examples","scala","sql"],"latest_commit_sha":null,"homepage":"","language":"Scala","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gekomad.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2018-10-25T12:44:36.000Z","updated_at":"2024-02-06T15:24:12.000Z","dependencies_parsed_at":"2023-03-13T16:49:43.315Z","dependency_job_id":null,"html_url":"https://github.com/gekomad/doobie-recipes","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/gekomad/doobie-recipes","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gekomad%2Fdoobie-recipes","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gekomad%2Fdoobie-recipes/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gekomad%2Fdoobie-recipes/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gekomad%2Fdoobie-recipes/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gekomad","download_url":"https://codeload.github.com/gekomad/doobie-recipes/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gekomad%2Fdoobie-recipes/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263636791,"owners_count":23492304,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["csv","doobie","examples","scala","sql"],"created_at":"2025-01-22T21:17:56.084Z","updated_at":"2025-07-05T00:05:29.031Z","avatar_url":"https://github.com/gekomad.png","language":"Scala","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Doobie recipes v.0.13 and v.1\n  \n\u003ctable\u003e      \n\u003ctd align=\"left\"\u003e  \n\u003ca href=\"https://tpolecat.github.io/doobie/docs/01-Introduction.html\"\u003e      \n    \u003cimg src=\"https://cdn.rawgit.com/tpolecat/doobie/series/0.5.x/doobie_logo.svg\" width=\"90\"\u003e\n\u003c/a\u003e  \n\u003c/td\u003e      \n\u003c/table\u003e\n\n### Run test on local PostgreSQL\n\n```\ncd doobie_1 or doobie_0.13\n$ curl -O https://raw.githubusercontent.com/tpolecat/doobie/series/0.7.x/world.sql\n$ psql -c 'create user postgres createdb'\n$ psql -c 'create database world;' -U postgres\n$ psql -c '\\i world.sql' -d world -U postgres\n$ psql -d world -c \"create type myenum as enum ('foo', 'bar')\" -U postgres\n\nsbt test\n```\n\n### Run test with docker\n```\ncd doobie_1 or doobie_0.13\ndocker run -d --name doobie_recipies -p5435:5432 -e POSTGRES_USER=postgres -e POSTGRES_DB=world -e POSTGRES_PASSWORD=postgres tpolecat/skunk-world\nsbt test\ndocker rm -f doobie_recipies\n\n```\n\n| v.1                                                                                                                                          | v.0.13                                                                                                                                          |\n|----------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------|\n| Selecting                                                                                                                                    |\n| [select count](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/selecting/Count.scala)                          | [select count](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/selecting/Count.scala)                          |\n| [join](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/selecting/Join.scala)                                   | [join](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/selecting/Join.scala)                                   |\n| [MappingRows](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/selecting/MappingRows.scala)                     | [MappingRows](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/selecting/MappingRows.scala)                     |\n| [NestedClass](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/selecting/NestedClass.scala)                     | [NestedClass](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/selecting/NestedClass.scala)                     |\n| [NestedClassMap](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/selecting/NestedClassMap.scala)               | [NestedClassMap](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/selecting/NestedClassMap.scala)                  |[NestedClassMap](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/selecting/NestedClassMap.scala)|d|\n| [RowMappings](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/selecting/RowMappings.scala)                     | [RowMappings](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/selecting/RowMappings.scala)                     |\n| [SelectMultipleColumns](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/selecting/SelectMultipleColumns.scala) | [SelectMultipleColumns](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/selecting/SelectMultipleColumns.scala) |\n| [SelectOneColumn](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/selecting/SelectOneColumn.scala)             | [SelectOneColumn](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/selecting/SelectOneColumn.scala)             |\n| [ShapelessRecord](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/selecting/ShapelessRecord.scala)             | [ShapelessRecord](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/selecting/ShapelessRecord.scala)             |\n| [Streaming](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/selecting/Streaming.scala)                         | [Streaming](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/selecting/Streaming.scala)                         |\n| [StatementFragments](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/selecting/StatementFragments.scala)       | [StatementFragments](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/selecting/StatementFragments.scala)       |\n| [Timestamp](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/selecting/Timestamp.scala)                         | [Timestamp](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/selecting/Timestamp.scala)                         |\n| Parameterized queries                                                                                                                        | Parameterized queries                                                                                                                           |\n| [Bigger than](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/parameterizedQueries/BiggerThan.scala)           | [Bigger than](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/parameterizedQueries/BiggerThan.scala)           |\n| [IN clauses](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/parameterizedQueries/INClauses.scala)             | [IN clauses](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/parameterizedQueries/INClauses.scala)             |\n| [Parameters](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/parameterizedQueries/Parameters.scala)            | [Parameters](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/parameterizedQueries/Parameters.scala)            |\n| DDL                                                                                                                                          | DDL                                                                                                                                             |\n| [Batch](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/ddl/Batch.scala)                                       | [Batch](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/ddl/Batch.scala)                                       |\n| [Insert and Read key](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/ddl/InsertReadKey.scala)                 | [Insert and Read key](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/ddl/InsertReadKey.scala)                 |\n| [Insert and Read Person class](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/ddl/InsertReadPerson.scala)     | [Insert and Read Person class](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/ddl/InsertReadPerson.scala)     |\n| [Insert Read and Update](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/ddl/InsertReadUpdate.scala)           | [Insert Read and Update](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/ddl/InsertReadUpdate.scala)           |\n| [SQLArrays](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/ddl/SQLArrays.scala)                               | [SQLArrays](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/ddl/SQLArrays.scala)                               |\n| [Rollback](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/ddl/Rollback.scala)                                 | [Rollback](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/ddl/Rollback.scala)                                 |\n| [Vacuum](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/ddl/Vacuum.scala)                                     | [Vacuum](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/ddl/Vacuum.scala)                                     |\n| Transactions                                                                                                                                 | Transactions                                                                                                                                    |\n| [Transaction](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/Transaction.scala)                               | [Transaction](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/Transaction.scala)                               |\n| Enum                                                                                                                                         | Enum                                                                                                                                            |\n| [Enum](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/Enum.scala)                                             | [Enum](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/Enum.scala)                                             |\n| CSV                                                                                                                                          | CSV                                                                                                                                             |\n| [Select with type](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/csv/GenericSelect.scala)                    | [Select with type](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/csv/GenericSelect.scala)                    |\n| [Itto CSV](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/csv/IttoCSV.scala)                                  | [Itto CSV](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/csv/IttoCSV.scala)                                  |\n| [Load CSV in table](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/csv/LoadCSV.scala)                         | [Load CSV in table](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/csv/LoadCSV.scala)                         |\n| [Spool CSV](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/csv/SpoolCSV.scala)                                | [Spool CSV](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/csv/SpoolCSV.scala)                                |\n| [Spool paramterized CSV](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/csv/SpoolParameterized.scala)         | [Spool paramterized CSV](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/csv/SpoolParameterized.scala)         |\n| Logging                                                                                                                                      | Logging                                                                                                                                         |\n| [Logging](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/Logging.scala)                                       | [Logging](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/Logging.scala)                                       |\n| Error handling                                                                                                                               | Error handling                                                                                                                                  |\n| [ErrorHandling](https://github.com/gekomad/doobie-recipes/blob/master/doobie_1/src/test/scala/ErrorHandling.scala)                           | [ErrorHandling](https://github.com/gekomad/doobie-recipes/blob/master/doobie_0.13/src/test/scala/ErrorHandling.scala)                           |\n                                                                                                                                                                  \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgekomad%2Fdoobie-recipes","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgekomad%2Fdoobie-recipes","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgekomad%2Fdoobie-recipes/lists"}