mirror of
https://github.com/zed-industries/zed.git
synced 2024-11-24 06:19:37 +00:00
7c5f4b72fb
This PR reworks how we process Stripe events for reconciliation purposes. The previous approach in #15480 turns out to not be workable, on account of the Stripe event IDs not being strictly in order. This meant that we couldn't reliably compare two arbitrary event IDs and determine which one was more recent. This new approach leans on the guidance that Stripe provides for webhooks events: > Webhook endpoints might occasionally receive the same event more than once. You can guard against duplicated event receipts by logging the [event IDs](https://docs.stripe.com/api/events/object#event_object-id) you’ve processed, and then not processing already-logged events. > > https://docs.stripe.com/webhooks#handle-duplicate-events We now record processed Stripe events in the `processed_stripe_events` table and use this to filter out events that have already been processed, so we do not process them again. When retrieving events from the Stripe events API we now buffer the unprocessed events so that we can sort them by their `created` timestamp and process them in (roughly) the order they occurred. Release Notes: - N/A
47 lines
1.6 KiB
TOML
47 lines
1.6 KiB
TOML
[files]
|
|
ignore-files = true
|
|
ignore-hidden = false
|
|
extend-exclude = [
|
|
".git/",
|
|
# File suffixes aren't typos
|
|
"assets/icons/file_icons/file_types.json",
|
|
"crates/extensions_ui/src/extension_suggest.rs",
|
|
# Stripe IDs are flagged as typos.
|
|
"crates/collab/src/db/tests/processed_stripe_event_tests.rs",
|
|
# Not our typos
|
|
"crates/live_kit_server/",
|
|
# Vim makes heavy use of partial typing tables
|
|
"crates/vim/",
|
|
# Editor and file finder rely on partial typing and custom in-string syntax
|
|
"crates/file_finder/src/file_finder_tests.rs",
|
|
"crates/editor/src/editor_tests.rs",
|
|
# Clojure uses .edn filename extension, which is not a misspelling of "end"
|
|
"extensions/clojure/languages/clojure/config.toml",
|
|
# There are some names in the test data that are incorrectly flagged as typos.
|
|
"crates/git/test_data/blame_incremental_complex",
|
|
"crates/git/test_data/golden/blame_incremental_complex.json",
|
|
# We have some base64-encoded data that is incorrectly being flagged.
|
|
"crates/rpc/src/auth.rs",
|
|
# glsl isn't recognized by this tool
|
|
"extensions/glsl/languages/glsl/",
|
|
# Windows likes its abbreviations
|
|
"crates/gpui/src/platform/windows/",
|
|
# Some typos in the base mdBook CSS.
|
|
"docs/theme/css/"
|
|
]
|
|
|
|
[default]
|
|
extend-ignore-re = [
|
|
'cl\[ist]',
|
|
'"ba"',
|
|
":ba\\|z",
|
|
# :/ crates/collab/migrations/20231009181554_add_release_channel_to_rooms.sql
|
|
"COLUMN enviroment",
|
|
# Typo in ClickHouse column name.
|
|
# crates/collab/src/api/events.rs
|
|
"rename = \"sesssion_id\"",
|
|
"doas",
|
|
# ProtoLS crate with tree-sitter Protobuf grammar.
|
|
"protols"
|
|
]
|
|
check-filename = true
|