Skip to content

Releases: Stumble/sqlc

v2.1.10

10 Apr 08:54
Compare
Choose a tag to compare

v2.1.9

20 Sep 23:38
Compare
Choose a tag to compare
feat: use context logger

v2.1.8

07 Sep 07:55
Compare
Choose a tag to compare
update version

v2.1.7

30 Aug 09:00
Compare
Choose a tag to compare
codegen: wpgx use CountIntent for cache hit rate stats

Sync with upstream v1.20.0+

29 Aug 21:24
Compare
Choose a tag to compare
Update GUIDE.md (#3)

add best practices of fresh materialized view.

Re-sync with upstream

13 Apr 16:39
Compare
Choose a tag to compare
add GUIDE of how to use Transact and handle serial type when using lo…

…ader

v2.1.4: support pointer-type (nullable) query parameters for cache and invali…

18 Feb 19:14
Compare
Choose a tag to compare

v2.1.3

16 Feb 22:32
Compare
Choose a tag to compare
sqlc-fix: allow runtime version

Rebase upstream

16 Feb 22:28
Compare
Choose a tag to compare
Rebase upstream Pre-release
Pre-release
v2.1.2

re-gen needle example

BREAKING: Queries struct stop using interface for cache.

14 Feb 17:45
Compare
Choose a tag to compare

DCache upgraded to return *DCache instead of the Cache
interface in its New() function at some point. Since then,
User might pass a pointer of (nil)(*dcache.DCache) to Queries,
which is not a nil interface but an interface holding an nil
poitner. This makes the internal nil check failed to catch.

There are many solutions:

  1. Keep it like this, and user must be careful not to pass nil pointer.
    Because go is not null-safe, there is no compilation-time check for
    this. Then if unit-test coverage is low, user will run into this issue
    on production, and panic.
  2. DCache returns interface: no not supported. Besides it may still have
    the above issue, just unlikely.
  3. Abandon cache interface, use concrete struct. The tradeoff is that
    we can no longer inject other cache implementation, whichi might be
    a useful feature during testings. However, I have never seen this
    in real life so it might be YAGNI.

So we choosed (3) as the final solution.