We're excited to announce Squirro 3.1.0, released on 20th of July 2020.

Contents - What's in the release?

New Features

Widget Editor 

Layout Master in Squirro Dashboards

We have added a new concept "Layout Master" to this release. Please refer to Layout Master Dashboard for more details.


Synonyms  

Starting with Squirro 3.1.0 release, we have made the support for Synonyms for your search requests even more powerful. While it has already been possible to use synonyms with specific facets using our APIs for a few years, we have also made it possible now to use them on the Title, Body as well as the Abstract of your Squirro Items. There is more, you can do all of that now finally over the Frontend with just a few clicks. If you are interested in knowing more about it, please read our Using Synonyms documentation page.

Spellcheck 

Significant Terms Extractor

Given a set of documents, the goal of significant terms extractor is to identify in the text the set of words that can potentially describe a document. It is an unsupervised technique that constantly adapts itself at every call to maintain the model always up to date.

For further information please refer to Significant Terms Extraction in Squirro

ElasticSearch 7.7

There has been a major migration of the Elasticsearch engine that is supported by Squirro. We have moved from using the version 6.2.2 to 7.7.0.

We were careful not to introduce new features per-se during the migration. It did, however, facilitate the deployment of extra functionality to our platform like encrypted connectivity with ES (see below)

Security Improvements (ES, MariaDB) 

With Squirro 3.1.0 you have the possibility to encrypt Squirro communication with MariaDB and Elasticsearch.

For further information please refer to Securing Elasticsearch and MariaDB over TLS

Improved Entities Support 

Starting with Squirro 3.1.0 release, Squirro entity data-model has become even more powerful. It now allows saving for more than one value in a specific entity property. What does all of that even mean (wink). It means that now you can finally add multiple companies to a single entity. In addition to that, we have also made it possible to add more than one entities to a single sentence. This will help you catch all those sentences which do not quite fit one single concept in your business. 

Please note that this is a breaking change. If you have code which directly creates entities using our APIs, please contact Squirro Support.

Layer arrangement (composite layers)  

Profile Avatar

Squirro Dashboard SDK

Restrict Dashboard width


Improvements


Bug Fixes

  • SB-136 - Rich text formatting issues
  • SB-313 - Can't type 's' on RTE widget when having an item detail widget
  • SB-349 - Small language change for email validation
  • SB-370 - Support array on userPref
  • SB-395 - RTE widget content is not scrollable
  • SB-396 - Breadcrumb widget action chips always visible
  • SB-413 - Users page number of results dropdown doesn't always work
  • SB-414 - Request demo url is wrong
  • SB-415 - Catalyst mapping in incorrect classification feedback popup is not working correctly!
  • SB-416 - Selection tagging is removing consecutive spaces from sentence
  • SQ-10748 - Force sending empty array when all tags are removed from the single facet
  • SQ-10751 - Cards Widget: Padding on CTA is wrong
  • SQ-10880 - Entities highlights not working on result widget with only entities enabled
  • SQ-10886 - implement-multi-value-selection-for-facets-list
  • SQ-11172 - Replacing long URLS with only the domain name or source name in case of PDF
  • SQ-11219 - Users List filter dropdown doesn't always work
  • SQ-11261 - Facets List Widget: Facet List Order config does not work
  • SQ-11265 - Tag Cloud widget: Legend is always empty
  • SQ-11266 - Trend Widget: Y axis label is in the wrong side
  • SQ-11277 - Direct access to search tagging edit url fails
  • SQ-11283 - Sort loaders alphabetically
  • SQ-11311 - Line height for share item is wrong
  • SQ-11319 - Link widget delete icon issues
  • SQ-11370 - Do not limit Link widget to 4 columns
  • SQ-11376 - Smartfilter widget does not render in edit mode
  • SQ-11410 - Topic cluster filtering is not working
  • SQ-11571 - Prevent fetching recommendation catalysts on item detail if not needed
  • Only allow master dashboard promotion and demotion for admins


Added on July 24, 2020 (build 36 - Patch 1)

Added on August 11, 2020 (build 38 - Patch 2)

Added on October 8, 2020 (build 41 - Patch 4)

Added on October 12, 2020 (build 42 - Patch 5)

Added on October 15, 2020 (build 43 - Patch 6)

Added on October 19, 2020 (build 44 - Patch 7)

Added on November 5, 2020 (build 45 - Patch 8)

Added on November 6, 2020 (build 46 - Patch 9)

Fresh Installation Instructions

Please follow the regular installation steps

Upgrade Instructions


Please ensure that your current version is 3.0.0 If you are on a version older than 3.0.0, please contact support.


With this & every subsequent upgrade, all services will run in python3.6.

If you have not migrated & tested your custom dataloader plugins, studio plugins or piplets to python3.6 compatible code, you can still manually revert to run specific services in python2.7 by following the steps outlined here.

This is the last release which continues python 2.7 support. Therefore, we strongly recommend that you migrate any custom code now and proceed with the new default python 3.6.




# stop squirro
squirro_stop

yum install java-1.8.0-openjdk
yum update java-1.8.0-openjdk
yum update squirro-storage-node-users

