Releases: remp2020/remp
0.11.1
[Beam]
- Added environment variables to configure Redis databases in Laravel. remp/remp#671
[Campaign]
- Added environment variables to configure Redis databases in Laravel. remp/remp#671
[Sso]
- Added environment variables to configure Redis databases in Laravel. remp/remp#671
0.11.0
Docker
-
BREAKING: Replaced
spotify/kafka
docker image withwurstmeister/kafka
as original image was no longer maintained and new installations stopped working. remp/remp#638- In case you have existing installation in place using the docker compose, please run:
docker-compose stop beam_tracker telegraf docker-compose rm beam_tracker telegraf docker-compose build beam_tracker telegraf
- In case you have existing installation in place using the docker compose, please run:
[Mailer]
- Added API endpoint
mailers/mail-type-categories
to list mail type categories. GH-64 - Extended API endpoint
mailers/mail-types
to include additional data and filter viapublic_listing
andcode
parameters. GH-64 - Added API endpoint
users/is-unsubscribed
to check if user is explicitly unsubscribed from the newsletter. GH-64 - Added API endpoint
users/logs-count-per-status
to get number of emails sent to user per each status within provided timeframe. GH-64 - Added API endpoint
users/logs
to retrieve logs of emails sent to user. Various filter can apply, see README.md for more details. GH-64 - Added JSON schema validation to
Subscribe
andBulkSubscribe
APIs. GH-64 - Added API endpoint
users/preferences
to read user's subscriptions to newsletters (mail types). GH-64 - Improved speed of job detail page - unsubscribe stats could slow rendering a bit if job was sent to 6+-figure recipients. remp/remp#624
- Added API endpoint
mailers/mail-templates
to list and filter available mail templates. - Added early-version support for search in the top searchbox. Searchable are emails (templates), layouts, jobs and newsletter lists. GH-69
- Added early-version support for WYSIWYG editor in Template edit form. It's configurable in
config.local.neon
, Mailer keeps HTML editor as default for now. GH-58
[Beam]
- Added early-version support for search in the top searchbox. Searchable are articles, authors, sections, tags and segments. GH-62
- Added support for timezone parameter in Journal aggregations. remp/remp#605
- Quick range day filters now start from beginning of the day. remp/remp#605
- Added
FORCE_HTTPS
environment variable to enforce HTTPS generation to URLs instead of determining protocol based on the request. This is useful in case you're running your application onhttps
, but internally use proxy forwarding the request viahttp
. remp/remp#619 - Added new APIs
api/authors/top
andapi/tags/top
for retrieving top authors and tags per given time period. remp/web#366 - Articles upsert v2 api endpoint - process article titles only if they are present in payload. remp/remp#646
- Fixed remplib initialization which could use misidentification of user -
remplib.getUserId()
would returnnull
even when theuserId
was correctly set inrempConfig
. remp/remp#651
[Campaign]
- Added early-version support for search in the top searchbox. Searchable are banners and campaigns. GH-62
- Improved intervals in campaign stats charts. remp/remp#605
- Quick range day filters now start from beginning of the day. remp/remp#605
- Added
FORCE_HTTPS
environment variable to enforce HTTPS generation to URLs instead of determining protocol based on the request. This is useful in case you're running your application onhttps
, but internally use proxy forwarding the request viahttp
. remp/remp#619 - Fixed add new ab variant replaces last variant instead of adding new after last one. remp/remp#634
- Added option to disable banner events tracking. remp/remp#636
- Added ability to access banner properties in custom JS code run in banner via newly added
params
object. remp/remp#636 - Changed wording of hints in campaign's segment selection form. remp/remp#645
- Fixed remplib initialization which could use misidentification of user -
remplib.getUserId()
would returnnull
even when theuserId
was correctly set inrempConfig
. remp/remp#651
[Sso]
- Added
FORCE_HTTPS
environment variable to enforce HTTPS generation to URLs instead of determining protocol based on the request. This is useful in case you're running your application onhttps
, but internally use proxy forwarding the request viahttp
. remp/remp#619
0.10.0
Elasticsearch upgrade notice. We'll be raising Elasticsearch compatibility to 7.* in the first half of 2020 to keep with the latest changes. Current implementation Segments API is tested and maintained again Elasticsearch 6.*. Please plan your upgrade accordingly.
[Beam]
- Added support for conversion rate sorting in Conversions data table. remp/remp#306
- Fixed error thrown when using main search on authors listing. remp/remp#531
- Added command to maintain data retention for rolled-over Elastic indices. remp/remp#527
- Pageviews graph in article details page loads data from Journal snapshots instead of directly quering Journal API by default. Option
PAGEVIEWS_DATA_SOURCE
added to.env
file to allow switching to old behaviour. remp/remp#442 rempConfig.tracker
configuration optionexplicit_referer_medium
is deprecated and renamed torefererMedium
. The old one is still accepted due to compatibility reasons.- Added support for referer medium renaming - one can specify label for each medium by adding a record to
referer_medium_labels
table. remp/remp#543 - Updated layout footer with link to REMP website. remp/remp#522 HEAD
- Added ability to display external events in article detail and dashboard. remp/remp#574
- Added (optional)
article_id
field to event parameters pushed to tracker. remp/remp#556 - Fixed property naming validator issue checking unique constraint against account names, not property names.
- Added article conversion/pageviews stats filtering based on selected property. GH-50
- Added support for article tags (storing tags associated with articles, filtering in data tables). remp/remp#217
- Added top articles endpoint for listing top articles by time, sections. remp/web#1010
- Fixed duplicate conversions if multiple sections/tags/authors were linked to article.
- Fixed missing conversions if no section/tag/author was linked to article. remp/remp#586
[Campaign]
- Updated layout footer with link to REMP website. remp/remp#522
- Fixed missing validation rules for collapsible bar banner template. remp/remp#558
- Added support for campaign segment exclusion. User now need to match both inclusion and exclusion segment rules to see the campaign banner. GH-33
- Overal rectangle banner button text and main text attributes are now optional. This is useful when e.g. only using picture inside the banner. remp/remp#582
- Texts in collapsible bar, bar and medium rectangle bar templates are now optional. remp/remp#597
[Mailer]
- BREAKING: Attachment parameter in
send-email
API is now required to be base64-encoded to support PDF (and other binary) attachments. - BREAKING: Context checking during email sending now only checks if user received an email with given context before; Mailer ignores
mail_template_code
being sent. In previous version, two different mail templates with same context could be sent to the same user. This version prevents such behavior. remp/crm#987 - BREAKING: Removed hardcoded support for Errbit/Airbrake error logging, added support for Sentry logging. See README for details on how to configure Sentry to track errors.
- Updated layout footer with link to REMP website. remp/remp#522
- Added possibility to filter hermes payload parameters in logs. Parameters
password
andtoken
are already filtered by default. Seeconfig.neon
for reference how to extend filtering with own parameters. - Added hermes handler to unsubscribe users from mail type if emails are dropped. You can enable the feature in
config.local.neon
(see example file for reference). remp/remp#566 - Added configuration for allowed preflight (
OPTIONS
) headers into configuration. You can configure them via%preflight.headers
parameter - see example use. - Fixed possible duplicate email for same context being sent, in case the emails were scheduled at the same time via
send-email
API. - Fixed and redesigned mailing list variants statistics to be sortable and filterable. remp/remp#593
- Fixed attachment_size column type - changing to integer (from incorrectly assigned datetime).
- Added option to select events to handle when starting Hermes worker in case there's need to run separate workers for mission-critical event types.
[Sso]
- Updated layout footer with link to REMP website. remp/remp#522
0.9.1
Elasticsearch upgrade notice. We'll be raising Elasticsearch compatibility to 7.* in the beginning of 2020 to keep with the latest changes. Current implementation Segments API is tested and maintained again Elasticsearch 6.*. Please plan your upgrade accordingly.
[Beam]
- Numeric columns in conversion are sorted descending first (and only way). remp/remp#306
- Fixed occasional duplicate records in article listings across Beam. remp/remp#482
- Fixed missing articles on author detail if the article doesn't belong to any section.
[Mailer]
- Fixed possible error on newsletter list editing if custom sorting was used. remp/remp#516
- Fixed autologin parameter in unsubscribe email links. remp/remp#518
0.9.0
Elasticsearch upgrade notice. We'll be raising Elasticsearch compatibility to 7.* in the beginning of 2020 to keep with the latest changes. Current implementation Segments API is tested and maintained again Elasticsearch 6.*. Please plan your upgrade accordingly.
Go was updated to version 1.13.
[Beam]
- Major refactoring and redesign of IOTA (on-site stats) which now include more relevant statistics. GH-24
- Article detail now shows referer (traffic source) statistics. remp/remp#445
- Added command for compressing snapshot data. remp/remp#442
- Timespent interval configuration in JS is now configurable. remp/remp#461
- Added configuration for various views of conversion rate (decimals, multiplier). remp/remp#475
- Added support for property token selection on Beam dashboard. remp/remp#473
[Campaign]
- Bugfixed notice in showtime when adblock was not detectable. remp/remp#447
- Campaign listing now displays segment names instead of segment codes.
- Bugfixed campaign form not being able to update some options to their default value.
- Added HTML overlay banner template. remp/remp#457
- Added support to pass custom query parameters to displayed banner URL.
- All links in banner (not just CTA) now include Campaign's UTM parameters. remp/remp#455
[Mailer]
- Updated Hermes library, logging only error events to the database.
- Refactored UTM parameter replacing in email links.
- Added support to send single emails via API.
0.8.2
Elasticsearch upgrade notice. We'll be raising Elasticsearch compatibility to 7.* in the beginning of 2020 to keep with the latest changes. Current implementation Segments API is tested and maintained again Elasticsearch 6.*. Please plan your upgrade accordingly.
Changelog:
-
[Mailer]: Fixing error screen in case SSO wasn't able to log user in 7fd4154
Please change following line in your
.env
file in Mailer:SSO_ERROR_URL=http://mailer.remp.press/sign/error
-
[Campaign]: Some tables didn't have primary keys since creation. This was preventing migrations on the replicated instances. This release fixes the failing migration issue. f211d2c
Note: generated binaries are the same as in 0.8.1
, no need to deploy them if you have 0.8.1
deployed.
0.8.1
Elasticsearch upgrade notice. We'll be raising Elasticsearch compatibility to 7.* in the beginning of 2020 to keep with the latest changes. Current implementation Segments API is tested and maintained again Elasticsearch 6.*. Please plan your upgrade accordingly.
Changelog:
-
[Segments]: Fixing mapping fetching changes which was causing "include_type_name" deprecation notices since Elastic 6.8. This is to prepare to provide full compatibility for Elastic 7.* and drop compatibility promise for 6.* in the following months.
-
[Beam]: Added experimental database-based dashboard data source which works with snapshot of "concurrents" data made every minute. Snapshotting is being done automatically for you against concurrents_by_browser elastic index. This should be populated by your Telegraf instance based on similar configuration.
0.8.0
Changelog:
-
[Mailer]: Material checkbox was not being rendered properly in Mailer causing custom generator implementations not being able to use it.
-
[Mailer]: If generated queue was too big, memory exhausted exception was possible. Pagination was added to queue generation prevent the issue.
-
[Beam]: New functions for tracking commerce events were added to give caller more precise control over what is being tracked. See documentation of following methods in https://github.com/remp2020/remp/tree/master/Beam#js-tracking-interface:
remplib.tracker.trackCheckoutWithSource
remplib.tracker.trackPaymentWithSource
remplib.tracker.trackPurchaseWithSource
remplib.tracker.trackRefundWithSource
-
[Beam]: In some cases, Beam's database could have been migrated with invalid default value for conversion's paid_at column. 553c2dc
-
[Campaign]: New configuration options were added to append extra query parameters to banner's target URL in case target page needs to identify source page/article and referer is not enough.
See
rempConfig.campaign.bannerUrlParams
object at https://github.com/remp2020/remp/tree/master/Campaign#javascript-snippet for more detailed info:bannerUrlParams: { "foo": function() { return "bar" }, "baz": function() { return "XXX" } }
-
[Campaign]: HTML banner now supports custom JS and CSS inclusion from external sources.
-
[Campaign]: Bugfixing HTML banner's Farbtastic color picker which was not being initialized after the latest dependency changes.
Note: Generated binaries were not changed since 0.7.0, there's no need to redeploy them if you have 0.7.0 deployed.
0.7.0
Changelog:
- [Breaking][Segments]: Configuration option
ELASTIC_ADDR
in.env
file was renamed toELASTIC_ADDRS
. The value now supports multiple comma-separated addresses to Elastic servers. At least one address needs to be functional for application to start. - [Tracker]: Tracker now tries to parse provided referer manually before it's passed to the source detection library. If the referer is not parseable,
derived_referer_medium
is set asunknown
.
0.6.1
Changelog:
- [Tracker]: New property "explicit_referer_medium" added to tracker options. It allows to specify custom referer (not based on Referer HTTP header) when tracking pageviews. The value can be utilized later, e.g. in Beam dashboard statistics.
- [Tracker]: Added support for tracking of reading progress (both for full page and for articles). See
swagger.json
and section related totrack/pageview
. - [Segments]: New "inverse" flag added, which allows to invert arbitrary "filter_by" condition when querying Segments API.
Related to reading progress tracking, we've also release updated version of our Telegraf fork. You can download the newest version (1.10.4) here: https://github.com/remp2020/telegraf/releases