mirror of
https://github.com/plausible/analytics.git
synced 2024-12-27 19:47:26 +03:00
f8b4d5066a
* Clean up references to no longer active `google_analytics_imports` Oban queue * Stub CSV importer * Add SiteImport schema * Rename `Plausible.Imported` module file to match module name * Add `import_id` column to `Imported.*` CH schemas * Implement Importer behavior and manage imports state using new entities * Implement importer callbacks and maintain site.imported_data for UA * Keep imports in sync when forgetting all imports * Scope imported data queries to completed import IDs * Mark newly imported data with respective import ID * Clean up Importer implementation a bit * Test querying legacy and new imported data * Send Oban notifications on import worker failure too * Fix checking for forgettable imports and remove redundant function * Fix UA integration test * Change site import source to atom enum and add source label * Add typespecs and reduce repetition in `Plausible.Imported` * Improve documentation and typespecs * Add test for purging particular import * Switch email notification templates depending on import source * Document running import synchronously * Fix UA importer args parsing and ensure it's covered by tests * Clear `site.stats_start_date` on complete import to force recalculation * Test Oban notifications (h/t @ruslandoga) * Purge stats on import failure right away to reduce a chance of leaving debris behind * Fix typos Co-authored-by: hq1 <hq@mtod.org> * Fix another typo * Refactor fetching earliest import and earliest stats start date * Use `Date.after?` instead of `Timex.after?` * Cache import data in site virtual fields and limit queried imports to 5 * Ensure always current `stats_start_date` is used * Work around broken typespec in Timex * Make `SiteController.forget_imported` action idempotent * Discard irrecoverably failed import tasks * Use macros for site import statuses There's also a fix ensuring only complete imports are considered where relevant - couldn't isolate it as it was in a common hunk * Use `import_id` as worker job uniqueness criterion * Do not load imported stats data in plugins API context --------- Co-authored-by: hq1 <hq@mtod.org> |
||
---|---|---|
.. | ||
activation_email.html.eex | ||
approaching_accept_traffic_until.html.heex | ||
cancellation_email.html.eex | ||
check_stats_email.html.eex | ||
create_site_email.html.eex | ||
dashboard_locked.html.eex | ||
enterprise_over_limit_internal.html.eex | ||
error_report_email.html.eex | ||
existing_user_invitation.html.eex | ||
google_analytics_import.html.heex | ||
invitation_accepted.html.eex | ||
invitation_rejected.html.eex | ||
new_user_invitation.html.eex | ||
over_limit.html.eex | ||
ownership_transfer_accepted.html.eex | ||
ownership_transfer_rejected.html.eex | ||
ownership_transfer_request.html.eex | ||
password_reset_email.html.eex | ||
site_member_removed.html.eex | ||
site_setup_help_email.html.eex | ||
site_setup_success_email.html.eex | ||
spike_notification.html.eex | ||
trial_one_week_reminder.html.eex | ||
trial_over_email.html.eex | ||
trial_upgrade_email.html.eex | ||
two_factor_disabled_email.html.heex | ||
two_factor_enabled_email.html.heex | ||
welcome_email.html.eex | ||
yearly_expiration_notification.html.eex | ||
yearly_renewal_notification.html.eex |