Releases: datalab-org/datalab
v0.6.5
What's Changed
- Improve regex item search: implict word boundaries, chaining and literal matches by @ml-evs in #1338
- Adjust file permissions so block permission gives equivalent access by @ml-evs in #1376
- Remove name reset in CreateItemModal by @BenjaminCharmes in #1369
- Item graph display too many items by @BenjaminCharmes in #1367
- Allow item creation endpoints to use
PUTby @ml-evs in #1387 - Adding file-size in the filelist by @DianaAliabieva in #1380
- Add support for PSTrace EIS output txt files by @ml-evs in #1383
- Fix collection creation modal error display for duplicate IDs by @BenjaminCharmes in #1382
New Contributors
- @DianaAliabieva made their first contribution in #1380
Full Changelog: v0.6.4...v0.6.5
v0.6.4
This patch release simply fixes a few UI bugs introduced in v0.6.3 (and earlier). It also signifies the adoption of the Contributor Covenant Code of Conduct (v2).
What's Changed
- Add code of conduct by @ml-evs in #1344
- Allow Flask to load prefixed options from environment variables by @ml-evs in #1351
- Add text-break to DialogModal by @BenjaminCharmes in #1346
- Fix docker linting error by @ml-evs in #1359
- Fix insert into collection when creating an item by copying by @BenjaminCharmes in #1356
- Remove references to
<item>._id.$oidin app code now they are handled by serializer by @ml-evs in #1362
Full Changelog: v0.6.3...v0.6.4
v0.6.3
This patch release primarily improves block serialization performance and extensibility, as well as improving error handling for both developers and users.
What's Changed
- Resolve CVEs on mermaid.js and cross-spawn by @dependabot[bot] in #1317
- Replace browser-native dialogs with custom datalab dialog service by @BenjaminCharmes in #1212
- Return specific API error when requested block type does not exist by @ml-evs in #1322
- Validate block database save/export operations with
DataBlockResponsemodel by @ml-evs in #1311 - Hardened
SECRET_KEYconfiguration by @ml-evs in #1324 - Fix case-sensitivity of media block TIF handling by @ml-evs in #1326
- Reorder (separator, skiprows) loop in XRD reader to accelerate most common cases by @ml-evs in #1331
- Use pytest-memray to check for block serialization error issues by @ml-evs in #1330
- Remove memory hog reserialization of block data by @ml-evs in #1329
- Added the option to read multiple echem files and stitch them together to the cycleBlock by @be-smith in #1307
- Refactor Docker gunicorn configuration for better flexibility by @ml-evs in #1334
- Chat block fix: ignore available models list based on web app update by @ml-evs in #1340
Full Changelog: v0.6.2...v0.6.3
v0.6.3-rc.1
What's Changed
- Resolve CVEs on mermaid.js and cross-spawn by @dependabot[bot] in #1317
- Replace browser-native dialogs with custom datalab dialog service by @BenjaminCharmes in #1212
- Return specific API error when requested block type does not exist by @ml-evs in #1322
- Validate block database save/export operations with
DataBlockResponsemodel by @ml-evs in #1311 - Hardened
SECRET_KEYconfiguration by @ml-evs in #1324 - Fix case-sensitivity of media block TIF handling by @ml-evs in #1326
- Reorder (separator, skiprows) loop in XRD reader to accelerate most common cases by @ml-evs in #1331
- Use pytest-memray to check for block serialization error issues by @ml-evs in #1330
- Remove memory hog reserialization of block data by @ml-evs in #1329
- Added the option to read multiple echem files and stitch them together to the cycleBlock by @be-smith in #1307
- Refactor Docker gunicorn configuration for better flexibility by @ml-evs in #1334
- Chat block fix: ignore available models list based on web app update by @ml-evs in #1340
Full Changelog: v0.6.2...v0.6.3-rc.1
v0.6.2
v0.6.1
This patch release adds an API config option CONFIG.ROOT_PATH to allow deployments to easily serve the API under a subpath (e.g., \api) on the same subdomain as the app. It also features a new validation model for block data, which should currently have no user-facing effects, but will allow for more formal extensions of block schemas in the future.
What's Changed
- Add
DataBlockResponsemodel to sanitizeblocks_objin API by @ml-evs in #1310 - Add
CONFIG.ROOT_PATHoption to deploy API from custom path by @ml-evs in #1315
Full Changelog: v0.6.0...v0.6.1
v0.6.0
This release includes a frankly comical number of changes, spanning significant new functionality and UI redesign, a fledgling plugin ecosystem, as well as several bug and quality-of-life fixes, performance improvements and backwards-compatible API enhancements.
A more regular release cadence will resume after the summer, with fewer release candidates next time around!
Warning
This release also bumps the supported MongoDB version all the way from v3 to v8. Whilst older MongoDB versions should still continue to work, version 8 will now be tested and used in the docker builds, so we recommend you upgrade. For existing databases this requires you to first dump the database using mongodump with the old MongoDB version, then upgrade to the new version and restore the database with mongorestore. If you unsure about this process then please ask us for help!
Highlights
- Extra functionality for all data tables: column selection, persistent user preferences and improved filtering.
- Improved inventory management: native UI for hazard labels, CAS numbers and external barcodes, complementing the first release of the
datalab-cheminventory-pluginfor two-way sync with cheminventory.net. - Starting materials can now also have synthesis information recorded for them.
- New blocks for UV-Vis data and in situ NMR data (developed in separate core plugin at
datalab-app-plugin-insitu), as well as new file formats supported in the XRD (Rigaku's .rasx, variants of .xy), NMR (JCAMP-DX) blocks and media block (PDF documents). - A fledgling plugin ecosystem with ways to easily add new blocks to a specific datalab instance (docs), with
datalab-serverPyPI package for easier dependency management. - Improved item search throughout the API, removing the need to search on whitespace or punctuation delimited words (e.g., ID matches will now begin after just 3 characters, rather than needing to type a full ID).
- More powerful UI block interactions via "events" that can be written purely Python (docs).
Full Changelog: v0.5.2...v0.6.0
v0.6.0-rc.4
This release candidate makes some final fixes before the 0.6.0 release regarding the build procedure and updates several dependencies. There are also several UI improvements and bug fixes, particularly for the new in situ NMR and UV-Vis plugin, as well as the finalisation of the concept of datablock events.
Warning
This release bumps the supported MongoDB version all the way from v3 to v8. Whilst older MongoDB versions should still continue to work, version 8 will now be tested and used in the docker builds, so we recommend you upgrade. For existing databases this requires you to first dump the database using mongodump with the old MongoDB version, then upgrade to the new version and restore the database with mongorestore. If you unsure about this process then please ask us for help!
What's Changed
- Fix some PyPI metadata by @ml-evs in #1248
- Add note about inconsistencies in ways configs are specified by @ml-evs in #1252
- Replace crypto-browserify with simple js-md5 by @ml-evs in #1251
- Remove browersify stream polyfill by @ml-evs in #1253
- Bump the uppy ecosystem to v4 and fix styling by @ml-evs in #1255
- Bump navani and switch to galvani mirror by @ml-evs in #1273
- Add creators in SampleTable global search by @BenjaminCharmes in #1257
- Lift restriction on passing item type when updating via
/save-itemby @ml-evs in #1276 - Use OAuth2
promptto force login/account selection by provider by @ml-evs in #1270 - Display NotImplementedBlock when an unknown block type is encountered by @BenjaminCharmes in #1228
- Update the collection page table with the latest dynamic data table options by @BenjaminCharmes in #1225
- Fix for either over- or under-specific file permissions by @ml-evs in #1279
- Add custom UI for new in situ UV-Vis block by @be-smith in #1246
- Embed block version in base class by @ml-evs in #1281
- Add TOPAS-compatible .xy export to XRD block by @BenjaminCharmes in #1277
- Fix item selection dropdown missing scrollbar in synthesis info by @BenjaminCharmes in #1280
- Bump form-data from 4.0.1 to 4.0.4 in /webapp by @dependabot[bot] in #1284
- Bump cypress to v13.17.0 and disable Firefox tests temporarily by @ml-evs in #1290
- Add concept of block events and some design notes by @ml-evs in #1059
- Update Python dependencies,
uvandliccheckexceptions by @github-actions[bot] in #1002 - Improve and restructure README, plus other minor docs fixes by @yue-here in #1245
New Contributors
Full Changelog: v0.6.0-rc.3...v0.6.0-rc.4
v0.6.0-rc.3
If no issues arise, this will be the final release candidate for 0.6.0.
Warning
This release bumps the supported MongoDB version all the way from v3 to v8. Whilst older MongoDB versions should still continue to work, version 8 will now be tested and used in the docker builds, so we recommend you upgrade. For existing databases this requires you to first dump the database using mongodump with the old MongoDB version, then upgrade to the new version and restore the database with mongorestore. If you unsure about this process then please ask us for help!
What's Changed
- Update flask-cors requirement from ~=5.0 to ~=6.0 in /pydatalab by @dependabot in #1223
- Bump katex from 0.16.11 to 0.16.21 in /webapp by @dependabot in #1037
- Upgrade MongoDB to v8 by @ml-evs in #814
- Remove some vue-cli-plugins dev dependencies by @ml-evs in #1233
- Fix liccheck workflow and dependency ignores by @ml-evs in #1234
- Add README note linking to other DataLab by @ml-evs in #1236
- Bump astral-sh/setup-uv from 5 to 6 in the github-actions group by @dependabot in #1161
- Fix for molar mass validation with invalid formula of starting materials by @ml-evs in #1244
- Add relationships by
refcoderather thanitem_idfrom the UI by @BenjaminCharmes in #1227 - Prepare 0.6.0 release by @ml-evs in #1211
- Add exhaustive block API testing for all block types by @BenjaminCharmes in #1242
Full Changelog: v0.6.0-rc.2...v0.6.0-rc.3
v0.6.0-rc.2
What's Changed
- Add support for JCAMP-DX files in NMR block by @ml-evs in #1205
- Improve 1D Raman tests and extract more information from file headers by @ml-evs in #1216
- Remove untested remote backup functionality and dependency on paramiko by @ml-evs in #1217
- Remove ppm selection from in situ block in favour of the interactive plot by @ml-evs in #1215
- Add CIF->PXRD calculator and refactor XRD block to better show multiple patterns by @ml-evs in #1128
- Switch Raman block to use
renishawWirepackage by @ml-evs in #1218 - Add blueprint level auth guards to graphs, users and remote filesystems endpoints by @ml-evs in #1219
- Limit batch interface to 100 items in UI and 10,000 via API by @BenjaminCharmes in #1213
- Avoid mentioning specific version in deployment docs and list
VUE_APP_*env vars by @ml-evs in #1226
Full Changelog: v0.6.0-rc.1...v0.6.0-rc.2