Skip to content

Releases: remp2020/remp

0.23.0

12 May 12:29
a3e4652
Compare
Choose a tag to compare

Project

  • Fixed possible UI flaws caused by select pickers overflowing if the content is too wide. remp/remp#781

[Beam]

  • BREAKING: Environment variable QUEUE_DRIVER changed to QUEUE_CONNECTION, please update your .env file accordingly. remp/remp#491
  • Upgraded Laravel version to 5.8. remp/remp#491
  • Fixed possibility of missing data in the Segments API unique count aggregation if the aggregation was not fully resolved - if one of the groupped fields was not set in the raw data. remp/remp#902
  • Fixed missing Access-Control-Allow-Headers header in preflight request causing IOTA loading issues. remp/remp#905
  • Added option to specify tags parameter in /api/articles/top and /api/authors/top API endpoints via name or external_id parameters. remp/remp#897
  • Added TagCategory to categorize Tags. Added support for TagCategories to /api/v2/articles/upsert API. remp/remp#898

[Campaign]

  • BREAKING: Environment variable QUEUE_DRIVER changed to QUEUE_CONNECTION, please update your .env file accordingly. remp/remp#491
  • Upgraded Laravel version to 5.8. remp/remp#491

[Mailer]

  • Fixed incorrect updated_at setting when subscribing user to the newsletter and updating newsletter. remp/remp#896
  • Added page_url to ListForm to set frontend URL where information about newsletter (with past editions) is available. remp/remp#882
  • Added separate configuration for tests, so we can guarantee tests reproducibility. remp/remp#890
  • Added context and mail_type_variant_id parameters to MailJobCreateApiHandler. remp/remp#890
  • Added API endpoint /api/v1/mailers/mail-type-variants to create new mail type variants. See README.md for more details. remp/remp#890
  • Fixed "copy" feature of mail templates broken since internal changes in 0.20.0. remp/crm#1889
  • Changed type of payload column in hermes_tasks error logging table to mediumtext to avoid issues with trimmed payloads in case the hermes message was bigger. remp/crm#1891

[Sso]

  • BREAKING: Environment variable QUEUE_DRIVER changed to QUEUE_CONNECTION, please update your .env file accordingly. remp/remp#491
  • Upgraded Laravel version to 5.8. remp/remp#491

0.22.0

28 Apr 05:27
266ae70
Compare
Choose a tag to compare

Project

  • BREAKING: Bumping minimal version of PHP to 7.4. Version is enforced by Composer and any older version is not allowed anymore. Please upgrade PHP accordingly.

[Beam]

  • Added support for Sentry error logging. Airbrake is becoming obsolete and will be dropped in the future releases. remp/remp#888

[Campaign]

  • Added support for Sentry error logging. Airbrake is becoming obsolete and will be dropped in the future releases. remp/remp#888
  • Fixed segment caching if there's an issue with listing of segment. remp/remp#891

[Mailer]

  • Added email parameter to templates. Previously it could have been available by returning it via IUser interface in jobs, from now it's available everywhere. remp/remp#880
  • Fixed slow mailgun events hermes processing by adding missing mail_sender_id index. remp/remp#881
  • Added attribute autocomplete=off to start_at input field in NewBatchForm. remp/remp#854
  • Added save_start submit button to NewBatchForm to create new mail job batch and set its status to ready. remp/remp#855
  • Changed MailWorkerCommand to clean mail_job_queue table after all batch mail jobs are done. This change should help with email sending issues caused by possible database deadlock. remp/remp#886

[Sso]

  • Added support for Sentry error logging. Airbrake is becoming obsolete and will be dropped in the future releases. remp/remp#888
  • Added documentation for JWT_EMAIL_PATTERN_WHITELIST variable, fixed how email is validated against listed domains. remp/remp#848

0.21.5

13 Apr 13:00
9ba6744
Compare
Choose a tag to compare

[Beam]

  • Fixed pageviews and time spent stats in tags listing. remp/remp#776

[Mailer]

  • Fixed unresolved settings and unsubscribe template variables if system was configured to use Mailgun mailer with batch sending. Please be aware that there's still known issue that the links do not receive tracking (RTM) params if batch sending is used. remp/remp#879

0.21.4

07 Apr 12:05
7a5235a
Compare
Choose a tag to compare

[Mailer]

  • Changed MailgunEventHandler to emit email-dropped message when event failed with severity=permanent occurs. remp/remp#868
  • Fixed new email create bug throwing an error if "click tracking" was selected to non-default value. remp/remp#875

0.21.3

06 Apr 12:51
06155e0
Compare
Choose a tag to compare

[Mailer]

  • Fixed incompatible types warning in SnippetsRepository. remp/remp#874

0.21.2

06 Apr 12:20
a0e6189
Compare
Choose a tag to compare

