Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use first assembly for ribbon in 3D view #1373

Open
phraenquex opened this issue Mar 5, 2024 · 13 comments
Open

Use first assembly for ribbon in 3D view #1373

phraenquex opened this issue Mar 5, 2024 · 13 comments
Assignees

Comments

@phraenquex
Copy link
Collaborator

phraenquex commented Mar 5, 2024

Ribbon diagram should be generated for the chains that define the first assembly in assemblies.yaml.

Presumably B/E that must tell F/E what that is.

(We haven't discussed that ribbon for years, but now is the time to fix it. Could be yellow release if tricky.)

(This will look completely right once #1369 is done.)

@phraenquex phraenquex changed the title Spec out which structure used for ribbon in 3D Use first assembly for ribbon in 3D view Mar 5, 2024
@phraenquex phraenquex removed the 2023-08-23 violet V2 full release label Mar 7, 2024
@phraenquex
Copy link
Collaborator Author

Almost certainly related to the answer to #1369

@phraenquex phraenquex added 2024-03-13 green Data dissemination and removed 2023-11-02 yellow Too big for V2 labels Mar 13, 2024
@mwinokan
Copy link
Collaborator

The ribbon shown in NGL needs to be taken from the first assembly in the assemblies.yaml of the alignment. I.e taking chains from the reference PDB file.

This might not look right until #1369 is resolved if the ligand displayed is from a different assembly

@phraenquex to think about how the frontend processes the reference PDBs (and potentially where they should be stored in the XCA output)

@mwinokan
Copy link
Collaborator

mwinokan commented Mar 19, 2024

@kaliif @boriskovar-m2ms will need an endpoint to query where the reference assembly can be found for the ribbon to be rendered.

As long as the reference structure in assemblies.yaml is an XChem structure, it should be in the aligned files. For non-XChem structures #1292 is needed

@mwinokan
Copy link
Collaborator

mwinokan commented Apr 4, 2024

@kaliif if this is a quick fix, please work on this before #1392

@mwinokan
Copy link
Collaborator

mwinokan commented Apr 9, 2024

@kaliif has completed the backend part.

@boriskovar-m2ms has pulled the latest backend, and now does not have the latest compatible data. @tdudgeon will provide Boris with A71EV2A data and @mwinokan with an RHS upload

@boriskovar-m2ms
Copy link
Collaborator

boriskovar-m2ms commented Apr 10, 2024

@mwinokan do we need an actual endpoint because in the target there is a template_protein field from where the .pdb to render ribbon is taken.

image

@kaliif
Copy link
Collaborator

kaliif commented Apr 10, 2024

If this field is not used for anything else, I can point it to the correct pdb file (atm it's just the pdb from the first available site observation).

@boriskovar-m2ms
Copy link
Collaborator

boriskovar-m2ms commented Apr 10, 2024

Just checked the code and it's not used for anything else. And I would highly prefer this solutions because async function in current workflow in which the ribbon is rendered (which was sync until now) is causing some problems.

boriskovar-m2ms added a commit that referenced this issue Apr 10, 2024
boriskovar-m2ms added a commit that referenced this issue Apr 10, 2024
commit e1e3c2c
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Wed Apr 10 15:31:02 2024 +0200

    - implemented #1373
kaliif added a commit to xchem/fragalysis-backend that referenced this issue Apr 10, 2024
Changes so far:
- removed endpoint FirstAssemblyview
- moved the functionality to template_protein field in
TargetSerializer
- removed TargetMoleculesserializer
- removed sequences field from TargetSerializer

This is a result of Boris' comment in
github (m2ms/fragalysis-frontend#1373 (comment))
where he said the field isn't used and template_protein field is not
used. Looking at the code where this may be used, revealed that
Targetmoleculesserializer can be removed as well

NB! they're not removed-removed right now, only commented in. This
commit can be used to restore the code.
@mwinokan
Copy link
Collaborator

@kaliif has moved his b/e changes to staging. @boriskovar-m2ms will move his f/e changes to staging tomorrow

boriskovar-m2ms added a commit that referenced this issue Apr 12, 2024
commit c1cfa444606da6edbc306c6683fe4b325aada80e
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Wed Apr 10 15:32:36 2024 +0200

    Squashed commit of the following:

    commit e1e3c2ca280b527794d7aaf2b0924e4615fefda1
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Apr 10 15:31:02 2024 +0200

        - implemented #1373

commit b8d974cb971c3e6504aec8a774a042c6f18ce231
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Mon Mar 25 10:10:01 2024 +0100

    Squashed commit of the following:

    commit 07ba57d7f4c4e572896e24b0a122de23886e2a50
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Mar 25 08:23:53 2024 +0100

        -  #1393 - all columns are now included

commit b48fc7d5a4cd292f2c9f4146b33b547ed84cfc75
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Thu Mar 14 08:56:04 2024 +0100

    - added requirements

commit 51a2e1c875e93ace445339741054800bc1822190
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Wed Mar 13 09:48:20 2024 +0100

    - DELETE button disabled for #1357

commit dcd6db731c009cedd051d959935fb44d2abc9974
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Tue Mar 12 09:48:51 2024 +0100

    - using official backend version

commit 0b7ae4e508e92e964bef68fdf21e8ceef9ef3b19
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Thu Mar 7 13:59:03 2024 +0100

    - partial fix for purple release for #1370

commit 3c9e696731f3037c8f86c0fea5c33a02043c8b7f
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Thu Mar 7 10:10:41 2024 +0100

    - implemented #1376
    - also fixed bug in download structures dialog where only first download got added to the dropdown menu

commit 91bb8e041d38097ff60e5cde61b08b5eb043a86f
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Wed Mar 6 09:47:12 2024 +0100

    - implemented #1361
    - improvements for #1354

commit 4c2065f45090114e0590419e05d5d0a44b2c46fe
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Tue Mar 5 13:24:11 2024 +0100

    - cleanup for #1354

commit 8988043256fc8964d27704ea4cba49891a1f074f
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Tue Mar 5 13:21:32 2024 +0100

    - updated message for #1354

commit 1747473089aa245bcfc5bd502d44fab5566f4502
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Tue Mar 5 13:05:12 2024 +0100

    - first implementation of #1354

commit 0cdb89616bea17316aa21aacc32fadfce3929594
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Tue Mar 5 08:17:49 2024 +0100

    - implemented #1357

commit 0e9169f0f0ff7622aa49618d5df49ab650290f9f
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Mon Mar 4 10:07:06 2024 +0100

    - implemented changes requested in #1326

commit 5d3e7d1b0cbe52b4c9e3269b0db02704b5a0c5ec
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Mon Mar 4 08:45:22 2024 +0100

    - fixed problem with tags not visually updating on observations

commit 13b675c2be988d80e1cb506d405224b404aa1774
Author: matej <matej.vavrek@m2ms.sk>
Date:   Mon Feb 26 21:36:12 2024 +0100

    #1341 "pin" edit tag row outside of tag list

commit 7caa3846493f60051cc63c0936c0d0b796b055e5
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Tue Feb 20 08:52:28 2024 +0100

    #1340 and #1341

commit b543e504f14bba71d1cd3817438d93cebd52549e
Merge: 779e80ee 21050e6d
Author: matej <matej.vavrek@m2ms.sk>
Date:   Fri Feb 16 10:48:07 2024 +0100

    Merge branch 'stagingcandidate' of github.com:m2ms/fragalysis-frontend into stagingcandidate

commit 21050e6d3748bee3735a3c4a95c846c91de120cd
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Fri Feb 16 08:11:48 2024 +0100

    Squashed commit of the following:

    commit 468491f23840faf5f8b0876fe61cceedab190d25
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Feb 15 12:29:35 2024 +0100

        - fixed #1283

commit 779e80ee5523de7dff2d5529ac3cde200960c46e
Author: matej <matej.vavrek@m2ms.sk>
Date:   Thu Feb 15 16:09:33 2024 +0100

    #1341 prevent tags panel overflow

commit 50ef8283190af6d186a3d45916c8dadf680e48e2
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Thu Feb 8 10:31:03 2024 +0100

    - implemented #1324

commit 580c70ce2707b4d39e6fa4e82b035a08c06749e8
Merge: 1b83a871 b93571a6
Author: boriskovar-m2ms <boris.kovar@m2ms.sk>
Date:   Tue Feb 6 13:16:18 2024 +0100

    Merge branch 'staging' into stagingcandidate

commit b93571a6bc839d064e95e0ae14223c89c6276dd9
Author: boriskovar-m2ms <boris.kovar@m2ms.sk>
Date:   Tue Feb 6 09:50:48 2024 +0100

    Implements #1277 (#406)

    * - additional fixes from #1321

    * Squashed commit of the following:

    commit c347cb37df938a29bb6df92b39cedb245a1adb2b
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 6 09:25:50 2024 +0100

        - implemented #1277

commit 137f64895b1c598d6ea82952cb8ed36be4dd8a7e
Author: boriskovar-m2ms <boris.kovar@m2ms.sk>
Date:   Fri Feb 2 14:19:35 2024 +0100

    - additional fixes from #1321 (#405)

commit c3626b032d89bdde7641efc60483cfebe103b63e
Merge: 57b30e1b ef27226e
Author: Warren Thompson <waztom@gmail.com>
Date:   Thu Feb 1 13:28:37 2024 +0000

    Merge pull request #404 from m2ms/stagingcandidate

    #1321

commit 57b30e1b0f0feac7467ef1d99b73e949a7cbf64d
Author: boriskovar-m2ms <boris.kovar@m2ms.sk>
Date:   Thu Feb 1 09:50:31 2024 +0100

    #1295, #1300, #1315 (#403)

    * Update build-main.yaml

    got rid of scheduled rebuild because it's messing up data

    * updated react16 to react 18.2, replaced hot-loaders modules by react-refresh, removed react-undo module

    * added proper values for Typography variant

    * renamed obsolete create theme function

    * #1063 added header and search

    * #1063 fixed body table, page count and search

    * #1063 fixed minor bugs and set clear filter

    * Squashed commit of the following:

    commit 10925d2c914673bfaa4e8b0205904e3e393d731d
    Author: RobertMatuska <robert.matuska@m2ms.sk>
    Date:   Thu Sep 28 10:27:36 2023 +0200

        #1114 edited text and style

    * #1161 setted search and filter for old target list

    * #1161 fixed discourse icon padding

    * #1161 fixed filtered list sort

    * #1161 fixed target access sort and filter

    * #1161 fixed change page

    * #1145 preserve state of molecule rendering, save also actions of representation changes to snapshot

    * do not wrap display controls buttons

    * #1167 resize target list colmuns

    * #1161 fixed sorting

    * #1161 fixed sorting

    * #1161 edit sort functionality for filter table

    * #1161 fixed search, filter, sort by target access

    * #1161 created init date column

    * #1161 # filtering and sorting init date

    * #1161 fixed clear and sort init date

    * #1161 fixed target sorting

    * Squashed commit of the following:

    commit d4895261f303ae61a359579c485adf702cdff64e
    Merge: 1c45038a 411921f8
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Oct 16 08:24:05 2023 +0200

        Merge branch '#1173' of https://github.com/m2ms/fragalysis-frontend into #1173

    commit 1c45038a42430f90f68430037027296021fe1974
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Fri Oct 13 11:03:49 2023 +0200

        - implemented #1173 also with save/restore and undo/redo functionality

    commit 411921f8a4906c54dfcd31c8bc079f9bd3008baf
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Fri Oct 13 11:03:49 2023 +0200

        - implemented #1173 also with save/restore and undo/redo functionality

    * merge

    * Squashed commit of the following:

    commit 7883c1584fc80b0be8dae624c18e86ddbe3c906b
    Merge: 5e2b937d 19b9f243
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Oct 16 11:19:36 2023 +0200

        Merge branch '#1172' of https://github.com/m2ms/fragalysis-frontend into #1172

    commit 5e2b937da95963afab366fac18912b4c596ccd78
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Oct 16 11:16:15 2023 +0200

        - added compound_set to csv export - #1172

    commit 19b9f243cc996f8d3e28f6fd8a44c167894b358a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Oct 16 11:16:15 2023 +0200

        - added compound_set to csv export - #1172

    commit 75ac125b5cae9d669d337410db9a184d6d31a456
    Merge: f50666ce 574c7b5e
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Oct 16 08:26:08 2023 +0200

        Merge branch '#1172' of https://github.com/m2ms/fragalysis-frontend into #1172

    commit f50666cef87e491309347fbcb8514286fcb72adc
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Fri Oct 13 13:45:34 2023 +0200

        - implemented #1172

    commit 574c7b5e65181e35865571ce7d9b6d01a40ce562
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Fri Oct 13 13:45:34 2023 +0200

        - implemented #1172

    * #1167 fixed issues

    * #1167 reworked resizer

    * #1161 fixed merge bugs

    * #1161 removed console

    * updated react16 to react 18.2, replaced hot-loaders modules by react-refresh, removed react-undo module

    * added proper values for Typography variant

    * renamed obsolete create theme function

    * changed deprecated justify= to justifyContent=

    * fixed some landing page errors, mostly missing key and using useState outside of useEffect in functional component

    * #1061 loading and toast functionality move from header context into LoadingContext and ToastContext, added loading indicator for tags and hits panes + hit/molecule control buttons

    * #1171 return representations when loading protein without quality to show it in display control

    * do not set logged in toast message if user is not logged in

    * fixed Tooltip error messages about its disabled child, fixed invalid variant type and removed xs from Grid container (it is Grid item property)

    * fixed null value for open property

    * fixed "ButtonGroup component doesn't accept a Fragment as a child. Consider providing an array instead"

    * fixed "<div> cannot appear as a descendant of <p>" error by adding "component={'div'}" property to complex Typography component

    * removed invalid way of setting color for tag, it does not work - only throws error and with proper setting it is same as background color..

    * fixed missing key error

    * fixed invalid references erros

    * fixed unknown properties error and missing key

    * - #1139 - updated docker-compose file to be ready for new backend version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - changed configuration

    * - #1139 - updated docker-compose file to be ready for new backend version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - fixed search bar placeholder for hits

    * - #1139 - updated docker-compose file to be ready for new backend version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - #1139 - fixed snapshot creation and restoration

    * #1167 target and project list resizer

    * #1167 fixed project list width

    * #1161 changed width

    * - #1183 - dynamic handling of tag categories

    * - fixed #1186

    * - job file transfer backend

    * - checkpoint

    * - new CI/CD

    * Update build-main.yaml

    got rid of scheduled rebuild because it's messing up data

    * updated react16 to react 18.2, replaced hot-loaders modules by react-refresh, removed react-undo module

    * added proper values for Typography variant

    * renamed obsolete create theme function

    * changed deprecated justify= to justifyContent=

    * fixed some landing page errors, mostly missing key and using useState outside of useEffect in functional component

    * rebase

    * #1171 return representations when loading protein without quality to show it in display control

    * do not set logged in toast message if user is not logged in

    * fixed Tooltip error messages about its disabled child, fixed invalid variant type and removed xs from Grid container (it is Grid item property)

    * fixed null value for open property

    * fixed "ButtonGroup component doesn't accept a Fragment as a child. Consider providing an array instead"

    * fixed "<div> cannot appear as a descendant of <p>" error by adding "component={'div'}" property to complex Typography component

    * removed invalid way of setting color for tag, it does not work - only throws error and with proper setting it is same as background color..

    * fixed missing key error

    * fixed invalid references erros

    * fixed unknown properties error and missing key

    * - #1139 - updated docker-compose file to be ready for new backend version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - changed configuration

    * - #1139 - updated docker-compose file to be ready for new backend version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - fixed search bar placeholder for hits

    * - #1139 - updated docker-compose file to be ready for new backend version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - #1139 - fixed snapshot creation and restoration

    * - #1183 - dynamic handling of tag categories

    * - job file transfer backend

    * - checkpoint

    * - new CI/CD

    * - fixed build errors

    * Squashed commit of the following:

    commit d5c97097a073d1298221f98b01e0431cbf520a47
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 16 07:36:56 2023 +0100

        - fixes blank page

    * #1035 added front-end pert of status lights for services

    * #1035 added API endpoint and changed refresh rate to 30 seconds for now

    * #1035 do not end up on failed response

    * Squashed commit of the following:

    commit e1dd8bd5f2c9e61c829cefb80b63f0e3f23604c9
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 21 09:16:46 2023 +0100

        - #1211 fixed and also fixed other problems which were hiding problems with snapshot restoration

    * Squashed commit of the following:

    commit e79b49f5fce9027910e24f30efdfc0aafa94be34
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Dec 7 09:44:55 2023 +0100

        - fixed RHS for #1239

    * #1217 save all actions to action list for snapshot not only the first ones, fixed of possible crash, adjusted restoring representations from snapshot

    * - updated docker-compose

    * Squashed commit of the following:

    commit 50d574da89fc90425cfcd6eb18ab30348f371b73
    Merge: 1fdebffa 3b4e7a7a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Dec 13 09:06:19 2023 +0100

        Merge branch '#1190' of https://github.com/m2ms/fragalysis-frontend into #1190

    commit 1fdebffa19b741e99b1e14ec2dd2adffa4261837
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Dec 13 08:14:58 2023 +0100

        - RC of #1190

    commit dabee45c26683c5e1b84d60b145850e199fd2ab0
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Dec 5 09:20:02 2023 +0100

        - checkpoint

    commit 4e9a6744ea75081129126dd1b9aad0d8410ae062
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 16 13:17:05 2023 +0100

        - using new backend image

    commit c90fc473a059540aea9070715b6527de8a823899
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit 515cb8bb4d6ee9fea192c9fa0768c80c03a524e3
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit ab0a2977c9f923183afa413fe5f9ae8c149b4b4e
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 216762b7094da2f07bb74ecd3ce0bd4526f47e57
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 6f628a7e7c637b9d5d80c27bca4470f7c7ffb527
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 823bf2c9c55d6e5f148c75fd55e888bcbbd5c105
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit a7aa657062c994b0ece88ea0fbf2a0d137bc3850
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 101751bab2d505f8f5dfaa3f4bac88529084d7da
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 5a6935a6f7d8ecaca16ca5072880ebb12f8656d0
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 1d01387260863790647f7324d4bd0c34ac4dcd03
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit b3c781364154acf103c33bf8d266353466cdc5d8
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 16 13:17:05 2023 +0100

        - using new backend image

    commit f48dc9d21c5bf02df112d149adf8f3384d96b702
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit 813b553e8db154a9103e45f349ccf08607ba6cd7
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit b49f773779790bbd231e418860eb2089b87b7919
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 98f566bcbb9d7493238fcbefc6cf87dcec1e7497
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit a01f097d1b2fc5290cb26d27edd45635ec2ae703
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit a6d8930b249c7cc9175b4e6cd2e386ed7803f7e6
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 14 16:42:23 2023 +0100

        - #1190 - implemented tags

    commit 392938b34b29aacb1729d1ddc5d5d438a59dd773
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit 69ab4c2701185f68a6d85cebf8d03367c60ef2a4
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit e6b700b602b708801ac38385bc79e3ef785d8af8
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit a7e6aad0a8f8ce7b80ba84c3d017581c659522c7
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 4fc93c0662050f834ccf3482ed23358ab9b9f8be
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 12:03:11 2023 +0100

        - checkpoint

    commit 58573f6fc68a4f405c93750ff40b9b5ec2cd0cd9
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit ecc3d6c1dd4a6c3437d29d6f00ecf6ce0897319d
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 2 07:59:19 2023 +0100

        - #1190 - compounds for LHS

    commit 3b4e7a7ad2a663660f675b10dd91f09a81ca720e
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Dec 13 08:14:58 2023 +0100

        - RC of #1190

    commit 1debb802212c6b7c6fa954bba1b04c5e926ef0ea
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Dec 5 09:20:02 2023 +0100

        - checkpoint

    commit 4f714be762940d796add2431a25dc9d11f795cd5
    Merge: 730d9e5b bcc1568f
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Nov 22 07:41:51 2023 +0100

        Merge branch '#1190' of https://github.com/m2ms/fragalysis-frontend into #1190

        # Conflicts:
        #	js/reducers/api/apiReducers.js
        #	js/reducers/api/constants.js

    commit 730d9e5bd404a8c121403528626c51595dee3927
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 16 13:17:05 2023 +0100

        - using new backend image

    commit 76ea646ba8b940037e85082bdddff8967971a602
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit 67439de7a640ff33f1dba88ebb833894e4a53b06
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit a38e0a39093ecf59d39fe50f0a49f9fa7a9237d3
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 64b67c539245bb30fa67eeff011b9868b4b0d2fa
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 35b2777be98d8c3ad4af2ed5ab5ad90d349bc971
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 810451479e17147b03594ba4bc27bb6964d1c159
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 14 16:42:23 2023 +0100

        - #1190 - implemented tags

    commit 5432a999f9bc440b403abbdacaf45b3a328d9dfa
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit f5ea66fd36a1ad860b4530d89382c569303b2efa
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit d3fb020d6f99bd9177f0442198a3ffb17cb90516
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 84d48899979a09bd7c649028dd6df0eaebcd9b6a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 29796304e70cc2ae25c6a96271d0dd12f692de48
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 12:03:11 2023 +0100

        - checkpoint

    commit 7241df5cbeaab971c7f56eaa54a920a1b8ed8fc8
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 195e30e1038a38ebe4ef4ffdfd3b8d93c12e3bda
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 2 07:59:19 2023 +0100

        - #1190 - compounds for LHS

    commit bcc1568fbbb3b3143a668784f7aac4524f4276a3
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 16 13:17:05 2023 +0100

        - using new backend image

    commit 60136ed9ddd47ca6c523375de5ba4d1f02fe6ab3
    Merge: 85c06a92 a18f80f1
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 16 08:01:49 2023 +0100

        Merge branch '#1190' of https://github.com/m2ms/fragalysis-frontend into #1190

    commit 85c06a920ae62b6c379f0f9975e94cf384f8f47a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 14 16:42:23 2023 +0100

        - #1190 - implemented tags

    commit 6dd0268d367c93d8104569719a3d6c841e19bd36
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit 0854241b93a563bf8cabd24278c4248c15eec645
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 1686e029dca683334351b4ea02c1d40851a321d9
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit ffba65bf05019144cb62eb9c4a0bd22db22609cc
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 1f22288d14e96d8b09a1916591d6a70d2db45481
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 12:03:11 2023 +0100

        - checkpoint

    commit e5a04e51c62f8e85b29fc4eb0ee1adb19622a978
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 155a96b066ca27243652b90b332ef2f7448e3ab0
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 2 07:59:19 2023 +0100

        - #1190 - compounds for LHS

    commit a18f80f1d1aaa1e6c0606c774ba7931b6bf527fc
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 14 16:42:23 2023 +0100

        - #1190 - implemented tags

    commit 43b74762ffa648dfcaec1d752800eba996af8784
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit 1f9eba8250e2fcd084399eaf47243cacb0a094e0
    Merge: 17b9cb1c 3d51ab04
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:52:19 2023 +0100

        Merge branch '#1190' of https://github.com/m2ms/fragalysis-frontend into #1190

    commit 17b9cb1cb7dc91d46f4cef569d63b481ee7a121a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 63122eb9c63f7b647c578c50268ec3cb6069da9e
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 12:03:11 2023 +0100

        - checkpoint

    commit 362ec046ef25402126f651cbd8d17c9b0eb8e5f9
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 26d2f319c44d74f5d419c789bcd594f3b11f5375
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 2 07:59:19 2023 +0100

        - #1190 - compounds for LHS

    commit 3d51ab049bee5729706c5f59f8e2233c1c2e746c
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit e3138f7427c4e199a9b4000e0ef0c7a366e65afd
    Merge: 3beca8c7 c95b8412
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 9 13:47:44 2023 +0100

        Merge branch '#1190' of https://github.com/m2ms/fragalysis-frontend into #1190

    commit 3beca8c75b14dde5a8dc4a01c85b9f8e13edfa24
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 12:03:11 2023 +0100

        - checkpoint

    commit 2d8e3c4b8c2ca5804dcca66e4d4a6dea2bc3fe68
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit fa13fe991f437cb209b723e2d22e33af56066aae
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 2 07:59:19 2023 +0100

        - #1190 - compounds for LHS

    commit c95b841232971fee08e771664579505326a8383c
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 12:03:11 2023 +0100

        - checkpoint

    commit 74fb512d1adaabb39b37b2d3e69fc89bf9852f69
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 28337545084b3ad9e0f0505fd2a0851c158c4ec9
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 2 07:59:19 2023 +0100

        - #1190 - compounds for LHS

    * - fix for tags

    * - fixed issue with checkboxes for #1190

    * #1181 fixed min width and maximum width design

    * #1181 created compound sets table

    * #1181 fixed layout with Compound sets

    * #1181 changed functionality for radio buttons

    * #1181 RHS UI improvements, fixed some related error

    * #1203 download compound molecules as csv export, populate compound summary table from common scores

    * #1181 changed active filter icon from different colour to red dot indicator

    * #1202 added rationale and ref_url info into inspiration dialog

    * #1204 search compound sets by title

    * #1181 added tooltips for all columns

    * #1202 updated visual of summary

    * #1181 adjusted columns widths, show number of compounds in set in # column

    * #1181 adjusted RHS height and increased maximum width

    * #1121 renamed references of unique_name to name since it was removed

    * Squashed commit of the following:

    commit a8e1fda76c4449188f931286f9725931c3f0a4ec
    Merge: e97995dd 7f619a7a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Dec 20 10:21:56 2023 +0100

        Merge branch '#1077' of https://github.com/m2ms/fragalysis-frontend into #1077

    commit e97995ddcfe8778bc2b8de070810935b5e8f786a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Dec 20 07:48:27 2023 +0100

        - small fix for #1077

    commit 8ee8cb1891c1d5f0f716ce130aa28f039241158f
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Dec 19 10:54:25 2023 +0100

        - fixed problem with UI showing error that target from URL is not recognized when the targets are not yet loaded

    commit 32018c9968bb96c8b29074bd71bc242e25c54b39
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Dec 19 10:27:28 2023 +0100

        - checking out the sorting of target list

    commit da3abebacf95b8890b14149d9e6b88d3acbf0526
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Dec 18 14:22:03 2023 +0100

        - #1195

    commit f593a1eef0b4622f37ccd3ad6afe8e8ebdf5abb8
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Dec 18 12:41:31 2023 +0100

        - #1166

    commit 96733edf6dadd3555cc104a6b386fa97837a0b1b
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Dec 18 09:02:49 2023 +0100

        - implemented #1077

    commit 7f619a7a55ec9a9e33089c1548acc404a1c05aa9
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Dec 20 07:48:27 2023 +0100

        - small fix for #1077

    commit c29b995f7c6eb9e48ec5fdeeb26914d845bd5e92
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Dec 19 10:54:25 2023 +0100

        - fixed problem with UI showing error that target from URL is not recognized when the targets are not yet loaded

    commit a70d4a2c31212407d77b145e688c80ecaa9e6b8b
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Dec 19 10:27:28 2023 +0100

        - checking out the sorting of target list

    commit 5f1ea56baa55e3d40d34b99dbd2284c339f6d9e2
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Dec 18 14:22:03 2023 +0100

        - #1195

    commit 7c5c6b5620e037e9d7f47e56ea783158d34e2204
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Dec 18 12:41:31 2023 +0100

        - #1166

    commit d51914eace57384ef7586a82b186096a4c8404c2
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Dec 18 09:02:49 2023 +0100

        - implemented #1077

    * - workaround for #1075 and partial implementation of #1256

    * - updated 'download is preparing' message

    * - forgot to remove debug sleep...

    * - hot fix for #1075

    * - hotfix for #1075 - weird merge by github

    * - #1256 - added link to success toast

    * Squashed commit of the following:

    commit 0e242e13301e4708ecf725b2742584b98f799704
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Jan 16 13:52:38 2024 +0100

        - additional fixes for #1075
        - fixed #1267
        - fixed #1260
        - fixed #1270

    * - copy now copies whole name of the compound/observationCmpView.js
    - target name was removed from the name of the compound/observation when displayed

    * #1249 dataset molecules can use side observation molecule for P, C, S renders

    * #1249 preserve color of RHS compound when toggling its P, C, S buttons

    * #1249 fixed inconsistent coloring of rendered objects on activating RHS/LHS compound buttons

    * - improved direct display comments to show issues and examples

    * - #1296, #1299, partial (?) #1305, partial #1303

    * #1208 updated status lights on hover info and some logic behind it

    * #1208 added check for status change

    * #1208 do not spam toast of unavailable status

    * - probably fix for #1295
    - fixed #1300 and #1315

    ---------

    Co-authored-by: matej <matej.vavrek@m2ms.sk>
    Co-authored-by: RobertMatuska <robert.matuska@m2ms.sk>

commit f5b939eea1a3b265033b9d393b8f72a18486121c
Author: boriskovar-m2ms <boris.kovar@m2ms.sk>
Date:   Tue Jan 30 10:11:35 2024 +0100

    #1296, #1299, partial (?) #1305, partial #1303 (#402)

    * Update build-main.yaml

    got rid of scheduled rebuild because it's messing up data

    * updated react16 to react 18.2, replaced hot-loaders modules by react-refresh, removed react-undo module

    * added proper values for Typography variant

    * renamed obsolete create theme function

    * #1063 added header and search

    * #1063 fixed body table, page count and search

    * #1063 fixed minor bugs and set clear filter

    * Squashed commit of the following:

    commit 10925d2c914673bfaa4e8b0205904e3e393d731d
    Author: RobertMatuska <robert.matuska@m2ms.sk>
    Date:   Thu Sep 28 10:27:36 2023 +0200

        #1114 edited text and style

    * #1161 setted search and filter for old target list

    * #1161 fixed discourse icon padding

    * #1161 fixed filtered list sort

    * #1161 fixed target access sort and filter

    * #1161 fixed change page

    * #1145 preserve state of molecule rendering, save also actions of representation changes to snapshot

    * do not wrap display controls buttons

    * #1167 resize target list colmuns

    * #1161 fixed sorting

    * #1161 fixed sorting

    * #1161 edit sort functionality for filter table

    * #1161 fixed search, filter, sort by target access

    * #1161 created init date column

    * #1161 # filtering and sorting init date

    * #1161 fixed clear and sort init date

    * #1161 fixed target sorting

    * Squashed commit of the following:

    commit d4895261f303ae61a359579c485adf702cdff64e
    Merge: 1c45038a 411921f8
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Oct 16 08:24:05 2023 +0200

        Merge branch '#1173' of https://github.com/m2ms/fragalysis-frontend into #1173

    commit 1c45038a42430f90f68430037027296021fe1974
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Fri Oct 13 11:03:49 2023 +0200

        - implemented #1173 also with save/restore and undo/redo functionality

    commit 411921f8a4906c54dfcd31c8bc079f9bd3008baf
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Fri Oct 13 11:03:49 2023 +0200

        - implemented #1173 also with save/restore and undo/redo functionality

    * merge

    * Squashed commit of the following:

    commit 7883c1584fc80b0be8dae624c18e86ddbe3c906b
    Merge: 5e2b937d 19b9f243
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Oct 16 11:19:36 2023 +0200

        Merge branch '#1172' of https://github.com/m2ms/fragalysis-frontend into #1172

    commit 5e2b937da95963afab366fac18912b4c596ccd78
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Oct 16 11:16:15 2023 +0200

        - added compound_set to csv export - #1172

    commit 19b9f243cc996f8d3e28f6fd8a44c167894b358a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Oct 16 11:16:15 2023 +0200

        - added compound_set to csv export - #1172

    commit 75ac125b5cae9d669d337410db9a184d6d31a456
    Merge: f50666ce 574c7b5e
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Oct 16 08:26:08 2023 +0200

        Merge branch '#1172' of https://github.com/m2ms/fragalysis-frontend into #1172

    commit f50666cef87e491309347fbcb8514286fcb72adc
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Fri Oct 13 13:45:34 2023 +0200

        - implemented #1172

    commit 574c7b5e65181e35865571ce7d9b6d01a40ce562
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Fri Oct 13 13:45:34 2023 +0200

        - implemented #1172

    * #1167 fixed issues

    * #1167 reworked resizer

    * #1161 fixed merge bugs

    * #1161 removed console

    * updated react16 to react 18.2, replaced hot-loaders modules by react-refresh, removed react-undo module

    * added proper values for Typography variant

    * renamed obsolete create theme function

    * changed deprecated justify= to justifyContent=

    * fixed some landing page errors, mostly missing key and using useState outside of useEffect in functional component

    * #1061 loading and toast functionality move from header context into LoadingContext and ToastContext, added loading indicator for tags and hits panes + hit/molecule control buttons

    * #1171 return representations when loading protein without quality to show it in display control

    * do not set logged in toast message if user is not logged in

    * fixed Tooltip error messages about its disabled child, fixed invalid variant type and removed xs from Grid container (it is Grid item property)

    * fixed null value for open property

    * fixed "ButtonGroup component doesn't accept a Fragment as a child. Consider providing an array instead"

    * fixed "<div> cannot appear as a descendant of <p>" error by adding "component={'div'}" property to complex Typography component

    * removed invalid way of setting color for tag, it does not work - only throws error and with proper setting it is same as background color..

    * fixed missing key error

    * fixed invalid references erros

    * fixed unknown properties error and missing key

    * - #1139 - updated docker-compose file to be ready for new backend version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - changed configuration

    * - #1139 - updated docker-compose file to be ready for new backend version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - fixed search bar placeholder for hits

    * - #1139 - updated docker-compose file to be ready for new backend version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - #1139 - fixed snapshot creation and restoration

    * #1167 target and project list resizer

    * #1167 fixed project list width

    * #1161 changed width

    * - #1183 - dynamic handling of tag categories

    * - fixed #1186

    * - job file transfer backend

    * - checkpoint

    * - new CI/CD

    * Update build-main.yaml

    got rid of scheduled rebuild because it's messing up data

    * updated react16 to react 18.2, replaced hot-loaders modules by react-refresh, removed react-undo module

    * added proper values for Typography variant

    * renamed obsolete create theme function

    * changed deprecated justify= to justifyContent=

    * fixed some landing page errors, mostly missing key and using useState outside of useEffect in functional component

    * rebase

    * #1171 return representations when loading protein without quality to show it in display control

    * do not set logged in toast message if user is not logged in

    * fixed Tooltip error messages about its disabled child, fixed invalid variant type and removed xs from Grid container (it is Grid item property)

    * fixed null value for open property

    * fixed "ButtonGroup component doesn't accept a Fragment as a child. Consider providing an array instead"

    * fixed "<div> cannot appear as a descendant of <p>" error by adding "component={'div'}" property to complex Typography component

    * removed invalid way of setting color for tag, it does not work - only throws error and with proper setting it is same as background color..

    * fixed missing key error

    * fixed invalid references erros

    * fixed unknown properties error and missing key

    * - #1139 - updated docker-compose file to be ready for new backend version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - changed configuration

    * - #1139 - updated docker-compose file to be ready for new backend version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - fixed search bar placeholder for hits

    * - #1139 - updated docker-compose file to be ready for new backend version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - #1139 - fixed snapshot creation and restoration

    * - #1183 - dynamic handling of tag categories

    * - job file transfer backend

    * - checkpoint

    * - new CI/CD

    * - fixed build errors

    * Squashed commit of the following:

    commit d5c97097a073d1298221f98b01e0431cbf520a47
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 16 07:36:56 2023 +0100

        - fixes blank page

    * #1035 added front-end pert of status lights for services

    * #1035 added API endpoint and changed refresh rate to 30 seconds for now

    * #1035 do not end up on failed response

    * Squashed commit of the following:

    commit e1dd8bd5f2c9e61c829cefb80b63f0e3f23604c9
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 21 09:16:46 2023 +0100

        - #1211 fixed and also fixed other problems which were hiding problems with snapshot restoration

    * Squashed commit of the following:

    commit e79b49f5fce9027910e24f30efdfc0aafa94be34
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Dec 7 09:44:55 2023 +0100

        - fixed RHS for #1239

    * #1217 save all actions to action list for snapshot not only the first ones, fixed of possible crash, adjusted restoring representations from snapshot

    * - updated docker-compose

    * Squashed commit of the following:

    commit 50d574da89fc90425cfcd6eb18ab30348f371b73
    Merge: 1fdebffa 3b4e7a7a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Dec 13 09:06:19 2023 +0100

        Merge branch '#1190' of https://github.com/m2ms/fragalysis-frontend into #1190

    commit 1fdebffa19b741e99b1e14ec2dd2adffa4261837
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Dec 13 08:14:58 2023 +0100

        - RC of #1190

    commit dabee45c26683c5e1b84d60b145850e199fd2ab0
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Dec 5 09:20:02 2023 +0100

        - checkpoint

    commit 4e9a6744ea75081129126dd1b9aad0d8410ae062
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 16 13:17:05 2023 +0100

        - using new backend image

    commit c90fc473a059540aea9070715b6527de8a823899
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit 515cb8bb4d6ee9fea192c9fa0768c80c03a524e3
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit ab0a2977c9f923183afa413fe5f9ae8c149b4b4e
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 216762b7094da2f07bb74ecd3ce0bd4526f47e57
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 6f628a7e7c637b9d5d80c27bca4470f7c7ffb527
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 823bf2c9c55d6e5f148c75fd55e888bcbbd5c105
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit a7aa657062c994b0ece88ea0fbf2a0d137bc3850
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 101751bab2d505f8f5dfaa3f4bac88529084d7da
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 5a6935a6f7d8ecaca16ca5072880ebb12f8656d0
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 1d01387260863790647f7324d4bd0c34ac4dcd03
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit b3c781364154acf103c33bf8d266353466cdc5d8
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 16 13:17:05 2023 +0100

        - using new backend image

    commit f48dc9d21c5bf02df112d149adf8f3384d96b702
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit 813b553e8db154a9103e45f349ccf08607ba6cd7
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit b49f773779790bbd231e418860eb2089b87b7919
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 98f566bcbb9d7493238fcbefc6cf87dcec1e7497
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit a01f097d1b2fc5290cb26d27edd45635ec2ae703
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit a6d8930b249c7cc9175b4e6cd2e386ed7803f7e6
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 14 16:42:23 2023 +0100

        - #1190 - implemented tags

    commit 392938b34b29aacb1729d1ddc5d5d438a59dd773
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit 69ab4c2701185f68a6d85cebf8d03367c60ef2a4
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit e6b700b602b708801ac38385bc79e3ef785d8af8
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit a7e6aad0a8f8ce7b80ba84c3d017581c659522c7
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 4fc93c0662050f834ccf3482ed23358ab9b9f8be
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 12:03:11 2023 +0100

        - checkpoint

    commit 58573f6fc68a4f405c93750ff40b9b5ec2cd0cd9
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit ecc3d6c1dd4a6c3437d29d6f00ecf6ce0897319d
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 2 07:59:19 2023 +0100

        - #1190 - compounds for LHS

    commit 3b4e7a7ad2a663660f675b10dd91f09a81ca720e
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Dec 13 08:14:58 2023 +0100

        - RC of #1190

    commit 1debb802212c6b7c6fa954bba1b04c5e926ef0ea
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Dec 5 09:20:02 2023 +0100

        - checkpoint

    commit 4f714be762940d796add2431a25dc9d11f795cd5
    Merge: 730d9e5b bcc1568f
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Nov 22 07:41:51 2023 +0100

        Merge branch '#1190' of https://github.com/m2ms/fragalysis-frontend into #1190

        # Conflicts:
        #	js/reducers/api/apiReducers.js
        #	js/reducers/api/constants.js

    commit 730d9e5bd404a8c121403528626c51595dee3927
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 16 13:17:05 2023 +0100

        - using new backend image

    commit 76ea646ba8b940037e85082bdddff8967971a602
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit 67439de7a640ff33f1dba88ebb833894e4a53b06
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit a38e0a39093ecf59d39fe50f0a49f9fa7a9237d3
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 64b67c539245bb30fa67eeff011b9868b4b0d2fa
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 35b2777be98d8c3ad4af2ed5ab5ad90d349bc971
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 810451479e17147b03594ba4bc27bb6964d1c159
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 14 16:42:23 2023 +0100

        - #1190 - implemented tags

    commit 5432a999f9bc440b403abbdacaf45b3a328d9dfa
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit f5ea66fd36a1ad860b4530d89382c569303b2efa
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit d3fb020d6f99bd9177f0442198a3ffb17cb90516
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 84d48899979a09bd7c649028dd6df0eaebcd9b6a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 29796304e70cc2ae25c6a96271d0dd12f692de48
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 12:03:11 2023 +0100

        - checkpoint

    commit 7241df5cbeaab971c7f56eaa54a920a1b8ed8fc8
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 195e30e1038a38ebe4ef4ffdfd3b8d93c12e3bda
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 2 07:59:19 2023 +0100

        - #1190 - compounds for LHS

    commit bcc1568fbbb3b3143a668784f7aac4524f4276a3
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 16 13:17:05 2023 +0100

        - using new backend image

    commit 60136ed9ddd47ca6c523375de5ba4d1f02fe6ab3
    Merge: 85c06a92 a18f80f1
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 16 08:01:49 2023 +0100

        Merge branch '#1190' of https://github.com/m2ms/fragalysis-frontend into #1190

    commit 85c06a920ae62b6c379f0f9975e94cf384f8f47a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 14 16:42:23 2023 +0100

        - #1190 - implemented tags

    commit 6dd0268d367c93d8104569719a3d6c841e19bd36
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit 0854241b93a563bf8cabd24278c4248c15eec645
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 1686e029dca683334351b4ea02c1d40851a321d9
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit ffba65bf05019144cb62eb9c4a0bd22db22609cc
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 1f22288d14e96d8b09a1916591d6a70d2db45481
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 12:03:11 2023 +0100

        - checkpoint

    commit e5a04e51c62f8e85b29fc4eb0ee1adb19622a978
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 155a96b066ca27243652b90b332ef2f7448e3ab0
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 2 07:59:19 2023 +0100

        - #1190 - compounds for LHS

    commit a18f80f1d1aaa1e6c0606c774ba7931b6bf527fc
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 14 16:42:23 2023 +0100

        - #1190 - implemented tags

    commit 43b74762ffa648dfcaec1d752800eba996af8784
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit 1f9eba8250e2fcd084399eaf47243cacb0a094e0
    Merge: 17b9cb1c 3d51ab04
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:52:19 2023 +0100

        Merge branch '#1190' of https://github.com/m2ms/fragalysis-frontend into #1190

    commit 17b9cb1cb7dc91d46f4cef569d63b481ee7a121a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 63122eb9c63f7b647c578c50268ec3cb6069da9e
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 12:03:11 2023 +0100

        - checkpoint

    commit 362ec046ef25402126f651cbd8d17c9b0eb8e5f9
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 26d2f319c44d74f5d419c789bcd594f3b11f5375
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 2 07:59:19 2023 +0100

        - #1190 - compounds for LHS

    commit 3d51ab049bee5729706c5f59f8e2233c1c2e746c
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit e3138f7427c4e199a9b4000e0ef0c7a366e65afd
    Merge: 3beca8c7 c95b8412
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 9 13:47:44 2023 +0100

        Merge branch '#1190' of https://github.com/m2ms/fragalysis-frontend into #1190

    commit 3beca8c75b14dde5a8dc4a01c85b9f8e13edfa24
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 12:03:11 2023 +0100

        - checkpoint

    commit 2d8e3c4b8c2ca5804dcca66e4d4a6dea2bc3fe68
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit fa13fe991f437cb209b723e2d22e33af56066aae
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 2 07:59:19 2023 +0100

        - #1190 - compounds for LHS

    commit c95b841232971fee08e771664579505326a8383c
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 12:03:11 2023 +0100

        - checkpoint

    commit 74fb512d1adaabb39b37b2d3e69fc89bf9852f69
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 28337545084b3ad9e0f0505fd2a0851c158c4ec9
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 2 07:59:19 2023 +0100

        - #1190 - compounds for LHS

    * - fix for tags

    * - fixed issue with checkboxes for #1190

    * #1181 fixed min width and maximum width design

    * #1181 created compound sets table

    * #1181 fixed layout with Compound sets

    * #1181 changed functionality for radio buttons

    * #1181 RHS UI improvements, fixed some related error

    * #1203 download compound molecules as csv export, populate compound summary table from common scores

    * #1181 changed active filter icon from different colour to red dot indicator

    * #1202 added rationale and ref_url info into inspiration dialog

    * #1204 search compound sets by title

    * #1181 added tooltips for all columns

    * #1202 updated visual of summary

    * #1181 adjusted columns widths, show number of compounds in set in # column

    * #1181 adjusted RHS height and increased maximum width

    * #1121 renamed references of unique_name to name since it was removed

    * Squashed commit of the following:

    commit a8e1fda76c4449188f931286f9725931c3f0a4ec
    Merge: e97995dd 7f619a7a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Dec 20 10:21:56 2023 +0100

        Merge branch '#1077' of https://github.com/m2ms/fragalysis-frontend into #1077

    commit e97995ddcfe8778bc2b8de070810935b5e8f786a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Dec 20 07:48:27 2023 +0100

        - small fix for #1077

    commit 8ee8cb1891c1d5f0f716ce130aa28f039241158f
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Dec 19 10:54:25 2023 +0100

        - fixed problem with UI showing error that target from URL is not recognized when the targets are not yet loaded

    commit 32018c9968bb96c8b29074bd71bc242e25c54b39
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Dec 19 10:27:28 2023 +0100

        - checking out the sorting of target list

    commit da3abebacf95b8890b14149d9e6b88d3acbf0526
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Dec 18 14:22:03 2023 +0100

        - #1195

    commit f593a1eef0b4622f37ccd3ad6afe8e8ebdf5abb8
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Dec 18 12:41:31 2023 +0100

        - #1166

    commit 96733edf6dadd3555cc104a6b386fa97837a0b1b
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Dec 18 09:02:49 2023 +0100

        - implemented #1077

    commit 7f619a7a55ec9a9e33089c1548acc404a1c05aa9
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Dec 20 07:48:27 2023 +0100

        - small fix for #1077

    commit c29b995f7c6eb9e48ec5fdeeb26914d845bd5e92
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Dec 19 10:54:25 2023 +0100

        - fixed problem with UI showing error that target from URL is not recognized when the targets are not yet loaded

    commit a70d4a2c31212407d77b145e688c80ecaa9e6b8b
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Dec 19 10:27:28 2023 +0100

        - checking out the sorting of target list

    commit 5f1ea56baa55e3d40d34b99dbd2284c339f6d9e2
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Dec 18 14:22:03 2023 +0100

        - #1195

    commit 7c5c6b5620e037e9d7f47e56ea783158d34e2204
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Dec 18 12:41:31 2023 +0100

        - #1166

    commit d51914eace57384ef7586a82b186096a4c8404c2
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Dec 18 09:02:49 2023 +0100

        - implemented #1077

    * - workaround for #1075 and partial implementation of #1256

    * - updated 'download is preparing' message

    * - forgot to remove debug sleep...

    * - hot fix for #1075

    * - hotfix for #1075 - weird merge by github

    * - #1256 - added link to success toast

    * Squashed commit of the following:

    commit 0e242e13301e4708ecf725b2742584b98f799704
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Jan 16 13:52:38 2024 +0100

        - additional fixes for #1075
        - fixed #1267
        - fixed #1260
        - fixed #1270

    * - copy now copies whole name of the compound/observationCmpView.js
    - target name was removed from the name of the compound/observation when displayed

    * #1249 dataset molecules can use side observation molecule for P, C, S renders

    * #1249 preserve color of RHS compound when toggling its P, C, S buttons

    * #1249 fixed inconsistent coloring of rendered objects on activating RHS/LHS compound buttons

    * - improved direct display comments to show issues and examples

    * - #1296, #1299, partial (?) #1305, partial #1303

    * #1208 updated status lights on hover info and some logic behind it

    * #1208 added check for status change

    * #1208 do not spam toast of unavailable status

    ---------

    Co-authored-by: matej <matej.vavrek@m2ms.sk>
    Co-authored-by: RobertMatuska <robert.matuska@m2ms.sk>
boriskovar-m2ms added a commit that referenced this issue Apr 17, 2024
* - first implementation of #1354

* - updated message for #1354

* - cleanup for #1354

* - implemented #1361
- improvements for #1354

* - implemented #1376
- also fixed bug in download structures dialog where only first download got added to the dropdown menu

* - partial fix for purple release for #1370

* - using official backend version

* - DELETE button disabled for #1357

* - added requirements

* Squashed commit of the following:

commit 07ba57d
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Mon Mar 25 08:23:53 2024 +0100

    -  #1393 - all columns are now included

* Squashed commit of the following:

commit e1e3c2c
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Wed Apr 10 15:31:02 2024 +0200

    - implemented #1373
boriskovar-m2ms added a commit that referenced this issue Apr 23, 2024
commit e76b303cd21799a69891c71d523a0911b097ccc1
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Tue Apr 23 09:38:00 2024 +0200

    - using official backend now

commit fa393fe23cb9d1ed04745b831c4998e4f31c591b
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Tue Apr 23 08:37:59 2024 +0200

    Squashed commit of the following:

    commit 7511b573482d4a1097286cfdc354b374ec5900e6
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Apr 23 08:27:24 2024 +0200

        - finished #1348

    commit 6074d79ca46cdd141d166789af1e7268c0e7bf33
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Apr 17 09:50:06 2024 +0200

        - #1348 - fixed cases when all pdbs are missing

    commit 49f0ae8750ac9056dbc6d545a1a151e73f0d3b81
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Apr 10 13:41:50 2024 +0200

        - checkpoint

    commit 13a315ef93d0d5f411b3cb3091696a6bc166ce1d
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Apr 3 12:30:06 2024 +0200

        - checkpoint

    commit a5b8cca53af12a5a2f5d20ca74f3c91d9104e4f2
    Merge: 34b75f78 756a25be
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Mar 25 12:24:01 2024 +0100

        Merge branch '#1348' of https://github.com/m2ms/fragalysis-frontend into #1348

    commit 34b75f78782360ac20c5c6b5e0f650558ae0e401
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Mar 12 12:35:21 2024 +0100

        - latest backend

    commit 1308cb28c79ea746d2ac6847baa1ee489089d94d
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit 1ee15e78086164142fb79eb8102df2827b28a2c1
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit a033b68c5f093743c8fd1deb6eb3e2d1e3aac314
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit 7149081d50a30191434605dedde5b112539d0141
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit 623de4fa1750e4d1acf013ae266b1b68fadd8449
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Mar 12 09:48:51 2024 +0100

        - using official backend version

    commit eec204c5771885f95b05a1beb036e483302b987e
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 12:16:45 2024 +0100

        - checkpoint

    commit dbc93a71846312f0c40c96b7fac207a3380b3c01
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 10:27:08 2024 +0100

        - checkpoint

    commit b933243938573b4a2bb23b6d92a0e5eeaf396b10
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit 4a0e17154d2e947d23668e851ef19c5eaf4d412a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit 634ed03beb909e1e69c748ddb33a09ada83bd609
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit 6e65faecf8a1cb880363d5374f9777403b2cf6c1
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit 1bff7bf46ac041d3d480a9978c340868e98a7e08
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit 07f21b61bd1204e14db02f424590decfeb527f51
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit 021366ef147e36a14567b22a1d97628987d13c8e
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit 36f87b4daf9d385b558d4a0663abed13d5e3d13e
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit 87e765a7594fcada946ad65082dd854bc0092328
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Mar 12 12:35:21 2024 +0100

        - latest backend

    commit 72c94f05cbd60bb33f477de4aef471920f1c29bf
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit 224ca2345f734a8819d88125fcabc72aedffb8b2
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit 36f03f843dce0b603a5f38a246f1cded8ebd9c71
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit 807292042c5063582f61b642f32762cc013b2323
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit e3190563cbd25a4860bb45317fcd18e149214942
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Mar 12 09:48:51 2024 +0100

        - using official backend version

    commit 187e7f39614be2a60857f843bfc8398bb94874f5
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 12:16:45 2024 +0100

        - checkpoint

    commit b6aa0a4dbe30d1a1e57092cc2e253b078f49825b
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 10:27:08 2024 +0100

        - checkpoint

    commit fccf97682fa65b6f86226e85713f3bda283726b4
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit 965be5ecc97b316a5605ccc3acfbf3646e04e524
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit b01cdbf01d85855bfca6f60a3981888334f64d7b
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit e04fbf2a8b54cb3bad30889e6cd64144fdd74c9c
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit 5d64c26ca47113b78d1680c9381c389260d330f9
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit dbb155c0ea79aa6295e6ed18498a4d0b121f0133
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit b1c0f3c0c3547eb71d0b756da6b2f11d090df2ad
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Feb 29 10:32:27 2024 +0100

        - checkpoint

    commit abc8cc993165970d1827898dbb4cc7795b23835d
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit 2ef004ad1324989890dc2460cb4d991a4d0e3a9d
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit 756a25be46950e2762e3c8c399583132a1d37d57
    Merge: f686ef4a f474ff6c
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Mar 14 10:00:02 2024 +0100

        Merge branch '#1348' of https://github.com/m2ms/fragalysis-frontend into #1348

    commit f686ef4a96e57571ab53ce1901927676a85a7eb1
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Mar 12 12:35:21 2024 +0100

        - latest backend

    commit df6209c149d048ff8cc6f5faef40fb4657a51578
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit f5a842f250d2706e1fdaba819876fef766b754a1
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit 83ffcccc99d813815496d1b97443e23bd3e72ae3
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit 0ecff35ab72e0f679211fd6266a86b9bda3814e0
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit d3a90c7e6c5538b46f8c1ed0aa5fa48fd718e951
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Mar 12 09:48:51 2024 +0100

        - using official backend version

    commit 50800b9c05cc94fc783b63e918c419a8f1c95d7b
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 12:16:45 2024 +0100

        - checkpoint

    commit 2af18fdc661a84342af49b1eaab7e3e09a5f702b
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 10:27:08 2024 +0100

        - checkpoint

    commit cd75a275c858acfd77eea28c1833175a25ba1776
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit c485389796dce1817d14d923e8d41e26875533eb
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit 96296e919e3b15d0bbc0ee66f63c0ee4f7564942
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit 760152bdc448a9f91c22de292fd4e41b7aa0b626
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit 8a30204864a5858c94bc0ee6341c9337c1deeff4
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit 6235e9c320920bb57928af515c7c003eba06d80e
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit e2e46cb4c68a8c2a2a92a720de978a8935813815
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Feb 29 10:32:27 2024 +0100

        - checkpoint

    commit 8176514e81f7e67a1be034207d7d33ac96a41259
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit 6aa51082e3832f0a678c270b5cd5d8958de88a96
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit f474ff6c01b12c9b1775323bae5eab18b5717d95
    Merge: 56c0b85c e728f49c
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Mar 14 08:30:00 2024 +0100

        Merge branch '#1348' of https://github.com/m2ms/fragalysis-frontend into #1348

    commit 56c0b85cc08afe9f56bbf2f78297a3d1251dbc62
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit a185933a1639d78238f6f2145f1eae2a0ac4d3c6
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit 09c97b53e59d30576859a13d5e443fdd6e827e98
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit c6d0738d3e376de9082192de4f6d6b91808bafac
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit 72f36b0de20159bb8bbbc2217b073f302c41315e
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Feb 29 10:32:27 2024 +0100

        - checkpoint

    commit 971799dffdcfd51601943e981786fc19aa0d672c
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit 1bb53263961016ce3d7a2e3f977a5cbaf2e8e9fb
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit e728f49cb7e08238afb349039b7cf15d4290555f
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Mar 12 12:35:21 2024 +0100

        - latest backend

    commit 125b8d48589d0180d261e781fc18f3b88787cc05
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit 0e4155177fde3500404a15cd514bc774f3836b43
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit 8cf43e054416ed1a54565604859a411530ba1837
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit d336352f1856fa02722eb27f19511e29f26781c0
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

    commit 2fb59dcd5c2c14941fd8c74282473822af87b0fb
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Mar 12 09:48:51 2024 +0100

        - using official backend version

    commit 9439f5d40bb696f2247f412901b65db8d1ea5ea6
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Mar 7 13:59:03 2024 +0100

        - partial fix for purple release for #1370

    commit 4ff5f945954ea6533f9c3728c0565b20c79b2b0d
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Mar 7 10:10:41 2024 +0100

        - implemented #1376
        - also fixed bug in download structures dialog where only first download got added to the dropdown menu

    commit 66a98f3c617d0d110e73cf4df09048c572b3edee
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Mar 6 09:47:12 2024 +0100

        - implemented #1361
        - improvements for #1354

    commit 8a193a551faa91e4441783429b980608c116665c
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Mar 5 13:24:11 2024 +0100

        - cleanup for #1354

    commit bb3bf3b6ceafdd40b0778157ff95d01ecceb6f8e
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Mar 5 13:21:32 2024 +0100

        - updated message for #1354

    commit a3dc8191aadd627f4de6f7425c9dfb72c34c1d23
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Mar 5 13:05:12 2024 +0100

        - first implementation of #1354

    commit 4121519dad01feb107c1a4b2751caefb620f5471
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Mar 5 08:17:49 2024 +0100

        - implemented #1357

    commit 4d96ff464b940f7aca3340819496e1d6fa03d1cf
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Mar 4 10:07:06 2024 +0100

        - implemented changes requested in #1326

    commit 03158bec02a2a6a8ded44bae99bfccd0f1df49ca
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Mar 4 08:45:22 2024 +0100

        - fixed problem with tags not visually updating on observations

    commit 8765a3c69ef662a8c34ce73806bedfa306ab12f7
    Author: matej <matej.vavrek@m2ms.sk>
    Date:   Mon Feb 26 21:36:12 2024 +0100

    commit 6db8b22ca6133eddeb7322cc0bd0ab52a5272fd6
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Feb 29 10:32:27 2024 +0100

        - checkpoint

    commit 027eaf0eacd1ea929eb00bfca4aef9e34ba1deab
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 12:16:45 2024 +0100

        - checkpoint

    commit 7407dbd02fe0cf50dcb069740475e914010e9016
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 10:27:08 2024 +0100

        - checkpoint

    commit c13628b494bb5bfcd3b889b7a040568b683549a8
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 27 09:23:04 2024 +0100

        - checkpoint

    commit e39721c2353fe40249ea7cac6d7d01bc58186fe2
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Feb 26 08:42:49 2024 +0100

        - checkpoint

commit 75fc5389d538515664a13d9082b1f9ead9fb069b
Author: matej <matej.vavrek@m2ms.sk>
Date:   Thu Apr 18 13:15:42 2024 +0200

commit 639511021327e1d2d00023ac763d09fd69ac0935
Author: matej <matej.vavrek@m2ms.sk>
Date:   Thu Apr 18 13:14:09 2024 +0200

commit 2a657e78e3e373c5aae69292d04791e10d47c494
Merge: a9ec2d59 1b8268b6
Author: boriskovar-m2ms <boris.kovar@m2ms.sk>
Date:   Wed Apr 17 12:20:21 2024 +0200

    Merge branch 'staging' into stagingcandidate

commit a9ec2d597dd3e420735f5a7fa685a8217f34f08d
Author: matej <matej.vavrek@m2ms.sk>
Date:   Tue Apr 16 22:46:21 2024 +0200

commit e8095a571c0a881415f0ba8977fd4843863e3c9f
Author: matej <matej.vavrek@m2ms.sk>
Date:   Tue Apr 16 22:39:49 2024 +0200

commit 0554cfe3eff43697d25524fc7644651672665f2e
Author: matej <matej.vavrek@m2ms.sk>
Date:   Tue Apr 16 22:37:40 2024 +0200

    allow ReactRefreshWebpackPlugin for dev environment

commit dc1b450497d07555e65e4b369398c8e283dba5b1
Author: matej <matej.vavrek@m2ms.sk>
Date:   Mon Apr 15 14:10:27 2024 +0200

commit 1b8268b6b4a89ca1a31851c308823e59502f4983
Author: boriskovar-m2ms <boris.kovar@m2ms.sk>
Date:   Fri Apr 12 09:00:28 2024 +0200

    Implements #1373 and f/e part of the #1393 (#421)

    * - first implementation of #1354

    * - updated message for #1354

    * - cleanup for #1354

    * - implemented #1361
    - improvements for #1354

    * - implemented #1376
    - also fixed bug in download structures dialog where only first download got added to the dropdown menu

    * - partial fix for purple release for #1370

    * - using official backend version

    * - DELETE button disabled for #1357

    * - added requirements

    * Squashed commit of the following:

    commit 07ba57d7f4c4e572896e24b0a122de23886e2a50
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Mar 25 08:23:53 2024 +0100

        -  #1393 - all columns are now included

    * Squashed commit of the following:

    commit e1e3c2ca280b527794d7aaf2b0924e4615fefda1
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Apr 10 15:31:02 2024 +0200

        - implemented #1373

commit c1cfa444606da6edbc306c6683fe4b325aada80e
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Wed Apr 10 15:32:36 2024 +0200

    Squashed commit of the following:

    commit e1e3c2ca280b527794d7aaf2b0924e4615fefda1
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Apr 10 15:31:02 2024 +0200

        - implemented #1373

commit b8d974cb971c3e6504aec8a774a042c6f18ce231
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Mon Mar 25 10:10:01 2024 +0100

    Squashed commit of the following:

    commit 07ba57d7f4c4e572896e24b0a122de23886e2a50
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Mar 25 08:23:53 2024 +0100

        -  #1393 - all columns are now included

commit b48fc7d5a4cd292f2c9f4146b33b547ed84cfc75
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Thu Mar 14 08:56:04 2024 +0100

    - added requirements

commit 012895aaf18922187e2c987191b974779342504d
Merge: ae304e5c 6ff61733
Author: Alan B. Christie <29806285+alanbchristie@users.noreply.github.com>
Date:   Wed Mar 13 16:58:45 2024 +0100

    Merge branch 'production' into staging

commit ae304e5cccbbd694d68ca1d645fcb86d30aba6fb
Author: Alan Christie <alan.christie@matildapeak.com>
Date:   Wed Mar 13 16:53:38 2024 +0100

    ci: Removed dokcerfile lint

commit 6ff617334e51ce7b20d8724d3347b721953521d4
Author: Alan B. Christie <29806285+alanbchristie@users.noreply.github.com>
Date:   Wed Mar 13 16:49:34 2024 +0100

    Attempt to fix production build (#419)

    * #1341 "pin" edit tag row outside of tag list

    * #1341 "pin" edit tag row outside of tag list (#410)

    Co-authored-by: matej <matej.vavrek@m2ms.sk>

    * - fixed problem with tags not visually updating on observations

    * - implemented changes requested in #1326

    * - implemented #1357

    * Implements #1376, #1361, #1354 (#412)

    * - first implementation of #1354

    * - updated message for #1354

    * - cleanup for #1354

    * - implemented #1361
    - improvements for #1354

    * - implemented #1376
    - also fixed bug in download structures dialog where only first download got added to the dropdown menu

    * Implements purple part of #1370 (#413)

    * - first implementation of #1354

    * - updated message for #1354

    * - cleanup for #1354

    * - implemented #1361
    - improvements for #1354

    * - implemented #1376
    - also fixed bug in download structures dialog where only first download got added to the dropdown menu

    * - partial fix for purple release for #1370

    * Partial implementation of #1357 (#415)

    * - first implementation of #1354

    * - updated message for #1354

    * - cleanup for #1354

    * - implemented #1361
    - improvements for #1354

    * - implemented #1376
    - also fixed bug in download structures dialog where only first download got added to the dropdown menu

    * - partial fix for purple release for #1370

    * - using official backend version

    * - DELETE button disabled for #1357

    * ci: Attempt to fix f/e actions

    ---------

    Co-authored-by: matej <matej.vavrek@m2ms.sk>
    Co-authored-by: boriskovar-m2ms <boris.kovar@m2ms.sk>
    Co-authored-by: Warren Thompson <warren.thompson+1@diamond.ac.uk>
    Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

commit f4bac7cb9a1115f986804e54c966e594d456213d
Merge: 5651b8ca 65e6125e
Author: Alan B. Christie <29806285+alanbchristie@users.noreply.github.com>
Date:   Wed Mar 13 16:26:06 2024 +0100

    Merge pull request #418 from xchem/m2ms-1387

    Attempt to fix f/e actions

commit 65e6125ed5b7cd62f989d52de6ee0cd95348345b
Author: Alan Christie <alan.christie@matildapeak.com>
Date:   Wed Mar 13 16:11:55 2024 +0100

    ci: Attempt to fix f/e actions

commit 35eb897cb511616a19aa11129794b080efbf12d0
Author: Alan B. Christie <29806285+alanbchristie@users.noreply.github.com>
Date:   Wed Mar 13 15:35:54 2024 +0100

    Merge latest staging changes to production (#417)

    * #1341 "pin" edit tag row outside of tag list

    * #1341 "pin" edit tag row outside of tag list (#410)

    Co-authored-by: matej <matej.vavrek@m2ms.sk>

    * - fixed problem with tags not visually updating on observations

    * - implemented changes requested in #1326

    * - implemented #1357

    * Implements #1376, #1361, #1354 (#412)

    * - first implementation of #1354

    * - updated message for #1354

    * - cleanup for #1354

    * - implemented #1361
    - improvements for #1354

    * - implemented #1376
    - also fixed bug in download structures dialog where only first download got added to the dropdown menu

    * Implements purple part of #1370 (#413)

    * - first implementation of #1354

    * - updated message for #1354

    * - cleanup for #1354

    * - implemented #1361
    - improvements for #1354

    * - implemented #1376
    - also fixed bug in download structures dialog where only first download got added to the dropdown menu

    * - partial fix for purple release for #1370

    * Partial implementation of #1357 (#415)

    * - first implementation of #1354

    * - updated message for #1354

    * - cleanup for #1354

    * - implemented #1361
    - improvements for #1354

    * - implemented #1376
    - also fixed bug in download structures dialog where only first download got added to the dropdown menu

    * - partial fix for purple release for #1370

    * - using official backend version

    * - DELETE button disabled for #1357

    ---------

    Co-authored-by: matej <matej.vavrek@m2ms.sk>
    Co-authored-by: boriskovar-m2ms <boris.kovar@m2ms.sk>
    Co-authored-by: Warren Thompson <warren.thompson+1@diamond.ac.uk>

commit 8e281492048b4ffbc65764a43a8162231361a25a
Author: boriskovar-m2ms <boris.kovar@m2ms.sk>
Date:   Wed Mar 13 11:47:42 2024 +0100

    Contains partial fix (Delete button) for #1357 (#416)

    * #1341 "pin" edit tag row outside of tag list

    * #1341 "pin" edit tag row outside of tag list (#410)

    Co-authored-by: matej <matej.vavrek@m2ms.sk>

    * - fixed problem with tags not visually updating on observations

    * - implemented changes requested in #1326

    * - implemented #1357

    * Implements #1376, #1361, #1354 (#412)

    * - first implementation of #1354

    * - updated message for #1354

    * - cleanup for #1354

    * - implemented #1361
    - improvements for #1354

    * - implemented #1376
    - also fixed bug in download structures dialog where only first download got added to the dropdown menu

    * Implements purple part of #1370 (#413)

    * - first implementation of #1354

    * - updated message for #1354

    * - cleanup for #1354

    * - implemented #1361
    - improvements for #1354

    * - implemented #1376
    - also fixed bug in download structures dialog where only first download got added to the dropdown menu

    * - partial fix for purple release for #1370

    * Partial implementation of #1357 (#415)

    * - first implementation of #1354

    * - updated message for #1354

    * - cleanup for #1354

    * - implemented #1361
    - improvements for #1354

    * - implemented #1376
    - also fixed bug in download structures dialog where only first download got added to the dropdown menu

    * - partial fix for purple release for #1370

    * - using official backend version

    * - DELETE button disabled for #1357

    ---------

    Co-authored-by: matej <matej.vavrek@m2ms.sk>
    Co-authored-by: Warren Thompson <warren.thompson+1@diamond.ac.uk>
    Co-authored-by: Alan B. Christie <29806285+alanbchristie@users.noreply.github.com>

commit 5651b8ca2798cbea09a73344d53bfc19652bb8cc
Merge: c2ed9a60 6e5d9fc6
Author: Alan B. Christie <29806285+alanbchristie@users.noreply.github.com>
Date:   Wed Mar 13 11:44:11 2024 +0100

    Merge branch 'production' into staging

commit c2ed9a600eec08014a502863b30e3ec0d53735b5
Author: boriskovar-m2ms <boris.kovar@m2ms.sk>
Date:   Wed Mar 13 11:12:25 2024 +0100

    Partial implementation of #1357 (#415)

    * - first implementation of #1354

    * - updated message for #1354

    * - cleanup for #1354

    * - implemented #1361
    - improvements for #1354

    * - implemented #1376
    - also fixed bug in download structures dialog where only first download got added to the dropdown menu

    * - partial fix for purple release for #1370

    * - using official backend version

    * - DELETE button disabled for #1357

commit 51a2e1c875e93ace445339741054800bc1822190
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Wed Mar 13 09:48:20 2024 +0100

    - DELETE button disabled for #1357

commit dcd6db731c009cedd051d959935fb44d2abc9974
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Tue Mar 12 09:48:51 2024 +0100

    - using official backend version

commit 6e5d9fc6c02969f09d5c4b716c13e52d52d08756
Author: boriskovar-m2ms <boris.kovar@m2ms.sk>
Date:   Thu Mar 7 15:50:24 2024 +0100

    Implements purple part of #1370 (#414)

    * #1341 "pin" edit tag row outside of tag list

    * #1341 "pin" edit tag row outside of tag list (#410)

    Co-authored-by: matej <matej.vavrek@m2ms.sk>

    * - fixed problem with tags not visually updating on observations

    * - implemented changes requested in #1326

    * - implemented #1357

    * Implements #1376, #1361, #1354 (#412)

    * - first implementation of #1354

    * - updated message for #1354

    * - cleanup for #1354

    * - implemented #1361
    - improvements for #1354

    * - implemented #1376
    - also fixed bug in download structures dialog where only first download got added to the dropdown menu

    * Implements purple part of #1370 (#413)

    * - first implementation of #1354

    * - updated message for #1354

    * - cleanup for #1354

    * - implemented #1361
    - improvements for #1354

    * - implemented #1376
    - also fixed bug in download structures dialog where only first download got added to the dropdown menu

    * - partial fix for purple release for #1370

    ---------

    Co-authored-by: matej <matej.vavrek@m2ms.sk>
    Co-authored-by: Warren Thompson <warren.thompson+1@diamond.ac.uk>

commit 5862ad9cbf28facf3a5f08e8846b89cbad7a1589
Author: boriskovar-m2ms <boris.kovar@m2ms.sk>
Date:   Thu Mar 7 15:32:17 2024 +0100

    Implements purple part of #1370 (#413)

    * - first implementation of #1354

    * - updated message for #1354

    * - cleanup for #1354

    * - implemented #1361
    - improvements for #1354

    * - implemented #1376
    - also fixed bug in download structures dialog where only first download got added to the dropdown menu

    * - partial fix for purple release for #1370

commit 0b7ae4e508e92e964bef68fdf21e8ceef9ef3b19
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Thu Mar 7 13:59:03 2024 +0100

    - partial fix for purple release for #1370

commit 42fdbadf9943d86e02e85f2965052407fa492c5a
Author: boriskovar-m2ms <boris.kovar@m2ms.sk>
Date:   Thu Mar 7 11:23:07 2024 +0100

    Implements #1376, #1361, #1354 (#412)

    * - first implementation of #1354

    * - updated message for #1354

    * - cleanup for #1354

    * - implemented #1361
    - improvements for #1354

    * - implemented #1376
    - also fixed bug in download structures dialog where only first download got added to the dropdown menu

commit 3c9e696731f3037c8f86c0fea5c33a02043c8b7f
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Thu Mar 7 10:10:41 2024 +0100

    - implemented #1376
    - also fixed bug in download structures dialog where only first download got added to the dropdown menu

commit 91bb8e041d38097ff60e5cde61b08b5eb043a86f
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Wed Mar 6 09:47:12 2024 +0100

    - implemented #1361
    - improvements for #1354

commit 4c2065f45090114e0590419e05d5d0a44b2c46fe
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Tue Mar 5 13:24:11 2024 +0100

    - cleanup for #1354

commit 8988043256fc8964d27704ea4cba49891a1f074f
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Tue Mar 5 13:21:32 2024 +0100

    - updated message for #1354

commit 1747473089aa245bcfc5bd502d44fab5566f4502
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Tue Mar 5 13:05:12 2024 +0100

    - first implementation of #1354

commit 30bf9d150664b1abf2d65870b25f10552d92e37c
Merge: 6cb36075 0cdb8961
Author: Warren Thompson <warren.thompson+1@diamond.ac.uk>
Date:   Tue Mar 5 07:33:11 2024 +0000

    Merge pull request #411 from m2ms/stagingcandidate

commit 0cdb89616bea17316aa21aacc32fadfce3929594
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Tue Mar 5 08:17:49 2024 +0100

    - implemented #1357

commit 0e9169f0f0ff7622aa49618d5df49ab650290f9f
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Mon Mar 4 10:07:06 2024 +0100

    - implemented changes requested in #1326

commit 5d3e7d1b0cbe52b4c9e3269b0db02704b5a0c5ec
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Mon Mar 4 08:45:22 2024 +0100

    - fixed problem with tags not visually updating on observations

commit 6cb36075125deec9e92020ee7cce6f05d0c94d16
Author: boriskovar-m2ms <boris.kovar@m2ms.sk>
Date:   Tue Feb 27 09:20:06 2024 +0100

    Co-authored-by: matej <matej.vavrek@m2ms.sk>

commit 13b675c2be988d80e1cb506d405224b404aa1774
Author: matej <matej.vavrek@m2ms.sk>
Date:   Mon Feb 26 21:36:12 2024 +0100

commit 3dd536b9e73cdc49bb1659ac929efaf68b4251ff
Merge: ad2c5d70 7caa3846
Author: Warren Thompson <warren.thompson+1@diamond.ac.uk>
Date:   Tue Feb 20 08:10:37 2024 +0000

    Merge pull request #409 from m2ms/stagingcandidate

commit 7caa3846493f60051cc63c0936c0d0b796b055e5
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Tue Feb 20 08:52:28 2024 +0100

commit b543e504f14bba71d1cd3817438d93cebd52549e
Merge: 779e80ee 21050e6d
Author: matej <matej.vavrek@m2ms.sk>
Date:   Fri Feb 16 10:48:07 2024 +0100

    Merge branch 'stagingcandidate' of github.com:m2ms/fragalysis-frontend into stagingcandidate

commit 21050e6d3748bee3735a3c4a95c846c91de120cd
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Fri Feb 16 08:11:48 2024 +0100

    Squashed commit of the following:

    commit 468491f23840faf5f8b0876fe61cceedab190d25
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Feb 15 12:29:35 2024 +0100

        - fixed #1283

commit 779e80ee5523de7dff2d5529ac3cde200960c46e
Author: matej <matej.vavrek@m2ms.sk>
Date:   Thu Feb 15 16:09:33 2024 +0100

commit ad2c5d7053cfb222f02453e1ad2336c581cf6aaf
Author: boriskovar-m2ms <boris.kovar@m2ms.sk>
Date:   Thu Feb 8 10:36:39 2024 +0100

    * - additional fixes from #1321

    * Squashed commit of the following:

    commit c347cb37df938a29bb6df92b39cedb245a1adb2b
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 6 09:25:50 2024 +0100

        - implemented #1277

    * - #1277 - moved Xtalforms tags to observations

    * - implemented #1324

commit 50ef8283190af6d186a3d45916c8dadf680e48e2
Author: Boris Kovar <boris.kovar@m2ms.sk>
Date:   Thu Feb 8 10:31:03 2024 +0100

    - implemented #1324

commit 580c70ce2707b4d39e6fa4e82b035a08c06749e8
Merge: 1b83a871 b93571a6
Author: boriskovar-m2ms <boris.kovar@m2ms.sk>
Date:   Tue Feb 6 13:16:18 2024 +0100

    Merge branch 'staging' into stagingcandidate

commit b93571a6bc839d064e95e0ae14223c89c6276dd9
Author: boriskovar-m2ms <boris.kovar@m2ms.sk>
Date:   Tue Feb 6 09:50:48 2024 +0100

    Implements #1277 (#406)

    * - additional fixes from #1321

    * Squashed commit of the following:

    commit c347cb37df938a29bb6df92b39cedb245a1adb2b
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Feb 6 09:25:50 2024 +0100

        - implemented #1277

commit 137f64895b1c598d6ea82952cb8ed36be4dd8a7e
Author: boriskovar-m2ms <boris.kovar@m2ms.sk>
Date:   Fri Feb 2 14:19:35 2024 +0100

    - additional fixes from #1321 (#405)

commit c3626b032d89bdde7641efc60483cfebe103b63e
Merge: 57b30e1b ef27226e
Author: Warren Thompson <waztom@gmail.com>
Date:   Thu Feb 1 13:28:37 2024 +0000

    Merge pull request #404 from m2ms/stagingcandidate

commit 57b30e1b0f0feac7467ef1d99b73e949a7cbf64d
Author: boriskovar-m2ms <boris.kovar@m2ms.sk>
Date:   Thu Feb 1 09:50:31 2024 +0100

    * Update build-main.yaml

    got rid of scheduled rebuild because it's messing up data

    * updated react16 to react 18.2, replaced hot-loaders modules by react-refresh, removed react-undo module

    * added proper values for Typography variant

    * renamed obsolete create theme function

    * #1063 added header and search

    * #1063 fixed body table, page count and search

    * #1063 fixed minor bugs and set clear filter

    * Squashed commit of the following:

    commit 10925d2c914673bfaa4e8b0205904e3e393d731d
    Author: RobertMatuska <robert.matuska@m2ms.sk>
    Date:   Thu Sep 28 10:27:36 2023 +0200

    * #1161 setted search and filter for old target list

    * #1161 fixed discourse icon padding

    * #1161 fixed filtered list sort

    * #1161 fixed target access sort and filter

    * #1161 fixed change page

    * #1145 preserve state of molecule rendering, save also actions of representation changes to snapshot

    * do not wrap display controls buttons

    * #1167 resize target list colmuns

    * #1161 fixed sorting

    * #1161 fixed sorting

    * #1161 edit sort functionality for filter table

    * #1161 fixed search, filter, sort by target access

    * #1161 created init date column

    * #1161 # filtering and sorting init date

    * #1161 fixed clear and sort init date

    * #1161 fixed target sorting

    * Squashed commit of the following:

    commit d4895261f303ae61a359579c485adf702cdff64e
    Merge: 1c45038a 411921f8
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Oct 16 08:24:05 2023 +0200

        Merge branch '#1173' of https://github.com/m2ms/fragalysis-frontend into #1173

    commit 1c45038a42430f90f68430037027296021fe1974
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Fri Oct 13 11:03:49 2023 +0200

        - implemented #1173 also with save/restore and undo/redo functionality

    commit 411921f8a4906c54dfcd31c8bc079f9bd3008baf
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Fri Oct 13 11:03:49 2023 +0200

        - implemented #1173 also with save/restore and undo/redo functionality

    * merge

    * Squashed commit of the following:

    commit 7883c1584fc80b0be8dae624c18e86ddbe3c906b
    Merge: 5e2b937d 19b9f243
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Oct 16 11:19:36 2023 +0200

        Merge branch '#1172' of https://github.com/m2ms/fragalysis-frontend into #1172

    commit 5e2b937da95963afab366fac18912b4c596ccd78
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Oct 16 11:16:15 2023 +0200

        - added compound_set to csv export - #1172

    commit 19b9f243cc996f8d3e28f6fd8a44c167894b358a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Oct 16 11:16:15 2023 +0200

        - added compound_set to csv export - #1172

    commit 75ac125b5cae9d669d337410db9a184d6d31a456
    Merge: f50666ce 574c7b5e
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Oct 16 08:26:08 2023 +0200

        Merge branch '#1172' of https://github.com/m2ms/fragalysis-frontend into #1172

    commit f50666cef87e491309347fbcb8514286fcb72adc
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Fri Oct 13 13:45:34 2023 +0200

        - implemented #1172

    commit 574c7b5e65181e35865571ce7d9b6d01a40ce562
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Fri Oct 13 13:45:34 2023 +0200

        - implemented #1172

    * #1167 fixed issues

    * #1167 reworked resizer

    * #1161 fixed merge bugs

    * #1161 removed console

    * updated react16 to react 18.2, replaced hot-loaders modules by react-refresh, removed react-undo module

    * added proper values for Typography variant

    * renamed obsolete create theme function

    * changed deprecated justify= to justifyContent=

    * fixed some landing page errors, mostly missing key and using useState outside of useEffect in functional component

    * #1061 loading and toast functionality move from header context into LoadingContext and ToastContext, added loading indicator for tags and hits panes + hit/molecule control buttons

    * #1171 return representations when loading protein without quality to show it in display control

    * do not set logged in toast message if user is not logged in

    * fixed Tooltip error messages about its disabled child, fixed invalid variant type and removed xs from Grid container (it is Grid item property)

    * fixed null value for open property

    * fixed "ButtonGroup component doesn't accept a Fragment as a child. Consider providing an array instead"

    * fixed "<div> cannot appear as a descendant of <p>" error by adding "component={'div'}" property to complex Typography component

    * removed invalid way of setting color for tag, it does not work - only throws error and with proper setting it is same as background color..

    * fixed missing key error

    * fixed invalid references erros

    * fixed unknown properties error and missing key

    * - #1139 - updated docker-compose file to be ready for new backend version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - changed configuration

    * - #1139 - updated docker-compose file to be ready for new backend version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - fixed search bar placeholder for hits

    * - #1139 - updated docker-compose file to be ready for new backend version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - #1139 - fixed snapshot creation and restoration

    * #1167 target and project list resizer

    * #1167 fixed project list width

    * #1161 changed width

    * - #1183 - dynamic handling of tag categories

    * - fixed #1186

    * - job file transfer backend

    * - checkpoint

    * - new CI/CD

    * Update build-main.yaml

    got rid of scheduled rebuild because it's messing up data

    * updated react16 to react 18.2, replaced hot-loaders modules by react-refresh, removed react-undo module

    * added proper values for Typography variant

    * renamed obsolete create theme function

    * changed deprecated justify= to justifyContent=

    * fixed some landing page errors, mostly missing key and using useState outside of useEffect in functional component

    * rebase

    * #1171 return representations when loading protein without quality to show it in display control

    * do not set logged in toast message if user is not logged in

    * fixed Tooltip error messages about its disabled child, fixed invalid variant type and removed xs from Grid container (it is Grid item property)

    * fixed null value for open property

    * fixed "ButtonGroup component doesn't accept a Fragment as a child. Consider providing an array instead"

    * fixed "<div> cannot appear as a descendant of <p>" error by adding "component={'div'}" property to complex Typography component

    * removed invalid way of setting color for tag, it does not work - only throws error and with proper setting it is same as background color..

    * fixed missing key error

    * fixed invalid references erros

    * fixed unknown properties error and missing key

    * - #1139 - updated docker-compose file to be ready for new backend version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - changed configuration

    * - #1139 - updated docker-compose file to be ready for new backend version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - fixed search bar placeholder for hits

    * - #1139 - updated docker-compose file to be ready for new backend version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - #1139 - fixed snapshot creation and restoration

    * - #1183 - dynamic handling of tag categories

    * - job file transfer backend

    * - checkpoint

    * - new CI/CD

    * - fixed build errors

    * Squashed commit of the following:

    commit d5c97097a073d1298221f98b01e0431cbf520a47
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 16 07:36:56 2023 +0100

        - fixes blank page

    * #1035 added front-end pert of status lights for services

    * #1035 added API endpoint and changed refresh rate to 30 seconds for now

    * #1035 do not end up on failed response

    * Squashed commit of the following:

    commit e1dd8bd5f2c9e61c829cefb80b63f0e3f23604c9
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 21 09:16:46 2023 +0100

        - #1211 fixed and also fixed other problems which were hiding problems with snapshot restoration

    * Squashed commit of the following:

    commit e79b49f5fce9027910e24f30efdfc0aafa94be34
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Dec 7 09:44:55 2023 +0100

        - fixed RHS for #1239

    * #1217 save all actions to action list for snapshot not only the first ones, fixed of possible crash, adjusted restoring representations from snapshot

    * - updated docker-compose

    * Squashed commit of the following:

    commit 50d574da89fc90425cfcd6eb18ab30348f371b73
    Merge: 1fdebffa 3b4e7a7a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Dec 13 09:06:19 2023 +0100

        Merge branch '#1190' of https://github.com/m2ms/fragalysis-frontend into #1190

    commit 1fdebffa19b741e99b1e14ec2dd2adffa4261837
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Dec 13 08:14:58 2023 +0100

        - RC of #1190

    commit dabee45c26683c5e1b84d60b145850e199fd2ab0
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Dec 5 09:20:02 2023 +0100

        - checkpoint

    commit 4e9a6744ea75081129126dd1b9aad0d8410ae062
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 16 13:17:05 2023 +0100

        - using new backend image

    commit c90fc473a059540aea9070715b6527de8a823899
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit 515cb8bb4d6ee9fea192c9fa0768c80c03a524e3
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit ab0a2977c9f923183afa413fe5f9ae8c149b4b4e
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 216762b7094da2f07bb74ecd3ce0bd4526f47e57
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 6f628a7e7c637b9d5d80c27bca4470f7c7ffb527
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 823bf2c9c55d6e5f148c75fd55e888bcbbd5c105
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit a7aa657062c994b0ece88ea0fbf2a0d137bc3850
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 101751bab2d505f8f5dfaa3f4bac88529084d7da
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 5a6935a6f7d8ecaca16ca5072880ebb12f8656d0
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 1d01387260863790647f7324d4bd0c34ac4dcd03
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit b3c781364154acf103c33bf8d266353466cdc5d8
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 16 13:17:05 2023 +0100

        - using new backend image

    commit f48dc9d21c5bf02df112d149adf8f3384d96b702
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit 813b553e8db154a9103e45f349ccf08607ba6cd7
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit b49f773779790bbd231e418860eb2089b87b7919
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 98f566bcbb9d7493238fcbefc6cf87dcec1e7497
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit a01f097d1b2fc5290cb26d27edd45635ec2ae703
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit a6d8930b249c7cc9175b4e6cd2e386ed7803f7e6
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 14 16:42:23 2023 +0100

        - #1190 - implemented tags

    commit 392938b34b29aacb1729d1ddc5d5d438a59dd773
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit 69ab4c2701185f68a6d85cebf8d03367c60ef2a4
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit e6b700b602b708801ac38385bc79e3ef785d8af8
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit a7e6aad0a8f8ce7b80ba84c3d017581c659522c7
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 4fc93c0662050f834ccf3482ed23358ab9b9f8be
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 12:03:11 2023 +0100

        - checkpoint

    commit 58573f6fc68a4f405c93750ff40b9b5ec2cd0cd9
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit ecc3d6c1dd4a6c3437d29d6f00ecf6ce0897319d
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 2 07:59:19 2023 +0100

        - #1190 - compounds for LHS

    commit 3b4e7a7ad2a663660f675b10dd91f09a81ca720e
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Dec 13 08:14:58 2023 +0100

        - RC of #1190

    commit 1debb802212c6b7c6fa954bba1b04c5e926ef0ea
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Dec 5 09:20:02 2023 +0100

        - checkpoint

    commit 4f714be762940d796add2431a25dc9d11f795cd5
    Merge: 730d9e5b bcc1568f
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Nov 22 07:41:51 2023 +0100

        Merge branch '#1190' of https://github.com/m2ms/fragalysis-frontend into #1190

    commit 730d9e5bd404a8c121403528626c51595dee3927
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 16 13:17:05 2023 +0100

        - using new backend image

    commit 76ea646ba8b940037e85082bdddff8967971a602
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit 67439de7a640ff33f1dba88ebb833894e4a53b06
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit a38e0a39093ecf59d39fe50f0a49f9fa7a9237d3
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 64b67c539245bb30fa67eeff011b9868b4b0d2fa
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 35b2777be98d8c3ad4af2ed5ab5ad90d349bc971
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 810451479e17147b03594ba4bc27bb6964d1c159
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 14 16:42:23 2023 +0100

        - #1190 - implemented tags

    commit 5432a999f9bc440b403abbdacaf45b3a328d9dfa
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit f5ea66fd36a1ad860b4530d89382c569303b2efa
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit d3fb020d6f99bd9177f0442198a3ffb17cb90516
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 84d48899979a09bd7c649028dd6df0eaebcd9b6a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 29796304e70cc2ae25c6a96271d0dd12f692de48
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 12:03:11 2023 +0100

        - checkpoint

    commit 7241df5cbeaab971c7f56eaa54a920a1b8ed8fc8
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 195e30e1038a38ebe4ef4ffdfd3b8d93c12e3bda
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 2 07:59:19 2023 +0100

        - #1190 - compounds for LHS

    commit bcc1568fbbb3b3143a668784f7aac4524f4276a3
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 16 13:17:05 2023 +0100

        - using new backend image

    commit 60136ed9ddd47ca6c523375de5ba4d1f02fe6ab3
    Merge: 85c06a92 a18f80f1
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 16 08:01:49 2023 +0100

        Merge branch '#1190' of https://github.com/m2ms/fragalysis-frontend into #1190

    commit 85c06a920ae62b6c379f0f9975e94cf384f8f47a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 14 16:42:23 2023 +0100

        - #1190 - implemented tags

    commit 6dd0268d367c93d8104569719a3d6c841e19bd36
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit 0854241b93a563bf8cabd24278c4248c15eec645
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 1686e029dca683334351b4ea02c1d40851a321d9
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit ffba65bf05019144cb62eb9c4a0bd22db22609cc
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 1f22288d14e96d8b09a1916591d6a70d2db45481
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 12:03:11 2023 +0100

        - checkpoint

    commit e5a04e51c62f8e85b29fc4eb0ee1adb19622a978
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 155a96b066ca27243652b90b332ef2f7448e3ab0
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 2 07:59:19 2023 +0100

        - #1190 - compounds for LHS

    commit a18f80f1d1aaa1e6c0606c774ba7931b6bf527fc
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 14 16:42:23 2023 +0100

        - #1190 - implemented tags

    commit 43b74762ffa648dfcaec1d752800eba996af8784
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 16:13:26 2023 +0100

        - L, P, C, S, V buttons work now

    commit 1f9eba8250e2fcd084399eaf47243cacb0a094e0
    Merge: 17b9cb1c 3d51ab04
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:52:19 2023 +0100

        Merge branch '#1190' of https://github.com/m2ms/fragalysis-frontend into #1190

    commit 17b9cb1cb7dc91d46f4cef569d63b481ee7a121a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit 63122eb9c63f7b647c578c50268ec3cb6069da9e
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 12:03:11 2023 +0100

        - checkpoint

    commit 362ec046ef25402126f651cbd8d17c9b0eb8e5f9
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 26d2f319c44d74f5d419c789bcd594f3b11f5375
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 2 07:59:19 2023 +0100

        - #1190 - compounds for LHS

    commit 3d51ab049bee5729706c5f59f8e2233c1c2e746c
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Nov 13 08:28:59 2023 +0100

        - checkpoint

    commit e3138f7427c4e199a9b4000e0ef0c7a366e65afd
    Merge: 3beca8c7 c95b8412
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 9 13:47:44 2023 +0100

        Merge branch '#1190' of https://github.com/m2ms/fragalysis-frontend into #1190

    commit 3beca8c75b14dde5a8dc4a01c85b9f8e13edfa24
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 12:03:11 2023 +0100

        - checkpoint

    commit 2d8e3c4b8c2ca5804dcca66e4d4a6dea2bc3fe68
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit fa13fe991f437cb209b723e2d22e33af56066aae
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 2 07:59:19 2023 +0100

        - #1190 - compounds for LHS

    commit c95b841232971fee08e771664579505326a8383c
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 12:03:11 2023 +0100

        - checkpoint

    commit 74fb512d1adaabb39b37b2d3e69fc89bf9852f69
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Nov 7 06:42:52 2023 +0100

        - checkpoint

    commit 28337545084b3ad9e0f0505fd2a0851c158c4ec9
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Thu Nov 2 07:59:19 2023 +0100

        - #1190 - compounds for LHS

    * - fix for tags

    * - fixed issue with checkboxes for #1190

    * #1181 fixed min width and maximum width design

    * #1181 created compound sets table

    * #1181 fixed layout with Compound sets

    * #1181 changed functionality for radio buttons

    * #1181 RHS UI improvements, fixed some related error

    * #1203 download compound molecules as csv export, populate compound summary table from common scores

    * #1181 changed active filter icon from different colour to red dot indicator

    * #1202 added rationale and ref_url info into inspiration dialog

    * #1204 search compound sets by title

    * #1181 added tooltips for all columns

    * #1202 updated visual of summary

    * #1181 adjusted columns widths, show number of compounds in set in # column

    * #1181 adjusted RHS height and increased maximum width

    * #1121 renamed references of unique_name to name since it was removed

    * Squashed commit of the following:

    commit a8e1fda76c4449188f931286f9725931c3f0a4ec
    Merge: e97995dd 7f619a7a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Dec 20 10:21:56 2023 +0100

        Merge branch '#1077' of https://github.com/m2ms/fragalysis-frontend into #1077

    commit e97995ddcfe8778bc2b8de070810935b5e8f786a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Dec 20 07:48:27 2023 +0100

        - small fix for #1077

    commit 8ee8cb1891c1d5f0f716ce130aa28f039241158f
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Dec 19 10:54:25 2023 +0100

        - fixed problem with UI showing error that target from URL is not recognized when the targets are not yet loaded

    commit 32018c9968bb96c8b29074bd71bc242e25c54b39
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Dec 19 10:27:28 2023 +0100

        - checking out the sorting of target list

    commit da3abebacf95b8890b14149d9e6b88d3acbf0526
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Dec 18 14:22:03 2023 +0100

        - #1195

    commit f593a1eef0b4622f37ccd3ad6afe8e8ebdf5abb8
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Dec 18 12:41:31 2023 +0100

        - #1166

    commit 96733edf6dadd3555cc104a6b386fa97837a0b1b
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Dec 18 09:02:49 2023 +0100

        - implemented #1077

    commit 7f619a7a55ec9a9e33089c1548acc404a1c05aa9
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Wed Dec 20 07:48:27 2023 +0100

        - small fix for #1077

    commit c29b995f7c6eb9e48ec5fdeeb26914d845bd5e92
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Dec 19 10:54:25 2023 +0100

        - fixed problem with UI showing error that target from URL is not recognized when the targets are not yet loaded

    commit a70d4a2c31212407d77b145e688c80ecaa9e6b8b
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Dec 19 10:27:28 2023 +0100

        - checking out the sorting of target list

    commit 5f1ea56baa55e3d40d34b99dbd2284c339f6d9e2
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Dec 18 14:22:03 2023 +0100

        - #1195

    commit 7c5c6b5620e037e9d7f47e56ea783158d34e2204
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Dec 18 12:41:31 2023 +0100

        - #1166

    commit d51914eace57384ef7586a82b186096a4c8404c2
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Dec 18 09:02:49 2023 +0100

        - implemented #1077

    * - workaround for #1075 and partial implementation of #1256

    * - updated 'download is preparing' message

    * - forgot to remove debug sleep...

    * - hot fix for #1075

    * - hotfix for #1075 - weird merge by github

    * - #1256 - added link to success toast

    * Squashed commit of the following:

    commit 0e242e13301e4708ecf725b2742584b98f799704
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Tue Jan 16 13:52:38 2024 +0100

        - additional fixes for #1075
        - fixed #1267
        - fixed #1260
        - fixed #1270

    * - copy now copies whole name of the compound/observationCmpView.js
    - target name was removed from the name of the compound/observation when displayed

    * #1249 dataset molecules can use side observation molecule for P, C, S renders

    * #1249 preserve color of RHS compound when toggling its P, C, S buttons

    * #1249 fixed inconsistent coloring of rendered objects on activating RHS/LHS compound buttons

    * - improved direct display comments to show issues and examples

    * - #1296, #1299, partial (?) #1305, partial #1303

    * #1208 updated status lights on hover info and some logic behind it

    * #1208 added check for status change

    * #1208 do not spam toast of unavailable status

    * - probably fix for #1295
    - fixed #1300 and #1315

    ---------

    Co-authored-by: matej <matej.vavrek@m2ms.sk>
    Co-authored-by: RobertMatuska <robert.matuska@m2ms.sk>

commit f5b939eea1a3b265033b9d393b8f72a18486121c
Author: boriskovar-m2ms <boris.kovar@m2ms.sk>
Date:   Tue Jan 30 10:11:35 2024 +0100

    * Update build-main.yaml

    got rid of scheduled rebuild because it's messing up data

    * updated react16 to react 18.2, replaced hot-loaders modules by react-refresh, removed react-undo module

    * added proper values for Typography variant

    * renamed obsolete create theme function

    * #1063 added header and search

    * #1063 fixed body table, page count and search

    * #1063 fixed minor bugs and set clear filter

    * Squashed commit of the following:

    commit 10925d2c914673bfaa4e8b0205904e3e393d731d
    Author: RobertMatuska <robert.matuska@m2ms.sk>
    Date:   Thu Sep 28 10:27:36 2023 +0200

    * #1161 setted search and filter for old target list

    * #1161 fixed discourse icon padding

    * #1161 fixed filtered list sort

    * #1161 fixed target access sort and filter

    * #1161 fixed change page

    * #1145 preserve state of molecule rendering, save also actions of representation changes to snapshot

    * do not wrap display controls buttons

    * #1167 resize target list colmuns

    * #1161 fixed sorting

    * #1161 fixed sorting

    * #1161 edit sort functionality for filter table

    * #1161 fixed search, filter, sort by target access

    * #1161 created init date column

    * #1161 # filtering and sorting init date

    * #1161 fixed clear and sort init date

    * #1161 fixed target sorting

    * Squashed commit of the following:

    commit d4895261f303ae61a359579c485adf702cdff64e
    Merge: 1c45038a 411921f8
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Oct 16 08:24:05 2023 +0200

        Merge branch '#1173' of https://github.com/m2ms/fragalysis-frontend into #1173

    commit 1c45038a42430f90f68430037027296021fe1974
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Fri Oct 13 11:03:49 2023 +0200

        - implemented #1173 also with save/restore and undo/redo functionality

    commit 411921f8a4906c54dfcd31c8bc079f9bd3008baf
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Fri Oct 13 11:03:49 2023 +0200

        - implemented #1173 also with save/restore and undo/redo functionality

    * merge

    * Squashed commit of the following:

    commit 7883c1584fc80b0be8dae624c18e86ddbe3c906b
    Merge: 5e2b937d 19b9f243
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Oct 16 11:19:36 2023 +0200

        Merge branch '#1172' of https://github.com/m2ms/fragalysis-frontend into #1172

    commit 5e2b937da95963afab366fac18912b4c596ccd78
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Oct 16 11:16:15 2023 +0200

        - added compound_set to csv export - #1172

    commit 19b9f243cc996f8d3e28f6fd8a44c167894b358a
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Oct 16 11:16:15 2023 +0200

        - added compound_set to csv export - #1172

    commit 75ac125b5cae9d669d337410db9a184d6d31a456
    Merge: f50666ce 574c7b5e
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Mon Oct 16 08:26:08 2023 +0200

        Merge branch '#1172' of https://github.com/m2ms/fragalysis-frontend into #1172

    commit f50666cef87e491309347fbcb8514286fcb72adc
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Fri Oct 13 13:45:34 2023 +0200

        - implemented #1172

    commit 574c7b5e65181e35865571ce7d9b6d01a40ce562
    Author: Boris Kovar <boris.kovar@m2ms.sk>
    Date:   Fri Oct 13 13:45:34 2023 +0200

        - implemented #1172

    * #1167 fixed issues

    * #1167 reworked resizer

    * #1161 fixed merge bugs

    * #1161 removed console

    * updated react16 to react 18.2, replaced hot-loaders modules by react-refresh, removed react-undo module

    * added proper values for Typography variant

    * renamed obsolete create theme function

    * changed deprecated justify= to justifyContent=

    * fixed some landing page errors, mostly missing key and using useState outside of useEffect in functional component

    * #1061 loading and toast functionality move from header context into LoadingContext and ToastContext, added loading indicator for tags and hits panes + hit/molecule control buttons

    * #1171 return representations when loading protein without quality to show it in display control

    * do not set logged in toast message if user is not logged in

    * fixed Tooltip error messages about its disabled child, fixed invalid variant type and removed xs from Grid container (it is Grid item property)

    * fixed null value for open property

    * fixed "ButtonGroup component doesn't accept a Fragment as a child. Consider providing an array instead"

    * fixed "<div> cannot appear as a descendant of <p>" error by adding "component={'div'}" property to complex Typography component

    * removed invalid way of setting color for tag, it does not work - only throws error and with proper setting it is same as background color..

    * fixed missing key error

    * fixed invalid references erros

    * fixed unknown properties error and missing key

    * - #1139 - updated docker-compose file to be ready for new backend version

    * - initial implementation of #1139 - tags and molecules

    * - #1139 - tags, molecules updated to use new api - not final version

    * - changed configuration

    * - #1139 - updated docker-compose file to be ready for new backen…
alanbchristie added a commit to xchem/fragalysis-backend that referenced this issue May 21, 2024
* build(deps): bump django from 3.2.24 to 3.2.25

Bumps [django](https://github.com/django/django) from 3.2.24 to 3.2.25.
- [Commits](django/django@3.2.24...3.2.25)

---
updated-dependencies:
- dependency-name: django
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* stashing

* Target loader now accepts experiments marked as 'manual'

* build(deps): bump pillow from 10.2.0 to 10.3.0

Bumps [pillow](https://github.com/python-pillow/Pillow) from 10.2.0 to 10.3.0.
- [Release notes](https://github.com/python-pillow/Pillow/releases)
- [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst)
- [Commits](python-pillow/Pillow@10.2.0...10.3.0)

---
updated-dependencies:
- dependency-name: pillow
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* Attempt to reduce pop-up "flicker" (1403) (#569)

* fix: Attempt to debug timeout errors

* fix: More logging on service_query

* fix: Varioustimeout adjustments

* fix: Removed exception during timeout

* fix: Explit log on SSH connection error

* fix: Retry attempts for MySQL connections

* fix: Service timeout now 28 (was 17)

* fix: Add pymysql read and write timeouts

* fix: Quiter (expected) connection failure handling

* fix: TIMEOUT now DEGRADED

* fix: Fix while loop exit conditions

* fix: Better loop logic

* style: services logging reduced and back to debug

* fix: SSHTunnel logging now ERROR (was DEBUG)

* fix: Quieter securty

* fix: More failures permitted (and debug tweaks)

* fix: Leaner logging

* fix: Leaner logging (only report when we're having topruble)

* fix: Better constant name

* fix: Reduced service logging

* docs: Doc tweak

* fix: Minor log tweak

* fix: Fixed duplicate log content

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: endpoint to download first reference pdb from assemblies.yaml

* stashing

* stashing

Changes so far:
- removed endpoint FirstAssemblyview
- moved the functionality to template_protein field in
TargetSerializer
- removed TargetMoleculesserializer
- removed sequences field from TargetSerializer

This is a result of Boris' comment in
github (m2ms/fragalysis-frontend#1373 (comment))
where he said the field isn't used and template_protein field is not
used. Looking at the code where this may be used, revealed that
Targetmoleculesserializer can be removed as well

NB! they're not removed-removed right now, only commented in. This
commit can be used to restore the code.

* fix: removed code mentioned in previous commit

* basic functionality

TODO: add and test PATCH method on PoseSerializer

* stashing

* build(deps): bump idna from 3.6 to 3.7

Bumps [idna](https://github.com/kjd/idna) from 3.6 to 3.7.
- [Release notes](https://github.com/kjd/idna/releases)
- [Changelog](https://github.com/kjd/idna/blob/master/HISTORY.rst)
- [Commits](kjd/idna@v3.6...v3.7)

---
updated-dependencies:
- dependency-name: idna
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* stashing

* Added 'hidden' property to viewer.Tag model

Also, added exclude directives to .pre-commit-config.yaml to not touch
django migration files

* Better user/proposal cache (#576)

* refactor: Quieter ISPyB cache

* refactor: Security cache log now quieter

* fix: Better cache logic - and reduced log

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* stashing

Nested serializer for pose, but I don't think I can use them

* feat: added compound_code to pose serializer

* fix: deeper nesting level to site observaton in meta_aligner.yaml

Data loads successfully but actual v2 upload has not been tested

* fix: renamed panddas_event_files to ligand_binding_events in meta_al

* fix: static resources are now loaded again

Fixes bare html API pages

* fix: fixed nginx config

* Revert "Fix static ressources not being loaded"

* stashing

Added sorting keys for versioned key. V1 data loading, waiting for
fixes in conf site presentation to continue with v2

* fix: more robust update method

Allows sending incomplete requests (no idea why seralizer isn't
populating fields).
Also fixed a bug where field updates on poses with multiple
observations where blocked.

* feat: added pose tags

* stashing

Working on allowing incomplete requests payloads. Turns out to be
quite tricky, may have to go back on this.

* feat: fully functional versioned data

Reads and processes upload_2+ data where version numbers are given in suffix

* fix: removed some dead code

* stashing

* build(deps): bump tqdm from 4.66.1 to 4.66.3

Bumps [tqdm](https://github.com/tqdm/tqdm) from 4.66.1 to 4.66.3.
- [Release notes](https://github.com/tqdm/tqdm/releases)
- [Commits](tqdm/tqdm@v4.66.1...v4.66.3)

---
updated-dependencies:
- dependency-name: tqdm
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* feat: only non-superseded sites available from the api

* build(deps-dev): bump black from 23.12.0 to 24.3.0

Bumps [black](https://github.com/psf/black) from 23.12.0 to 24.3.0.
- [Release notes](https://github.com/psf/black/releases)
- [Changelog](https://github.com/psf/black/blob/main/CHANGES.md)
- [Commits](psf/black@23.12.0...24.3.0)

---
updated-dependencies:
- dependency-name: black
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore: merged conflicting migrations from issue 1311 branch

* fix: pose instance attributes updating successfully

* fix: better check for already uploaded data

* fix: merge conflicting migrations

Not sure why the previous merge didn't work

* Adds basic metrics (#588)

* feat: Experiment with django prometheus

* feat: Fix build

* fix: Fix build (locking drf)

* feat: Fix lock file

* feat: Update to non-slim Python 3.11.9

* feat: Back to slim image

* fix: Some basic internal metrics

* fix: Removed rogue line

* fix: Fix lint issues

* fix: Removed custom metrics

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Attempt to add prometheus to DB (#589)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>
Co-authored-by: Alan Christie <alan.christie@matildapeak.com>
Co-authored-by: Kalev Takkis <kalev.takkis@gmail.com>
Co-authored-by: Warren Thompson <waztom@gmail.com>
@mwinokan mwinokan moved this to In staging - assess function vs spec in Fragalysis May 29, 2024
@mwinokan
Copy link
Collaborator

mwinokan commented Jun 4, 2024

@boriskovar-m2ms is your latest frontend code in staging? The ribbon does not look correct for A71EV2A

@boriskovar-m2ms
Copy link
Collaborator

boriskovar-m2ms commented Jun 5, 2024

@boriskovar-m2ms is your latest frontend code in staging? The ribbon does not look correct for A71EV2A

yes it is but most worryingly the snapshot doesn't work for me. I need to investigate both issues.

Moving #1440 back to in progress.

@boriskovar-m2ms
Copy link
Collaborator

OK false alarm. Snapshot doesn't work for me because I can't see A71EV2A target. Maybe if target is not found (because it was deleted or we can not see it - there is no way for frontend to tell the difference) we should notify user so users are not staring at pretty much empty screen.

@mwinokan
Copy link
Collaborator

mwinokan commented Jun 5, 2024

Sorry I think the broken snapshot is my fault. I deleted the compound set after making the snapshot (still something to fix I suppose)

@mwinokan mwinokan moved this from In staging - assess function vs spec to Approved in staging - push to production in Fragalysis Sep 2, 2024
alanbchristie added a commit to xchem/fragalysis-backend that referenced this issue Sep 13, 2024
* build(deps): bump django from 3.2.24 to 3.2.25

Bumps [django](https://github.com/django/django) from 3.2.24 to 3.2.25.
- [Commits](django/django@3.2.24...3.2.25)

---
updated-dependencies:
- dependency-name: django
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* stashing

* Target loader now accepts experiments marked as 'manual'

* build(deps): bump pillow from 10.2.0 to 10.3.0

Bumps [pillow](https://github.com/python-pillow/Pillow) from 10.2.0 to 10.3.0.
- [Release notes](https://github.com/python-pillow/Pillow/releases)
- [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst)
- [Commits](python-pillow/Pillow@10.2.0...10.3.0)

---
updated-dependencies:
- dependency-name: pillow
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* Attempt to reduce pop-up "flicker" (1403) (#569)

* fix: Attempt to debug timeout errors

* fix: More logging on service_query

* fix: Varioustimeout adjustments

* fix: Removed exception during timeout

* fix: Explit log on SSH connection error

* fix: Retry attempts for MySQL connections

* fix: Service timeout now 28 (was 17)

* fix: Add pymysql read and write timeouts

* fix: Quiter (expected) connection failure handling

* fix: TIMEOUT now DEGRADED

* fix: Fix while loop exit conditions

* fix: Better loop logic

* style: services logging reduced and back to debug

* fix: SSHTunnel logging now ERROR (was DEBUG)

* fix: Quieter securty

* fix: More failures permitted (and debug tweaks)

* fix: Leaner logging

* fix: Leaner logging (only report when we're having topruble)

* fix: Better constant name

* fix: Reduced service logging

* docs: Doc tweak

* fix: Minor log tweak

* fix: Fixed duplicate log content

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: endpoint to download first reference pdb from assemblies.yaml

* stashing

* stashing

Changes so far:
- removed endpoint FirstAssemblyview
- moved the functionality to template_protein field in
TargetSerializer
- removed TargetMoleculesserializer
- removed sequences field from TargetSerializer

This is a result of Boris' comment in
github (m2ms/fragalysis-frontend#1373 (comment))
where he said the field isn't used and template_protein field is not
used. Looking at the code where this may be used, revealed that
Targetmoleculesserializer can be removed as well

NB! they're not removed-removed right now, only commented in. This
commit can be used to restore the code.

* fix: removed code mentioned in previous commit

* basic functionality

TODO: add and test PATCH method on PoseSerializer

* stashing

* build(deps): bump idna from 3.6 to 3.7

Bumps [idna](https://github.com/kjd/idna) from 3.6 to 3.7.
- [Release notes](https://github.com/kjd/idna/releases)
- [Changelog](https://github.com/kjd/idna/blob/master/HISTORY.rst)
- [Commits](kjd/idna@v3.6...v3.7)

---
updated-dependencies:
- dependency-name: idna
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* stashing

* Added 'hidden' property to viewer.Tag model

Also, added exclude directives to .pre-commit-config.yaml to not touch
django migration files

* Better user/proposal cache (#576)

* refactor: Quieter ISPyB cache

* refactor: Security cache log now quieter

* fix: Better cache logic - and reduced log

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* stashing

Nested serializer for pose, but I don't think I can use them

* feat: added compound_code to pose serializer

* fix: deeper nesting level to site observaton in meta_aligner.yaml

Data loads successfully but actual v2 upload has not been tested

* fix: renamed panddas_event_files to ligand_binding_events in meta_al

* fix: static resources are now loaded again

Fixes bare html API pages

* fix: fixed nginx config

* Revert "Fix static ressources not being loaded"

* stashing

Added sorting keys for versioned key. V1 data loading, waiting for
fixes in conf site presentation to continue with v2

* fix: more robust update method

Allows sending incomplete requests (no idea why seralizer isn't
populating fields).
Also fixed a bug where field updates on poses with multiple
observations where blocked.

* feat: added pose tags

* stashing

Working on allowing incomplete requests payloads. Turns out to be
quite tricky, may have to go back on this.

* feat: fully functional versioned data

Reads and processes upload_2+ data where version numbers are given in suffix

* fix: removed some dead code

* stashing

* build(deps): bump tqdm from 4.66.1 to 4.66.3

Bumps [tqdm](https://github.com/tqdm/tqdm) from 4.66.1 to 4.66.3.
- [Release notes](https://github.com/tqdm/tqdm/releases)
- [Commits](tqdm/tqdm@v4.66.1...v4.66.3)

---
updated-dependencies:
- dependency-name: tqdm
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* feat: only non-superseded sites available from the api

* build(deps-dev): bump black from 23.12.0 to 24.3.0

Bumps [black](https://github.com/psf/black) from 23.12.0 to 24.3.0.
- [Release notes](https://github.com/psf/black/releases)
- [Changelog](https://github.com/psf/black/blob/main/CHANGES.md)
- [Commits](psf/black@23.12.0...24.3.0)

---
updated-dependencies:
- dependency-name: black
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore: merged conflicting migrations from issue 1311 branch

* fix: pose instance attributes updating successfully

* fix: better check for already uploaded data

* fix: merge conflicting migrations

Not sure why the previous merge didn't work

* Adds basic metrics (#588)

* feat: Experiment with django prometheus

* feat: Fix build

* fix: Fix build (locking drf)

* feat: Fix lock file

* feat: Update to non-slim Python 3.11.9

* feat: Back to slim image

* fix: Some basic internal metrics

* fix: Removed rogue line

* fix: Fix lint issues

* fix: Removed custom metrics

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Attempt to add prometheus to DB (#589)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: service state queries to backend

Instead of a frontend call triggering a query to each service in every
30 seconds or so, ping the services in the backend, store the results
in a table and serve this up in an endpoint. Seems that when each
user's frontend was testing ISPyB, it was enough to grind it to a
halt.

TODO:
- user friendly names of services
- separate compose and settings file to enable launching celery and
  beat separately (and make sure backend still works when not)
- delete old service query stuff
- most serious one - creating services on startup in apps.py, weird
  issue with service table supposedly not existing in db

* feat: service state queries to backend

Refactored a bit and fixed an issue with automatically starting
services on startup. External service queries fixed.

TODO:
- separate compose file
- delete old services stuff

* Add custom (security) metrics (#593)

* feat: Re-attempt to add custom metrics

* feat: New metric (ISpyB connection attempts)

* feat: Add cache hit/miss metrics

* feat: Leaner metrics (and initial dashboard)

* feat: Metrics now initialised

* docs: Updated dashboard

* fix: Attempt to fix hit/miss metrics

* docs: New dashboard

* docs: Dashboard tweak

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: service state queries to backend

Separate compose file

TODO:
- remove old services

* fix: Fixed connection retry metric (#594)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: service state queries to backend

Completed, updated readme and deleted old services.

TODO:
- follow-up issue 1359, better ISPyB query

* fix: missing migration and pylint ignore

* fix: remove auto-generating pose tags

* fix: Fix for tunnel connection failure metrics (#597)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Adjust metrics (tunnels and cache) (#598)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: service test functions now scheduled correctly

Minor tweaks to test functions themselves
Start/stop management command fully functional

* fix: changed canon site autogenerated tag name

* docs: Updated grafana dashboard

* feat: filename attribute to RHS download serializer

* fix: update observation's longcode template

* Adjust logging for cache debug (#603)

* refactor: Adds extra logging in proposal extraction

* style: Initial cache now a set rather than empty list

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Fix connection failure logic (#604)

* refactor: Adds extra logging in proposal extraction

* style: Initial cache now a set rather than empty list

* fix: Fix cache collection failure logic

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Reduced security logging (#605)

* refactor: Adds extra logging in proposal extraction

* style: Initial cache now a set rather than empty list

* fix: Fix cache collection failure logic

* fix: Reduced logging for proposal cache

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: add management commands to save and restore curated tags

In app container either
curated_tags --dump tags.json
or
curated_tags --load tags.json

* feat: incremental RHS upload (issue 1394)

Allows upload. Currently adds unnecessary compound sets and overwrites
old ones when it doesn't need to

* feat: incremental RHS uploads

Fully working, upload, delete, overwrite, etc.
NB! migrations!

* fix: set ConformerSites and CrystalformSites tags to hidden by default

* fix: code cleanup for merge

* fix: updated crystalform site tag generation scheme

* Initial 'security' changes - Target PATCH now "locked down" (#612)

* fix: Adds extra log to Targets view

* fix: More target logging

* fix: safe query set now derived from ModelViewSet

* feat: Experiment with IsProposalMember class

* fix: Another permission tweak

* fix: Another permission tweak

* fix: Typo

* fix: Fixed silly typo

* fix: Display view filter_permissions

* fix: Experimental new has_permission

* fix: Add user_is_member_of_any_given_proposals to security

* fix: Change to filter class name

* fix: Better has_object_permission

* feat: Leaner has_object_permission

* docs: Minor doc tweak

* fix: Experiment with SafeQuerySet

* fix: Experiment with ModelViewSet in ISPYB

* fix: Back to read-only viewset (and reduced log)

* fix: User must be authenticated

* docs: Doc tweak

* feat: Experiment with filter class for Target view

* fix: Attempt to fix build errors

* fix: Switch to filter_class

* fix: Attempt to fix filter logging

* fix: Another tweak of filters

* feat: Fix filerset typo

* fix: Back to built-in (genric) views

* feat: Attempt to fix has no attribute 'get_extra_actions'

* fix: Silly typo

* fix: Back to ispybsafequeryset

* fix: Restore queryset

* fix: Experiment with mixins

* docs: Doc tweaks

* docs: Doc tweak

* fix: Switch to update() from patch()

* fix: Back to patch()

* refactor: Minor refactor

* feat: Better permissions class for proposals

* Align 1247 with latest staging (#611)

* feat: incremental RHS upload (issue 1394)

Allows upload. Currently adds unnecessary compound sets and overwrites
old ones when it doesn't need to

* feat: incremental RHS uploads

Fully working, upload, delete, overwrite, etc.
NB! migrations!

* fix: code cleanup for merge

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>
Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

* fix: updates to tag generation

Changed how some of the tags are generated as per the comment here: m2ms/fragalysis-frontend#1482 (comment)

* feat: added centroid_res field to CanonSite model

Also, removed fetching centroid_res from CANON_SITES_FILE. Seems that
now it's being added to meta_aligner.yaml, so reading an additional
file is not necessary. I hope...

* feat: added new fields to metadata.csv

Experiment code and centroid res

* feat: added tag aliases to metadata.csv

* Copies Target proposals to new (RHS) Compounds (#629)

* fix: Branch for project reference fix

* fix: Projects copied from Target (during RHS cset-upload)

* fix: Add save before copying projects

* fix: Remove unnecessary save()

* ci: Attempt to fix docker-compose problem

* ci: Fix staging and production builds (docker compose)

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Fix typo accessing Target projects (#632)

* fix: Add support for target_warning_message context variable (#634)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* API authentication and security changes (#635)

* style: Reorder functions in the module

* refactor: Moved non-view functions to viewer.utils

* fix: Removed unused save_pdb_zip and minor refactoring

* feat: Removed circular import

* feat: Fix get_open_targets (also get_open_proposals now not _private_)

* feat: Fix get_open_proposals reference

* refactor: ISpyB -> ISPyB

* docs: Updated for use of mixins

* feat: More API security migrations

* feat: More security migrations

* feat: Security migrations for hotspots and hypothesis

* feat: More security fixes

* feat: More security changes

* feat: More security changes (and get_params -> get_img_from_smiles with default w/h)

* fix: Attempt to fix calls to /xcdb/fragspect/ 500 errors

* feat: Another attempot to fix ISPyB

* feat: Use of new user_is_member_of_target()

* feat: Experiment with validator

* feat: Better serializer log

* feat: Even more work on the serializer

* feat: Minor error message tweak

* feat: Add support for TEST_RESTRICTED_TAS_LIST (#614)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* target permission validation mixin pattern implemented for Pose

* feat: Fix restricted logic

* most endpoints secured with VaildateTargetMixin

* fix: Removed unused endpoint

* fix: secure SessionActions serializer

* fix: Removed pset_download

* fix: Design set upload now unsupported (404)

* fix: Snapshots now open again

* fix: CompoundIdentifierTypeView & TagCategoryView now read-only views

* fix: Discourse POST now requires login

* feat: User now needs to be a member of CSET target to download it

* fix: secured TaskStatus endpoint

* feat: Removal of unsed xcdb app

* feat: Add log to use of dicttocsv

* feat: More secure DictToCsv

* feat: More consistent use of _ISPYB_SAFE_QUERY_SET

* feat: Stricter UploadCSet class inheritance

* feat: Fix isort issues

* feat: Fix ListAPIView

* feat: Remove references to xcdb

* fix: secure UploadTaskView and ValidateTaskView

TODO: secure UpdateTaskView (if used)

* Align 1247 with latest staging code (#616)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* Align 1247 from staging (#619)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* Align 1247 with latest staging (#620)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* feat: Rstore CSetUpload post()

* feat: Revert UploadCSet inheritance

* fix: Another attempt to fix UploadCSet

* fix: Another attmept to fix the view

* fix: Anotehr attempt to get UploadCSet

* feat: Fix UploadCSet view

* feat: Fix JobRequest GET (restrict to members of the project)

* feat: Enhanced logging for membership check failures

* docs: Improve docs relating to security

* docs: Minor typo

* fix: Remove TEST_RESTRICTED_TAS_LIST feature

* Align 1247 with staging (#621)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* Align 1247 with latest staging (#623)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* fix: Attempt to fix PoseView (now Pose)

* fix: Attempt to debug Pose failure

* fix: Another patch to Pose

* fix: Fix log typo

* fix: Attempt to fix permission on create

* fix: Fix for ValidateTargetMixin?

* fix: Better Mixin (renamed and copes with shortest filter string)

* fix: Fix some project mixin views (includes some renaming)

* refactor: View name consistency

* fix: Fix for targetdownload mixin (and extra log)

* fix: Better file handling

* fix: Now serches ExpUpload for first matching record

* fix: Better experiment download (use of only ExpUpload record)

* fix: ExpDownload now inspects Project

* fix: More naming consistency changes

* fix: Attempt to fix  'ManyRelatedManager' is not iterable

* fix: Use of correct download path

* Align 1247 with staging (#624)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* Align 1247 with staging (#627)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* docs: Tweak messages

* fix: Better file handling

* docs: Doc tweak

* Merge compound fix to 1247 (#628)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

* fix: Branch for project reference fix

* fix: Projects copied from Target (during RHS cset-upload)

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>
Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* refactor: restrict_to_membership now restrict_pubic_to_membership

* fix: ValidateProjectMixin does not insist on public proposal membership for GET

* fix: Apply conflict from staging

* Align 1247 with staging (#631)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

* fix: updates to tag generation

Changed how some of the tags are generated as per the comment here: m2ms/fragalysis-frontend#1482 (comment)

* feat: added centroid_res field to CanonSite model

Also, removed fetching centroid_res from CANON_SITES_FILE. Seems that
now it's being added to meta_aligner.yaml, so reading an additional
file is not necessary. I hope...

* feat: added new fields to metadata.csv

Experiment code and centroid res

* feat: added tag aliases to metadata.csv

* Copies Target proposals to new (RHS) Compounds (#629)

* fix: Branch for project reference fix

* fix: Projects copied from Target (during RHS cset-upload)

* fix: Add save before copying projects

* fix: Remove unnecessary save()

* ci: Attempt to fix docker-compose problem

* ci: Fix staging and production builds (docker compose)

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>
Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Fix project_id type (aligns with staging)

* Align 1247 with staging (#633)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

* fix: updates to tag generation

Changed how some of the tags are generated as per the comment here: m2ms/fragalysis-frontend#1482 (comment)

* feat: added centroid_res field to CanonSite model

Also, removed fetching centroid_res from CANON_SITES_FILE. Seems that
now it's being added to meta_aligner.yaml, so reading an additional
file is not necessary. I hope...

* feat: added new fields to metadata.csv

Experiment code and centroid res

* feat: added tag aliases to metadata.csv

* Copies Target proposals to new (RHS) Compounds (#629)

* fix: Branch for project reference fix

* fix: Projects copied from Target (during RHS cset-upload)

* fix: Add save before copying projects

* fix: Remove unnecessary save()

* ci: Attempt to fix docker-compose problem

* ci: Fix staging and production builds (docker compose)

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Fix typo accessing Target projects (#632)

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>
Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>
Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* fix: Adds variable to context

* fix: Fix variable order

* style: Add note and display template and its context (#637)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: fixed tag loading management command

* fix: fixed tag loader management command some more

* feat: Add support for RESTRICTED_TAS_USERS (#640)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Better handling of project path AttributeError (#641)

* fix: Better handling of project path

* fix: Now also dumps vars(base_start_object)

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Protect permissions from bad objects (#642)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Fix merge issue (#643)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Relaxes authentication for SessionProject (#644)

* refactor: Explicit error is there are no Projects

* chore: Removed commented-out code

* fix: Relaxed suth for SessionProject

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* refactor: Now displays object class name (#645)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Add additional context to the API error (#646)

* style: Additional context debug (view name etc.)

* style: Add traceback

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* stashing

* Relaxed auth for SessionActionsView & SnapshotActionsView (#647)

* fix: Relaxed auth for SessionActionsView & SnapshotActionsView

* fix: Removed ValidateProjectMixin from serializers

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: fix subsequent upload file path overwriting bug (1492)

Introduced with a fix to 1311, all subsequent uploads overwrote
previous version paths with their own root directory and resulting
paths didn't point to any actual file. Simplified LHS data structure
so the update mechanism remains in place (as it should, 1311 had it's
function) but the root directory for all versions stays the same.

TODO: fix path lookups for downloads and RHS uploads

* fix: Relax auth on SessionProjectTag & SiteObservationTag (#648)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Can now download public RHS without being logged int (#649)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: updated LHS downloads to new data schema

* fix: log compound names when alignment is not found (issue 1495)

Currently breaks on first fail, does not process the full list and
report back all offending molecules.

* stashing

* fix: sort canon sites by number of site observations

* stashing

* fix: fixed issue 1504, missing yaml files

* fix: shortened crystalform sites tags

* feat: added code prefix to experiment model

* feat: updated both short- and longcode

Shortcode dropped the 'x' character, longcode was made shorter with
'v' as an version indicator

* fix: fixed tagging issues

Introduced by canon site sorting, issue 1498

* fix: fixed remaining tag issues

* fix: the return of the ribbon

Ribbon was missing because the 'template_protein' attribute was
missing, because the path was compiled incorrectly and file was not
found. Template protein file is not explicitly given in metadata, so
trial-error method is used.

* stashing

* fix: a bug in target loader's create_objects func

catch block was wrongly positioned and may have been masking error messages

* feat: changed tag name format

/ instead of + and _

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>
Co-authored-by: Alan Christie <alan.christie@matildapeak.com>
Co-authored-by: Kalev Takkis <kalev.takkis@gmail.com>
Co-authored-by: Warren Thompson <waztom@gmail.com>
alanbchristie added a commit to xchem/fragalysis-backend that referenced this issue Sep 13, 2024
* build(deps): bump django from 3.2.24 to 3.2.25

Bumps [django](https://github.com/django/django) from 3.2.24 to 3.2.25.
- [Commits](django/django@3.2.24...3.2.25)

---
updated-dependencies:
- dependency-name: django
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* stashing

* Target loader now accepts experiments marked as 'manual'

* build(deps): bump pillow from 10.2.0 to 10.3.0

Bumps [pillow](https://github.com/python-pillow/Pillow) from 10.2.0 to 10.3.0.
- [Release notes](https://github.com/python-pillow/Pillow/releases)
- [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst)
- [Commits](python-pillow/Pillow@10.2.0...10.3.0)

---
updated-dependencies:
- dependency-name: pillow
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* Attempt to reduce pop-up "flicker" (1403) (#569)

* fix: Attempt to debug timeout errors

* fix: More logging on service_query

* fix: Varioustimeout adjustments

* fix: Removed exception during timeout

* fix: Explit log on SSH connection error

* fix: Retry attempts for MySQL connections

* fix: Service timeout now 28 (was 17)

* fix: Add pymysql read and write timeouts

* fix: Quiter (expected) connection failure handling

* fix: TIMEOUT now DEGRADED

* fix: Fix while loop exit conditions

* fix: Better loop logic

* style: services logging reduced and back to debug

* fix: SSHTunnel logging now ERROR (was DEBUG)

* fix: Quieter securty

* fix: More failures permitted (and debug tweaks)

* fix: Leaner logging

* fix: Leaner logging (only report when we're having topruble)

* fix: Better constant name

* fix: Reduced service logging

* docs: Doc tweak

* fix: Minor log tweak

* fix: Fixed duplicate log content

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: endpoint to download first reference pdb from assemblies.yaml

* stashing

* stashing

Changes so far:
- removed endpoint FirstAssemblyview
- moved the functionality to template_protein field in
TargetSerializer
- removed TargetMoleculesserializer
- removed sequences field from TargetSerializer

This is a result of Boris' comment in
github (m2ms/fragalysis-frontend#1373 (comment))
where he said the field isn't used and template_protein field is not
used. Looking at the code where this may be used, revealed that
Targetmoleculesserializer can be removed as well

NB! they're not removed-removed right now, only commented in. This
commit can be used to restore the code.

* fix: removed code mentioned in previous commit

* basic functionality

TODO: add and test PATCH method on PoseSerializer

* stashing

* build(deps): bump idna from 3.6 to 3.7

Bumps [idna](https://github.com/kjd/idna) from 3.6 to 3.7.
- [Release notes](https://github.com/kjd/idna/releases)
- [Changelog](https://github.com/kjd/idna/blob/master/HISTORY.rst)
- [Commits](kjd/idna@v3.6...v3.7)

---
updated-dependencies:
- dependency-name: idna
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* stashing

* Added 'hidden' property to viewer.Tag model

Also, added exclude directives to .pre-commit-config.yaml to not touch
django migration files

* Better user/proposal cache (#576)

* refactor: Quieter ISPyB cache

* refactor: Security cache log now quieter

* fix: Better cache logic - and reduced log

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* stashing

Nested serializer for pose, but I don't think I can use them

* feat: added compound_code to pose serializer

* fix: deeper nesting level to site observaton in meta_aligner.yaml

Data loads successfully but actual v2 upload has not been tested

* fix: renamed panddas_event_files to ligand_binding_events in meta_al

* fix: static resources are now loaded again

Fixes bare html API pages

* fix: fixed nginx config

* Revert "Fix static ressources not being loaded"

* stashing

Added sorting keys for versioned key. V1 data loading, waiting for
fixes in conf site presentation to continue with v2

* fix: more robust update method

Allows sending incomplete requests (no idea why seralizer isn't
populating fields).
Also fixed a bug where field updates on poses with multiple
observations where blocked.

* feat: added pose tags

* stashing

Working on allowing incomplete requests payloads. Turns out to be
quite tricky, may have to go back on this.

* feat: fully functional versioned data

Reads and processes upload_2+ data where version numbers are given in suffix

* fix: removed some dead code

* stashing

* build(deps): bump tqdm from 4.66.1 to 4.66.3

Bumps [tqdm](https://github.com/tqdm/tqdm) from 4.66.1 to 4.66.3.
- [Release notes](https://github.com/tqdm/tqdm/releases)
- [Commits](tqdm/tqdm@v4.66.1...v4.66.3)

---
updated-dependencies:
- dependency-name: tqdm
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* feat: only non-superseded sites available from the api

* build(deps-dev): bump black from 23.12.0 to 24.3.0

Bumps [black](https://github.com/psf/black) from 23.12.0 to 24.3.0.
- [Release notes](https://github.com/psf/black/releases)
- [Changelog](https://github.com/psf/black/blob/main/CHANGES.md)
- [Commits](psf/black@23.12.0...24.3.0)

---
updated-dependencies:
- dependency-name: black
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore: merged conflicting migrations from issue 1311 branch

* fix: pose instance attributes updating successfully

* fix: better check for already uploaded data

* fix: merge conflicting migrations

Not sure why the previous merge didn't work

* Adds basic metrics (#588)

* feat: Experiment with django prometheus

* feat: Fix build

* fix: Fix build (locking drf)

* feat: Fix lock file

* feat: Update to non-slim Python 3.11.9

* feat: Back to slim image

* fix: Some basic internal metrics

* fix: Removed rogue line

* fix: Fix lint issues

* fix: Removed custom metrics

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Attempt to add prometheus to DB (#589)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: service state queries to backend

Instead of a frontend call triggering a query to each service in every
30 seconds or so, ping the services in the backend, store the results
in a table and serve this up in an endpoint. Seems that when each
user's frontend was testing ISPyB, it was enough to grind it to a
halt.

TODO:
- user friendly names of services
- separate compose and settings file to enable launching celery and
  beat separately (and make sure backend still works when not)
- delete old service query stuff
- most serious one - creating services on startup in apps.py, weird
  issue with service table supposedly not existing in db

* feat: service state queries to backend

Refactored a bit and fixed an issue with automatically starting
services on startup. External service queries fixed.

TODO:
- separate compose file
- delete old services stuff

* Add custom (security) metrics (#593)

* feat: Re-attempt to add custom metrics

* feat: New metric (ISpyB connection attempts)

* feat: Add cache hit/miss metrics

* feat: Leaner metrics (and initial dashboard)

* feat: Metrics now initialised

* docs: Updated dashboard

* fix: Attempt to fix hit/miss metrics

* docs: New dashboard

* docs: Dashboard tweak

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: service state queries to backend

Separate compose file

TODO:
- remove old services

* fix: Fixed connection retry metric (#594)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: service state queries to backend

Completed, updated readme and deleted old services.

TODO:
- follow-up issue 1359, better ISPyB query

* fix: missing migration and pylint ignore

* fix: remove auto-generating pose tags

* fix: Fix for tunnel connection failure metrics (#597)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Adjust metrics (tunnels and cache) (#598)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: service test functions now scheduled correctly

Minor tweaks to test functions themselves
Start/stop management command fully functional

* fix: changed canon site autogenerated tag name

* docs: Updated grafana dashboard

* feat: filename attribute to RHS download serializer

* fix: update observation's longcode template

* Adjust logging for cache debug (#603)

* refactor: Adds extra logging in proposal extraction

* style: Initial cache now a set rather than empty list

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Fix connection failure logic (#604)

* refactor: Adds extra logging in proposal extraction

* style: Initial cache now a set rather than empty list

* fix: Fix cache collection failure logic

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Reduced security logging (#605)

* refactor: Adds extra logging in proposal extraction

* style: Initial cache now a set rather than empty list

* fix: Fix cache collection failure logic

* fix: Reduced logging for proposal cache

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: add management commands to save and restore curated tags

In app container either
curated_tags --dump tags.json
or
curated_tags --load tags.json

* feat: incremental RHS upload (issue 1394)

Allows upload. Currently adds unnecessary compound sets and overwrites
old ones when it doesn't need to

* feat: incremental RHS uploads

Fully working, upload, delete, overwrite, etc.
NB! migrations!

* fix: set ConformerSites and CrystalformSites tags to hidden by default

* fix: code cleanup for merge

* fix: updated crystalform site tag generation scheme

* Initial 'security' changes - Target PATCH now "locked down" (#612)

* fix: Adds extra log to Targets view

* fix: More target logging

* fix: safe query set now derived from ModelViewSet

* feat: Experiment with IsProposalMember class

* fix: Another permission tweak

* fix: Another permission tweak

* fix: Typo

* fix: Fixed silly typo

* fix: Display view filter_permissions

* fix: Experimental new has_permission

* fix: Add user_is_member_of_any_given_proposals to security

* fix: Change to filter class name

* fix: Better has_object_permission

* feat: Leaner has_object_permission

* docs: Minor doc tweak

* fix: Experiment with SafeQuerySet

* fix: Experiment with ModelViewSet in ISPYB

* fix: Back to read-only viewset (and reduced log)

* fix: User must be authenticated

* docs: Doc tweak

* feat: Experiment with filter class for Target view

* fix: Attempt to fix build errors

* fix: Switch to filter_class

* fix: Attempt to fix filter logging

* fix: Another tweak of filters

* feat: Fix filerset typo

* fix: Back to built-in (genric) views

* feat: Attempt to fix has no attribute 'get_extra_actions'

* fix: Silly typo

* fix: Back to ispybsafequeryset

* fix: Restore queryset

* fix: Experiment with mixins

* docs: Doc tweaks

* docs: Doc tweak

* fix: Switch to update() from patch()

* fix: Back to patch()

* refactor: Minor refactor

* feat: Better permissions class for proposals

* Align 1247 with latest staging (#611)

* feat: incremental RHS upload (issue 1394)

Allows upload. Currently adds unnecessary compound sets and overwrites
old ones when it doesn't need to

* feat: incremental RHS uploads

Fully working, upload, delete, overwrite, etc.
NB! migrations!

* fix: code cleanup for merge

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>
Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

* fix: updates to tag generation

Changed how some of the tags are generated as per the comment here: m2ms/fragalysis-frontend#1482 (comment)

* feat: added centroid_res field to CanonSite model

Also, removed fetching centroid_res from CANON_SITES_FILE. Seems that
now it's being added to meta_aligner.yaml, so reading an additional
file is not necessary. I hope...

* feat: added new fields to metadata.csv

Experiment code and centroid res

* feat: added tag aliases to metadata.csv

* Copies Target proposals to new (RHS) Compounds (#629)

* fix: Branch for project reference fix

* fix: Projects copied from Target (during RHS cset-upload)

* fix: Add save before copying projects

* fix: Remove unnecessary save()

* ci: Attempt to fix docker-compose problem

* ci: Fix staging and production builds (docker compose)

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Fix typo accessing Target projects (#632)

* fix: Add support for target_warning_message context variable (#634)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* API authentication and security changes (#635)

* style: Reorder functions in the module

* refactor: Moved non-view functions to viewer.utils

* fix: Removed unused save_pdb_zip and minor refactoring

* feat: Removed circular import

* feat: Fix get_open_targets (also get_open_proposals now not _private_)

* feat: Fix get_open_proposals reference

* refactor: ISpyB -> ISPyB

* docs: Updated for use of mixins

* feat: More API security migrations

* feat: More security migrations

* feat: Security migrations for hotspots and hypothesis

* feat: More security fixes

* feat: More security changes

* feat: More security changes (and get_params -> get_img_from_smiles with default w/h)

* fix: Attempt to fix calls to /xcdb/fragspect/ 500 errors

* feat: Another attempot to fix ISPyB

* feat: Use of new user_is_member_of_target()

* feat: Experiment with validator

* feat: Better serializer log

* feat: Even more work on the serializer

* feat: Minor error message tweak

* feat: Add support for TEST_RESTRICTED_TAS_LIST (#614)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* target permission validation mixin pattern implemented for Pose

* feat: Fix restricted logic

* most endpoints secured with VaildateTargetMixin

* fix: Removed unused endpoint

* fix: secure SessionActions serializer

* fix: Removed pset_download

* fix: Design set upload now unsupported (404)

* fix: Snapshots now open again

* fix: CompoundIdentifierTypeView & TagCategoryView now read-only views

* fix: Discourse POST now requires login

* feat: User now needs to be a member of CSET target to download it

* fix: secured TaskStatus endpoint

* feat: Removal of unsed xcdb app

* feat: Add log to use of dicttocsv

* feat: More secure DictToCsv

* feat: More consistent use of _ISPYB_SAFE_QUERY_SET

* feat: Stricter UploadCSet class inheritance

* feat: Fix isort issues

* feat: Fix ListAPIView

* feat: Remove references to xcdb

* fix: secure UploadTaskView and ValidateTaskView

TODO: secure UpdateTaskView (if used)

* Align 1247 with latest staging code (#616)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* Align 1247 from staging (#619)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* Align 1247 with latest staging (#620)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* feat: Rstore CSetUpload post()

* feat: Revert UploadCSet inheritance

* fix: Another attempt to fix UploadCSet

* fix: Another attmept to fix the view

* fix: Anotehr attempt to get UploadCSet

* feat: Fix UploadCSet view

* feat: Fix JobRequest GET (restrict to members of the project)

* feat: Enhanced logging for membership check failures

* docs: Improve docs relating to security

* docs: Minor typo

* fix: Remove TEST_RESTRICTED_TAS_LIST feature

* Align 1247 with staging (#621)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* Align 1247 with latest staging (#623)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* fix: Attempt to fix PoseView (now Pose)

* fix: Attempt to debug Pose failure

* fix: Another patch to Pose

* fix: Fix log typo

* fix: Attempt to fix permission on create

* fix: Fix for ValidateTargetMixin?

* fix: Better Mixin (renamed and copes with shortest filter string)

* fix: Fix some project mixin views (includes some renaming)

* refactor: View name consistency

* fix: Fix for targetdownload mixin (and extra log)

* fix: Better file handling

* fix: Now serches ExpUpload for first matching record

* fix: Better experiment download (use of only ExpUpload record)

* fix: ExpDownload now inspects Project

* fix: More naming consistency changes

* fix: Attempt to fix  'ManyRelatedManager' is not iterable

* fix: Use of correct download path

* Align 1247 with staging (#624)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* Align 1247 with staging (#627)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* docs: Tweak messages

* fix: Better file handling

* docs: Doc tweak

* Merge compound fix to 1247 (#628)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

* fix: Branch for project reference fix

* fix: Projects copied from Target (during RHS cset-upload)

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>
Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* refactor: restrict_to_membership now restrict_pubic_to_membership

* fix: ValidateProjectMixin does not insist on public proposal membership for GET

* fix: Apply conflict from staging

* Align 1247 with staging (#631)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

* fix: updates to tag generation

Changed how some of the tags are generated as per the comment here: m2ms/fragalysis-frontend#1482 (comment)

* feat: added centroid_res field to CanonSite model

Also, removed fetching centroid_res from CANON_SITES_FILE. Seems that
now it's being added to meta_aligner.yaml, so reading an additional
file is not necessary. I hope...

* feat: added new fields to metadata.csv

Experiment code and centroid res

* feat: added tag aliases to metadata.csv

* Copies Target proposals to new (RHS) Compounds (#629)

* fix: Branch for project reference fix

* fix: Projects copied from Target (during RHS cset-upload)

* fix: Add save before copying projects

* fix: Remove unnecessary save()

* ci: Attempt to fix docker-compose problem

* ci: Fix staging and production builds (docker compose)

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>
Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Fix project_id type (aligns with staging)

* Align 1247 with staging (#633)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

* fix: updates to tag generation

Changed how some of the tags are generated as per the comment here: m2ms/fragalysis-frontend#1482 (comment)

* feat: added centroid_res field to CanonSite model

Also, removed fetching centroid_res from CANON_SITES_FILE. Seems that
now it's being added to meta_aligner.yaml, so reading an additional
file is not necessary. I hope...

* feat: added new fields to metadata.csv

Experiment code and centroid res

* feat: added tag aliases to metadata.csv

* Copies Target proposals to new (RHS) Compounds (#629)

* fix: Branch for project reference fix

* fix: Projects copied from Target (during RHS cset-upload)

* fix: Add save before copying projects

* fix: Remove unnecessary save()

* ci: Attempt to fix docker-compose problem

* ci: Fix staging and production builds (docker compose)

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Fix typo accessing Target projects (#632)

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>
Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>
Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* fix: Adds variable to context

* fix: Fix variable order

* style: Add note and display template and its context (#637)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: fixed tag loading management command

* fix: fixed tag loader management command some more

* feat: Add support for RESTRICTED_TAS_USERS (#640)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Better handling of project path AttributeError (#641)

* fix: Better handling of project path

* fix: Now also dumps vars(base_start_object)

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Protect permissions from bad objects (#642)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Fix merge issue (#643)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Relaxes authentication for SessionProject (#644)

* refactor: Explicit error is there are no Projects

* chore: Removed commented-out code

* fix: Relaxed suth for SessionProject

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* refactor: Now displays object class name (#645)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Add additional context to the API error (#646)

* style: Additional context debug (view name etc.)

* style: Add traceback

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* stashing

* Relaxed auth for SessionActionsView & SnapshotActionsView (#647)

* fix: Relaxed auth for SessionActionsView & SnapshotActionsView

* fix: Removed ValidateProjectMixin from serializers

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: fix subsequent upload file path overwriting bug (1492)

Introduced with a fix to 1311, all subsequent uploads overwrote
previous version paths with their own root directory and resulting
paths didn't point to any actual file. Simplified LHS data structure
so the update mechanism remains in place (as it should, 1311 had it's
function) but the root directory for all versions stays the same.

TODO: fix path lookups for downloads and RHS uploads

* fix: Relax auth on SessionProjectTag & SiteObservationTag (#648)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Can now download public RHS without being logged int (#649)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: updated LHS downloads to new data schema

* fix: log compound names when alignment is not found (issue 1495)

Currently breaks on first fail, does not process the full list and
report back all offending molecules.

* stashing

* fix: sort canon sites by number of site observations

* stashing

* fix: fixed issue 1504, missing yaml files

* fix: shortened crystalform sites tags

* feat: added code prefix to experiment model

* feat: updated both short- and longcode

Shortcode dropped the 'x' character, longcode was made shorter with
'v' as an version indicator

* fix: fixed tagging issues

Introduced by canon site sorting, issue 1498

* fix: fixed remaining tag issues

* fix: the return of the ribbon

Ribbon was missing because the 'template_protein' attribute was
missing, because the path was compiled incorrectly and file was not
found. Template protein file is not explicitly given in metadata, so
trial-error method is used.

* stashing

* fix: a bug in target loader's create_objects func

catch block was wrongly positioned and may have been masking error messages

* feat: changed tag name format

/ instead of + and _

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>
Co-authored-by: Alan Christie <alan.christie@matildapeak.com>
Co-authored-by: Kalev Takkis <kalev.takkis@gmail.com>
Co-authored-by: Warren Thompson <waztom@gmail.com>
alanbchristie added a commit to xchem/fragalysis-backend that referenced this issue Sep 13, 2024
* build(deps): bump django from 3.2.24 to 3.2.25

Bumps [django](https://github.com/django/django) from 3.2.24 to 3.2.25.
- [Commits](django/django@3.2.24...3.2.25)

---
updated-dependencies:
- dependency-name: django
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* stashing

* Target loader now accepts experiments marked as 'manual'

* build(deps): bump pillow from 10.2.0 to 10.3.0

Bumps [pillow](https://github.com/python-pillow/Pillow) from 10.2.0 to 10.3.0.
- [Release notes](https://github.com/python-pillow/Pillow/releases)
- [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst)
- [Commits](python-pillow/Pillow@10.2.0...10.3.0)

---
updated-dependencies:
- dependency-name: pillow
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* Attempt to reduce pop-up "flicker" (1403) (#569)

* fix: Attempt to debug timeout errors

* fix: More logging on service_query

* fix: Varioustimeout adjustments

* fix: Removed exception during timeout

* fix: Explit log on SSH connection error

* fix: Retry attempts for MySQL connections

* fix: Service timeout now 28 (was 17)

* fix: Add pymysql read and write timeouts

* fix: Quiter (expected) connection failure handling

* fix: TIMEOUT now DEGRADED

* fix: Fix while loop exit conditions

* fix: Better loop logic

* style: services logging reduced and back to debug

* fix: SSHTunnel logging now ERROR (was DEBUG)

* fix: Quieter securty

* fix: More failures permitted (and debug tweaks)

* fix: Leaner logging

* fix: Leaner logging (only report when we're having topruble)

* fix: Better constant name

* fix: Reduced service logging

* docs: Doc tweak

* fix: Minor log tweak

* fix: Fixed duplicate log content

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: endpoint to download first reference pdb from assemblies.yaml

* stashing

* stashing

Changes so far:
- removed endpoint FirstAssemblyview
- moved the functionality to template_protein field in
TargetSerializer
- removed TargetMoleculesserializer
- removed sequences field from TargetSerializer

This is a result of Boris' comment in
github (m2ms/fragalysis-frontend#1373 (comment))
where he said the field isn't used and template_protein field is not
used. Looking at the code where this may be used, revealed that
Targetmoleculesserializer can be removed as well

NB! they're not removed-removed right now, only commented in. This
commit can be used to restore the code.

* fix: removed code mentioned in previous commit

* basic functionality

TODO: add and test PATCH method on PoseSerializer

* stashing

* build(deps): bump idna from 3.6 to 3.7

Bumps [idna](https://github.com/kjd/idna) from 3.6 to 3.7.
- [Release notes](https://github.com/kjd/idna/releases)
- [Changelog](https://github.com/kjd/idna/blob/master/HISTORY.rst)
- [Commits](kjd/idna@v3.6...v3.7)

---
updated-dependencies:
- dependency-name: idna
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* stashing

* Added 'hidden' property to viewer.Tag model

Also, added exclude directives to .pre-commit-config.yaml to not touch
django migration files

* Better user/proposal cache (#576)

* refactor: Quieter ISPyB cache

* refactor: Security cache log now quieter

* fix: Better cache logic - and reduced log

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* stashing

Nested serializer for pose, but I don't think I can use them

* feat: added compound_code to pose serializer

* fix: deeper nesting level to site observaton in meta_aligner.yaml

Data loads successfully but actual v2 upload has not been tested

* fix: renamed panddas_event_files to ligand_binding_events in meta_al

* fix: static resources are now loaded again

Fixes bare html API pages

* fix: fixed nginx config

* Revert "Fix static ressources not being loaded"

* stashing

Added sorting keys for versioned key. V1 data loading, waiting for
fixes in conf site presentation to continue with v2

* fix: more robust update method

Allows sending incomplete requests (no idea why seralizer isn't
populating fields).
Also fixed a bug where field updates on poses with multiple
observations where blocked.

* feat: added pose tags

* stashing

Working on allowing incomplete requests payloads. Turns out to be
quite tricky, may have to go back on this.

* feat: fully functional versioned data

Reads and processes upload_2+ data where version numbers are given in suffix

* fix: removed some dead code

* stashing

* build(deps): bump tqdm from 4.66.1 to 4.66.3

Bumps [tqdm](https://github.com/tqdm/tqdm) from 4.66.1 to 4.66.3.
- [Release notes](https://github.com/tqdm/tqdm/releases)
- [Commits](tqdm/tqdm@v4.66.1...v4.66.3)

---
updated-dependencies:
- dependency-name: tqdm
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* feat: only non-superseded sites available from the api

* build(deps-dev): bump black from 23.12.0 to 24.3.0

Bumps [black](https://github.com/psf/black) from 23.12.0 to 24.3.0.
- [Release notes](https://github.com/psf/black/releases)
- [Changelog](https://github.com/psf/black/blob/main/CHANGES.md)
- [Commits](psf/black@23.12.0...24.3.0)

---
updated-dependencies:
- dependency-name: black
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore: merged conflicting migrations from issue 1311 branch

* fix: pose instance attributes updating successfully

* fix: better check for already uploaded data

* fix: merge conflicting migrations

Not sure why the previous merge didn't work

* Adds basic metrics (#588)

* feat: Experiment with django prometheus

* feat: Fix build

* fix: Fix build (locking drf)

* feat: Fix lock file

* feat: Update to non-slim Python 3.11.9

* feat: Back to slim image

* fix: Some basic internal metrics

* fix: Removed rogue line

* fix: Fix lint issues

* fix: Removed custom metrics

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Attempt to add prometheus to DB (#589)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: service state queries to backend

Instead of a frontend call triggering a query to each service in every
30 seconds or so, ping the services in the backend, store the results
in a table and serve this up in an endpoint. Seems that when each
user's frontend was testing ISPyB, it was enough to grind it to a
halt.

TODO:
- user friendly names of services
- separate compose and settings file to enable launching celery and
  beat separately (and make sure backend still works when not)
- delete old service query stuff
- most serious one - creating services on startup in apps.py, weird
  issue with service table supposedly not existing in db

* feat: service state queries to backend

Refactored a bit and fixed an issue with automatically starting
services on startup. External service queries fixed.

TODO:
- separate compose file
- delete old services stuff

* Add custom (security) metrics (#593)

* feat: Re-attempt to add custom metrics

* feat: New metric (ISpyB connection attempts)

* feat: Add cache hit/miss metrics

* feat: Leaner metrics (and initial dashboard)

* feat: Metrics now initialised

* docs: Updated dashboard

* fix: Attempt to fix hit/miss metrics

* docs: New dashboard

* docs: Dashboard tweak

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: service state queries to backend

Separate compose file

TODO:
- remove old services

* fix: Fixed connection retry metric (#594)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: service state queries to backend

Completed, updated readme and deleted old services.

TODO:
- follow-up issue 1359, better ISPyB query

* fix: missing migration and pylint ignore

* fix: remove auto-generating pose tags

* fix: Fix for tunnel connection failure metrics (#597)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Adjust metrics (tunnels and cache) (#598)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: service test functions now scheduled correctly

Minor tweaks to test functions themselves
Start/stop management command fully functional

* fix: changed canon site autogenerated tag name

* docs: Updated grafana dashboard

* feat: filename attribute to RHS download serializer

* fix: update observation's longcode template

* Adjust logging for cache debug (#603)

* refactor: Adds extra logging in proposal extraction

* style: Initial cache now a set rather than empty list

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Fix connection failure logic (#604)

* refactor: Adds extra logging in proposal extraction

* style: Initial cache now a set rather than empty list

* fix: Fix cache collection failure logic

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Reduced security logging (#605)

* refactor: Adds extra logging in proposal extraction

* style: Initial cache now a set rather than empty list

* fix: Fix cache collection failure logic

* fix: Reduced logging for proposal cache

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: add management commands to save and restore curated tags

In app container either
curated_tags --dump tags.json
or
curated_tags --load tags.json

* feat: incremental RHS upload (issue 1394)

Allows upload. Currently adds unnecessary compound sets and overwrites
old ones when it doesn't need to

* feat: incremental RHS uploads

Fully working, upload, delete, overwrite, etc.
NB! migrations!

* fix: set ConformerSites and CrystalformSites tags to hidden by default

* fix: code cleanup for merge

* fix: updated crystalform site tag generation scheme

* Initial 'security' changes - Target PATCH now "locked down" (#612)

* fix: Adds extra log to Targets view

* fix: More target logging

* fix: safe query set now derived from ModelViewSet

* feat: Experiment with IsProposalMember class

* fix: Another permission tweak

* fix: Another permission tweak

* fix: Typo

* fix: Fixed silly typo

* fix: Display view filter_permissions

* fix: Experimental new has_permission

* fix: Add user_is_member_of_any_given_proposals to security

* fix: Change to filter class name

* fix: Better has_object_permission

* feat: Leaner has_object_permission

* docs: Minor doc tweak

* fix: Experiment with SafeQuerySet

* fix: Experiment with ModelViewSet in ISPYB

* fix: Back to read-only viewset (and reduced log)

* fix: User must be authenticated

* docs: Doc tweak

* feat: Experiment with filter class for Target view

* fix: Attempt to fix build errors

* fix: Switch to filter_class

* fix: Attempt to fix filter logging

* fix: Another tweak of filters

* feat: Fix filerset typo

* fix: Back to built-in (genric) views

* feat: Attempt to fix has no attribute 'get_extra_actions'

* fix: Silly typo

* fix: Back to ispybsafequeryset

* fix: Restore queryset

* fix: Experiment with mixins

* docs: Doc tweaks

* docs: Doc tweak

* fix: Switch to update() from patch()

* fix: Back to patch()

* refactor: Minor refactor

* feat: Better permissions class for proposals

* Align 1247 with latest staging (#611)

* feat: incremental RHS upload (issue 1394)

Allows upload. Currently adds unnecessary compound sets and overwrites
old ones when it doesn't need to

* feat: incremental RHS uploads

Fully working, upload, delete, overwrite, etc.
NB! migrations!

* fix: code cleanup for merge

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>
Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

* fix: updates to tag generation

Changed how some of the tags are generated as per the comment here: m2ms/fragalysis-frontend#1482 (comment)

* feat: added centroid_res field to CanonSite model

Also, removed fetching centroid_res from CANON_SITES_FILE. Seems that
now it's being added to meta_aligner.yaml, so reading an additional
file is not necessary. I hope...

* feat: added new fields to metadata.csv

Experiment code and centroid res

* feat: added tag aliases to metadata.csv

* Copies Target proposals to new (RHS) Compounds (#629)

* fix: Branch for project reference fix

* fix: Projects copied from Target (during RHS cset-upload)

* fix: Add save before copying projects

* fix: Remove unnecessary save()

* ci: Attempt to fix docker-compose problem

* ci: Fix staging and production builds (docker compose)

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Fix typo accessing Target projects (#632)

* fix: Add support for target_warning_message context variable (#634)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* API authentication and security changes (#635)

* style: Reorder functions in the module

* refactor: Moved non-view functions to viewer.utils

* fix: Removed unused save_pdb_zip and minor refactoring

* feat: Removed circular import

* feat: Fix get_open_targets (also get_open_proposals now not _private_)

* feat: Fix get_open_proposals reference

* refactor: ISpyB -> ISPyB

* docs: Updated for use of mixins

* feat: More API security migrations

* feat: More security migrations

* feat: Security migrations for hotspots and hypothesis

* feat: More security fixes

* feat: More security changes

* feat: More security changes (and get_params -> get_img_from_smiles with default w/h)

* fix: Attempt to fix calls to /xcdb/fragspect/ 500 errors

* feat: Another attempot to fix ISPyB

* feat: Use of new user_is_member_of_target()

* feat: Experiment with validator

* feat: Better serializer log

* feat: Even more work on the serializer

* feat: Minor error message tweak

* feat: Add support for TEST_RESTRICTED_TAS_LIST (#614)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* target permission validation mixin pattern implemented for Pose

* feat: Fix restricted logic

* most endpoints secured with VaildateTargetMixin

* fix: Removed unused endpoint

* fix: secure SessionActions serializer

* fix: Removed pset_download

* fix: Design set upload now unsupported (404)

* fix: Snapshots now open again

* fix: CompoundIdentifierTypeView & TagCategoryView now read-only views

* fix: Discourse POST now requires login

* feat: User now needs to be a member of CSET target to download it

* fix: secured TaskStatus endpoint

* feat: Removal of unsed xcdb app

* feat: Add log to use of dicttocsv

* feat: More secure DictToCsv

* feat: More consistent use of _ISPYB_SAFE_QUERY_SET

* feat: Stricter UploadCSet class inheritance

* feat: Fix isort issues

* feat: Fix ListAPIView

* feat: Remove references to xcdb

* fix: secure UploadTaskView and ValidateTaskView

TODO: secure UpdateTaskView (if used)

* Align 1247 with latest staging code (#616)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* Align 1247 from staging (#619)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* Align 1247 with latest staging (#620)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* feat: Rstore CSetUpload post()

* feat: Revert UploadCSet inheritance

* fix: Another attempt to fix UploadCSet

* fix: Another attmept to fix the view

* fix: Anotehr attempt to get UploadCSet

* feat: Fix UploadCSet view

* feat: Fix JobRequest GET (restrict to members of the project)

* feat: Enhanced logging for membership check failures

* docs: Improve docs relating to security

* docs: Minor typo

* fix: Remove TEST_RESTRICTED_TAS_LIST feature

* Align 1247 with staging (#621)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* Align 1247 with latest staging (#623)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* fix: Attempt to fix PoseView (now Pose)

* fix: Attempt to debug Pose failure

* fix: Another patch to Pose

* fix: Fix log typo

* fix: Attempt to fix permission on create

* fix: Fix for ValidateTargetMixin?

* fix: Better Mixin (renamed and copes with shortest filter string)

* fix: Fix some project mixin views (includes some renaming)

* refactor: View name consistency

* fix: Fix for targetdownload mixin (and extra log)

* fix: Better file handling

* fix: Now serches ExpUpload for first matching record

* fix: Better experiment download (use of only ExpUpload record)

* fix: ExpDownload now inspects Project

* fix: More naming consistency changes

* fix: Attempt to fix  'ManyRelatedManager' is not iterable

* fix: Use of correct download path

* Align 1247 with staging (#624)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* Align 1247 with staging (#627)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* docs: Tweak messages

* fix: Better file handling

* docs: Doc tweak

* Merge compound fix to 1247 (#628)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

* fix: Branch for project reference fix

* fix: Projects copied from Target (during RHS cset-upload)

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>
Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* refactor: restrict_to_membership now restrict_pubic_to_membership

* fix: ValidateProjectMixin does not insist on public proposal membership for GET

* fix: Apply conflict from staging

* Align 1247 with staging (#631)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

* fix: updates to tag generation

Changed how some of the tags are generated as per the comment here: m2ms/fragalysis-frontend#1482 (comment)

* feat: added centroid_res field to CanonSite model

Also, removed fetching centroid_res from CANON_SITES_FILE. Seems that
now it's being added to meta_aligner.yaml, so reading an additional
file is not necessary. I hope...

* feat: added new fields to metadata.csv

Experiment code and centroid res

* feat: added tag aliases to metadata.csv

* Copies Target proposals to new (RHS) Compounds (#629)

* fix: Branch for project reference fix

* fix: Projects copied from Target (during RHS cset-upload)

* fix: Add save before copying projects

* fix: Remove unnecessary save()

* ci: Attempt to fix docker-compose problem

* ci: Fix staging and production builds (docker compose)

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>
Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Fix project_id type (aligns with staging)

* Align 1247 with staging (#633)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

* fix: updates to tag generation

Changed how some of the tags are generated as per the comment here: m2ms/fragalysis-frontend#1482 (comment)

* feat: added centroid_res field to CanonSite model

Also, removed fetching centroid_res from CANON_SITES_FILE. Seems that
now it's being added to meta_aligner.yaml, so reading an additional
file is not necessary. I hope...

* feat: added new fields to metadata.csv

Experiment code and centroid res

* feat: added tag aliases to metadata.csv

* Copies Target proposals to new (RHS) Compounds (#629)

* fix: Branch for project reference fix

* fix: Projects copied from Target (during RHS cset-upload)

* fix: Add save before copying projects

* fix: Remove unnecessary save()

* ci: Attempt to fix docker-compose problem

* ci: Fix staging and production builds (docker compose)

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Fix typo accessing Target projects (#632)

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>
Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>
Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* fix: Adds variable to context

* fix: Fix variable order

* style: Add note and display template and its context (#637)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: fixed tag loading management command

* fix: fixed tag loader management command some more

* feat: Add support for RESTRICTED_TAS_USERS (#640)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Better handling of project path AttributeError (#641)

* fix: Better handling of project path

* fix: Now also dumps vars(base_start_object)

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Protect permissions from bad objects (#642)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Fix merge issue (#643)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Relaxes authentication for SessionProject (#644)

* refactor: Explicit error is there are no Projects

* chore: Removed commented-out code

* fix: Relaxed suth for SessionProject

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* refactor: Now displays object class name (#645)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Add additional context to the API error (#646)

* style: Additional context debug (view name etc.)

* style: Add traceback

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* stashing

* Relaxed auth for SessionActionsView & SnapshotActionsView (#647)

* fix: Relaxed auth for SessionActionsView & SnapshotActionsView

* fix: Removed ValidateProjectMixin from serializers

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: fix subsequent upload file path overwriting bug (1492)

Introduced with a fix to 1311, all subsequent uploads overwrote
previous version paths with their own root directory and resulting
paths didn't point to any actual file. Simplified LHS data structure
so the update mechanism remains in place (as it should, 1311 had it's
function) but the root directory for all versions stays the same.

TODO: fix path lookups for downloads and RHS uploads

* fix: Relax auth on SessionProjectTag & SiteObservationTag (#648)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Can now download public RHS without being logged int (#649)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: updated LHS downloads to new data schema

* fix: log compound names when alignment is not found (issue 1495)

Currently breaks on first fail, does not process the full list and
report back all offending molecules.

* stashing

* fix: sort canon sites by number of site observations

* stashing

* fix: fixed issue 1504, missing yaml files

* fix: shortened crystalform sites tags

* feat: added code prefix to experiment model

* feat: updated both short- and longcode

Shortcode dropped the 'x' character, longcode was made shorter with
'v' as an version indicator

* fix: fixed tagging issues

Introduced by canon site sorting, issue 1498

* fix: fixed remaining tag issues

* fix: the return of the ribbon

Ribbon was missing because the 'template_protein' attribute was
missing, because the path was compiled incorrectly and file was not
found. Template protein file is not explicitly given in metadata, so
trial-error method is used.

* stashing

* fix: a bug in target loader's create_objects func

catch block was wrongly positioned and may have been masking error messages

* feat: changed tag name format

/ instead of + and _

* fix: restore pose column to metadata.csv (#663)

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>
Co-authored-by: Alan Christie <alan.christie@matildapeak.com>
Co-authored-by: Kalev Takkis <kalev.takkis@gmail.com>
Co-authored-by: Warren Thompson <waztom@gmail.com>
alanbchristie added a commit to xchem/fragalysis-backend that referenced this issue Sep 13, 2024
* build(deps): bump django from 3.2.24 to 3.2.25

Bumps [django](https://github.com/django/django) from 3.2.24 to 3.2.25.
- [Commits](django/django@3.2.24...3.2.25)

---
updated-dependencies:
- dependency-name: django
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* stashing

* Target loader now accepts experiments marked as 'manual'

* build(deps): bump pillow from 10.2.0 to 10.3.0

Bumps [pillow](https://github.com/python-pillow/Pillow) from 10.2.0 to 10.3.0.
- [Release notes](https://github.com/python-pillow/Pillow/releases)
- [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst)
- [Commits](python-pillow/Pillow@10.2.0...10.3.0)

---
updated-dependencies:
- dependency-name: pillow
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* Attempt to reduce pop-up "flicker" (1403) (#569)

* fix: Attempt to debug timeout errors

* fix: More logging on service_query

* fix: Varioustimeout adjustments

* fix: Removed exception during timeout

* fix: Explit log on SSH connection error

* fix: Retry attempts for MySQL connections

* fix: Service timeout now 28 (was 17)

* fix: Add pymysql read and write timeouts

* fix: Quiter (expected) connection failure handling

* fix: TIMEOUT now DEGRADED

* fix: Fix while loop exit conditions

* fix: Better loop logic

* style: services logging reduced and back to debug

* fix: SSHTunnel logging now ERROR (was DEBUG)

* fix: Quieter securty

* fix: More failures permitted (and debug tweaks)

* fix: Leaner logging

* fix: Leaner logging (only report when we're having topruble)

* fix: Better constant name

* fix: Reduced service logging

* docs: Doc tweak

* fix: Minor log tweak

* fix: Fixed duplicate log content

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: endpoint to download first reference pdb from assemblies.yaml

* stashing

* stashing

Changes so far:
- removed endpoint FirstAssemblyview
- moved the functionality to template_protein field in
TargetSerializer
- removed TargetMoleculesserializer
- removed sequences field from TargetSerializer

This is a result of Boris' comment in
github (m2ms/fragalysis-frontend#1373 (comment))
where he said the field isn't used and template_protein field is not
used. Looking at the code where this may be used, revealed that
Targetmoleculesserializer can be removed as well

NB! they're not removed-removed right now, only commented in. This
commit can be used to restore the code.

* fix: removed code mentioned in previous commit

* basic functionality

TODO: add and test PATCH method on PoseSerializer

* stashing

* build(deps): bump idna from 3.6 to 3.7

Bumps [idna](https://github.com/kjd/idna) from 3.6 to 3.7.
- [Release notes](https://github.com/kjd/idna/releases)
- [Changelog](https://github.com/kjd/idna/blob/master/HISTORY.rst)
- [Commits](kjd/idna@v3.6...v3.7)

---
updated-dependencies:
- dependency-name: idna
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* stashing

* Added 'hidden' property to viewer.Tag model

Also, added exclude directives to .pre-commit-config.yaml to not touch
django migration files

* Better user/proposal cache (#576)

* refactor: Quieter ISPyB cache

* refactor: Security cache log now quieter

* fix: Better cache logic - and reduced log

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* stashing

Nested serializer for pose, but I don't think I can use them

* feat: added compound_code to pose serializer

* fix: deeper nesting level to site observaton in meta_aligner.yaml

Data loads successfully but actual v2 upload has not been tested

* fix: renamed panddas_event_files to ligand_binding_events in meta_al

* fix: static resources are now loaded again

Fixes bare html API pages

* fix: fixed nginx config

* Revert "Fix static ressources not being loaded"

* stashing

Added sorting keys for versioned key. V1 data loading, waiting for
fixes in conf site presentation to continue with v2

* fix: more robust update method

Allows sending incomplete requests (no idea why seralizer isn't
populating fields).
Also fixed a bug where field updates on poses with multiple
observations where blocked.

* feat: added pose tags

* stashing

Working on allowing incomplete requests payloads. Turns out to be
quite tricky, may have to go back on this.

* feat: fully functional versioned data

Reads and processes upload_2+ data where version numbers are given in suffix

* fix: removed some dead code

* stashing

* build(deps): bump tqdm from 4.66.1 to 4.66.3

Bumps [tqdm](https://github.com/tqdm/tqdm) from 4.66.1 to 4.66.3.
- [Release notes](https://github.com/tqdm/tqdm/releases)
- [Commits](tqdm/tqdm@v4.66.1...v4.66.3)

---
updated-dependencies:
- dependency-name: tqdm
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* feat: only non-superseded sites available from the api

* build(deps-dev): bump black from 23.12.0 to 24.3.0

Bumps [black](https://github.com/psf/black) from 23.12.0 to 24.3.0.
- [Release notes](https://github.com/psf/black/releases)
- [Changelog](https://github.com/psf/black/blob/main/CHANGES.md)
- [Commits](psf/black@23.12.0...24.3.0)

---
updated-dependencies:
- dependency-name: black
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore: merged conflicting migrations from issue 1311 branch

* fix: pose instance attributes updating successfully

* fix: better check for already uploaded data

* fix: merge conflicting migrations

Not sure why the previous merge didn't work

* Adds basic metrics (#588)

* feat: Experiment with django prometheus

* feat: Fix build

* fix: Fix build (locking drf)

* feat: Fix lock file

* feat: Update to non-slim Python 3.11.9

* feat: Back to slim image

* fix: Some basic internal metrics

* fix: Removed rogue line

* fix: Fix lint issues

* fix: Removed custom metrics

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Attempt to add prometheus to DB (#589)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: service state queries to backend

Instead of a frontend call triggering a query to each service in every
30 seconds or so, ping the services in the backend, store the results
in a table and serve this up in an endpoint. Seems that when each
user's frontend was testing ISPyB, it was enough to grind it to a
halt.

TODO:
- user friendly names of services
- separate compose and settings file to enable launching celery and
  beat separately (and make sure backend still works when not)
- delete old service query stuff
- most serious one - creating services on startup in apps.py, weird
  issue with service table supposedly not existing in db

* feat: service state queries to backend

Refactored a bit and fixed an issue with automatically starting
services on startup. External service queries fixed.

TODO:
- separate compose file
- delete old services stuff

* Add custom (security) metrics (#593)

* feat: Re-attempt to add custom metrics

* feat: New metric (ISpyB connection attempts)

* feat: Add cache hit/miss metrics

* feat: Leaner metrics (and initial dashboard)

* feat: Metrics now initialised

* docs: Updated dashboard

* fix: Attempt to fix hit/miss metrics

* docs: New dashboard

* docs: Dashboard tweak

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: service state queries to backend

Separate compose file

TODO:
- remove old services

* fix: Fixed connection retry metric (#594)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: service state queries to backend

Completed, updated readme and deleted old services.

TODO:
- follow-up issue 1359, better ISPyB query

* fix: missing migration and pylint ignore

* fix: remove auto-generating pose tags

* fix: Fix for tunnel connection failure metrics (#597)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Adjust metrics (tunnels and cache) (#598)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: service test functions now scheduled correctly

Minor tweaks to test functions themselves
Start/stop management command fully functional

* fix: changed canon site autogenerated tag name

* docs: Updated grafana dashboard

* feat: filename attribute to RHS download serializer

* fix: update observation's longcode template

* Adjust logging for cache debug (#603)

* refactor: Adds extra logging in proposal extraction

* style: Initial cache now a set rather than empty list

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Fix connection failure logic (#604)

* refactor: Adds extra logging in proposal extraction

* style: Initial cache now a set rather than empty list

* fix: Fix cache collection failure logic

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Reduced security logging (#605)

* refactor: Adds extra logging in proposal extraction

* style: Initial cache now a set rather than empty list

* fix: Fix cache collection failure logic

* fix: Reduced logging for proposal cache

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: add management commands to save and restore curated tags

In app container either
curated_tags --dump tags.json
or
curated_tags --load tags.json

* feat: incremental RHS upload (issue 1394)

Allows upload. Currently adds unnecessary compound sets and overwrites
old ones when it doesn't need to

* feat: incremental RHS uploads

Fully working, upload, delete, overwrite, etc.
NB! migrations!

* fix: set ConformerSites and CrystalformSites tags to hidden by default

* fix: code cleanup for merge

* fix: updated crystalform site tag generation scheme

* Initial 'security' changes - Target PATCH now "locked down" (#612)

* fix: Adds extra log to Targets view

* fix: More target logging

* fix: safe query set now derived from ModelViewSet

* feat: Experiment with IsProposalMember class

* fix: Another permission tweak

* fix: Another permission tweak

* fix: Typo

* fix: Fixed silly typo

* fix: Display view filter_permissions

* fix: Experimental new has_permission

* fix: Add user_is_member_of_any_given_proposals to security

* fix: Change to filter class name

* fix: Better has_object_permission

* feat: Leaner has_object_permission

* docs: Minor doc tweak

* fix: Experiment with SafeQuerySet

* fix: Experiment with ModelViewSet in ISPYB

* fix: Back to read-only viewset (and reduced log)

* fix: User must be authenticated

* docs: Doc tweak

* feat: Experiment with filter class for Target view

* fix: Attempt to fix build errors

* fix: Switch to filter_class

* fix: Attempt to fix filter logging

* fix: Another tweak of filters

* feat: Fix filerset typo

* fix: Back to built-in (genric) views

* feat: Attempt to fix has no attribute 'get_extra_actions'

* fix: Silly typo

* fix: Back to ispybsafequeryset

* fix: Restore queryset

* fix: Experiment with mixins

* docs: Doc tweaks

* docs: Doc tweak

* fix: Switch to update() from patch()

* fix: Back to patch()

* refactor: Minor refactor

* feat: Better permissions class for proposals

* Align 1247 with latest staging (#611)

* feat: incremental RHS upload (issue 1394)

Allows upload. Currently adds unnecessary compound sets and overwrites
old ones when it doesn't need to

* feat: incremental RHS uploads

Fully working, upload, delete, overwrite, etc.
NB! migrations!

* fix: code cleanup for merge

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>
Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

* fix: updates to tag generation

Changed how some of the tags are generated as per the comment here: m2ms/fragalysis-frontend#1482 (comment)

* feat: added centroid_res field to CanonSite model

Also, removed fetching centroid_res from CANON_SITES_FILE. Seems that
now it's being added to meta_aligner.yaml, so reading an additional
file is not necessary. I hope...

* feat: added new fields to metadata.csv

Experiment code and centroid res

* feat: added tag aliases to metadata.csv

* Copies Target proposals to new (RHS) Compounds (#629)

* fix: Branch for project reference fix

* fix: Projects copied from Target (during RHS cset-upload)

* fix: Add save before copying projects

* fix: Remove unnecessary save()

* ci: Attempt to fix docker-compose problem

* ci: Fix staging and production builds (docker compose)

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Fix typo accessing Target projects (#632)

* fix: Add support for target_warning_message context variable (#634)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* API authentication and security changes (#635)

* style: Reorder functions in the module

* refactor: Moved non-view functions to viewer.utils

* fix: Removed unused save_pdb_zip and minor refactoring

* feat: Removed circular import

* feat: Fix get_open_targets (also get_open_proposals now not _private_)

* feat: Fix get_open_proposals reference

* refactor: ISpyB -> ISPyB

* docs: Updated for use of mixins

* feat: More API security migrations

* feat: More security migrations

* feat: Security migrations for hotspots and hypothesis

* feat: More security fixes

* feat: More security changes

* feat: More security changes (and get_params -> get_img_from_smiles with default w/h)

* fix: Attempt to fix calls to /xcdb/fragspect/ 500 errors

* feat: Another attempot to fix ISPyB

* feat: Use of new user_is_member_of_target()

* feat: Experiment with validator

* feat: Better serializer log

* feat: Even more work on the serializer

* feat: Minor error message tweak

* feat: Add support for TEST_RESTRICTED_TAS_LIST (#614)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* target permission validation mixin pattern implemented for Pose

* feat: Fix restricted logic

* most endpoints secured with VaildateTargetMixin

* fix: Removed unused endpoint

* fix: secure SessionActions serializer

* fix: Removed pset_download

* fix: Design set upload now unsupported (404)

* fix: Snapshots now open again

* fix: CompoundIdentifierTypeView & TagCategoryView now read-only views

* fix: Discourse POST now requires login

* feat: User now needs to be a member of CSET target to download it

* fix: secured TaskStatus endpoint

* feat: Removal of unsed xcdb app

* feat: Add log to use of dicttocsv

* feat: More secure DictToCsv

* feat: More consistent use of _ISPYB_SAFE_QUERY_SET

* feat: Stricter UploadCSet class inheritance

* feat: Fix isort issues

* feat: Fix ListAPIView

* feat: Remove references to xcdb

* fix: secure UploadTaskView and ValidateTaskView

TODO: secure UpdateTaskView (if used)

* Align 1247 with latest staging code (#616)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* Align 1247 from staging (#619)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* Align 1247 with latest staging (#620)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* feat: Rstore CSetUpload post()

* feat: Revert UploadCSet inheritance

* fix: Another attempt to fix UploadCSet

* fix: Another attmept to fix the view

* fix: Anotehr attempt to get UploadCSet

* feat: Fix UploadCSet view

* feat: Fix JobRequest GET (restrict to members of the project)

* feat: Enhanced logging for membership check failures

* docs: Improve docs relating to security

* docs: Minor typo

* fix: Remove TEST_RESTRICTED_TAS_LIST feature

* Align 1247 with staging (#621)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* Align 1247 with latest staging (#623)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* fix: Attempt to fix PoseView (now Pose)

* fix: Attempt to debug Pose failure

* fix: Another patch to Pose

* fix: Fix log typo

* fix: Attempt to fix permission on create

* fix: Fix for ValidateTargetMixin?

* fix: Better Mixin (renamed and copes with shortest filter string)

* fix: Fix some project mixin views (includes some renaming)

* refactor: View name consistency

* fix: Fix for targetdownload mixin (and extra log)

* fix: Better file handling

* fix: Now serches ExpUpload for first matching record

* fix: Better experiment download (use of only ExpUpload record)

* fix: ExpDownload now inspects Project

* fix: More naming consistency changes

* fix: Attempt to fix  'ManyRelatedManager' is not iterable

* fix: Use of correct download path

* Align 1247 with staging (#624)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* Align 1247 with staging (#627)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* docs: Tweak messages

* fix: Better file handling

* docs: Doc tweak

* Merge compound fix to 1247 (#628)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

* fix: Branch for project reference fix

* fix: Projects copied from Target (during RHS cset-upload)

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>
Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* refactor: restrict_to_membership now restrict_pubic_to_membership

* fix: ValidateProjectMixin does not insist on public proposal membership for GET

* fix: Apply conflict from staging

* Align 1247 with staging (#631)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

* fix: updates to tag generation

Changed how some of the tags are generated as per the comment here: m2ms/fragalysis-frontend#1482 (comment)

* feat: added centroid_res field to CanonSite model

Also, removed fetching centroid_res from CANON_SITES_FILE. Seems that
now it's being added to meta_aligner.yaml, so reading an additional
file is not necessary. I hope...

* feat: added new fields to metadata.csv

Experiment code and centroid res

* feat: added tag aliases to metadata.csv

* Copies Target proposals to new (RHS) Compounds (#629)

* fix: Branch for project reference fix

* fix: Projects copied from Target (during RHS cset-upload)

* fix: Add save before copying projects

* fix: Remove unnecessary save()

* ci: Attempt to fix docker-compose problem

* ci: Fix staging and production builds (docker compose)

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>
Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Fix project_id type (aligns with staging)

* Align 1247 with staging (#633)

* fix: updated crystalform site tag generation scheme

* fix: update tag generation scheme

* fix: remove version field from ComputedMolecule

Field was added in error, explicit version tracking is not necessary

* fix: forgot to stage migration file..

* fix: fix querysets in target_loader.py

Came up with pose generation - SiteObservation querysets were called
over the entire table not by the target they should have been
associated with.

* fix: add warning to logs about overwriting ComputedMolecule metadata

* fix: add additional ccp4 files to download (issue 1448)

* fix: updates to tag generation

Changed how some of the tags are generated as per the comment here: m2ms/fragalysis-frontend#1482 (comment)

* feat: added centroid_res field to CanonSite model

Also, removed fetching centroid_res from CANON_SITES_FILE. Seems that
now it's being added to meta_aligner.yaml, so reading an additional
file is not necessary. I hope...

* feat: added new fields to metadata.csv

Experiment code and centroid res

* feat: added tag aliases to metadata.csv

* Copies Target proposals to new (RHS) Compounds (#629)

* fix: Branch for project reference fix

* fix: Projects copied from Target (during RHS cset-upload)

* fix: Add save before copying projects

* fix: Remove unnecessary save()

* ci: Attempt to fix docker-compose problem

* ci: Fix staging and production builds (docker compose)

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Fix typo accessing Target projects (#632)

---------

Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>
Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>
Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>

* fix: Adds variable to context

* fix: Fix variable order

* style: Add note and display template and its context (#637)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: fixed tag loading management command

* fix: fixed tag loader management command some more

* feat: Add support for RESTRICTED_TAS_USERS (#640)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Better handling of project path AttributeError (#641)

* fix: Better handling of project path

* fix: Now also dumps vars(base_start_object)

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Protect permissions from bad objects (#642)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Fix merge issue (#643)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Relaxes authentication for SessionProject (#644)

* refactor: Explicit error is there are no Projects

* chore: Removed commented-out code

* fix: Relaxed suth for SessionProject

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* refactor: Now displays object class name (#645)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* Add additional context to the API error (#646)

* style: Additional context debug (view name etc.)

* style: Add traceback

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* stashing

* Relaxed auth for SessionActionsView & SnapshotActionsView (#647)

* fix: Relaxed auth for SessionActionsView & SnapshotActionsView

* fix: Removed ValidateProjectMixin from serializers

---------

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: fix subsequent upload file path overwriting bug (1492)

Introduced with a fix to 1311, all subsequent uploads overwrote
previous version paths with their own root directory and resulting
paths didn't point to any actual file. Simplified LHS data structure
so the update mechanism remains in place (as it should, 1311 had it's
function) but the root directory for all versions stays the same.

TODO: fix path lookups for downloads and RHS uploads

* fix: Relax auth on SessionProjectTag & SiteObservationTag (#648)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* fix: Can now download public RHS without being logged int (#649)

Co-authored-by: Alan Christie <alan.christie@matildapeak.com>

* feat: updated LHS downloads to new data schema

* fix: log compound names when alignment is not found (issue 1495)

Currently breaks on first fail, does not process the full list and
report back all offending molecules.

* stashing

* fix: sort canon sites by number of site observations

* stashing

* fix: fixed issue 1504, missing yaml files

* fix: shortened crystalform sites tags

* feat: added code prefix to experiment model

* feat: updated both short- and longcode

Shortcode dropped the 'x' character, longcode was made shorter with
'v' as an version indicator

* fix: fixed tagging issues

Introduced by canon site sorting, issue 1498

* fix: fixed remaining tag issues

* fix: the return of the ribbon

Ribbon was missing because the 'template_protein' attribute was
missing, because the path was compiled incorrectly and file was not
found. Template protein file is not explicitly given in metadata, so
trial-error method is used.

* stashing

* fix: a bug in target loader's create_objects func

catch block was wrongly positioned and may have been masking error messages

* feat: changed tag name format

/ instead of + and _

* fix: restore pose column to metadata.csv (#663)

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Kalev Takkis <ktakkis@informaticsmatters.com>
Co-authored-by: Alan Christie <alan.christie@matildapeak.com>
Co-authored-by: Kalev Takkis <kalev.takkis@gmail.com>
Co-authored-by: Warren Thompson <waztom@gmail.com>
@mwinokan mwinokan moved this from Approved in staging - push to production to In production (Done) in Fragalysis Sep 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: In production (Done)
Development

No branches or pull requests

4 participants