!!! This update requires at least Plone 5.2.5 and Python 2.x. !!!
Please update your buildout.cfg configuration file to this version and re-run the buildout script.
You can use the Plone unified installer to install Plone 5.x first: https://github.com/plone/Installers-UnifiedInstaller
Please make sure to pin senaite.lims to version 2.1.0 to get the correct versions of all dependent SENAITE packages.
!!! This update requires at least Plone 5.2.4 and Python 2.x. !!!
Please update your buildout.cfg configuration file to this version and re-run the buildout script.
You can use the Plone unified installer to install Plone 5.x first: https://github.com/plone/Installers-UnifiedInstaller
Please make sure to pin senaite.lims to version 2.0.0 to get the correct versions of all dependent SENAITE packages.
Run first the Plone upgrade before you continue to update SENAITE to version 2.x.
IMPORTANT: Plan the upgrade with enough time
This update might take long depending on the number of objects registered in the system:
- Stale Sample and Partition objects have been removed from ZODB #1351
- Full Audit log has been added to Senaite #1324
If you have your own add-on, please review the changes to check beforehand if some parts of your add-on require modifications. Worth to mention that the following tips are strongly recommended before proceeding with the upgrade:
- Do a zeopack
- Do a backup of both your code and database
- Try to have as much analyses in verified/published statuses as possible
- Stop unnecessary applications and services that may consume RAM
- Start with a clean log file
IMPORTANT: Plan the upgrade with enough time
Version 1.3.0 is not a hotfix release, it rather comes with a lot of changes that require additional care when planning the update. If you have your own add-on, please review the changes to check beforehand if some parts of your add-on require modifications.
This update will take long (up to 5h for instances with large amounts of data). Therefore, is recommended to plan and allocate enough resources for the process to complete beforehand. For big databases, RAM is a critical factor to be considered before upgrading. Worth to mention that the following tips are strongly recommended before proceeding with the upgrade:
- Do a zeopack
- Do a backup of both your code and database
- Try to have as much analyses in verified/published statuses as possible
- Stop unnecessary applications and services that may consume RAM
- Start with a clean log file
Most of the base code has been refactored keeping in mind the following objectives:
- Less complexity: less code, better code
- High test coverage: lower chance of undetected bugs
- Boost performance: better experience, with no delays
- Improve security: rely on Zope's security policies
- Code responsibility: focus on core functionalities and let other add-ons to deal with the rest (senaite.lims, senaite.core.listing, etc.)
Besides of this refactoring, this version also comes with a myriad of new functionalities and enhancements: full-fledged sample partitions, reinvented listings and results entry, new adapters for extensibility, etc.
Version 1.3 is the result of hard, but exciting work at same time. Four months of walking through valleys of tears and fighting hydras. Four exciting months to be proud of.
IMPORTANT: Plan the upgrade with enough time This update might take long depending on the number of Analyses, Analysis Requests and Samples registered in the system:
- Role mappings updated for Analaysis Requests and Samples (rejection) #1041
- Recatalog of invalidated/retest Analysis Requests (invalidation) #1027
- Reindex and recatalog of getDueDate for Analysis Requests #1051
- Reindex of getDueDate for Analyses: #1032
- Workflow: retract_ar transition has been renamed to invalidate #1027
- Operators for min and max values have been added. For specifications already present in the system, the result ranges are considered as bounded and closed: [min,max] = {result | min <= result <= max}. #965
- This update requires the execution of bin/buildout, because Products.TextIndexNG3 has been added. It will help to search by wildcards in TextIndexNG3 indexes instead of looking for the keyword inside wildcards. For now, it is used only in AR listing catalog. https://pypi.python.org/pypi/Products.TextIndexNG3/
- This update might take long depending on the number of Analyses registered in the system, because the upgrade step will walk through all analyses in order to update those that do not have a valid (non-floatable) duplicate variation value (see #768).
- This update requires the execution of bin/buildout, because WeasyPrint has been updated to version 0.42.2: http://weasyprint.readthedocs.io/en/stable/changelog.html#version-0-42-2
- IMPORTANT: Plan the upgrade with enough time This update might take long depending on the number of Analysis Requests registered in the system because a new index and column 'assigned_state' has been added in Analysis Requests catalog, that require the catalog to be reindexed (see #637).
- IMPORTANT: Plan the upgrade with enough time This update might take long depending on the number of Batches registered in the system, because an index from their catalog needs to be reindexed (#574). Also, a new index that affects the Worksheets that have a Worksheet Template assigned has been added and needs to be indexed.
- This update requires the execution of bin/buildout, because a new dependency has been added: Plone Subrequest
- With this update, Analyses Services that are inactive, but have active dependent services, will be automatically transitioned to active state. This procedure fixes eventual inconsistencies amongst the statuses of Analyses Services. See #555