[Beam]

  • Fixed broken aggregaton of pageviews data which didn't correctly aggregate anonymous pageview and timespent counts/sums. remp/remp#869
    • Based on your current data retention setup, it's recommended to reaggregate the data after you release the segments API fix (replace 1000 with the actual number of hours you want to reaggregate):
      for i in {0..1000} ; do php artisan pageviews:aggregate-load --now="$i hours ago" ; done
      for i in {0..1000} ; do php artisan pageviews:aggregate-timespent --now="$i hours ago" ; done
      

[Mailer]

  • Changed MissingConfiguration component to check configurations of all mailers used as sending mailers in newsletter lists besides default mailer. remp/remp#858
  • Fixed Bearer authorization in /api/v1/users/logs and /api/v1/users/logs-count-per-status API calls. remp/remp#865
  • Added support for checkbox in the settings page. remp/crm#1624
  • Fixed Mailer forms - all fields are required and couldn't be changed. remp/remp#837
  • Added UrlParserGenerator requires articles urls to be filled. remp/remp#837
  • Fixed incompatible types warning in ConfigsRepository. remp/remp#874

0.21.1

31 Mar 05:12
e74fc33
Compare
Choose a tag to compare

[Mailer]

  • Fixed "template is not defined" errors during sending if snippets were used. remp/remp#871

0.21.0

29 Mar 09:13
bc063a9
Compare
Choose a tag to compare

[Campaign]

  • Fixed adding of new variant to the existing campaign. remp/remp#860

[Mailer]

  • Added support for multiple mailers of the same class. Added optional code parameter to Mailer constructor to set unique code for mailer and differentiate between mailers of the same type. remp/remp#828
  • Added code option to MailgunEventsCommand to set up command for specific Mailgun mailer. remp/remp#828
  • Fixed validation of mail generator API. remp/remp#866

0.20.0

23 Mar 09:02
a08dc98
Compare
Choose a tag to compare

Project

  • BREAKING: All applications now require Node 12+. Please schedule update of Node accordingly.
  • Updated docker image of Telegraf to the currently latest 1.17.3.
  • Fixed occasional very slow initialization of grid filters causing whole grids to load slowly (tens of seconds).

[Beam]

  • Added new function remplib.tracker.setArticle to allow setting article information to REMP JS tracking script after the script was already initialized. remp/crm#1635
  • Added new optional parameter includeStorageParams for internal function addSystemUserParams to allow trackCheckout function gets stored tracking parameters. remp/crm#1617
  • [Tracker] Fixed possible overwrite of category when tracking pageview and event APIs with category key in tracked tags.
  • Added statistics and detail page for sections and tags. remp/remp#776
  • Fixed remplib initialization flow - there was a window where remplib wasn't yet initialized but public functions would be callable. These calls would cause errors. remp/remp#856

[Campaign]

  • Fixed bug for some banner templates if the saved text was too long. remp/remp#819
  • Fixed text warning in campaign form segments list. remp/remp#584
  • Added emitting of remp:showtimeReady JS event when all banners from showtime were processed. Event can be used when you want to run your implementation after the showtime asynchronous execution. remp/web#1393
  • Fixed missing click tracking in OverlayTwoButtonSignature banner preview template. remp/remp#797
  • Fixed broken control group tracking when showtime experiment (fast implementation) is used.
  • Fixed missing campaign_id in banners created by CampaignSeeder. remp/remp#838

[Mailer]

  • BREAKING: Updated underlying Nette framework to the latest version (3.1).
    • Update Composer to version 2.
    • In app/config/config.local.neon replace class keyword with factory.
    • If you implemented your own mailers:
      • Interface Nette\Mail\IMailer should be replaced in favor of Nette\Mail\Mailer.
    • If you implemented your own authenticators:
      • Interface Nette\Security\IAuthenticator should be replaced in favor of Nette\Security\Authenticator.
      • Interface Nette\Http\UserStorage should be replaced in favor of Nette\Bridges\SecurityHttp\SessionStorage.
      • Interface Nette\Security\Identity should be replaced in favor of Nette\Security\SimpleIdentity.
    • If you implemented your own API handlers:
      • API handler registration method (the one called in the config) changed from addApiHandler to addApi

      • API handler parameter definition changed. If you implement your own handlers, change the definition based on the following examples:

        [
            new InputParam(InputParam::TYPE_POST, 'name', InputParam::REQUIRED),
            new InputParam(InputParam::TYPE_GET, 'mail_type_codes', InputParam::OPTIONAL, null, true),
            new InputParam(InputParam::TYPE_POST_RAW, 'raw'),
        ];
        [
            (new PostInputParam('name'))->setRequired(),
            (new GetInputParam('mail_type_codes'))->setMulti(),
            new RawInputParam('raw'),
        ];
      • API handle handle method signature changed to handle(array $params): ResponseInterface.

    • Configuration of form control html attributes changed from setAttribute to setHtmlAttribute.
  • Added new codes parameter to GET /api/v1/mailers/templates API endpoint. Parameter is used to list email templates for given mail_template codes. remp/remp#814
  • Added click_tracking parameter to POST /api/v1/mailers/templates to define whether click tracking should be enabled/disabled/use default for created template. remp/remp#824
  • Added snippets which are independent part of emails that can be included across all templates, layouts and other snippets. remp/remp#550
  • Fixed email conversion matching and processing. Bug was introduced in 0.17.0 and caused no conversions to be matched with the emails. remp/remp#834
  • Added support for textarea in the settings page. remp/crm#1624.
  • Changed dashboard subscribers count chart readability. Instead of absolute counts the chart now displays gain/loses of subscribers compared to 30 days ago. remp/remp#701
  • Changed list detail subscribers count chart readability. Instead of absolute counts the chart now displays gain/loses of subscribers compared to 30 days ago. remp/remp#701
  • Added mail_type to snippets to define snippets with same code for different mail types. When rendering mail template that includes snippet, first it tries to match snippet with mail type of given template. If there is not specified snippet with mail type then it uses general snippet with no mail type included. remp/remp#816

