SequenceServer BLAST 2.1.0 improves user experience and robustness

Hope all are enjoying the summer. It was good to see a few users at SMBE.

We just pushed a new gem release @ 2.1.0. This makes more widely available a bunch of things that we’ve been working to improve SequenceServer BLAST experience and robustness.

Release notes below:

Improved bioinformatic analysis, collaboration, and user experience

  1. Upgrade to NCBI BLAST 2.14. Among other things, this enables access to faster algorithms using arguments such as -task blastp-fast (20% to 300% faster depending on database size).
  2. [New]: Enable cloud sharing. When running SequenceServer on a local machine, it may be hard to share the results with anyone, unless they are looking at your screen over your shoulder :slight_smile:
    Here, we enable sharing the results page with anyone who has access to the internet. Users have an option in the sidebar to share the results to Cloud, which will upload BLAST results to be hosted with a secret URL on for free.
  3. [New]: Improved documentation of optional BLAST parameters #608.
  4. Improved performance on slow connection (e.g., it was previously possible to click “BLAST” a second while waiting for server response). #526

Improved code quality, security, software compatibility and robustness

  1. Migration of old javascript code to ES6. Similar updating to newer react (this took two steps. First updating to 0.14 which was the earliest to use ReactDOM, then updating to v18). This was a big chunk of work. These changes significantly improve maintainability, reliability and robustness. See #583 (and #556 for rationale)
  2. Upgrade to Ruby 3.2 as 2.x are now deprecated and can include security risks.
  3. We now also have js unit testing using the framework.
  4. Many many improvements to robustness and to code maintainability.
  5. Many bug fixes.
  6. Improved security (see #569).
  7. Migrated from TravisCI to Github actions for automated unit and integration testing.
  8. Improvements in ruby/capybara testing robustness as rspec tests weren’t necessarily waiting long enough for browser to render