Pyra
4674191e90
feat: dependency job debouncing (#6769)
* v0
Signed-off-by: pyranota <pyra@duck.com>
* optimize relocks
* make it work with relative relative imports
Signed-off-by: pyranota <pyra@duck.com>
* use fallback
Signed-off-by: pyranota <pyra@duck.com>
* remove dbg and todos
Signed-off-by: pyranota <pyra@duck.com>
* future proof a bit
Signed-off-by: pyranota <pyra@duck.com>
* cleanup
Signed-off-by: pyranota <pyra@duck.com>
* more cleanup
Signed-off-by: pyranota <pyra@duck.com>
* remove final TODO
Signed-off-by: pyranota <pyra@duck.com>
* do not use bytemuck
Signed-off-by: pyranota <pyra@duck.com>
* optimize hashing
Signed-off-by: pyranota <pyra@duck.com>
* implementation 1
Signed-off-by: pyranota <pyra@duck.com>
* almost v0
Signed-off-by: pyranota <pyra@duck.com>
* v0
Signed-off-by: pyranota <pyra@duck.com>
* add comments and use fallback
Signed-off-by: pyranota <pyra@duck.com>
* call dissolve for apps
Signed-off-by: pyranota <pyra@duck.com>
* add comms
Signed-off-by: pyranota <pyra@duck.com>
* refactor v0 (partially tested + dirty)
Signed-off-by: pyranota <pyra@duck.com>
* finishing
Signed-off-by: pyranota <pyra@duck.com>
* remove TODO
Signed-off-by: pyranota <pyra@duck.com>
* Update SQLx metadata
* silence unused argument
Signed-off-by: pyranota <pyra@duck.com>
* cleanup
Signed-off-by: pyranota <pyra@duck.com>
* implement rebuild_map endpoint
Signed-off-by: pyranota <pyra@duck.com>
* update windmill api client
Signed-off-by: pyranota <pyra@duck.com>
* almost finish with tests
Signed-off-by: pyranota <pyra@duck.com>
* add proper testing
Signed-off-by: pyranota <pyra@duck.com>
* remove unused fixtures
Signed-off-by: pyranota <pyra@duck.com>
* Update SQLx metadata
* partial cleanup
Signed-off-by: pyranota <pyra@duck.com>
* Update backend/windmill-worker/src/scoped_dependency_map.rs
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* Update backend/windmill-common/src/scripts.rs
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* evil doings
Signed-off-by: pyranota <pyra@duck.com>
* more cleanup
* Update SQLx metadata
* more cleanup
Signed-off-by: pyranota <pyra@duck.com>
* fixing CI
Signed-off-by: pyranota <pyra@duck.com>
* remove python from default features
Signed-off-by: pyranota <pyra@duck.com>
* feat: dependency job debouncing
* checkpoint
Signed-off-by: pyranota <pyra@duck.com>
* more improvements
Signed-off-by: pyranota <pyra@duck.com>
* refactor: clean up dependency job debouncing implementation
- Add comprehensive comments explaining the debouncing mechanism
- Replace debug statements (dbg!) with proper tracing calls
- Extract helper functions to reduce code duplication:
- extract_to_relock_from_args() for extracting nodes/components
- accumulate_debounce_stale_data() for updating stale data
- Improve code readability and maintainability
Co-authored-by: Pyra <pyranota@users.noreply.github.com>
* cleanup
Signed-off-by: pyranota <pyra@duck.com>
* Update SQLx metadata
* Update backend/windmill-common/src/jobs.rs
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* Update backend/windmill-common/src/jobs.rs
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* Update backend/windmill-queue/src/jobs.rs
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* better error handling for helper
Signed-off-by: pyranota <pyra@duck.com>
* update ee-ref
Signed-off-by: pyranota <pyra@duck.com>
* test: add race condition test for dependency job debouncing
- Implement test_2 for scripts to test the race condition edge case
- Add comprehensive documentation comments to all test functions
- Remove empty test_2 stubs for flows (not needed)
- Keep test_2 stub for apps with TODO comment
The race condition test simulates the scenario where a job is marked
as running but debounce_key hasn't been cleaned up yet, forcing the
system to create a new job while reusing the existing debounce_key.
This edge case can occur due to the lack of transactions in the pull
function for performance reasons (see jobs.rs:4415-4425).
Co-authored-by: Pyra <pyranota@users.noreply.github.com>
* test: implement race condition test for dependency job debouncing
- Add comprehensive test_2 for script module that tests the race condition edge case
- Remove empty test_2 stubs from flows and apps modules
- Fix unused variable warning in worker_lockfiles.rs
- Add detailed comments explaining the race condition scenario and test logic
Co-authored-by: Pyra <pyranota@users.noreply.github.com>
* implement fallback
Signed-off-by: pyranota <pyra@duck.com>
* make it mostly work
* all tests are almost working
Signed-off-by: pyranota <pyra@duck.com>
* add comments a bit
Signed-off-by: pyranota <pyra@duck.com>
* Update backend/windmill-common/src/scripts.rs
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* Update backend/windmill-worker/src/worker_lockfiles.rs
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* Update backend/windmill-worker/src/worker_lockfiles.rs
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* feat: improve debouncing documentation, tracing, and error handling
- Add comprehensive 3-phase debouncing documentation explaining push/accumulation/pull
- Enhance all tracing with structured logging (job_id, workspace_id, node_count, etc.)
- Add proper error handling with .map_err() and contextual messages
- Replace dbg!() with proper tracing::debug!()
- Replace todo!() with proper error handling
- Fix typos: 'and edge case' → 'an edge case', 'bc' → 'because'
- Fix debug variable name: 'debounce_job_id_0' → 'debounce_job_id_o'
- Add documentation for debounce cleanup and stale data retrieval
- Add trace-level logging for non-error paths to reduce noise
Co-authored-by: Pyra <pyranota@users.noreply.github.com>
* do some work for future improvements
Signed-off-by: pyranota <pyra@duck.com>
* fix tests
Signed-off-by: pyranota <pyra@duck.com>
* clippy
Signed-off-by: pyranota <pyra@duck.com>
* update sqlx
Signed-off-by: pyranota <pyra@duck.com>
* clippy
Signed-off-by: pyranota <pyra@duck.com>
* update ee ref
Signed-off-by: pyranota <pyra@duck.com>
* flag tests behind the feature, add timeout
Signed-off-by: pyranota <pyra@duck.com>
* fix timeout + cleanup
Signed-off-by: pyranota <pyra@duck.com>
* cleanup
Signed-off-by: pyranota <pyra@duck.com>
* row lock debounce_key
Signed-off-by: pyranota <pyra@duck.com>
* addressing TODOs
Signed-off-by: pyranota <pyra@duck.com>
* fix test
Signed-off-by: pyranota <pyra@duck.com>
* ee ref
Signed-off-by: pyranota <pyra@duck.com>
* ee repo
Signed-off-by: pyranota <pyra@duck.com>
---------
Signed-off-by: pyranota <pyra@duck.com>
Co-authored-by: Pyra <92104930+pyranye@users.noreply.github.com>
Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
Co-authored-by: Pyra <pyranota@users.noreply.github.com>
Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2025-10-16 16:49:35 +00:00
..
2022-05-05 04:25:58 +02:00
2023-08-10 17:30:59 +02:00
2023-08-10 17:30:59 +02:00
2023-06-19 16:06:52 +02:00
2023-06-19 16:06:52 +02:00
2022-05-05 04:25:58 +02:00
2022-08-14 22:47:51 +02:00
2022-05-05 04:25:58 +02:00
2022-05-05 04:25:58 +02:00
2022-05-05 04:25:58 +02:00
2022-05-05 04:25:58 +02:00
2022-05-08 17:56:16 +02:00
2022-05-05 04:25:58 +02:00
2022-05-05 04:25:58 +02:00
2022-05-05 04:25:58 +02:00
2022-05-05 04:25:58 +02:00
2022-05-05 04:25:58 +02:00
2022-05-05 04:25:58 +02:00
2022-08-14 18:20:27 +02:00
2022-05-05 04:25:58 +02:00
2022-05-05 04:25:58 +02:00
2022-05-17 20:42:05 +02:00
2022-05-17 20:42:05 +02:00
2022-05-08 17:03:13 +02:00
2022-05-08 17:03:13 +02:00
2022-05-08 17:26:51 +02:00
2022-08-14 18:20:27 +02:00
2022-05-08 17:56:16 +02:00
2022-05-08 17:56:16 +02:00
2022-05-10 21:32:07 +02:00
2022-05-10 21:32:07 +02:00
2022-05-18 23:28:09 +02:00
2022-05-18 23:28:09 +02:00
2022-06-12 01:55:05 +02:00
2022-06-12 01:55:05 +02:00
2022-07-02 21:04:41 +02:00
2022-07-02 21:04:41 +02:00
2022-06-20 23:11:48 +02:00
2022-06-20 23:11:48 +02:00
2022-06-24 19:20:27 +02:00
2022-06-24 19:20:27 +02:00
2022-06-24 20:18:22 +02:00
2022-08-14 18:20:27 +02:00
2022-07-13 10:35:08 +02:00
2022-08-14 18:20:27 +02:00
2022-07-17 13:17:45 +02:00
2022-07-17 13:17:45 +02:00
2022-07-19 20:23:58 +02:00
2022-07-19 20:23:58 +02:00
2022-07-30 00:02:51 +02:00
2022-07-30 00:02:51 +02:00
2022-10-25 00:54:53 +02:00
2022-10-25 00:54:53 +02:00
2022-08-16 21:00:11 +02:00
2022-08-16 21:00:11 +02:00
2022-08-18 15:01:17 +02:00
2022-08-18 15:01:17 +02:00
2022-09-02 01:26:39 +02:00
2022-09-02 01:26:39 +02:00
2022-09-14 11:46:57 -07:00
2022-09-14 11:46:57 -07:00
2022-09-04 00:07:55 +02:00
2022-09-04 00:25:45 +02:00
2022-09-05 09:55:04 +02:00
2022-09-05 09:55:04 +02:00
2022-09-13 21:14:21 +02:00
2022-09-13 21:14:21 +02:00
2022-10-06 04:59:09 +02:00
2022-10-06 04:59:09 +02:00
2022-10-20 20:16:08 +02:00
2022-10-20 20:16:08 +02:00
2022-10-24 01:50:39 +02:00
2022-10-24 01:50:39 +02:00
2022-10-24 14:48:28 +02:00
2022-10-24 14:48:28 +02:00
2022-11-12 20:17:08 +01:00
2022-11-12 20:17:08 +01:00
2022-11-13 18:31:08 +01:00
2022-11-13 18:31:08 +01:00
2022-11-13 18:31:08 +01:00
2022-11-13 18:31:08 +01:00
2022-11-13 18:31:08 +01:00
2022-11-13 18:31:08 +01:00
2022-11-05 10:45:17 +01:00
2022-11-05 10:45:17 +01:00
2022-11-06 23:48:18 +01:00
2022-11-06 23:48:18 +01:00
2022-11-23 19:17:19 +01:00
2022-11-23 19:17:19 +01:00
2022-11-26 19:39:37 +01:00
2022-11-26 19:39:37 +01:00
2022-11-27 14:00:55 +01:00
2022-11-27 14:00:55 +01:00
2022-11-27 17:26:37 +01:00
2022-11-27 17:26:37 +01:00
2022-11-30 00:15:43 +01:00
2022-11-30 00:15:43 +01:00
2022-12-03 09:21:26 +01:00
2022-12-03 09:21:26 +01:00
2022-12-10 01:46:26 +01:00
2022-12-10 01:46:26 +01:00
2022-12-10 01:46:26 +01:00
2022-12-10 01:46:26 +01:00
2022-12-08 23:56:49 +01:00
2022-12-08 23:56:49 +01:00
2022-12-10 13:57:41 +01:00
2022-12-10 13:57:41 +01:00
2022-12-11 18:47:39 +01:00
2022-12-11 18:47:39 +01:00
2022-12-11 18:47:39 +01:00
2022-12-11 18:47:39 +01:00
2022-12-12 20:20:17 +01:00
2022-12-11 20:27:04 +01:00
2022-12-11 22:48:09 +01:00
2022-12-11 22:48:09 +01:00
2022-12-12 12:47:07 +01:00
2022-12-12 12:47:07 +01:00
2022-12-12 20:20:17 +01:00
2022-12-12 20:20:17 +01:00
2022-12-13 20:16:57 +01:00
2022-12-13 20:16:57 +01:00
2023-02-13 02:32:29 +01:00
2023-02-13 02:32:29 +01:00
2022-12-15 18:55:30 +01:00
2022-12-15 18:55:30 +01:00
2022-12-19 19:11:23 +01:00
2022-12-19 19:11:23 +01:00
2022-12-19 19:11:23 +01:00
2022-12-19 19:11:23 +01:00
2023-01-01 09:00:56 +01:00
2023-01-01 09:00:56 +01:00
2023-01-07 09:39:50 +01:00
2023-01-07 09:39:50 +01:00
2023-01-21 17:33:23 +01:00
2023-01-21 17:33:23 +01:00
2023-02-03 19:50:18 +01:00
2023-02-03 19:50:18 +01:00
2023-01-27 18:56:42 +01:00
2023-01-27 18:56:42 +01:00
2023-01-27 22:08:46 +01:00
2023-01-27 22:08:46 +01:00
2023-01-31 16:01:13 +01:00
2023-01-31 16:01:13 +01:00
2023-01-31 16:01:13 +01:00
2023-01-31 16:01:13 +01:00
2023-02-04 20:26:15 +01:00
2023-02-04 20:26:15 +01:00
2023-02-13 02:32:29 +01:00
2023-02-13 02:32:29 +01:00
2023-02-13 17:18:01 +01:00
2023-02-13 17:18:01 +01:00
2023-02-14 03:33:08 +01:00
2023-02-14 03:33:08 +01:00
2023-02-14 15:00:10 +01:00
2023-02-14 15:00:10 +01:00
2023-02-14 15:54:25 +01:00
2023-02-14 15:54:25 +01:00
2023-02-26 14:09:16 +01:00
2023-02-26 14:09:16 +01:00
2023-02-27 12:00:32 +01:00
2023-02-27 14:16:57 +01:00
2023-02-27 14:16:57 +01:00
2023-02-27 14:16:57 +01:00
2023-03-03 12:44:44 +01:00
2023-03-03 12:44:44 +01:00
2023-03-27 15:24:13 +02:00
2023-03-27 15:24:13 +02:00
2023-03-27 22:57:29 +02:00
2023-03-27 22:57:29 +02:00
2023-04-05 16:37:24 +02:00
2023-04-05 16:37:24 +02:00
2023-04-05 22:01:18 +02:00
2023-04-05 22:01:18 +02:00
2023-04-08 23:25:46 +02:00
2023-04-08 23:25:46 +02:00
2023-04-12 17:29:06 +02:00
2023-04-12 17:29:06 +02:00
2023-04-14 18:34:41 +02:00
2023-04-14 18:34:41 +02:00
2023-04-23 16:57:23 +02:00
2023-04-23 16:57:23 +02:00
2023-04-30 15:56:52 +02:00
2023-04-30 15:56:52 +02:00
2023-05-08 19:10:45 +02:00
2023-05-08 19:10:45 +02:00
2023-05-09 15:02:04 +02:00
2023-05-09 15:02:04 +02:00
2023-05-10 12:21:57 +02:00
2023-05-10 12:21:57 +02:00
2023-05-10 12:42:11 +02:00
2023-05-10 12:42:11 +02:00
2023-05-12 23:47:39 +02:00
2023-05-12 23:47:39 +02:00
2023-05-16 13:02:29 +02:00
2023-05-16 13:02:29 +02:00
2023-05-16 16:10:28 +02:00
2023-05-16 16:10:28 +02:00
2023-05-16 16:17:26 +02:00
2023-05-16 16:17:26 +02:00
2023-05-23 20:25:41 +02:00
2023-05-23 20:25:41 +02:00
2023-05-25 11:07:54 +02:00
2023-05-25 11:07:54 +02:00
2023-05-24 10:10:46 +02:00
2023-05-24 10:56:24 +02:00
2023-05-24 15:46:58 +02:00
2023-05-24 15:46:58 +02:00
2023-05-24 18:31:28 +02:00
2023-05-24 18:31:28 +02:00
2023-05-27 15:07:21 +02:00
2023-05-27 15:07:21 +02:00
2023-05-27 17:22:56 +02:00
2023-05-27 17:22:56 +02:00
2023-05-29 23:39:50 +02:00
2023-05-29 23:39:50 +02:00
2023-06-05 17:42:57 +02:00
2023-06-05 17:42:57 +02:00
2023-06-17 13:57:04 +02:00
2023-06-17 13:57:04 +02:00
2023-06-25 20:00:27 +02:00
2023-06-25 20:00:27 +02:00
2023-06-26 18:23:14 +02:00
2023-06-26 18:23:14 +02:00
2023-06-29 10:34:44 +02:00
2023-06-29 10:34:44 +02:00
2023-06-29 10:34:44 +02:00
2023-06-29 10:34:44 +02:00
2023-07-04 19:39:59 +02:00
2023-07-04 19:39:59 +02:00
2023-07-12 17:07:45 +02:00
2023-07-12 17:07:45 +02:00
2023-07-05 10:01:27 +02:00
2023-07-05 10:01:27 +02:00
2023-07-06 21:43:15 +02:00
2023-07-06 21:43:15 +02:00
2023-07-11 23:35:26 +02:00
2023-07-11 23:35:26 +02:00
2023-07-11 22:53:02 +02:00
2023-07-11 22:53:02 +02:00
2023-07-19 13:44:16 +02:00
2023-07-19 13:44:16 +02:00
2023-07-20 20:46:39 +02:00
2023-07-23 12:14:04 +02:00
2023-07-27 14:24:27 +02:00
2023-07-27 14:24:27 +02:00
2023-07-23 12:14:04 +02:00
2023-07-23 12:14:04 +02:00
2023-07-24 18:11:23 +02:00
2023-07-24 18:11:23 +02:00
2023-07-25 12:41:51 +02:00
2023-07-25 12:41:51 +02:00
2023-07-25 12:41:51 +02:00
2023-07-25 12:41:51 +02:00
2023-07-30 20:42:24 +02:00
2023-07-30 20:42:24 +02:00
2023-08-03 17:22:00 +02:00
2023-08-03 17:22:00 +02:00
2023-08-03 15:59:26 +02:00
2023-08-03 15:59:26 +02:00
2023-08-09 16:19:57 +02:00
2023-08-09 16:19:57 +02:00
2023-08-10 13:19:50 +00:00
2023-08-10 13:19:50 +00:00
2023-08-11 18:54:47 +02:00
2023-08-11 18:54:47 +02:00
2023-08-17 22:51:21 +02:00
2023-08-17 22:51:21 +02:00
2023-08-18 00:19:15 +02:00
2023-08-18 00:19:15 +02:00
2023-08-24 18:20:35 +02:00
2023-08-24 18:20:35 +02:00
2023-08-20 19:14:39 +02:00
2023-08-20 19:14:39 +02:00
2023-08-24 18:20:35 +02:00
2023-08-24 18:20:35 +02:00
2023-08-26 09:12:19 +02:00
2023-08-26 09:12:19 +02:00
2023-08-29 13:00:20 +02:00
2023-08-29 13:00:20 +02:00
2023-08-30 13:35:41 +02:00
2023-08-30 13:35:41 +02:00
2023-08-31 23:41:04 +02:00
2023-08-31 23:41:04 +02:00
2023-09-03 09:44:16 +02:00
2023-09-03 09:44:16 +02:00
2023-09-06 10:32:53 +02:00
2023-09-06 10:32:53 +02:00
2023-09-13 21:24:54 +02:00
2023-09-13 21:24:54 +02:00
2023-09-14 08:26:45 +02:00
2023-09-14 08:26:45 +02:00
2023-09-14 10:41:05 +02:00
2023-09-14 10:41:05 +02:00
2023-09-15 22:55:47 +02:00
2023-09-15 22:55:47 +02:00
2023-09-20 23:15:19 +02:00
2023-09-20 23:15:19 +02:00
2023-09-21 11:00:42 +02:00
2023-09-21 11:00:42 +02:00
2023-09-28 01:18:35 +02:00
2023-09-28 01:18:35 +02:00
2023-09-29 15:56:21 +02:00
2023-09-29 15:56:21 +02:00
2023-09-29 16:04:28 +02:00
2023-09-29 16:04:28 +02:00
2023-10-02 14:45:29 +02:00
2023-10-02 14:45:29 +02:00
2023-10-13 17:32:11 +02:00
2023-10-13 17:32:11 +02:00
2023-10-16 10:46:55 +02:00
2023-10-16 10:46:55 +02:00
2023-10-16 14:53:12 +02:00
2023-10-16 14:53:12 +02:00
2023-10-17 06:41:29 +02:00
2023-10-17 06:41:29 +02:00
2023-10-17 22:07:13 +02:00
2023-10-17 22:07:13 +02:00
2023-10-23 17:05:54 +02:00
2023-10-23 17:05:54 +02:00
2023-10-23 14:22:59 +02:00
2023-10-23 14:22:59 +02:00
2023-10-23 17:05:54 +02:00
2023-10-23 17:05:54 +02:00
2023-10-24 09:28:46 +02:00
2023-10-24 09:28:46 +02:00
2023-11-04 00:52:37 +01:00
2023-11-04 00:52:37 +01:00
2023-11-06 05:16:48 +01:00
2023-11-06 05:16:48 +01:00
2023-11-06 18:24:51 +01:00
2023-11-06 18:24:51 +01:00
2023-11-09 19:38:52 +01:00
2023-11-09 19:38:52 +01:00
2023-11-10 11:16:13 +01:00
2023-11-10 11:16:13 +01:00
2023-11-17 10:00:04 +01:00
2023-11-17 10:00:04 +01:00
2023-11-15 19:36:17 +01:00
2023-11-15 19:36:17 +01:00
2023-11-15 19:37:02 +01:00
2023-11-15 19:37:02 +01:00
2023-11-22 18:29:51 +01:00
2023-11-22 18:29:51 +01:00
2023-11-29 16:35:42 +01:00
2023-11-29 16:35:42 +01:00
2023-12-04 14:26:27 +01:00
2023-12-04 14:26:27 +01:00
2023-12-03 15:13:57 +01:00
2023-12-04 19:46:43 +01:00
2023-12-04 17:00:52 +01:00
2023-12-04 17:00:52 +01:00
2023-12-08 18:18:20 +01:00
2023-12-08 18:18:20 +01:00
2023-12-22 14:59:46 +01:00
2023-12-22 14:59:46 +01:00
2023-12-26 14:15:46 +01:00
2023-12-26 14:15:46 +01:00
2024-01-07 15:18:27 +01:00
2024-01-07 15:18:27 +01:00
2024-01-05 09:13:05 +01:00
2024-01-05 09:13:05 +01:00
2024-01-16 23:32:26 +01:00
2024-01-16 23:32:26 +01:00
2024-01-12 16:19:28 +01:00
2024-01-12 16:19:28 +01:00
2024-01-13 00:06:54 +01:00
2024-01-13 00:06:54 +01:00
2024-01-13 13:00:04 +01:00
2024-01-13 13:00:04 +01:00
2024-01-19 14:02:15 +01:00
2024-01-19 14:02:15 +01:00
2024-01-23 12:46:19 +01:00
2024-01-23 12:46:19 +01:00
2024-01-24 09:26:23 +01:00
2024-01-24 09:26:23 +01:00
2024-01-26 15:54:05 +01:00
2024-01-26 15:54:05 +01:00
2024-01-31 23:10:34 +01:00
2024-01-31 23:10:34 +01:00
2024-02-05 08:55:39 +01:00
2024-02-05 08:55:39 +01:00
2024-02-07 22:15:42 +01:00
2024-02-07 22:15:42 +01:00
2024-02-07 22:45:07 +01:00
2024-02-07 22:45:07 +01:00
2024-02-09 11:57:52 +01:00
2024-02-09 11:57:52 +01:00
2024-02-09 18:51:44 +01:00
2024-02-09 18:51:44 +01:00
2024-02-12 12:44:12 +01:00
2024-02-12 12:44:12 +01:00
2024-02-13 22:00:25 +01:00
2024-02-13 22:00:25 +01:00
2024-02-16 13:05:39 +01:00
2024-02-16 13:05:39 +01:00
2024-02-16 20:52:12 +01:00
2024-02-16 20:52:12 +01:00
2024-02-19 21:09:59 +01:00
2024-02-19 21:09:59 +01:00
2024-02-20 23:28:42 +01:00
2024-02-20 23:28:42 +01:00
2024-02-22 14:35:40 +01:00
2024-02-22 14:35:40 +01:00
2024-02-22 14:35:40 +01:00
2024-02-22 14:35:40 +01:00
2024-02-24 00:13:28 +01:00
2024-02-24 00:13:28 +01:00
2024-02-25 18:25:40 +01:00
2024-02-25 18:25:40 +01:00
2024-02-25 20:40:56 +01:00
2024-02-25 20:40:56 +01:00
2024-02-28 08:49:35 +01:00
2024-02-28 08:49:35 +01:00
2024-03-06 15:53:01 +01:00
2024-03-06 15:53:01 +01:00
2024-03-12 11:55:18 +01:00
2024-03-12 11:55:18 +01:00
2024-03-12 11:55:18 +01:00
2024-03-12 11:55:18 +01:00
2024-03-12 11:55:18 +01:00
2024-03-12 11:55:18 +01:00
2024-03-12 23:55:04 +01:00
2024-03-12 23:55:04 +01:00
2024-03-12 11:55:18 +01:00
2024-03-12 11:55:18 +01:00
2024-03-12 14:25:01 +01:00
2024-03-12 14:25:01 +01:00
2024-03-15 15:33:47 +01:00
2024-03-15 15:33:47 +01:00
2024-03-16 17:55:34 +01:00
2024-03-16 17:55:34 +01:00
2024-03-17 11:08:02 +01:00
2024-03-17 11:08:02 +01:00
2024-03-23 10:55:29 +01:00
2024-03-23 10:55:29 +01:00
2024-03-23 11:40:55 +01:00
2024-03-23 11:40:55 +01:00
2024-03-26 19:07:21 +01:00
2024-03-26 19:07:21 +01:00
2024-03-29 10:56:44 +01:00
2024-03-29 10:56:44 +01:00
2024-03-31 14:52:06 +02:00
2024-03-31 14:52:06 +02:00
2024-04-03 17:47:23 +02:00
2024-04-03 17:47:23 +02:00
2024-04-08 15:44:33 +02:00
2024-04-08 15:44:33 +02:00
2024-04-09 22:03:39 +02:00
2024-04-09 22:03:39 +02:00
2024-04-16 10:41:14 +02:00
2024-04-16 10:41:14 +02:00
2024-04-16 19:53:30 +02:00
2024-04-16 19:53:30 +02:00
2024-04-22 15:59:13 +02:00
2024-04-22 15:59:13 +02:00
2024-04-23 22:48:21 +02:00
2024-04-23 22:48:21 +02:00
2024-04-24 11:32:25 +02:00
2024-04-24 11:32:25 +02:00
2024-05-09 18:35:50 +02:00
2024-05-09 18:35:50 +02:00
2024-05-10 20:50:09 +02:00
2024-05-10 20:50:09 +02:00
2024-05-10 20:50:09 +02:00
2024-05-10 20:50:09 +02:00
2024-05-15 08:12:11 +02:00
2024-05-15 08:12:11 +02:00
2024-05-15 10:24:50 +02:00
2024-05-15 10:24:50 +02:00
2024-05-15 08:12:11 +02:00
2024-05-15 08:12:11 +02:00
2024-05-15 10:24:50 +02:00
2024-05-15 10:24:50 +02:00
2024-05-15 20:15:14 +02:00
2024-05-15 20:15:14 +02:00
2024-05-23 17:23:50 +02:00
2024-05-23 17:23:50 +02:00
2024-05-27 18:43:02 +02:00
2024-05-27 18:43:02 +02:00
2024-05-29 01:12:00 +02:00
2024-05-29 01:12:00 +02:00
2024-06-03 16:05:15 +02:00
2024-06-03 16:05:15 +02:00
2024-05-31 22:29:15 +02:00
2024-05-31 22:29:15 +02:00
2024-06-08 16:43:48 +02:00
2024-06-08 16:43:48 +02:00
2024-06-13 14:29:33 +02:00
2024-06-13 14:29:33 +02:00
2024-08-31 14:57:35 +02:00
2024-06-14 13:07:35 +02:00
2024-06-17 14:22:47 +02:00
2024-06-17 14:22:47 +02:00
2024-06-22 01:29:23 +02:00
2024-06-22 01:29:23 +02:00
2024-06-25 23:39:34 +02:00
2024-06-25 23:39:34 +02:00
2024-07-03 15:53:45 +02:00
2024-07-03 15:53:45 +02:00
2024-07-08 11:56:53 +02:00
2024-07-08 11:56:53 +02:00
2024-07-11 09:00:56 +02:00
2024-07-11 09:00:56 +02:00
2024-07-27 12:41:01 +02:00
2024-07-27 12:41:01 +02:00
2024-07-29 19:20:00 +02:00
2024-07-29 19:20:00 +02:00
2024-07-31 13:08:28 +02:00
2024-07-31 13:08:28 +02:00
2024-07-31 23:44:40 +02:00
2024-07-31 23:44:40 +02:00
2024-08-01 16:05:03 +02:00
2024-08-01 16:05:03 +02:00
2024-08-05 13:27:13 +02:00
2024-08-05 13:27:13 +02:00
2024-08-30 17:01:04 +02:00
2024-08-30 17:01:04 +02:00
2024-08-31 14:57:35 +02:00
2024-08-31 14:57:35 +02:00
2024-08-30 17:25:53 +02:00
2024-08-30 17:25:53 +02:00
2024-08-31 23:04:12 +02:00
2024-08-31 23:04:12 +02:00
2024-09-19 00:21:15 +02:00
2024-09-19 00:21:15 +02:00
2024-09-06 19:03:09 +02:00
2024-09-06 19:03:09 +02:00
2024-09-07 19:05:34 +02:00
2024-09-07 19:05:34 +02:00
2024-09-08 23:49:09 +02:00
2024-09-08 23:49:09 +02:00
2024-09-09 00:30:09 +02:00
2024-09-09 00:30:09 +02:00
2024-09-19 00:21:15 +02:00
2024-09-19 00:21:15 +02:00
2025-06-17 19:49:00 +02:00
2024-09-20 15:38:38 +02:00
2024-09-21 01:42:15 +02:00
2024-09-21 01:42:15 +02:00
2024-09-26 11:27:37 +02:00
2024-09-26 11:27:37 +02:00
2024-10-03 14:15:01 +02:00
2024-10-03 14:15:01 +02:00
2024-10-18 00:21:52 +02:00
2024-10-18 00:21:52 +02:00
2024-10-08 20:08:29 +02:00
2024-10-08 20:08:29 +02:00
2024-10-09 20:48:18 +02:00
2024-10-09 20:48:18 +02:00
2024-10-28 00:47:19 +01:00
2024-10-28 00:47:19 +01:00
2024-12-13 00:29:01 +01:00
2024-12-13 00:29:01 +01:00
2024-11-05 11:54:08 +01:00
2024-11-05 11:54:08 +01:00
2024-11-14 14:24:35 +01:00
2024-11-14 14:24:35 +01:00
2024-11-09 00:42:10 +01:00
2024-11-09 00:42:10 +01:00
2024-11-07 20:16:14 +01:00
2024-11-07 20:16:14 +01:00
2024-11-15 09:48:48 +01:00
2024-11-15 09:48:48 +01:00
2024-11-18 17:03:50 +01:00
2024-11-18 17:03:50 +01:00
2024-11-21 19:24:38 +01:00
2024-11-21 19:24:38 +01:00
2024-11-19 11:27:55 +01:00
2024-11-19 11:27:55 +01:00
2024-11-20 09:44:34 +01:00
2024-11-20 09:44:34 +01:00
2024-11-21 09:02:24 +01:00
2024-11-21 09:02:24 +01:00
2024-11-22 14:55:48 +01:00
2024-11-22 14:55:48 +01:00
2024-11-25 23:20:51 +01:00
2024-11-25 23:20:51 +01:00
2024-11-27 16:08:31 +01:00
2024-11-27 16:08:31 +01:00
2025-01-24 15:12:41 +01:00
2025-01-24 15:12:41 +01:00
2024-11-27 18:27:06 +01:00
2024-11-27 19:07:31 +01:00
2024-12-06 13:37:45 +01:00
2024-12-06 13:37:45 +01:00
2024-12-04 16:50:17 +01:00
2024-12-04 16:50:17 +01:00
2024-12-04 17:30:58 +01:00
2024-12-04 17:30:58 +01:00
2024-12-05 17:42:33 +01:00
2024-12-05 17:42:33 +01:00
2024-12-06 09:40:32 +01:00
2024-12-06 09:40:32 +01:00
2024-12-10 19:41:11 +01:00
2024-12-10 19:41:11 +01:00
2025-04-20 01:19:02 +02:00
2025-04-20 01:19:02 +02:00
2025-01-06 12:07:09 +01:00
2025-01-06 12:07:09 +01:00
2025-01-10 19:47:17 +01:00
2025-01-10 19:47:17 +01:00
2025-01-09 06:42:36 +01:00
2025-01-09 06:42:36 +01:00
2025-01-14 21:21:24 +01:00
2025-01-14 21:21:24 +01:00
2025-01-14 18:32:25 +01:00
2025-01-14 18:32:25 +01:00
2025-01-23 19:57:13 +01:00
2025-01-23 19:57:13 +01:00
2025-01-16 13:01:45 +01:00
2025-01-16 13:01:45 +01:00
2025-01-17 14:06:47 +01:00
2025-01-17 14:06:47 +01:00
2025-03-20 16:45:21 +01:00
2025-03-20 16:45:21 +01:00
2025-01-24 18:17:00 +01:00
2025-01-24 18:17:00 +01:00
2025-01-29 18:09:47 +01:00
2025-01-29 18:09:47 +01:00
2025-01-28 17:57:40 +01:00
2025-01-28 17:57:40 +01:00
2025-02-13 16:53:57 +01:00
2025-02-13 16:53:57 +01:00
2025-01-29 21:17:36 +01:00
2025-01-29 21:17:36 +01:00
2025-02-18 23:49:45 +01:00
2025-02-18 23:49:45 +01:00
2025-02-04 22:17:30 +01:00
2025-02-04 22:17:30 +01:00
2025-01-31 19:34:23 +01:00
2025-01-31 19:34:23 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 12:37:11 +01:00
2025-02-06 16:46:32 +01:00
2025-02-06 16:46:32 +01:00
2025-02-11 18:16:12 +01:00
2025-02-11 18:16:12 +01:00
2025-02-18 23:49:45 +01:00
2025-02-18 23:49:45 +01:00
2025-02-06 17:38:12 +01:00
2025-02-06 17:38:12 +01:00
2025-02-07 12:27:43 +01:00
2025-02-07 12:27:43 +01:00
2025-02-07 12:27:43 +01:00
2025-02-07 12:27:43 +01:00
2025-02-11 15:57:36 +01:00
2025-02-11 15:57:36 +01:00
2025-02-12 16:34:03 +01:00
2025-02-12 16:34:03 +01:00
2025-02-14 11:12:26 +01:00
2025-02-14 11:12:26 +01:00
2025-02-17 15:20:39 +01:00
2025-02-17 15:20:39 +01:00
2025-02-22 15:02:16 +01:00
2025-02-22 15:02:16 +01:00
2025-02-24 16:10:53 +01:00
2025-02-24 16:10:53 +01:00
2025-02-25 16:35:29 +01:00
2025-02-25 16:35:29 +01:00
2025-02-27 14:37:39 +01:00
2025-02-27 14:37:39 +01:00
2025-03-19 19:41:10 +01:00
2025-03-19 19:41:10 +01:00
2025-03-04 23:52:47 +01:00
2025-03-04 23:52:47 +01:00
2025-03-04 23:52:47 +01:00
2025-03-04 23:52:47 +01:00
2025-02-27 10:01:12 +01:00
2025-02-27 10:01:12 +01:00
2025-03-27 15:12:55 +01:00
2025-03-27 15:12:55 +01:00
2025-03-11 15:24:22 +00:00
2025-03-11 15:24:22 +00:00
2025-03-13 20:39:54 +00:00
2025-03-13 20:39:54 +00:00
2025-03-24 22:08:19 +01:00
2025-03-24 22:08:19 +01:00
2025-03-25 22:36:54 +01:00
2025-03-25 22:36:54 +01:00
2025-03-25 19:53:48 +01:00
2025-03-25 19:53:48 +01:00
2025-03-27 08:43:42 +00:00
2025-03-27 08:43:42 +00:00
2025-03-20 09:54:55 +01:00
2025-03-20 09:54:55 +01:00
2025-03-22 18:37:48 +01:00
2025-03-22 18:37:48 +01:00
2025-03-27 09:47:34 +00:00
2025-03-27 09:47:34 +00:00
2025-04-10 20:39:01 +00:00
2025-04-10 20:39:01 +00:00
2025-04-10 20:39:01 +00:00
2025-04-10 20:39:01 +00:00
2025-03-25 02:00:51 +01:00
2025-03-25 02:00:51 +01:00
2025-03-26 18:38:47 +01:00
2025-03-26 18:38:47 +01:00
2025-04-07 14:58:08 +02:00
2025-04-07 14:58:08 +02:00
2025-04-09 09:38:48 +00:00
2025-04-09 09:38:48 +00:00
2025-04-12 14:47:48 +00:00
2025-04-12 14:47:48 +00:00
2025-05-09 09:50:01 +02:00
2025-05-09 09:50:01 +02:00
2025-04-17 21:51:18 +02:00
2025-04-17 21:51:18 +02:00
2025-04-23 12:18:36 +02:00
2025-04-23 12:18:36 +02:00
2025-04-21 14:43:15 +02:00
2025-04-21 14:43:15 +02:00
2025-05-05 08:54:48 +02:00
2025-05-05 08:54:48 +02:00
2025-04-28 19:17:24 +02:00
2025-04-28 19:17:24 +02:00
2025-04-29 23:32:30 +02:00
2025-04-29 23:32:30 +02:00
2025-04-29 23:47:48 +02:00
2025-04-29 23:47:48 +02:00
2025-05-09 09:50:01 +02:00
2025-05-09 09:50:01 +02:00
2025-05-06 17:59:21 +02:00
2025-05-06 17:59:21 +02:00
2025-05-15 17:38:45 +02:00
2025-05-15 17:38:45 +02:00
2025-05-27 15:52:57 +02:00
2025-05-27 15:52:57 +02:00
2025-05-15 17:54:49 +02:00
2025-05-15 17:54:49 +02:00
2025-05-15 21:59:30 +02:00
2025-05-15 21:59:30 +02:00
2025-05-21 17:49:21 +02:00
2025-05-21 17:49:21 +02:00
2025-05-26 19:38:01 +02:00
2025-05-26 19:38:01 +02:00
2025-06-05 09:30:23 +02:00
2025-06-05 09:30:23 +02:00
2025-07-03 21:02:45 +00:00
2025-07-03 21:02:45 +00:00
2025-06-17 19:49:00 +02:00
2025-06-17 19:49:00 +02:00
2025-06-20 12:07:33 +02:00
2025-06-20 12:07:33 +02:00
2025-07-11 09:56:53 +00:00
2025-07-11 09:56:53 +00:00
2025-07-15 01:50:22 +02:00
2025-07-15 01:50:22 +02:00
2025-07-11 18:55:23 +02:00
2025-07-11 18:55:23 +02:00
2025-07-14 13:08:28 +02:00
2025-07-14 13:08:28 +02:00
2025-07-17 22:15:01 +00:00
2025-07-17 22:15:01 +00:00
2025-07-21 20:08:56 +00:00
2025-07-21 20:08:56 +00:00
2025-08-06 13:55:36 +00:00
2025-07-19 11:04:28 +00:00
2025-07-19 23:16:35 +00:00
2025-07-19 23:16:35 +00:00
2025-08-15 13:03:32 +00:00
2025-08-15 13:03:32 +00:00
2025-08-07 16:46:53 +02:00
2025-08-07 16:46:53 +02:00
2025-08-06 13:55:36 +00:00
2025-08-06 13:55:36 +00:00
2025-07-28 08:52:39 +00:00
2025-07-28 08:52:39 +00:00
2025-08-06 13:55:36 +00:00
2025-08-06 13:55:36 +00:00
2025-08-06 22:40:42 +00:00
2025-08-06 22:40:42 +00:00
2025-08-07 17:45:50 +00:00
2025-08-07 17:45:50 +00:00
2025-08-14 09:06:00 +00:00
2025-08-14 09:06:00 +00:00
2025-08-14 09:06:00 +00:00
2025-08-14 09:06:00 +00:00
2025-08-20 22:40:57 +00:00
2025-08-20 22:40:57 +00:00
2025-09-10 17:42:45 +00:00
2025-09-10 17:42:45 +00:00
2025-08-27 17:44:35 +00:00
2025-08-27 17:44:35 +00:00
2025-08-28 16:56:57 +00:00
2025-08-28 16:56:57 +00:00
2025-08-31 12:19:59 +00:00
2025-08-31 12:19:59 +00:00
2025-09-02 07:48:03 +00:00
2025-09-02 07:48:03 +00:00
2025-09-02 20:15:37 +00:00
2025-09-02 20:15:37 +00:00
2025-09-05 16:06:51 +00:00
2025-09-05 16:06:51 +00:00
2025-09-08 17:27:58 +00:00
2025-09-08 17:27:58 +00:00
2025-09-09 21:04:23 +00:00
2025-09-09 21:04:23 +00:00
2025-09-05 16:06:51 +00:00
2025-09-05 16:06:51 +00:00
2025-09-09 21:04:23 +00:00
2025-09-09 21:04:23 +00:00
2025-09-17 16:48:37 +00:00
2025-09-17 16:48:37 +00:00
2025-09-23 19:22:54 +00:00
2025-09-23 19:22:54 +00:00
2025-09-26 11:26:50 +00:00
2025-09-26 11:26:50 +00:00
2025-10-03 14:04:21 +00:00
2025-10-03 14:04:21 +00:00
2025-10-16 16:49:35 +00:00
2025-10-16 16:49:35 +00:00
2025-10-08 09:18:15 +00:00
2025-10-08 09:18:15 +00:00
2025-10-03 16:30:06 +00:00
2025-10-03 16:30:06 +00:00
2025-10-08 09:18:15 +00:00
2025-10-08 09:18:15 +00:00
2025-10-03 17:27:58 +00:00
2025-10-03 17:27:58 +00:00
2025-10-07 07:00:00 +00:00
2025-10-07 07:00:00 +00:00
2025-10-09 05:07:18 +00:00
2025-10-09 05:07:18 +00:00
2025-10-15 22:30:09 +00:00
2025-10-15 22:30:09 +00:00