0.19.0

16 Feb 11:44
c8fe967
Compare
Choose a tag to compare

Important

We have identified possibly incorrectly stored values in timestamp columns of Beam/Campaign/SSO applications.

This issue could have occurred if your database time_zone was not set to the UTC and used any other local timezone. All features worked correctly, but the underlying date was not stored correctly and issues could have emerged later.

If you're not sure if your database is in UTC, follow these steps to verify and fix the issue. Otherwise you could see incorrect dates in the app after the update to this version.

  1. Check whether your database is configured in UTC. Please run following query in Beam:

    select published_at, convert_tz(published_at, '+00:00', @@session.time_zone) from articles order by published_at desc limit 1;

    The result will look like this:

    +---------------------+---------------------------------------------------------+
    | published_at        | convert_tz(published_at, '+00:00', @@session.time_zone) |
    +---------------------+---------------------------------------------------------+
    | 2021-01-25 14:01:04 | 2021-01-25 15:01:04                                     |
    
  2. If the two dates are the same, your DB uses UTC and you're fine. Otherwise, proceed to this tutorial: https://gist.github.com/rootpd/c5e04612e47c80a10635a0477a4afa8e.

[Beam]

  • Added option to filter top articles and top tags by author. remp/remp#803
  • [Segments]: Improved live caching of segments, avoiding queries that are not necessary to execute.
  • [Segments]: Explicitly closing open Elastic scrolls once we don't need them anymore, since they're expensive to maintain for Elastic.
  • Added explicit DB connection time zone to enforce UTC communication between application and database. remp/remp#809
  • Added command for processing of conversion sources that runs in batch mode or for specific conversion (php artisan conversions:process-sources [--conversion_id]). remp/remp#464
    • Added new conversion_sources table. remp/remp#464
    • Processing of conversion sources is also invoked in conversion upsert endpoint right after aggregation of conversion events. remp/remp#464
  • Calling of conversion events aggregation has been moved into separate job class. Another job class has been created for conversion sources command as well. remp/remp#464
  • Added new columns in articles.show view into referer stats section - first conversion source count and last conversion source count. remp/remp#464
  • [Segments]: Added new referer-based fields to the API responses (see Swagger for additional information):
    • derived_referer_host_with_path
    • derived_referer_medium
    • derived_referer_source

[Campaign]

  • Fixed possible issue with campaign stats A/B test evaluation if variant had 100% conversion rate.
  • Added explicit DB connection time zone to enforce UTC communication between application and database. remp/remp#809

[Mailer]

  • BREAKING: Service hermesRestart was renamed to hermesShutdown to correctly indicate its behavior.
    • If you used it in your configuration, please replace the usage of hermesRestart to hermesShutdown.
    • Replace the use of Tomaj\Hermes\Restart\RedisRestart to Tomaj\Hermes\Shutdown\RedisShutdown.
    • Replace the use of Tomaj\Hermes\Restart\SharedFileRestart to Tomaj\Hermes\Shutdown\SharedFileShutdown.
  • Added support for custom Message-ID headers in Mailer in Mailgun implementation. Mailgun reused same Message-ID for all emails within one batch which could cause unexpected behavior. remp/remp#801
  • Fixed type-related issue with Mailgun event daemon processor which caused synchronization not to work.
  • Added support for Hermes message priorities. See app/config/config.local.neon.example for example use of registering multiple priority queues for Hermes.
  • Fixed injection of UNSUBSCRIBE_URL environment variable into the email parameters. Sender was injecting only name of the newsletter list instead of the whole UNSUBSCRIBE_URL with %type% replaced with the actual newsletter list code. #87
  • Added option to configure which mailer to use for each mail type (list) separately. remp/remp#793

[Sso]

  • Models from \App namespace moved to App\Models (compatibility with current Laravel conventions).
  • Added explicit DB connection time zone to enforce UTC communication between application and database. remp/remp#809