goen

goen v0.0.7について

以下の不具合を修正しました: Update/Delete操作時に、RowKeyがnilのとき、パッチからクエリが生成されていなかった Many to Oneのforeign keyを指定したフィールドに対して、参照先エンティティが存在しないとき、IncludeLoaderでpanicすることがある いず…

goen v0.0.6について

BulkCompilerに対して、MaxChunksが指定できるようになりました。 これまでは大量のプレースホルダを持つクエリを生成したとき、クエリ実行時にエラーになっていました。 package main import ( "database/sql" "fmt" "github.com/kamichidu/goen" _ "github…

goen v0.0.5 について

goen.Loggerを手軽に作成するためのユーティリティ関数を追加しました。 以下のように利用することができます。 import "github.com/sirupsen/logrus" dbc := goen.NewDBContext(...) dbc.Logger = goen.LoggerFunc(logrus.Trace)

goen v0.0.4 について

TxScopeで実行した関数内でpanicしたときに、recoverしないようにしました。 今まではpanicした際のスタックトレースが失われていましたが、今バージョンからはTxScopeの外側にpanicを伝搬させるようにしたため、利用者はrecoverする自由を得ました。

goen v0.0.3について

goen v0.0.3には、以下の変更が含まれています: 生成されたInメソッドの引数を、スライスから可変長に変更 no such table "\"hoge\"" などの、余分なクォートをしてしまう問題の修正 v0.0.1で入れたクォートの対応によって発生 String() と QuotedString() …

goen v0.0.2 について

goen v0.0.2には、以下の変更が含まれています。 CompilerHookの追加 CompilerOptions.Hookの追加 CompilerWithHookの追加 これにより、goenが生成したinsert/update/delete用のクエリを、ユーザがカスタマイズできるようになりました。 例えばpostgresのups…

goen v0.0.1 について

goen v0.0.1には以下の変更が含まれています。 CompilerOptions.StmtBuilderの削除 CompilerOptions.Dialectの追加 goenが生成するクエリについて、テーブル名とカラム名をクォートするように変更 MetaSchemaをinterfaceに変更 MetaTableの追加 MeaColumnの…

goen v0.0.0 について

goenを使ったプロダクトがここ数ヶ月、特に問題なく稼働しているということと、大体APIも問題なさそうだということで、ベータからv0.0.0の正式版に移行しました。 v0.0.0では、以下の変更が含まれています。 DBContext.QuerySqlizer DBContext.QuerySqlizerC…

goenのコンセプト(go generateはASTベースです)

goen はgo generate用のコード生成ツールを提供しますが、これは可能な限りASTベースで動作するように設計・実装しています。 これはgo generateによって生成される型に対して、同一パッケージ内でユーティリティ的なメソッドを生やす場合に、問題なく再度go…

goenというgolang用ORM Likeライブラリを公開しました

今まで kallax というPostgreSQL用のORMを使っていたのですが、今後のメンテナンスや、そもそもの機能に不満がありました。 なので goen というORM Likeライブラリを作りました。 現在アルファ版で、フィードバック募集中です。 goenの特徴的な機能として、…