# Ensure that `path.data` variable is set in ES. If you have used Ansible in the past to deploy Squirro, you will be affected by this bug.
grep -q "^path.data" /etc/elasticsearch/elasticsearch.yml ||  echo "path.data: /usr/share/elasticsearch/data/" >> /etc/elasticsearch/elasticsearch.yml

# update elasticsearch
# Make sure that you delete any indices which have been created with squirro_v8 template. 
# curl http://localhost:9200/_cat/indices -> then inspect for occurrences of squirro_v8 in the output.
# If your cluster has been created with Squirro 2.6.0, released on April 3rd 2018 or later, 
# you do not have to worry about this.
# To delete: curl -XDELETE http://localhost:9200/squirro_v8*
# To delete old jaeger indices: curl -XDELETE http://localhost:9200/jaeger*

systemctl stop elasticsearch
yum update elasticsearch

# Disregard the ES rpmnew warnings as they will be resolved by `squirro-storage-node` cluster

# update storage node
yum update squirro-storage-node
# wait for elasticsearch status to become green, only then
# update cluster node
yum update squirro-cluster-node-users
yum update squirro-*
squirro_start

Resolve all the `.rpmnew` files in `/etc/squirro`. This process involves merging the changes between the `.ini` (e.g., `storage.ini`) and '.ini.rpmnew`(e.g., `storage.ini.rpmnew`) files and then eventually deleting the `.ini.rpmnew` files. Finally, restart the services with merged `.ini` files (or just use `squirro_restart` to restart all services).


Stop squirro on the cluster node

squirro_stop

Upgrade the storage node by running:

yum install java-1.8.0-openjdk
yum update java-1.8.0-openjdk
yum update squirro-storage-node-users

# Ensure that `path.data` variable is set in ES. If you have used Ansible in the past to deploy Squirro, you will be affected by this bug.
grep -q "^path.data" /etc/elasticsearch/elasticsearch.yml ||  echo "path.data: /usr/share/elasticsearch/data/" >> /etc/elasticsearch/elasticsearch.yml

# update elasticsearch
# Make sure that you delete any indices which have been created with squirro_v8 template. 
# curl http://localhost:9200/_cat/indices -> then inspect for occurrences of squirro_v8 in the output.
# If your cluster has been created with Squirro 2.6.0, released on April 3rd 2018 or later, 
# you do not have to worry about this.
# To delete: curl -XDELETE http://localhost:9200/squirro_v8*
# To delete old jaeger indices: curl -XDELETE http://localhost:9200/jaeger*

systemctl stop elasticsearch
yum update elasticsearch

# Disregard the ES rpmnew warnings as they will be resolved by `squirro-storage-node` cluster


#update storage node
yum update squirro-storage-node

# wait for elasticsearch status to become green, only then update the clusternode

Upgrade the cluster node by running:

yum install java-1.8.0-openjdk
yum update java-1.8.0-openjdk
yum update squirro-cluster-node-users
yum update squirro-*
squirro_start

Resolve all the `.rpmnew` files in `/etc/squirro`. This process involves merging the changes between the `.ini` (e.g., `storage.ini`) and '.ini.rpmnew`(e.g., `storage.ini.rpmnew`) files and then eventually deleting the `.ini.rpmnew` files. Finally, restart the services with merged `.ini` files (or just use `squirro_restart` to restart all services).


Stop squirro on all cluster nodes

squirro_stop

Stop elasticsearch on all storage nodes

# Make sure that you delete any indices which have been created with squirro_v8 template. 
# curl http://localhost:9200/_cat/indices -> then inspect for occurrences of squirro_v8 in the output.
# If your cluster has been created with Squirro 2.6.0, released on April 3rd 2018 or later, 
# you do not have to worry about this.
# To delete: curl -XDELETE http://localhost:9200/squirro_v8*
# To delete old jaeger indices: curl -XDELETE http://localhost:9200/jaeger*

systemctl stop elasticsearch

Upgrade every storage nodes (one by one) by running:


yum install java-1.8.0-openjdk
yum update java-1.8.0-openjdk
yum update squirro-storage-node-users

# Ensure that `path.data` variable is set in ES. If you have used Ansible in the past to deploy Squirro, you will be affected by this bug.
grep -q "^path.data" /etc/elasticsearch/elasticsearch.yml ||  echo "path.data: /usr/share/elasticsearch/data/" >> /etc/elasticsearch/elasticsearch.yml

# update elasticsearch
yum update elasticsearch

# Disregard the ES rpmnew warnings as they will be resolved by `squirro-storage-node` cluster

# update storage node
yum update squirro-storage-node

# wait for elasticsearch status to be green before continuing with next storagenode

Upgrade each cluster nodes by running:

yum install java-1.8.0-openjdk
yum update java-1.8.0-openjdk
yum update squirro-cluster-node-users
yum update squirro-*
squirro_start

Resolve all the `.rpmnew` files in `/etc/squirro`. This process involves merging the changes between the `.ini` (e.g., `storage.ini`) and '.ini.rpmnew`(e.g., `storage.ini.rpmnew`) files and then eventually deleting the `.ini.rpmnew` files. Finally, restart the services with merged `.ini` files (or just use `squirro_restart` to restart all services).