[Beam]
- BREAKING: Removed auto-enabling of AIRBRAKE error logging in case
AIRBRAKE_ENABLED
is missing. remp/remp#994
- remplib.js - added option to track article’s
contentType
when tracking pageviews. remp/remp#988
- Breaking: Derived parameter
is_article
in Elastic storage is set to true
only if value of contentType
is set to 'article'
. Previously, all tracked articles had is_article
value set to true
- this may affect Beam segments that worked with article: true
rule or users processing is_article
parameter in raw Elastic data.
- Refactored beam
CompressAggregations
command to run in chunks because of colliding database transactions with AggregatePageviewLoadJob
command, which caused deadlock. remp/remp#944
- Added
content_type
filter to the api/articles/unread
API to exclude unwanted content types. remp/remp#973
- Added support for remplib.js reinitialization, necessary for correct execution in single-page apps. See README for more information. remp/remp#968
- Fixed broken
ArticleSeeder
and EntitySeeder
.
- Fixed possibility of an error on the articles grids if filter matched too many articles. remp/remp#977
- Added
SameSite=Lax
attribute to all cookies set by remplib.js
. Missing attribute could possibly lead to issues on Safari, which doesn’t defaults to Lax
like other browsers. remp/remp#957
- [Tracker] Added option to limit tracked time spent for one pageview. Set tracker’s ENV variable
TRACKER_TIMESPENT_LIMIT
to desired pageview tracking threshold (in seconds). Helps to filter out tracking of articles opened for too long (forgotten browser window on different workspace/monitor acts as active in some browsers). remp/remp#242
- [Tracker] Added support for canonical URL tracking to complement full URL tracking. If it’s not found in the HTML, no canonical URL is stored and only regular URL is tracked. remp/remp#988
- Added tooltip to the user path chart. remp/remp#551
- Updated Docker Telegraf configuration to include
canonical_url
in the concurrents data. This will be necessary in the future to correctly display non-article traffic on the main dashboard. remp/remp#472
- Changed output of
service:elastic-data-retention
Beam command to correctly reflect if index was deleted or not. remp/remp#940
- [Segments] Fixed ignoring of segment’s
active
flag in user/browser segment presence API check. remp/remp#1007
- The bug caused that it was possible to check presence of users/browsers in segments even if the segment was not active.
- Property filter now correctly filters all sections of Beam, not just the main dashboard data. remp/remp#987
[Campaign]
- BREAKING: Removed auto-enabling of AIRBRAKE error logging in case
AIRBRAKE_ENABLED
is missing. remp/remp#994
- Fixed caching of Newsletter rectangle banner, which broke after the recent framework updates and caused configuration not to be available at the time of banner rendering. remp/remp#959
- Changed default stats view to include 30 days of data instead of 2 to allow bigger picture in campaign evaluation by default. remp/remp#969
- Added support for remplib.js reinitialization, necessary for correct execution in single-page apps. See README for more information. remp/remp#968
- Fixed unnecessary storing of empty URL/referer filters of “Where to display” section in campaign configuration. remp/remp#975
- Added
SameSite=Lax
attribute to all cookies set by remplib.js
. Missing attribute could possibly lead to issues on Safari, which doesn’t defaults to Lax
like other browsers. remp/remp#957
- Added
rtmSource
to campaign’s custom JS params, so clients can correctly track events without hardcoding the rtmSource
to some arbitrary value.
- Added support for global campaign/banner variables. See README for more information. remp/remp#972
- Fixed missing
variables
template param in BannerController->copy
method. remp/remp#991
- Fixed inefficient querying of campaign active status on campaign listing. remp/remp#1000
- Added support for pageview attributes to showtime request and added ui for configuring pageview attributes to campaign form. See README for more information. remp/remp#986
- Added error logging from showtime experiment
showtime.php
into laravel.log
. remp/remp#994
- Added support for Sentry error logging from showtime experiment
showtime.php
. remp/remp#994
[Mailer]
- BREAKING: Renamed
UrlParserGenerator
to ArticleUrlParserGenerator
. remp/remp#949
- Check your configuration if you are registering this generator.
- BREAKING: Finalized refactoring of
Remp\MailerModule\Repositories\IConversionsRepository
interface, removed obsolete methods. remp/remp#907
- Methods
getBatchTemplatesConversions
and getNonBatchTemplateConversions
were removed, because they encouraged suboptimal (non-time-constrained) implementation.
- In your implementation replace them with newly added
getBatchTemplatesConversionsSince
and getNonBatchTemplatesConversionsSince
respectively.
- BREAKING: Removed public preview URL specified by template code. remp/remp#581
- IMPORTANT: The database migration can take up to 5-10 minutes, depending on the number of mail templates you currently have. Our testing migration with 100K templates took around 10 minutes.
- Use replacement public preview URL specified by random string (so it’s not guessable).
- If you need to obtain HTML of email via template code, you can use newly added
/api/v1/mailers/render-template
API.
- Changed encoding of
mail_logs.subject
column to uft8mb4_unicode_ci
to match encoding of mail_templates.subject
. remp/remp#984
- IMPORTANT: If you have more then 50M records in the
mail_logs
table, the MailLogsSubjectEncoding
migration can be time-consuming. Consider raising your deploy timeout limits or mark the migration as complete and run the queries manually. Our testing migration with ~20M records took 3 minutes.
- Added email generator
ShopUrlParserGenerator
to get informations about products. remp/remp#949
- Fixed broken new email template page when no layout or newsletter list was defined.
- Added
SimpleAuthenticator
, which keeps plain list of emails and passwords that are valid to log in. Mailer can use this authenticator (instead of e.g. Sso Authenticator
) to make it work without an external authentication system.
- Added support for
ignore_content_types
parameter in UnreadArticlesResolver
used in generated/personalized e-mails. Parameter excludes articles of certain content types and avoids their use in generated e-mails. remp/remp#973
- Added public preview for emails (templates), accessible without authentication. Preview link is accessible in each email detail eg.: (http://mailer.remp.press/template/show/1). remp/remp#581
- Added API endpoint
/api/v1/mailers/render-template
. Returns a rendered HTML email. remp/remp#581
- Added widget for
ArticleUrlParserGenerator
. remp/remp#946
- Added demo user subscriptions in
demo:seed
command.
- Added the check of cache to prevent display campaigns to users excluded from campaigns. remp/remp#833
- Fixed job unsubscribe stats inconsistency. remp/remp#993
- Job detail (left panel) could display unsubscribes for non-related newsletter lists unsubscribed along with the sent newsletter.
- Added
ApplicationStatus
component, displaying online/offline status of Mailer workers. As follow up, MissingConfiguration
component was removed and its functionality was merged into ApplicationStatus
component. remp/remp#985