Skip to content

v1.0.0

Compare
Choose a tag to compare
@i-oden i-oden released this 01 Apr 10:08
· 3273 commits to master since this release
d69de9d

What's Changed

  • cli by @inaod568 in #390
  • Sendev by @senthil10 in #395
  • project listing bug by @inaod568 in #396
  • add logger by @senthil10 in #399
  • blacked by @senthil10 in #400
  • Submodule delete branch by @inaod568 in #402
  • refactoring by @senthil10 in #403
  • bucket naem fix by @senthil10 in #404
  • Project size update changed. by @inaod568 in #405
  • right branch by @senthil10 in #406
  • Project size update fix and other refactoring by @senthil10 in #407
  • rename and login case sensitivity by @senthil10 in #408
  • Handle case sensitivity by @inaod568 in #409
  • Big data fail fix by @senthil10 in #429
  • Some refactoring and fixes by @senthil10 in #430
  • removed func.binary in delete_all by @inaod568 in #431
  • Easier setup by @ewels in #445
  • Env variable changes by @senthil10 in #447
  • Front end package manager by @ewels in #446
  • Changes in database structure by @inaod568 in #448
  • Start fixing up / rewriting project file tree by @ewels in #451
  • Clean up some files in the root by @ewels in #456
  • Automated images to Dockerhub by @talavis in #458
  • Rewrite web uploader by @ewels in #455
  • Web upload - refactor staging area display. by @ewels in #459
  • Use Node 14 for the ccs builder by @talavis in #468
  • s3 connector - don't silently fail if there are problems by @ewels in #465
  • Homepage redesign by @ewels in #471
  • public id removed by @inaod568 in #474
  • Animated data blobs :) by @ewels in #475
  • New build order by @talavis in #495
  • OIDC support for logins by @talavis in #473
  • Automated linting of Python by @ErikDanielsson in #498
  • Run Black by @ewels in #499
  • Browser upload - warning text, cli command by @ewels in #497
  • Add a 404 template by @ewels in #496
  • Dark mode + footer by @ewels in #500
  • Homepage tweaks by @ewels in #505
  • size columns in db changed by @inaod568 in #507
  • Dark tweaks by @ewels in #508
  • Fix the *-light colours in dark mode by @ewels in #516
  • Use offical docker actions instead (also fix build) by @talavis in #511
  • Another attempt to fix the docker build by @talavis in #517
  • Updated API response to return project size by @ErikDanielsson in #520
  • Invoicing setup by @inaod568 in #513
  • Scheduled file deletion by @inaod568 in #526
  • Deactivating features by @inaod568 in #535
  • added description about the public_project_id not completely working by @inaod568 in #536
  • Db idchanges andinit by @inaod568 in #540
  • Revert "Db idchanges andinit" by @inaod568 in #542
  • Revert "Revert "Db idchanges andinit"" by @inaod568 in #543
  • func.binary removed from some db queries due to errors and safespring… by @inaod568 in #545
  • Update old keyword argument to fix project creation by @ErikDanielsson in #546
  • Profile page by @pericsson in #523
  • Replace deprecated function call with new one by @ErikDanielsson in #547
  • #544 cleaned up unused imports and code pieces from two files in the api by @worukan in #553
  • Logging to action file and exceptions by @inaod568 in #554
  • Cleanup docker (fixes #558) by @alneberg in #559
  • Config fix by @alneberg in #562
  • Create codeql-analysis.yml by @inaod568 in #528
  • Revert "Config fix" by @inaod568 in #563
  • Minimal setup for the new authentication which supports both basic an… by @worukan in #565
  • Config cleanup (by Johannes) by @inaod568 in #564
  • Cleanout web WIP/Suggestion by @alneberg in #566
  • Cleanup unused by @inaod568 in #567
  • integrity error fixed and cleanup by @inaod568 in #568
  • Increase field lengths for project title, file name and file subpath in database by @aanil in #573
  • Flask command Init-dev-db by @alneberg in #572
  • Revert "Flask command Init-dev-db" by @inaod568 in #576
  • Factory all the way by @alneberg in #575
  • Remove project auth endpoint, Hand the project to apis3connector and … by @worukan in #579
  • Automatic testing with docker-compose and github actions by @alneberg in #590
  • Adding instruction for running pdb inside docker to readme by @alneberg in #591
  • Facility to unit by @inaod568 in #592
  • Removed permissions string from the User model and its usages by @worukan in #595
  • Updated test data to new model by @alneberg in #597
  • Moving the schedulers to init by @MatthiasZepper in #589
  • Er diagram alterations by @inaod568 in #598
  • Include validators in marshmallows.py by @MatthiasZepper in #605
  • Tiny readme fix by @alneberg in #607
  • Fix scheduler issue with Johannes by @MatthiasZepper in #608
  • Add create_proj api endpoint by @aanil in #606
  • Small touches to the code related to roles. by @worukan in #614
  • fixed decryption error by @inaod568 in #621
  • Add tests for CreateProject by @aanil in #620
  • Replace pyjwt dependency with jwcrypto and user dict-key with sub in the token by @worukan in #624
  • Add senstive Column to project by @aanil in #625
  • User inheritance and roles by @inaod568 in #627
  • Match more than 1 level of subdirectories by @aanil in #633
  • Implement Unittests for API calls (Issue #602) by @MatthiasZepper in #626
  • API endpoint for listing project users by @aanil in #635
  • Create API endpoints for inviting users to the DDS by @inaod568 in #571
  • Username bug by @inaod568 in #640
  • Encrypt the existing signed token by @worukan in #631
  • Fix foreign keys and relationships by @inaod568 in #642
  • Remove public_id column from File and ExpiredFile by @inaod568 in #643
  • removed flaky test assert by @worukan in #649
  • Improving invite email msg by @alneberg in #652
  • Fix project usage by @alneberg in #655
  • Fix the display of Usage and Cost columns by @MatthiasZepper in #666
  • Refactor NewFile post by @inaod568 in #665
  • Add option to associate user to project with add user and project create by @aanil in #664
  • Update code to reflect previous refactoring by @aanil in #670
  • Move marshmallows to schema folder by @inaod568 in #669
  • Remove Project.size by @inaod568 in #672
  • Catch raised exception during user association by @aanil in #677
  • Salt length harmonisation to 32 for expired files by @aanil in #679
  • Fixed the faulty GBhours calculation by @MatthiasZepper in #687
  • Issue#654: Make sure time_deleted is set on all versions of a file by @MatthiasZepper in #690
  • project key generation updated by @inaod568 in #692
  • Encrypted token and authentication tests by @alneberg in #696
  • Move verify password by @inaod568 in #704
  • Use basic authentication only for the token endpoint and token authentication for the rest by @aanil in #694
  • Incorporating minor code improvements suggested by CodeQL by @MatthiasZepper in #691
  • Make db queries consistent by @inaod568 in #708
  • removed suffix line by @inaod568 in #709
  • For pytest colours by @ewels in #711
  • Got flask.flash to work for 2 factor page by @alneberg in #713
  • Added a custom HTML page that will be shown for already registered users by @MatthiasZepper in #714
  • Fix implement 2fa by @inaod568 in #718
  • Change in s3 info retrieval by @inaod568 in #716
  • First step in creating a project status framework by @aanil in #717
  • Password reset by @inaod568 in #722
  • Add more statuses by @aanil in #723
  • Fix foreign key constraints by @inaod568 in #726
  • Minor updates and fixes to statuses by @aanil in #728
  • project.current_status instead of just current_status by @inaod568 in #734
  • Factories to create larger test datasets by @alneberg in #733
  • small error, should not be not by @inaod568 in #736
  • Remove expiredfiles by @inaod568 in #732
  • Mock for boto3 by @alneberg in #737
  • Replace boto with signedurl by @inaod568 in #727
  • moved createprojectschema by @inaod568 in #739
  • Request Limiter for web by @alneberg in #743
  • Possible to change password using the current password by @alneberg in #744
  • Deleting data and files while archiving and deleting projects by @aanil in #741
  • Invite tweaks by @alneberg in #747
  • added dds safespring project again, dont want to remove from database… by @inaod568 in #749
  • Issue703: Delete user endpoint by @MatthiasZepper in #725
  • Issue703: Change from post to delete requests in the User deletion endpoints. by @MatthiasZepper in #753
  • Delete user tests with web login by @alneberg in #751
  • Fix constraints tests by @alneberg in #757
  • Add new endpoint to remove an associated user from a project by @aanil in #748
  • Preliminary look at automatic capture of update time and updater on Project by @aanil in #758
  • Fix constraints by @inaod568 in #750
  • Removes expires field from Files by @aanil in #760
  • Add public REST Endpoint for listing roles and permissions by @aanil in #761
  • fix invite role bug by @inaod568 in #762
  • Validation for username in schema same as in form by @alneberg in #763
  • Remove timezone info and convert all date instances to UTC by @aanil in #765
  • Return deadline if it exists when getting project status by @aanil in #766
  • Retry if sending invite fails by @aanil in #768
  • Issue 686 - Introduce Structured Logging by @MatthiasZepper in #771
  • Issue 755: Message on login page by @MatthiasZepper in #777
  • Bugfix for Issue 223 of the CLI by @MatthiasZepper in #778
  • Use MAIL_DEFAULT_SENDER instead of MAIL_SENDER and MAIL_SENDER_ADDRESS by @talavis in #780
  • Fix errors by @talavis in #781
  • Add User activation endpoint by @aanil in #784
  • Hotp mail by @alneberg in #775
  • Remove pandas by @talavis in #802
  • Clean up/update modules in requirements.txt by @talavis in #797
  • added projectkeys table from volkans PR by @inaod568 in #803
  • create new project with temporary keys etc by @inaod568 in #806
  • engine dispose for tests by @alneberg in #807
  • Remove unused config values and folder binds by @talavis in #808
  • asymmetric user keys by @worukan in #811
  • Add redis for caching by @talavis in #810
  • Blocks for generating user and project keys securely by @worukan in #815
  • Add config value for argon memory cost by @talavis in #824
  • Slight refactoring by @inaod568 in #816
  • Add encryption to mariadb by @talavis in #823
  • Add back accidently removed old solution to check download eligibility by @aanil in #833
  • Dump restore by @talavis in #834
  • Send email to researchuser when project is released by @aanil in #814
  • Add coverage check to tests by @talavis in #838
  • Deleting a user deletes the associated project keys with the user by @worukan in #839
  • Badges by @inaod568 in #843
  • Web session valid for one hour by @inaod568 in #840
  • Invite with encrypted token and test-TKEK by @alneberg in #827
  • Update readme by @inaod568 in #847
  • Add new line so that the token is clearly displayed by @aanil in #848
  • File listing test by @talavis in #850
  • Trying to add a codecov config file by @alneberg in #852
  • Delete user keys too when Deleting/Archiving project by @aanil in #853
  • Removing a user from a project removes the associated project keys with the user by @worukan in #854
  • Session instead of cookie by @alneberg in #849
  • Change in project ID by @inaod568 in #856
  • Add more tests for user by @aanil in #859
  • added -y by @inaod568 in #867
  • create super admin by @inaod568 in #870
  • Add tests for file upload by @aanil in #865
  • a researcher (non-project owner) should not be able to invite someone… by @worukan in #863
  • Embeds the tokens lifetime as isodate encoded timedelta by @MatthiasZepper in #790
  • changelog added by @inaod568 in #871
  • key generation for invite by @worukan in #855
  • Moved functions from db connector by @inaod568 in #861
  • Add tests for cases in upload, delete, list files by @aanil in #873
  • Fix weird fail by @inaod568 in #875
  • Revert invite error by @alneberg in #879
  • Add docstrings by @inaod568 in #881
  • Add a template for pull requests by @talavis in #894
  • Key derivation by @worukan in #889
  • Issue860 invites multiple projects by @MatthiasZepper in #888
  • Log rotation by @talavis in #897
  • Fix bugs in projects.py and add tests by @aanil in #899
  • Web tests, login, change password by @worukan in #900
  • ProjectAccess endpoint by @inaod568 in #885
  • Reset password by @alneberg in #891
  • Reactivate project access by @inaod568 in #886
  • Add isactive check to reset by @inaod568 in #903
  • Database migrations by @talavis in #890
  • Ignore development folder by @talavis in #906
  • Catch exceptions for invalid token by @talavis in #909
  • Added test for flow from invite to access of project private by @alneberg in #912
  • Invite researchers to projects by @inaod568 in #911
  • Change non sensitive by @inaod568 in #913
  • Add tests for download endpoints by @aanil in #918
  • Final tests for successful invite scenarios by @alneberg in #919
  • Rearrangement and clean up of the token by @worukan in #910
  • Change regex to raw string by @talavis in #929
  • Remove intro text, add newlines in pr template by @talavis in #930
  • Add landing page after password reset by @aanil in #931
  • Fix empty requests by @inaod568 in #925
  • Issue924 no mail flag by @MatthiasZepper in #926
  • Add endpoint for healthcheck by @talavis in #933
  • create new superadmin by @inaod568 in #935
  • Pre-testing version 2022-02-24 by @inaod568 in #937
  • fix for creating unit admin by @inaod568 in #938
  • Bug fixes and Super admin to add unit admins by @inaod568 in #940
  • Add an ADR-ish (Architecture Decision Record) by @inaod568 in #942
  • add link to pdf by @inaod568 in #941
  • Add support for getting the correct ip when behind a reverse proxy by @talavis in #952
  • Reverse proxy by @inaod568 in #953
  • ADR update by @inaod568 in #960
  • Relax username requirements a little by @ewels in #943
  • Action log entry for uncaught exceptions. by @MatthiasZepper in #958
  • Fix mailing note by @talavis in #963
  • Fix command in templates to be immediately usable by @aanil in #969
  • Move project creation commit from schema to the api endpoint by @talavis in #967
  • Bugs fixed by @inaod568 in #971
  • Increase security for session cookie by @talavis in #972
  • Return role when listing project users by @aanil in #974
  • Show roles when listing users by @inaod568 in #982
  • Fix format of self deletion email by @aanil in #984
  • Fix email message bug and fix project public_id None by @inaod568 in #981
  • Custom registration form error messages by @inaod568 in #975
  • After password reset: Only list projects when not superadmin by @inaod568 in #987
  • Add check for if superadmin for delete email by @inaod568 in #991
  • Fix formatting and error messages by @inaod568 in #989
  • Simplify setting up dev environment by @talavis in #993
  • Run pip install before injecting into the container by @talavis in #994
  • WIP: Start bringing back the front-end by @ewels in #916
  • Prettier code by @ewels in #1010
  • Frontend to backend image by @talavis in #1011
  • The frontend is back and there's a no-config dev setup by @inaod568 in #1009
  • Correct response when email validation fails during project creation by @talavis in #1014
  • Fix the dark mode switch behaviour by @ewels in #1013
  • Forbid superadmin from creating project by @inaod568 in #1016
  • Delete bucket by @inaod568 in #1017
  • Issue1007 input validation by @MatthiasZepper in #1021
  • change delete_folder regex by @inaod568 in #1019
  • Fix regex for file rm/ls by @talavis in #1029
  • Rewite login page to use component, nicer HTML styling. by @ewels in #1020
  • Size column by @zishanmirza in #1023
  • clarify in user activation by @inaod568 in #1026
  • AddUser: Specific error message for unit users by @MatthiasZepper in #1039
  • Improve messages, hide size from Researchers, disallow characters and fix regex by @inaod568 in #1041
  • Rate limit: Error message by @zishanmirza in #1034
  • Code cleanup by @talavis in #1043
  • Catch KeyNotFoundError by @inaod568 in #1045
  • Add new endpoint for listing unit users by @inaod568 in #1050
  • make hotp invalid after password reset by @inaod568 in #1054
  • Fix crash when uploading by @inaod568 in #1055
  • Return info on if user has access to project by @inaod568 in #1049
  • List unit users as Super Admin by @inaod568 in #1059
  • Get unit info as Super Admin by @inaod568 in #1060
  • Update text by @zishanmirza in #1062
  • Fix deadline option by @inaod568 in #1063
  • Require 2 unit admins and recommend 3 by @inaod568 in #1066
  • Change list files to return int instead of str by @inaod568 in #1070
  • Changed the token expiration to 7 days by @inaod568 in #1061
  • Batch deleting of 1000 entries at a time by @talavis in #1067
  • Password reset tracking by @inaod568 in #1058
  • Update text by @zishanmirza in #1072
  • update adr by @inaod568 in #1073
  • Restrict super admin access by @inaod568 in #1074
  • Flask command to create new unit by @inaod568 in #1076
  • Add check to delete user by @inaod568 in #1075
  • Catch unexpected sql errors by @inaod568 in #1077
  • Validation by @zishanmirza in #1079
  • add validation in schema for description by @inaod568 in #1080
  • remove try except because not working by @inaod568 in #1081
  • Add flask command for uploading file upload error log by @aanil in #1078
  • fix bug in flask command by @inaod568 in #1085
  • Remove banner on the homepage about testing by @ewels in #1087
  • Change 'the user does not' to 'you do not' (tester feedback) by @inaod568 in #1088
  • Add docs link to top navbar by @ewels in #1090
  • Add catch of OperationalError in files.py by @inaod568 in #1089
  • Catch operationalerror in s3.py by @inaod568 in #1092
  • Validation by @zishanmirza in #1084
  • Catch sqlalchemy.exc.OperationalError in user by @aanil in #1094
  • trying to catch sqlalchemy.exc.OperationalError at project status change by @valyo in #1086
  • add operational error by @inaod568 in #1093
  • Add last operationalerror to dds_decorators by @inaod568 in #1095
  • Better front-end styling for 2fa confirm page by @ewels in #1096
  • Styled several forms - password reset etc. by @ewels in #1101
  • Add Gitpod by @ewels in #1097
  • Minor style improvements to 2fa email by @ewels in #1102
  • Tidy user profile page by @ewels in #1103
  • List-projects by @ewels in #1104
  • Remove the Gitlens extension from gitpod by @ewels in #1111
  • Add link to installation docs by @ewels in #1112
  • Migrations without model by @alneberg in #1040
  • Project Access Reset and Send Email by @zishanmirza in #1110
  • Flask-Apscheduler by @inaod568 in #1109
  • Bump minimist from 1.2.5 to 1.2.6 in /dds_web/static by @dependabot in #1114
  • Fix bug which crashes after unanswered invite added to new project by @inaod568 in #1117
  • Prep before production by @inaod568 in #1082

New Contributors

Full Changelog: v0.2.0...v1.0.0