gitea/modules
Lunny Xiao 34283a74e8
Allow detect whether it's in a database transaction for a context.Context (#21756)
Fix #19513

This PR introduce a new db method `InTransaction(context.Context)`,
and also builtin check on `db.TxContext` and `db.WithTx`.
There is also a new method `db.AutoTx` has been introduced but could be used by other PRs.

`WithTx` will always open a new transaction, if a transaction exist in context, return an error.
`AutoTx` will try to open a new transaction if no transaction exist in context.
That means it will always enter a transaction if there is no error.

Co-authored-by: delvh <dev.lh@web.de>
Co-authored-by: 6543 <6543@obermui.de>
2022-11-12 21:18:50 +01:00
..
activitypub Fix dashboard ignored system setting cache (#21621) 2022-11-10 14:43:53 +08:00
analyze Simplify `IsVendor` (#19626) 2022-05-06 10:12:30 +01:00
auth
avatar Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
base
cache Fix dashboard ignored system setting cache (#21621) 2022-11-10 14:43:53 +08:00
charset
container
context Fix package access for admins and inactive users (#21580) 2022-10-24 22:23:25 +03:00
convert Add Webhook authorization header (#20926) 2022-11-03 20:23:20 +02:00
csv
doctor Merge db.Iterate and IterateObjects (#21641) 2022-10-31 23:51:14 +08:00
emoji
eventsource
generate
git Keep languages defined in .gitattributes (#21403) 2022-10-29 15:04:21 +08:00
gitgraph
graceful Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
hcaptcha
highlight
hostmatcher Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
html Move svg html render to modules/svg (#21716) 2022-11-08 23:13:58 +08:00
httpcache
httplib refactor httplib (#18338) 2022-01-19 19:31:39 -05:00
indexer Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
issue/template Deal with markdown template without metadata (#21639) 2022-10-31 17:10:33 +02:00
json
lfs
log Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
markup Add attention blocks within quote blocks for `Note` and `Warning` (#21711) 2022-11-09 02:11:26 +02:00
mcaptcha Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
metrics
migration
mirror
nosql
notification feat: notify doers of a merge when automerging (#21553) 2022-11-03 23:49:00 +08:00
options Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
packages Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
paginator
password
pprof
private Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
process
proxy
proxyprotocol
public
queue Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
recaptcha Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
references
regexplru
repository Allow detect whether it's in a database transaction for a context.Context (#21756) 2022-11-12 21:18:50 +01:00
secret
session
setting Add configuration for CORS allowed headers (#21747) 2022-11-11 14:39:27 +08:00
sitemap
ssh
storage
structs Improve valid user name check (#20136) 2022-11-04 17:04:08 +08:00
svg Move svg html render to modules/svg (#21716) 2022-11-08 23:13:58 +08:00
sync
system Fix dashboard ignored system setting cache (#21621) 2022-11-10 14:43:53 +08:00
templates Fix dashboard ignored system setting cache (#21621) 2022-11-10 14:43:53 +08:00
test
timeutil Fix `Timestamp.IsZero` (#21593) 2022-10-26 21:34:44 +08:00
translation
typesniffer
updatechecker
upload
uri
user
util
validation Improve valid user name check (#20136) 2022-11-04 17:04:08 +08:00
watcher
web Improve valid user name check (#20136) 2022-11-04 17:04:08 +08:00