github.com/cs3org/reva/v2@v2.27.7/CHANGELOG.md (about) 1 Changelog for reva 2.27.7 (2025-02-28) 2 ======================================= 3 4 The following sections list the changes in reva 2.27.7 relevant to 5 reva users. The changes are ordered by importance. 6 7 Summary 8 ------- 9 10 * Fix #5100: Fix the OCM role editor 11 * Enh #5101: Fix ocm auth manager 12 13 Details 14 ------- 15 16 * Bugfix #5100: Fix the OCM role editor 17 18 Fix the OCM role editor permission set. The redundant permissions have been removed. 19 20 https://github.com/owncloud/ocis/issues/11054 21 https://github.com/cs3org/reva/pull/5100 22 23 * Enhancement #5101: Fix ocm auth manager 24 25 OCM auth manager had the Gatewayselector caching issue 26 27 https://github.com/cs3org/reva/pull/5101 28 29 Changelog for reva 2.27.6 (2025-02-25) 30 ======================================= 31 32 The following sections list the changes in reva 2.27.6 relevant to 33 reva users. The changes are ordered by importance. 34 35 Summary 36 ------- 37 38 * Fix #5096: Fix update grants for the OCM share 39 40 Details 41 ------- 42 43 * Bugfix #5096: Fix update grants for the OCM share 44 45 Fix update grants for the OCM share 46 47 https://github.com/owncloud/ocis/issues/11022 48 https://github.com/cs3org/reva/pull/5096 49 50 Changelog for reva 2.27.5 (2025-02-24) 51 ======================================= 52 53 The following sections list the changes in reva 2.27.5 relevant to 54 reva users. The changes are ordered by importance. 55 56 Summary 57 ------- 58 59 * Fix #5093: Fix OCM create share 60 * Fix #5077: Deny Users invite themselves to their own federated connection 61 * Fix #5071: Role conversion 62 * Enh #5075: Add the ocm notification handler 63 * Enh #5083: Add the ocm notification ShareChangePermission 64 * Enh #5063: Add roles 65 66 Details 67 ------- 68 69 * Bugfix #5093: Fix OCM create share 70 71 We fixed the OCM share fails on share creating if the federated instance is not reachable. 72 73 https://github.com/owncloud/ocis/issues/11046 74 https://github.com/cs3org/reva/pull/5093 75 76 * Bugfix #5077: Deny Users invite themselves to their own federated connection 77 78 Deny Users invite themselves to their own federated connection 79 80 https://github.com/cs3org/reva/pull/5077 81 82 * Bugfix #5071: Role conversion 83 84 Fix role from resource permission conversion 85 86 https://github.com/cs3org/reva/pull/5071 87 88 * Enhancement #5075: Add the ocm notification handler 89 90 Added the ocm notification handler that allows receiving a notification from a remote party 91 about changes to a previously known entity. 92 93 https://github.com/cs3org/reva/pull/5075 94 95 * Enhancement #5083: Add the ocm notification ShareChangePermission 96 97 Added the ocm notification ShareChangePermission that allows to synchronize the 98 permissions of a share between the federated instances. 99 100 https://github.com/cs3org/reva/pull/5083 101 102 * Enhancement #5063: Add roles 103 104 Add EditorListGrantsWithVersions and FileEditorListGrantsWithVersions roles. 105 106 https://github.com/owncloud/ocis/issues/10747 107 https://github.com/cs3org/reva/pull/5063 108 109 Changelog for reva 2.27.4 (2025-02-03) 110 ======================================= 111 112 The following sections list the changes in reva 2.27.4 relevant to 113 reva users. The changes are ordered by importance. 114 115 Summary 116 ------- 117 118 * Fix #5061: OCM Wildcards 119 * Fix #5055: Fix view&download permission issue 120 121 Details 122 ------- 123 124 * Bugfix #5061: OCM Wildcards 125 126 Fix using ocm wildcards. Do not overwrite cached provider with actual value 127 128 https://github.com/cs3org/reva/pull/5061 129 130 * Bugfix #5055: Fix view&download permission issue 131 132 When opening files with view&download permission (aka read), the appprovider would falsely 133 issue a secureview token. This is fixed now. 134 135 https://github.com/cs3org/reva/pull/5055 136 137 Changelog for reva 2.27.3 (2025-01-27) 138 ======================================= 139 140 The following sections list the changes in reva 2.27.3 relevant to 141 reva users. The changes are ordered by importance. 142 143 Summary 144 ------- 145 146 * Fix #5042: Fix ocis dependency 147 * Enh #5051: Emit SpaceMembershipExpired event 148 149 Details 150 ------- 151 152 * Bugfix #5042: Fix ocis dependency 153 154 Fix the ocm gateway connection pool. Fix ocis dependency in the reva go.mod file. Bump the ocis 155 version accordingly to the major version. 156 157 https://github.com/owncloud/ocis/issues/10846 158 https://github.com/owncloud/ocis/issues/10878 159 https://github.com/cs3org/reva/pull/5042 160 161 * Enhancement #5051: Emit SpaceMembershipExpired event 162 163 https://github.com/owncloud/ocis/issues/10919 164 https://github.com/cs3org/reva/pull/5051 165 166 Changelog for reva 2.27.2 (2025-01-17) 167 ======================================= 168 169 The following sections list the changes in reva 2.27.2 relevant to 170 reva users. The changes are ordered by importance. 171 172 Summary 173 ------- 174 175 * Fix #5043: Fix SpaceMembershipExpired unmarshal 176 177 Details 178 ------- 179 180 * Bugfix #5043: Fix SpaceMembershipExpired unmarshal 181 182 SpaceMembershipExpired events can now be unmarshalled correctly 183 184 https://github.com/cs3org/reva/pull/5043 185 186 Changelog for reva 2.27.1 (2025-01-09) 187 ======================================= 188 189 The following sections list the changes in reva 2.27.1 relevant to 190 reva users. The changes are ordered by importance. 191 192 Summary 193 ------- 194 195 * Fix #5033: Fix ocm wildcards 196 * Fix #5031: Allow to accepted invite after it was once deleted 197 * Fix #5026: Delete Blobs when Space is deleted 198 * Enh #5025: Allow wildcards in OCM domains 199 * Enh #5023: Notification feature toggle 200 * Enh #4990: Allow locking via ocm 201 * Enh #5032: Add SendEmailsEvent 202 203 Details 204 ------- 205 206 * Bugfix #5033: Fix ocm wildcards 207 208 Ocm wildcards were not working properly. We now overwrite the wildcard values with the actual 209 domain. 210 211 https://github.com/cs3org/reva/pull/5033 212 213 * Bugfix #5031: Allow to accepted invite after it was once deleted 214 215 Allowed to accepted invite even after it was once deleted on the invite receiver or invite 216 creation side. 217 218 https://github.com/owncloud/ocis/issues/10813 219 https://github.com/cs3org/reva/pull/5031 220 221 * Bugfix #5026: Delete Blobs when Space is deleted 222 223 Delete all blobs of a space when the space is deleted. 224 225 https://github.com/cs3org/reva/pull/5026 226 227 * Enhancement #5025: Allow wildcards in OCM domains 228 229 When verifiying domains, allow wildcards in the domain name. This will not work when using 230 `verify-request-hostname` 231 232 https://github.com/cs3org/reva/pull/5025 233 234 * Enhancement #5023: Notification feature toggle 235 236 Adds a feature toggle for the notification settings. 237 238 https://github.com/cs3org/reva/pull/5023 239 240 * Enhancement #4990: Allow locking via ocm 241 242 Implement locking endpoints so files can be locked and unlocked via ocm. 243 244 https://github.com/cs3org/reva/pull/4990 245 246 * Enhancement #5032: Add SendEmailsEvent 247 248 Adds SendEmailsEvent that is used to trigger the sending of group emails. 249 250 https://github.com/cs3org/reva/pull/5032 251 252 Changelog for reva 2.27.0 (2024-12-12) 253 ======================================= 254 255 The following sections list the changes in reva 2.27.0 relevant to 256 reva users. The changes are ordered by importance. 257 258 Summary 259 ------- 260 261 * Fix #4985: Drop unneeded session locks 262 * Fix #5000: Fix ceph build 263 * Fix #4989: Deleting OCM share also updates storageprovider 264 * Fix #4996: Get rid of some cases of unstructured logging 265 * Enh #4998: Emit event when an ocm share is received 266 267 Details 268 ------- 269 270 * Bugfix #4985: Drop unneeded session locks 271 272 We no longer lock session metadada files, as they are already written atomically. 273 274 https://github.com/cs3org/reva/pull/4985 275 276 * Bugfix #5000: Fix ceph build 277 278 https://github.com/cs3org/reva/pull/5000 279 280 * Bugfix #4989: Deleting OCM share also updates storageprovider 281 282 When remvoving an OCM share we're now also removing the related grant from the storage 283 provider. 284 285 https://github.com/owncloud/ocis/issues/10262 286 https://github.com/cs3org/reva/pull/4989 287 288 * Bugfix #4996: Get rid of some cases of unstructured logging 289 290 https://github.com/cs3org/reva/pull/4996 291 292 * Enhancement #4998: Emit event when an ocm share is received 293 294 https://github.com/owncloud/ocis/issues/10718 295 https://github.com/cs3org/reva/pull/4998 296 297 Changelog for reva 2.26.8 (2024-12-04) 298 ======================================= 299 300 The following sections list the changes in reva 2.26.8 relevant to 301 reva users. The changes are ordered by importance. 302 303 Summary 304 ------- 305 306 * Fix #4983: Delete stale shares in the jsoncs3 share manager 307 * Fix #4963: Fix name and displayName in an ocm 308 * Fix #4968: Jsoncs3 cache fixes 309 * Fix #4928: Propagate lock in PROPPATCH 310 * Fix #4971: Use manager to list shares 311 * Enh #4978: We added more trace spans in decomposedfs 312 * Enh #4921: Polish propagation related code 313 314 Details 315 ------- 316 317 * Bugfix #4983: Delete stale shares in the jsoncs3 share manager 318 319 The jsoncs3 share manager now properly deletes all references to removed shares and shares 320 that belong to a space that was deleted 321 322 https://github.com/cs3org/reva/pull/4983 323 https://github.com/cs3org/reva/pull/4975 324 325 * Bugfix #4963: Fix name and displayName in an ocm 326 327 Fixed name and displayName in an ocm PROPFIND response 328 329 https://github.com/owncloud/ocis/issues/10582 330 https://github.com/cs3org/reva/pull/4963 331 332 * Bugfix #4968: Jsoncs3 cache fixes 333 334 The jsoncs3 share manager now retries persisting if the file already existed and picks up the 335 etag of the upload response in all cases. 336 337 https://github.com/cs3org/reva/pull/4968 338 https://github.com/cs3org/reva/pull/4532 339 340 * Bugfix #4928: Propagate lock in PROPPATCH 341 342 Clients using locking (ie. Windows) could not create/copy files over webdav as file seemed to 343 be locked. 344 345 https://github.com/cs3org/reva/pull/4928 346 347 * Bugfix #4971: Use manager to list shares 348 349 When updating a received share the usershareprovider now uses the share manager directly to 350 list received shares instead of going through the gateway again. 351 352 https://github.com/cs3org/reva/pull/4971 353 354 * Enhancement #4978: We added more trace spans in decomposedfs 355 356 https://github.com/cs3org/reva/pull/4978 357 358 * Enhancement #4921: Polish propagation related code 359 360 We polished some corner cases for propagation that reduce log messages in normal operation. 361 362 https://github.com/cs3org/reva/pull/4921 363 364 Changelog for reva 2.26.7 (2024-11-20) 365 ======================================= 366 367 The following sections list the changes in reva 2.26.7 relevant to 368 reva users. The changes are ordered by importance. 369 370 Summary 371 ------- 372 373 * Fix #4964: Fix a wrong error code when approvider creates a new file 374 375 Details 376 ------- 377 378 * Bugfix #4964: Fix a wrong error code when approvider creates a new file 379 380 We fixed a problem where the approvider would return a 500 error instead of 403 when trying to 381 create a new file in a read-only share. 382 383 https://github.com/cs3org/reva/pull/4964 384 385 Changelog for reva 2.26.6 (2024-11-19) 386 ======================================= 387 388 The following sections list the changes in reva 2.26.6 relevant to 389 reva users. The changes are ordered by importance. 390 391 Summary 392 ------- 393 394 * Fix #4955: Allow small clock skew in reva token validation 395 * Fix #4929: Fix flaky posixfs integration tests 396 * Fix #4953: Avoid gateway panics 397 * Fix #4959: Fix missing file touched event 398 * Fix #4933: Fix federated sharing when using an external identity provider 399 * Fix #4956: Improve posixfs error handling and logging 400 * Fix #4935: Enable datatx log 401 * Fix #4936: Do not delete mlock files 402 * Fix #4951: Pass the initialized logger down the stack 403 * Fix #4954: Prevent a panic when logging an error 404 405 Details 406 ------- 407 408 * Bugfix #4955: Allow small clock skew in reva token validation 409 410 Allow for a small clock skew (3 seconds by default) when validating reva tokens as the different 411 services might be running on different machines. 412 413 https://github.com/cs3org/reva/issues/4952 414 https://github.com/cs3org/reva/pull/4955 415 416 * Bugfix #4929: Fix flaky posixfs integration tests 417 418 We fixed a problem with the posixfs integration tests where the in-memory id cache sometimes 419 hadn't caught up with the cleanup between test runs leading to flaky failures. 420 421 https://github.com/cs3org/reva/pull/4929 422 423 * Bugfix #4953: Avoid gateway panics 424 425 The gateway would panic if there is a missing user in the context. Now it errors instead. 426 427 https://github.com/cs3org/reva/issues/4953 428 429 * Bugfix #4959: Fix missing file touched event 430 431 We have fixed an issue where the `file touched` event was not being triggered when an office 432 document was created. 433 434 https://github.com/owncloud/ocis/issues/8950 435 https://github.com/cs3org/reva/pull/4959 436 437 * Bugfix #4933: Fix federated sharing when using an external identity provider 438 439 We fixes and issue that caused federated sharing to fail when the identity provider url did not 440 match the federation provider url. 441 442 https://github.com/cs3org/reva/pull/4933 443 444 * Bugfix #4956: Improve posixfs error handling and logging 445 446 We improved error handling and logging in the posixfs storage driver. 447 448 https://github.com/cs3org/reva/pull/4956 449 450 * Bugfix #4935: Enable datatx log 451 452 We now pass a properly initialized logger to the datatx implementations, allowing the tus 453 handler to log with the same level as the rest of reva. 454 455 https://github.com/cs3org/reva/pull/4935 456 457 * Bugfix #4936: Do not delete mlock files 458 459 To prevent stale NFS file handles we no longer delete empty mlock files after updating the 460 metadata. 461 462 https://github.com/cs3org/reva/pull/4936 463 https://github.com/cs3org/reva/pull/4924 464 465 * Bugfix #4951: Pass the initialized logger down the stack 466 467 We now make the initialized logger available to grpc services and storage drivers, which 468 allows for easier and more uniform logging. 469 470 https://github.com/cs3org/reva/pull/4951 471 472 * Bugfix #4954: Prevent a panic when logging an error 473 474 We fixed a panic when constructing a path failed to get the parent for a node. 475 476 https://github.com/cs3org/reva/pull/4954 477 478 Changelog for reva 2.26.5 (2024-11-12) 479 ======================================= 480 481 The following sections list the changes in reva 2.26.5 relevant to 482 reva users. The changes are ordered by importance. 483 484 Summary 485 ------- 486 487 * Fix #4926: Make etag always match content on downloads 488 * Fix #4920: Return correct status codes for simple uploads 489 * Fix #4924: Fix sync propagation 490 * Fix #4916: Improve posixfs stability and performance 491 492 Details 493 ------- 494 495 * Bugfix #4926: Make etag always match content on downloads 496 497 We added an openReaderfunc to the Download interface to give drivers a way to guarantee that the 498 reader matches the etag returned in a previous GetMD call. 499 500 https://github.com/cs3org/reva/pull/4926 501 https://github.com/cs3org/reva/pull/4923 502 503 * Bugfix #4920: Return correct status codes for simple uploads 504 505 Decomposedfs now returns the correct precondition failed status code when the etag does not 506 match. This allows the jsoncs3 share managers optimistic locking to handle concurrent writes 507 correctly 508 509 https://github.com/cs3org/reva/pull/4920 510 511 * Bugfix #4924: Fix sync propagation 512 513 Fixes the defers in the sync propagation. 514 515 https://github.com/cs3org/reva/pull/4924 516 517 * Bugfix #4916: Improve posixfs stability and performance 518 519 The posixfs storage driver saw a number of bugfixes and optimizations. 520 521 https://github.com/cs3org/reva/pull/4916 522 523 Changelog for reva 2.26.4 (2024-11-07) 524 ======================================= 525 526 The following sections list the changes in reva 2.26.4 relevant to 527 reva users. The changes are ordered by importance. 528 529 Summary 530 ------- 531 532 * Fix #4917: Fix 0-byte file uploads 533 * Fix #4918: Fix app templates 534 535 Details 536 ------- 537 538 * Bugfix #4917: Fix 0-byte file uploads 539 540 We fixed an issue where 0-byte files upload did not return the Location header. 541 542 https://github.com/owncloud/ocis/issues/10469 543 https://github.com/cs3org/reva/pull/4917 544 545 * Bugfix #4918: Fix app templates 546 547 We fixed the app templates by using the product name of the providerinfo instead of the provider 548 name. 549 550 https://github.com/cs3org/reva/pull/4918 551 552 Changelog for reva 2.26.3 (2024-11-06) 553 ======================================= 554 555 The following sections list the changes in reva 2.26.3 relevant to 556 reva users. The changes are ordered by importance. 557 558 Summary 559 ------- 560 561 * Fix #4908: Add checksum to OCM storageprovider responses 562 * Enh #4910: Bump cs3api 563 * Enh #4909: Bump cs3api 564 * Enh #4906: Bump cs3api 565 566 Details 567 ------- 568 569 * Bugfix #4908: Add checksum to OCM storageprovider responses 570 571 When the remote instance of the OCM storage provider returns file checksums in its PROPFIND 572 responses we're now passing them through to in Stat responses. This allows e.g. the oCIS 573 thumbnailer to work with ocm shares. 574 575 https://github.com/owncloud/ocis/issues/10272 576 https://github.com/cs3org/reva/pull/4908 577 578 * Enhancement #4910: Bump cs3api 579 580 https://github.com/cs3org/reva/pull/4910 581 582 * Enhancement #4909: Bump cs3api 583 584 https://github.com/cs3org/reva/pull/4909 585 586 * Enhancement #4906: Bump cs3api 587 588 https://github.com/cs3org/reva/pull/4906 589 590 Changelog for reva 2.26.2 (2024-10-28) 591 ======================================= 592 593 The following sections list the changes in reva 2.26.2 relevant to 594 reva users. The changes are ordered by importance. 595 596 Summary 597 ------- 598 599 * Fix #4902: Fix quota calculation 600 601 Details 602 ------- 603 604 * Bugfix #4902: Fix quota calculation 605 606 Quota would show "exceeded" when remaining quota was 0 because total was 0. 607 608 https://github.com/cs3org/reva/pull/4902 609 610 Changelog for reva 2.26.1 (2024-10-25) 611 ======================================= 612 613 The following sections list the changes in reva 2.26.1 relevant to 614 reva users. The changes are ordered by importance. 615 616 Summary 617 ------- 618 619 * Enh #4897: Fix remaining quota calculation 620 621 Details 622 ------- 623 624 * Enhancement #4897: Fix remaining quota calculation 625 626 Remaining quota should only be total - used and not take disk space into account. 627 628 https://github.com/cs3org/reva/pull/4897 629 630 Changelog for reva 2.26.0 (2024-10-21) 631 ======================================= 632 633 The following sections list the changes in reva 2.26.0 relevant to 634 reva users. The changes are ordered by importance. 635 636 Summary 637 ------- 638 639 * Fix #4880: Kept historical resource naming in activity 640 * Fix #4874: Fix rename activity 641 * Fix #4881: Log levels 642 * Fix #4884: Fix OCM upload crush 643 * Fix #4872: Return 409 conflict when a file was already created 644 * Fix #4887: Fix ShareCache concurrency panic 645 * Fix #4876: Fix share jail mountpoint parent id 646 * Fix #4879: Fix trash-bin propfind panic 647 * Fix #4888: Fix upload session bugs 648 * Fix #4560: Always select next before making CS3 calls for propfinds 649 * Enh #4893: Bump dependencies and go to 1.22.8 650 * Enh #4890: Bump golangci-lint to 1.61.0 651 * Enh #4886: Add new Mimetype ggp 652 * Enh #4809: Implement OCM well-known endpoint 653 * Enh #4889: Improve posixfs stability and performance 654 * Enh #4882: Indicate template conversion capabilties on apps 655 656 Details 657 ------- 658 659 * Bugfix #4880: Kept historical resource naming in activity 660 661 Kept historical resource naming after renaming in activity for shares and public links. 662 663 https://github.com/owncloud/ocis/issues/10210 664 https://github.com/cs3org/reva/pull/4880 665 666 * Bugfix #4874: Fix rename activity 667 668 We fixed the activity when file with file-id gives move activity instead of rename. 669 670 https://github.com/owncloud/ocis/issues/9744 671 https://github.com/cs3org/reva/pull/4874 672 673 * Bugfix #4881: Log levels 674 675 We changed the following log levels: 676 677 - `ERROR` to `DEBUG` in `internal/grpc/services/usershareprovider` when getting received 678 shares 679 680 https://github.com/cs3org/reva/pull/4881 681 682 * Bugfix #4884: Fix OCM upload crush 683 684 We fixed an issue where a federated instance crashed when uploading a file to a remote folder. 685 Fixed the cleanup blob and meta of the uploaded files. 686 687 https://github.com/cs3org/reva/pull/4884 688 689 * Bugfix #4872: Return 409 conflict when a file was already created 690 691 We now return the correct 409 conflict status code when a file was already created by another 692 upload. 693 694 https://github.com/cs3org/reva/pull/4872 695 696 * Bugfix #4887: Fix ShareCache concurrency panic 697 698 We fixed an issue where concurrently read and write operations led to a panic in the ShareCache. 699 700 https://github.com/cs3org/reva/pull/4887 701 702 * Bugfix #4876: Fix share jail mountpoint parent id 703 704 Stating a share jail mountpoint now returns the share jail root as the parent id. 705 706 https://github.com/owncloud/ocis/issues/9933 707 https://github.com/cs3org/reva/pull/4876 708 709 * Bugfix #4879: Fix trash-bin propfind panic 710 711 We fixed an issue where a trash-bin `propfind` request panicked due to a failed and therefore 712 `nil` resource reference lookup. 713 714 https://github.com/cs3org/reva/pull/4879 715 716 * Bugfix #4888: Fix upload session bugs 717 718 We fixed an issue that caused a panic when we could not open a file to calculate checksums. 719 Furthermore, we now delete the upload session .lock file on cleanup. 720 721 https://github.com/cs3org/reva/pull/4888 722 723 * Bugfix #4560: Always select next before making CS3 calls for propfinds 724 725 We now select the next client more often to spread out load 726 727 https://github.com/cs3org/reva/pull/4560 728 729 * Enhancement #4893: Bump dependencies and go to 1.22.8 730 731 https://github.com/cs3org/reva/pull/4893 732 733 * Enhancement #4890: Bump golangci-lint to 1.61.0 734 735 https://github.com/cs3org/reva/pull/4890 736 737 * Enhancement #4886: Add new Mimetype ggp 738 739 Adds a new mimetype application/vnd.geogebra.pinboard (ggp) to the app-registry 740 741 https://github.com/cs3org/reva/pull/4886 742 743 * Enhancement #4809: Implement OCM well-known endpoint 744 745 The `wellknown` service now implements the `/.well-known/ocm` endpoint for OCM discovery. 746 The unused endpoints for openid connect and webfinger have been removed. This aligns the 747 wellknown implementation with the master branch. 748 749 https://github.com/cs3org/reva/pull/4809 750 751 * Enhancement #4889: Improve posixfs stability and performance 752 753 The posixfs storage driver saw a number of bugfixes and optimizations. 754 755 https://github.com/cs3org/reva/pull/4889 756 https://github.com/cs3org/reva/pull/4877 757 758 * Enhancement #4882: Indicate template conversion capabilties on apps 759 760 We added information to the available app providers to indicate which mimetypes can be used for 761 template conversion. 762 763 https://github.com/cs3org/reva/pull/4882 764 765 Changelog for reva 2.25.0 (2024-09-30) 766 ======================================= 767 768 The following sections list the changes in reva 2.25.0 relevant to 769 reva users. The changes are ordered by importance. 770 771 Summary 772 ------- 773 774 * Fix #4854: Added ShareUpdate activity 775 * Fix #4865: Better response codes for app new endpoint 776 * Fix #4858: Better response codes for app new endpoint 777 * Fix #4867: Fix remaining space calculation for S3 blobstore 778 * Fix #4852: Populate public link user correctly 779 * Fix #4859: Fixed the collaboration service registration 780 * Fix #4835: Fix sharejail stat id 781 * Fix #4856: Fix time conversion 782 * Fix #4851: Use gateway selector in sciencemesh 783 * Fix #4850: Write upload session info atomically 784 * Enh #4866: Unit test the json ocm invite manager 785 * Enh #4847: Add IsVersion to UploadReadyEvent 786 * Enh #4868: Improve metadata client errors 787 * Enh #4848: Add trashbin support to posixfs alongside other improvements 788 789 Details 790 ------- 791 792 * Bugfix #4854: Added ShareUpdate activity 793 794 Added the ShareUpdate activity in the space context. 795 796 https://github.com/owncloud/ocis/issues/10011 797 https://github.com/cs3org/reva/pull/4854 798 799 * Bugfix #4865: Better response codes for app new endpoint 800 801 We fixed the response codes for the app new endpoint. Permission denied is now backing the 802 request. 803 804 https://github.com/cs3org/reva/pull/4865 805 806 * Bugfix #4858: Better response codes for app new endpoint 807 808 We fixed the response codes for the app new endpoint. 809 810 https://github.com/cs3org/reva/pull/4858 811 812 * Bugfix #4867: Fix remaining space calculation for S3 blobstore 813 814 The calculation of the remaining space in the S3 blobstore was incorrectly using the remaining 815 space of the local disk instead. 816 817 https://github.com/cs3org/reva/pull/4867 818 819 * Bugfix #4852: Populate public link user correctly 820 821 When authenticating via public link, always add the `public` user instead of the link owner 822 823 https://github.com/cs3org/reva/pull/4852 824 825 * Bugfix #4859: Fixed the collaboration service registration 826 827 Fixed an issue when the collaboration service registers apps also for binary and unknown mime 828 types. 829 830 https://github.com/owncloud/ocis/issues/10086 831 https://github.com/cs3org/reva/pull/4859 832 833 * Bugfix #4835: Fix sharejail stat id 834 835 Stating a share jail mountpoint now returns the same resourceid as in the directory listing of 836 the share jail root. 837 838 https://github.com/owncloud/ocis/issues/9933 839 https://github.com/cs3org/reva/pull/4835 840 841 * Bugfix #4856: Fix time conversion 842 843 We fixed a nil pointer in a time conversion 844 845 https://github.com/cs3org/reva/pull/4856 846 847 * Bugfix #4851: Use gateway selector in sciencemesh 848 849 We now use a selector to get fresh ip addresses when running ocis in a kubernetes clustern. 850 851 https://github.com/cs3org/reva/pull/4851 852 853 * Bugfix #4850: Write upload session info atomically 854 855 We now use a lock and atomic write on upload session metadata to prevent empty reads. A virus scan 856 event might cause the file to be truncated and then a finished event might try to read the file, 857 just getting an empty string. 858 859 https://github.com/cs3org/reva/pull/4850 860 861 * Enhancement #4866: Unit test the json ocm invite manager 862 863 We added unit tests for the json ocm invite manager 864 865 https://github.com/cs3org/reva/pull/4866 866 867 * Enhancement #4847: Add IsVersion to UploadReadyEvent 868 869 Adds an IsVersion flag indicating that this upload is a version of an existing file 870 871 https://github.com/cs3org/reva/pull/4847 872 873 * Enhancement #4868: Improve metadata client errors 874 875 We now return a more descripive error message when the metadata client cannot create a space 876 because it already exists. 877 878 https://github.com/cs3org/reva/pull/4868 879 880 * Enhancement #4848: Add trashbin support to posixfs alongside other improvements 881 882 We added support for trashbins to posixfs. Posixfs also saw a number of other improvement, 883 bugfixes and optimizations. 884 885 https://github.com/cs3org/reva/pull/4848 886 https://github.com/cs3org/reva/pull/4779 887 888 Changelog for reva 2.24.1 (2024-09-11) 889 ======================================= 890 891 The following sections list the changes in reva 2.24.1 relevant to 892 reva users. The changes are ordered by importance. 893 894 Summary 895 ------- 896 897 * Fix #4843: Allow update of ocm shares 898 899 Details 900 ------- 901 902 * Bugfix #4843: Allow update of ocm shares 903 904 We fixed a bug that prevented ocm shares to be updated or removed. 905 906 https://github.com/owncloud/ocis/issues/9926 907 https://github.com/cs3org/reva/pull/4843/ 908 https://github.com/cs3org/reva/pull/4840/ 909 910 Changelog for reva 2.24.0 (2024-09-09) 911 ======================================= 912 913 The following sections list the changes in reva 2.24.0 relevant to 914 reva users. The changes are ordered by importance. 915 916 Summary 917 ------- 918 919 * Fix #4820: Fix response code when upload a file over locked 920 * Fix #4837: Fix OCM userid encoding 921 * Fix #4823: Return etag for ocm shares 922 * Fix #4822: Allow listing directory trash items by key 923 * Enh #4816: Ignore resharing requests 924 * Enh #4817: Added a new role space editor without versions 925 * Enh #4829: Added a new roles viewer/editor with ListGrants 926 * Enh #4828: New event: UserSignedIn 927 * Enh #4836: Publish an event when an OCM invite is generated 928 929 Details 930 ------- 931 932 * Bugfix #4820: Fix response code when upload a file over locked 933 934 We fixed a bug where the response code was incorrect when uploading a file over a locked file. 935 936 https://github.com/owncloud/ocis/issues/7638 937 https://github.com/cs3org/reva/pull/4820 938 939 * Bugfix #4837: Fix OCM userid encoding 940 941 We now base64 encode the remote userid and provider as the local federated user id. This allows 942 us to always differentiate them from local users and unpack the encoded user id and provider 943 when making requests to the remote ocm provider. 944 945 https://github.com/owncloud/ocis/issues/9927 946 https://github.com/cs3org/reva/pull/4837 947 https://github.com/cs3org/reva/pull/4833 948 949 * Bugfix #4823: Return etag for ocm shares 950 951 The ocm remote storage now passes on the etag returned in the PROPFIND response. 952 953 https://github.com/owncloud/ocis/issues/9534 954 https://github.com/cs3org/reva/pull/4823 955 956 * Bugfix #4822: Allow listing directory trash items by key 957 958 The storageprovider now passes on the key without inventing a `/` as the relative path when it 959 was not present at the end of the key. This allows differentiating requests that want to get the 960 trash item of a folder itself (where the relative path is empty) or listing the children of a 961 folder in the trash (where the relative path at least starts with a `/`). 962 963 We also fixed the `/dav/spaces` endpoint to not invent a `/` at the end of URLs to allow clients to 964 actually make these different requests. 965 966 As a byproduct we now return the size of trashed items. 967 968 https://github.com/cs3org/reva/pull/4822 969 https://github.com/cs3org/reva/pull/4818 970 971 * Enhancement #4816: Ignore resharing requests 972 973 We now ignore resharing permissions. Instead of returning BadRequest we just reduce the 974 permissions. 975 976 https://github.com/cs3org/reva/pull/4816 977 978 * Enhancement #4817: Added a new role space editor without versions 979 980 We add a new role space editor without list and restore version permissions. 981 982 https://github.com/owncloud/ocis/issues/9699 983 https://github.com/cs3org/reva/pull/4817 984 985 * Enhancement #4829: Added a new roles viewer/editor with ListGrants 986 987 We add a new roles space viewer/editor with ListGrants permissions. 988 989 https://github.com/owncloud/ocis/issues/9701 990 https://github.com/cs3org/reva/pull/4829 991 992 * Enhancement #4828: New event: UserSignedIn 993 994 There is a new Event that cam be triggered when a user signs in 995 996 https://github.com/cs3org/reva/pull/4828 997 998 * Enhancement #4836: Publish an event when an OCM invite is generated 999 1000 The ocm generate-invite endpoint now publishes an event whenever an invitation is requested 1001 and generated. This event can be subscribed to by other services to react to the generated 1002 invitation. 1003 1004 https://github.com/owncloud/ocis/issues/9583 1005 https://github.com/cs3org/reva/pull/4836 1006 https://github.com/cs3org/reva/pull/4832 1007 1008 Changelog for reva 2.23.0 (2024-08-19) 1009 ======================================= 1010 1011 The following sections list the changes in reva 2.23.0 relevant to 1012 reva users. The changes are ordered by importance. 1013 1014 Summary 1015 ------- 1016 1017 * Fix #4802: Block overwriting mountpoints 1018 * Fix #4782: Fixed the response code when copying from a share to a personal space 1019 * Fix #4805: Fix creating spaces 1020 * Fix #4651: Fix deleting space shares 1021 * Fix #4808: Fixed bugs in the owncloudsql storage driver 1022 * Enh #4772: Allow configuring grpc max connection age 1023 * Enh #4784: Bump tusd to v2 1024 * Enh #4478: Hellofs 1025 * Enh #4744: Respect service transport 1026 * Enh #4812: Concurrent stat requests when listing shares 1027 * Enh #4798: Update go-ldap to v3.4.8 1028 1029 Details 1030 ------- 1031 1032 * Bugfix #4802: Block overwriting mountpoints 1033 1034 This blocks overwriting mountpoints through the webdav COPY api. It is now returning a bad 1035 request when attempting to overwrite a mountpoint. 1036 1037 https://github.com/cs3org/reva/pull/4802 1038 https://github.com/cs3org/reva/pull/4796 1039 https://github.com/cs3org/reva/pull/4786 1040 https://github.com/cs3org/reva/pull/4785 1041 1042 * Bugfix #4782: Fixed the response code when copying from a share to a personal space 1043 1044 We fixed the response code when copying a file from a share to a personal space with a secure view 1045 role. 1046 1047 https://github.com/owncloud/ocis/issues/9482 1048 https://github.com/cs3org/reva/pull/4782 1049 1050 * Bugfix #4805: Fix creating spaces 1051 1052 We fixed a problem where it wasn't possible to create new spaces when running on a non-writable 1053 working directory. 1054 1055 https://github.com/cs3org/reva/pull/4805 1056 1057 * Bugfix #4651: Fix deleting space shares 1058 1059 We no longer check if a share is an ocm sharee if listng ocm shares has been disabled anyway. This 1060 allows unsharing space shares. 1061 1062 https://github.com/cs3org/reva/pull/4651 1063 1064 * Bugfix #4808: Fixed bugs in the owncloudsql storage driver 1065 1066 https://github.com/cs3org/reva/pull/4808 1067 1068 * Enhancement #4772: Allow configuring grpc max connection age 1069 1070 We added a GRPC_MAX_CONNECTION_AGE env var that allows limiting the lifespan of connections. 1071 A closed connection triggers grpc clients to do a new DNS lookup to pick up new IPs. 1072 1073 https://github.com/cs3org/reva/pull/4772 1074 1075 * Enhancement #4784: Bump tusd to v2 1076 1077 Bump tusd pkg to v2.4.0 1078 1079 https://github.com/cs3org/reva/pull/4784 1080 1081 * Enhancement #4478: Hellofs 1082 1083 We added a minimal hello world filesystem as an example for a read only storage driver. 1084 1085 https://github.com/cs3org/reva/pull/4478 1086 1087 * Enhancement #4744: Respect service transport 1088 1089 The service registry now takes into account the service transport when creating grpc clients. 1090 This allows using `dns`, `unix` and `kubernetes` as the protocol in addition to `tcp`. `dns` 1091 will turn the gRPC client into a [Thick 1092 Client](https://grpc.io/blog/grpc-load-balancing/#thick-client) that can look up 1093 multiple endpoints via DNS. `kubernetes` will use 1094 [github.com/sercand/kuberesolver](https://github.com/sercand/kuberesolver) to 1095 connect to the kubernetes API and pick up service changes. Furthermore, we enabled round robin 1096 load balancing for the [default transparent retry configuration of 1097 gRPC](https://grpc.io/docs/guides/retry/#retry-configuration). 1098 1099 https://github.com/cs3org/reva/pull/4744 1100 1101 * Enhancement #4812: Concurrent stat requests when listing shares 1102 1103 The sharesstorageprovider now concurrently stats the accepted shares when listing the share 1104 jail. The default number of 5 workers can be changed by setting the `max_concurrency` value in 1105 the config map. 1106 1107 https://github.com/cs3org/reva/pull/4812 1108 1109 * Enhancement #4798: Update go-ldap to v3.4.8 1110 1111 Update go-ldap/ldap/v3 to the latest upstream release to include the latest bugfixes and 1112 enhancements. 1113 1114 https://github.com/cs3org/reva/pull/4798 1115 1116 Changelog for reva 2.22.0 (2024-07-29) 1117 ======================================= 1118 1119 The following sections list the changes in reva 2.22.0 relevant to 1120 reva users. The changes are ordered by importance. 1121 1122 Summary 1123 ------- 1124 1125 * Fix #4741: Always find unique providers 1126 * Fix #4762: Blanks in dav Content-Disposition header 1127 * Fix #4775: Fixed the response code when copying the shared from to personal 1128 * Fix #4633: Allow all users to create internal links 1129 * Fix #4771: Deleting resources via their id 1130 * Fix #4768: Fixed the file name validation if nodeid is used 1131 * Fix #4758: Fix moving locked files, enable handling locked files via ocdav 1132 * Fix #4774: Fix micro ocdav service init and registration 1133 * Fix #4776: Fix response code for DEL file that in postprocessing 1134 * Fix #4746: Uploading the same file multiple times leads to orphaned blobs 1135 * Fix #4778: Zero byte uploads 1136 * Chg #4759: Updated to the latest version of the go-cs3apis 1137 * Chg #4773: Ocis bumped 1138 * Enh #4766: Set archiver output format via query parameter 1139 * Enh #4763: Improve posixfs storage driver 1140 1141 Details 1142 ------- 1143 1144 * Bugfix #4741: Always find unique providers 1145 1146 The gateway will now always try to find a single unique provider. It has stopped aggregating 1147 multiple ListContainer responses when we removed any business logic from it. 1148 1149 https://github.com/cs3org/reva/pull/4741 1150 https://github.com/cs3org/reva/pull/4740 1151 https://github.com/cs3org/reva/pull/2394 1152 1153 * Bugfix #4762: Blanks in dav Content-Disposition header 1154 1155 We've fixed the encoding of blanks in the dav `Content-Disposition` header. 1156 1157 https://github.com/owncloud/web/issues/11169 1158 https://github.com/cs3org/reva/pull/4762 1159 1160 * Bugfix #4775: Fixed the response code when copying the shared from to personal 1161 1162 We fixed the response code when copying the file from shares to personal space with a secure view 1163 role. 1164 1165 https://github.com/owncloud/ocis/issues/9482 1166 https://github.com/cs3org/reva/pull/4775 1167 1168 * Bugfix #4633: Allow all users to create internal links 1169 1170 Due to a bug, not all space members were allowed to create internal links. This has been fixed. 1171 1172 https://github.com/owncloud/ocis/issues/8960 1173 https://github.com/cs3org/reva/pull/4633 1174 1175 * Bugfix #4771: Deleting resources via their id 1176 1177 We fixed a bug where deleting resources by using their id via the `/dav/spaces/` endpoint would 1178 not work. 1179 1180 https://github.com/owncloud/ocis/issues/9619 1181 https://github.com/cs3org/reva/pull/4771 1182 1183 * Bugfix #4768: Fixed the file name validation if nodeid is used 1184 1185 We have fixed the file name validation if nodeid is used 1186 1187 https://github.com/owncloud/ocis/issues/9568 1188 https://github.com/cs3org/reva/pull/4768 1189 1190 * Bugfix #4758: Fix moving locked files, enable handling locked files via ocdav 1191 1192 We fixed a problem when trying to move locked files. We also enabled the ocdav service to handle 1193 locked files. 1194 1195 https://github.com/cs3org/reva/pull/4758 1196 1197 * Bugfix #4774: Fix micro ocdav service init and registration 1198 1199 We no longer call Init to configure default options because it was replacing the existing 1200 options. 1201 1202 https://github.com/cs3org/reva/pull/4774 1203 1204 * Bugfix #4776: Fix response code for DEL file that in postprocessing 1205 1206 We fixed the response code when DELETE and MOVE requests to the file that is still in 1207 post-processing. 1208 1209 https://github.com/owncloud/ocis/issues/9432 1210 https://github.com/cs3org/reva/pull/4776 1211 1212 * Bugfix #4746: Uploading the same file multiple times leads to orphaned blobs 1213 1214 Fixed a bug where multiple uploads of the same file would lead to orphaned blobs in the 1215 blobstore. These orphaned blobs will now be deleted. 1216 1217 https://github.com/cs3org/reva/pull/4746 1218 1219 * Bugfix #4778: Zero byte uploads 1220 1221 Zero byte uploads would trigger postprocessing which lead to breaking pipelines. 1222 1223 https://github.com/cs3org/reva/pull/4778 1224 1225 * Change #4759: Updated to the latest version of the go-cs3apis 1226 1227 The go-cs3apis dependency was updated to the latest version 1228 1229 https://github.com/owncloud/ocis/issues/9554 1230 https://github.com/cs3org/reva/pull/4759 1231 1232 * Change #4773: Ocis bumped 1233 1234 Ocis bumped. The expected failures removed. 1235 1236 https://github.com/cs3org/reva/pull/4773 1237 1238 * Enhancement #4766: Set archiver output format via query parameter 1239 1240 Sets the archive output format e.G "tar" via the url query parameter "output-format", 1241 possible params are "zip" and "tar", falls back to "zip". 1242 1243 https://github.com/owncloud/ocis/issues/9399 1244 https://github.com/owncloud/web/issues/11080 1245 https://github.com/cs3org/reva/pull/4766 1246 1247 * Enhancement #4763: Improve posixfs storage driver 1248 1249 Improve the posixfs storage driver by fixing several issues and corner cases. 1250 1251 https://github.com/cs3org/reva/pull/4763 1252 1253 Changelog for reva 2.21.0 (2024-07-08) 1254 ======================================= 1255 1256 The following sections list the changes in reva 2.21.0 relevant to 1257 reva users. The changes are ordered by importance. 1258 1259 Summary 1260 ------- 1261 1262 * Fix #4740: Disallow reserved filenames 1263 * Fix #4748: Quotes in dav Content-Disposition header 1264 * Fix #4750: Validate a space path 1265 * Enh #4737: Add the backchannel logout event 1266 * Enh #4749: DAV error codes 1267 * Enh #4742: Expose disable-versioning configuration option 1268 * Enh #4739: Improve posixfs storage driver 1269 * Enh #4738: Add GetServiceUserToken() method to utils pkg 1270 1271 Details 1272 ------- 1273 1274 * Bugfix #4740: Disallow reserved filenames 1275 1276 We now disallow the reserved `..` and `.` filenames. They are only allowed as destinations of 1277 move or copy operations. 1278 1279 https://github.com/cs3org/reva/pull/4740 1280 1281 * Bugfix #4748: Quotes in dav Content-Disposition header 1282 1283 We've fixed the the quotes in the dav `Content-Disposition` header. They caused an issue where 1284 certain browsers would decode the quotes and falsely prepend them to the filename. 1285 1286 https://github.com/owncloud/web/issues/11031 1287 https://github.com/cs3org/reva/pull/4748 1288 1289 * Bugfix #4750: Validate a space path 1290 1291 We've fixed the issue when validating a space path 1292 1293 https://github.com/cs3org/reva/pull/4750 1294 https://github.com/cs3org/reva/pull/4753 1295 1296 * Enhancement #4737: Add the backchannel logout event 1297 1298 We've added the backchannel logout event 1299 1300 https://github.com/owncloud/ocis/issues/9355 1301 https://github.com/cs3org/reva/pull/4737 1302 1303 * Enhancement #4749: DAV error codes 1304 1305 DAV error responses now include an error code for clients to use if they need to check for a 1306 specific error type. 1307 1308 https://github.com/owncloud/ocis/issues/9533 1309 https://github.com/cs3org/reva/pull/4749 1310 1311 * Enhancement #4742: Expose disable-versioning configuration option 1312 1313 This PR exposes the disable-versioning configuration option to the user. This option allows 1314 the user to disable versioning for the storage-providers. 1315 1316 https://github.com/cs3org/reva/pull/4742 1317 1318 * Enhancement #4739: Improve posixfs storage driver 1319 1320 Improve the posixfs storage driver by fixing several issues and adding missing features. 1321 1322 https://github.com/cs3org/reva/pull/4739 1323 1324 * Enhancement #4738: Add GetServiceUserToken() method to utils pkg 1325 1326 Added GetServiceUserToken() function to the utils pkg to easily get a reva token for a service 1327 account. 1328 1329 https://github.com/cs3org/reva/pull/4738 1330 1331 Changelog for reva 2.20.0 (2024-06-19) 1332 ======================================= 1333 1334 The following sections list the changes in reva 2.20.0 relevant to 1335 reva users. The changes are ordered by importance. 1336 1337 Summary 1338 ------- 1339 1340 * Fix #4623: Consistently use spaceid and nodeid in logs 1341 * Fix #4584: Prevent copying a file to a parent folder 1342 * Fix #4700: Clean empty trash node path on delete 1343 * Fix #4567: Fix error message in authprovider if user is not found 1344 * Fix #4615: Write blob based on session id 1345 * Fix #4557: Fix ceph build 1346 * Fix #4711: Duplicate headers in DAV responses 1347 * Fix #4568: Fix sharing invite on virtual drive 1348 * Fix #4559: Fix graph drive invite 1349 * Fix #4593: Make initiatorIDs also work on uploads 1350 * Fix #4608: Use gateway selector in jsoncs3 1351 * Fix #4546: Fix the mount points naming 1352 * Fix #4678: Fix nats encoding 1353 * Fix #4630: Fix ocm-share-id 1354 * Fix #4518: Fix an error when lock/unlock a file 1355 * Fix #4622: Fix public share update 1356 * Fix #4566: Fix public link previews 1357 * Fix #4589: Fix uploading via a public link 1358 * Fix #4660: Fix creating documents in nested folders of public shares 1359 * Fix #4635: Fix nil pointer when removing groups from space 1360 * Fix #4709: Fix share update 1361 * Fix #4661: Fix space share update for ocs 1362 * Fix #4656: Fix space share update 1363 * Fix #4561: Fix Stat() by Path on re-created resource 1364 * Fix #4710: Tolerate missing user space index 1365 * Fix #4632: Fix access to files withing a public link targeting a space root 1366 * Fix #4603: Mask user email in output 1367 * Chg #4542: Drop unused service spanning stat cache 1368 * Enh #4712: Add the error translation to the utils 1369 * Enh #4696: Add List method to ocis and s3ng blobstore 1370 * Enh #4693: Add mimetype for sb3 files 1371 * Enh #4699: Add a Path method to blobstore 1372 * Enh #4695: Add photo and image props 1373 * Enh #4706: Add secureview flag when listing apps via http 1374 * Enh #4585: Move more consistency checks to the usershare API 1375 * Enh #4702: Added theme capability 1376 * Enh #4672: Add virus filter to list uploads sessions 1377 * Enh #4614: Bump mockery to v2.40.2 1378 * Enh #4621: Use a memory cache for the personal space creation cache 1379 * Enh #4556: Allow tracing requests by giving util functions a context 1380 * Enh #4694: Expose SecureView in WebDAV permissions 1381 * Enh #4652: Better error codes when removing a space member 1382 * Enh #4725: Unique share mountpoint name 1383 * Enh #4689: Extend service account permissions 1384 * Enh #4545: Extend service account permissions 1385 * Enh #4581: Make decomposedfs more extensible 1386 * Enh #4564: Send file locked/unlocked events 1387 * Enh #4730: Improve posixfs storage driver 1388 * Enh #4587: Allow passing a initiator id 1389 * Enh #4645: Add ItemID to LinkRemoved 1390 * Enh #4686: Mint view only token for open in app requests 1391 * Enh #4606: Remove resharing 1392 * Enh #4643: Secure viewer share role 1393 * Enh #4631: Add space-share-updated event 1394 * Enh #4685: Support t and x in ACEs 1395 * Enh #4625: Test async processing cornercases 1396 * Enh #4653: Allow to resolve public shares without the ocs tokeninfo endpoint 1397 * Enh #4657: Add ScanData to Uploadsession 1398 1399 Details 1400 ------- 1401 1402 * Bugfix #4623: Consistently use spaceid and nodeid in logs 1403 1404 Sometimes we tried to log a node which led to a JSON recursion error because it contains a 1405 reference to the space root, which references itself. We now always log `spaceid` and 1406 `nodeid`. 1407 1408 https://github.com/cs3org/reva/pull/4623 1409 1410 * Bugfix #4584: Prevent copying a file to a parent folder 1411 1412 When copying a file to its parent folder, the file would be copied onto the parent folder, moving 1413 the original folder to the trash-bin. 1414 1415 https://github.com/owncloud/ocis/issues/1230 1416 https://github.com/cs3org/reva/pull/4584 1417 https://github.com/cs3org/reva/pull/4582 1418 https://github.com/cs3org/reva/pull/4571 1419 1420 * Bugfix #4700: Clean empty trash node path on delete 1421 1422 We now delete empty directories in the trash when an item is purged or restored. This prevents 1423 old empty directories from slowing down the globbing of trash items. 1424 1425 https://github.com/cs3org/reva/pull/4700 1426 1427 * Bugfix #4567: Fix error message in authprovider if user is not found 1428 1429 https://github.com/cs3org/reva/pull/4567 1430 1431 * Bugfix #4615: Write blob based on session id 1432 1433 Decomposedfs now uses the session id and size when moving an uplode to the blobstore. This fixes 1434 a cornercase that prevents an upload session from correctly being finished when another 1435 upload session to the file was started and already finished. 1436 1437 https://github.com/cs3org/reva/pull/4615 1438 1439 * Bugfix #4557: Fix ceph build 1440 1441 https://github.com/cs3org/reva/pull/4557 1442 1443 * Bugfix #4711: Duplicate headers in DAV responses 1444 1445 We fixed an issue where the DAV response headers were duplicated. This was caused by the WebDav 1446 handler which copied over all headers from the datagateways response. Now, only the relevant 1447 headers are copied over to the DAV response to prevent duplication. 1448 1449 https://github.com/cs3org/reva/pull/4711 1450 1451 * Bugfix #4568: Fix sharing invite on virtual drive 1452 1453 We fixed the issue when sharing of virtual drive with other users was allowed 1454 1455 https://github.com/owncloud/ocis/issues/8495 1456 https://github.com/cs3org/reva/pull/4568 1457 1458 * Bugfix #4559: Fix graph drive invite 1459 1460 We fixed the issue when sharing of personal drive is allowed via graph 1461 1462 https://github.com/owncloud/ocis/issues/8494 1463 https://github.com/cs3org/reva/pull/4559 1464 1465 * Bugfix #4593: Make initiatorIDs also work on uploads 1466 1467 One needs to pass them on initateupload already. 1468 1469 https://github.com/cs3org/reva/pull/4593 1470 1471 * Bugfix #4608: Use gateway selector in jsoncs3 1472 1473 The jsoncs3 user share manager now uses the gateway selector to get a fresh client before making 1474 requests and uses the configured logger from the context. 1475 1476 https://github.com/cs3org/reva/pull/4608 1477 1478 * Bugfix #4546: Fix the mount points naming 1479 1480 We fixed a bug that caused inconsistent naming when multiple users share the resource with same 1481 name to another user. 1482 1483 https://github.com/owncloud/ocis/issues/8471 1484 https://github.com/cs3org/reva/pull/4546 1485 1486 * Bugfix #4678: Fix nats encoding 1487 1488 Encode nats-js-kv keys. This got lost by a dependency bump. 1489 1490 https://github.com/cs3org/reva/pull/4678 1491 1492 * Bugfix #4630: Fix ocm-share-id 1493 1494 We now use the share id to correctly identify ocm shares. 1495 1496 https://github.com/cs3org/reva/pull/4630 1497 1498 * Bugfix #4518: Fix an error when lock/unlock a file 1499 1500 We fixed a bug when anonymous user with viewer role in public link of a folder can lock/unlock a 1501 file inside it 1502 1503 https://github.com/owncloud/ocis/issues/7785 1504 https://github.com/cs3org/reva/pull/4518 1505 1506 * Bugfix #4622: Fix public share update 1507 1508 We fixed the permission check for updating public shares. When updating the permissions of a 1509 public share while not providing a password, the check must be against the new permissions to 1510 take into account that users can opt out only for view permissions. 1511 1512 https://github.com/cs3org/reva/pull/4622 1513 1514 * Bugfix #4566: Fix public link previews 1515 1516 Fixes previews for public links 1517 1518 https://github.com/cs3org/reva/pull/4566 1519 1520 * Bugfix #4589: Fix uploading via a public link 1521 1522 Fix http error when uploading via a public link 1523 1524 https://github.com/owncloud/ocis/issues/8699 1525 https://github.com/cs3org/reva/pull/4589 1526 1527 * Bugfix #4660: Fix creating documents in nested folders of public shares 1528 1529 We fixed a bug that prevented creating new documented in a nested folder of a public share. 1530 1531 https://github.com/owncloud/ocis/issues/8957 1532 https://github.com/cs3org/reva/pull/4660 1533 1534 * Bugfix #4635: Fix nil pointer when removing groups from space 1535 1536 We fixed the nil pointer when removing groups from space via graph 1537 1538 https://github.com/owncloud/ocis/issues/8768 1539 https://github.com/cs3org/reva/pull/4635 1540 1541 * Bugfix #4709: Fix share update 1542 1543 We fixed the response code when the role/permission is empty on the share update 1544 1545 https://github.com/owncloud/ocis/issues/8747 1546 https://github.com/cs3org/reva/pull/4709 1547 1548 * Bugfix #4661: Fix space share update for ocs 1549 1550 We fixed the space share update for ocs. 1551 1552 https://github.com/owncloud/ocis/issues/8905 1553 https://github.com/cs3org/reva/pull/4661 1554 1555 * Bugfix #4656: Fix space share update 1556 1557 We fixed the permission check for updating the space shares when update an expirationDateTime 1558 only. 1559 1560 https://github.com/owncloud/ocis/issues/8905 1561 https://github.com/cs3org/reva/pull/4656 1562 1563 * Bugfix #4561: Fix Stat() by Path on re-created resource 1564 1565 We fixed bug that caused Stat Requests using a Path reference to a mount point in the sharejail to 1566 not resolve correctly, when a share using the same mount point to an already deleted resource 1567 was still existing. 1568 1569 https://github.com/owncloud/ocis/issues/7895 1570 https://github.com/cs3org/reva/pull/4561 1571 1572 * Bugfix #4710: Tolerate missing user space index 1573 1574 We fixed a bug where the spaces for a user were not listed if the user had no space index by user. 1575 This happens when a user has the role "User Light" and has been invited to a project space via a 1576 group. 1577 1578 https://github.com/cs3org/reva/pull/4710 1579 1580 * Bugfix #4632: Fix access to files withing a public link targeting a space root 1581 1582 We fixed an issue that prevented users from opening documents within a public share that 1583 targets a space root. 1584 1585 https://github.com/owncloud/ocis/issues/8691 1586 https://github.com/cs3org/reva/pull/4632/ 1587 1588 * Bugfix #4603: Mask user email in output 1589 1590 We have fixed a bug where the user email was not masked in the output and the user emails could be 1591 enumerated through the sharee search. 1592 1593 https://github.com/owncloud/ocis/issues/8726 1594 https://github.com/cs3org/reva/pull/4603 1595 1596 * Change #4542: Drop unused service spanning stat cache 1597 1598 We removed the stat cache shared between gateway and storage providers. It is constantly 1599 invalidated and needs a different approach. 1600 1601 https://github.com/cs3org/reva/pull/4542 1602 1603 * Enhancement #4712: Add the error translation to the utils 1604 1605 We've added the error translation from the statusCodeError type to CS3 Status 1606 1607 https://github.com/owncloud/ocis/issues/9151 1608 https://github.com/cs3org/reva/pull/4712 1609 1610 * Enhancement #4696: Add List method to ocis and s3ng blobstore 1611 1612 Allow listing blobstores for maintenance 1613 1614 https://github.com/cs3org/reva/pull/4696 1615 1616 * Enhancement #4693: Add mimetype for sb3 files 1617 1618 We've added the matching mimetype for sb3 files 1619 1620 https://github.com/cs3org/reva/pull/4693 1621 1622 * Enhancement #4699: Add a Path method to blobstore 1623 1624 Add a method to get the path of a blob to the ocis and s3ng blobstores. 1625 1626 https://github.com/cs3org/reva/pull/4699 1627 1628 * Enhancement #4695: Add photo and image props 1629 1630 Add `oc:photo` and `oc:image` props to PROPFIND responses for propall requests or when they 1631 are explicitly requested. 1632 1633 https://github.com/cs3org/reva/pull/4695 1634 https://github.com/cs3org/reva/pull/4684 1635 1636 * Enhancement #4706: Add secureview flag when listing apps via http 1637 1638 To allow clients to see which application supports secure view we add a flag to the http response 1639 when the app address matches a configured secure view app address. 1640 1641 https://github.com/cs3org/reva/pull/4706 1642 https://github.com/cs3org/reva/pull/4703 1643 1644 * Enhancement #4585: Move more consistency checks to the usershare API 1645 1646 The gateway now checks if there will be at least one space manager remaining before deleting a 1647 space member. The legacy ocs based sharing implementaion already does this on its own. But for 1648 the future graph based sharing implementation it is better to have the check in a more central 1649 place. 1650 1651 https://github.com/cs3org/reva/pull/4585 1652 1653 * Enhancement #4702: Added theme capability 1654 1655 The ocs capabilities now contain a theme capability that exposes theme related configuration 1656 options to the clients. As part of this change, the ocs capabilities are now exposed and can be 1657 used externally. 1658 1659 https://github.com/cs3org/reva/pull/4702 1660 1661 * Enhancement #4672: Add virus filter to list uploads sessions 1662 1663 Adds a filter for filtering for infected uploads 1664 1665 https://github.com/cs3org/reva/pull/4672 1666 1667 * Enhancement #4614: Bump mockery to v2.40.2 1668 1669 We switched to the latest mockery and changed to .mockery.yaml based mock generation. 1670 1671 https://github.com/cs3org/reva/pull/4614 1672 1673 * Enhancement #4621: Use a memory cache for the personal space creation cache 1674 1675 Memory is a safe default and ensures that superfluous calls to CreateStorageSpace are 1676 prevented. 1677 1678 https://github.com/cs3org/reva/pull/4621 1679 1680 * Enhancement #4556: Allow tracing requests by giving util functions a context 1681 1682 We deprecated GetServiceUserContext with GetServiceUserContextWithContext and GetUser 1683 with GetUserWithContext to allow passing in a trace context. 1684 1685 https://github.com/cs3org/reva/pull/4556 1686 1687 * Enhancement #4694: Expose SecureView in WebDAV permissions 1688 1689 When a file or folder can be securely viewed we now add an `X` to the permissions. 1690 1691 https://github.com/cs3org/reva/pull/4694 1692 1693 * Enhancement #4652: Better error codes when removing a space member 1694 1695 The gateway returns more specific error codes when removing a space member fails. 1696 1697 https://github.com/owncloud/ocis/issues/8819 1698 https://github.com/cs3org/reva/pull/4652 1699 1700 * Enhancement #4725: Unique share mountpoint name 1701 1702 Accepting a received share with a mountpoint name that already exists will now append a unique 1703 suffix to the mountpoint name. 1704 1705 https://github.com/owncloud/ocis/issues/8961 1706 https://github.com/cs3org/reva/pull/4725 1707 https://github.com/cs3org/reva/pull/4723 1708 https://github.com/cs3org/reva/pull/4714 1709 1710 * Enhancement #4689: Extend service account permissions 1711 1712 Adds AddGrant permisson 1713 1714 https://github.com/cs3org/reva/pull/4689 1715 1716 * Enhancement #4545: Extend service account permissions 1717 1718 Adds CreateContainer permisson and improves cs3 storage pkg 1719 1720 https://github.com/cs3org/reva/pull/4545 1721 1722 * Enhancement #4581: Make decomposedfs more extensible 1723 1724 We refactored decomposedfs to make it more extensible, e.g. for the posixfs storage driver. 1725 1726 https://github.com/cs3org/reva/pull/4581 1727 1728 * Enhancement #4564: Send file locked/unlocked events 1729 1730 Emit an event when a file is locked or unlocked 1731 1732 https://github.com/cs3org/reva/pull/4564 1733 1734 * Enhancement #4730: Improve posixfs storage driver 1735 1736 Improve the posixfs storage driver by fixing several issues and adding missing features. 1737 1738 https://github.com/cs3org/reva/pull/4730 1739 https://github.com/cs3org/reva/pull/4719 1740 https://github.com/cs3org/reva/pull/4708 1741 https://github.com/cs3org/reva/pull/4562 1742 1743 * Enhancement #4587: Allow passing a initiator id 1744 1745 Allows passing an initiator id on http request as `Initiator-ID` header. It will be passed down 1746 though ocis and returned with sse events (clientlog events, as userlog has its own logic) 1747 1748 https://github.com/cs3org/reva/pull/4587 1749 1750 * Enhancement #4645: Add ItemID to LinkRemoved 1751 1752 Add itemID to linkremoved response and event 1753 1754 https://github.com/cs3org/reva/pull/4645 1755 1756 * Enhancement #4686: Mint view only token for open in app requests 1757 1758 When a view only mode is requested for open in app requests the gateway now mints a view only token 1759 scoped to the requested resource. This token can be used by trusted app providers to download 1760 the resource even if the user has no download permission. 1761 1762 https://github.com/cs3org/reva/pull/4686 1763 1764 * Enhancement #4606: Remove resharing 1765 1766 Removed all code related to resharing 1767 1768 https://github.com/cs3org/reva/pull/4606 1769 1770 * Enhancement #4643: Secure viewer share role 1771 1772 A new share role "Secure viewer" has been added. This role only allows viewing resources, no 1773 downloading, editing or deleting. 1774 1775 https://github.com/cs3org/reva/pull/4643 1776 1777 * Enhancement #4631: Add space-share-updated event 1778 1779 This event is triggered when a share on a space root (aka space membership) is changed 1780 1781 https://github.com/cs3org/reva/pull/4631 1782 1783 * Enhancement #4685: Support t and x in ACEs 1784 1785 To support view only shares (dowload forbidden) we added t (read attrs) and x (directory 1786 traversal) permissions to the decomposed FS ACEs. 1787 1788 https://github.com/cs3org/reva/pull/4685 1789 1790 * Enhancement #4625: Test async processing cornercases 1791 1792 We added tests to cover several bugs where file metadata or parent treesize might get corrupted 1793 when postprocessing errors occur in specific order. For now, the added test cases test the 1794 current behavior but contain comments and FIXMEs for the expected behavior. 1795 1796 https://github.com/cs3org/reva/pull/4625 1797 1798 * Enhancement #4653: Allow to resolve public shares without the ocs tokeninfo endpoint 1799 1800 Instead of querying the /v1.php/apps/files_sharing/api/v1/tokeninfo/ endpoint, a client 1801 can now resolve public and internal links by sending a PROPFIND request to 1802 /dav/public-files/{sharetoken} 1803 1804 * authenticated clients accessing an internal link are redirected to the "real" resource 1805 (`/dav/spaces/{target-resource-id} * authenticated clients are able to resolve public 1806 links like before. For password protected links they need to supply the password even if they 1807 have access to the underlying resource by other means. * unauthenticated clients accessing an 1808 internal link get a 401 returned with WWW-Authenticate set to Bearer (so that the client knows 1809 that it need to get a token via the IDP login page. * unauthenticated clients accessing a 1810 password protected link get a 401 returned with an error message to indicate the requirement 1811 for needing the link's password. 1812 1813 https://github.com/owncloud/ocis/issues/8858 1814 https://github.com/cs3org/reva/pull/4653 1815 1816 * Enhancement #4657: Add ScanData to Uploadsession 1817 1818 Adds virus scan results to the upload session. 1819 1820 https://github.com/cs3org/reva/pull/4657 1821 1822 Changelog for reva 2.19.1 (2024-02-29) 1823 ======================================= 1824 1825 The following sections list the changes in reva 2.19.1 relevant to 1826 reva users. The changes are ordered by importance. 1827 1828 Summary 1829 ------- 1830 1831 * Fix #4534: Fix remove/update share permissions 1832 * Fix #4539: Fix a typo 1833 1834 Details 1835 ------- 1836 1837 * Bugfix #4534: Fix remove/update share permissions 1838 1839 This is a workaround that should prevent removing or changing the share permissions when the 1840 file is locked. These limitations have to be removed after the wopi server will be able to unlock 1841 the file properly. These limitations are not spread on the files inside the shared folder. 1842 1843 https://github.com/owncloud/ocis/issues/8273 1844 https://github.com/cs3org/reva/pull/4534 1845 1846 * Bugfix #4539: Fix a typo 1847 1848 We fixed a typo 1849 1850 https://github.com/cs3org/reva/pull/4539 1851 1852 Changelog for reva 2.19.0 (2024-02-22) 1853 ======================================= 1854 1855 The following sections list the changes in reva 2.19.0 relevant to 1856 reva users. The changes are ordered by importance. 1857 1858 Summary 1859 ------- 1860 1861 * Fix #4464: Do not lose revisions when restoring the first revision 1862 * Fix #4516: The sharemanager can now reject grants with resharing permissions 1863 * Fix #4512: Bump dependencies 1864 * Fix #4481: Distinguish failure and node metadata reversal 1865 * Fix #4456: Do not lose revisions when restoring the first revision 1866 * Fix #4472: Fix concurrent access to a map 1867 * Fix #4457: Fix concurrent map access in sharecache 1868 * Fix #4498: Fix Content-Disposition header in dav 1869 * Fix #4461: CORS handling for WebDAV requests fixed 1870 * Fix #4462: Prevent setting container specific permissions on files 1871 * Fix #4479: Fix creating documents in the approvider 1872 * Fix #4474: Make /dav/meta consistent 1873 * Fix #4446: Disallow to delete a file during the processing 1874 * Fix #4517: Fix duplicated items in the sharejail root 1875 * Fix #4473: Decomposedfs now correctly lists sessions 1876 * Fix #4528: Respect IfNotExist option when uploading in cs3 metadata storage 1877 * Fix #4503: Fix an error when move 1878 * Fix #4466: Fix natsjskv store 1879 * Fix #4533: Fix recursive trashcan purge 1880 * Fix #4492: Fix the resource name 1881 * Fix #4463: Fix the resource name 1882 * Fix #4448: Fix truncating existing files 1883 * Fix #4434: Fix the upload postprocessing 1884 * Fix #4469: Handle interrupted uploads 1885 * Fix #4532: Jsoncs3 cache fixes 1886 * Fix #4449: Keep failed processing status 1887 * Fix #4529: We aligned some OCS return codes with oc10 1888 * Fix #4507: Make tusd CORS headers configurable 1889 * Fix #4452: More efficient share jail 1890 * Fix #4476: No need to unmark postprocessing when it was not started 1891 * Fix #4454: Skip unnecessary share retrieval 1892 * Fix #4527: Unify datagateway method handling 1893 * Fix #4530: Drop unnecessary grant exists check 1894 * Fix #4475: Upload session specific processing flag 1895 * Enh #4501: Allow sending multiple user ids in one sse event 1896 * Enh #4485: Modify the concurrency default 1897 * Enh #4526: Configurable s3 put options 1898 * Enh #4453: Disable the password policy 1899 * Enh #4477: Extend ResumePostprocessing event 1900 * Enh #4491: Add filename incrementor for secret filedrops 1901 * Enh #4490: Lazy initialize public share manager 1902 * Enh #4494: Start implementation of a plain posix storage driver 1903 * Enh #4502: Add spaceindex.AddAll() 1904 1905 Details 1906 ------- 1907 1908 * Bugfix #4464: Do not lose revisions when restoring the first revision 1909 1910 We no longer prevent modifying grants on locked resources. 1911 1912 https://github.com/cs3org/reva/pull/4464 1913 1914 * Bugfix #4516: The sharemanager can now reject grants with resharing permissions 1915 1916 When disabling resharing we also need to prevent grants from allowing any grant permissions. 1917 1918 https://github.com/cs3org/reva/pull/4516 1919 1920 * Bugfix #4512: Bump dependencies 1921 1922 We updated the dependencies to at least match the ones used in ocis. 1923 1924 https://github.com/cs3org/reva/pull/4512 1925 1926 * Bugfix #4481: Distinguish failure and node metadata reversal 1927 1928 When the final blob move fails we must not remove the node metadata to be able to restart the 1929 postprocessing process. 1930 1931 https://github.com/cs3org/reva/pull/4481 1932 1933 * Bugfix #4456: Do not lose revisions when restoring the first revision 1934 1935 We fixed a problem where restoring the very first version of a file could delete the current 1936 version. 1937 1938 https://github.com/cs3org/reva/pull/4456 1939 1940 * Bugfix #4472: Fix concurrent access to a map 1941 1942 We fixed the race condition that led to concurrent map access in a publicshare manager. 1943 1944 https://github.com/owncloud/ocis/issues/8255 1945 https://github.com/cs3org/reva/pull/4472 1946 1947 * Bugfix #4457: Fix concurrent map access in sharecache 1948 1949 We fixed a problem where the sharecache map would sometimes cause a panic when being accessed 1950 concurrently. 1951 1952 https://github.com/cs3org/reva/pull/4457 1953 1954 * Bugfix #4498: Fix Content-Disposition header in dav 1955 1956 We have added missing quotes to the Content-Disposition header in the dav service. This fixes 1957 an issue with files containing special characters in their names. 1958 1959 https://github.com/owncloud/ocis/issues/8361 1960 https://github.com/cs3org/reva/pull/4498 1961 1962 * Bugfix #4461: CORS handling for WebDAV requests fixed 1963 1964 We now correctly handle CORS headers for WebDAV requests. 1965 1966 https://github.com/owncloud/ocis/issues/8231 1967 https://github.com/cs3org/reva/pull/4461 1968 1969 * Bugfix #4462: Prevent setting container specific permissions on files 1970 1971 It was possible to set the 'CreateContainer', 'Move' or 'Delete' permissions on file 1972 resources with a CreateShare request. These permissions are meant to be only set on container 1973 resources. The UpdateShare request already has a similar check. 1974 1975 https://github.com/owncloud/ocis/issues/8131 1976 https://github.com/cs3org/reva/pull/4462 1977 1978 * Bugfix #4479: Fix creating documents in the approvider 1979 1980 We fixed a problem with the approvider where an error was reported to the user even though the 1981 file was created properly. 1982 1983 https://github.com/cs3org/reva/pull/4479 1984 1985 * Bugfix #4474: Make /dav/meta consistent 1986 1987 We now also return absolute paths for shares in the share jail in the /dav/meta endpoint. 1988 1989 https://github.com/cs3org/reva/pull/4474 1990 1991 * Bugfix #4446: Disallow to delete a file during the processing 1992 1993 We want to disallow deleting a file during the processing to prevent collecting the orphan 1994 uploads. 1995 1996 https://github.com/cs3org/reva/pull/4446 1997 1998 * Bugfix #4517: Fix duplicated items in the sharejail root 1999 2000 We fixed a bug, that caused duplicate items to listed in the sharejail, when a user received 2001 multiple shares for the same resource. 2002 2003 https://github.com/owncloud/ocis/issues/8080 2004 https://github.com/cs3org/reva/pull/4517 2005 2006 * Bugfix #4473: Decomposedfs now correctly lists sessions 2007 2008 https://github.com/cs3org/reva/pull/4473 2009 2010 * Bugfix #4528: Respect IfNotExist option when uploading in cs3 metadata storage 2011 2012 https://github.com/cs3org/reva/pull/4528 2013 2014 * Bugfix #4503: Fix an error when move 2015 2016 We fixed a bug that caused Internal Server Error when move using destination id 2017 2018 https://github.com/owncloud/ocis/issues/6739 2019 https://github.com/cs3org/reva/pull/4503 2020 2021 * Bugfix #4466: Fix natsjskv store 2022 2023 Small mistake in last iteration made authorization not working. 2024 2025 https://github.com/cs3org/reva/pull/4466 2026 2027 * Bugfix #4533: Fix recursive trashcan purge 2028 2029 We have fixed a bug in the trashcan purge process that did not delete folder structures 2030 recursively. 2031 2032 https://github.com/owncloud/ocis/issues/8473 2033 https://github.com/cs3org/reva/pull/4533 2034 2035 * Bugfix #4492: Fix the resource name 2036 2037 We fixed a problem where after renaming resource as sharer the receiver see a new name for dav and 2038 wedav endpoints. 2039 2040 https://github.com/owncloud/ocis/issues/8242 2041 https://github.com/cs3org/reva/pull/4492 2042 2043 * Bugfix #4463: Fix the resource name 2044 2045 We fixed a problem where after renaming resource as sharer the receiver see a new name. 2046 2047 https://github.com/owncloud/ocis/issues/8242 2048 https://github.com/cs3org/reva/pull/4463 2049 2050 * Bugfix #4448: Fix truncating existing files 2051 2052 We fixed a problem where existing files kept their content when being overwritten by a 0-byte 2053 file. 2054 2055 https://github.com/cs3org/reva/pull/4448 2056 2057 * Bugfix #4434: Fix the upload postprocessing 2058 2059 We fixed the upload postprocessing when the destination file does not exist anymore. 2060 2061 https://github.com/cs3org/reva/pull/4434 2062 2063 * Bugfix #4469: Handle interrupted uploads 2064 2065 We fixed a bug where interrupted uploads were not discarded properly. 2066 2067 https://github.com/cs3org/reva/pull/4469 2068 2069 * Bugfix #4532: Jsoncs3 cache fixes 2070 2071 The jsoncs3 share manager now retries persisting if the file already existed and picks up the 2072 etag of the upload response in all cases. 2073 2074 https://github.com/cs3org/reva/pull/4532 2075 2076 * Bugfix #4449: Keep failed processing status 2077 2078 We now keep tho postprocessing status when a blob could not be copied to the blobstore. 2079 2080 https://github.com/cs3org/reva/pull/4449 2081 2082 * Bugfix #4529: We aligned some OCS return codes with oc10 2083 2084 https://github.com/owncloud/ocis/issues/1233 2085 https://github.com/cs3org/reva/pull/4529 2086 2087 * Bugfix #4507: Make tusd CORS headers configurable 2088 2089 We bumped tusd to 1.13.0 and made CORS headers configurable via mapstructure. 2090 2091 https://github.com/cs3org/reva/pull/4507 2092 2093 * Bugfix #4452: More efficient share jail 2094 2095 The share jail was stating every shared recource twice when listing the share jail root. For no 2096 good reason. And it was not sending filters when it could. 2097 2098 https://github.com/cs3org/reva/pull/4452 2099 2100 * Bugfix #4476: No need to unmark postprocessing when it was not started 2101 2102 https://github.com/cs3org/reva/pull/4476 2103 2104 * Bugfix #4454: Skip unnecessary share retrieval 2105 2106 https://github.com/cs3org/reva/pull/4454 2107 2108 * Bugfix #4527: Unify datagateway method handling 2109 2110 The datagateway now unpacks and forwards all HTTP methods 2111 2112 https://github.com/cs3org/reva/pull/4527 2113 2114 * Bugfix #4530: Drop unnecessary grant exists check 2115 2116 At least the jsoncs3 share manager properly returns an ALREADY_EXISTS response when trying to 2117 add a share to a resource that has already been shared with the grantee. 2118 2119 https://github.com/cs3org/reva/pull/4530 2120 2121 * Bugfix #4475: Upload session specific processing flag 2122 2123 To make every upload session have a dedicated processing status, upload sessions are now 2124 treated as in processing when all bytes have been received instead of checking the node 2125 metadata. 2126 2127 https://github.com/cs3org/reva/pull/4475 2128 2129 * Enhancement #4501: Allow sending multiple user ids in one sse event 2130 2131 Sending multiple user ids in one sse event is now possible which reduces the number of sent 2132 events. 2133 2134 https://github.com/cs3org/reva/pull/4501 2135 2136 * Enhancement #4485: Modify the concurrency default 2137 2138 We have changed the default MaxConcurrency value from 100 to 5 to prevent too frequent gc runs on 2139 low memory systems. 2140 2141 https://github.com/owncloud/ocis/issues/8257 2142 https://github.com/cs3org/reva/pull/4485 2143 2144 * Enhancement #4526: Configurable s3 put options 2145 2146 The s3ng blobstore can now be configured with several options: 2147 `s3.disable_content_sha254`, `s3.disable_multipart`, `s3.send_content_md5`, 2148 `s3.concurrent_stream_parts`, `s3.num_threads` and `s3.part_size`. If unset we default 2149 to `s3.send_content_md5: true`, which was hardcoded before. We also default to 2150 `s3.concurrent_stream_parts: true` and `s3.num_threads: 4` to allow concurrent uploads 2151 even when `s3.send_content_md5` is set to `true`. When tweaking the uploads try setting 2152 `s3.send_content_md5: false` and `s3.concurrent_stream_parts: false` first, as this will 2153 try to concurrently stream an uploaded file to the s3 store without cutting it into parts first. 2154 2155 https://github.com/cs3org/reva/pull/4526 2156 2157 * Enhancement #4453: Disable the password policy 2158 2159 We reworked and moved disabling the password policy logic to the ocis. 2160 2161 https://github.com/owncloud/ocis/issues/7916 2162 https://github.com/cs3org/reva/pull/4453 2163 2164 * Enhancement #4477: Extend ResumePostprocessing event 2165 2166 Instead of just sending an uploadID, one can set a postprocessing step now to restart all 2167 uploads in this step Also adds a new postprocessing step - "finished" - which means that 2168 postprocessing is finished but the storage provider hasn't acknowledged it yet. 2169 2170 https://github.com/cs3org/reva/pull/4477 2171 2172 * Enhancement #4491: Add filename incrementor for secret filedrops 2173 2174 We have added a function that appends a number to the filename if the file already exists in a 2175 secret filedrop. This is useful if you want to upload a file with the same name multiple times. 2176 2177 https://github.com/owncloud/ocis/issues/8291 2178 https://github.com/cs3org/reva/pull/4491 2179 2180 * Enhancement #4490: Lazy initialize public share manager 2181 2182 Unlike the share manager the public share manager was initializing its data structure on 2183 startup. This can lead to failed ocis starts (in single binary case) or to restarting `sharing` 2184 pods when running in containerized environment. 2185 2186 https://github.com/cs3org/reva/pull/4490 2187 2188 * Enhancement #4494: Start implementation of a plain posix storage driver 2189 2190 We started to lay the groundwork for a new posixfs storage driver based on decomposedfs. We also 2191 refactored decomposedfs to be a bit more modular and cleaned up the initialization. 2192 2193 https://github.com/cs3org/reva/pull/4494 2194 2195 * Enhancement #4502: Add spaceindex.AddAll() 2196 2197 We now expose an AddAll() function that allows adding multiple entries to a space index with a 2198 single lock. 2199 2200 https://github.com/cs3org/reva/pull/4502 2201 2202 Changelog for reva 2.18.0 (2023-12-22) 2203 ======================================= 2204 2205 The following sections list the changes in reva 2.18.0 relevant to 2206 reva users. The changes are ordered by importance. 2207 2208 Summary 2209 ------- 2210 2211 * Fix #4424: Fixed panic in receivedsharecache pkg 2212 * Fix #4425: Fix overwriting files with empty files 2213 * Fix #4432: Fix /dav/meta endpoint for shares 2214 * Fix #4422: Fix disconnected traces 2215 * Fix #4429: Internal link creation 2216 * Fix #4407: Make ocdav return correct oc:spaceid 2217 * Fix #4410: Improve OCM support 2218 * Fix #4402: Refactor upload session 2219 * Enh #4421: Check permissions before adding, deleting or updating shares 2220 * Enh #4403: Add validation to update public share 2221 * Enh #4409: Disable the password policy 2222 * Enh #4412: Allow authentication for nats connections 2223 * Enh #4411: Add option to configure streams non durable 2224 * Enh #4406: Rework cache configuration 2225 * Enh #4414: Track more upload session metrics 2226 2227 Details 2228 ------- 2229 2230 * Bugfix #4424: Fixed panic in receivedsharecache pkg 2231 2232 The receivedsharecache pkg would sometime run into concurrent map writes. This is fixed by 2233 using maptimesyncedcache pkg instead of a plain map. 2234 2235 https://github.com/cs3org/reva/pull/4424 2236 2237 * Bugfix #4425: Fix overwriting files with empty files 2238 2239 We fixed a bug where files could not be overwritten with empty files using the desktop client. 2240 2241 https://github.com/cs3org/reva/pull/4425 2242 2243 * Bugfix #4432: Fix /dav/meta endpoint for shares 2244 2245 We fixed a bug in the /dav/meta endpoint leading to internal server errors when used with 2246 shares. 2247 2248 https://github.com/cs3org/reva/pull/4432 2249 2250 * Bugfix #4422: Fix disconnected traces 2251 2252 We fixed a problem where the appctx logger was using a new traceid instead of picking up the one 2253 from the trace parent. 2254 2255 https://github.com/cs3org/reva/pull/4422 2256 2257 * Bugfix #4429: Internal link creation 2258 2259 We fix the permission checks for creating and updating public share so that it is possible again 2260 to create internal links for received shares. 2261 2262 https://github.com/owncloud/ocis/issues/8039 2263 https://github.com/cs3org/reva/pull/4429 2264 2265 * Bugfix #4407: Make ocdav return correct oc:spaceid 2266 2267 Propfinds now return `oc:spaceid` in the form of `{providerid}${spaceid}` 2268 2269 https://github.com/cs3org/reva/pull/4407 2270 2271 * Bugfix #4410: Improve OCM support 2272 2273 We fixed several bugs with OCM support. 2274 2275 https://github.com/cs3org/reva/pull/4410 2276 https://github.com/cs3org/reva/pull/4333 2277 2278 * Bugfix #4402: Refactor upload session 2279 2280 We refactored the upload session code to make it reusable, kill a lot of code and save some stat 2281 requests 2282 2283 https://github.com/cs3org/reva/pull/4402 2284 2285 * Enhancement #4421: Check permissions before adding, deleting or updating shares 2286 2287 The user share provider now checks if the user has sufficient permissions to add, delete or 2288 update a share. 2289 2290 https://github.com/cs3org/reva/pull/4421 2291 https://github.com/cs3org/reva/pull/4405 2292 2293 * Enhancement #4403: Add validation to update public share 2294 2295 We added validation to update public share provider to move the logic from the handlers to the 2296 implementing server. 2297 2298 https://github.com/cs3org/reva/pull/4403 2299 2300 * Enhancement #4409: Disable the password policy 2301 2302 We add the environment variable that allow to disable the password policy. 2303 2304 https://github.com/cs3org/reva/pull/4409 2305 2306 * Enhancement #4412: Allow authentication for nats connections 2307 2308 Allows configuring username/password for nats connections 2309 2310 https://github.com/cs3org/reva/pull/4412 2311 2312 * Enhancement #4411: Add option to configure streams non durable 2313 2314 Adds an option to disable persistence of event streams 2315 2316 https://github.com/cs3org/reva/pull/4411 2317 2318 * Enhancement #4406: Rework cache configuration 2319 2320 Reworks configuration of the cache package allowing easier configuration. Also adds a new 2321 config value allow to not persist cache entries (nats only) 2322 2323 https://github.com/cs3org/reva/pull/4406 2324 2325 * Enhancement #4414: Track more upload session metrics 2326 2327 We added a gauge for the number of uploads currently in postprocessing as well as counters for 2328 different postprocessing outcomes. 2329 2330 https://github.com/cs3org/reva/pull/4414 2331 2332 Changelog for reva 2.17.0 (2023-12-12) 2333 ======================================= 2334 2335 The following sections list the changes in reva 2.17.0 relevant to 2336 reva users. The changes are ordered by importance. 2337 2338 Summary 2339 ------- 2340 2341 * Fix #4278: Disable DEPTH infinity in PROPFIND 2342 * Fix #4318: Do not allow moves between shares 2343 * Fix #4290: Prevent panic when trying to move a non-existent file 2344 * Fix #4241: Allow an empty credentials chain in the auth middleware 2345 * Fix #4216: Fix an error message 2346 * Fix #4324: Fix capabilities decoding 2347 * Fix #4267: Fix concurrency issue 2348 * Fix #4362: Fix concurrent lookup 2349 * Fix #4336: Fix definition of "file-editor" role 2350 * Fix #4302: Fix checking of filename length 2351 * Fix #4366: Fix CS3 status code when looking up non existing share 2352 * Fix #4299: Fix HTTP verb of the generate-invite endpoint 2353 * Fix #4249: GetUserByClaim not working with MSAD for claim "userid" 2354 * Fix #4217: Fix missing case for "hide" in UpdateShares 2355 * Fix #4140: Fix missing etag in shares jail 2356 * Fix #4229: Fix destroying the Personal and Project spaces data 2357 * Fix #4193: Fix overwrite a file with an empty file 2358 * Fix #4365: Fix create public share 2359 * Fix #4380: Fix the public link update 2360 * Fix #4250: Fix race condition 2361 * Fix #4345: Fix conversion of custom ocs permissions to roles 2362 * Fix #4134: Fix share jail 2363 * Fix #4335: Fix public shares cleanup config 2364 * Fix #4338: Fix unlock via space API 2365 * Fix #4341: Fix spaceID in meta endpoint response 2366 * Fix #4351: Fix 500 when open public link 2367 * Fix #4352: Fix the tgz mime type 2368 * Fix #4388: Allow UpdateUserShare() to update just the expiration date 2369 * Fix #4214: Always pass adjusted default nats options 2370 * Fix #4291: Release lock when expired 2371 * Fix #4386: Remove dead enable_home config 2372 * Fix #4292: Return 403 when user is not permitted to log 2373 * Enh #4389: Add audio and location props 2374 * Enh #4337: Check permissions before creating shares 2375 * Enh #4326: Add search mediatype filter 2376 * Enh #4367: Add GGS mime type 2377 * Enh #4295: Add hide flag to shares 2378 * Enh #4358: Add default permissions capability for links 2379 * Enh #4133: Add more metadata to locks 2380 * Enh #4353: Add support for .docxf files 2381 * Enh #4363: Add nats-js-kv store 2382 * Enh #4197: Add the Banned-Passwords List 2383 * Enh #4190: Add the password policies 2384 * Enh #4384: Add a retry postprocessing outcome and event 2385 * Enh #4271: Add search capability 2386 * Enh #4119: Add sse event 2387 * Enh #4392: Add additional permissions to service accounts 2388 * Enh #4344: Add url extension to mime type list 2389 * Enh #4372: Add validation to the public share provider 2390 * Enh #4244: Allow listing reveived shares by service accounts 2391 * Enh #4129: Auto-Accept Shares through ServiceAccounts 2392 * Enh #4374: Handle trashbin file listings concurrently 2393 * Enh #4325: Enforce Permissions 2394 * Enh #4368: Extract log initialization 2395 * Enh #4375: Introduce UploadSessionLister interface 2396 * Enh #4268: Implement sharing roles 2397 * Enh #4160: Improve utils pkg 2398 * Enh #4335: Add sufficient permissions check function 2399 * Enh #4333: Port OCM changes from master 2400 * Enh #4270: Opt out of public link password enforcement 2401 * Enh #4181: The password policies change request 2402 * Enh #4256: Rename hidden share variable name 2403 * Enh #3315: Accept reva token as a bearer authentication 2404 * Enh #3926: Service Accounts 2405 * Enh #4359: Update go-ldap to v3.4.6 2406 * Enh #4170: Update password policies 2407 * Enh #4232: Improve error handling in utils package 2408 2409 Details 2410 ------- 2411 2412 * Bugfix #4278: Disable DEPTH infinity in PROPFIND 2413 2414 Disabled DEPTH infinity in PROPFIND for Personal /remote.php/dav/files/admin Public link 2415 share /remote.php/dav/public-files/<token> Trashbin 2416 /remote.php/dav/spaces/trash-bin/<personal-space-id> 2417 2418 https://github.com/owncloud/ocis/issues/7359 2419 https://github.com/cs3org/reva/pull/4278 2420 2421 * Bugfix #4318: Do not allow moves between shares 2422 2423 We no longer allow moves between shares, even if they resolve to the same space. 2424 2425 https://github.com/cs3org/reva/pull/4318 2426 2427 * Bugfix #4290: Prevent panic when trying to move a non-existent file 2428 2429 We fixed a panic when the user tried to move a file which does not exist. 2430 2431 https://github.com/cs3org/reva/pull/4290 2432 https://github.com/cs3org/reva/pull/4283 2433 2434 * Bugfix #4241: Allow an empty credentials chain in the auth middleware 2435 2436 When running with ocis, all external http-authentication is handled by the proxy service. So 2437 the reva auth middleware should not try to do any basic or bearer auth. 2438 2439 https://github.com/owncloud/ocis/issues/6692 2440 https://github.com/cs3org/reva/pull/4241 2441 2442 * Bugfix #4216: Fix an error message 2443 2444 Capitalize an error message for Banned-Passwords List OCIS-3809 2445 2446 https://github.com/cs3org/reva/pull/4216 2447 2448 * Bugfix #4324: Fix capabilities decoding 2449 2450 We have fixed a bug when the mapstructure is ignored the embedded structure when decode 2451 2452 https://github.com/cs3org/reva/pull/4324 2453 2454 * Bugfix #4267: Fix concurrency issue 2455 2456 We fixed a concurrency issue when listing received shares. 2457 2458 https://github.com/cs3org/reva/pull/4267 2459 2460 * Bugfix #4362: Fix concurrent lookup 2461 2462 We have fixed a bug that overwrites existing variables, leading to flaky lookup of spaces 2463 2464 https://github.com/cs3org/reva/pull/4362 2465 2466 * Bugfix #4336: Fix definition of "file-editor" role 2467 2468 The "file-editor" role was missing the AddGrant resource permission, which caused a broken 2469 mapping from ResourcePermissions to roles in certain cases. 2470 2471 https://github.com/cs3org/reva/pull/4336 2472 2473 * Bugfix #4302: Fix checking of filename length 2474 2475 Instead of checking for length of the filename the ocdav handler would sometimes check for 2476 complete file path. 2477 2478 https://github.com/cs3org/reva/pull/4302 2479 2480 * Bugfix #4366: Fix CS3 status code when looking up non existing share 2481 2482 When trying to lookup a share that does not exist we now return a proper "not found" error instead 2483 of just an "internal error. 2484 2485 https://github.com/cs3org/reva/pull/4366 2486 2487 * Bugfix #4299: Fix HTTP verb of the generate-invite endpoint 2488 2489 We changed the HTTP verb of the /generate-invite endpoint of the sciencemesh service to POST as 2490 it clearly has side effects for the system, it's not just a read-only call. 2491 2492 https://github.com/cs3org/reva/pull/4299 2493 2494 * Bugfix #4249: GetUserByClaim not working with MSAD for claim "userid" 2495 2496 We fixed GetUserByClaim to correctly deal with binary encoded userid as e.g. used for Active 2497 Directory. 2498 2499 https://github.com/owncloud/ocis/issues/7469 2500 https://github.com/cs3org/reva/pull/4249 2501 2502 * Bugfix #4217: Fix missing case for "hide" in UpdateShares 2503 2504 We fixed a bug that caused ocs to throw a 996 on update of permissions. 2505 2506 https://github.com/cs3org/reva/pull/4217 2507 2508 * Bugfix #4140: Fix missing etag in shares jail 2509 2510 The shares jail can miss the etag if the first `receivedShare` is not accepted. 2511 2512 https://github.com/cs3org/reva/pull/4140 2513 2514 * Bugfix #4229: Fix destroying the Personal and Project spaces data 2515 2516 We fixed a bug that caused destroying the Personal and Project spaces data when providing as a 2517 destination while move/copy file. Disallow use the Personal and Project spaces root as a 2518 source while move/copy file. 2519 2520 https://github.com/owncloud/ocis/issues/6739 2521 https://github.com/cs3org/reva/pull/4229 2522 2523 * Bugfix #4193: Fix overwrite a file with an empty file 2524 2525 Fix the error when the user trying to overwrite a file with an empty file 2526 2527 https://github.com/cs3org/reva/pull/4193 2528 2529 * Bugfix #4365: Fix create public share 2530 2531 If public link creation failed, it now returns a status error instead of sending ok. 2532 2533 https://github.com/cs3org/reva/pull/4365 2534 2535 * Bugfix #4380: Fix the public link update 2536 2537 We fixed a bug when normal users can update the public link to delete its password if permission 2538 is not sent in data. 2539 2540 https://github.com/owncloud/ocis/issues/7821 2541 https://github.com/cs3org/reva/pull/4380 2542 2543 * Bugfix #4250: Fix race condition 2544 2545 We have fixed a race condition when setting the default tracing provider. 2546 2547 https://github.com/owncloud/ocis/issues/4088 2548 https://github.com/cs3org/reva/pull/4250 2549 2550 * Bugfix #4345: Fix conversion of custom ocs permissions to roles 2551 2552 When creating shares with custom permissions they were under certain conditions converted 2553 into the wrong corrensponding sharing role 2554 2555 https://github.com/owncloud/enterprise/issues/6209 2556 https://github.com/cs3org/reva/pull/4345 2557 https://github.com/cs3org/reva/pull/4343 2558 https://github.com/cs3org/reva/pull/4342 2559 2560 * Bugfix #4134: Fix share jail 2561 2562 Make matching mountpoints deterministic by comparing whole path segments of mountpoints 2563 2564 https://github.com/cs3org/reva/pull/4134 2565 2566 * Bugfix #4335: Fix public shares cleanup config 2567 2568 The public shares cleanup for expired shares was not configurable via ocis. 2569 2570 https://github.com/cs3org/reva/pull/4335/ 2571 2572 * Bugfix #4338: Fix unlock via space API 2573 2574 We fixed a bug that caused Error 500 when user try to unlock file using fileid The 2575 handleSpaceUnlock has been added 2576 2577 https://github.com/owncloud/ocis/issues/7708 2578 https://github.com/cs3org/reva/pull/4338 2579 2580 * Bugfix #4341: Fix spaceID in meta endpoint response 2581 2582 When doing a `PROPFIND` on the meta endpoint the spaceID would not be rendered correctly. That 2583 is fixed now 2584 2585 https://github.com/cs3org/reva/pull/4341 2586 2587 * Bugfix #4351: Fix 500 when open public link 2588 2589 We fixed a bug that caused nil pointer and Error 500 when open a public link from a deleted user 2590 2591 https://github.com/owncloud/ocis/issues/7740 2592 https://github.com/cs3org/reva/pull/4351 2593 2594 * Bugfix #4352: Fix the tgz mime type 2595 2596 We have fixed a bug when the tgz mime type was not "application/gzip" 2597 2598 https://github.com/cs3org/reva/pull/4352 2599 2600 * Bugfix #4388: Allow UpdateUserShare() to update just the expiration date 2601 2602 The UpdateUserShare Request now works if it just contains an update of the expiration date. 2603 2604 https://github.com/cs3org/reva/pull/4388 2605 2606 * Bugfix #4214: Always pass adjusted default nats options 2607 2608 The nats-js store will now automatically reconnect. 2609 2610 https://github.com/cs3org/reva/pull/4214 2611 2612 * Bugfix #4291: Release lock when expired 2613 2614 Release an expired lock when stating the resource 2615 2616 https://github.com/cs3org/reva/pull/4291 2617 2618 * Bugfix #4386: Remove dead enable_home config 2619 2620 https://github.com/cs3org/reva/pull/4386 2621 2622 * Bugfix #4292: Return 403 when user is not permitted to log 2623 2624 When a user tries to lock a file, but doesn't have write access, the correct status code is `403` 2625 not `500` like we did until now 2626 2627 https://github.com/cs3org/reva/pull/4292 2628 2629 * Enhancement #4389: Add audio and location props 2630 2631 Add `oc:audio` and `oc:location` props to PROPFIND responses for propall requests or when 2632 they are explicitly requested. 2633 2634 https://github.com/cs3org/reva/pull/4389 2635 2636 * Enhancement #4337: Check permissions before creating shares 2637 2638 The user share provider now checks if the user has sufficient permissions to create a share. 2639 2640 https://github.com/cs3org/reva/pull/4337/ 2641 2642 * Enhancement #4326: Add search mediatype filter 2643 2644 Add filter MediaType filter shortcuts to search for specific document types. For example, a 2645 search query MimeType:documents will search for files with the following mimetypes: 2646 2647 Application/msword 2648 MimeType:application/vnd.openxmlformats-officedocument.wordprocessingml.document 2649 MimeType:application/vnd.oasis.opendocument.text MimeType:text/plain 2650 MimeType:text/markdown MimeType:application/rtf 2651 MimeType:application/vnd.apple.pages 2652 2653 https://github.com/owncloud/ocis/issues/7432 2654 https://github.com/cs3org/reva/pull/4326 2655 https://github.com/cs3org/reva/pull/4320 2656 2657 * Enhancement #4367: Add GGS mime type 2658 2659 We have added a new mime type for GGS files. This is a new file type that is used by geogebra 2660 application. 2661 2662 https://github.com/owncloud/ocis/issues/7768 2663 https://github.com/cs3org/reva/pull/4367 2664 https://github.com/owncloud/ocis/pull/7804 2665 2666 * Enhancement #4295: Add hide flag to shares 2667 2668 We have added the ability to hide shares through the 2669 ocs/v2.php/apps/files_sharing/api/v1/shares/pending/ endpoint by appending a 2670 POST-Variable called hide which can be true or false. 2671 2672 https://github.com/owncloud/ocis/issues/7589 2673 https://github.com/cs3org/reva/pull/4295 2674 https://github.com/cs3org/reva/pull/4289 2675 https://github.com/cs3org/reva/pull/4194 2676 2677 * Enhancement #4358: Add default permissions capability for links 2678 2679 A capability for default permissions for links has been added. 2680 2681 https://github.com/owncloud/web/issues/9919 2682 https://github.com/cs3org/reva/pull/4358 2683 2684 * Enhancement #4133: Add more metadata to locks 2685 2686 Adds the owners name and the time of locking to the lock metadata 2687 2688 https://github.com/cs3org/reva/pull/4133 2689 2690 * Enhancement #4353: Add support for .docxf files 2691 2692 We have added the missing .docxf mime-type to the list of supported mime-types. 2693 2694 https://github.com/owncloud/ocis/issues/6989 2695 https://github.com/cs3org/reva/pull/4353 2696 2697 * Enhancement #4363: Add nats-js-kv store 2698 2699 Add a store using the nats-js key value storage. Also fixes a panic when locking files. 2700 2701 https://github.com/cs3org/reva/pull/4363 2702 2703 * Enhancement #4197: Add the Banned-Passwords List 2704 2705 Add ability to validation against the Banned-Passwords List OCIS-3809 2706 2707 https://github.com/cs3org/reva/pull/4197 2708 2709 * Enhancement #4190: Add the password policies 2710 2711 Add the password policies OCIS-3767 2712 2713 https://github.com/cs3org/reva/pull/4190 2714 https://github.com/cs3org/reva/pull/4147 2715 2716 * Enhancement #4384: Add a retry postprocessing outcome and event 2717 2718 We added a retry postprocessing outcome and event. This enhancement provides the ability to 2719 handle retry scenarios during postprocessing. 2720 2721 https://github.com/cs3org/reva/pull/4384 2722 2723 * Enhancement #4271: Add search capability 2724 2725 We have added the ability to define search specific capabilities. 2726 2727 https://github.com/cs3org/reva/pull/4271 2728 2729 * Enhancement #4119: Add sse event 2730 2731 Adds an event to issue sse notifications 2732 2733 https://github.com/cs3org/reva/pull/4119 2734 2735 * Enhancement #4392: Add additional permissions to service accounts 2736 2737 We added the `RestoreRecycleItem` and `Delete` permissions to service accounts 2738 2739 https://github.com/owncloud/ocis/issues/7845 2740 https://github.com/cs3org/reva/pull/4392 2741 2742 * Enhancement #4344: Add url extension to mime type list 2743 2744 We have added the url extension to the mime type list 2745 2746 https://github.com/cs3org/reva/pull/4344 2747 2748 * Enhancement #4372: Add validation to the public share provider 2749 2750 We added validation to the public share provider. The idea behind it is that the cs3 clients will 2751 become much simpler. The provider can do the validation and return different status codes. The 2752 API clients then just need to convert CS3 status codes to http status codes. 2753 2754 https://github.com/owncloud/ocis/issues/6993 2755 https://github.com/cs3org/reva/pull/4372/ 2756 2757 * Enhancement #4244: Allow listing reveived shares by service accounts 2758 2759 Similar to UpdateReceivedShare we now pass a forUser parameter to list received shares when 2760 using service accounts 2761 2762 https://github.com/cs3org/reva/pull/4244 2763 2764 * Enhancement #4129: Auto-Accept Shares through ServiceAccounts 2765 2766 Auto accept shares with service accounts 2767 2768 https://github.com/cs3org/reva/pull/4129 2769 2770 * Enhancement #4374: Handle trashbin file listings concurrently 2771 2772 We now use a concurrent walker to list files in the trashbin. This improves performance when 2773 listing files in the trashbin. 2774 2775 https://github.com/owncloud/ocis/issues/7844 2776 https://github.com/cs3org/reva/pull/4374 2777 2778 * Enhancement #4325: Enforce Permissions 2779 2780 Enforce the new `Favorites.List` `Favorites.Write` and `Shares.Write` Permissions 2781 2782 https://github.com/cs3org/reva/pull/4325 2783 2784 * Enhancement #4368: Extract log initialization 2785 2786 To prepare reinitializing a logger for uploads we refactored the loginitialization into its 2787 own package 2788 2789 https://github.com/cs3org/reva/pull/4368 2790 2791 * Enhancement #4375: Introduce UploadSessionLister interface 2792 2793 We introduced a new UploadSessionLister interface that allows better control of upload 2794 sessions. Upload sessions include the processing state and can be used to filter and purge the 2795 list of currently ongoing upload sessions. 2796 2797 https://github.com/cs3org/reva/pull/4375 2798 2799 * Enhancement #4268: Implement sharing roles 2800 2801 Implement libre graph sharing roles 2802 2803 https://github.com/owncloud/ocis/issues/7418 2804 https://github.com/cs3org/reva/pull/4268 2805 2806 * Enhancement #4160: Improve utils pkg 2807 2808 Add more function to utils pkg so they don't need to be copy/pasted everywhere 2809 2810 https://github.com/cs3org/reva/pull/4160 2811 2812 * Enhancement #4335: Add sufficient permissions check function 2813 2814 We added a helper function to check for sufficient CS3 resource permissions. 2815 2816 https://github.com/owncloud/ocis/issues/6993 2817 https://github.com/cs3org/reva/pull/4335/ 2818 2819 * Enhancement #4333: Port OCM changes from master 2820 2821 We pulled in the latest ocm changes from master and are now compatible with the main go-cs3apis 2822 again. 2823 2824 https://github.com/cs3org/reva/pull/4333 2825 https://github.com/cs3org/reva/pull/4281 2826 https://github.com/cs3org/reva/pull/4239 2827 2828 * Enhancement #4270: Opt out of public link password enforcement 2829 2830 Users with special permissions can now delete passwords on read-only public links. 2831 2832 https://github.com/owncloud/ocis/issues/7538 2833 https://github.com/cs3org/reva/pull/4270 2834 2835 * Enhancement #4181: The password policies change request 2836 2837 The variables renaming OCIS-3767 2838 2839 https://github.com/cs3org/reva/pull/4181 2840 2841 * Enhancement #4256: Rename hidden share variable name 2842 2843 We have renamed the hidden flag on shares from Hide -> Hidden to align to the cs3api 2844 2845 https://github.com/cs3org/reva/pull/4256 2846 https://github.com/cs3org/cs3apis/pull/214 2847 2848 * Enhancement #3315: Accept reva token as a bearer authentication 2849 2850 https://github.com/cs3org/reva/pull/3315 2851 2852 * Enhancement #3926: Service Accounts 2853 2854 Makes reva ready for service accounts by introducing an serviceaccounts auth manager 2855 2856 https://github.com/cs3org/reva/pull/3926 2857 2858 * Enhancement #4359: Update go-ldap to v3.4.6 2859 2860 Updated go-ldap/ldap/v3 to the latest upstream release to include the latest bugfixes and 2861 enhancements. 2862 2863 https://github.com/cs3org/reva/pull/4359 2864 2865 * Enhancement #4170: Update password policies 2866 2867 The Password policies have been updated. The special characters list became constant. 2868 OCIS-3767 2869 2870 https://github.com/cs3org/reva/pull/4170 2871 2872 * Enhancement #4232: Improve error handling in utils package 2873 2874 Improves error handling in the utils package. This has no impact on users. 2875 2876 https://github.com/cs3org/reva/pull/4232 2877 2878 Changelog for reva 2.16.0 (2023-08-21) 2879 ======================================= 2880 2881 The following sections list the changes in reva 2.16.0 relevant to 2882 reva users. The changes are ordered by importance. 2883 2884 Summary 2885 ------- 2886 2887 * Fix #4051: Set treesize when creating a storage space 2888 * Fix #4093: Fix the error handling 2889 * Fix #4111: Return already exists error when child already exists 2890 * Fix #4086: Fix ocs status code for not enough permission response 2891 * Fix #4101: Make the jsoncs3 share manager indexes more robust 2892 * Fix #4099: Fix logging upload errors 2893 * Fix #4078: Fix the default document language for OnlyOffice 2894 * Fix #4082: Fix propfind permissions 2895 * Fix #4100: S3ng include md5 checksum on put 2896 * Fix #4096: Fix the user shares list 2897 * Fix #4076: Fix WebDAV permissions for space managers 2898 * Fix #4117: Fix jsoncs3 atomic persistence 2899 * Fix #4081: Propagate sizeDiff 2900 * Fix #4091: Register WebDAV HTTP methods with chi 2901 * Fix #4107: Return lock when requested 2902 * Fix #4075: Revert 4065 - bypass proxy on upload 2903 * Enh #4089: Async propagation (experimental) 2904 * Enh #4074: Allow configuring the max size of grpc messages 2905 * Enh #4083: Allow for rolling back migrations 2906 * Enh #4014: En-/Disable DEPTH:inifinity in PROPFIND 2907 * Enh #4072: Allow to specify a shutdown timeout 2908 * Enh #4103: Add .oform mimetype 2909 * Enh #4098: Allow naming nats connections 2910 * Enh #4085: Add registry refresh 2911 * Enh #4097: Remove app ticker logs 2912 * Enh #4090: Add Capability for sse 2913 * Enh #4110: Tracing events propgation 2914 2915 Details 2916 ------- 2917 2918 * Bugfix #4051: Set treesize when creating a storage space 2919 2920 We now explicitly set the treesize metadata to zero when creating a new storage space. This 2921 prevents empty treesize values for spaces with out any data. 2922 2923 https://github.com/cs3org/reva/pull/4051 2924 2925 * Bugfix #4093: Fix the error handling 2926 2927 Fix the error handling and prevent the nil pointer error 2928 2929 https://github.com/owncloud/ocis/issues/6929 2930 https://github.com/cs3org/reva/pull/4093 2931 2932 * Bugfix #4111: Return already exists error when child already exists 2933 2934 Prevents two concurrent requests from creating the same file 2935 2936 https://github.com/cs3org/reva/pull/4111 2937 2938 * Bugfix #4086: Fix ocs status code for not enough permission response 2939 2940 Request to re-share a resource or update a share by a user who does not have enough permission on 2941 the resource returned a 404 status code. This is fixed and a 403 status code is returned instead. 2942 2943 https://github.com/owncloud/ocis/issues/6670 2944 https://github.com/cs3org/reva/pull/4086 2945 2946 * Bugfix #4101: Make the jsoncs3 share manager indexes more robust 2947 2948 We fixed a problem where the jsoncs3 share manager indexes could get out of sync. 2949 2950 https://github.com/cs3org/reva/pull/4101 2951 2952 * Bugfix #4099: Fix logging upload errors 2953 2954 We fixed a problem where problems with uploading blobs to the blobstore weren't logged. 2955 2956 https://github.com/cs3org/reva/pull/4099 2957 2958 * Bugfix #4078: Fix the default document language for OnlyOffice 2959 2960 Fix the default document language for OnlyOffice 2961 2962 https://github.com/owncloud/enterprise/issues/5807 2963 https://github.com/cs3org/reva/pull/4078 2964 2965 * Bugfix #4082: Fix propfind permissions 2966 2967 Propfinds permissions field would always contain the permissions of the requested resource, 2968 even for its children This is fixed. 2969 2970 https://github.com/cs3org/reva/pull/4082 2971 2972 * Bugfix #4100: S3ng include md5 checksum on put 2973 2974 We've fixed the S3 put operation of the S3ng storage to include a md5 checksum. 2975 2976 This md5 checksum is needed when a bucket has a retention period configured (see 2977 https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html). 2978 2979 https://github.com/cs3org/reva/pull/4100 2980 2981 * Bugfix #4096: Fix the user shares list 2982 2983 Filter out a share if ShareWith is not found because the user or group already deleted 2984 2985 https://github.com/owncloud/ocis/issues/6730 2986 https://github.com/cs3org/reva/pull/4096 2987 2988 * Bugfix #4076: Fix WebDAV permissions for space managers 2989 2990 Sub shares of a space were shown as incoming shares for space manager incorrectly. 2991 2992 https://github.com/cs3org/reva/pull/4076 2993 2994 * Bugfix #4117: Fix jsoncs3 atomic persistence 2995 2996 The jsoncs3 share manager now uses etags instead of mtimes to determine when metadata needs to 2997 be updated. As a precondtition we had to change decomposedfs as well: to consistently 2998 calculate the etag for the file content we now store the mtime in the metadata and use the 2999 metadata lock for atomicity. 3000 3001 https://github.com/cs3org/reva/pull/4117 3002 3003 * Bugfix #4081: Propagate sizeDiff 3004 3005 When postprocessing failed the sizeDiff would not be propagated correctly. This is fixed 3006 3007 https://github.com/cs3org/reva/pull/4081 3008 3009 * Bugfix #4091: Register WebDAV HTTP methods with chi 3010 3011 We now correctly register the WebDAV methods with chi during init. 3012 3013 https://github.com/owncloud/ocis/issues/6924 3014 https://github.com/cs3org/reva/pull/4091 3015 3016 * Bugfix #4107: Return lock when requested 3017 3018 We did not explictly return the lock when it was requested. This lead to the lock only being 3019 included when no other metadata was requested. We fixed it by explictly returning the lock when 3020 requested. 3021 3022 https://github.com/cs3org/reva/pull/4107 3023 3024 * Bugfix #4075: Revert 4065 - bypass proxy on upload 3025 3026 We have reverted PR #4065 to bypass proxy on upload, because it caused issues with oCis. 3027 3028 https://github.com/cs3org/reva/pull/4075 3029 https://github.com/cs3org/reva/pull/4065 3030 3031 * Enhancement #4089: Async propagation (experimental) 3032 3033 Decomposedfs can now be configured to propagate treetime/treesize changes asynchronously. 3034 3035 https://github.com/cs3org/reva/pull/4089 3036 https://github.com/cs3org/reva/pull/4070 3037 3038 * Enhancement #4074: Allow configuring the max size of grpc messages 3039 3040 We added a possibility to make the max size of grpc messsages configurable. It is only 3041 configurable via envvar `OCIS_GRPC_MAX_RECEIVED_MESSAGE_SIZE` . It is recommended to use 3042 this envvar only temporarily. 3043 3044 https://github.com/cs3org/reva/pull/4074 3045 3046 * Enhancement #4083: Allow for rolling back migrations 3047 3048 The decomposedfs now supports rolling back migrations (starting with 0004). It also got a 3049 Migrations() method which returns the list of migrations incl. their states. 3050 3051 https://github.com/cs3org/reva/pull/4083 3052 3053 * Enhancement #4014: En-/Disable DEPTH:inifinity in PROPFIND 3054 3055 We have added the ability to en-/disable DEPTH:infinitiy in PROPFIND requests for spaces 3056 3057 https://github.com/owncloud/ocis/issues/4188 3058 https://github.com/cs3org/reva/pull/4014 3059 3060 * Enhancement #4072: Allow to specify a shutdown timeout 3061 3062 When setting `graceful_shutdown_timeout` revad will try to shutdown in a graceful manner 3063 when receiving an INT or TERM signal (similar to how it already behaves on SIGQUIT). This allows 3064 ongoing operations to complete before exiting. 3065 3066 If the shutdown didn't finish before `graceful_shutdown_timeout` seconds the process will 3067 exit with an error code (1). 3068 3069 https://github.com/cs3org/reva/pull/4072 3070 3071 * Enhancement #4103: Add .oform mimetype 3072 3073 We switched to a local list of mimetypes and added support for the .oform file extension. 3074 3075 https://github.com/cs3org/reva/pull/4103 3076 https://github.com/cs3org/reva/pull/4092 3077 3078 * Enhancement #4098: Allow naming nats connections 3079 3080 Bump go-micro and use new `Name` option to pass a connection name 3081 3082 https://github.com/cs3org/reva/pull/4098 3083 3084 * Enhancement #4085: Add registry refresh 3085 3086 We have added registry auto-refresh and made it configurable 3087 3088 https://github.com/owncloud/ocis/issues/6793 3089 https://github.com/owncloud/ocis/issues/3832 3090 https://github.com/cs3org/reva/pull/4085 3091 https://github.com/owncloud/ocis/pull/6910 3092 3093 * Enhancement #4097: Remove app ticker logs 3094 3095 https://github.com/cs3org/reva/pull/4097 3096 Logs 3097 would 3098 show 3099 regardless 3100 of 3101 log 3102 level 3103 as 3104 there 3105 is 3106 no 3107 configuration 3108 done 3109 beforehand. 3110 We 3111 remove 3112 the 3113 logs 3114 for 3115 now. 3116 3117 * Enhancement #4090: Add Capability for sse 3118 3119 Add a capability for server sent events 3120 3121 https://github.com/cs3org/reva/pull/4090 3122 3123 * Enhancement #4110: Tracing events propgation 3124 3125 Tracing information will now be propagated via events 3126 3127 https://github.com/cs3org/reva/pull/4110 3128 3129 Changelog for reva 2.15.0 (2023-07-17) 3130 ======================================= 3131 3132 The following sections list the changes in reva 2.15.0 relevant to 3133 reva users. The changes are ordered by importance. 3134 3135 Summary 3136 ------- 3137 3138 * Fix #4004: Add path to public link POST 3139 * Fix #3993: Add token to LinkAccessedEvent 3140 * Fix #4007: Close archive writer properly 3141 * Fix #3982: Fixed couple of smaller space lookup issues 3142 * Fix #3963: Treesize interger overflows 3143 * Fix #3943: When removing metadata always use correct database and table 3144 * Fix #4003: Don't connect ldap on startup 3145 * Fix #3978: Decomposedfs no longer os.Stats when reading node metadata 3146 * Fix #3959: Drop unnecessary stat 3147 * Fix #4032: Temporarily exclude ceph-iscsi when building revad-ceph image 3148 * Fix #4042: Fix writing 0 byte msgpack metadata 3149 * Fix #3948: Handle the bad request status 3150 * Fix #3970: Fix enforce-password issue 3151 * Fix #4057: Properly handle not-found errors when getting a public share 3152 * Fix #4048: Fix messagepack propagation 3153 * Fix #4056: Fix destroys data destination when moving issue 3154 * Fix #4012: Fix mtime if 0 size file uploaded 3155 * Fix #3955: Fix panic 3156 * Fix #3977: Prevent direct access to trash items 3157 * Fix #3933: Concurrently invalidate mtime cache in jsoncs3 share manager 3158 * Fix #3985: Reduce jsoncs3 lock congestion 3159 * Fix #3960: Add trace span details 3160 * Fix #3951: Link context in metadata client 3161 * Fix #4010: Omit spaceroot when archiving 3162 * Fix #3950: Use plain otel tracing in metadata client 3163 * Fix #3975: Decomposedfs now resolves the parent without an os.Stat 3164 * Fix #4047: Publish events synchrously 3165 * Fix #4039: Restart Postprocessing 3166 * Chg #3947: Bump golangci-lint to 1.51.2 3167 * Chg #3945: Revert golangci-lint back to 1.50.1 3168 * Enh #4060: We added a go-micro based app-provider registry 3169 * Enh #4013: Add new WebDAV permissions 3170 * Enh #3966: Add space metadata to ocs shares list 3171 * Enh #3987: Cache space indexes 3172 * Enh #3953: Client selector pool 3173 * Enh #3973: More logging for metadata propagation 3174 * Enh #4059: Improve space index performance 3175 * Enh #3994: Load matching spaces concurrently 3176 * Enh #4049: Do not invalidate filemetadata cache early 3177 * Enh #4040: Allow to use external trace provider in micro service 3178 * Enh #4019: Allow to use external trace provider 3179 * Enh #4045: Log error message in grpc interceptor 3180 * Enh #3989: Parallelization of jsoncs3 operations 3181 * Enh #3941: Adding tracing for jsoncs3 3182 * Enh #3965: ResumePostprocessing Event 3183 * Enh #3809: Trace decomposedfs syscalls 3184 * Enh #4067: Trace upload progress 3185 * Enh #3887: Trace requests through datagateway 3186 * Enh #3981: We have updated the UserFeatureChangedEvent to reflect value changes 3187 * Enh #4052: Update go-ldap to v3.4.5 3188 * Enh #4065: Upload directly to dataprovider 3189 * Enh #4046: Use correct tracer name 3190 * Enh #3986: Allow disabling wopi chat 3191 3192 Details 3193 ------- 3194 3195 * Bugfix #4004: Add path to public link POST 3196 3197 When POSTing a public link, the response would not contain the complete path to the resource. 3198 This is fixed now. 3199 3200 https://github.com/cs3org/reva/pull/4004 3201 3202 * Bugfix #3993: Add token to LinkAccessedEvent 3203 3204 We added the link token to the LinkAccessedEvent 3205 3206 https://github.com/owncloud/ocis/issues/3753 3207 https://github.com/cs3org/reva/pull/3993 3208 3209 * Bugfix #4007: Close archive writer properly 3210 3211 When running into max size error (or random other error) the archiver would not close the 3212 writer. Only it success case it would. This resulted in broken archives on the client. We now 3213 `defer` the writer close. 3214 3215 https://github.com/cs3org/reva/pull/4007 3216 3217 * Bugfix #3982: Fixed couple of smaller space lookup issues 3218 3219 https://github.com/cs3org/reva/pull/3982 3220 3221 * Bugfix #3963: Treesize interger overflows 3222 3223 Reading the treesize was parsing the string value as a signed integer while setting the 3224 treesize used unsigned integers this could cause failures (out of range errors) when reading 3225 very large treesizes. 3226 3227 https://github.com/cs3org/reva/pull/3963 3228 3229 * Bugfix #3943: When removing metadata always use correct database and table 3230 3231 https://github.com/cs3org/reva/pull/3943 3232 3233 * Bugfix #4003: Don't connect ldap on startup 3234 3235 This leads to misleading error messages. Instead connect on first request. 3236 3237 https://github.com/cs3org/reva/pull/4003 3238 3239 * Bugfix #3978: Decomposedfs no longer os.Stats when reading node metadata 3240 3241 https://github.com/cs3org/reva/pull/3978 3242 3243 * Bugfix #3959: Drop unnecessary stat 3244 3245 https://github.com/cs3org/reva/pull/3959 3246 3247 * Bugfix #4032: Temporarily exclude ceph-iscsi when building revad-ceph image 3248 3249 Due to `Package ceph-iscsi-3.6-1.el8.noarch.rpm is not signed` error when building the 3250 revad-ceph docker image, the package `ceph-iscsi` has been excluded from the dnf update. It 3251 will be included again once the pkg will be signed again. 3252 3253 https://github.com/cs3org/reva/pull/4032 3254 3255 * Bugfix #4042: Fix writing 0 byte msgpack metadata 3256 3257 File metadata is now written atomically to be more resilient during timeouts 3258 3259 https://github.com/cs3org/reva/pull/4042 3260 https://github.com/cs3org/reva/pull/4034 3261 https://github.com/cs3org/reva/pull/4033 3262 3263 * Bugfix #3948: Handle the bad request status 3264 3265 Handle the bad request status for the CreateStorageSpace function 3266 3267 https://github.com/cs3org/reva/pull/3948 3268 3269 * Bugfix #3970: Fix enforce-password issue 3270 3271 Fix updating public share without password when enforce-password is enabled 3272 3273 https://github.com/owncloud/ocis/issues/6476 3274 https://github.com/cs3org/reva/pull/3970 3275 3276 * Bugfix #4057: Properly handle not-found errors when getting a public share 3277 3278 We fixed a problem where not-found errors caused a hard error instead of a proper RPC error 3279 state. 3280 3281 https://github.com/cs3org/reva/pull/4057 3282 3283 * Bugfix #4048: Fix messagepack propagation 3284 3285 We cannot read from the lockfile. The data is in the metadata file. 3286 3287 https://github.com/cs3org/reva/pull/4048 3288 3289 * Bugfix #4056: Fix destroys data destination when moving issue 3290 3291 Fix moving a file and providing the fileID of the destination destroys data 3292 3293 https://github.com/owncloud/ocis/issues/6739 3294 https://github.com/cs3org/reva/pull/4056 3295 3296 * Bugfix #4012: Fix mtime if 0 size file uploaded 3297 3298 Fix mtime if 0 size file uploaded 3299 3300 https://github.com/owncloud/ocis/issues/1248 3301 https://github.com/cs3org/reva/pull/4012 3302 3303 * Bugfix #3955: Fix panic 3304 3305 https://github.com/cs3org/reva/pull/3955 3306 3307 * Bugfix #3977: Prevent direct access to trash items 3308 3309 Decomposedfs now prevents direct access to trash items 3310 3311 https://github.com/cs3org/reva/pull/3977 3312 3313 * Bugfix #3933: Concurrently invalidate mtime cache in jsoncs3 share manager 3314 3315 https://github.com/cs3org/reva/pull/3933 3316 3317 * Bugfix #3985: Reduce jsoncs3 lock congestion 3318 3319 We changed the locking strategy in the jsoncs3 share manager to cause less lock congestion 3320 increasing the performance in certain scenarios. 3321 3322 https://github.com/cs3org/reva/pull/3985 3323 https://github.com/cs3org/reva/pull/3964 3324 3325 * Bugfix #3960: Add trace span details 3326 3327 https://github.com/cs3org/reva/pull/3960 3328 3329 * Bugfix #3951: Link context in metadata client 3330 3331 We now disconnect the existing outgoing grpc metadata when making calls in the metadata 3332 client. To keep track of related spans we link the two contexts. 3333 3334 https://github.com/cs3org/reva/pull/3951 3335 3336 * Bugfix #4010: Omit spaceroot when archiving 3337 3338 When archiving a space there was an empty folder named `.` added. This was because of the 3339 spaceroot which was wrongly interpreted. We now omit the space root when creating an archive. 3340 3341 https://github.com/cs3org/reva/pull/4010 3342 https://github.com/cs3org/reva/pull/3999 3343 3344 * Bugfix #3950: Use plain otel tracing in metadata client 3345 3346 In some cases there was no tracer provider in the context. Since the otel tracing has settled we 3347 will fix problems by moving to the recommended best practices. A good starting point is 3348 https://lightstep.com/blog/opentelemetry-go-all-you-need-to-know 3349 3350 https://github.com/cs3org/reva/pull/3950 3351 3352 * Bugfix #3975: Decomposedfs now resolves the parent without an os.Stat 3353 3354 https://github.com/cs3org/reva/pull/3975 3355 3356 * Bugfix #4047: Publish events synchrously 3357 3358 Async publishing can lead to loss of events under some circumstances 3359 3360 https://github.com/cs3org/reva/pull/4047 3361 3362 * Bugfix #4039: Restart Postprocessing 3363 3364 Resend the `BytesReady` event if instructed. 3365 3366 https://github.com/cs3org/reva/pull/4039 3367 3368 * Change #3947: Bump golangci-lint to 1.51.2 3369 3370 The 1.50.1 release had memory issues with go1.20 3371 3372 https://github.com/cs3org/reva/pull/3947 3373 3374 * Change #3945: Revert golangci-lint back to 1.50.1 3375 3376 https://github.com/cs3org/reva/pull/3945 3377 3378 * Enhancement #4060: We added a go-micro based app-provider registry 3379 3380 We added a dynamic go-micro based app-provider registry with a dynamic TTL 3381 3382 https://github.com/owncloud/ocis/issues/3832 3383 https://github.com/cs3org/reva/pull/4060 3384 3385 * Enhancement #4013: Add new WebDAV permissions 3386 3387 We added the permission "PurgeRecycle" to the WebDAV permissions list. I is represented by the 3388 capital letter `P`. 3389 3390 https://github.com/cs3org/reva/pull/4013 3391 3392 * Enhancement #3966: Add space metadata to ocs shares list 3393 3394 We needed to add the space ID and the space alias of the original space to the share metadata when 3395 we are listing shares. This is needed to directly navigate to the originating space location. 3396 3397 https://github.com/cs3org/reva/pull/3966 3398 3399 * Enhancement #3987: Cache space indexes 3400 3401 Decomposedfs now caches the different space indexes in memory which greatly improves the 3402 performance of ListStorageSpaces on slow storages. 3403 3404 https://github.com/cs3org/reva/pull/3987 3405 3406 * Enhancement #3953: Client selector pool 3407 3408 Add the ability to use iterable client pools for the grpc service communication, the 3409 underlying grpc client and connection is fetched randomly from the available services. 3410 3411 https://github.com/cs3org/reva/pull/3953 3412 https://github.com/cs3org/reva/pull/3939 3413 3414 * Enhancement #3973: More logging for metadata propagation 3415 3416 In order to detect possible issues with the treesize propagation we made the logging a bit more 3417 verbose. 3418 3419 https://github.com/cs3org/reva/pull/3973 3420 3421 * Enhancement #4059: Improve space index performance 3422 3423 The directory tree based decomposedfs space indexes have been replaced with messagepack base 3424 indexes which improves performance when reading the index, especially on slow storages. 3425 3426 https://github.com/cs3org/reva/pull/4059 3427 https://github.com/cs3org/reva/pull/4058 3428 https://github.com/cs3org/reva/pull/3995 3429 3430 * Enhancement #3994: Load matching spaces concurrently 3431 3432 Matching spaces in a ListStorageSpace call are now loaded concurrently which reduces the 3433 response time. 3434 3435 https://github.com/cs3org/reva/pull/3994 3436 3437 * Enhancement #4049: Do not invalidate filemetadata cache early 3438 3439 We can postpone overwriting the cache until the metadata has ben written to disk. This prevents 3440 other requests trying to read metadata from having to wait for a readlock for the metadata file. 3441 3442 https://github.com/cs3org/reva/pull/4049 3443 3444 * Enhancement #4040: Allow to use external trace provider in micro service 3445 3446 Allow injecting of external trace provider in the micro service instead of forcing the 3447 initialisation of an internal one. 3448 3449 https://github.com/cs3org/reva/pull/4040 3450 3451 * Enhancement #4019: Allow to use external trace provider 3452 3453 Allow injecting of external trace provider instead of forcing the initialisation of an 3454 internal one. 3455 3456 https://github.com/cs3org/reva/pull/4019 3457 3458 * Enhancement #4045: Log error message in grpc interceptor 3459 3460 The grpc log interceptor now logs the actual error message 3461 3462 https://github.com/cs3org/reva/pull/4045 3463 3464 * Enhancement #3989: Parallelization of jsoncs3 operations 3465 3466 Run removeShare and share create storage operations in parallel. 3467 3468 https://github.com/cs3org/reva/pull/3989 3469 3470 * Enhancement #3941: Adding tracing for jsoncs3 3471 3472 https://github.com/cs3org/reva/pull/3941 3473 3474 * Enhancement #3965: ResumePostprocessing Event 3475 3476 Add a new event: `ResumePostprocessing`. It can be emitted to repair broken postprocessing 3477 3478 https://github.com/cs3org/reva/pull/3965 3479 3480 * Enhancement #3809: Trace decomposedfs syscalls 3481 3482 To investigate performance characteristics of the underlying storage when the system is 3483 under load we wrapped the related syscalls in decomposedfs with trace spans. 3484 3485 https://github.com/cs3org/reva/pull/3809 3486 3487 * Enhancement #4067: Trace upload progress 3488 3489 https://github.com/cs3org/reva/pull/4067 3490 3491 * Enhancement #3887: Trace requests through datagateway 3492 3493 The datagateway now forwards tracing headers. 3494 3495 https://github.com/cs3org/reva/pull/3887 3496 3497 * Enhancement #3981: We have updated the UserFeatureChangedEvent to reflect value changes 3498 3499 A UserFeatureChanged Event can now contain an old and a new value to reflect value changes in 3500 audit logs. 3501 3502 https://github.com/owncloud/ocis/issues/3753 3503 https://github.com/cs3org/reva/pull/3981 3504 3505 * Enhancement #4052: Update go-ldap to v3.4.5 3506 3507 Updated go-ldap/ldap/v3 to the latest upstream release to get back to a released version (we 3508 were targeting a specific bugfix commit previously) 3509 3510 https://github.com/cs3org/reva/pull/4052 3511 3512 * Enhancement #4065: Upload directly to dataprovider 3513 3514 The ocdav service can now bypass the datagateway if it is configured with a transfer secret. 3515 This prevents unnecessary roundtrips and halves the network traffic during uploads for the 3516 proxy. 3517 3518 https://github.com/owncloud/ocis/issues/6296 3519 https://github.com/cs3org/reva/pull/4065 3520 3521 * Enhancement #4046: Use correct tracer name 3522 3523 https://github.com/cs3org/reva/pull/4046 3524 3525 * Enhancement #3986: Allow disabling wopi chat 3526 3527 Allow disabling the chat in wopi (support for onlyoffice only) 3528 3529 https://github.com/cs3org/reva/pull/3986 3530 3531 Changelog for reva 2.14.0 (2023-06-05) 3532 ======================================= 3533 3534 The following sections list the changes in reva 2.14.0 relevant to 3535 reva users. The changes are ordered by importance. 3536 3537 Summary 3538 ------- 3539 3540 * Fix #3919: We added missing timestamps to events 3541 * Fix #3911: Clean IDCache properly 3542 * Fix #3896: Do not lose old revisions when overwriting a file during copy 3543 * Fix #3918: Dont enumerate users 3544 * Fix #3902: Do not try to use the cache for empty node 3545 * Fix #3877: Empty exact list while searching for a sharee 3546 * Fix #3906: Fix preflight requests 3547 * Fix #3934: Fix the space editor permissions 3548 * Fix #3899: Harden uploads 3549 * Fix #3917: Prevent last space manager from leaving 3550 * Fix #3866: Fix public link lookup performance 3551 * Fix #3904: Improve performance of directory listings 3552 * Enh #3893: Cleanup Space Delete permissions 3553 * Enh #3894: Fix err when the user share the locked file 3554 * Enh #3913: Introduce FullTextSearch Capability 3555 * Enh #3898: Add Graph User capabilities 3556 * Enh #3496: Add otlp tracing exporter 3557 * Enh #3922: Rename permissions 3558 3559 Details 3560 ------- 3561 3562 * Bugfix #3919: We added missing timestamps to events 3563 3564 We added missing timestamps to events 3565 3566 https://github.com/owncloud/ocis/issues/3753 3567 https://github.com/cs3org/reva/pull/3919 3568 3569 * Bugfix #3911: Clean IDCache properly 3570 3571 Decomposedfs' subpackage `tree` uses an idCache to avoid reading too often from disc. In case 3572 of a `move` or `delete` this cache was properly cleaned, but when renaming a file (= move with 3573 same parent) the cache wasn't cleaned. This lead to strange behaviour when uploading files 3574 with the same name and renaming them 3575 3576 https://github.com/cs3org/reva/pull/3911 3577 https://github.com/cs3org/reva/pull/3903 3578 3579 * Bugfix #3896: Do not lose old revisions when overwriting a file during copy 3580 3581 We no longer delete-and-upload targets of copy operations but rather add a new version with the 3582 source content. 3583 3584 This makes "overwrite when copying" behave the same as "overwrite when uploading". 3585 3586 Overwriting when moving a file still deletes the old file (moves it into the trash) and replaces 3587 the whole file including the revisions of the source file. 3588 3589 https://github.com/cs3org/reva/pull/3896 3590 3591 * Bugfix #3918: Dont enumerate users 3592 3593 Fixes a user enumeration via DELETE share endpoint 3594 3595 https://github.com/cs3org/reva/pull/3918 3596 https://github.com/cs3org/reva/pull/3916 3597 3598 * Bugfix #3902: Do not try to use the cache for empty node 3599 3600 We fixed a problem where nodes that did not have an ID set were still trying to use the cache for 3601 their metadata resulting in clashing cache keys. 3602 3603 https://github.com/cs3org/reva/pull/3902 3604 3605 * Bugfix #3877: Empty exact list while searching for a sharee 3606 3607 We fixed a bug in the sharing api, it always returns an empty exact list while searching for a 3608 sharee 3609 3610 https://github.com/owncloud/ocis/issues/4265 3611 https://github.com/cs3org/reva/pull/3877 3612 3613 * Bugfix #3906: Fix preflight requests 3614 3615 The datagateway now correctly overwrites the preconfigured CORS related headers with the 3616 headers returned by a dataprovider. 3617 3618 https://github.com/cs3org/reva/pull/3906 3619 3620 * Bugfix #3934: Fix the space editor permissions 3621 3622 We fixed the permissions of a space editor which accidentally granted the permission to purge 3623 the trash bin. 3624 3625 https://github.com/cs3org/reva/pull/3934 3626 3627 * Bugfix #3899: Harden uploads 3628 3629 Uploads now check response headers for a file id and omit a subsequent stat request which might 3630 land on a storage provider that does not yet see the new file due to latency, eg. when NFS caches 3631 direntries. 3632 3633 https://github.com/cs3org/reva/pull/3899 3634 3635 * Bugfix #3917: Prevent last space manager from leaving 3636 3637 It should not be possible for the last remaining space manager to change his role or get changed 3638 by others. 3639 3640 https://github.com/cs3org/reva/pull/3917 3641 3642 * Bugfix #3866: Fix public link lookup performance 3643 3644 Fix inefficient path based space lookup for public links 3645 3646 https://github.com/cs3org/reva/pull/3866 3647 3648 * Bugfix #3904: Improve performance of directory listings 3649 3650 We improved the performance of directory listing by rendering the propfind XML concurrently. 3651 3652 https://github.com/cs3org/reva/pull/3904 3653 3654 * Enhancement #3893: Cleanup Space Delete permissions 3655 3656 Space Delete and Disable permissions ("Drive.ReadWriteEnabled", "delete-all-spaces", 3657 "delete-all-home-spaces") were overlapping and not clear differentiatable. The new logic 3658 is as follows: - "Drive.ReadWriteEnabled" allows enabling or disabling a project space - 3659 "delete-all-home-spaces" allows deleting personal spaces of users - "delete-all-spaces" 3660 allows deleting a project space - Space Mangers can still disable/enable a drive 3661 3662 https://github.com/cs3org/reva/pull/3893 3663 3664 * Enhancement #3894: Fix err when the user share the locked file 3665 3666 Fix unexpected behavior when the user try to share the locked file 3667 3668 https://github.com/owncloud/ocis/issues/6197 3669 https://github.com/cs3org/reva/pull/3894 3670 3671 * Enhancement #3913: Introduce FullTextSearch Capability 3672 3673 Add a capability that shows if fulltextsearch is supported by the server 3674 3675 https://github.com/cs3org/reva/pull/3913 3676 3677 * Enhancement #3898: Add Graph User capabilities 3678 3679 Add capabilities to show if user can be created or deleted and if they can change their password 3680 on self service 3681 3682 https://github.com/cs3org/reva/pull/3898 3683 3684 * Enhancement #3496: Add otlp tracing exporter 3685 3686 We can now use `tracing_exporter=otlp` to send traces using the otlp exporter. 3687 3688 https://github.com/cs3org/reva/pull/3496 3689 3690 * Enhancement #3922: Rename permissions 3691 3692 Rename permissions to be consistent and future proof 3693 3694 https://github.com/cs3org/reva/pull/3922 3695 3696 Changelog for reva 2.13.3 (2023-05-17) 3697 ======================================= 3698 3699 The following sections list the changes in reva 2.13.3 relevant to 3700 reva users. The changes are ordered by importance. 3701 3702 Summary 3703 ------- 3704 3705 * Fix #3890: Bring back public link sharing of project space roots 3706 * Fix #3888: We fixed a bug that unnecessarily fetched all members of a group 3707 * Fix #3886: Decomposedfs no longer deadlocks when cache is disabled 3708 * Fix #3892: Fix public links 3709 * Fix #3876: Remove go-micro/store/redis specific workaround 3710 * Fix #3889: Update space root mtime when changing space metadata 3711 * Fix #3836: Fix spaceID in the decomposedFS 3712 * Fix #3867: Restore last version after positive result 3713 * Fix #3849: Prevent sharing space roots and personal spaces 3714 * Enh #3865: Remove unneccessary code from gateway 3715 * Enh #3895: Add missing expiry date to shares 3716 3717 Details 3718 ------- 3719 3720 * Bugfix #3890: Bring back public link sharing of project space roots 3721 3722 We reenabled sharing of project space roots 3723 3724 https://github.com/cs3org/reva/pull/3890 3725 3726 * Bugfix #3888: We fixed a bug that unnecessarily fetched all members of a group 3727 3728 Adding or removing groups to spaces is now done without retrieving all group members 3729 3730 https://github.com/cs3org/reva/pull/3888 3731 3732 * Bugfix #3886: Decomposedfs no longer deadlocks when cache is disabled 3733 3734 We now pass a Reader for the locked file to lower level functions so metadata can be read without 3735 aquiring a new file lock. 3736 3737 https://github.com/cs3org/reva/pull/3886 3738 3739 * Bugfix #3892: Fix public links 3740 3741 Public links would not work when not send on the root level. Reason was wrong path matching. Also 3742 fixes a critical bug that was unfound before 3743 3744 https://github.com/cs3org/reva/pull/3892 3745 3746 * Bugfix #3876: Remove go-micro/store/redis specific workaround 3747 3748 We submitted an upstream fix for an issue in the go-micro/store redis plugin. Which allowed us 3749 to remove a redis specific workaround from the reva storage cache implementation. 3750 3751 https://github.com/cs3org/reva/pull/3876 3752 3753 * Bugfix #3889: Update space root mtime when changing space metadata 3754 3755 We fixed a problem where space mtimes were not updated when their metadata changed, resulting 3756 in changes not being picked up by other services like search. 3757 3758 https://github.com/owncloud/ocis/issues/6289 3759 https://github.com/cs3org/reva/pull/3889 3760 3761 * Bugfix #3836: Fix spaceID in the decomposedFS 3762 3763 We returned the wrong spaceID within ``storageSpaceFromNode``. This was fixed and the 3764 storageprovider ID handling refactored. 3765 3766 https://github.com/cs3org/reva/pull/3836 3767 3768 * Bugfix #3867: Restore last version after positive result 3769 3770 We fixed a bug in the copy routine that prevented restoring of a previous version after 3771 post-processing (e.g. virus scanning) 3772 3773 https://github.com/owncloud/enterprise/issues/5709 3774 https://github.com/cs3org/reva/pull/3867 3775 3776 * Bugfix #3849: Prevent sharing space roots and personal spaces 3777 3778 We fixed a problem where sharing space roots or adding members to a personal space was possible. 3779 3780 https://github.com/cs3org/reva/pull/3849 3781 3782 * Enhancement #3865: Remove unneccessary code from gateway 3783 3784 Delete unused removeReference code from gateway 3785 3786 https://github.com/cs3org/reva/pull/3865 3787 3788 * Enhancement #3895: Add missing expiry date to shares 3789 3790 We have added expiry dates to the shares 3791 3792 https://github.com/owncloud/ocis/issues/5442 3793 https://github.com/cs3org/reva/pull/3895 3794 3795 Changelog for reva 2.13.2 (2023-05-08) 3796 ======================================= 3797 3798 The following sections list the changes in reva 2.13.2 relevant to 3799 reva users. The changes are ordered by importance. 3800 3801 Summary 3802 ------- 3803 3804 * Fix #3845: Fix propagation 3805 * Fix #3856: Fix response code 3806 * Fix #3857: Fix trashbin purge 3807 3808 Details 3809 ------- 3810 3811 * Bugfix #3845: Fix propagation 3812 3813 Fix propagation in concurrency scenarios 3814 3815 https://github.com/cs3org/reva/pull/3845 3816 3817 * Bugfix #3856: Fix response code 3818 3819 The DeleteStorageSpace method response code has been changed 3820 3821 https://github.com/cs3org/reva/pull/3856 3822 3823 * Bugfix #3857: Fix trashbin purge 3824 3825 We have fixed a nil-pointer-exception, when purging files from the trashbin that do not have a 3826 parent (any more) 3827 3828 https://github.com/owncloud/ocis/issues/6245 3829 https://github.com/cs3org/reva/pull/3857 3830 3831 Changelog for reva 2.13.1 (2023-05-03) 3832 ======================================= 3833 3834 The following sections list the changes in reva 2.13.1 relevant to 3835 reva users. The changes are ordered by importance. 3836 3837 Summary 3838 ------- 3839 3840 * Fix #3843: Allow scope check to impersonate space owners 3841 3842 Details 3843 ------- 3844 3845 * Bugfix #3843: Allow scope check to impersonate space owners 3846 3847 The publicshare scope check now fakes a user to mint an access token when impersonating a user of 3848 type `SPACE_OWNER` which is used for project spaces. This fixes downloading archives from 3849 public link shares in project spaces. 3850 3851 https://github.com/owncloud/ocis/issues/5229 3852 https://github.com/cs3org/reva/pull/3843 3853 3854 Changelog for reva 2.13.0 (2023-05-02) 3855 ======================================= 3856 3857 The following sections list the changes in reva 2.13.0 relevant to 3858 reva users. The changes are ordered by importance. 3859 3860 Summary 3861 ------- 3862 3863 * Fix #3570: Return 425 on HEAD 3864 * Fix #3830: Be more robust when logging errors 3865 * Fix #3815: Bump micro redis store 3866 * Fix #3596: Cache CreateHome calls 3867 * Fix #3823: Deny correctlty in decomposedfs 3868 * Fix #3826: Add by group index to decomposedfs 3869 * Fix #3618: Drain body on failed put 3870 * Fix #3420: EOS grpc fixes 3871 * Fix #3685: Send fileid on copy 3872 * Fix #3688: Return 425 on GET 3873 * Fix #3755: Fix app provider language validation 3874 * Fix #3800: Fix building for freebsd 3875 * Fix #3700: Fix caching 3876 * Fix #3535: Fix ceph driver storage fs implementation 3877 * Fix #3764: Fix missing CORS config in ocdav service 3878 * Fix #3710: Fix error when try to delete space without permission 3879 * Fix #3822: Fix deleting spaces 3880 * Fix #3718: Fix revad-eos docker image which was failing to build 3881 * Fix #3559: Fix build on freebsd 3882 * Fix #3696: Fix ldap filters when checking for enabled users 3883 * Fix #3767: Decode binary UUID when looking up a users group memberships 3884 * Fix #3741: Fix listing shares to multiple groups 3885 * Fix #3834: Return correct error during MKCOL 3886 * Fix #3841: Fix nil pointer and improve logging 3887 * Fix #3831: Ignore 'null' mtime on tus upload 3888 * Fix #3758: Fix public links with enforced password 3889 * Fix #3814: Fix stat cache access 3890 * Fix #3650: FreeBSD xattr support 3891 * Fix #3827: Initialize user cache for decomposedfs 3892 * Fix #3818: Invalidate cache when deleting space 3893 * Fix #3812: Filemetadata Cache now deletes keys without listing them first 3894 * Fix #3817: Pipeline cache deletes 3895 * Fix #3711: Replace ini metadata backend by messagepack backend 3896 * Fix #3828: Send quota when listing spaces in decomposedfs 3897 * Fix #3681: Fix etag of "empty" shares jail 3898 * Fix #3748: Prevent service from panicking 3899 * Fix #3816: Write Metadata once 3900 * Chg #3641: Hide file versions for share receivers 3901 * Chg #3820: Streamline stores 3902 * Enh #3732: Make method for detecting the metadata backend public 3903 * Enh #3789: Add capabilities indicating if user attributes are read-only 3904 * Enh #3792: Add a prometheus gauge to keep track of active uploads and downloads 3905 * Enh #3637: Add an ID to each events 3906 * Enh #3704: Add more information to events 3907 * Enh #3744: Add LDAP user type attribute 3908 * Enh #3806: Decomposedfs now supports filtering spaces by owner 3909 * Enh #3730: Antivirus 3910 * Enh #3531: Async Postprocessing 3911 * Enh #3571: Async Upload Improvements 3912 * Enh #3801: Cache node ids 3913 * Enh #3690: Check set project space quota permission 3914 * Enh #3686: User disabling functionality 3915 * Enh #160: Implement the CS3 Lock API in the EOS storage driver 3916 * Enh #3575: Fix skip group grant index cleanup 3917 * Enh #3564: Fix tag pkg 3918 * Enh #3756: Prepare for GDPR export 3919 * Enh #3612: Group feature changed event added 3920 * Enh #3729: Improve decomposedfs performance, esp. with network fs/cache 3921 * Enh #3697: Improve the ini file metadata backend 3922 * Enh #3819: Allow creating internal links without permission 3923 * Enh #3740: Limit concurrency in decomposedfs 3924 * Enh #3569: Always list shares jail when listing spaces 3925 * Enh #3788: Make resharing configurable 3926 * Enh #3674: Introduce ini file based metadata backend 3927 * Enh #3728: Automatically migrate file metadata from xattrs to messagepack 3928 * Enh #3807: Name Validation 3929 * Enh #3574: Opaque space group 3930 * Enh #3598: Pass estream to Storage Providers 3931 * Enh #3763: Add a capability for personal data export 3932 * Enh #3577: Prepare for SSE 3933 * Enh #3731: Add config option to enforce passwords on public links 3934 * Enh #3693: Enforce the PublicLink.Write permission 3935 * Enh #3497: Introduce owncloud 10 publiclink manager 3936 * Enh #3714: Add global max quota option and quota for CreateHome 3937 * Enh #3759: Set correct share type when listing shares 3938 * Enh #3594: Add expiration to user and group shares 3939 * Enh #3580: Share expired event 3940 * Enh #3620: Allow a new ShareType `SpaceMembershipGroup` 3941 * Enh #3609: Space Management Permissions 3942 * Enh #3655: Add expiration date to space memberships 3943 * Enh #3697: Add support for redis sentinel caches 3944 * Enh #3552: Suppress tusd logs 3945 * Enh #3555: Tags 3946 * Enh #3785: Increase unit test coverage in the ocdav service 3947 * Enh #3739: Try to rename uploaded files to their final position 3948 * Enh #3610: Walk and log chi routes 3949 3950 Details 3951 ------- 3952 3953 * Bugfix #3570: Return 425 on HEAD 3954 3955 For files in postprocessing return 425 also on `HEAD` requests 3956 3957 https://github.com/cs3org/reva/pull/3570 3958 3959 * Bugfix #3830: Be more robust when logging errors 3960 3961 We fixed a problem where logging errors resulted in a panic. 3962 3963 https://github.com/cs3org/reva/pull/3830 3964 3965 * Bugfix #3815: Bump micro redis store 3966 3967 We updated the micro store implementation for redis to use SCAN instead of KEYS 3968 3969 https://github.com/cs3org/reva/pull/3815 3970 https://github.com/cs3org/reva/pull/3809 3971 3972 * Bugfix #3596: Cache CreateHome calls 3973 3974 We restored the caching of CreateHome calls getting rid of a lot of internal calls. 3975 3976 https://github.com/cs3org/reva/pull/3596 3977 3978 * Bugfix #3823: Deny correctlty in decomposedfs 3979 3980 Decomposedfs had problems denying resources for groups. This is now fixed 3981 3982 https://github.com/cs3org/reva/pull/3823 3983 3984 * Bugfix #3826: Add by group index to decomposedfs 3985 3986 https://github.com/cs3org/reva/pull/3826 3987 3988 * Bugfix #3618: Drain body on failed put 3989 3990 When a put request fails the server would not drain the body. This will lead to `connection 3991 closed` errors on clients when using http 1 3992 3993 https://github.com/cs3org/reva/pull/3618 3994 3995 * Bugfix #3420: EOS grpc fixes 3996 3997 The shares and the applications were not working with the EOS grpc storage driver. This fixes 3998 both. 3999 4000 https://github.com/cs3org/reva/pull/3420 4001 4002 * Bugfix #3685: Send fileid on copy 4003 4004 When copying a folder oc-fileid header would not be added (unlinke when copying files) this is 4005 fixed now. 4006 4007 https://github.com/cs3org/reva/pull/3685 4008 4009 * Bugfix #3688: Return 425 on GET 4010 4011 On ocdav GET endpoint the server will now return `425` instead `500` when the file is being 4012 processed 4013 4014 https://github.com/cs3org/reva/pull/3688 4015 4016 * Bugfix #3755: Fix app provider language validation 4017 4018 This changes the validation to only look at the first part (tag) of the language code and ignore 4019 the second part (sub-tag). 4020 4021 https://github.com/cs3org/reva/pull/3755 4022 4023 * Bugfix #3800: Fix building for freebsd 4024 4025 We fixed a problem preventing freebsd builds. 4026 4027 https://github.com/cs3org/reva/pull/3800 4028 4029 * Bugfix #3700: Fix caching 4030 4031 Do not cache files that are in processing. 4032 4033 https://github.com/cs3org/reva/pull/3700 4034 4035 * Bugfix #3535: Fix ceph driver storage fs implementation 4036 4037 We adapted the Ceph driver for the edge branch. 4038 4039 https://github.com/cs3org/reva/pull/3535 4040 4041 * Bugfix #3764: Fix missing CORS config in ocdav service 4042 4043 The ocdav service is started with a go micro wrapper. We needed to add the cors config. 4044 4045 https://github.com/cs3org/reva/pull/3764 4046 4047 * Bugfix #3710: Fix error when try to delete space without permission 4048 4049 When a user without the correct permission tries to delete a storage space, return a 4050 PermissionDenied error instead of an Internal Error. 4051 4052 https://github.com/cs3org/reva/pull/3710 4053 4054 * Bugfix #3822: Fix deleting spaces 4055 4056 We fixed a problem when trying to delete spaces. 4057 4058 https://github.com/cs3org/reva/pull/3822 4059 4060 * Bugfix #3718: Fix revad-eos docker image which was failing to build 4061 4062 https://github.com/cs3org/reva/pull/3718 4063 4064 * Bugfix #3559: Fix build on freebsd 4065 4066 Building reva on freebsd was broken due to some deviations in return value types from the 4067 filesystem. 4068 4069 https://github.com/cs3org/reva/pull/3559 4070 4071 * Bugfix #3696: Fix ldap filters when checking for enabled users 4072 4073 This fixes the ldap filters for checking enabled/disabled users. 4074 4075 https://github.com/cs3org/reva/pull/3696 4076 4077 * Bugfix #3767: Decode binary UUID when looking up a users group memberships 4078 4079 The LDAP backend for the users service didn't correctly decode binary UUIDs when looking up a 4080 user's group memberships. 4081 4082 https://github.com/cs3org/reva/pull/3767 4083 4084 * Bugfix #3741: Fix listing shares to multiple groups 4085 4086 Users can now see the shares to all groups they are a member of. 4087 4088 https://github.com/cs3org/reva/pull/3741 4089 4090 * Bugfix #3834: Return correct error during MKCOL 4091 4092 We need to return a "PreconditionFailed" error if one of the parent folders during a MKCOL does 4093 not exist. 4094 4095 https://github.com/cs3org/reva/pull/3834 4096 4097 * Bugfix #3841: Fix nil pointer and improve logging 4098 4099 We fixed a nil pointer error due to a wrong log statement and improved the logging in the json 4100 public share manager. 4101 4102 https://github.com/cs3org/reva/pull/3841 4103 4104 * Bugfix #3831: Ignore 'null' mtime on tus upload 4105 4106 Decomposedfs now ignores 'null' as an mtime 4107 4108 https://github.com/cs3org/reva/pull/3831 4109 4110 * Bugfix #3758: Fix public links with enforced password 4111 4112 Fix the public link update operation in the case that a password is enforced. 4113 4114 https://github.com/cs3org/reva/pull/3758 4115 4116 * Bugfix #3814: Fix stat cache access 4117 4118 We fixed a problem where wrong data was written to and expected from the stat cache. 4119 4120 https://github.com/cs3org/reva/pull/3814 4121 4122 * Bugfix #3650: FreeBSD xattr support 4123 4124 We now properly handle FreeBSD xattr namespaces by leaving out the `user.` prefix. FreeBSD 4125 adds that automatically. 4126 4127 https://github.com/cs3org/reva/pull/3650 4128 4129 * Bugfix #3827: Initialize user cache for decomposedfs 4130 4131 https://github.com/cs3org/reva/pull/3827 4132 4133 * Bugfix #3818: Invalidate cache when deleting space 4134 4135 Decomposedfs now invalidates the cache when deleting a space. 4136 4137 https://github.com/cs3org/reva/pull/3818 4138 4139 * Bugfix #3812: Filemetadata Cache now deletes keys without listing them first 4140 4141 https://github.com/cs3org/reva/pull/3812 4142 4143 * Bugfix #3817: Pipeline cache deletes 4144 4145 The gateway now pipelines deleting keys from the stat and provider cache 4146 4147 https://github.com/cs3org/reva/pull/3817 4148 https://github.com/cs3org/reva/pull/3809 4149 4150 * Bugfix #3711: Replace ini metadata backend by messagepack backend 4151 4152 We replaced the ini metadata backend by a messagepack backend which is more robust and also uses 4153 less resources. 4154 4155 https://github.com/cs3org/reva/pull/3711 4156 4157 * Bugfix #3828: Send quota when listing spaces in decomposedfs 4158 4159 We now include free, used and remaining quota when listing spaces 4160 4161 https://github.com/cs3org/reva/pull/3828 4162 4163 * Bugfix #3681: Fix etag of "empty" shares jail 4164 4165 Added the correct etag for an empty shares jail in PROPFIND responses. 4166 4167 https://github.com/owncloud/ocis/issues/5591 4168 https://github.com/cs3org/reva/pull/3681 4169 4170 * Bugfix #3748: Prevent service from panicking 4171 4172 Changelog is unneccessary 4173 4174 https://github.com/cs3org/reva/pull/3748 4175 4176 * Bugfix #3816: Write Metadata once 4177 4178 Decomposedfs now aggregates metadata when creating directories and spaces into a single 4179 write. 4180 4181 https://github.com/cs3org/reva/pull/3816 4182 4183 * Change #3641: Hide file versions for share receivers 4184 4185 We needed to change the visibility of file versions and hide them to share receivers. Space 4186 Editors can still see and restore file versions. 4187 4188 https://github.com/cs3org/reva/pull/3641 4189 4190 * Change #3820: Streamline stores 4191 4192 We refactored and streamlined the different caches and stores. 4193 4194 https://github.com/cs3org/reva/pull/3820 4195 https://github.com/cs3org/reva/pull/3777 4196 4197 * Enhancement #3732: Make method for detecting the metadata backend public 4198 4199 We made a private method for detecting the decomposedfs metadata backend public 4200 4201 https://github.com/cs3org/reva/pull/3732 4202 4203 * Enhancement #3789: Add capabilities indicating if user attributes are read-only 4204 4205 This adds capabilities that indicates if a user attribute is read-only, and by this lets a 4206 frontend show this to the user. 4207 4208 https://github.com/cs3org/reva/pull/3789 4209 4210 * Enhancement #3792: Add a prometheus gauge to keep track of active uploads and downloads 4211 4212 This adds a prometheus gauge to keep track of active uploads and downloads. 4213 4214 https://github.com/cs3org/reva/pull/3792 4215 4216 * Enhancement #3637: Add an ID to each events 4217 4218 This way it is possible to uniquely identify events across services 4219 4220 https://github.com/cs3org/reva/pull/3637 4221 4222 * Enhancement #3704: Add more information to events 4223 4224 Adds some missing information to a couple of events 4225 4226 https://github.com/cs3org/reva/pull/3704 4227 4228 * Enhancement #3744: Add LDAP user type attribute 4229 4230 Adding an LDAP attribute so that we can distinguish between member and guest users. 4231 4232 https://github.com/cs3org/reva/pull/3744 4233 4234 * Enhancement #3806: Decomposedfs now supports filtering spaces by owner 4235 4236 Requests using the owner filter now make use of the by-user index 4237 4238 https://github.com/cs3org/reva/pull/3806 4239 4240 * Enhancement #3730: Antivirus 4241 4242 Support antivirus functionality (needs seperate antivirus service) 4243 4244 https://github.com/cs3org/reva/pull/3730 4245 4246 * Enhancement #3531: Async Postprocessing 4247 4248 Provides functionality for async postprocessing. This will allow the system to do the 4249 postprocessing (virusscan, copying of bytes to their final destination, ...) asynchronous 4250 to the users request. Major change when active. 4251 4252 https://github.com/cs3org/reva/pull/3531 4253 4254 * Enhancement #3571: Async Upload Improvements 4255 4256 Collection of smaller fixes and quality of life improvements for async postprocessing, 4257 especially the upload part. Contains unit tests, 0 byte uploads, adjusted endpoint responses 4258 and more. Adjust mtime when requested from upload. Add etag to upload info. 4259 4260 Https://github.com/cs3org/reva/pull/3556 4261 4262 https://github.com/cs3org/reva/pull/3571 4263 4264 * Enhancement #3801: Cache node ids 4265 4266 Decomposedfs now keeps an in-memory cache for node ids, sparing a lot of ReadLink calls. 4267 4268 https://github.com/cs3org/reva/pull/3801 4269 4270 * Enhancement #3690: Check set project space quota permission 4271 4272 Instead of checking for `set-space-quota` we now check for `Drive.ReadWriteQuota.Project` 4273 when changing project space quotas. 4274 4275 https://github.com/cs3org/reva/pull/3690 4276 4277 * Enhancement #3686: User disabling functionality 4278 4279 Check if users are enabled or disabled 4280 4281 https://github.com/cs3org/reva/pull/3686 4282 4283 * Enhancement #160: Implement the CS3 Lock API in the EOS storage driver 4284 4285 https://github.com/cs3org/cs3apis/pull/160 4286 https://github.com/cs3org/reva/pull/2444 4287 4288 * Enhancement #3575: Fix skip group grant index cleanup 4289 4290 Turn off the index cleanup for group grants, it doesn't exist and can therefore be skipped. 4291 4292 https://github.com/cs3org/reva/pull/3575 4293 4294 * Enhancement #3564: Fix tag pkg 4295 4296 `tags` pkg needed an option to build the tags struct from a slice of tags. Here it is 4297 4298 https://github.com/cs3org/reva/pull/3564 4299 4300 * Enhancement #3756: Prepare for GDPR export 4301 4302 Prepares GDPR export (export of all data related to a user) 4303 4304 https://github.com/cs3org/reva/pull/3756 4305 4306 * Enhancement #3612: Group feature changed event added 4307 4308 We added a group feature changed event. 4309 4310 https://github.com/cs3org/reva/pull/3612 4311 4312 * Enhancement #3729: Improve decomposedfs performance, esp. with network fs/cache 4313 4314 We improved the performance of decomposedfs, esp. in scenarios where network storage and 4315 caches are involed. 4316 4317 https://github.com/cs3org/reva/pull/3729 4318 4319 * Enhancement #3697: Improve the ini file metadata backend 4320 4321 We improved the ini backend for file metadata: - Improve performance - Optionally use a reva 4322 cache for storing the metadata, which helps tremendously when using distributed file 4323 systems, for example - Allow for using different metadata backends for different storages 4324 4325 We also switched the s3ng integration tests to the ini backend so we cover both the xattrs and the 4326 ini backend at the same time. 4327 4328 https://github.com/cs3org/reva/pull/3697 4329 4330 * Enhancement #3819: Allow creating internal links without permission 4331 4332 Allows creating/updating/deleting internal links without `PublicLink.Write` permission 4333 4334 https://github.com/cs3org/reva/pull/3819 4335 4336 * Enhancement #3740: Limit concurrency in decomposedfs 4337 4338 The number of concurrent goroutines used for listing directories in decomposedfs are now 4339 limited to a configurable number. 4340 4341 https://github.com/cs3org/reva/pull/3740 4342 4343 * Enhancement #3569: Always list shares jail when listing spaces 4344 4345 Changes spaces listing to always include the shares jail, even when no shares where received. 4346 If there are no received shares the shares jail will have the etag value `DECAFC00FEE`. 4347 4348 https://github.com/owncloud/ocis/issues/5190 4349 https://github.com/cs3org/reva/pull/3569 4350 4351 * Enhancement #3788: Make resharing configurable 4352 4353 Resharing was always on previously. This makes resharing configurable via the capability 4354 4355 https://github.com/cs3org/reva/pull/3788 4356 4357 * Enhancement #3674: Introduce ini file based metadata backend 4358 4359 We added a new metadata backend for the decomposed storage driver that uses an additional 4360 `.ini` file to store file metadata. This allows scaling beyond some filesystem specific xattr 4361 limitations. 4362 4363 https://github.com/cs3org/reva/pull/3674 4364 https://github.com/cs3org/reva/pull/3649 4365 4366 * Enhancement #3728: Automatically migrate file metadata from xattrs to messagepack 4367 4368 We added a migration which transparently migrates existig file metadata from xattrs to the new 4369 messagepack format. 4370 4371 https://github.com/cs3org/reva/pull/3728 4372 4373 * Enhancement #3807: Name Validation 4374 4375 Make name validation in ocdav configurable and add a new validation: max lenght 4376 4377 https://github.com/cs3org/reva/pull/3807 4378 4379 * Enhancement #3574: Opaque space group 4380 4381 Extend the opaque map to contain an identifier to see if it is a user or group grant. 4382 4383 https://github.com/cs3org/reva/pull/3574 4384 4385 * Enhancement #3598: Pass estream to Storage Providers 4386 4387 Similar to the data providers we now pass the stream to the `New` func. This will reduce 4388 connections from storage providers to nats. 4389 4390 https://github.com/cs3org/reva/pull/3598 4391 4392 * Enhancement #3763: Add a capability for personal data export 4393 4394 Personal data export needs to be hidden behind a capability 4395 4396 https://github.com/cs3org/reva/pull/3763 4397 4398 * Enhancement #3577: Prepare for SSE 4399 4400 Prepare for server sent events with some minor changes 4401 4402 https://github.com/cs3org/reva/pull/3577 4403 4404 * Enhancement #3731: Add config option to enforce passwords on public links 4405 4406 Added a new config option to enforce passwords on public links with "Uploader, Editor, 4407 Contributor" roles. 4408 4409 https://github.com/cs3org/reva/pull/3731 4410 https://github.com/cs3org/reva/pull/3716 4411 https://github.com/cs3org/reva/pull/3698 4412 4413 * Enhancement #3693: Enforce the PublicLink.Write permission 4414 4415 Added checks for the "PublicLink.Write" permission when creating or updating public links. 4416 4417 https://github.com/cs3org/reva/pull/3693 4418 4419 * Enhancement #3497: Introduce owncloud 10 publiclink manager 4420 4421 We can now manage the public links in the oc_share table of an owncloud 10 database. 4422 4423 https://github.com/cs3org/reva/pull/3497 4424 4425 * Enhancement #3714: Add global max quota option and quota for CreateHome 4426 4427 Added a global max quota option to limit how much quota can be assigned to spaces. Added a max 4428 quota value in the spacescapabilities. Added a quota parameter to CreateHome. This is a 4429 prerequisite for setting a default quota per usertypes. 4430 4431 https://github.com/cs3org/reva/pull/3714 4432 https://github.com/cs3org/reva/pull/3682 4433 https://github.com/cs3org/reva/pull/3678 4434 https://github.com/cs3org/reva/pull/3671 4435 4436 * Enhancement #3759: Set correct share type when listing shares 4437 4438 This fixes so that we can differentiate between guest/member users for shares. 4439 4440 https://github.com/cs3org/reva/pull/3759 4441 4442 * Enhancement #3594: Add expiration to user and group shares 4443 4444 Added expiration to user and group shares. When shares are accessed after expiration the share 4445 is automatically removed. 4446 4447 https://github.com/cs3org/reva/pull/3594 4448 4449 * Enhancement #3580: Share expired event 4450 4451 We added a share expired event 4452 4453 https://github.com/cs3org/reva/pull/3580 4454 4455 * Enhancement #3620: Allow a new ShareType `SpaceMembershipGroup` 4456 4457 Added a new sharetype for groups that are members of spaces 4458 4459 https://github.com/cs3org/reva/pull/3620 4460 4461 * Enhancement #3609: Space Management Permissions 4462 4463 Added new permissions to manage spaces: `manage space properties` and `disable spaces` 4464 4465 https://github.com/cs3org/reva/pull/3609 4466 4467 * Enhancement #3655: Add expiration date to space memberships 4468 4469 Added an optional expiration date to space memberships to restrict the access in time. 4470 4471 https://github.com/cs3org/reva/pull/3655 4472 https://github.com/cs3org/reva/pull/3628 4473 4474 * Enhancement #3697: Add support for redis sentinel caches 4475 4476 We added support for redis sentinel. The sentinel configuration is given in the cache node in 4477 the following form: 4478 4479 <host>/<name of master> 4480 4481 E.g. 4482 4483 10.10.0.207/mymaster 4484 4485 https://github.com/owncloud/ocis/issues/5645 4486 https://github.com/cs3org/reva/pull/3697 4487 4488 * Enhancement #3552: Suppress tusd logs 4489 4490 `tusd` package would log specific messages regardless of loglevel. This is now changed 4491 4492 https://github.com/cs3org/reva/pull/3552 4493 4494 * Enhancement #3555: Tags 4495 4496 Base functionality for tagging files 4497 4498 https://github.com/cs3org/reva/pull/3555 4499 4500 * Enhancement #3785: Increase unit test coverage in the ocdav service 4501 4502 https://github.com/cs3org/reva/pull/3785 4503 4504 * Enhancement #3739: Try to rename uploaded files to their final position 4505 4506 Before files were always copied which is a performance drop if rename can be done. If not, 4507 fallback to copy is happening. 4508 4509 https://github.com/cs3org/reva/pull/3739 4510 4511 * Enhancement #3610: Walk and log chi routes 4512 4513 On startup we now log all routes handled by chi 4514 4515 https://github.com/cs3org/reva/pull/3610 4516 4517 Changelog for reva 2.12.0 (2022-11-25) 4518 ======================================= 4519 4520 The following sections list the changes in reva 2.12.0 relevant to 4521 reva users. The changes are ordered by importance. 4522 4523 Summary 4524 ------- 4525 4526 * Fix #3436: Allow updating to internal link 4527 * Fix #3473: Decomposedfs fix revision download 4528 * Fix #3482: Decomposedfs propagate sizediff 4529 * Fix #3449: Don't leak space information on update drive 4530 * Fix #3470: Add missing events for managing spaces 4531 * Fix #3472: Fix an oCDAV error message 4532 * Fix #3452: Fix access to spaces shared via public link 4533 * Fix #3440: Set proper names and paths for space roots 4534 * Fix #3437: Refactor delete error handling 4535 * Fix #3432: Remove share jail fix 4536 * Fix #3458: Set the Oc-Fileid header when copying items 4537 * Enh #3441: Cover ocdav with more unit tests 4538 * Enh #3493: Configurable filelock duration factor in decomposedfs 4539 * Enh #3397: Reduce lock contention issues 4540 4541 Details 4542 ------- 4543 4544 * Bugfix #3436: Allow updating to internal link 4545 4546 We now allow updating any link to an internal link when the user has UpdateGrant permissions 4547 4548 https://github.com/cs3org/reva/pull/3436 4549 4550 * Bugfix #3473: Decomposedfs fix revision download 4551 4552 We rewrote the finish upload code to use a write lock when creating and updating node metadata. 4553 This prevents some cornercases, allows us to calculate the size diff atomically and fixes 4554 downloading revisions. 4555 4556 https://github.com/owncloud/ocis/issues/765 4557 https://github.com/owncloud/ocis/issues/3868 4558 https://github.com/cs3org/reva/pull/3473 4559 4560 * Bugfix #3482: Decomposedfs propagate sizediff 4561 4562 We now propagate the size diff instead of calculating the treesize. This fixes the slower 4563 upload speeds in large folders. 4564 4565 https://github.com/owncloud/ocis/issues/5061 4566 https://github.com/cs3org/reva/pull/3482 4567 4568 * Bugfix #3449: Don't leak space information on update drive 4569 4570 There were some problems with the `UpdateDrive` func in decomposedfs when it is called without 4571 permission - When calling with empty request it would leak the complete drive info - When 4572 calling with non-empty request it would leak the drive name 4573 4574 https://github.com/cs3org/reva/pull/3449 4575 https://github.com/cs3org/reva/pull/3453 4576 4577 * Bugfix #3470: Add missing events for managing spaces 4578 4579 We added more events to cover different aspects of managing spaces 4580 4581 https://github.com/cs3org/reva/pull/3470 4582 4583 * Bugfix #3472: Fix an oCDAV error message 4584 4585 We've fixed an error message in the oCDAV service, that said "error doing GET request to data 4586 service" even if it did a PATCH request to the data gateway. This error message is now fixed. 4587 4588 https://github.com/cs3org/reva/pull/3472 4589 4590 * Bugfix #3452: Fix access to spaces shared via public link 4591 4592 We fixed a problem where downloading archives from spaces which were shared via public links 4593 was not possible. 4594 4595 https://github.com/cs3org/reva/pull/3452 4596 4597 * Bugfix #3440: Set proper names and paths for space roots 4598 4599 We fixed a problem where the names and paths were not set correctly for space roots. 4600 4601 https://github.com/cs3org/reva/pull/3440 4602 4603 * Bugfix #3437: Refactor delete error handling 4604 4605 We refactored the ocdav delete handler to return the HTTP status code and an error message to 4606 simplify error handling. 4607 4608 https://github.com/cs3org/reva/pull/3437 4609 4610 * Bugfix #3432: Remove share jail fix 4611 4612 We have removed the share jail check. 4613 4614 https://github.com/owncloud/ocis/issues/4945 4615 https://github.com/cs3org/reva/pull/3432 4616 4617 * Bugfix #3458: Set the Oc-Fileid header when copying items 4618 4619 We added the Oc-Fileid header in the COPY response for compatibility reasons. 4620 4621 https://github.com/owncloud/ocis/issues/5039 4622 https://github.com/cs3org/reva/pull/3458 4623 4624 * Enhancement #3441: Cover ocdav with more unit tests 4625 4626 We added unit tests to cover more ocdav handlers: - delete - mkcol - fixes 4627 https://github.com/owncloud/ocis/issues/4332 4628 4629 https://github.com/cs3org/reva/pull/3441 4630 https://github.com/cs3org/reva/pull/3443 4631 https://github.com/cs3org/reva/pull/3445 4632 https://github.com/cs3org/reva/pull/3447 4633 https://github.com/cs3org/reva/pull/3454 4634 https://github.com/cs3org/reva/pull/3461 4635 4636 * Enhancement #3493: Configurable filelock duration factor in decomposedfs 4637 4638 The lock cycle duration factor in decomposedfs can now be changed by setting 4639 `lock_cycle_duration_factor`. 4640 4641 https://github.com/cs3org/reva/pull/3493 4642 4643 * Enhancement #3397: Reduce lock contention issues 4644 4645 We reduced lock contention during high load by caching the extended attributes of a file for the 4646 duration of a request. 4647 4648 https://github.com/cs3org/reva/pull/3397 4649 4650 Changelog for reva 2.11.0 (2022-11-03) 4651 ======================================= 4652 4653 The following sections list the changes in reva 2.11.0 relevant to 4654 reva users. The changes are ordered by importance. 4655 4656 Summary 4657 ------- 4658 4659 * Fix #3282: Use Displayname in wopi apps 4660 * Fix #3430: Add missing error check in decomposedfs 4661 * Fix #3298: Make date only expiry dates valid for the whole day 4662 * Fix #3394: Avoid AppProvider panic 4663 * Fix #3267: Reduced default cache sizes for smaller memory footprint 4664 * Fix #3338: Fix malformed uid string in cache 4665 * Fix #3255: Properly escape oc:name in propfind response 4666 * Fix #3324: Correct base URL for download URL and href when listing file public links 4667 * Fix #3278: Fix public share view mode during app open 4668 * Fix #3377: Fix possible race conditions 4669 * Fix #3274: Fix "uploader" role permissions 4670 * Fix #3241: Fix uploading empty files into shares 4671 * Fix #3251: Make listing xattrs more robust 4672 * Fix #3287: Return OCS forbidden error when a share already exists 4673 * Fix #3218: Improve performance when listing received shares 4674 * Fix #3251: Lock source on move 4675 * Fix #3238: Return relative used quota amount as a percent value 4676 * Fix #3279: Polish OCS error responses 4677 * Fix #3307: Refresh lock in decomposedFS needs to overwrite 4678 * Fix #3368: Return 404 when no permission to space 4679 * Fix #3341: Validate s3ng downloads 4680 * Fix #3284: Prevent nil pointer when requesting user 4681 * Fix #3257: Fix wopi access to publicly shared files 4682 * Chg #3267: Decomposedfs no longer stores the idp 4683 * Chg #3381: Changed Name of the Shares Jail 4684 * Enh #3381: Add capability for sharing by role 4685 * Enh #3320: Add the parentID to the ocs and dav responses 4686 * Enh #3239: Add privatelink to PROPFIND response 4687 * Enh #3340: Add SpaceOwner to some event 4688 * Enh #3252: Add SpaceShared event 4689 * Enh #3297: Update dependencies 4690 * Enh #3429: Make max lock cycles configurable 4691 * Enh #3011: Expose capability to deny access in OCS API 4692 * Enh #3224: Make the jsoncs3 share manager cache ttl configurable 4693 * Enh #3290: Harden file system accesses 4694 * Enh #3332: Allow to enable TLS for grpc service 4695 * Enh #3223: Improve CreateShare grpc error reporting 4696 * Enh #3376: Improve logging 4697 * Enh #3250: Allow sharing the gateway caches 4698 * Enh #3240: We now only encode &, < and > in PROPFIND PCDATA 4699 * Enh #3334: Secure the nats connectin with TLS 4700 * Enh #3300: Do not leak existence of resources 4701 * Enh #3233: Allow to override default broker for go-micro base ocdav service 4702 * Enh #3258: Allow ocdav to share the registry instance with other services 4703 * Enh #3225: Render file parent id for ocs shares 4704 * Enh #3222: Support Prefer: return=minimal in PROPFIND 4705 * Enh #3395: Reduce lock contention issues 4706 * Enh #3286: Make Refresh Lock operation WOPI compliant 4707 * Enh #3229: Request counting middleware 4708 * Enh #3312: Implemented new share filters 4709 * Enh #3308: Update the ttlcache library 4710 * Enh #3291: The wopi app driver supports more options 4711 4712 Details 4713 ------- 4714 4715 * Bugfix #3282: Use Displayname in wopi apps 4716 4717 We now use the users display name in wopi apps. 4718 4719 https://github.com/cs3org/reva/pull/3282 4720 4721 * Bugfix #3430: Add missing error check in decomposedfs 4722 4723 During space creation the decomposedfs now checks for errors when trying to read the root node. 4724 This prevents a panic by no longer calling InternalPath on the node. 4725 4726 https://github.com/owncloud/ocis/issues/4961 4727 https://github.com/cs3org/reva/pull/3430 4728 4729 * Bugfix #3298: Make date only expiry dates valid for the whole day 4730 4731 When an expiry date like `2022-09-30` is parsed, we now make it valid for the whole day, 4732 effectively becoming `2022-09-30 23:59:59` 4733 4734 https://github.com/cs3org/reva/pull/3298 4735 4736 * Bugfix #3394: Avoid AppProvider panic 4737 4738 https://github.com/cs3org/reva/pull/3394 4739 avoid 4740 panic 4741 in 4742 app 4743 provider 4744 4745 * Bugfix #3267: Reduced default cache sizes for smaller memory footprint 4746 4747 We reduced the default cachesizes of the auth interceptors and the share cache. The default of 1 4748 Million cache entries was way too high and caused a high memory usage upon startup. Config 4749 options to set custom cache size where added. 4750 4751 https://github.com/owncloud/ocis/issues/3267 4752 https://github.com/owncloud/ocis/issues/4628 4753 4754 * Bugfix #3338: Fix malformed uid string in cache 4755 4756 The rediscache returns a uid in the format of `<tablename>uid:<someuid>` in the getter this 4757 results in issues when trying to delete the key from the cache store, because the Delete 4758 function will prepend the table name to the string which will not be resolvable in redis (e.g. 4759 `<tablename><tablename>uid:<somuid>`) 4760 4761 https://github.com/owncloud/ocis/issues/4772 4762 https://github.com/cs3org/reva/pull/3338 4763 4764 * Bugfix #3255: Properly escape oc:name in propfind response 4765 4766 The oc:name property in the ocdav propfind response might contain XML special characters. We 4767 now apply the proper escaping on that property. 4768 4769 https://github.com/owncloud/ocis/issues/4474 4770 https://github.com/cs3org/reva/pull/3255 4771 4772 * Bugfix #3324: Correct base URL for download URL and href when listing file public links 4773 4774 We now build the correct base URL when listing file public links. 4775 4776 https://github.com/owncloud/ocis/issues/4758 4777 https://github.com/cs3org/reva/pull/3324 4778 4779 * Bugfix #3278: Fix public share view mode during app open 4780 4781 We now set the correct view mode during an app open action when the user is accessing a public 4782 share. 4783 4784 https://github.com/cs3org/reva/pull/3278 4785 4786 * Bugfix #3377: Fix possible race conditions 4787 4788 We fixed two potential race condition when initializing the shared config structure and when 4789 setting up caches for the http authentication interceptors. 4790 4791 https://github.com/cs3org/reva/pull/3377 4792 4793 * Bugfix #3274: Fix "uploader" role permissions 4794 4795 We fixed a permission problem on "public upload shares", which allowed to view the content of 4796 the shared upload folder. 4797 4798 https://github.com/owncloud/ocis/issues/4657 4799 https://github.com/cs3org/reva/pull/3274 4800 4801 * Bugfix #3241: Fix uploading empty files into shares 4802 4803 We fixed a problem which prevented empty files from being uploaded into shares. 4804 4805 https://github.com/owncloud/ocis/issues/4383 4806 https://github.com/cs3org/reva/pull/3241 4807 4808 * Bugfix #3251: Make listing xattrs more robust 4809 4810 We fixed a potential race condition when listing xattrs of nodes in concurrency situations 4811 4812 https://github.com/cs3org/reva/pull/3251 4813 4814 * Bugfix #3287: Return OCS forbidden error when a share already exists 4815 4816 We now return OCS 104 / HTTP 403 errors when a user tries to reshare a file with a recipient that 4817 already has access to a resource. 4818 4819 https://github.com/owncloud/ocis/issues/4630 4820 https://github.com/cs3org/reva/pull/3287 4821 4822 * Bugfix #3218: Improve performance when listing received shares 4823 4824 We improved the performance when listing received shares by getting rid of superfluous 4825 GetPath calls and sending stat request directly to the storage provider instead of the 4826 SharesStorageProvider. 4827 4828 https://github.com/cs3org/reva/pull/3218 4829 4830 * Bugfix #3251: Lock source on move 4831 4832 When moving files until now only the lock of the targeted node would be checked. This could lead 4833 to strange behaviour when using web editors like only office. With checking the source nodes 4834 lock too, it is now forbidden to rename a file while it is locked 4835 4836 https://github.com/cs3org/reva/pull/3251 4837 4838 * Bugfix #3238: Return relative used quota amount as a percent value 4839 4840 The ocs/ocs/v1.php/cloud/users/ endpoint was fixed to return the relative amount of used 4841 quota as a percentage value. 4842 4843 https://github.com/owncloud/ocis/issues/4357 4844 https://github.com/cs3org/reva/pull/3238 4845 4846 * Bugfix #3279: Polish OCS error responses 4847 4848 We aligned more OCS error responses with oc10 4849 4850 https://github.com/owncloud/ocis/issues/1799 4851 https://github.com/cs3org/reva/pull/3279 4852 4853 * Bugfix #3307: Refresh lock in decomposedFS needs to overwrite 4854 4855 We fixed a bug in the refresh lock operation in the DecomposedFS. The new lock was appended but 4856 needs to overwrite the existing one. 4857 4858 https://github.com/cs3org/reva/pull/3307 4859 4860 * Bugfix #3368: Return 404 when no permission to space 4861 4862 WebDAV expects a 409 response when trying to upload into a non existing folder. We fixed the 4863 implementation to return 404 when a user has no access to a space and still return a 409 when a 4864 parent folder does not exist (and he has access to the space). 4865 4866 https://github.com/owncloud/ocis/issues/3561 4867 https://github.com/cs3org/reva/pull/3368 4868 https://github.com/cs3org/reva/pull/3300 4869 4870 * Bugfix #3341: Validate s3ng downloads 4871 4872 The s3ng download func now returns an error in cases where the requested node blob is unknown or 4873 the blob size does not match the node meta blob size. 4874 4875 https://github.com/cs3org/reva/pull/3341 4876 4877 * Bugfix #3284: Prevent nil pointer when requesting user 4878 4879 We added additional nil pointer checks in the user and groups providers. 4880 4881 https://github.com/owncloud/ocis/issues/4703 4882 https://github.com/cs3org/reva/pull/3284 4883 4884 * Bugfix #3257: Fix wopi access to publicly shared files 4885 4886 Wopi requests to single file public shares weren't properly authenticated. I added a new check 4887 to allow wopi to access files which were publicly shared. 4888 4889 https://github.com/owncloud/ocis/issues/4382 4890 https://github.com/cs3org/reva/pull/3257 4891 4892 * Change #3267: Decomposedfs no longer stores the idp 4893 4894 We no longer persist the IDP of a user id in decomposedfs grants. As a consequence listing or 4895 reading Grants no longer returns the IDP for the Creator. It never did for the Grantee. Whatever 4896 credentials are used to authenticate a user we internally have to create a UUID anyway. Either 4897 by lookung it up in an external service (eg. LDAP or SIEM) or we autoprovision it. 4898 4899 https://github.com/cs3org/reva/pull/3267 4900 4901 * Change #3381: Changed Name of the Shares Jail 4902 4903 We changed the space name of the shares jail to `Shares`. 4904 4905 https://github.com/cs3org/reva/pull/3381 4906 4907 * Enhancement #3381: Add capability for sharing by role 4908 4909 We added the capability to indicate that the ocs share api supports sharing by role. 4910 4911 https://github.com/cs3org/reva/pull/3381 4912 4913 * Enhancement #3320: Add the parentID to the ocs and dav responses 4914 4915 We added the parent resourceID to the OCS and WebDav responses to enable navigation by ID in the 4916 web client. 4917 4918 https://github.com/cs3org/reva/pull/3320 4919 4920 * Enhancement #3239: Add privatelink to PROPFIND response 4921 4922 We made it possible to request a privatelink WebDAV property. 4923 4924 https://github.com/cs3org/reva/pull/3239 4925 https://github.com/cs3org/reva/pull/3240 4926 4927 * Enhancement #3340: Add SpaceOwner to some event 4928 4929 We added a SpaceOwner field to some of the events which can be used by consumers to gain access to 4930 the affected space. 4931 4932 https://github.com/cs3org/reva/pull/3340 4933 https://github.com/cs3org/reva/pull/3350 4934 4935 * Enhancement #3252: Add SpaceShared event 4936 4937 We added an event that is emmitted when somebody shares a space. 4938 4939 https://github.com/owncloud/ocis/issues/4303 4940 https://github.com/cs3org/reva/pull/3252 4941 https://github.com/owncloud/ocis/pull/4564 4942 4943 * Enhancement #3297: Update dependencies 4944 4945 * github.com/mileusna/useragent v1.2.0 4946 4947 https://github.com/cs3org/reva/pull/3297 4948 4949 * Enhancement #3429: Make max lock cycles configurable 4950 4951 When a file is locked the flock library will retry a given amount of times (with a increasing 4952 sleep time inbetween each round) Until now the max amount of such rounds was hardcoded to `10`. 4953 Now it is configurable, falling back to a default of `25` 4954 4955 https://github.com/cs3org/reva/pull/3429 4956 https://github.com/owncloud/ocis/pull/4959 4957 4958 * Enhancement #3011: Expose capability to deny access in OCS API 4959 4960 http://github.com/cs3org/reva/pull/3011 4961 4962 * Enhancement #3224: Make the jsoncs3 share manager cache ttl configurable 4963 4964 We added a new setting to the jsoncs3 share manager which allows to set the cache ttl. 4965 4966 https://github.com/cs3org/reva/pull/3224 4967 4968 * Enhancement #3290: Harden file system accesses 4969 4970 We have reviewed and hardened file system accesses to prevent any vulnerabilities like 4971 directory traversal. 4972 4973 https://github.com/cs3org/reva/pull/3290 4974 4975 * Enhancement #3332: Allow to enable TLS for grpc service 4976 4977 We added new configuration settings for the grpc based services allowing to enable transport 4978 security for the services. By setting: 4979 4980 ```toml [grpc.tls_settings] enabled = true certificate = "<path/to/cert.pem>" key = 4981 "<path/to/key.pem>" ``` 4982 4983 TLS transportsecurity is enabled using the supplied certificate. When `enabled` is set to 4984 `true`, but no certificate and key files are supplied reva will generate temporary 4985 self-signed certificates at startup (this requires to also configure the clients to disable 4986 certificate verification, see below). 4987 4988 The client side can be configured via the shared section. Set this to configure the CA for 4989 verifying server certificates: 4990 4991 ```toml [shared.grpc_client_options] tls_mode = "on" tls_cacert = 4992 "</path/to/cafile.pem>" ``` 4993 4994 To disable server certificate verification (e.g. when using the autogenerated self-signed 4995 certificates) set: 4996 4997 ```toml [shared.grpc_client_options] tls_mode = "insecure" ``` 4998 4999 To switch off TLS for the clients (which is also the default): 5000 5001 ```toml [shared.grpc_client_options] tls_mode = "off" ``` 5002 5003 https://github.com/cs3org/reva/pull/3332 5004 5005 * Enhancement #3223: Improve CreateShare grpc error reporting 5006 5007 The errorcode returned by the share provider when creating a share where the sharee is already 5008 the owner of the shared target is a bit more explicit now. Also debug logging was added for this. 5009 5010 https://github.com/cs3org/reva/pull/3223 5011 5012 * Enhancement #3376: Improve logging 5013 5014 We improved the logging by adding the request id to ocdav, ocs and several other http services. 5015 5016 https://github.com/cs3org/reva/pull/3376 5017 5018 * Enhancement #3250: Allow sharing the gateway caches 5019 5020 We replaced the in memory implementation of the gateway with go-micro stores. The gateways 5021 `cache_store` defaults to `noop` and can be set to `memory`, `redis` or `etcd`. When setting it 5022 also set any dataproviders `datatxs.*.cache_store` new config option to the same values so 5023 they can invalidate the cache when a file has been uploadad. 5024 5025 Cache instances will be shared between handlers when they use the same configuration in the 5026 same process to allow the dataprovider to access the same cache as the gateway. 5027 5028 The `nats-js` implementation requires a limited set of characters in the key and is currently 5029 known to be broken. 5030 5031 The `etag_cache_ttl` was removed as it was not used anyway. 5032 5033 https://github.com/cs3org/reva/pull/3250 5034 5035 * Enhancement #3240: We now only encode &, < and > in PROPFIND PCDATA 5036 5037 https://github.com/cs3org/reva/pull/3240 5038 5039 * Enhancement #3334: Secure the nats connectin with TLS 5040 5041 Encyrpted the connection to the event broker using TLS. Per default TLS is not used. 5042 5043 https://github.com/cs3org/reva/pull/3334 5044 https://github.com/cs3org/reva/pull/3382 5045 5046 * Enhancement #3300: Do not leak existence of resources 5047 5048 We are now returning a not found error for more requests to not leak existence of spaces for users 5049 that do not have access to resources. 5050 5051 https://github.com/cs3org/reva/pull/3300 5052 5053 * Enhancement #3233: Allow to override default broker for go-micro base ocdav service 5054 5055 An option for setting an alternative go-micro Broker was introduced. This can be used to avoid 5056 ocdav from spawing the (unneeded) default http Broker. 5057 5058 https://github.com/cs3org/reva/pull/3233 5059 5060 * Enhancement #3258: Allow ocdav to share the registry instance with other services 5061 5062 This allows to use the in-memory registry when running all services in a single process. 5063 5064 https://github.com/owncloud/ocis/issues/3134 5065 https://github.com/cs3org/reva/pull/3258 5066 5067 * Enhancement #3225: Render file parent id for ocs shares 5068 5069 We brought back the `file_parent` property for ocs shares. The spaces concept makes 5070 navigating by path suboptimal. Having a parent id allows navigating without having to look up 5071 the full path. 5072 5073 https://github.com/cs3org/reva/pull/3225 5074 5075 * Enhancement #3222: Support Prefer: return=minimal in PROPFIND 5076 5077 To reduce HTTP body size when listing folders we implemented 5078 https://datatracker.ietf.org/doc/html/rfc8144#section-2.1 to omit the 404 propstat 5079 part when a `Prefer: return=minimal` header is present. 5080 5081 https://github.com/cs3org/reva/pull/3222 5082 5083 * Enhancement #3395: Reduce lock contention issues 5084 5085 We reduced lock contention during high load by optimistically non-locking when listing the 5086 extended attributes of a file. Only in case of issues the list is read again while holding a lock. 5087 5088 https://github.com/cs3org/reva/pull/3395 5089 5090 * Enhancement #3286: Make Refresh Lock operation WOPI compliant 5091 5092 We now support the WOPI compliant `UnlockAndRelock` operation. This has been implemented in 5093 the DecomposedFS. To make use of it, we need a compatible WOPI server. 5094 5095 https://github.com/cs3org/reva/pull/3286 5096 https://learn.microsoft.com/en-us/microsoft-365/cloud-storage-partner-program/rest/files/unlockandrelock 5097 5098 * Enhancement #3229: Request counting middleware 5099 5100 We added a request counting `prometheus` HTTP middleware and GRPC interceptor that can be 5101 configured with a `namespace` and `subsystem` to count the number of requests. 5102 5103 https://github.com/cs3org/reva/pull/3229 5104 5105 * Enhancement #3312: Implemented new share filters 5106 5107 Added share filters for space ID and share state. 5108 5109 https://github.com/owncloud/ocis/issues/3843 5110 https://github.com/cs3org/reva/pull/3312 5111 5112 * Enhancement #3308: Update the ttlcache library 5113 5114 Updated the ttlcache library version and module path. 5115 5116 https://github.com/cs3org/reva/pull/3308 5117 5118 * Enhancement #3291: The wopi app driver supports more options 5119 5120 We now generate a folderurl that is used in the wopi protocol. It provides an endpoint to go back 5121 from the app to the containing folder in the file list. In addition to that, we now include the 5122 UI_LLCC parameter in the app-open URL. 5123 5124 https://github.com/cs3org/reva/pull/3291 5125 https://learn.microsoft.com/en-us/microsoft-365/cloud-storage-partner-program/online/discovery#ui_llcc 5126 5127 Changelog for reva 2.10.0 (2022-09-09) 5128 ======================================= 5129 5130 The following sections list the changes in reva 2.10.0 relevant to 5131 reva users. The changes are ordered by importance. 5132 5133 Summary 5134 ------- 5135 5136 * Fix #3210: Jsoncs3 mtime fix 5137 * Enh #3213: Allow for dumping the public shares from the cs3 publicshare manager 5138 * Enh #3199: Add support for cs3 storage backends to the json publicshare manager 5139 5140 Details 5141 ------- 5142 5143 * Bugfix #3210: Jsoncs3 mtime fix 5144 5145 We now correctly update the mtime to only sync when the file changed on the storage. 5146 5147 https://github.com/cs3org/reva/pull/3210 5148 5149 * Enhancement #3213: Allow for dumping the public shares from the cs3 publicshare manager 5150 5151 We enhanced the cs3 publicshare manager to support dumping its content during a publicshare 5152 manager migration. 5153 5154 https://github.com/cs3org/reva/pull/3213 5155 5156 * Enhancement #3199: Add support for cs3 storage backends to the json publicshare manager 5157 5158 We enhanced the json publicshare manager to support a cs3 storage backend alongside the file 5159 and memory backends. 5160 5161 https://github.com/cs3org/reva/pull/3199 5162 5163 Changelog for reva 2.9.0 (2022-09-08) 5164 ======================================= 5165 5166 The following sections list the changes in reva 2.9.0 relevant to 5167 reva users. The changes are ordered by importance. 5168 5169 Summary 5170 ------- 5171 5172 * Fix #3206: Add spaceid when listing share jail mount points 5173 * Fix #3194: Adds the rootinfo to storage spaces 5174 * Fix #3201: Fix shareid on PROPFIND 5175 * Fix #3176: Forbid duplicate shares 5176 * Fix #3208: Prevent panic in time conversion 5177 * Fix #3881: Align ocs status code for permission error on publiclink update 5178 * Enh #3193: Add shareid to PROPFIND 5179 * Enh #3180: Add canDeleteAllHomeSpaces permission 5180 * Enh #3203: Added "delete-all-spaces" permission 5181 * Enh #4322: OCS get share now also handle received shares 5182 * Enh #3185: Improve ldap authprovider's error reporting 5183 * Enh #3179: Improve tokeninfo endpoint 5184 * Enh #3171: Cs3 to jsoncs3 share manager migration 5185 * Enh #3204: Make the function flockFile private 5186 * Enh #3192: Enable space members to update shares 5187 5188 Details 5189 ------- 5190 5191 * Bugfix #3206: Add spaceid when listing share jail mount points 5192 5193 https://github.com/cs3org/reva/pull/3206 5194 5195 * Bugfix #3194: Adds the rootinfo to storage spaces 5196 5197 The sympton of the bug were search results not containing permissions 5198 5199 https://github.com/cs3org/reva/pull/3194 5200 5201 * Bugfix #3201: Fix shareid on PROPFIND 5202 5203 Shareid was still not working properly. We need to parse it from the path 5204 5205 https://github.com/cs3org/reva/pull/3201 5206 5207 * Bugfix #3176: Forbid duplicate shares 5208 5209 When sending a CreateShare request twice two shares would be created, one being not 5210 accessible. This was blocked by web so the issue wasn't obvious. Now it's forbidden to create 5211 share for a user who already has a share on that same resource 5212 5213 https://github.com/cs3org/reva/pull/3176 5214 5215 * Bugfix #3208: Prevent panic in time conversion 5216 5217 https://github.com/cs3org/reva/pull/3208 5218 5219 * Bugfix #3881: Align ocs status code for permission error on publiclink update 5220 5221 The ocs status code returned for permission errors on updates of publiclink permissions is now 5222 aligned with the documentation of the OCS share API and the behaviour of ownCloud 10 5223 5224 https://github.com/owncloud/ocis/issues/3881 5225 5226 * Enhancement #3193: Add shareid to PROPFIND 5227 5228 Adds the shareid to the PROPFIND response (in case of shares only) 5229 5230 https://github.com/cs3org/reva/pull/3193 5231 5232 * Enhancement #3180: Add canDeleteAllHomeSpaces permission 5233 5234 We added a permission to the admin role in ocis that allows deleting homespaces on user delete. 5235 5236 https://github.com/cs3org/reva/pull/3180 5237 https://github.com/cs3org/reva/pull/3202 5238 https://github.com/owncloud/ocis/pull/4447/files 5239 5240 * Enhancement #3203: Added "delete-all-spaces" permission 5241 5242 We introduced a new permission "delete-all-spaces", users holding this permission are 5243 allowed to delete any space of any type. 5244 5245 https://github.com/cs3org/reva/pull/3203 5246 5247 * Enhancement #4322: OCS get share now also handle received shares 5248 5249 Requesting a specific share can now also correctly map the path to the mountpoint if the 5250 requested share is a received share. 5251 5252 https://github.com/owncloud/ocis/issues/4322 5253 https://github.com/cs3org/reva/pull/3200 5254 5255 * Enhancement #3185: Improve ldap authprovider's error reporting 5256 5257 The errorcode returned by the ldap authprovider driver is a bit more explicit now. (i.e. we 5258 return a proper Invalid Credentials error now, when the LDAP Bind operation fails with that) 5259 5260 https://github.com/cs3org/reva/pull/3185 5261 5262 * Enhancement #3179: Improve tokeninfo endpoint 5263 5264 We added more information to the tokeninfo endpoint. `aliaslink` is a bool value indicating if 5265 the permissions are 0. `id` is the full id of the file. Both are available to all users having the 5266 link token. `spaceType` (indicating the space type) is only available if the user has native 5267 access 5268 5269 https://github.com/cs3org/reva/pull/3179 5270 5271 * Enhancement #3171: Cs3 to jsoncs3 share manager migration 5272 5273 We added a Load() to the jsoncs3 and Dump() to the sc3 share manager. The shareid might need to be 5274 prefixed with a storageid and space id. 5275 5276 https://github.com/cs3org/reva/pull/3171 5277 https://github.com/cs3org/reva/pull/3195 5278 5279 * Enhancement #3204: Make the function flockFile private 5280 5281 Having that function exported is tempting people to use the func to get the name for calling the 5282 lock functions. That is wrong, as this function is just a helper to generate the lock file name 5283 from a given file to lock. 5284 5285 https://github.com/cs3org/reva/pull/3204 5286 5287 * Enhancement #3192: Enable space members to update shares 5288 5289 Enabled space members to update shares which they have not created themselves. 5290 5291 https://github.com/cs3org/reva/pull/3192 5292 5293 Changelog for reva 2.8.0 (2022-08-23) 5294 ======================================= 5295 5296 The following sections list the changes in reva 2.8.0 relevant to 5297 reva users. The changes are ordered by importance. 5298 5299 Summary 5300 ------- 5301 5302 * Fix #3158: Add name to the propfind response 5303 * Fix #3157: Fix locking response codes 5304 * Fix #3152: Disable caching of not found stat responses 5305 * Fix #4251: Disable caching 5306 * Chg #3154: Dataproviders now return file metadata 5307 * Enh #3143: Add /app/open-with-web endpoint 5308 * Enh #3156: Added language option to the app provider 5309 * Enh #3148: Add new jsoncs3 share manager 5310 5311 Details 5312 ------- 5313 5314 * Bugfix #3158: Add name to the propfind response 5315 5316 Previously the file- or foldername had to be extracted from the href. This is not nice and 5317 doesn't work for alias links. 5318 5319 https://github.com/cs3org/reva/pull/3158 5320 5321 * Bugfix #3157: Fix locking response codes 5322 5323 We've fixed the status codes for locking a file that is already locked. 5324 5325 https://github.com/owncloud/ocis/issues/4366 5326 https://github.com/cs3org/reva/pull/3157 5327 https://github.com/cs3org/reva/pull/3003 5328 5329 * Bugfix #3152: Disable caching of not found stat responses 5330 5331 We no longer cache not found responses to prevent concurrent requests interfering with put 5332 requests. 5333 5334 https://github.com/owncloud/ocis/issues/4251 5335 https://github.com/cs3org/reva/pull/3152 5336 5337 * Bugfix #4251: Disable caching 5338 5339 We disabled the cache, because there are race condtions that cause tests to fail. 5340 5341 https://github.com/owncloud/ocis/issues/4251 5342 https://github.com/cs3org/reva/pull/3167 5343 5344 * Change #3154: Dataproviders now return file metadata 5345 5346 Dataprovider drivers can now return file metadata. When the resource info contains a file id, 5347 the mtime or an etag, these will be included in the response as the corresponding http headers. 5348 5349 https://github.com/cs3org/reva/pull/3154 5350 5351 * Enhancement #3143: Add /app/open-with-web endpoint 5352 5353 We've added an /app/open-with-web endpoint to the app provider, so that clients that are no 5354 browser or have only limited browser access can also open apps with the help of a Web URL. 5355 5356 https://github.com/cs3org/reva/pull/3143 5357 https://github.com/owncloud/ocis/pull/4376 5358 5359 * Enhancement #3156: Added language option to the app provider 5360 5361 We've added an language option to the app provider which will in the end be passed to the app a user 5362 opens so that the web ui is displayed in the users language. 5363 5364 https://github.com/owncloud/ocis/issues/4367 5365 https://github.com/cs3org/reva/pull/3156 5366 https://github.com/owncloud/ocis/pull/4399 5367 5368 * Enhancement #3148: Add new jsoncs3 share manager 5369 5370 We've added a new jsoncs3 share manager which splits the json file per storage space and caches 5371 data locally. 5372 5373 https://github.com/cs3org/reva/pull/3148 5374 5375 Changelog for reva 2.7.4 (2022-08-10) 5376 ======================================= 5377 5378 The following sections list the changes in reva 2.7.4 relevant to 5379 reva users. The changes are ordered by importance. 5380 5381 Summary 5382 ------- 5383 5384 * Fix #3141: Check ListGrants permission when listing shares 5385 5386 Details 5387 ------- 5388 5389 * Bugfix #3141: Check ListGrants permission when listing shares 5390 5391 We now check the ListGrants permission when listing outgoing shares. If this permission is 5392 set, users can list all shares in all spaces. 5393 5394 https://github.com/cs3org/reva/pull/3141 5395 5396 Changelog for reva 2.7.3 (2022-08-09) 5397 ======================================= 5398 5399 The following sections list the changes in reva 2.7.3 relevant to 5400 reva users. The changes are ordered by importance. 5401 5402 Summary 5403 ------- 5404 5405 * Fix #3109: Fix missing check in MustCheckNodePermissions 5406 * Fix #3086: Fix crash in ldap authprovider 5407 * Fix #3094: Allow removing password from public links 5408 * Fix #3096: Fix user filter 5409 * Fix #3091: Project spaces need no real owner 5410 * Fix #3088: Use correct sublogger 5411 * Enh #3123: Allow stating links that have no permissions 5412 * Enh #3087: Allow to set LDAP substring filter type 5413 * Enh #3098: App provider http endpoint uses Form instead of Query 5414 * Enh #3133: Admins can set quota on all spaces 5415 * Enh #3117: Update go-ldap to v3.4.4 5416 * Enh #3095: Upload expiration and cleanup 5417 5418 Details 5419 ------- 5420 5421 * Bugfix #3109: Fix missing check in MustCheckNodePermissions 5422 5423 We added a missing check to the MustCheckNodePermissions function, so space managers can see 5424 disabled spaces. 5425 5426 https://github.com/cs3org/reva/pull/3109 5427 5428 * Bugfix #3086: Fix crash in ldap authprovider 5429 5430 We fixed possible crash in the LDAP authprovider caused by a null pointer derefence, when the 5431 IDP settings of the userprovider are different from the authprovider. 5432 5433 https://github.com/cs3org/reva/pull/3086 5434 5435 * Bugfix #3094: Allow removing password from public links 5436 5437 When using cs3 public link share manager passwords would never be removed. We now remove the 5438 password when getting an update request with empty password field 5439 5440 https://github.com/cs3org/reva/pull/3094 5441 5442 * Bugfix #3096: Fix user filter 5443 5444 We fixed the user filter to display the users drives properly and allow admins to list other 5445 users drives. 5446 5447 https://github.com/cs3org/reva/pull/3096 5448 https://github.com/cs3org/reva/pull/3110 5449 5450 * Bugfix #3091: Project spaces need no real owner 5451 5452 Make it possible to use a non existing user as a space owner. 5453 5454 https://github.com/cs3org/reva/pull/3091 5455 https://github.com/cs3org/reva/pull/3136 5456 5457 * Bugfix #3088: Use correct sublogger 5458 5459 We no longer log cache updated messages when log level is less verbose than debug. 5460 5461 https://github.com/cs3org/reva/pull/3088 5462 5463 * Enhancement #3123: Allow stating links that have no permissions 5464 5465 We need a way to resolve the id when we have a token. This also needs to work for links that have no 5466 permissions assigned 5467 5468 https://github.com/cs3org/reva/pull/3123 5469 5470 * Enhancement #3087: Allow to set LDAP substring filter type 5471 5472 We introduced new settings for the user- and groupproviders to allow configuring the LDAP 5473 filter type for substring search. Possible values are: "initial", "final" and "any" to do 5474 either prefix, suffix or full substring searches. 5475 5476 https://github.com/cs3org/reva/pull/3087 5477 5478 * Enhancement #3098: App provider http endpoint uses Form instead of Query 5479 5480 We've improved the http endpoint now uses the Form instead of Query to also support 5481 `application/x-www-form-urlencoded` parameters on the app provider http endpoint. 5482 5483 https://github.com/cs3org/reva/pull/3098 5484 5485 * Enhancement #3133: Admins can set quota on all spaces 5486 5487 Admins which have the correct permissions should be able to set quota on all spaces. This is 5488 implemented via the existing permissions client. 5489 5490 https://github.com/cs3org/reva/pull/3133 5491 5492 * Enhancement #3117: Update go-ldap to v3.4.4 5493 5494 Updated go-ldap/ldap/v3 to the latest upstream release to include the latest bugfixes. 5495 5496 https://github.com/cs3org/reva/pull/3117 5497 5498 * Enhancement #3095: Upload expiration and cleanup 5499 5500 We made storage providers aware of upload expiration and added an interface for FS which 5501 support listing and purging expired uploads. 5502 5503 We also implemented said interface for decomposedfs. 5504 5505 https://github.com/cs3org/reva/pull/3095 5506 https://github.com/owncloud/ocis/pull/4256 5507 5508 Changelog for reva 2.7.2 (2022-07-18) 5509 ======================================= 5510 5511 The following sections list the changes in reva 2.7.2 relevant to 5512 reva users. The changes are ordered by importance. 5513 5514 Summary 5515 ------- 5516 5517 * Fix #3079: Allow empty permissions 5518 * Fix #3084: Spaces relatated permissions and providerid cleanup 5519 * Fix #3083: Add space id to ItemTrashed event 5520 5521 Details 5522 ------- 5523 5524 * Bugfix #3079: Allow empty permissions 5525 5526 For alias link we need the ability to set no permission on an link. The permissions will then come 5527 from the natural permissions the receiving user has on that file/folder 5528 5529 https://github.com/cs3org/reva/pull/3079 5530 5531 * Bugfix #3084: Spaces relatated permissions and providerid cleanup 5532 5533 Following the CS3 resource id refactoring we reverted a logic check when checking the list all 5534 spaces permission, fixed some typos and made the storageprovider fill in a missing storage 5535 provider id. 5536 5537 https://github.com/cs3org/reva/pull/3084 5538 5539 * Bugfix #3083: Add space id to ItemTrashed event 5540 5541 We fixed the resource IDs in the ItemTrashed events which were missing the recently introduced 5542 space ID in the resource ID. 5543 5544 https://github.com/cs3org/reva/pull/3083 5545 5546 Changelog for reva 2.7.1 (2022-07-15) 5547 ======================================= 5548 5549 The following sections list the changes in reva 2.7.1 relevant to 5550 reva users. The changes are ordered by importance. 5551 5552 Summary 5553 ------- 5554 5555 * Fix #3080: Make dataproviders return more headers 5556 * Enh #3046: Add user filter 5557 5558 Details 5559 ------- 5560 5561 * Bugfix #3080: Make dataproviders return more headers 5562 5563 Instead of ocdav doing an additional Stat request we now rely on the dataprovider to return the 5564 necessary metadata information as headers. 5565 5566 https://github.com/owncloud/reva/issues/3080 5567 5568 * Enhancement #3046: Add user filter 5569 5570 This PR adds the ability to filter spaces by user-id 5571 5572 https://github.com/cs3org/reva/pull/3046 5573 5574 Changelog for reva 2.7.0 (2022-07-15) 5575 ======================================= 5576 5577 The following sections list the changes in reva 2.7.0 relevant to 5578 reva users. The changes are ordered by importance. 5579 5580 Summary 5581 ------- 5582 5583 * Fix #3075: Check permissions of the move operation destination 5584 * Fix #3036: Fix revad with EOS docker image 5585 * Fix #3037: Add uid- and gidNumber to LDAP queries 5586 * Fix #4061: Forbid resharing with higher permissions 5587 * Fix #3017: Removed unused gateway config "commit_share_to_storage_ref" 5588 * Fix #3031: Return proper response code when detecting recursive copy/move operations 5589 * Fix #3071: Make CS3 sharing drivers parse legacy resource id 5590 * Fix #3035: Prevent cross space move 5591 * Fix #3074: Send storage provider and space id to wopi server 5592 * Fix #3022: Improve the sharing internals 5593 * Fix #2977: Test valid filename on spaces tus upload 5594 * Chg #3006: Use spaceID on the cs3api 5595 * Enh #3043: Introduce LookupCtx for index interface 5596 * Enh #3009: Prevent recursive copy/move operations 5597 * Enh #2977: Skip space lookup on space propfind 5598 5599 Details 5600 ------- 5601 5602 * Bugfix #3075: Check permissions of the move operation destination 5603 5604 We now properly check the permissions on the target of move operations. 5605 5606 https://github.com/owncloud/ocis/issues/4192 5607 https://github.com/cs3org/reva/pull/3075 5608 5609 * Bugfix #3036: Fix revad with EOS docker image 5610 5611 We've fixed the revad with EOS docker image. Previously the revad binary was build on Alpine and 5612 not executable on the final RHEL based image. 5613 5614 https://github.com/cs3org/reva/issues/3036 5615 5616 * Bugfix #3037: Add uid- and gidNumber to LDAP queries 5617 5618 For the EOS storage to work correctly the uid- and gidNumber attributes need to be populated. 5619 5620 https://github.com/cs3org/reva/pull/3037 5621 5622 * Bugfix #4061: Forbid resharing with higher permissions 5623 5624 When creating a public link from a viewer share a user was able to set editor permissions on that 5625 link. This was because of a missing check that is added now 5626 5627 https://github.com/owncloud/ocis/issues/4061 5628 https://github.com/owncloud/ocis/issues/3881 5629 https://github.com/owncloud/ocis/pull/4077 5630 5631 * Bugfix #3017: Removed unused gateway config "commit_share_to_storage_ref" 5632 5633 We've removed the unused gateway configuration option "commit_share_to_storage_ref". 5634 5635 https://github.com/cs3org/reva/pull/3017 5636 5637 * Bugfix #3031: Return proper response code when detecting recursive copy/move operations 5638 5639 We changed the ocdav response code to "409 - Conflict" when a recursive operation was detected. 5640 5641 https://github.com/cs3org/reva/pull/3031 5642 5643 * Bugfix #3071: Make CS3 sharing drivers parse legacy resource id 5644 5645 The CS3 public and user sharing drivers will now correct a resource id that is missing a spaceid 5646 when it can split the storageid. 5647 5648 https://github.com/cs3org/reva/pull/3071 5649 5650 * Bugfix #3035: Prevent cross space move 5651 5652 Decomposedfs now prevents moving across space boundaries 5653 5654 https://github.com/cs3org/reva/pull/3035 5655 5656 * Bugfix #3074: Send storage provider and space id to wopi server 5657 5658 We are now concatenating storage provider id and space id into the endpoint that is sent to the 5659 wopiserver 5660 5661 https://github.com/cs3org/reva/issues/3074 5662 5663 * Bugfix #3022: Improve the sharing internals 5664 5665 We cleaned up the sharing code validation and comparisons. 5666 5667 https://github.com/cs3org/reva/pull/3022 5668 5669 * Bugfix #2977: Test valid filename on spaces tus upload 5670 5671 Tus uploads in spaces now also test valid filenames. 5672 5673 https://github.com/owncloud/ocis/issues/3050 5674 https://github.com/cs3org/reva/pull/2977 5675 5676 * Change #3006: Use spaceID on the cs3api 5677 5678 We introduced a new spaceID field on the cs3api to implement the spaces feature in a cleaner way. 5679 5680 https://github.com/cs3org/reva/pull/3006 5681 5682 * Enhancement #3043: Introduce LookupCtx for index interface 5683 5684 The index interface now has a new LookupCtx that can look up multiple values so we can more 5685 efficiently look up multiple shares by id. It also takes a context so we can pass on the trace 5686 context to the CS3 backend 5687 5688 https://github.com/cs3org/reva/pull/3043 5689 5690 * Enhancement #3009: Prevent recursive copy/move operations 5691 5692 We changed the ocs API to prevent copying or moving a folder into one of its children. 5693 5694 https://github.com/cs3org/reva/pull/3009 5695 5696 * Enhancement #2977: Skip space lookup on space propfind 5697 5698 We now construct the space id from the /dav/spaces URL intead of making a request to the 5699 registry. 5700 5701 https://github.com/owncloud/ocis/issues/1277 5702 https://github.com/owncloud/ocis/issues/2144 5703 https://github.com/owncloud/ocis/issues/3073 5704 https://github.com/cs3org/reva/pull/2977 5705 5706 Changelog for reva 2.6.1 (2022-06-27) 5707 ======================================= 5708 5709 The following sections list the changes in reva 2.6.1 relevant to 5710 reva users. The changes are ordered by importance. 5711 5712 Summary 5713 ------- 5714 5715 * Fix #2998: Fix 0-byte-uploads 5716 * Enh #3983: Add capability for alias links 5717 * Enh #3000: Make less stat requests 5718 * Enh #3003: Distinguish GRPC FAILED_PRECONDITION and ABORTED codes 5719 * Enh #3005: Remove unused HomeMapping variable 5720 5721 Details 5722 ------- 5723 5724 * Bugfix #2998: Fix 0-byte-uploads 5725 5726 We fixed a problem with 0-byte uploads by using TouchFile instead of going through TUS 5727 (decomposedfs and owncloudsql storage drivers only for now). 5728 5729 https://github.com/cs3org/reva/pull/2998 5730 5731 * Enhancement #3983: Add capability for alias links 5732 5733 For better UX clients need a way to discover if alias links are supported by the server. We added a 5734 capability under "files_sharing/public/alias" 5735 5736 https://github.com/owncloud/ocis/issues/3983 5737 https://github.com/cs3org/reva/pull/2991 5738 5739 * Enhancement #3000: Make less stat requests 5740 5741 The /dav/spaces endpoint now constructs a reference instead of making a lookup grpc call, 5742 reducing the number of requests. 5743 5744 https://github.com/cs3org/reva/pull/3000 5745 5746 * Enhancement #3003: Distinguish GRPC FAILED_PRECONDITION and ABORTED codes 5747 5748 Webdav distinguishes between 412 precondition failed for if match errors for locks or etags, 5749 uses 405 Method Not Allowed when trying to MKCOL an already existing collection and 409 5750 Conflict when intermediate collections are missing. 5751 5752 The CS3 GRPC status codes are modeled after 5753 https://github.com/googleapis/googleapis/blob/master/google/rpc/code.proto. When 5754 trying to use the error codes to distinguish these cases on a storageprovider CreateDir call we 5755 can map ALREADY_EXISTS to 405, FAILED_PRECONDITION to 409 and ABORTED to 412. 5756 5757 Unfortunately, we currently use and map FAILED_PRECONDITION to 412. I assume, because the 5758 naming is very similar to PreconditionFailed. However the GRPC docs are very clear that 5759 ABORTED should be used, specifically mentioning etags and locks. 5760 5761 With this PR we internally clean up the usage in the decomposedfs and mapping in the ocdav 5762 handler. 5763 5764 https://github.com/cs3org/reva/pull/3003 5765 https://github.com/cs3org/reva/pull/3010 5766 5767 * Enhancement #3005: Remove unused HomeMapping variable 5768 5769 We have removed the unused HomeMapping variable from the gateway. 5770 5771 https://github.com/cs3org/reva/pull/3005 5772 5773 Changelog for reva 2.6.0 (2022-06-21) 5774 ======================================= 5775 5776 The following sections list the changes in reva 2.6.0 relevant to 5777 reva users. The changes are ordered by importance. 5778 5779 Summary 5780 ------- 5781 5782 * Fix #2985: Make stat requests route based on storage providerid 5783 * Fix #2987: Let archiver handle all error codes 5784 * Fix #2994: Fix errors when loading shares 5785 * Fix #2996: Do not close share dump channels 5786 * Fix #2993: Remove unused configuration 5787 * Fix #2950: Fix sharing with space ref 5788 * Fix #2991: Make sharesstorageprovider get accepted share 5789 * Chg #2877: Enable resharing 5790 * Chg #2984: Update CS3Apis 5791 * Enh #3753: Add executant to the events 5792 * Enh #2820: Instrument GRPC and HTTP requests with OTel 5793 * Enh #2975: Leverage shares space storageid and type when listing shares 5794 * Enh #3882: Explicitly return on ocdav move requests with body 5795 * Enh #2932: Stat accepted shares mountpoints, configure existing share updates 5796 * Enh #2944: Improve owncloudsql connection management 5797 * Enh #2962: Per service TracerProvider 5798 * Enh #2911: Allow for dumping and loading shares 5799 * Enh #2938: Sharpen tooling 5800 5801 Details 5802 ------- 5803 5804 * Bugfix #2985: Make stat requests route based on storage providerid 5805 5806 The gateway now uses a filter mask to only fetch the root id of a space for stat requests. This 5807 allows the spaces registry to determine the responsible storage provider without querying 5808 the storageproviders. 5809 5810 https://github.com/cs3org/reva/pull/2985 5811 5812 * Bugfix #2987: Let archiver handle all error codes 5813 5814 We fixed the archiver handler to handle all error codes 5815 5816 https://github.com/cs3org/reva/pull/2987 5817 5818 * Bugfix #2994: Fix errors when loading shares 5819 5820 We fixed a bug where loading shares and associated received shares ran into issues when 5821 handling them simultaneously. 5822 5823 https://github.com/cs3org/reva/pull/2994 5824 5825 * Bugfix #2996: Do not close share dump channels 5826 5827 We no longer close the channels when dumping shares, it's the responsibility of the caller. 5828 5829 https://github.com/cs3org/reva/pull/2996 5830 5831 * Bugfix #2993: Remove unused configuration 5832 5833 We've fixed removed unused configuration: 5834 5835 - `insecure` from the dataprovider - `timeout` from the dataprovider - `tmp_folder` from the 5836 storageprovider 5837 5838 https://github.com/cs3org/reva/pull/2993 5839 5840 * Bugfix #2950: Fix sharing with space ref 5841 5842 We've fixed a bug where share requests with `path` attribute present ignored the `space_ref` 5843 attribute. We now give the `space_ref` attribute precedence over the `path` attribute. 5844 5845 https://github.com/cs3org/reva/pull/2950 5846 5847 * Bugfix #2991: Make sharesstorageprovider get accepted share 5848 5849 The sharesstorageprovider now gets an accepted share instead of filtering all shares. 5850 5851 https://github.com/cs3org/reva/pull/2991 5852 5853 * Change #2877: Enable resharing 5854 5855 This will allow resharing of files. - All Viewers and Editors are now able to reshare files and 5856 folders - One can still edit their own shares, even when loosing share permissions - Viewers and 5857 Editors in a space are not affected 5858 5859 https://github.com/cs3org/reva/pull/2877 5860 5861 * Change #2984: Update CS3Apis 5862 5863 Updated the CS3Apis to make use of field_mask and pagination for list requests. 5864 5865 https://github.com/cs3org/reva/pull/2984 5866 5867 * Enhancement #3753: Add executant to the events 5868 5869 Added the executant field to all events. 5870 5871 https://github.com/owncloud/ocis/issues/3753 5872 https://github.com/cs3org/reva/pull/2945 5873 5874 * Enhancement #2820: Instrument GRPC and HTTP requests with OTel 5875 5876 We've added the enduser.id tag to the HTTP and GRPC requests. We've fixed the tracer names. 5877 We've decorated the traces with the hostname. 5878 5879 https://github.com/cs3org/reva/pull/2820 5880 5881 * Enhancement #2975: Leverage shares space storageid and type when listing shares 5882 5883 The list shares call now also fills the storageid to allow the space registry to directly route 5884 requests to the correct storageprovider. The spaces registry will now also skip 5885 storageproviders that are not configured for a requested type, causing type 'personal' 5886 requests to skip the sharestorageprovider. 5887 5888 https://github.com/cs3org/reva/pull/2975 5889 https://github.com/cs3org/reva/pull/2980 5890 5891 * Enhancement #3882: Explicitly return on ocdav move requests with body 5892 5893 Added a check if a ocdav move request contains a body. If it does a 415 415 (Unsupported Media 5894 Type) will be returned. 5895 5896 https://github.com/owncloud/ocis/issues/3882 5897 https://github.com/cs3org/reva/pull/2974 5898 5899 * Enhancement #2932: Stat accepted shares mountpoints, configure existing share updates 5900 5901 https://github.com/cs3org/reva/pull/2932 5902 5903 * Enhancement #2944: Improve owncloudsql connection management 5904 5905 The owncloudsql storagedriver is now aware of the request context and will close db 5906 connections when http connections are closed or time out. We also increased the max number of 5907 open connections from 10 to 100 to prevent a corner case where all connections were used but idle 5908 connections were not freed. 5909 5910 https://github.com/cs3org/reva/pull/2944 5911 5912 * Enhancement #2962: Per service TracerProvider 5913 5914 To improve tracing we create separate TracerProviders per service now. This is especially 5915 helpful when running multiple reva services in a single process (like e.g. oCIS does). 5916 5917 https://github.com/cs3org/reva/pull/2962 5918 https://github.com/cs3org/reva/pull/2978 5919 5920 * Enhancement #2911: Allow for dumping and loading shares 5921 5922 We now have interfaces for dumpable and loadable share manages which can be used to migrate 5923 shares between share managers 5924 5925 https://github.com/cs3org/reva/pull/2911 5926 5927 * Enhancement #2938: Sharpen tooling 5928 5929 * We increased the linting timeout to 10min which caused some release builds to time out 5930 5931 https://github.com/cs3org/reva/pull/2938 5932 5933 Changelog for reva 2.5.1 (2022-06-08) 5934 ======================================= 5935 5936 The following sections list the changes in reva 2.5.1 relevant to 5937 reva users. The changes are ordered by importance. 5938 5939 Summary 5940 ------- 5941 5942 * Fix #2931: Allow listing share jail space 5943 * Fix #3704: Fix propfinds with depth 0 5944 5945 Details 5946 ------- 5947 5948 * Bugfix #2931: Allow listing share jail space 5949 5950 Clients can now list the share jail content via `PROPFIND /dav/spaces/{sharejailid}` 5951 5952 https://github.com/cs3org/reva/pull/2931 5953 5954 * Bugfix #3704: Fix propfinds with depth 0 5955 5956 Fixed the response for propfinds with depth 0. The response now doesn't contain the shares jail 5957 anymore. 5958 5959 https://github.com/owncloud/ocis/issues/3704 5960 https://github.com/cs3org/reva/pull/2918 5961 5962 Changelog for reva 2.5.0 (2022-06-07) 5963 ======================================= 5964 5965 The following sections list the changes in reva 2.5.0 relevant to 5966 reva users. The changes are ordered by importance. 5967 5968 Summary 5969 ------- 5970 5971 * Fix #2909: The decomposedfs now checks the GetPath permission 5972 * Fix #2899: Empty meta requests should return body 5973 * Fix #2928: Fix mkcol response code 5974 * Fix #2907: Correct share jail child aggregation 5975 * Fix #3810: Fix unlimitted quota in spaces 5976 * Fix #3498: Check user permissions before updating/removing public shares 5977 * Fix #2904: Share jail now works properly when accessed as a space 5978 * Fix #2903: User owncloudsql now uses the correct userid 5979 * Chg #2920: Clean up the propfind code 5980 * Chg #2913: Rename ocs parameter "space_ref" 5981 * Enh #2919: EOS Spaces implementation 5982 * Enh #2888: Introduce spaces field mask 5983 * Enh #2922: Refactor webdav error handling 5984 5985 Details 5986 ------- 5987 5988 * Bugfix #2909: The decomposedfs now checks the GetPath permission 5989 5990 After fixing the meta endpoint and introducing the fieldmask the GetPath call is made directly 5991 to the storageprovider. The decomposedfs now checks if the current user actually has the 5992 permission to get the path. Before the two previous PRs this was covered by the list storage 5993 spaces call which used a stat request and the stat permission. 5994 5995 https://github.com/cs3org/reva/pull/2909 5996 5997 * Bugfix #2899: Empty meta requests should return body 5998 5999 Meta requests with no resourceID should return a multistatus response body with a 404 part. 6000 6001 https://github.com/cs3org/reva/pull/2899 6002 6003 * Bugfix #2928: Fix mkcol response code 6004 6005 We now return the correct response code when an mkcol fails. 6006 6007 https://github.com/cs3org/reva/pull/2928 6008 6009 * Bugfix #2907: Correct share jail child aggregation 6010 6011 We now add up the size of all mount points when aggregating the size for a child with the same name. 6012 Furthermore, the listing should no longer contain duplicate entries. 6013 6014 https://github.com/cs3org/reva/pull/2907 6015 6016 * Bugfix #3810: Fix unlimitted quota in spaces 6017 6018 Fixed the quota check when unlimitting a space, i.e. when setting the quota to "0". 6019 6020 https://github.com/owncloud/ocis/issues/3810 6021 https://github.com/cs3org/reva/pull/2895 6022 6023 * Bugfix #3498: Check user permissions before updating/removing public shares 6024 6025 Added permission checks before updating or deleting public shares. These methods previously 6026 didn't enforce the users permissions. 6027 6028 https://github.com/owncloud/ocis/issues/3498 6029 https://github.com/cs3org/reva/pull/3900 6030 6031 * Bugfix #2904: Share jail now works properly when accessed as a space 6032 6033 When accessing shares via the virtual share jail we now build correct relative references 6034 before forwarding the requests to the correct storage provider. 6035 6036 https://github.com/cs3org/reva/pull/2904 6037 6038 * Bugfix #2903: User owncloudsql now uses the correct userid 6039 6040 https://github.com/cs3org/reva/pull/2903 6041 6042 * Change #2920: Clean up the propfind code 6043 6044 Cleaned up the ocdav propfind code to make it more readable. 6045 6046 https://github.com/cs3org/reva/pull/2920 6047 6048 * Change #2913: Rename ocs parameter "space_ref" 6049 6050 We decided to deprecate the parameter "space_ref". We decided to use "space" parameter 6051 instead. The difference is that "space" must not contain a "path". The "path" parameter can be 6052 used in combination with "space" to create a relative path request 6053 6054 https://github.com/cs3org/reva/pull/2913 6055 6056 * Enhancement #2919: EOS Spaces implementation 6057 6058 https://github.com/cs3org/reva/pull/2919 6059 6060 * Enhancement #2888: Introduce spaces field mask 6061 6062 We now use a field mask to select which properties to retrieve when looking up storage spaces. 6063 This allows the gateway to only ask for `root` when trying to forward id or path based requests. 6064 6065 https://github.com/cs3org/reva/pull/2888 6066 6067 * Enhancement #2922: Refactor webdav error handling 6068 6069 We made more webdav handlers return a status code and error to unify error rendering 6070 6071 https://github.com/cs3org/reva/pull/2922 6072 6073 Changelog for reva 2.4.1 (2022-05-24) 6074 ======================================= 6075 6076 The following sections list the changes in reva 2.4.1 relevant to 6077 reva users. The changes are ordered by importance. 6078 6079 Summary 6080 ------- 6081 6082 * Fix #2891: Add missing http status code 6083 6084 Details 6085 ------- 6086 6087 * Bugfix #2891: Add missing http status code 6088 6089 This Fix adds a missing status code to the InsufficientStorage error in reva, to allow tus to 6090 pass it through. 6091 6092 https://github.com/cs3org/reva/pull/2891 6093 6094 Changelog for reva 2.4.0 (2022-05-24) 6095 ======================================= 6096 6097 The following sections list the changes in reva 2.4.0 relevant to 6098 reva users. The changes are ordered by importance. 6099 6100 Summary 6101 ------- 6102 6103 * Fix #2854: Handle non uuid space and nodeid in decomposedfs 6104 * Fix #2853: Filter CS3 share manager listing 6105 * Fix #2868: Actually remove blobs when purging 6106 * Fix #2882: Fix FileUploaded event being emitted too early 6107 * Fix #2848: Fix storage id in the references in the ItemTrashed events 6108 * Fix #2852: Fix rcbox dependency on reva 1.18 6109 * Fix #3505: Fix creating a new file with wopi 6110 * Fix #2885: Move stat out of usershareprovider 6111 * Fix #2883: Fix role consideration when updating a share 6112 * Fix #2864: Fix Grant Space IDs 6113 * Fix #2870: Update quota calculation 6114 * Fix #2876: Fix version number in status page 6115 * Fix #2829: Don't include versions in quota 6116 * Chg #2856: Do not allow to edit disabled spaces 6117 * Enh #3741: Add download endpoint to ocdav versions API 6118 * Enh #2884: Show mounted shares in virtual share jail root 6119 * Enh #2792: Use storageproviderid for spaces routing 6120 6121 Details 6122 ------- 6123 6124 * Bugfix #2854: Handle non uuid space and nodeid in decomposedfs 6125 6126 The decomposedfs no longer panics when trying to look up spaces with a non uuid length id. 6127 6128 https://github.com/cs3org/reva/pull/2854 6129 6130 * Bugfix #2853: Filter CS3 share manager listing 6131 6132 The cs3 share manager driver now correctly filters user and group queries 6133 6134 https://github.com/cs3org/reva/pull/2853 6135 6136 * Bugfix #2868: Actually remove blobs when purging 6137 6138 Blobs were not being deleted properly on purge. Now if a folder gets purged all its children will 6139 be deleted 6140 6141 https://github.com/cs3org/reva/pull/2868 6142 6143 * Bugfix #2882: Fix FileUploaded event being emitted too early 6144 6145 We fixed a problem where the FileUploaded event was emitted before the upload had actually 6146 finished. 6147 6148 https://github.com/cs3org/reva/pull/2882 6149 6150 * Bugfix #2848: Fix storage id in the references in the ItemTrashed events 6151 6152 https://github.com/cs3org/reva/pull/2848 6153 6154 * Bugfix #2852: Fix rcbox dependency on reva 1.18 6155 6156 The cbox package no longer depends on reva 1.18. 6157 6158 https://github.com/cs3org/reva/pull/2852 6159 6160 * Bugfix #3505: Fix creating a new file with wopi 6161 6162 Fixed a bug in the appprovider which prevented creating new files. 6163 6164 https://github.com/owncloud/ocis/issues/3505 6165 https://github.com/cs3org/reva/pull/2869 6166 6167 * Bugfix #2885: Move stat out of usershareprovider 6168 6169 The sharesstorageprovider now only stats the acceptet shares when necessary. 6170 6171 https://github.com/cs3org/reva/pull/2885 6172 6173 * Bugfix #2883: Fix role consideration when updating a share 6174 6175 Previously when updating a share the endpoint only considered the permissions, now this also 6176 respects a given role. 6177 6178 https://github.com/cs3org/reva/pull/2883 6179 6180 * Bugfix #2864: Fix Grant Space IDs 6181 6182 The opaqueID for a grant space was incorrectly overwritten with the root space id. 6183 6184 https://github.com/cs3org/reva/pull/2864 6185 6186 * Bugfix #2870: Update quota calculation 6187 6188 We now render the `free` and `definition` quota properties, taking into account the remaining 6189 bytes reported from the storage space and calculating `relative` only when possible. 6190 6191 https://github.com/cs3org/reva/pull/2870 6192 6193 * Bugfix #2876: Fix version number in status page 6194 6195 We needed to undo the version number changes on the status page to keep compatibility for legacy 6196 clients. We added a new field `productversion` for the actual version of the product. 6197 6198 https://github.com/cs3org/reva/pull/2876 6199 https://github.com/cs3org/reva/pull/2889 6200 6201 * Bugfix #2829: Don't include versions in quota 6202 6203 Fixed the quota check to not count the quota of previous versions. 6204 6205 https://github.com/owncloud/ocis/issues/2829 6206 https://github.com/cs3org/reva/pull/2863 6207 6208 * Change #2856: Do not allow to edit disabled spaces 6209 6210 Previously managers could still upload to disabled spaces. This is now forbidden 6211 6212 https://github.com/cs3org/reva/pull/2856 6213 6214 * Enhancement #3741: Add download endpoint to ocdav versions API 6215 6216 Added missing endpoints to the ocdav versions API. This enables downloads of previous file 6217 versions. 6218 6219 https://github.com/owncloud/ocis/issues/3741 6220 https://github.com/cs3org/reva/pull/2855 6221 6222 * Enhancement #2884: Show mounted shares in virtual share jail root 6223 6224 The virtual share jail now shows the mounted shares to allow the desktop client to sync that 6225 collection. 6226 6227 https://github.com/owncloud/ocis/issues/3719 6228 https://github.com/cs3org/reva/pull/2884 6229 6230 * Enhancement #2792: Use storageproviderid for spaces routing 6231 6232 We made the spaces registry aware of storageprovider ids and use them to route directly to the 6233 correct storageprovider 6234 6235 https://github.com/cs3org/reva/pull/2792 6236 6237 Changelog for reva 2.3.1 (2022-05-08) 6238 ======================================= 6239 6240 The following sections list the changes in reva 2.3.1 relevant to 6241 reva users. The changes are ordered by importance. 6242 6243 Summary 6244 ------- 6245 6246 * Fix #2827: Check permissions when deleting spaces 6247 * Fix #2830: Correctly render response when accepting merged shares 6248 * Fix #2831: Fix uploads to owncloudsql storage when no mtime is provided 6249 * Enh #2833: Make status.php values configurable 6250 * Enh #2832: Add version option for ocdav go-micro service 6251 6252 Details 6253 ------- 6254 6255 * Bugfix #2827: Check permissions when deleting spaces 6256 6257 Do not allow viewers and editors to delete a space (you need to be manager) Block deleting a space 6258 via dav service (should use graph to avoid accidental deletes) 6259 6260 https://github.com/cs3org/reva/pull/2827 6261 6262 * Bugfix #2830: Correctly render response when accepting merged shares 6263 6264 We now only return the data for the accepted share instead of concatenating data for all 6265 affected shares. 6266 6267 https://github.com/cs3org/reva/pull/2830 6268 6269 * Bugfix #2831: Fix uploads to owncloudsql storage when no mtime is provided 6270 6271 We've fixed uploads to owncloudsql storage when no mtime is provided. We now just use the 6272 current timestamp. Previously the upload did fail. 6273 6274 https://github.com/cs3org/reva/pull/2831 6275 6276 * Enhancement #2833: Make status.php values configurable 6277 6278 We've added an option to set the status values for `product`, `productname`, `version`, 6279 `versionstring` and `edition`. 6280 6281 https://github.com/cs3org/reva/pull/2833 6282 6283 * Enhancement #2832: Add version option for ocdav go-micro service 6284 6285 We've added an option to set a version for the ocdav go-micro registry. This enables you to set a 6286 version queriable by from the go-micro registry. 6287 6288 https://github.com/cs3org/reva/pull/2832 6289 6290 Changelog for reva 2.3.0 (2022-05-02) 6291 ======================================= 6292 6293 The following sections list the changes in reva 2.3.0 relevant to 6294 reva users. The changes are ordered by importance. 6295 6296 Summary 6297 ------- 6298 6299 * Fix #2693: Support editnew actions from MS Office 6300 * Fix #2588: Dockerfile.revad-ceph to use the right base image 6301 * Fix #2499: Removed check DenyGrant in resource permission 6302 * Fix #2285: Accept new userid idp format 6303 * Fix #2802: Fix the resource id handling for space shares 6304 * Fix #2800: Fix spaceid parsing in spaces trashbin API 6305 * Fix #1846: Fix trash-bin propfind responses 6306 * Fix #2608: Respect the tracing_service_name config variable 6307 * Fix #2742: Use exact match in login filter 6308 * Fix #2759: Made uid, gid claims parsing more robust in OIDC auth provider 6309 * Fix #2788: Return the correct file IDs on public link resources 6310 * Fix #2322: Use RFC3339 for parsing dates 6311 * Fix #2784: Disable storageprovider cache for the share jail 6312 * Fix #2555: Fix site accounts endpoints 6313 * Fix #2675: Updates Makefile according to latest go standards 6314 * Fix #2572: Wait for nats server on middleware start 6315 * Chg #2735: Avoid user enumeration 6316 * Chg #2737: Bump go-cs3api 6317 * Chg #2816: Merge the utility functions for space ids/references into one package 6318 * Chg #2763: Change the oCIS and S3NG storage driver blob store layout 6319 * Chg #2596: Remove hash from public link urls 6320 * Chg #2785: Implement workaround for chi.RegisterMethod 6321 * Chg #2559: Do not encode webDAV ids to base64 6322 * Chg #2740: Rename oc10 share manager driver 6323 * Chg #2561: Merge oidcmapping auth manager into oidc 6324 * Enh #2698: Make capabilities endpoint public, authenticate users is present 6325 * Enh #2515: Enabling tracing by default if not explicitly disabled 6326 * Enh #2686: Features for favorites xattrs in EOS, cache for scope expansion 6327 * Enh #2494: Use sys ACLs for file permissions 6328 * Enh #2522: Introduce events 6329 * Enh #2811: Add event for created directories 6330 * Enh #2798: Add additional fields to events to enable search 6331 * Enh #2790: Fake providerids so API stays stable after beta 6332 * Enh #2685: Enable federated account access 6333 * Enh #1787: Add support for HTTP TPC 6334 * Enh #2799: Add flag to enable unrestriced listing of spaces 6335 * Enh #2560: Mentix PromSD extensions 6336 * Enh #2741: Meta path for user 6337 * Enh #2613: Externalize custom mime types configuration for storage providers 6338 * Enh #2163: Nextcloud-based share manager for pkg/ocm/share 6339 * Enh #2696: Preferences driver refactor and cbox sql implementation 6340 * Enh #2052: New CS3API datatx methods 6341 * Enh #2743: Add capability for public link single file edit 6342 * Enh #2738: Site accounts site-global settings 6343 * Enh #2672: Further Site Accounts improvements 6344 * Enh #2549: Site accounts improvements 6345 * Enh #2795: Add feature flags "projects" and "share_jail" to spaces capability 6346 * Enh #2514: Reuse ocs role objects in other drivers 6347 * Enh #2781: In memory user provider 6348 * Enh #2752: Refactor the rest user and group provider drivers 6349 6350 Details 6351 ------- 6352 6353 * Bugfix #2693: Support editnew actions from MS Office 6354 6355 This fixes the incorrect behavior when creating new xlsx and pptx files, as MS Office supports 6356 the editnew action and it must be used for newly created files instead of the normal edit action. 6357 6358 https://github.com/cs3org/reva/pull/2693 6359 6360 * Bugfix #2588: Dockerfile.revad-ceph to use the right base image 6361 6362 In Aug2021 https://hub.docker.com/r/ceph/daemon-base was moved to quay.ceph.io and the 6363 builds for this image were failing for some weeks after January. 6364 6365 https://github.com/cs3org/reva/pull/2588 6366 6367 * Bugfix #2499: Removed check DenyGrant in resource permission 6368 6369 When adding a denial permission 6370 6371 https://github.com/cs3org/reva/pull/2499 6372 6373 * Bugfix #2285: Accept new userid idp format 6374 6375 The format for userid idp [changed](https://github.com/cs3org/cs3apis/pull/159) and 6376 this broke [the ocmd 6377 tutorial](https://reva.link/docs/tutorials/share-tutorial/#5-1-4-create-the-share) 6378 This PR makes the provider authorizer interceptor accept both the old and the new string 6379 format. 6380 6381 https://github.com/cs3org/reva/issues/2285 6382 https://github.com/cs3org/reva/issues/2285 6383 See 6384 and 6385 6386 * Bugfix #2802: Fix the resource id handling for space shares 6387 6388 Adapt the space shares to the new id format. 6389 6390 https://github.com/cs3org/reva/pull/2802 6391 6392 * Bugfix #2800: Fix spaceid parsing in spaces trashbin API 6393 6394 Added proper space id parsing to the spaces trashbin API endpoint. 6395 6396 https://github.com/cs3org/reva/pull/2800 6397 6398 * Bugfix #1846: Fix trash-bin propfind responses 6399 6400 Fixed the href of the root element in trash-bin propfind responses. 6401 6402 https://github.com/owncloud/ocis/issues/1846 6403 https://github.com/cs3org/reva/pull/2821 6404 6405 * Bugfix #2608: Respect the tracing_service_name config variable 6406 6407 https://github.com/cs3org/reva/pull/2608 6408 6409 * Bugfix #2742: Use exact match in login filter 6410 6411 After the recent config changes the auth-provider was accidently using a substring match for 6412 the login filter. It's no fixed to use an exact match. 6413 6414 https://github.com/cs3org/reva/pull/2742 6415 6416 * Bugfix #2759: Made uid, gid claims parsing more robust in OIDC auth provider 6417 6418 This fix makes sure the uid and gid claims are defined at init time, and that the necessary 6419 typecasts are performed correctly when authenticating users. A comment was added that in case 6420 the uid/gid claims are missing AND that no mapping takes place, a user entity is returned with 6421 uid = gid = 0. 6422 6423 https://github.com/cs3org/reva/pull/2759 6424 6425 * Bugfix #2788: Return the correct file IDs on public link resources 6426 6427 Resources in public shares should return the real resourceids from the storage of the owner. 6428 6429 https://github.com/cs3org/reva/pull/2788 6430 6431 * Bugfix #2322: Use RFC3339 for parsing dates 6432 6433 We have used the RFC3339 format for parsing dates to be consistent with oC Web. 6434 6435 https://github.com/cs3org/reva/issues/2322 6436 https://github.com/cs3org/reva/pull/2744 6437 6438 * Bugfix #2784: Disable storageprovider cache for the share jail 6439 6440 The share jail should not be cached in the provider cache because it is a virtual collection of 6441 resources from different storage providers. 6442 6443 https://github.com/cs3org/reva/pull/2784 6444 6445 * Bugfix #2555: Fix site accounts endpoints 6446 6447 This PR fixes small bugs in the site accounts endpoints. 6448 6449 https://github.com/cs3org/reva/pull/2555 6450 6451 * Bugfix #2675: Updates Makefile according to latest go standards 6452 6453 Earlier, we were using go get to install packages. Now, we are using go install to install 6454 packages 6455 6456 https://github.com/cs3org/reva/issues/2675 6457 https://github.com/cs3org/reva/pull/2747 6458 6459 * Bugfix #2572: Wait for nats server on middleware start 6460 6461 Use a retry mechanism to connect to the nats server when it is not ready yet 6462 6463 https://github.com/cs3org/reva/pull/2572 6464 6465 * Change #2735: Avoid user enumeration 6466 6467 Sending PROPFIND requests to `../files/admin` did return a different response than sending 6468 the same request to `../files/notexists`. This allowed enumerating users. This response was 6469 changed to be the same always 6470 6471 https://github.com/cs3org/reva/pull/2735 6472 6473 * Change #2737: Bump go-cs3api 6474 6475 Bumped version of the go-cs3api 6476 6477 https://github.com/cs3org/reva/pull/2737 6478 6479 * Change #2816: Merge the utility functions for space ids/references into one package 6480 6481 Merged the utility functions regarding space ids or references into one package. Also updated 6482 the functions to support the newly added provider id in the spaces id. 6483 6484 https://github.com/cs3org/reva/pull/2816 6485 6486 * Change #2763: Change the oCIS and S3NG storage driver blob store layout 6487 6488 We've optimized the oCIS and S3NG storage driver blob store layout. 6489 6490 For the oCIS storage driver, blobs will now be stored inside the folder of a space, next to the 6491 nodes. This allows admins to easily archive, backup and restore spaces as a whole with UNIX 6492 tooling. We also moved from a single folder for blobs to multiple folders for blobs, to make the 6493 filesystem interactions more performant for large numbers of files. 6494 6495 The previous layout on disk looked like this: 6496 6497 ```markdown |-- spaces | |-- .. | | |-- .. | |-- xx | |-- xxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx <- 6498 partitioned space id | |-- nodes | |-- .. | |-- xx | |-- xx | |-- xx | |-- xx | |-- 6499 -xxxx-xxxx-xxxx-xxxxxxxxxxxx <- partitioned node id |-- blobs |-- .. |-- 6500 xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx <- blob id ``` 6501 6502 Now it looks like this: 6503 6504 ```markdown |-- spaces | |-- .. | | |-- .. |-- xx |-- xxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx <- 6505 partitioned space id |-- nodes | |-- .. | |-- xx | |-- xx | |-- xx | |-- xx | |-- 6506 -xxxx-xxxx-xxxx-xxxxxxxxxxxx <- partitioned node id |-- blobs |-- .. |-- xx |-- xx |-- xx |-- xx 6507 |-- -xxxx-xxxx-xxxx-xxxxxxxxxxxx <- partitioned blob id ``` 6508 6509 For the S3NG storage driver, blobs will now be prefixed with the space id and also a part of the 6510 blob id will be used as prefix. This creates a better prefix partitioning and mitigates S3 api 6511 performance drops for large buckets 6512 (https://aws.amazon.com/de/premiumsupport/knowledge-center/s3-prefix-nested-folders-difference/). 6513 6514 The previous S3 bucket (blobs only looked like this): 6515 6516 ```markdown |-- .. |-- xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx <- blob id ``` 6517 6518 Now it looks like this: 6519 6520 ```markdown |-- .. |-- xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx <- space id |-- .. |-- xx |-- xx 6521 |-- xx |-- xx |-- -xxxx-xxxx-xxxx-xxxxxxxxxxxx <- partitioned blob id ``` 6522 6523 https://github.com/owncloud/ocis/issues/3557 6524 https://github.com/cs3org/reva/pull/2763 6525 6526 * Change #2596: Remove hash from public link urls 6527 6528 Public link urls do not contain the hash anymore, this is needed to support the ocis and web 6529 history mode. 6530 6531 https://github.com/cs3org/reva/pull/2596 6532 https://github.com/owncloud/ocis/pull/3109 6533 https://github.com/owncloud/web/pull/6363 6534 6535 * Change #2785: Implement workaround for chi.RegisterMethod 6536 6537 Implemented a workaround for `chi.RegisterMethod` because of a concurrent map read write 6538 issue. This needs to be fixed upstream in go-chi. 6539 6540 https://github.com/cs3org/reva/pull/2785 6541 6542 * Change #2559: Do not encode webDAV ids to base64 6543 6544 We removed the base64 encoding of the IDs and use the format <storageID>!<opaqueID> with a `!` 6545 delimiter. As a reserved delimiter it is URL safe. The IDs will be XML and JSON encoded as 6546 necessary. 6547 6548 https://github.com/cs3org/reva/pull/2559 6549 6550 * Change #2740: Rename oc10 share manager driver 6551 6552 We aligned the oc10 SQL share manager driver name with all other owncloud spacific SQL drivers 6553 by renaming the package `pkg/share/manager/sql` to `pkg/share/manager/owncloudsql` and 6554 changing the name from `oc10-sql` to `owncloudsql`. 6555 6556 https://github.com/cs3org/reva/pull/2740 6557 6558 * Change #2561: Merge oidcmapping auth manager into oidc 6559 6560 The oidcmapping auth manager was created as a separate package to ease testing. As it has now 6561 been tested also as a pure OIDC auth provider without mapping, and as the code is largely 6562 refactored, it makes sense to merge it back so to maintain a single OIDC manager. 6563 6564 https://github.com/cs3org/reva/pull/2561 6565 6566 * Enhancement #2698: Make capabilities endpoint public, authenticate users is present 6567 6568 https://github.com/cs3org/reva/pull/2698 6569 6570 * Enhancement #2515: Enabling tracing by default if not explicitly disabled 6571 6572 https://github.com/cs3org/reva/pull/2515 6573 6574 * Enhancement #2686: Features for favorites xattrs in EOS, cache for scope expansion 6575 6576 https://github.com/cs3org/reva/pull/2686 6577 6578 * Enhancement #2494: Use sys ACLs for file permissions 6579 6580 https://github.com/cs3org/reva/pull/2494 6581 6582 * Enhancement #2522: Introduce events 6583 6584 This will introduce events into the system. Events are a simple way to bring information from 6585 one service to another. Read `pkg/events/example` and subfolders for more information 6586 6587 https://github.com/cs3org/reva/pull/2522 6588 6589 * Enhancement #2811: Add event for created directories 6590 6591 We added another event for created directories. 6592 6593 https://github.com/cs3org/reva/pull/2811 6594 6595 * Enhancement #2798: Add additional fields to events to enable search 6596 6597 https://github.com/cs3org/reva/pull/2798 6598 6599 * Enhancement #2790: Fake providerids so API stays stable after beta 6600 6601 To support the stativ registry, we need to accept providerids This fakes the ids so the API can 6602 stay stable 6603 6604 https://github.com/cs3org/reva/pull/2790 6605 6606 * Enhancement #2685: Enable federated account access 6607 6608 https://github.com/cs3org/reva/pull/2685 6609 6610 * Enhancement #1787: Add support for HTTP TPC 6611 6612 We have added support for HTTP Third Party Copy. This allows remote data transfers between 6613 storages managed by either two different reva servers, or a reva server and a Grid 6614 (WLCG/ESCAPE) site server. 6615 6616 Such remote transfers are expected to be driven by 6617 [GFAL](https://cern.ch/dmc-docs/gfal2/gfal2.html), the underlying library used by 6618 [FTS](https://cern.ch/fts), and [Rucio](https://rucio.cern.ch). 6619 6620 In addition, the oidcmapping package has been refactored to support the standard OIDC use 6621 cases as well when no mapping is defined. 6622 6623 https://github.com/cs3org/reva/issues/1787 6624 https://github.com/cs3org/reva/pull/2007 6625 6626 * Enhancement #2799: Add flag to enable unrestriced listing of spaces 6627 6628 Listing spaces now only returns all spaces when the user has the permissions and it was 6629 explicitly requested. The default will only return the spaces the current user has access to. 6630 6631 https://github.com/cs3org/reva/pull/2799 6632 6633 * Enhancement #2560: Mentix PromSD extensions 6634 6635 The Mentix Prometheus SD scrape targets are now split into one file per service type, making 6636 health checks configuration easier. Furthermore, the local file connector for mesh data and 6637 the site registration endpoint have been dropped, as they aren't needed anymore. 6638 6639 https://github.com/cs3org/reva/pull/2560 6640 6641 * Enhancement #2741: Meta path for user 6642 6643 We've added support for requesting the `meta-path-for-user` via a propfind to the 6644 `dav/meta/<id>` endpoint. 6645 6646 https://github.com/cs3org/reva/pull/2741 6647 https://github.com/cs3org/reva/pull/2793 6648 https://doc.owncloud.com/server/next/developer_manual/webdav_api/meta.html 6649 6650 * Enhancement #2613: Externalize custom mime types configuration for storage providers 6651 6652 Added ability to configure custom mime types in an external JSON file, such that it can be reused 6653 when many storage providers are deployed at the same time. 6654 6655 https://github.com/cs3org/reva/pull/2613 6656 6657 * Enhancement #2163: Nextcloud-based share manager for pkg/ocm/share 6658 6659 Note that pkg/ocm/share is very similar to pkg/share, but it deals with cs3/sharing/ocm 6660 whereas pkg/share deals with cs3/sharing/collaboration 6661 6662 https://github.com/cs3org/reva/pull/2163 6663 6664 * Enhancement #2696: Preferences driver refactor and cbox sql implementation 6665 6666 This PR uses the updated CS3APIs which accepts a namespace in addition to a single string key to 6667 recognize a user preference. It also refactors the GRPC service to support multiple drivers 6668 and adds the cbox SQL implementation. 6669 6670 https://github.com/cs3org/reva/pull/2696 6671 6672 * Enhancement #2052: New CS3API datatx methods 6673 6674 CS3 datatx pull model methods: PullTransfer, RetryTransfer, ListTransfers Method 6675 CreateTransfer removed. 6676 6677 https://github.com/cs3org/reva/pull/2052 6678 6679 * Enhancement #2743: Add capability for public link single file edit 6680 6681 It is now possible to share a single file by link with edit permissions. Therefore we need a 6682 public share capability to enable that feature in the clients. At the same time we improved the 6683 WebDAV permissions for public links. 6684 6685 https://github.com/cs3org/reva/pull/2743 6686 6687 * Enhancement #2738: Site accounts site-global settings 6688 6689 This PR extends the site accounts service by adding site-global settings. These are used to 6690 store test user credentials that are in return used by our BBE port to perform CS3API-specific 6691 health checks. 6692 6693 https://github.com/cs3org/reva/pull/2738 6694 6695 * Enhancement #2672: Further Site Accounts improvements 6696 6697 Yet another PR to update the site accounts (and Mentix): New default site ID; Include service 6698 type in alerts; Naming unified; Remove obsolete stuff. 6699 6700 https://github.com/cs3org/reva/pull/2672 6701 6702 * Enhancement #2549: Site accounts improvements 6703 6704 This PR improves the site accounts: - Removed/hid API key stuff - Added quick links to the main 6705 panel - Made alert notifications mandatory 6706 6707 https://github.com/cs3org/reva/pull/2549 6708 6709 * Enhancement #2795: Add feature flags "projects" and "share_jail" to spaces capability 6710 6711 https://github.com/cs3org/reva/pull/2795 6712 6713 * Enhancement #2514: Reuse ocs role objects in other drivers 6714 6715 https://github.com/cs3org/reva/pull/2514 6716 6717 * Enhancement #2781: In memory user provider 6718 6719 We added an in memory implementation for the user provider that reads the users from the 6720 mapstructure passed in. 6721 6722 https://github.com/cs3org/reva/pull/2781 6723 6724 * Enhancement #2752: Refactor the rest user and group provider drivers 6725 6726 We now maintain our own cache for all user and group data, and periodically refresh it. A redis 6727 server now becomes a necessary dependency, whereas it was optional previously. 6728 6729 https://github.com/cs3org/reva/pull/2752 6730 6731 Changelog for reva 2.2.0 (2022-04-12) 6732 ======================================= 6733 6734 The following sections list the changes in reva 2.2.0 relevant to 6735 reva users. The changes are ordered by importance. 6736 6737 Summary 6738 ------- 6739 6740 * Fix #3373: Fix the permissions attribute in propfind responses 6741 * Fix #2721: Fix locking and public link scope checker to make the WOPI server work 6742 * Fix #2668: Minor cleanup 6743 * Fix #2692: Ensure that the host in the ocs config endpoint has no protocol 6744 * Fix #2709: Decomposed FS: return precondition failed if already locked 6745 * Chg #2687: Allow link with no or edit permission 6746 * Chg #2658: Small clean up of the ocdav code 6747 * Enh #2691: Decomposed FS: return a reference to the parent 6748 * Enh #2708: Rework LDAP configuration of user and group providers 6749 * Enh #2665: Add embeddable ocdav go micro service 6750 * Enh #2715: Introduced quicklinks 6751 * Enh #3370: Enable all spaces members to list public shares 6752 * Enh #3370: Enable space members to list shares inside the space 6753 * Enh #2717: Add definitions for user and group events 6754 6755 Details 6756 ------- 6757 6758 * Bugfix #3373: Fix the permissions attribute in propfind responses 6759 6760 Fixed the permissions that are returned when doing a propfind on a project space. 6761 6762 https://github.com/owncloud/ocis/issues/3373 6763 https://github.com/cs3org/reva/pull/2713 6764 6765 * Bugfix #2721: Fix locking and public link scope checker to make the WOPI server work 6766 6767 We've fixed the locking implementation to use the CS3api instead of the temporary opaque 6768 values. We've fixed the scope checker on public links to allow the OpenInApp actions. 6769 6770 These fixes have been done to use the cs3org/wopiserver with REVA edge. 6771 6772 https://github.com/cs3org/reva/pull/2721 6773 6774 * Bugfix #2668: Minor cleanup 6775 6776 - The `chunk_folder` config option is unused - Prevent a panic when looking up spaces 6777 6778 https://github.com/cs3org/reva/pull/2668 6779 6780 * Bugfix #2692: Ensure that the host in the ocs config endpoint has no protocol 6781 6782 We've fixed the host info in the ocs config endpoint so that it has no protocol, as ownCloud 10 6783 doesn't have it. 6784 6785 https://github.com/cs3org/reva/pull/2692 6786 https://github.com/owncloud/ocis/pull/3113 6787 6788 * Bugfix #2709: Decomposed FS: return precondition failed if already locked 6789 6790 We've fixed the return code from permission denied to precondition failed if a user tries to 6791 lock an already locked file. 6792 6793 https://github.com/cs3org/reva/pull/2709 6794 6795 * Change #2687: Allow link with no or edit permission 6796 6797 Allow the creation of links with no permissions. These can be used to navigate to a file that a 6798 user has access to. Allow setting edit permission on single file links (create and delete are 6799 still blocked) Introduce endpoint to get information about a given token 6800 6801 https://github.com/cs3org/reva/pull/2687 6802 6803 * Change #2658: Small clean up of the ocdav code 6804 6805 Cleaned up the ocdav code to make it more readable and in one case a bit faster. 6806 6807 https://github.com/cs3org/reva/pull/2658 6808 6809 * Enhancement #2691: Decomposed FS: return a reference to the parent 6810 6811 We've implemented the changes from cs3org/cs3apis#167 in the DecomposedFS, so that a stat on a 6812 resource always includes a reference to the parent of the resource. 6813 6814 https://github.com/cs3org/reva/pull/2691 6815 6816 * Enhancement #2708: Rework LDAP configuration of user and group providers 6817 6818 We reworked to LDAP configuration of the LDAP user and group provider to share a common 6819 configuration scheme. Additionally the LDAP configuration no longer relies on templating 6820 LDAP filters in the configuration which is error prone and can be confusing. Additionally the 6821 providers are now somewhat more flexible about the group membership schema. Instead of only 6822 supporting RFC2307 (posixGroup) style groups. It's now possible to also use standard LDAP 6823 groups (groupOfName/groupOfUniqueNames) which track group membership by DN instead of 6824 username (the behaviour is switched automatically depending on the group_objectclass 6825 setting). 6826 6827 The new LDAP configuration basically looks this: 6828 6829 ```ini [grpc.services.userprovider.drivers.ldap] uri="ldaps://localhost:636" 6830 insecure=true user_base_dn="ou=testusers,dc=owncloud,dc=com" 6831 group_base_dn="ou=testgroups,dc=owncloud,dc=com" user_filter="" 6832 user_objectclass="posixAccount" group_filter="" group_objectclass="posixGroup" 6833 bind_username="cn=admin,dc=owncloud,dc=com" bind_password="admin" 6834 idp="http://localhost:20080" 6835 6836 [grpc.services.userprovider.drivers.ldap.user_schema] id="entryuuid" 6837 displayName="displayName" userName="cn" 6838 6839 [grpc.services.userprovider.drivers.ldap.group_schema] id="entryuuid" 6840 displayName="cn" groupName="cn" member="memberUID" ``` 6841 6842 `uri` defines the LDAP URI of the destination Server 6843 6844 `insecure` allows to disable TLS Certifictate Validation (for development setups) 6845 6846 `user_base_dn`/`group_base_dn` define the search bases for users and groups 6847 6848 `user_filter`/`group_filter` allow to define additional LDAP filter of users and groups. 6849 This could be e.g. `(objectclass=owncloud)` to match for an additional objectclass. 6850 6851 `user_objectclass`/`group_objectclass` define the main objectclass of Users and Groups. 6852 These are used to construct the LDAP filters 6853 6854 `bind_username`/`bind_password` contain the authentication information for the LDAP 6855 connections 6856 6857 The `user_schema` and `group_schema` sections define the mapping from CS3 user/group 6858 attributes to LDAP Attributes 6859 6860 https://github.com/cs3org/reva/issues/2122 6861 https://github.com/cs3org/reva/issues/2124 6862 https://github.com/cs3org/reva/pull/2708 6863 6864 * Enhancement #2665: Add embeddable ocdav go micro service 6865 6866 The new `pkg/micro/ocdav` package implements a go micro compatible version of the ocdav 6867 service. 6868 6869 https://github.com/cs3org/reva/pull/2665 6870 6871 * Enhancement #2715: Introduced quicklinks 6872 6873 We now support Quicklinks. When creating a link with flag "quicklink=true", no new link will be 6874 created when a link already exists. 6875 6876 https://github.com/cs3org/reva/pull/2715 6877 6878 * Enhancement #3370: Enable all spaces members to list public shares 6879 6880 Enhanced the json and cs3 public share manager so that it lists shares in spaces for all members. 6881 6882 https://github.com/owncloud/ocis/issues/3370 6883 https://github.com/cs3org/reva/pull/2697 6884 6885 * Enhancement #3370: Enable space members to list shares inside the space 6886 6887 If there are shared resources in a space then all members are allowed to see those shares. The 6888 json share manager was enhanced to check if the user is allowed to see a share by checking the 6889 grants on a resource. 6890 6891 https://github.com/owncloud/ocis/issues/3370 6892 https://github.com/cs3org/reva/pull/2674 6893 https://github.com/cs3org/reva/pull/2710 6894 6895 * Enhancement #2717: Add definitions for user and group events 6896 6897 Enhance the events package with definitions for user and group events. 6898 6899 https://github.com/cs3org/reva/pull/2717 6900 https://github.com/cs3org/reva/pull/2724 6901 6902 Changelog for reva 2.1.0 (2022-03-29) 6903 ======================================= 6904 6905 The following sections list the changes in reva 2.1.0 relevant to 6906 reva users. The changes are ordered by importance. 6907 6908 Summary 6909 ------- 6910 6911 * Fix #2636: Delay reconnect log for events 6912 * Fix #2645: Avoid warning about missing .flock files 6913 * Fix #2625: Fix locking on publik links and the decomposed filesystem 6914 * Fix #2643: Emit linkaccessfailed event when share is nil 6915 * Fix #2646: Replace public mountpoint fileid with grant fileid in ocdav 6916 * Fix #2612: Adjust the scope handling to support the spaces architecture 6917 * Fix #2621: Send events only if response code is `OK` 6918 * Chg #2574: Switch NATS backend 6919 * Chg #2667: Allow LDAP groups to have no gidNumber 6920 * Chg #3233: Improve quota handling 6921 * Chg #2600: Use the cs3 share api to manage spaces 6922 * Enh #2644: Add new public share manager 6923 * Enh #2626: Add new share manager 6924 * Enh #2624: Add etags to virtual spaces 6925 * Enh #2639: File Events 6926 * Enh #2627: Add events for sharing action 6927 * Enh #2664: Add grantID to mountpoint 6928 * Enh #2622: Allow listing shares in spaces via the OCS API 6929 * Enh #2623: Add space aliases 6930 * Enh #2647: Add space specific events 6931 * Enh #3345: Add the spaceid to propfind responses 6932 * Enh #2616: Add etag to spaces response 6933 * Enh #2628: Add spaces aware trash-bin API 6934 6935 Details 6936 ------- 6937 6938 * Bugfix #2636: Delay reconnect log for events 6939 6940 Print reconnect information log only when reconnect time is bigger than a second 6941 6942 https://github.com/cs3org/reva/pull/2636 6943 6944 * Bugfix #2645: Avoid warning about missing .flock files 6945 6946 These flock files appear randomly because of file locking. We can savely ignore them. 6947 6948 https://github.com/cs3org/reva/pull/2645 6949 6950 * Bugfix #2625: Fix locking on publik links and the decomposed filesystem 6951 6952 We've fixed the behavior of locking on the decomposed filesystem, so that now app based locks 6953 can be modified user independently (needed for WOPI integration). Also we added a check, if a 6954 lock is already expired and if so, we lazily delete the lock. The InitiateUploadRequest now 6955 adds the Lock to the upload metadata so that an upload to an locked file is possible. 6956 6957 We'v added the locking api requests to the public link scope checks, so that locking also can be 6958 used on public links (needed for WOPI integration). 6959 6960 https://github.com/cs3org/reva/pull/2625 6961 6962 * Bugfix #2643: Emit linkaccessfailed event when share is nil 6963 6964 The code no longer panics when a link access failed event has no share. 6965 6966 https://github.com/cs3org/reva/pull/2643 6967 6968 * Bugfix #2646: Replace public mountpoint fileid with grant fileid in ocdav 6969 6970 We now show the same resoucre id for resources when accessing them via a public links as when 6971 using a logged in user. This allows the web ui to start a WOPI session with the correct resource 6972 id. 6973 6974 https://github.com/cs3org/reva/issues/2635 6975 https://github.com/cs3org/reva/pull/2646 6976 6977 * Bugfix #2612: Adjust the scope handling to support the spaces architecture 6978 6979 The scope authentication interceptors weren't updated to the spaces architecture and 6980 couldn't authenticate some requests. 6981 6982 https://github.com/cs3org/reva/pull/2612 6983 6984 * Bugfix #2621: Send events only if response code is `OK` 6985 6986 Before events middleware was sending events also when the resulting status code was not `OK`. 6987 This is clearly a bug. 6988 6989 https://github.com/cs3org/reva/pull/2621 6990 6991 * Change #2574: Switch NATS backend 6992 6993 We've switched the NATS backend from Streaming to JetStream, since NATS Streaming is 6994 depreciated. 6995 6996 https://github.com/cs3org/reva/pull/2574 6997 6998 * Change #2667: Allow LDAP groups to have no gidNumber 6999 7000 Similar to the user-provider allow a group to have no gidNumber. Assign a default in that case. 7001 7002 https://github.com/cs3org/reva/pull/2667 7003 7004 * Change #3233: Improve quota handling 7005 7006 GetQuota now returns 0 when no quota was set instead of the disk size. Also added a new return 7007 value for the remaining space which will either be quota - used bytes or if no quota was set the 7008 free disk size. 7009 7010 https://github.com/owncloud/ocis/issues/3233 7011 https://github.com/cs3org/reva/pull/2666 7012 https://github.com/cs3org/reva/pull/2688 7013 7014 * Change #2600: Use the cs3 share api to manage spaces 7015 7016 We now use the cs3 share Api to manage the space roles. We do not send the request to the share 7017 manager, the permissions are stored in the storage provider 7018 7019 https://github.com/cs3org/reva/pull/2600 7020 https://github.com/cs3org/reva/pull/2620 7021 https://github.com/cs3org/reva/pull/2687 7022 7023 * Enhancement #2644: Add new public share manager 7024 7025 We added a new public share manager which uses the new metadata storage backend for persisting 7026 the public share information. 7027 7028 https://github.com/cs3org/reva/pull/2644 7029 7030 * Enhancement #2626: Add new share manager 7031 7032 We added a new share manager which uses the new metadata storage backend for persisting the 7033 share information. 7034 7035 https://github.com/cs3org/reva/pull/2626 7036 7037 * Enhancement #2624: Add etags to virtual spaces 7038 7039 The shares storage provider didn't include the etag in virtual spaces like the shares jail or 7040 mountpoints. 7041 7042 https://github.com/cs3org/reva/pull/2624 7043 7044 * Enhancement #2639: File Events 7045 7046 Adds file based events. See `pkg/events/files.go` for full list 7047 7048 https://github.com/cs3org/reva/pull/2639 7049 7050 * Enhancement #2627: Add events for sharing action 7051 7052 Includes lifecycle events for shares and public links doesn't include federated sharing 7053 events for now see full list of events in `pkg/events/types.go` 7054 7055 https://github.com/cs3org/reva/pull/2627 7056 7057 * Enhancement #2664: Add grantID to mountpoint 7058 7059 We distinguish between the mountpoint of a share and the grant where the original file is 7060 located on the storage. 7061 7062 https://github.com/cs3org/reva/pull/2664 7063 7064 * Enhancement #2622: Allow listing shares in spaces via the OCS API 7065 7066 Added a `space_ref` parameter to the list shares endpoints so that one can list shares inside of 7067 spaces. 7068 7069 https://github.com/cs3org/reva/pull/2622 7070 7071 * Enhancement #2623: Add space aliases 7072 7073 Space aliases can be used to resolve spaceIDs in a client. 7074 7075 https://github.com/cs3org/reva/pull/2623 7076 7077 * Enhancement #2647: Add space specific events 7078 7079 See `pkg/events/spaces.go` for full list 7080 7081 https://github.com/cs3org/reva/pull/2647 7082 7083 * Enhancement #3345: Add the spaceid to propfind responses 7084 7085 Added the spaceid to propfind responses so that clients have the necessary data to send 7086 subsequent requests. 7087 7088 https://github.com/owncloud/ocis/issues/3345 7089 https://github.com/cs3org/reva/pull/2657 7090 7091 * Enhancement #2616: Add etag to spaces response 7092 7093 Added the spaces etag to the response when listing spaces. 7094 7095 https://github.com/cs3org/reva/pull/2616 7096 7097 * Enhancement #2628: Add spaces aware trash-bin API 7098 7099 Added the webdav trash-bin endpoint for spaces. 7100 7101 https://github.com/cs3org/reva/pull/2628 7102 7103 Changelog for reva 2.0.0 (2022-03-03) 7104 ======================================= 7105 7106 The following sections list the changes in reva 2.0.0 relevant to 7107 reva users. The changes are ordered by importance. 7108 7109 Summary 7110 ------- 7111 7112 * Fix #2457: Do not swallow error 7113 * Fix #2422: Handle non existing spaces correctly 7114 * Fix #2327: Enable changelog on edge branch 7115 * Fix #2370: Fixes for apps in public shares, project spaces for EOS driver 7116 * Fix #2464: Pass spacegrants when adding member to space 7117 * Fix #2430: Fix aggregated child folder id 7118 * Fix #2348: Make archiver handle spaces protocol 7119 * Fix #2452: Fix create space error message 7120 * Fix #2445: Don't handle ids containing "/" in decomposedfs 7121 * Fix #2285: Accept new userid idp format 7122 * Fix #2503: Remove the protection from /v?.php/config endpoints 7123 * Fix #2462: Public shares path needs to be set 7124 * Fix #2427: Fix registry caching 7125 * Fix #2298: Remove share refs from trashbin 7126 * Fix #2433: Fix shares provider filter 7127 * Fix #2351: Fix Statcache removing 7128 * Fix #2374: Fix webdav copy of zero byte files 7129 * Fix #2336: Handle sending all permissions when creating public links 7130 * Fix #2440: Add ArbitraryMetadataKeys to statcache key 7131 * Fix #2582: Keep lock structs in a local map protected by a mutex 7132 * Fix #2372: Make owncloudsql work with the spaces registry 7133 * Fix #2416: The registry now returns complete space structs 7134 * Fix #3066: Fix propfind listing for files 7135 * Fix #2428: Remove unused home provider from config 7136 * Fix #2334: Revert fix decomposedfs upload 7137 * Fix #2415: Services should never return transport level errors 7138 * Fix #2419: List project spaces for share recipients 7139 * Fix #2501: Fix spaces stat 7140 * Fix #2432: Use space reference when listing containers 7141 * Fix #2572: Wait for nats server on middleware start 7142 * Fix #2454: Fix webdav paths in PROPFINDS 7143 * Chg #2329: Activate the statcache 7144 * Chg #2596: Remove hash from public link urls 7145 * Chg #2495: Remove the ownCloud storage driver 7146 * Chg #2527: Store space attributes in decomposedFS 7147 * Chg #2581: Update hard-coded status values 7148 * Chg #2524: Use description during space creation 7149 * Chg #2554: Shard nodes per space in decomposedfs 7150 * Chg #2576: Harden xattrs errors 7151 * Chg #2436: Replace template in GroupFilter for UserProvider with a simple string 7152 * Chg #2429: Make archiver id based 7153 * Chg #2340: Allow multiple space configurations per provider 7154 * Chg #2396: The ocdav handler is now spaces aware 7155 * Chg #2349: Require `ListRecycle` when listing trashbin 7156 * Chg #2353: Reduce log output 7157 * Chg #2542: Do not encode webDAV ids to base64 7158 * Chg #2519: Remove the auto creation of the .space folder 7159 * Chg #2394: Remove logic from gateway 7160 * Chg #2023: Add a sharestorageprovider 7161 * Chg #2234: Add a spaces registry 7162 * Chg #2339: Fix static registry regressions 7163 * Chg #2370: Fix static registry regressions 7164 * Chg #2354: Return not found when updating non existent space 7165 * Chg #2589: Remove deprecated linter modules 7166 * Chg #2016: Move wrapping and unwrapping of paths to the storage gateway 7167 * Enh #2591: Set up App Locks with basic locks 7168 * Enh #1209: Reva CephFS module v0.2.1 7169 * Enh #2511: Error handling cleanup in decomposed FS 7170 * Enh #2516: Cleaned up some code 7171 * Enh #2512: Consolidate xattr setter and getter 7172 * Enh #2341: Use CS3 permissions API 7173 * Enh #2343: Allow multiple space type fileters on decomposedfs 7174 * Enh #2460: Add locking support to decomposedfs 7175 * Enh #2540: Refactored the xattrs package in the decomposedfs 7176 * Enh #2463: Do not log whole nodes 7177 * Enh #2350: Add file locking methods to the storage and filesystem interfaces 7178 * Enh #2379: Add new file url of the app provider to the ocs capabilities 7179 * Enh #2369: Implement TouchFile from the CS3apis 7180 * Enh #2385: Allow to create new files with the app provider on public links 7181 * Enh #2397: Product field in OCS version 7182 * Enh #2393: Update tus/tusd to version 1.8.0 7183 * Enh #2522: Introduce events 7184 * Enh #2528: Use an exclcusive write lock when writing multiple attributes 7185 * Enh #2595: Add integration test for the groupprovider 7186 * Enh #2439: Ignore handled errors when creating spaces 7187 * Enh #2500: Invalidate listproviders cache 7188 * Enh #2345: Don't assume that the LDAP groupid in reva matches the name 7189 * Enh #2525: Allow using AD UUID as userId values 7190 * Enh #2584: Allow running userprovider integration tests for the LDAP driver 7191 * Enh #2585: Add metadata storage layer and indexer 7192 * Enh #2163: Nextcloud-based share manager for pkg/ocm/share 7193 * Enh #2278: OIDC driver changes for lightweight users 7194 * Enh #2315: Add new attributes to public link propfinds 7195 * Enh #2431: Delete shares when purging spaces 7196 * Enh #2434: Refactor ocdav into smaller chunks 7197 * Enh #2524: Add checks when removing space members 7198 * Enh #2457: Restore spaces that were previously deleted 7199 * Enh #2498: Include grants in list storage spaces response 7200 * Enh #2344: Allow listing all storage spaces 7201 * Enh #2547: Add an if-match check to the storage provider 7202 * Enh #2486: Update cs3apis to include lock api changes 7203 * Enh #2526: Upgrade ginkgo to v2 7204 7205 Details 7206 ------- 7207 7208 * Bugfix #2457: Do not swallow error 7209 7210 Decomposedfs not longer swallows errors when creating a node fails. 7211 7212 https://github.com/cs3org/reva/pull/2457 7213 7214 * Bugfix #2422: Handle non existing spaces correctly 7215 7216 When looking up a space by id we returned the wrong status code. 7217 7218 https://github.com/cs3org/reva/pull/2422 7219 7220 * Bugfix #2327: Enable changelog on edge branch 7221 7222 We added a `branch` flag to the `tools/check-changelog/main.go` to fix changelog checks on 7223 the edge branch. 7224 7225 https://github.com/cs3org/reva/pull/2327 7226 7227 * Bugfix #2370: Fixes for apps in public shares, project spaces for EOS driver 7228 7229 https://github.com/cs3org/reva/pull/2370 7230 7231 * Bugfix #2464: Pass spacegrants when adding member to space 7232 7233 When creating a space grant there should not be created a new space. Unfortunately SpaceGrant 7234 didn't work when adding members to a space. Now a value is placed in the ctx of the 7235 storageprovider on which decomposedfs reacts 7236 7237 https://github.com/cs3org/reva/pull/2464 7238 7239 * Bugfix #2430: Fix aggregated child folder id 7240 7241 Propfind now returns the correct id and correctly aggregates the mtime and etag. 7242 7243 https://github.com/cs3org/reva/pull/2430 7244 7245 * Bugfix #2348: Make archiver handle spaces protocol 7246 7247 The archiver can now handle the spaces protocol 7248 7249 https://github.com/cs3org/reva/pull/2348 7250 7251 * Bugfix #2452: Fix create space error message 7252 7253 Create space no longer errors with list spaces error messages. 7254 7255 https://github.com/cs3org/reva/pull/2452 7256 7257 * Bugfix #2445: Don't handle ids containing "/" in decomposedfs 7258 7259 The storageprovider previously checked all ids without checking their validity this lead to 7260 flaky test because it shouldn't check ids that are used from the public storage provider 7261 7262 https://github.com/cs3org/reva/pull/2445 7263 7264 * Bugfix #2285: Accept new userid idp format 7265 7266 The format for userid idp [changed](https://github.com/cs3org/cs3apis/pull/159) and 7267 this broke [the ocmd 7268 tutorial](https://reva.link/docs/tutorials/share-tutorial/#5-1-4-create-the-share) 7269 This PR makes the provider authorizer interceptor accept both the old and the new string 7270 format. 7271 7272 https://github.com/cs3org/reva/issues/2285 7273 https://github.com/cs3org/reva/issues/2285 7274 See 7275 and 7276 7277 * Bugfix #2503: Remove the protection from /v?.php/config endpoints 7278 7279 We've removed the protection from the "/v1.php/config" and "/v2.php/config" endpoints to be 7280 API compatible with ownCloud 10. 7281 7282 https://github.com/cs3org/reva/issues/2503 7283 https://github.com/owncloud/ocis/issues/1338 7284 7285 * Bugfix #2462: Public shares path needs to be set 7286 7287 We need to set the relative path to the space root for public link shares to identify them in the 7288 shares list. 7289 7290 https://github.com/owncloud/ocis/issues/2462 7291 https://github.com/cs3org/reva/pull/2580 7292 7293 * Bugfix #2427: Fix registry caching 7294 7295 We now cache space lookups per user. 7296 7297 https://github.com/cs3org/reva/pull/2427 7298 7299 * Bugfix #2298: Remove share refs from trashbin 7300 7301 https://github.com/cs3org/reva/pull/2298 7302 7303 * Bugfix #2433: Fix shares provider filter 7304 7305 The shares storage provider now correctly filters space types 7306 7307 https://github.com/cs3org/reva/pull/2433 7308 7309 * Bugfix #2351: Fix Statcache removing 7310 7311 Removing from statcache didn't work correctly with different setups. Unified and fixed 7312 7313 https://github.com/cs3org/reva/pull/2351 7314 7315 * Bugfix #2374: Fix webdav copy of zero byte files 7316 7317 We've fixed the webdav copy action of zero byte files, which was not performed because the 7318 webdav api assumed, that zero byte uploads are created when initiating the upload, which was 7319 recently removed from all storage drivers. Therefore the webdav api also uploads zero byte 7320 files after initiating the upload. 7321 7322 https://github.com/cs3org/reva/pull/2374 7323 https://github.com/cs3org/reva/pull/2309 7324 7325 * Bugfix #2336: Handle sending all permissions when creating public links 7326 7327 For backwards compatability we now reduce permissions to readonly when a create public link 7328 carries all permissions. 7329 7330 https://github.com/cs3org/reva/issues/2336 7331 https://github.com/owncloud/ocis/issues/1269 7332 7333 * Bugfix #2440: Add ArbitraryMetadataKeys to statcache key 7334 7335 Otherwise stating with and without them would return the same result (because it is cached) 7336 7337 https://github.com/cs3org/reva/pull/2440 7338 7339 * Bugfix #2582: Keep lock structs in a local map protected by a mutex 7340 7341 Make sure that only one go routine or process can get the lock. 7342 7343 https://github.com/cs3org/reva/pull/2582 7344 7345 * Bugfix #2372: Make owncloudsql work with the spaces registry 7346 7347 Owncloudsql now works properly with the spaces registry. 7348 7349 https://github.com/cs3org/reva/pull/2372 7350 7351 * Bugfix #2416: The registry now returns complete space structs 7352 7353 We now return the complete space info, including name, path, owner, etc. instead of only path 7354 and id. 7355 7356 https://github.com/cs3org/reva/pull/2416 7357 7358 * Bugfix #3066: Fix propfind listing for files 7359 7360 When doing a propfind for a file the result contained the files twice. 7361 7362 https://github.com/owncloud/ocis/issues/3066 7363 https://github.com/cs3org/reva/pull/2506 7364 7365 * Bugfix #2428: Remove unused home provider from config 7366 7367 The spaces registry does not use a home provider config. 7368 7369 https://github.com/cs3org/reva/pull/2428 7370 7371 * Bugfix #2334: Revert fix decomposedfs upload 7372 7373 Reverting https://github.com/cs3org/reva/pull/2330 to fix it properly 7374 7375 https://github.com/cs3org/reva/pull/2334 7376 7377 * Bugfix #2415: Services should never return transport level errors 7378 7379 The CS3 API adopted the grpc error codes from the [google grpc status 7380 package](https://github.com/googleapis/googleapis/blob/master/google/rpc/status.proto). 7381 It also separates transport level errors from application level errors on purpose. This 7382 allows sending CS3 messages over protocols other than GRPC. To keep that seperation, the 7383 server side must always return `nil`, even though the code generation for go produces function 7384 signatures for rpcs with an `error` return property. That allows clients to clearly 7385 distinguish between transport level errors indicated by `err != nil` the error and 7386 application level errors by checking the status code. 7387 7388 https://github.com/cs3org/reva/pull/2415 7389 7390 * Bugfix #2419: List project spaces for share recipients 7391 7392 The sharing handler now uses the ListProvider call on the registry when sharing by reference. 7393 Furthermore, the decomposedfs now checks permissions on the root of a space so that a space is 7394 listed for users that have access to a space. 7395 7396 https://github.com/cs3org/reva/pull/2419 7397 7398 * Bugfix #2501: Fix spaces stat 7399 7400 When stating a space e.g. the Share Jail and that space contains another space, in this case a 7401 share then the stat would sometimes get the sub space instead of the Share Jail itself. 7402 7403 https://github.com/cs3org/reva/pull/2501 7404 7405 * Bugfix #2432: Use space reference when listing containers 7406 7407 The propfind handler now uses the reference for a space to make lookups relative. 7408 7409 https://github.com/cs3org/reva/pull/2432 7410 7411 * Bugfix #2572: Wait for nats server on middleware start 7412 7413 Use a retry mechanism to connect to the nats server when it is not ready yet 7414 7415 https://github.com/cs3org/reva/pull/2572 7416 7417 * Bugfix #2454: Fix webdav paths in PROPFINDS 7418 7419 The WebDAV Api was handling paths on spaces propfinds in the wrong way. This has been fixed in the 7420 WebDAV layer. 7421 7422 https://github.com/cs3org/reva/pull/2454 7423 7424 * Change #2329: Activate the statcache 7425 7426 Activates the cache of stat request/responses in the gateway. 7427 7428 https://github.com/cs3org/reva/pull/2329 7429 7430 * Change #2596: Remove hash from public link urls 7431 7432 Public link urls do not contain the hash anymore, this is needed to support the ocis and web 7433 history mode. 7434 7435 https://github.com/cs3org/reva/pull/2596 7436 https://github.com/owncloud/ocis/pull/3109 7437 https://github.com/owncloud/web/pull/6363 7438 7439 * Change #2495: Remove the ownCloud storage driver 7440 7441 We've removed the ownCloud storage driver because it was no longer maintained after the 7442 ownCloud SQL storage driver was added. 7443 7444 If you have been using the ownCloud storage driver, please switch to the ownCloud SQL storage 7445 driver which brings you more features and is under active maintenance. 7446 7447 https://github.com/cs3org/reva/pull/2495 7448 7449 * Change #2527: Store space attributes in decomposedFS 7450 7451 We need to store more space attributes in the storage. This implements extended space 7452 attributes in the decomposedFS 7453 7454 https://github.com/cs3org/reva/pull/2527 7455 7456 * Change #2581: Update hard-coded status values 7457 7458 The hard-coded version and product values have been updated to be consistent in all places in 7459 the code. 7460 7461 https://github.com/cs3org/reva/pull/2581 7462 7463 * Change #2524: Use description during space creation 7464 7465 We can now use a space description during space creation. We also fixed a bug in the spaces roles. 7466 Co-owners are now maintainers. 7467 7468 https://github.com/cs3org/reva/pull/2524 7469 7470 * Change #2554: Shard nodes per space in decomposedfs 7471 7472 The decomposedfs changas the on disk layout to shard nodes per space. 7473 7474 https://github.com/cs3org/reva/pull/2554 7475 7476 * Change #2576: Harden xattrs errors 7477 7478 Unwrap the error to get the root error. 7479 7480 https://github.com/cs3org/reva/pull/2576 7481 7482 * Change #2436: Replace template in GroupFilter for UserProvider with a simple string 7483 7484 Previously the "groupfilter" configuration for the UserProvider expected a go-template 7485 value (based of of an `userpb.UserId` as it's input). And it assumed we could run a single LDAP 7486 query to get all groups a user is member of by specifying the userid. However most LDAP Servers 7487 store the GroupMembership by either username (e.g. in memberUID Attribute) or by the user's DN 7488 (e.g. in member/uniqueMember). 7489 7490 This change removes the userpb.UserId template processing from the groupfilter and replaces 7491 it with a single string (the username) to cleanup the config a bit. Existing configs need to be 7492 update to replace the go template references in `groupfilter` (e.g. `{{.}}` or 7493 `{{.OpaqueId}}`) with `{{query}}`. 7494 7495 https://github.com/cs3org/reva/pull/2436 7496 7497 * Change #2429: Make archiver id based 7498 7499 The archiver now uses ids to walk the tree instead of paths 7500 7501 https://github.com/cs3org/reva/pull/2429 7502 7503 * Change #2340: Allow multiple space configurations per provider 7504 7505 The spaces registry can now use multiple space configurations to allow personal and project 7506 spaces on the same provider 7507 7508 https://github.com/cs3org/reva/pull/2340 7509 7510 * Change #2396: The ocdav handler is now spaces aware 7511 7512 It will use LookupStorageSpaces and make only relative requests to the gateway. Temp comment 7513 7514 https://github.com/cs3org/reva/pull/2396 7515 7516 * Change #2349: Require `ListRecycle` when listing trashbin 7517 7518 Previously there was no check, so anyone could list anyones trash 7519 7520 https://github.com/cs3org/reva/pull/2349 7521 7522 * Change #2353: Reduce log output 7523 7524 Reduced log output. Some errors or warnings were logged multiple times or even unnecesarily. 7525 7526 https://github.com/cs3org/reva/pull/2353 7527 7528 * Change #2542: Do not encode webDAV ids to base64 7529 7530 We removed the base64 encoding of the IDs and use the format <storageID>!<opaqueID> with a `!` 7531 delimiter. As a reserved delimiter it is URL safe. The IDs will be XML and JSON encoded as 7532 necessary. 7533 7534 https://github.com/cs3org/reva/pull/2542 7535 https://github.com/cs3org/reva/pull/2558 7536 7537 * Change #2519: Remove the auto creation of the .space folder 7538 7539 We removed the auto creation of the .space folder because we don't develop this feature 7540 further. 7541 7542 https://github.com/cs3org/reva/pull/2519 7543 7544 * Change #2394: Remove logic from gateway 7545 7546 The gateway will now hold no logic except forwarding the requests to other services. 7547 7548 https://github.com/cs3org/reva/pull/2394 7549 7550 * Change #2023: Add a sharestorageprovider 7551 7552 This PR adds a ShareStorageProvider which enables us to get rid of a lot of special casing in 7553 other parts of the code. It also fixes several issues regarding shares and group shares. 7554 7555 https://github.com/cs3org/reva/pull/2023 7556 7557 * Change #2234: Add a spaces registry 7558 7559 Spaces registry is supposed to manage spaces. Read 7560 `pkg/storage/registry/spaces/Readme.md` for full details 7561 7562 https://github.com/cs3org/reva/pull/2234 7563 7564 * Change #2339: Fix static registry regressions 7565 7566 We fixed some smaller issues with using the static registry which were introduced with the 7567 spaces registry changes. 7568 7569 https://github.com/cs3org/reva/pull/2339 7570 7571 * Change #2370: Fix static registry regressions 7572 7573 We fixed some smaller issues with using the static registry which were introduced with the 7574 spaces registry changes. 7575 7576 https://github.com/cs3org/reva/pull/2370 7577 7578 * Change #2354: Return not found when updating non existent space 7579 7580 If a spaceid of a space which is updated doesn't exist, handle it as a not found error. 7581 7582 https://github.com/cs3org/reva/pull/2354 7583 7584 * Change #2589: Remove deprecated linter modules 7585 7586 Replaced the deprecated linter modules with the recommended ones. 7587 7588 https://github.com/cs3org/reva/pull/2589 7589 7590 * Change #2016: Move wrapping and unwrapping of paths to the storage gateway 7591 7592 We've moved the wrapping and unwrapping of reference paths to the storage gateway so that the 7593 storageprovider doesn't have to know its mount path. 7594 7595 https://github.com/cs3org/reva/pull/2016 7596 7597 * Enhancement #2591: Set up App Locks with basic locks 7598 7599 To set up App Locks basic locks are used now 7600 7601 https://github.com/cs3org/reva/pull/2591 7602 7603 * Enhancement #1209: Reva CephFS module v0.2.1 7604 7605 https://github.com/cs3org/reva/pull/1209 7606 7607 * Enhancement #2511: Error handling cleanup in decomposed FS 7608 7609 - Avoid inconsensitencies by cleaning up actions in case of err 7610 7611 https://github.com/cs3org/reva/pull/2511 7612 7613 * Enhancement #2516: Cleaned up some code 7614 7615 - Reduced type conversions []byte <-> string - pre-compile chunking regex 7616 7617 https://github.com/cs3org/reva/pull/2516 7618 7619 * Enhancement #2512: Consolidate xattr setter and getter 7620 7621 - Consolidate all metadata Get's and Set's to central functions. - Cleaner code by reduction of 7622 casts - Easier to hook functionality like indexing 7623 7624 https://github.com/cs3org/reva/pull/2512 7625 7626 * Enhancement #2341: Use CS3 permissions API 7627 7628 Added calls to the CS3 permissions API to the decomposedfs in order to check the user 7629 permissions. 7630 7631 https://github.com/cs3org/reva/pull/2341 7632 7633 * Enhancement #2343: Allow multiple space type fileters on decomposedfs 7634 7635 The decomposedfs driver now evaluates multiple space type filters when listing storage 7636 spaces. 7637 7638 https://github.com/cs3org/reva/pull/2343 7639 7640 * Enhancement #2460: Add locking support to decomposedfs 7641 7642 The decomposedfs now implements application level locking 7643 7644 https://github.com/cs3org/reva/pull/2460 7645 7646 * Enhancement #2540: Refactored the xattrs package in the decomposedfs 7647 7648 The xattrs package now uses the xattr.ENOATTR instead of os.ENODATA or os.ENOATTR to check 7649 attribute existence. 7650 7651 https://github.com/cs3org/reva/pull/2540 7652 https://github.com/cs3org/reva/pull/2541 7653 7654 * Enhancement #2463: Do not log whole nodes 7655 7656 It turns out that logging whole node objects is very expensive and also spams the logs quite a 7657 bit. Instead we just log the node ID now. 7658 7659 https://github.com/cs3org/reva/pull/2463 7660 7661 * Enhancement #2350: Add file locking methods to the storage and filesystem interfaces 7662 7663 We've added the file locking methods from the CS3apis to the storage and filesystem 7664 interfaces. As of now they are dummy implementations and will only return "unimplemented" 7665 errors. 7666 7667 https://github.com/cs3org/reva/pull/2350 7668 https://github.com/cs3org/cs3apis/pull/160 7669 7670 * Enhancement #2379: Add new file url of the app provider to the ocs capabilities 7671 7672 We've added the new file capability of the app provider to the ocs capabilities, so that clients 7673 can discover this url analogous to the app list and file open urls. 7674 7675 https://github.com/cs3org/reva/pull/2379 7676 https://github.com/owncloud/ocis/pull/2884 7677 https://github.com/owncloud/web/pull/5890#issuecomment-993905242 7678 7679 * Enhancement #2369: Implement TouchFile from the CS3apis 7680 7681 We've updated the CS3apis and implemented the TouchFile method. 7682 7683 https://github.com/cs3org/reva/pull/2369 7684 https://github.com/cs3org/cs3apis/pull/154 7685 7686 * Enhancement #2385: Allow to create new files with the app provider on public links 7687 7688 We've added the option to create files with the app provider on public links. 7689 7690 https://github.com/cs3org/reva/pull/2385 7691 7692 * Enhancement #2397: Product field in OCS version 7693 7694 We've added a new field to the OCS Version, which is supposed to announce the product name. The 7695 web ui as a client will make use of it to make the backend product and version available (e.g. for 7696 easier bug reports). 7697 7698 https://github.com/cs3org/reva/pull/2397 7699 7700 * Enhancement #2393: Update tus/tusd to version 1.8.0 7701 7702 We've update tus/tusd to version 1.8.0. 7703 7704 https://github.com/cs3org/reva/issues/2393 7705 https://github.com/cs3org/reva/pull/2224 7706 7707 * Enhancement #2522: Introduce events 7708 7709 This will introduce events into the system. Events are a simple way to bring information from 7710 one service to another. Read `pkg/events/example` and subfolders for more information 7711 7712 https://github.com/cs3org/reva/pull/2522 7713 7714 * Enhancement #2528: Use an exclcusive write lock when writing multiple attributes 7715 7716 The xattr package can use an exclusive write lock when writing multiple extended attributes 7717 7718 https://github.com/cs3org/reva/pull/2528 7719 7720 * Enhancement #2595: Add integration test for the groupprovider 7721 7722 Some new integration tests were added to cover the groupprovider. 7723 7724 https://github.com/cs3org/reva/pull/2595 7725 7726 * Enhancement #2439: Ignore handled errors when creating spaces 7727 7728 The CreateStorageSpace no longer logs all error cases with error level logging 7729 7730 https://github.com/cs3org/reva/pull/2439 7731 7732 * Enhancement #2500: Invalidate listproviders cache 7733 7734 We now invalidate the related listproviders cache entries when updating or deleting a storage 7735 space. 7736 7737 https://github.com/cs3org/reva/pull/2500 7738 7739 * Enhancement #2345: Don't assume that the LDAP groupid in reva matches the name 7740 7741 This allows using attributes like e.g. `entryUUID` or any custom id attribute as the id for 7742 groups. 7743 7744 https://github.com/cs3org/reva/pull/2345 7745 7746 * Enhancement #2525: Allow using AD UUID as userId values 7747 7748 Active Directory UUID attributes (like e.g. objectGUID) use the LDAP octectString Syntax. In 7749 order to be able to use them as userids in reva, they need to be converted to their string 7750 representation. 7751 7752 https://github.com/cs3org/reva/pull/2525 7753 7754 * Enhancement #2584: Allow running userprovider integration tests for the LDAP driver 7755 7756 We extended the integration test suite for the userprovider to allow running it with an LDAP 7757 server. 7758 7759 https://github.com/cs3org/reva/pull/2584 7760 7761 * Enhancement #2585: Add metadata storage layer and indexer 7762 7763 We ported over and enhanced the metadata storage layer and indexer from ocis-pkg so that it can 7764 be used by reva services as well. 7765 7766 https://github.com/cs3org/reva/pull/2585 7767 7768 * Enhancement #2163: Nextcloud-based share manager for pkg/ocm/share 7769 7770 Note that pkg/ocm/share is very similar to pkg/share, but it deals with cs3/sharing/ocm 7771 whereas pkg/share deals with cs3/sharing/collaboration 7772 7773 https://github.com/cs3org/reva/pull/2163 7774 7775 * Enhancement #2278: OIDC driver changes for lightweight users 7776 7777 https://github.com/cs3org/reva/pull/2278 7778 7779 * Enhancement #2315: Add new attributes to public link propfinds 7780 7781 Added a new property "oc:signature-auth" to public link propfinds. This is a necessary change 7782 to be able to support archive downloads in password protected public links. 7783 7784 https://github.com/cs3org/reva/pull/2315 7785 7786 * Enhancement #2431: Delete shares when purging spaces 7787 7788 Implemented the second step of the two step spaces delete process. The first step is marking the 7789 space as deleted, the second step is actually purging the space. During the second step all 7790 shares, including public shares, in the space will be deleted. When deleting a space the blobs 7791 are currently not yet deleted since the decomposedfs will receive some changes soon. 7792 7793 https://github.com/cs3org/reva/pull/2431 7794 https://github.com/cs3org/reva/pull/2458 7795 7796 * Enhancement #2434: Refactor ocdav into smaller chunks 7797 7798 That increases code clarity and enables testing. 7799 7800 https://github.com/cs3org/reva/pull/2434 7801 7802 * Enhancement #2524: Add checks when removing space members 7803 7804 - Removed owners from project spaces - Prevent deletion of last space manager - Viewers and 7805 editors can always be deleted - Managers can only be deleted when there will be at least one 7806 remaining 7807 7808 https://github.com/cs3org/reva/pull/2524 7809 7810 * Enhancement #2457: Restore spaces that were previously deleted 7811 7812 After the first step of the two step delete process an admin can decide to restore the space 7813 instead of deleting it. This will undo the deletion and all files and shares are accessible 7814 again 7815 7816 https://github.com/cs3org/reva/pull/2457 7817 7818 * Enhancement #2498: Include grants in list storage spaces response 7819 7820 Added the grants to the response of list storage spaces. This allows service clients to show who 7821 has access to a space. 7822 7823 https://github.com/cs3org/reva/pull/2498 7824 7825 * Enhancement #2344: Allow listing all storage spaces 7826 7827 To implement the drives api we now list all spaces when no filter is given. The Provider info will 7828 not contain any spaces as the client is responsible for looking up the spaces. 7829 7830 https://github.com/cs3org/reva/pull/2344 7831 7832 * Enhancement #2547: Add an if-match check to the storage provider 7833 7834 Implement a check for the if-match value in InitiateFileUpload to prevent overwrites of newer 7835 versions. 7836 7837 https://github.com/cs3org/reva/pull/2547 7838 7839 * Enhancement #2486: Update cs3apis to include lock api changes 7840 7841 https://github.com/cs3org/reva/pull/2486 7842 7843 * Enhancement #2526: Upgrade ginkgo to v2 7844 7845 https://github.com/cs3org/reva/pull/2526 7846 7847 Changelog for reva 1.18.0 (2022-02-11) 7848 ======================================= 7849 7850 The following sections list the changes in reva 1.18.0 relevant to 7851 reva users. The changes are ordered by importance. 7852 7853 Summary 7854 ------- 7855 7856 * Fix #2370: Fixes for apps in public shares, project spaces for EOS driver 7857 * Fix #2374: Fix webdav copy of zero byte files 7858 * Fix #2478: Use ocs permission objects in the reva GRPC client 7859 * Fix #2368: Return wrapped paths for recycled items in storage provider 7860 * Chg #2354: Return not found when updating non existent space 7861 * Enh #1209: Reva CephFS module v0.2.1 7862 * Enh #2341: Use CS3 permissions API 7863 * Enh #2350: Add file locking methods to the storage and filesystem interfaces 7864 * Enh #2379: Add new file url of the app provider to the ocs capabilities 7865 * Enh #2369: Implement TouchFile from the CS3apis 7866 * Enh #2385: Allow to create new files with the app provider on public links 7867 * Enh #2397: Product field in OCS version 7868 * Enh #2393: Update tus/tusd to version 1.8.0 7869 * Enh #2205: Modify group and user managers to skip fetching specified metadata 7870 * Enh #2232: Make ocs resource info cache interoperable across drivers 7871 * Enh #2233: Populate owner data in the ocs and ocdav services 7872 * Enh #2278: OIDC driver changes for lightweight users 7873 7874 Details 7875 ------- 7876 7877 * Bugfix #2370: Fixes for apps in public shares, project spaces for EOS driver 7878 7879 https://github.com/cs3org/reva/pull/2370 7880 7881 * Bugfix #2374: Fix webdav copy of zero byte files 7882 7883 We've fixed the webdav copy action of zero byte files, which was not performed because the 7884 webdav api assumed, that zero byte uploads are created when initiating the upload, which was 7885 recently removed from all storage drivers. Therefore the webdav api also uploads zero byte 7886 files after initiating the upload. 7887 7888 https://github.com/cs3org/reva/pull/2374 7889 https://github.com/cs3org/reva/pull/2309 7890 7891 * Bugfix #2478: Use ocs permission objects in the reva GRPC client 7892 7893 There was a bug introduced by differing CS3APIs permission definitions for the same role 7894 across services. This is a first step in making all services use consistent definitions. 7895 7896 https://github.com/cs3org/reva/pull/2478 7897 7898 * Bugfix #2368: Return wrapped paths for recycled items in storage provider 7899 7900 https://github.com/cs3org/reva/pull/2368 7901 7902 * Change #2354: Return not found when updating non existent space 7903 7904 If a spaceid of a space which is updated doesn't exist, handle it as a not found error. 7905 7906 https://github.com/cs3org/reva/pull/2354 7907 7908 * Enhancement #1209: Reva CephFS module v0.2.1 7909 7910 https://github.com/cs3org/reva/pull/1209 7911 7912 * Enhancement #2341: Use CS3 permissions API 7913 7914 Added calls to the CS3 permissions API to the decomposedfs in order to check the user 7915 permissions. 7916 7917 https://github.com/cs3org/reva/pull/2341 7918 7919 * Enhancement #2350: Add file locking methods to the storage and filesystem interfaces 7920 7921 We've added the file locking methods from the CS3apis to the storage and filesystem 7922 interfaces. As of now they are dummy implementations and will only return "unimplemented" 7923 errors. 7924 7925 https://github.com/cs3org/reva/pull/2350 7926 https://github.com/cs3org/cs3apis/pull/160 7927 7928 * Enhancement #2379: Add new file url of the app provider to the ocs capabilities 7929 7930 We've added the new file capability of the app provider to the ocs capabilities, so that clients 7931 can discover this url analogous to the app list and file open urls. 7932 7933 https://github.com/cs3org/reva/pull/2379 7934 https://github.com/owncloud/ocis/pull/2884 7935 https://github.com/owncloud/web/pull/5890#issuecomment-993905242 7936 7937 * Enhancement #2369: Implement TouchFile from the CS3apis 7938 7939 We've updated the CS3apis and implemented the TouchFile method. 7940 7941 https://github.com/cs3org/reva/pull/2369 7942 https://github.com/cs3org/cs3apis/pull/154 7943 7944 * Enhancement #2385: Allow to create new files with the app provider on public links 7945 7946 We've added the option to create files with the app provider on public links. 7947 7948 https://github.com/cs3org/reva/pull/2385 7949 7950 * Enhancement #2397: Product field in OCS version 7951 7952 We've added a new field to the OCS Version, which is supposed to announce the product name. The 7953 web ui as a client will make use of it to make the backend product and version available (e.g. for 7954 easier bug reports). 7955 7956 https://github.com/cs3org/reva/pull/2397 7957 7958 * Enhancement #2393: Update tus/tusd to version 1.8.0 7959 7960 We've update tus/tusd to version 1.8.0. 7961 7962 https://github.com/cs3org/reva/issues/2393 7963 https://github.com/cs3org/reva/pull/2224 7964 7965 * Enhancement #2205: Modify group and user managers to skip fetching specified metadata 7966 7967 https://github.com/cs3org/reva/pull/2205 7968 7969 * Enhancement #2232: Make ocs resource info cache interoperable across drivers 7970 7971 https://github.com/cs3org/reva/pull/2232 7972 7973 * Enhancement #2233: Populate owner data in the ocs and ocdav services 7974 7975 https://github.com/cs3org/reva/pull/2233 7976 7977 * Enhancement #2278: OIDC driver changes for lightweight users 7978 7979 https://github.com/cs3org/reva/pull/2278 7980 7981 Changelog for reva 1.17.0 (2021-12-09) 7982 ======================================= 7983 7984 The following sections list the changes in reva 1.17.0 relevant to 7985 reva users. The changes are ordered by importance. 7986 7987 Summary 7988 ------- 7989 7990 * Fix #2305: Make sure /app/new takes `target` as absolute path 7991 * Fix #2303: Fix content disposition header for public links files 7992 * Fix #2316: Fix the share types in propfinds 7993 * Fix #2803: Fix app provider for editor public links 7994 * Fix #2298: Remove share refs from trashbin 7995 * Fix #2309: Remove early finish for zero byte file uploads 7996 * Fix #1941: Fix TUS uploads with transfer token only 7997 * Chg #2210: Fix app provider new file creation and improved error codes 7998 * Enh #2217: OIDC auth driver for ESCAPE IAM 7999 * Enh #2256: Return user type in the response of the ocs GET user call 8000 * Enh #2315: Add new attributes to public link propfinds 8001 * Enh #2740: Implement space membership endpoints 8002 * Enh #2252: Add the xattr sys.acl to SysACL (eosgrpc) 8003 * Enh #2314: OIDC: fallback if IDP doesn't provide "preferred_username" claim 8004 8005 Details 8006 ------- 8007 8008 * Bugfix #2305: Make sure /app/new takes `target` as absolute path 8009 8010 A mini-PR to make the `target` parameter absolute (by prepending `/` if missing). 8011 8012 https://github.com/cs3org/reva/pull/2305 8013 8014 * Bugfix #2303: Fix content disposition header for public links files 8015 8016 https://github.com/cs3org/reva/pull/2303 8017 https://github.com/cs3org/reva/pull/2297 8018 https://github.com/cs3org/reva/pull/2332 8019 https://github.com/cs3org/reva/pull/2346 8020 8021 * Bugfix #2316: Fix the share types in propfinds 8022 8023 The share types for public links were not correctly added to propfinds. 8024 8025 https://github.com/cs3org/reva/pull/2316 8026 8027 * Bugfix #2803: Fix app provider for editor public links 8028 8029 Fixed opening the app provider in public links with the editor permission. The app provider 8030 failed to open the file in read write mode. 8031 8032 https://github.com/owncloud/ocis/issues/2803 8033 https://github.com/cs3org/reva/pull/2310 8034 8035 * Bugfix #2298: Remove share refs from trashbin 8036 8037 https://github.com/cs3org/reva/pull/2298 8038 8039 * Bugfix #2309: Remove early finish for zero byte file uploads 8040 8041 We've fixed the upload of zero byte files by removing the early upload finishing mechanism. 8042 8043 https://github.com/cs3org/reva/issues/2309 8044 https://github.com/owncloud/ocis/issues/2609 8045 8046 * Bugfix #1941: Fix TUS uploads with transfer token only 8047 8048 TUS uploads had been stopped when the user JWT token expired, even if only the transfer token 8049 should be validated. Now uploads will continue as intended. 8050 8051 https://github.com/cs3org/reva/pull/1941 8052 8053 * Change #2210: Fix app provider new file creation and improved error codes 8054 8055 We've fixed the behavior for the app provider when creating new files. Previously the app 8056 provider would overwrite already existing files when creating a new file, this is now handled 8057 and prevented. The new file endpoint accepted a path to a file, but this does not work for spaces. 8058 Therefore we now use the resource id of the folder where the file should be created and a filename 8059 to create the new file. Also the app provider returns more useful error codes in a lot of cases. 8060 8061 https://github.com/cs3org/reva/pull/2210 8062 8063 * Enhancement #2217: OIDC auth driver for ESCAPE IAM 8064 8065 This enhancement allows for oidc token authentication via the ESCAPE IAM service. 8066 Authentication relies on mappings of ESCAPE IAM groups to REVA users. For a valid token, if at 8067 the most one group from the groups claim is mapped to one REVA user, authentication can take 8068 place. 8069 8070 https://github.com/cs3org/reva/pull/2217 8071 8072 * Enhancement #2256: Return user type in the response of the ocs GET user call 8073 8074 https://github.com/cs3org/reva/pull/2256 8075 8076 * Enhancement #2315: Add new attributes to public link propfinds 8077 8078 Added a new property "oc:signature-auth" to public link propfinds. This is a necessary change 8079 to be able to support archive downloads in password protected public links. 8080 8081 https://github.com/cs3org/reva/pull/2315 8082 8083 * Enhancement #2740: Implement space membership endpoints 8084 8085 Implemented endpoints to add and remove members to spaces. 8086 8087 https://github.com/owncloud/ocis/issues/2740 8088 https://github.com/cs3org/reva/pull/2250 8089 8090 * Enhancement #2252: Add the xattr sys.acl to SysACL (eosgrpc) 8091 8092 https://github.com/cs3org/reva/pull/2252 8093 8094 * Enhancement #2314: OIDC: fallback if IDP doesn't provide "preferred_username" claim 8095 8096 Some IDPs don't support the "preferred_username" claim. Fallback to the "email" claim in that 8097 case. 8098 8099 https://github.com/cs3org/reva/pull/2314 8100 8101 Changelog for reva 1.16.0 (2021-11-19) 8102 ======================================= 8103 8104 The following sections list the changes in reva 1.16.0 relevant to 8105 reva users. The changes are ordered by importance. 8106 8107 Summary 8108 ------- 8109 8110 * Fix #2245: Don't announce search-files capability 8111 * Fix #2247: Merge user ACLs from EOS to sys ACLs 8112 * Fix #2279: Return the inode of the version folder for files when listing in EOS 8113 * Fix #2294: Fix HTTP return code when path is invalid 8114 * Fix #2231: Fix share permission on a single file in sql share driver (cbox pkg) 8115 * Fix #2230: Fix open by default app and expose default app 8116 * Fix #2265: Fix nil pointer exception when resolving members of a group (rest driver) 8117 * Fix #1214: Fix restoring versions 8118 * Fix #2254: Fix spaces propfind 8119 * Fix #2260: Fix unset quota xattr on darwin 8120 * Fix #5776: Enforce permissions in public share apps 8121 * Fix #2767: Fix status code for WebDAV mkcol requests where an ancestor is missing 8122 * Fix #2287: Add public link access via mount-ID:token/relative-path to the scope 8123 * Fix #2244: Fix the permissions response for shared files in the cbox sql driver 8124 * Enh #2219: Add virtual view tests 8125 * Enh #2230: Add priority to app providers 8126 * Enh #2258: Improved error messages from the AppProviders 8127 * Enh #2119: Add authprovider owncloudsql 8128 * Enh #2211: Enhance the cbox share sql driver to store accepted group shares 8129 * Enh #2212: Filter root path according to the agent that makes the request 8130 * Enh #2237: Skip get user call in eosfs in case previous ones also failed 8131 * Enh #2266: Callback for the EOS UID cache to retry fetch for failed keys 8132 * Enh #2215: Aggregrate resource info properties for virtual views 8133 * Enh #2271: Revamp the favorite manager and add the cbox sql driver 8134 * Enh #2248: Cache whether a user home was created or not 8135 * Enh #2282: Return a proper NOT_FOUND error when a user or group is not found 8136 * Enh #2268: Add the reverseproxy http service 8137 * Enh #2207: Enable users to list all spaces 8138 * Enh #2286: Add trace ID to middleware loggers 8139 * Enh #2251: Mentix service inference 8140 * Enh #2218: Allow filtering of mime types supported by app providers 8141 * Enh #2213: Add public link share type to propfind response 8142 * Enh #2253: Support the file editor role for public links 8143 * Enh #2208: Reduce redundant stat calls when statting by resource ID 8144 * Enh #2235: Specify a list of allowed folders/files to be archived 8145 * Enh #2267: Restrict the paths where share creation is allowed 8146 * Enh #2252: Add the xattr sys.acl to SysACL (eosgrpc) 8147 * Enh #2239: Update toml configs 8148 8149 Details 8150 ------- 8151 8152 * Bugfix #2245: Don't announce search-files capability 8153 8154 The `dav.reports` capability contained a `search-files` report which is currently not 8155 implemented. We removed it from the defaults. 8156 8157 https://github.com/cs3org/reva/pull/2245 8158 8159 * Bugfix #2247: Merge user ACLs from EOS to sys ACLs 8160 8161 https://github.com/cs3org/reva/pull/2247 8162 8163 * Bugfix #2279: Return the inode of the version folder for files when listing in EOS 8164 8165 https://github.com/cs3org/reva/pull/2279 8166 8167 * Bugfix #2294: Fix HTTP return code when path is invalid 8168 8169 Before when a path was invalid, the archiver returned a 500 error code. Now this is fixed and 8170 returns a 404 code. 8171 8172 https://github.com/cs3org/reva/pull/2294 8173 8174 * Bugfix #2231: Fix share permission on a single file in sql share driver (cbox pkg) 8175 8176 https://github.com/cs3org/reva/pull/2231 8177 8178 * Bugfix #2230: Fix open by default app and expose default app 8179 8180 We've fixed the open by default app name behaviour which previously only worked, if the default 8181 app was configured by the provider address. We also now expose the default app on the 8182 `/app/list` endpoint to clients. 8183 8184 https://github.com/cs3org/reva/issues/2230 8185 https://github.com/cs3org/cs3apis/pull/157 8186 8187 * Bugfix #2265: Fix nil pointer exception when resolving members of a group (rest driver) 8188 8189 https://github.com/cs3org/reva/pull/2265 8190 8191 * Bugfix #1214: Fix restoring versions 8192 8193 Restoring a version would not remove that version from the version list. Now the behavior is 8194 compatible to ownCloud 10. 8195 8196 https://github.com/owncloud/ocis/issues/1214 8197 https://github.com/cs3org/reva/pull/2270 8198 8199 * Bugfix #2254: Fix spaces propfind 8200 8201 Fixed the deep listing of spaces. 8202 8203 https://github.com/cs3org/reva/pull/2254 8204 8205 * Bugfix #2260: Fix unset quota xattr on darwin 8206 8207 Unset quota attributes were creating errors in the logfile on darwin. 8208 8209 https://github.com/cs3org/reva/pull/2260 8210 8211 * Bugfix #5776: Enforce permissions in public share apps 8212 8213 A receiver of a read-only public share could still edit files via apps like Collabora. These 8214 changes enforce the share permissions in apps used on publicly shared resources. 8215 8216 https://github.com/owncloud/web/issues/5776 8217 https://github.com/owncloud/ocis/issues/2479 8218 https://github.com/cs3org/reva/pull/22142214 8219 8220 * Bugfix #2767: Fix status code for WebDAV mkcol requests where an ancestor is missing 8221 8222 We've fixed the status code to 409 according to the WebDAV standard for MKCOL requests where an 8223 ancestor is missing. Previously these requests would fail with an different error code (eg. 8224 500) because of storage driver limitations (eg. oCIS FS cannot handle recursive creation of 8225 directories). 8226 8227 https://github.com/owncloud/ocis/issues/2767 8228 https://github.com/cs3org/reva/pull/2293 8229 8230 * Bugfix #2287: Add public link access via mount-ID:token/relative-path to the scope 8231 8232 https://github.com/cs3org/reva/pull/2287 8233 8234 * Bugfix #2244: Fix the permissions response for shared files in the cbox sql driver 8235 8236 https://github.com/cs3org/reva/pull/2244 8237 8238 * Enhancement #2219: Add virtual view tests 8239 8240 https://github.com/cs3org/reva/pull/2219 8241 8242 * Enhancement #2230: Add priority to app providers 8243 8244 Before the order of the list returned by the method FindProviders of app providers depended 8245 from the order in which the app provider registered themselves. Now, it is possible to specify a 8246 priority for each app provider, and even if an app provider re-register itself (for example 8247 after a restart), the order is kept. 8248 8249 https://github.com/cs3org/reva/pull/2230 8250 https://github.com/cs3org/cs3apis/pull/157 8251 https://github.com/cs3org/reva/pull/2263 8252 8253 * Enhancement #2258: Improved error messages from the AppProviders 8254 8255 Some rather cryptic messages are now hidden to users, and some others are made more 8256 user-friendly. Support for multiple locales is still missing and out of scope for now. 8257 8258 https://github.com/cs3org/reva/pull/2258 8259 8260 * Enhancement #2119: Add authprovider owncloudsql 8261 8262 We added an authprovider that can be configured to authenticate against an owncloud classic 8263 mysql database. It verifies the password from the oc_users table. 8264 8265 https://github.com/cs3org/reva/pull/2119 8266 8267 * Enhancement #2211: Enhance the cbox share sql driver to store accepted group shares 8268 8269 https://github.com/cs3org/reva/pull/2211 8270 8271 * Enhancement #2212: Filter root path according to the agent that makes the request 8272 8273 https://github.com/cs3org/reva/pull/2212 8274 8275 * Enhancement #2237: Skip get user call in eosfs in case previous ones also failed 8276 8277 https://github.com/cs3org/reva/pull/2237 8278 8279 * Enhancement #2266: Callback for the EOS UID cache to retry fetch for failed keys 8280 8281 https://github.com/cs3org/reva/pull/2266 8282 8283 * Enhancement #2215: Aggregrate resource info properties for virtual views 8284 8285 https://github.com/cs3org/reva/pull/2215 8286 8287 * Enhancement #2271: Revamp the favorite manager and add the cbox sql driver 8288 8289 https://github.com/cs3org/reva/pull/2271 8290 8291 * Enhancement #2248: Cache whether a user home was created or not 8292 8293 Previously, on every call, we used to stat the user home to make sure that it existed. Now we cache 8294 it for a given amount of time so as to avoid repeated calls. 8295 8296 https://github.com/cs3org/reva/pull/2248 8297 8298 * Enhancement #2282: Return a proper NOT_FOUND error when a user or group is not found 8299 8300 https://github.com/cs3org/reva/pull/2282 8301 8302 * Enhancement #2268: Add the reverseproxy http service 8303 8304 This PR adds an HTTP service which does the job of authenticating incoming requests via the reva 8305 middleware before forwarding them to the respective backends. This is useful for extensions 8306 which do not have the auth mechanisms. 8307 8308 https://github.com/cs3org/reva/pull/2268 8309 8310 * Enhancement #2207: Enable users to list all spaces 8311 8312 Added a permission check if the user has the `list-all-spaces` permission. This enables users 8313 to list all spaces, even those which they are not members of. 8314 8315 https://github.com/cs3org/reva/pull/2207 8316 8317 * Enhancement #2286: Add trace ID to middleware loggers 8318 8319 https://github.com/cs3org/reva/pull/2286 8320 8321 * Enhancement #2251: Mentix service inference 8322 8323 Previously, 4 different services per site had to be created in the GOCDB. This PR removes this 8324 redundancy by infering all endpoints from a single service entity, making site 8325 administration a lot easier. 8326 8327 https://github.com/cs3org/reva/pull/2251 8328 8329 * Enhancement #2218: Allow filtering of mime types supported by app providers 8330 8331 https://github.com/cs3org/reva/pull/2218 8332 8333 * Enhancement #2213: Add public link share type to propfind response 8334 8335 Added share type for public links to propfind responses. 8336 8337 https://github.com/cs3org/reva/pull/2213 8338 https://github.com/cs3org/reva/pull/2257 8339 8340 * Enhancement #2253: Support the file editor role for public links 8341 8342 https://github.com/cs3org/reva/pull/2253 8343 8344 * Enhancement #2208: Reduce redundant stat calls when statting by resource ID 8345 8346 https://github.com/cs3org/reva/pull/2208 8347 8348 * Enhancement #2235: Specify a list of allowed folders/files to be archived 8349 8350 Adds a configuration to the archiver service in order to specify a list of folders (as regex) 8351 that can be archived. 8352 8353 https://github.com/cs3org/reva/pull/2235 8354 8355 * Enhancement #2267: Restrict the paths where share creation is allowed 8356 8357 This PR limits share creation to certain specified paths. These can be useful when users have 8358 access to global spaces and virtual views but these should not be sharable. 8359 8360 https://github.com/cs3org/reva/pull/2267 8361 8362 * Enhancement #2252: Add the xattr sys.acl to SysACL (eosgrpc) 8363 8364 https://github.com/cs3org/reva/pull/2252 8365 8366 * Enhancement #2239: Update toml configs 8367 8368 We updated the local and drone configurations, cleanad up the example configs and removed the 8369 reva gen subcommand which was generating outdated config. 8370 8371 https://github.com/cs3org/reva/pull/2239 8372 8373 Changelog for reva 1.15.0 (2021-10-26) 8374 ======================================= 8375 8376 The following sections list the changes in reva 1.15.0 relevant to 8377 reva users. The changes are ordered by importance. 8378 8379 Summary 8380 ------- 8381 8382 * Fix #2168: Override provider if was previously registered 8383 * Fix #2173: Fix archiver max size reached error 8384 * Fix #2167: Handle nil quota in decomposedfs 8385 * Fix #2153: Restrict EOS project spaces sharing permissions to admins and writers 8386 * Fix #2179: Fix the returned permissions for webdav uploads 8387 * Fix #2177: Retrieve the full path of a share when setting as 8388 * Chg #2479: Make apps able to work with public shares 8389 * Enh #2203: Add alerting webhook to SiteAcc service 8390 * Enh #2190: Update CODEOWNERS 8391 * Enh #2174: Inherit ACLs for files from parent directories 8392 * Enh #2152: Add a reference parameter to the getQuota request 8393 * Enh #2171: Add optional claim parameter to machine auth 8394 * Enh #2163: Nextcloud-based share manager for pkg/ocm/share 8395 * Enh #2135: Nextcloud test improvements 8396 * Enh #2180: Remove OCDAV options namespace parameter 8397 * Enh #2117: Add ocs cache warmup strategy for first request from the user 8398 * Enh #2170: Handle propfind requests for existing files 8399 * Enh #2165: Allow access to recycle bin for arbitrary paths outside homes 8400 * Enh #2193: Filter root paths according to user agent 8401 * Enh #2162: Implement the UpdateStorageSpace method 8402 * Enh #2189: Add user setting capability 8403 8404 Details 8405 ------- 8406 8407 * Bugfix #2168: Override provider if was previously registered 8408 8409 Previously if an AppProvider registered himself two times, for example after a failure, the 8410 mime types supported by the provider contained multiple times the same provider. Now this has 8411 been fixed, overriding the previous one. 8412 8413 https://github.com/cs3org/reva/pull/2168 8414 8415 * Bugfix #2173: Fix archiver max size reached error 8416 8417 Previously in the total size count of the files being archived, the folders were taken into 8418 account, and this could cause a false max size reached error because the size of a directory is 8419 recursive-computed, causing the archive to be truncated. Now in the size count, the 8420 directories are skipped. 8421 8422 https://github.com/cs3org/reva/pull/2173 8423 8424 * Bugfix #2167: Handle nil quota in decomposedfs 8425 8426 Do not nil pointer derefenrence when sending nil quota to decomposedfs 8427 8428 https://github.com/cs3org/reva/issues/2167 8429 8430 * Bugfix #2153: Restrict EOS project spaces sharing permissions to admins and writers 8431 8432 https://github.com/cs3org/reva/pull/2153 8433 8434 * Bugfix #2179: Fix the returned permissions for webdav uploads 8435 8436 We've fixed the returned permissions for webdav uploads. It did not consider shares and public 8437 links for the permission calculation, but does so now. 8438 8439 https://github.com/cs3org/reva/pull/2179 8440 https://github.com/cs3org/reva/pull/2151 8441 8442 * Bugfix #2177: Retrieve the full path of a share when setting as 8443 8444 Accepted or on shared by me 8445 8446 https://github.com/cs3org/reva/pull/2177 8447 8448 * Change #2479: Make apps able to work with public shares 8449 8450 Public share receivers were not possible to use apps in public shares because the apps couldn't 8451 load the files in the public shares. This has now been made possible by changing the scope checks 8452 for public shares. 8453 8454 https://github.com/owncloud/ocis/issues/2479 8455 https://github.com/cs3org/reva/pull/2143 8456 8457 * Enhancement #2203: Add alerting webhook to SiteAcc service 8458 8459 To integrate email alerting with the monitoring pipeline, a Prometheus webhook has been added 8460 to the SiteAcc service. Furthermore account settings have been extended/modified 8461 accordingly. 8462 8463 https://github.com/cs3org/reva/pull/2203 8464 8465 * Enhancement #2190: Update CODEOWNERS 8466 8467 https://github.com/cs3org/reva/pull/2190 8468 8469 * Enhancement #2174: Inherit ACLs for files from parent directories 8470 8471 https://github.com/cs3org/reva/pull/2174 8472 8473 * Enhancement #2152: Add a reference parameter to the getQuota request 8474 8475 Implementation of [cs3org/cs3apis#147](https://github.com/cs3org/cs3apis/pull/147) 8476 8477 Make the cs3apis accept a Reference in the getQuota Request to limit the call to a specific 8478 storage space. 8479 8480 https://github.com/cs3org/reva/pull/2152 8481 https://github.com/cs3org/reva/pull/2178 8482 https://github.com/cs3org/reva/pull/2187 8483 8484 * Enhancement #2171: Add optional claim parameter to machine auth 8485 8486 https://github.com/cs3org/reva/issues/2171 8487 https://github.com/cs3org/reva/pull/2176 8488 8489 * Enhancement #2163: Nextcloud-based share manager for pkg/ocm/share 8490 8491 Note that pkg/ocm/share is very similar to pkg/share, but it deals with cs3/sharing/ocm 8492 whereas pkg/share deals with cs3/sharing/collaboration 8493 8494 https://github.com/cs3org/reva/pull/2163 8495 8496 * Enhancement #2135: Nextcloud test improvements 8497 8498 https://github.com/cs3org/reva/pull/2135 8499 8500 * Enhancement #2180: Remove OCDAV options namespace parameter 8501 8502 We dropped the namespace parameter, as it is not used in the options handler. 8503 8504 https://github.com/cs3org/reva/pull/2180 8505 8506 * Enhancement #2117: Add ocs cache warmup strategy for first request from the user 8507 8508 https://github.com/cs3org/reva/pull/2117 8509 8510 * Enhancement #2170: Handle propfind requests for existing files 8511 8512 https://github.com/cs3org/reva/pull/2170 8513 8514 * Enhancement #2165: Allow access to recycle bin for arbitrary paths outside homes 8515 8516 https://github.com/cs3org/reva/pull/2165 8517 https://github.com/cs3org/reva/pull/2188 8518 8519 * Enhancement #2193: Filter root paths according to user agent 8520 8521 Adds a new rule setting in the storage registry ("allowed_user_agents"), that allows a user to 8522 specify which storage provider shows according to the user agent that made the request. 8523 8524 https://github.com/cs3org/reva/pull/2193 8525 8526 * Enhancement #2162: Implement the UpdateStorageSpace method 8527 8528 Added the UpdateStorageSpace method to the decomposedfs. 8529 8530 https://github.com/cs3org/reva/pull/2162 8531 https://github.com/cs3org/reva/pull/2195 8532 https://github.com/cs3org/reva/pull/2196 8533 8534 * Enhancement #2189: Add user setting capability 8535 8536 We've added a capability to communicate the existance of a user settings service to clients. 8537 8538 https://github.com/owncloud/web/issues/5926 8539 https://github.com/cs3org/reva/pull/2189 8540 https://github.com/owncloud/ocis/pull/2655 8541 8542 Changelog for reva 1.14.0 (2021-10-12) 8543 ======================================= 8544 8545 The following sections list the changes in reva 1.14.0 relevant to 8546 reva users. The changes are ordered by importance. 8547 8548 Summary 8549 ------- 8550 8551 * Fix #2103: AppProvider: propagate back errors reported by WOPI 8552 * Fix #2149: Remove excess info from the http list app providers endpoint 8553 * Fix #2114: Add as default app while registering and skip unset mimetypes 8554 * Fix #2095: Fix app open when multiple app providers are present 8555 * Fix #2135: Make TUS capabilities configurable 8556 * Fix #2076: Fix chi routing 8557 * Fix #2077: Fix concurrent registration of mimetypes 8558 * Fix #2154: Return OK when trying to delete a non existing reference 8559 * Fix #2078: Fix nil pointer exception in stat 8560 * Fix #2073: Fix opening a readonly filetype with WOPI 8561 * Fix #2140: Map GRPC error codes to REVA errors 8562 * Fix #2147: Follow up of #2138: this is the new expected format 8563 * Fix #2116: Differentiate share types when retrieving received shares in sql driver 8564 * Fix #2074: Fix Stat() for EOS storage provider 8565 * Fix #2151: Fix return code for webdav uploads when the token expired 8566 * Chg #2121: Sharemanager API change 8567 * Enh #2090: Return space name during list storage spaces 8568 * Enh #2138: Default AppProvider on top of the providers list 8569 * Enh #2137: Revamp app registry and add parameter to control file creation 8570 * Enh #145: UI improvements for the AppProviders 8571 * Enh #2088: Add archiver and app provider to ocs capabilities 8572 * Enh #2537: Add maximum files and size to archiver capabilities 8573 * Enh #2100: Add support for resource id to the archiver 8574 * Enh #2158: Augment the Id of new spaces 8575 * Enh #2085: Make encoding user groups in access tokens configurable 8576 * Enh #146: Filter the denial shares (permission = 0) out of 8577 * Enh #2141: Use golang v1.17 8578 * Enh #2053: Safer defaults for TLS verification on LDAP connections 8579 * Enh #2115: Reduce code duplication in LDAP related drivers 8580 * Enh #1989: Add redirects from OC10 URL formats 8581 * Enh #2479: Limit publicshare and resourceinfo scope content 8582 * Enh #2071: Implement listing favorites via the dav report API 8583 * Enh #2091: Nextcloud share managers 8584 * Enh #2070: More unit tests for the Nextcloud storage provider 8585 * Enh #2087: More unit tests for the Nextcloud auth and user managers 8586 * Enh #2075: Make owncloudsql leverage existing filecache index 8587 * Enh #2050: Add a share types filter to the OCS API 8588 * Enh #2134: Use space Type from request 8589 * Enh #2132: Align local tests with drone setup 8590 * Enh #2095: Whitelisting for apps 8591 * Enh #2155: Pass an extra query parameter to WOPI /openinapp with a 8592 8593 Details 8594 ------- 8595 8596 * Bugfix #2103: AppProvider: propagate back errors reported by WOPI 8597 8598 On /app/open and return base64-encoded fileids on /app/new 8599 8600 https://github.com/cs3org/reva/pull/2103 8601 8602 * Bugfix #2149: Remove excess info from the http list app providers endpoint 8603 8604 We've removed excess info from the http list app providers endpoint. The app provider section 8605 contained all mime types supported by a certain app provider, which led to a very big JSON 8606 payload and since they are not used they have been removed again. Mime types not on the mime type 8607 configuration list always had `application/octet-stream` as a file extension and 8608 `APPLICATION/OCTET-STREAM file` as name and description. Now these information are just 8609 omitted. 8610 8611 https://github.com/cs3org/reva/pull/2149 8612 https://github.com/owncloud/ocis/pull/2603 8613 https://github.com/cs3org/reva/pull/2138 8614 8615 * Bugfix #2114: Add as default app while registering and skip unset mimetypes 8616 8617 We fixed that app providers will be set as default app while registering if configured. Also we 8618 changed the behaviour that listing supported mimetypes only displays allowed / configured 8619 mimetypes. 8620 8621 https://github.com/cs3org/reva/pull/2114 8622 https://github.com/cs3org/reva/pull/2095 8623 8624 * Bugfix #2095: Fix app open when multiple app providers are present 8625 8626 We've fixed the gateway behavior, that when multiple app providers are present, it always 8627 returned that we have duplicate names for app providers. This was due the call to 8628 GetAllProviders() without any subsequent filtering by name. Now this filter mechanism is in 8629 place and the duplicate app providers error will only appear if a real duplicate is found. 8630 8631 https://github.com/cs3org/reva/issues/2095 8632 https://github.com/cs3org/reva/pull/2117 8633 8634 * Bugfix #2135: Make TUS capabilities configurable 8635 8636 We've fixed the configuration for the TUS capabilities, which will now take the given 8637 configuration instead of always using hardcoded defaults. 8638 8639 https://github.com/cs3org/reva/pull/2135 8640 8641 * Bugfix #2076: Fix chi routing 8642 8643 Chi routes based on the URL.RawPath, which is not updated by the shiftPath based routing used in 8644 reva. By setting the RawPath to an empty string chi will fall pack to URL.Path, allowing it to 8645 match percent encoded path segments, e.g. when trying to match emails or multibyte 8646 characters. 8647 8648 https://github.com/cs3org/reva/pull/2076 8649 8650 * Bugfix #2077: Fix concurrent registration of mimetypes 8651 8652 We fixed registering mimetypes in the mime package when starting multiple storage providers 8653 in the same process. 8654 8655 https://github.com/cs3org/reva/pull/2077 8656 8657 * Bugfix #2154: Return OK when trying to delete a non existing reference 8658 8659 When the gateway declines a share we can ignore a non existing reference. 8660 8661 https://github.com/cs3org/reva/pull/2154 8662 https://github.com/owncloud/ocis/pull/2603 8663 8664 * Bugfix #2078: Fix nil pointer exception in stat 8665 8666 https://github.com/cs3org/reva/pull/2078 8667 8668 * Bugfix #2073: Fix opening a readonly filetype with WOPI 8669 8670 This change fixes the opening of filetypes that are only supported to be viewed and not to be 8671 edited by some WOPI compliant office suites. 8672 8673 https://github.com/cs3org/reva/pull/2073 8674 8675 * Bugfix #2140: Map GRPC error codes to REVA errors 8676 8677 We've fixed the error return behaviour in the gateway which would return GRPC error codes from 8678 the auth middleware. Now it returns REVA errors which other parts of REVA are also able to 8679 understand. 8680 8681 https://github.com/cs3org/reva/pull/2140 8682 8683 * Bugfix #2147: Follow up of #2138: this is the new expected format 8684 8685 For the mime types configuration for the AppRegistry. 8686 8687 https://github.com/cs3org/reva/pull/2147 8688 8689 * Bugfix #2116: Differentiate share types when retrieving received shares in sql driver 8690 8691 https://github.com/cs3org/reva/pull/2116 8692 8693 * Bugfix #2074: Fix Stat() for EOS storage provider 8694 8695 This change fixes the convertion between the eosclient.FileInfo to ResourceInfo, in which 8696 the field ArbitraryMetadata was missing. Moreover, to be consistent with 8697 SetArbitraryMetadata() EOS implementation, all the "user." prefix are stripped out from the 8698 xattrs. 8699 8700 https://github.com/cs3org/reva/pull/2074 8701 8702 * Bugfix #2151: Fix return code for webdav uploads when the token expired 8703 8704 We've fixed the behavior webdav uploads when the token expired before the final stat. 8705 Previously clients would receive a http 500 error which is wrong, because the file was 8706 successfully uploaded and only the stat couldn't be performed. Now we return a http 200 ok and 8707 the clients will fetch the file info in a separate propfind request. 8708 8709 Also we introduced the upload expires header on the webdav/TUS and datagateway endpoints, to 8710 signal clients how long an upload can be performed. 8711 8712 https://github.com/cs3org/reva/pull/2151 8713 8714 * Change #2121: Sharemanager API change 8715 8716 This PR updates reva to reflect the share manager CS3 API changes. 8717 8718 https://github.com/cs3org/reva/pull/2121 8719 8720 * Enhancement #2090: Return space name during list storage spaces 8721 8722 In the decomposedfs we return now the space name in the response which is stored in the extended 8723 attributes. 8724 8725 https://github.com/cs3org/reva/issues/2090 8726 8727 * Enhancement #2138: Default AppProvider on top of the providers list 8728 8729 For each mime type 8730 8731 Now for each mime type, when asking for the list of mime types, the default AppProvider, set both 8732 using the config and the SetDefaultProviderForMimeType method, is always in the top of the 8733 list of AppProviders. The config for the Providers and Mime Types for the AppRegistry changed, 8734 using a list instead of a map. In fact the list of mime types returned by ListSupportedMimeTypes 8735 is now ordered according the config. 8736 8737 https://github.com/cs3org/reva/pull/2138 8738 8739 * Enhancement #2137: Revamp app registry and add parameter to control file creation 8740 8741 https://github.com/cs3org/reva/pull/2137 8742 8743 * Enhancement #145: UI improvements for the AppProviders 8744 8745 Mime types and their friendly names are now handled in the /app/list HTTP endpoint, and an 8746 additional /app/new endpoint is made available to create new files for apps. 8747 8748 https://github.com/cs3org/cs3apis/pull/145 8749 https://github.com/cs3org/reva/pull/2067 8750 8751 * Enhancement #2088: Add archiver and app provider to ocs capabilities 8752 8753 The archiver and app provider has been added to the ocs capabilities. 8754 8755 https://github.com/cs3org/reva/pull/2088 8756 https://github.com/owncloud/ocis/pull/2529 8757 8758 * Enhancement #2537: Add maximum files and size to archiver capabilities 8759 8760 We added the maximum files count and maximum archive size of the archiver to the capabilities 8761 endpoint. Clients can use this to generate warnings before the actual archive creation fails. 8762 8763 https://github.com/owncloud/ocis/issues/2537 8764 https://github.com/cs3org/reva/pull/2105 8765 8766 * Enhancement #2100: Add support for resource id to the archiver 8767 8768 Before the archiver only supported resources provided by a path. Now also the resources ID are 8769 supported in order to specify the content of the archive to download. The parameters accepted 8770 by the archiver are two: an optional list of `path` (containing the paths of the resources) and 8771 an optional list of `id` (containing the resources IDs of the resources). 8772 8773 https://github.com/cs3org/reva/issues/2097 8774 https://github.com/cs3org/reva/pull/2100 8775 8776 * Enhancement #2158: Augment the Id of new spaces 8777 8778 Newly created spaces were missing the Root reference and the storage id in the space id. 8779 8780 https://github.com/cs3org/reva/issues/2158 8781 8782 * Enhancement #2085: Make encoding user groups in access tokens configurable 8783 8784 https://github.com/cs3org/reva/pull/2085 8785 8786 * Enhancement #146: Filter the denial shares (permission = 0) out of 8787 8788 The Shared-with-me UI view. Also they work regardless whether they are accepted or not, 8789 therefore there's no point to expose them. 8790 8791 https://github.com/cs3org/cs3apis/pull/146 8792 https://github.com/cs3org/reva/pull/2072 8793 8794 * Enhancement #2141: Use golang v1.17 8795 8796 https://github.com/cs3org/reva/pull/2141 8797 8798 * Enhancement #2053: Safer defaults for TLS verification on LDAP connections 8799 8800 The LDAP client connections were hardcoded to ignore certificate validation errors. Now 8801 verification is enabled by default and a new config parameter 'insecure' is introduced to 8802 override that default. It is also possible to add trusted Certificates by using the new 8803 'cacert' config paramter. 8804 8805 https://github.com/cs3org/reva/pull/2053 8806 8807 * Enhancement #2115: Reduce code duplication in LDAP related drivers 8808 8809 https://github.com/cs3org/reva/pull/2115 8810 8811 * Enhancement #1989: Add redirects from OC10 URL formats 8812 8813 Added redirectors for ownCloud 10 URLs. This allows users to continue to use their bookmarks 8814 from ownCloud 10 in ocis. 8815 8816 https://github.com/cs3org/reva/pull/1989 8817 8818 * Enhancement #2479: Limit publicshare and resourceinfo scope content 8819 8820 We changed the publicshare and resourceinfo scopes to contain only necessary values. This 8821 reduces the size of the resulting token and also limits the amount of data which can be leaked. 8822 8823 https://github.com/owncloud/ocis/issues/2479 8824 https://github.com/cs3org/reva/pull/2093 8825 8826 * Enhancement #2071: Implement listing favorites via the dav report API 8827 8828 Added filter-files to the dav REPORT API. This enables the listing of favorites. 8829 8830 https://github.com/cs3org/reva/pull/2071 8831 https://github.com/cs3org/reva/pull/2086 8832 8833 * Enhancement #2091: Nextcloud share managers 8834 8835 Share manager that uses Nextcloud as a backend 8836 8837 https://github.com/cs3org/reva/pull/2091 8838 8839 * Enhancement #2070: More unit tests for the Nextcloud storage provider 8840 8841 Adds more unit tests for the Nextcloud storage provider. 8842 8843 https://github.com/cs3org/reva/pull/2070 8844 8845 * Enhancement #2087: More unit tests for the Nextcloud auth and user managers 8846 8847 Adds more unit tests for the Nextcloud auth manager and the Nextcloud user manager 8848 8849 https://github.com/cs3org/reva/pull/2087 8850 8851 * Enhancement #2075: Make owncloudsql leverage existing filecache index 8852 8853 When listing folders the SQL query now uses an existing index on the filecache table. 8854 8855 https://github.com/cs3org/reva/pull/2075 8856 8857 * Enhancement #2050: Add a share types filter to the OCS API 8858 8859 Added a filter to the OCS API to filter the received shares by type. 8860 8861 https://github.com/cs3org/reva/pull/2050 8862 8863 * Enhancement #2134: Use space Type from request 8864 8865 In the decomposedfs we now use the space type from the request when creating a new space. 8866 8867 https://github.com/cs3org/reva/issues/2134 8868 8869 * Enhancement #2132: Align local tests with drone setup 8870 8871 We fixed running the tests locally and align it with the drone setup. 8872 8873 https://github.com/cs3org/reva/issues/2132 8874 8875 * Enhancement #2095: Whitelisting for apps 8876 8877 AppProvider supported mime types are now overridden in its configuration. A friendly name, a 8878 description, an extension, an icon and a default app, can be configured in the AppRegistry for 8879 each mime type. 8880 8881 https://github.com/cs3org/reva/pull/2095 8882 8883 * Enhancement #2155: Pass an extra query parameter to WOPI /openinapp with a 8884 8885 Unique and consistent over time user identifier. The Reva token used so far is not consistent 8886 (it's per session) and also too long. 8887 8888 https://github.com/cs3org/reva/pull/2155 8889 https://github.com/cs3org/wopiserver/pull/48 8890 8891 Changelog for reva 1.13.0 (2021-09-14) 8892 ======================================= 8893 8894 The following sections list the changes in reva 1.13.0 relevant to 8895 reva users. The changes are ordered by importance. 8896 8897 Summary 8898 ------- 8899 8900 * Fix #2024: Fixes for http appprovider endpoints 8901 * Fix #2054: Fix the response after deleting a share 8902 * Fix #2026: Fix moving of a shared file 8903 * Fix #2047: Do not truncate logs on restart 8904 * Fix #1605: Allow to expose full paths in OCS API 8905 * Fix #2033: Fix the storage id of shares 8906 * Fix #2059: Remove "Got registration for user manager" print statements 8907 * Fix #2051: Remove malformed parameters from WOPI discovery URLs 8908 * Fix #2055: Fix uploads of empty files 8909 * Fix #1991: Remove share references when declining shares 8910 * Fix #2030: Fix superfluous WriteHeader on file upload 8911 * Enh #2034: Fail initialization of a WOPI AppProvider if 8912 * Enh #1968: Use a URL object in OpenInAppResponse 8913 * Enh #1698: Implement folder download as archive 8914 * Enh #2042: Escape ldap filters 8915 * Enh #2028: Machine auth provider 8916 * Enh #2043: Nextcloud user backend 8917 * Enh #2006: Move ocs API to go-chi/chi based URL routing 8918 * Enh #1994: Add owncloudsql driver for the userprovider 8919 * Enh #1971: Add documentation for runtime-plugins 8920 * Enh #2044: Add utility methods for creating share filters 8921 * Enh #2065: New sharing role Manager 8922 * Enh #2015: Add spaces to the list of capabilities 8923 * Enh #2041: Create operations for Spaces 8924 * Enh #2029: Tracing agent configuration 8925 8926 Details 8927 ------- 8928 8929 * Bugfix #2024: Fixes for http appprovider endpoints 8930 8931 https://github.com/cs3org/reva/pull/2024 8932 https://github.com/cs3org/reva/pull/1968 8933 8934 * Bugfix #2054: Fix the response after deleting a share 8935 8936 Added the deleted share to the response after deleting it. 8937 8938 https://github.com/cs3org/reva/pull/2054 8939 8940 * Bugfix #2026: Fix moving of a shared file 8941 8942 As the share receiver, moving a shared file to another share was not possible. 8943 8944 https://github.com/cs3org/reva/pull/2026 8945 8946 * Bugfix #2047: Do not truncate logs on restart 8947 8948 This change fixes the way log files were opened. Before they were truncated and now the log file 8949 will be open in append mode and created it if it does not exist. 8950 8951 https://github.com/cs3org/reva/pull/2047 8952 8953 * Bugfix #1605: Allow to expose full paths in OCS API 8954 8955 Before this fix a share file_target was always harcoded to use a base path. This fix provides the 8956 possiblity to expose full paths in the OCIS API and asymptotically in OCIS web. 8957 8958 https://github.com/cs3org/reva/pull/1605 8959 8960 * Bugfix #2033: Fix the storage id of shares 8961 8962 The storageid in the share object contained an incorrect value. 8963 8964 https://github.com/cs3org/reva/pull/2033 8965 8966 * Bugfix #2059: Remove "Got registration for user manager" print statements 8967 8968 Removed the "Got registration for user manager" print statements which spams the log output 8969 without respecting any log level. 8970 8971 https://github.com/cs3org/reva/pull/2059 8972 8973 * Bugfix #2051: Remove malformed parameters from WOPI discovery URLs 8974 8975 This change fixes the parsing of WOPI discovery URLs for MSOffice /hosting/discovery 8976 endpoint. This endpoint is known to contain malformed query paramters and therefore this fix 8977 removes them. 8978 8979 https://github.com/cs3org/reva/pull/2051 8980 8981 * Bugfix #2055: Fix uploads of empty files 8982 8983 This change fixes upload of empty files. Previously this was broken and only worked for the 8984 owncloud filesystem as it bypasses the semantics of the InitiateFileUpload call to touch a 8985 local file. 8986 8987 https://github.com/cs3org/reva/pull/2055 8988 8989 * Bugfix #1991: Remove share references when declining shares 8990 8991 Implemented the removal of share references when a share gets declined. Now when a user 8992 declines a share it will no longer be listed in their `Shares` directory. 8993 8994 https://github.com/cs3org/reva/pull/1991 8995 8996 * Bugfix #2030: Fix superfluous WriteHeader on file upload 8997 8998 Removes superfluous Writeheader on file upload and therefore removes the error message 8999 "http: superfluous response.WriteHeader call from 9000 github.com/cs3org/reva/internal/http/interceptors/log.(*responseLogger).WriteHeader 9001 (log.go:154)" 9002 9003 https://github.com/cs3org/reva/pull/2030 9004 9005 * Enhancement #2034: Fail initialization of a WOPI AppProvider if 9006 9007 The underlying app is not WOPI-compliant nor it is supported by the WOPI bridge extensions 9008 9009 https://github.com/cs3org/reva/pull/2034 9010 9011 * Enhancement #1968: Use a URL object in OpenInAppResponse 9012 9013 https://github.com/cs3org/reva/pull/1968 9014 9015 * Enhancement #1698: Implement folder download as archive 9016 9017 Adds a new http service which will create an archive (platform dependent, zip in windows and tar 9018 in linux) given a list of file. 9019 9020 https://github.com/cs3org/reva/issues/1698 9021 https://github.com/cs3org/reva/pull/2066 9022 9023 * Enhancement #2042: Escape ldap filters 9024 9025 Added ldap filter escaping to increase the security of reva. 9026 9027 https://github.com/cs3org/reva/pull/2042 9028 9029 * Enhancement #2028: Machine auth provider 9030 9031 Adds a new authentication method used to impersonate users, using a shared secret, called 9032 api-key. 9033 9034 https://github.com/cs3org/reva/pull/2028 9035 9036 * Enhancement #2043: Nextcloud user backend 9037 9038 Adds Nextcloud as a user backend (Nextcloud drivers for 'auth' and 'user'). Also adds back the 9039 Nextcloud storage integration tests. 9040 9041 https://github.com/cs3org/reva/pull/2043 9042 9043 * Enhancement #2006: Move ocs API to go-chi/chi based URL routing 9044 9045 https://github.com/cs3org/reva/issues/1986 9046 https://github.com/cs3org/reva/pull/2006 9047 9048 * Enhancement #1994: Add owncloudsql driver for the userprovider 9049 9050 We added a new backend for the userprovider that is backed by an owncloud 10 database. By default 9051 the `user_id` column is used as the reva user username and reva user opaque id. When setting 9052 `join_username=true` the reva user username is joined from the `oc_preferences` table 9053 (`appid='core' AND configkey='username'`) instead. When setting 9054 `join_ownclouduuid=true` the reva user opaqueid is joined from the `oc_preferences` table 9055 (`appid='core' AND configkey='ownclouduuid'`) instead. This allows more flexible 9056 migration strategies. It also supports a `enable_medial_search` config option when 9057 searching users that will enclose the query with `%`. 9058 9059 https://github.com/cs3org/reva/pull/1994 9060 9061 * Enhancement #1971: Add documentation for runtime-plugins 9062 9063 https://github.com/cs3org/reva/pull/1971 9064 9065 * Enhancement #2044: Add utility methods for creating share filters 9066 9067 Updated the CS3 API to include the new share grantee filter and added utility methods for 9068 creating share filters. This will help making the code more concise. 9069 9070 https://github.com/cs3org/reva/pull/2044 9071 9072 * Enhancement #2065: New sharing role Manager 9073 9074 The new Manager role is equivalent to a Co-Owner with the difference that a Manager can create 9075 grants on the root of the Space. This means inviting a user to a space will not require an action 9076 from them, as the Manager assigns the grants. 9077 9078 https://github.com/cs3org/reva/pull/2065 9079 9080 * Enhancement #2015: Add spaces to the list of capabilities 9081 9082 In order for clients to be aware of the new spaces feature we need to enable the `spaces` flag on 9083 the capabilities' endpoint. 9084 9085 https://github.com/cs3org/reva/pull/2015 9086 9087 * Enhancement #2041: Create operations for Spaces 9088 9089 DecomposedFS is aware now of the concept of Spaces, and supports for creating them. 9090 9091 https://github.com/cs3org/reva/pull/2041 9092 9093 * Enhancement #2029: Tracing agent configuration 9094 9095 Earlier we could only use the collector URL directly, but since an agent can be deployed as a 9096 sidecar process it makes much more sense to use it instead of the collector directly. 9097 9098 https://github.com/cs3org/reva/pull/2029 9099 9100 Changelog for reva 1.12.0 (2021-08-24) 9101 ======================================= 9102 9103 The following sections list the changes in reva 1.12.0 relevant to 9104 reva users. The changes are ordered by importance. 9105 9106 Summary 9107 ------- 9108 9109 * Fix #1819: Disable notifications 9110 * Fix #2000: Fix dependency on tests 9111 * Fix #1957: Fix etag propagation on deletes 9112 * Fix #1960: Return the updated share after updating 9113 * Fix #1993: Fix owncloudsql GetMD 9114 * Fix #1954: Fix response format of the sharees API 9115 * Fix #1965: Fix the file target of user and group shares 9116 * Fix #1956: Fix trashbin listing with depth 0 9117 * Fix #1987: Fix windows build 9118 * Fix #1990: Increase oc10 compatibility of owncloudsql 9119 * Fix #1978: Owner type is optional 9120 * Fix #1980: Propagate the etag after restoring a file version 9121 * Fix #1985: Add quota stubs 9122 * Fix #1992: Check if symlink exists instead of spamming the console 9123 * Fix #1913: Logic to restore files to readonly nodes 9124 * Chg #1982: Move user context methods into a separate `userctx` package 9125 * Enh #1946: Add share manager that connects to oc10 databases 9126 * Enh #1983: Add Codacy unit test coverage 9127 * Enh #1803: Introduce new webdav spaces endpoint 9128 * Enh #1998: Initial version of the Nextcloud storage driver 9129 * Enh #1984: Replace OpenCensus with OpenTelemetry 9130 * Enh #1861: Add support for runtime plugins 9131 * Enh #2008: Site account extensions 9132 9133 Details 9134 ------- 9135 9136 * Bugfix #1819: Disable notifications 9137 9138 The presence of the key `notifications` in the capabilities' response would cause clients to 9139 attempt to poll the notifications endpoint, which is not yet supported. To prevent the 9140 unnecessary bandwidth we are disabling this altogether. 9141 9142 https://github.com/cs3org/reva/pull/1819 9143 9144 * Bugfix #2000: Fix dependency on tests 9145 9146 The Nextcloud storage driver depended on a mock http client from the tests/ folder This broke 9147 the Docker build The dependency was removed A check was added to test the Docker build on each PR 9148 9149 https://github.com/cs3org/reva/pull/2000 9150 9151 * Bugfix #1957: Fix etag propagation on deletes 9152 9153 When deleting a file the etag propagation would skip the parent of the deleted file. 9154 9155 https://github.com/cs3org/reva/pull/1957 9156 9157 * Bugfix #1960: Return the updated share after updating 9158 9159 When updating the state of a share in the in-memory share manager the old share state was 9160 returned instead of the updated state. 9161 9162 https://github.com/cs3org/reva/pull/1960 9163 9164 * Bugfix #1993: Fix owncloudsql GetMD 9165 9166 The GetMD call internally was not prefixing the path when looking up resources by id. 9167 9168 https://github.com/cs3org/reva/pull/1993 9169 9170 * Bugfix #1954: Fix response format of the sharees API 9171 9172 The sharees API wasn't returning the users and groups arrays correctly. 9173 9174 https://github.com/cs3org/reva/pull/1954 9175 9176 * Bugfix #1965: Fix the file target of user and group shares 9177 9178 In some cases the file target of user and group shares was not properly prefixed. 9179 9180 https://github.com/cs3org/reva/pull/1965 9181 https://github.com/cs3org/reva/pull/1967 9182 9183 * Bugfix #1956: Fix trashbin listing with depth 0 9184 9185 The trashbin API handled requests with depth 0 the same as request with a depth of 1. 9186 9187 https://github.com/cs3org/reva/pull/1956 9188 9189 * Bugfix #1987: Fix windows build 9190 9191 Add the necessary `golang.org/x/sys/windows` package import to `owncloud` and 9192 `owncloudsql` storage drivers. 9193 9194 https://github.com/cs3org/reva/pull/1987 9195 9196 * Bugfix #1990: Increase oc10 compatibility of owncloudsql 9197 9198 We added a few changes to the owncloudsql storage driver to behave more like oc10. 9199 9200 https://github.com/cs3org/reva/pull/1990 9201 9202 * Bugfix #1978: Owner type is optional 9203 9204 When reading the user from the extended attributes the user type might not be set, in this case we 9205 now return a user with an invalid type, which correctly reflects the state on disk. 9206 9207 https://github.com/cs3org/reva/pull/1978 9208 9209 * Bugfix #1980: Propagate the etag after restoring a file version 9210 9211 The decomposedfs didn't propagate after restoring a file version. 9212 9213 https://github.com/cs3org/reva/pull/1980 9214 9215 * Bugfix #1985: Add quota stubs 9216 9217 The `owncloud` and `owncloudsql` drivers now read the available quota from disk to no longer 9218 always return 0, which causes the web UI to disable uploads. 9219 9220 https://github.com/cs3org/reva/pull/1985 9221 9222 * Bugfix #1992: Check if symlink exists instead of spamming the console 9223 9224 The logs have been spammed with messages like `could not create symlink for ...` when using the 9225 decomposedfs, eg. with the oCIS storage. We now check if the link exists before trying to create 9226 it. 9227 9228 https://github.com/cs3org/reva/pull/1992 9229 9230 * Bugfix #1913: Logic to restore files to readonly nodes 9231 9232 This impacts solely the DecomposedFS. Prior to these changes there was no validation when a 9233 user tried to restore a file from the trashbin to a share location (i.e any folder under 9234 `/Shares`). 9235 9236 With this patch if the user restoring the resource has write permissions on the share, restore 9237 is possible. 9238 9239 https://github.com/cs3org/reva/pull/1913 9240 9241 * Change #1982: Move user context methods into a separate `userctx` package 9242 9243 https://github.com/cs3org/reva/pull/1982 9244 9245 * Enhancement #1946: Add share manager that connects to oc10 databases 9246 9247 https://github.com/cs3org/reva/pull/1946 9248 9249 * Enhancement #1983: Add Codacy unit test coverage 9250 9251 This PR adds unit test coverage upload to Codacy. 9252 9253 https://github.com/cs3org/reva/pull/1983 9254 9255 * Enhancement #1803: Introduce new webdav spaces endpoint 9256 9257 Clients can now use a new webdav endpoint 9258 `/dav/spaces/<storagespaceid>/relative/path/to/file` to directly access storage 9259 spaces. 9260 9261 The `<storagespaceid>` can be retrieved using the ListStorageSpaces CS3 api call. 9262 9263 https://github.com/cs3org/reva/pull/1803 9264 9265 * Enhancement #1998: Initial version of the Nextcloud storage driver 9266 9267 This is not usable yet in isolation, but it's a first component of 9268 https://github.com/pondersource/sciencemesh-nextcloud 9269 9270 https://github.com/cs3org/reva/pull/1998 9271 9272 * Enhancement #1984: Replace OpenCensus with OpenTelemetry 9273 9274 OpenTelemetry](https://opentelemetry.io/docs/concepts/what-is-opentelemetry/) is 9275 an [open standard](https://github.com/open-telemetry/opentelemetry-specification) a 9276 sandbox CNCF project and it was formed through a merger of the OpenTracing and OpenCensus. 9277 9278 > OpenCensus and OpenTracing have merged to form OpenTelemetry, which serves as the next major 9279 version of OpenCensus and OpenTracing. OpenTelemetry will offer backwards compatibility 9280 with existing OpenCensus integrations, and we will continue to make security patches to 9281 existing OpenCensus libraries for two years. 9282 9283 There is a lot of outdated documentation as a result of this merger, and we will be better off 9284 adopting the latest standard and libraries. 9285 9286 https://github.com/cs3org/reva/pull/1984 9287 9288 * Enhancement #1861: Add support for runtime plugins 9289 9290 This PR introduces a new plugin package, that allows loading external plugins into Reva at 9291 runtime. The hashicorp go-plugin framework was used to facilitate the plugin loading and 9292 communication. 9293 9294 https://github.com/cs3org/reva/pull/1861 9295 9296 * Enhancement #2008: Site account extensions 9297 9298 This PR heavily extends the site accounts service: * Extended the accounts information (not 9299 just email and name) * Accounts now have a password * Users can now "log in" to their accounts and 9300 edit it * Ability to grant access to the GOCDB 9301 9302 Furthermore, these accounts can now be used to authenticate for logging in to our customized 9303 GOCDB. More use cases for these accounts are also planned. 9304 9305 https://github.com/cs3org/reva/pull/2008 9306 9307 Changelog for reva 1.11.0 (2021-08-03) 9308 ======================================= 9309 9310 The following sections list the changes in reva 1.11.0 relevant to 9311 reva users. The changes are ordered by importance. 9312 9313 Summary 9314 ------- 9315 9316 * Fix #1899: Fix chunked uploads for new versions 9317 * Fix #1906: Fix copy over existing resource 9318 * Fix #1891: Delete Shared Resources as Receiver 9319 * Fix #1907: Error when creating folder with existing name 9320 * Fix #1937: Do not overwrite more specific matches when finding storage providers 9321 * Fix #1939: Fix the share jail permissions in the decomposedfs 9322 * Fix #1932: Numerous fixes to the owncloudsql storage driver 9323 * Fix #1912: Fix response when listing versions of another user 9324 * Fix #1910: Get user groups recursively in the cbox rest user driver 9325 * Fix #1904: Set Content-Length to 0 when swallowing body in the datagateway 9326 * Fix #1911: Fix version order in propfind responses 9327 * Fix #1926: Trash Bin in oCIS Storage Operations 9328 * Fix #1901: Fix response code when folder doesnt exist on upload 9329 * Enh #1785: Extend app registry with AddProvider method and mimetype filters 9330 * Enh #1938: Add methods to get and put context values 9331 * Enh #1798: Add support for a deny-all permission on references 9332 * Enh #1916: Generate updated protobuf bindings for EOS GRPC 9333 * Enh #1887: Add "a" and "l" filter for grappa queries 9334 * Enh #1919: Run gofmt before building 9335 * Enh #1927: Implement RollbackToVersion for eosgrpc (needs a newer EOS MGM) 9336 * Enh #1944: Implement listing supported mime types in app registry 9337 * Enh #1870: Be defensive about wrongly quoted etags 9338 * Enh #1940: Reduce memory usage when uploading with S3ng storage 9339 * Enh #1888: Refactoring of the webdav code 9340 * Enh #1900: Check for illegal names while uploading or moving files 9341 * Enh #1925: Refactor listing and statting across providers for virtual views 9342 9343 Details 9344 ------- 9345 9346 * Bugfix #1899: Fix chunked uploads for new versions 9347 9348 Chunked uploads didn't create a new version, when the file to upload already existed. 9349 9350 https://github.com/cs3org/reva/pull/1899 9351 9352 * Bugfix #1906: Fix copy over existing resource 9353 9354 When the target of a copy already exists, the existing resource will be moved to the trashbin 9355 before executing the copy. 9356 9357 https://github.com/cs3org/reva/pull/1906 9358 9359 * Bugfix #1891: Delete Shared Resources as Receiver 9360 9361 It is now possible to delete a shared resource as a receiver and not having the data ending up in 9362 the receiver's trash bin, causing a possible leak. 9363 9364 https://github.com/cs3org/reva/pull/1891 9365 9366 * Bugfix #1907: Error when creating folder with existing name 9367 9368 When a user tried to create a folder with the name of an existing file or folder the service didn't 9369 return a response body containing the error. 9370 9371 https://github.com/cs3org/reva/pull/1907 9372 9373 * Bugfix #1937: Do not overwrite more specific matches when finding storage providers 9374 9375 Depending on the order of rules in the registry it could happend that more specific matches 9376 (e.g. /home/Shares) were overwritten by more general ones (e.g. /home). This PR makes sure 9377 that the registry always returns the most specific match. 9378 9379 https://github.com/cs3org/reva/pull/1937 9380 9381 * Bugfix #1939: Fix the share jail permissions in the decomposedfs 9382 9383 The share jail should be not writable 9384 9385 https://github.com/cs3org/reva/pull/1939 9386 9387 * Bugfix #1932: Numerous fixes to the owncloudsql storage driver 9388 9389 The owncloudsql storage driver received numerous bugfixes and cleanups. 9390 9391 https://github.com/cs3org/reva/pull/1932 9392 9393 * Bugfix #1912: Fix response when listing versions of another user 9394 9395 The OCS API returned the wrong response when a user tried to list the versions of another user's 9396 file. 9397 9398 https://github.com/cs3org/reva/pull/1912 9399 9400 * Bugfix #1910: Get user groups recursively in the cbox rest user driver 9401 9402 https://github.com/cs3org/reva/pull/1910 9403 9404 * Bugfix #1904: Set Content-Length to 0 when swallowing body in the datagateway 9405 9406 When swallowing the body the Content-Lenght needs to be set to 0 to prevent proxies from reading 9407 the body. 9408 9409 https://github.com/cs3org/reva/pull/1904 9410 9411 * Bugfix #1911: Fix version order in propfind responses 9412 9413 The order of the file versions in propfind responses was incorrect. 9414 9415 https://github.com/cs3org/reva/pull/1911 9416 9417 * Bugfix #1926: Trash Bin in oCIS Storage Operations 9418 9419 Support for restoring a target folder nested deep inside the trash bin in oCIS storage. The use 9420 case is: 9421 9422 ```console curl 'https://localhost:9200/remote.php/dav/trash-bin/einstein/f1/f2' -X 9423 MOVE -H 'Destination: 9424 https://localhost:9200/remote.php/dav/files/einstein/destination' ``` 9425 9426 The previous command creates the `destination` folder and moves the contents of 9427 `/trash-bin/einstein/f1/f2` onto it. 9428 9429 Retro-compatibility in the response code with ownCloud 10. Restoring a collection to a 9430 non-existent nested target is not supported and MUST return `409`. The use case is: 9431 9432 ```console curl 'https://localhost:9200/remote.php/dav/trash-bin/einstein/f1/f2' -X 9433 MOVE -H 'Destination: 9434 https://localhost:9200/remote.php/dav/files/einstein/this/does/not/exist' ``` 9435 9436 The previous command used to return `404` instead of the expected `409` by the clients. 9437 9438 https://github.com/cs3org/reva/pull/1926 9439 9440 * Bugfix #1901: Fix response code when folder doesnt exist on upload 9441 9442 When a new file was uploaded to a non existent folder the response code was incorrect. 9443 9444 https://github.com/cs3org/reva/pull/1901 9445 9446 * Enhancement #1785: Extend app registry with AddProvider method and mimetype filters 9447 9448 https://github.com/cs3org/reva/issues/1779 9449 https://github.com/cs3org/reva/pull/1785 9450 https://github.com/cs3org/cs3apis/pull/131 9451 9452 * Enhancement #1938: Add methods to get and put context values 9453 9454 Added `GetKeyValues` and `PutKeyValues` methods to fetch/put values from/to context. 9455 9456 https://github.com/cs3org/reva/pull/1938 9457 9458 * Enhancement #1798: Add support for a deny-all permission on references 9459 9460 And implement it on the EOS storage 9461 9462 http://github.com/cs3org/reva/pull/1798 9463 9464 * Enhancement #1916: Generate updated protobuf bindings for EOS GRPC 9465 9466 https://github.com/cs3org/reva/pull/1916 9467 9468 * Enhancement #1887: Add "a" and "l" filter for grappa queries 9469 9470 This PR adds the namespace filters "a" and "l" for grappa queries. With no filter will look into 9471 primary and e-groups, with "a" will look into primary/secondary/service/e-groups and with 9472 "l" will look into lightweight accounts. 9473 9474 https://github.com/cs3org/reva/issues/1773 9475 https://github.com/cs3org/reva/pull/1887 9476 9477 * Enhancement #1919: Run gofmt before building 9478 9479 https://github.com/cs3org/reva/pull/1919 9480 9481 * Enhancement #1927: Implement RollbackToVersion for eosgrpc (needs a newer EOS MGM) 9482 9483 https://github.com/cs3org/reva/pull/1927 9484 9485 * Enhancement #1944: Implement listing supported mime types in app registry 9486 9487 https://github.com/cs3org/reva/pull/1944 9488 9489 * Enhancement #1870: Be defensive about wrongly quoted etags 9490 9491 When ocdav renders etags it will now try to correct them to the definition as *quoted strings* 9492 which do not contain `"`. This prevents double or triple quoted etags on the webdav api. 9493 9494 https://github.com/cs3org/reva/pull/1870 9495 9496 * Enhancement #1940: Reduce memory usage when uploading with S3ng storage 9497 9498 The memory usage could be high when uploading files using the S3ng storage. By providing the 9499 actual file size when triggering `PutObject`, the overall memory usage is reduced. 9500 9501 https://github.com/cs3org/reva/pull/1940 9502 9503 * Enhancement #1888: Refactoring of the webdav code 9504 9505 Refactored the webdav code to make it reusable. 9506 9507 https://github.com/cs3org/reva/pull/1888 9508 9509 * Enhancement #1900: Check for illegal names while uploading or moving files 9510 9511 The code was not checking for invalid file names during uploads and moves. 9512 9513 https://github.com/cs3org/reva/pull/1900 9514 9515 * Enhancement #1925: Refactor listing and statting across providers for virtual views 9516 9517 https://github.com/cs3org/reva/pull/1925 9518 9519 Changelog for reva 1.10.0 (2021-07-13) 9520 ======================================= 9521 9522 The following sections list the changes in reva 1.10.0 relevant to 9523 reva users. The changes are ordered by importance. 9524 9525 Summary 9526 ------- 9527 9528 * Fix #1883: Pass directories with trailing slashes to eosclient.GenerateToken 9529 * Fix #1878: Improve the webdav error handling in the trashbin 9530 * Fix #1884: Do not send body on failed range request 9531 * Enh #1744: Add support for lightweight user types 9532 9533 Details 9534 ------- 9535 9536 * Bugfix #1883: Pass directories with trailing slashes to eosclient.GenerateToken 9537 9538 https://github.com/cs3org/reva/pull/1883 9539 9540 * Bugfix #1878: Improve the webdav error handling in the trashbin 9541 9542 The trashbin handles errors better now on the webdav endpoint. 9543 9544 https://github.com/cs3org/reva/pull/1878 9545 9546 * Bugfix #1884: Do not send body on failed range request 9547 9548 Instead of send the error in the body of a 416 response we log it. This prevents the go reverse 9549 proxy from choking on it and turning it into a 502 Bad Gateway response. 9550 9551 https://github.com/cs3org/reva/pull/1884 9552 9553 * Enhancement #1744: Add support for lightweight user types 9554 9555 This PR adds support for assigning and consuming user type when setting/reading users. On top 9556 of that, support for lightweight users is added. These users have to be restricted to accessing 9557 only shares received by them, which is accomplished by expanding the existing RBAC scope. 9558 9559 https://github.com/cs3org/reva/pull/1744 9560 https://github.com/cs3org/cs3apis/pull/120 9561 9562 Changelog for reva 1.9.1 (2021-07-09) 9563 ======================================= 9564 9565 The following sections list the changes in reva 1.9.1 relevant to 9566 reva users. The changes are ordered by importance. 9567 9568 Summary 9569 ------- 9570 9571 * Fix #1843: Correct Dockerfile path for the reva CLI and alpine3.13 as builder 9572 * Fix #1835: Cleanup owncloudsql driver 9573 * Fix #1868: Minor fixes to the grpc/http plugin: checksum, url escaping 9574 * Fix #1885: Fix template in eoshomewrapper to use context user rather than resource 9575 * Fix #1833: Properly handle name collisions for deletes in the owncloud driver 9576 * Fix #1874: Use the original file mtime during upload 9577 * Fix #1854: Add the uid/gid to the url for eos 9578 * Fix #1848: Fill in missing gid/uid number with nobody 9579 * Fix #1831: Make the ocm-provider endpoint in the ocmd service unprotected 9580 * Fix #1808: Use empty array in OCS Notifications endpoints 9581 * Fix #1825: Raise max grpc message size 9582 * Fix #1828: Send a proper XML header with error messages 9583 * Chg #1828: Remove the oidc provider in order to upgrad mattn/go-sqlite3 to v1.14.7 9584 * Enh #1834: Add API key to Mentix GOCDB connector 9585 * Enh #1855: Minor optimization in parsing EOS ACLs 9586 * Enh #1873: Update the EOS image tag to be for revad-eos image 9587 * Enh #1802: Introduce list spaces 9588 * Enh #1849: Add readonly interceptor 9589 * Enh #1875: Simplify resource comparison 9590 * Enh #1827: Support trashbin sub paths in the recycle API 9591 9592 Details 9593 ------- 9594 9595 * Bugfix #1843: Correct Dockerfile path for the reva CLI and alpine3.13 as builder 9596 9597 This was introduced on https://github.com/cs3org/reva/commit/117adad while porting the 9598 configuration on .drone.yml to starlark. 9599 9600 Force golang:alpine3.13 as base image to prevent errors from Make when running on Docker 9601 <20.10 as it happens on Drone 9602 ref.https://gitlab.alpinelinux.org/alpine/aports/-/issues/12396 9603 9604 https://github.com/cs3org/reva/pull/1843 9605 https://github.com/cs3org/reva/pull/1844 9606 https://github.com/cs3org/reva/pull/1847 9607 9608 * Bugfix #1835: Cleanup owncloudsql driver 9609 9610 Use `owncloudsql` string when returning errors and removed copyMD as it does not need to copy 9611 metadata from files. 9612 9613 https://github.com/cs3org/reva/pull/1835 9614 9615 * Bugfix #1868: Minor fixes to the grpc/http plugin: checksum, url escaping 9616 9617 https://github.com/cs3org/reva/pull/1868 9618 9619 * Bugfix #1885: Fix template in eoshomewrapper to use context user rather than resource 9620 9621 https://github.com/cs3org/reva/pull/1885 9622 9623 * Bugfix #1833: Properly handle name collisions for deletes in the owncloud driver 9624 9625 In the owncloud storage driver when we delete a file we append the deletion time to the file name. 9626 If two fast consecutive deletes happened, the deletion time would be the same and if the two 9627 files had the same name we ended up with only one file in the trashbin. 9628 9629 https://github.com/cs3org/reva/pull/1833 9630 9631 * Bugfix #1874: Use the original file mtime during upload 9632 9633 The decomposedfs was not using the original file mtime during uploads. 9634 9635 https://github.com/cs3org/reva/pull/1874 9636 9637 * Bugfix #1854: Add the uid/gid to the url for eos 9638 9639 https://github.com/cs3org/reva/pull/1854 9640 9641 * Bugfix #1848: Fill in missing gid/uid number with nobody 9642 9643 When an LDAP server does not provide numeric uid or gid properties for a user we now fall back to a 9644 configurable `nobody` id (default 99). 9645 9646 https://github.com/cs3org/reva/pull/1848 9647 9648 * Bugfix #1831: Make the ocm-provider endpoint in the ocmd service unprotected 9649 9650 https://github.com/cs3org/reva/issues/1751 9651 https://github.com/cs3org/reva/pull/1831 9652 9653 * Bugfix #1808: Use empty array in OCS Notifications endpoints 9654 9655 https://github.com/cs3org/reva/pull/1808 9656 9657 * Bugfix #1825: Raise max grpc message size 9658 9659 As a workaround for listing larger folder we raised the `MaxCallRecvMsgSize` to 10MB. This 9660 should be enough for ~15k files. The proper fix is implementing ListContainerStream in the 9661 gateway, but we needed a way to test the web ui with larger collections. 9662 9663 https://github.com/cs3org/reva/pull/1825 9664 9665 * Bugfix #1828: Send a proper XML header with error messages 9666 9667 https://github.com/cs3org/reva/pull/1828 9668 9669 * Change #1828: Remove the oidc provider in order to upgrad mattn/go-sqlite3 to v1.14.7 9670 9671 In order to upgrade mattn/go-sqlite3 to v1.14.7, the odic provider service is removed, which 9672 is possible because it is not used anymore 9673 9674 https://github.com/cs3org/reva/pull/1828 9675 https://github.com/owncloud/ocis/pull/2209 9676 9677 * Enhancement #1834: Add API key to Mentix GOCDB connector 9678 9679 The PI (programmatic interface) of the GOCDB will soon require an API key; this PR adds the 9680 ability to configure this key in Mentix. 9681 9682 https://github.com/cs3org/reva/pull/1834 9683 9684 * Enhancement #1855: Minor optimization in parsing EOS ACLs 9685 9686 https://github.com/cs3org/reva/pull/1855 9687 9688 * Enhancement #1873: Update the EOS image tag to be for revad-eos image 9689 9690 https://github.com/cs3org/reva/pull/1873 9691 9692 * Enhancement #1802: Introduce list spaces 9693 9694 The ListStorageSpaces call now allows listing all user homes and shared resources using a 9695 storage space id. The gateway will forward requests to a specific storage provider when a 9696 filter by id is given. Otherwise it will query all storage providers. Results will be 9697 deduplicated. Currently, only the decomposed fs storage driver implements the necessary 9698 logic to demonstrate the implmentation. A new `/dav/spaces` WebDAV endpoint to directly 9699 access a storage space is introduced in a separate PR. 9700 9701 https://github.com/cs3org/reva/pull/1802 9702 https://github.com/cs3org/reva/pull/1803 9703 9704 * Enhancement #1849: Add readonly interceptor 9705 9706 The readonly interceptor could be used to configure a storageprovider in readonly mode. This 9707 could be handy in some migration scenarios. 9708 9709 https://github.com/cs3org/reva/pull/1849 9710 9711 * Enhancement #1875: Simplify resource comparison 9712 9713 We replaced ResourceEqual with ResourceIDEqual where possible. 9714 9715 https://github.com/cs3org/reva/pull/1875 9716 9717 * Enhancement #1827: Support trashbin sub paths in the recycle API 9718 9719 The recycle API could only act on the root items of the trashbin. Meaning if you delete a deep 9720 tree, you couldn't restore just one file from that tree but you had to restore the whole tree. Now 9721 listing, restoring and purging work also for sub paths in the trashbin. 9722 9723 https://github.com/cs3org/reva/pull/1827 9724 9725 Changelog for reva 1.9.0 (2021-06-23) 9726 ======================================= 9727 9728 The following sections list the changes in reva 1.9.0 relevant to 9729 reva users. The changes are ordered by importance. 9730 9731 Summary 9732 ------- 9733 9734 * Fix #1815: Drone CI - patch the 'store-dev-release' job to fix malformed requests 9735 * Fix #1765: 'golang:alpine' as base image & CGO_ENABLED just for the CLI 9736 * Chg #1721: Absolute and relative references 9737 * Enh #1810: Add arbitrary metadata support to EOS 9738 * Enh #1774: Add user ID cache warmup to EOS storage driver 9739 * Enh #1471: EOEGrpc progress. Logging discipline and error handling 9740 * Enh #1811: Harden public shares signing 9741 * Enh #1793: Remove the user id from the trashbin key 9742 * Enh #1795: Increase trashbin restore API compatibility 9743 * Enh #1516: Use UidNumber and GidNumber fields in User objects 9744 * Enh #1820: Tag v1.9.0 9745 9746 Details 9747 ------- 9748 9749 * Bugfix #1815: Drone CI - patch the 'store-dev-release' job to fix malformed requests 9750 9751 Replace the backquotes that were used for the date component of the URL with the 9752 POSIX-confirmant command substitution '$()'. 9753 9754 https://github.com/cs3org/reva/pull/1815 9755 9756 * Bugfix #1765: 'golang:alpine' as base image & CGO_ENABLED just for the CLI 9757 9758 Some of the dependencies used by revad need CGO to be enabled in order to work. We also need to 9759 install the 'mime-types' in alpine to correctly detect them on the storage-providers. 9760 9761 The CGO_ENABLED=0 flag was added to the docker build flags so that it will produce a static 9762 build. This allows usage of the 'scratch' image for reduction of the docker image size (e.g. the 9763 reva cli). 9764 9765 https://github.com/cs3org/reva/issues/1765 9766 https://github.com/cs3org/reva/pull/1766 9767 https://github.com/cs3org/reva/pull/1797 9768 9769 * Change #1721: Absolute and relative references 9770 9771 We unified the `Reference_Id` end `Reference_Path` types to a combined `Reference` that 9772 contains both: - a `resource_id` property that can identify a node using a `storage_id` and an 9773 `opaque_id` - a `path` property that can be used to represent absolute paths as well as paths 9774 relative to the id based properties. While this is a breaking change it allows passing both: 9775 absolute as well as relative references. 9776 9777 https://github.com/cs3org/reva/pull/1721 9778 9779 * Enhancement #1810: Add arbitrary metadata support to EOS 9780 9781 https://github.com/cs3org/reva/pull/1810 9782 9783 * Enhancement #1774: Add user ID cache warmup to EOS storage driver 9784 9785 https://github.com/cs3org/reva/pull/1774 9786 9787 * Enhancement #1471: EOEGrpc progress. Logging discipline and error handling 9788 9789 https://github.com/cs3org/reva/pull/1471 9790 9791 * Enhancement #1811: Harden public shares signing 9792 9793 Makes golangci-lint happy as well 9794 9795 https://github.com/cs3org/reva/pull/1811 9796 9797 * Enhancement #1793: Remove the user id from the trashbin key 9798 9799 We don't want to use the users uuid outside of the backend so I removed the id from the trashbin 9800 file key. 9801 9802 https://github.com/cs3org/reva/pull/1793 9803 9804 * Enhancement #1795: Increase trashbin restore API compatibility 9805 9806 * The precondition were not checked before doing a trashbin restore in the ownCloud dav API. 9807 Without the checks the API would behave differently compared to the oC10 API. * The restore 9808 response was missing HTTP headers like `ETag` * Update the name when restoring the file from 9809 trashbin to a new target name 9810 9811 https://github.com/cs3org/reva/pull/1795 9812 9813 * Enhancement #1516: Use UidNumber and GidNumber fields in User objects 9814 9815 Update instances where CS3API's `User` objects are created and used to use `GidNumber`, and 9816 `UidNumber` fields instead of storing them in `Opaque` map. 9817 9818 https://github.com/cs3org/reva/issues/1516 9819 9820 * Enhancement #1820: Tag v1.9.0 9821 9822 Bump release number to v1.9.0 as it contains breaking changes related to changing the 9823 reference type. 9824 9825 https://github.com/cs3org/reva/pull/1820 9826 9827 Changelog for reva 1.8.0 (2021-06-09) 9828 ======================================= 9829 9830 The following sections list the changes in reva 1.8.0 relevant to 9831 reva users. The changes are ordered by importance. 9832 9833 Summary 9834 ------- 9835 9836 * Fix #1779: Set Content-Type header correctly for ocs requests 9837 * Fix #1650: Allow fetching shares as the grantee 9838 * Fix #1693: Fix move in owncloud storage driver 9839 * Fix #1666: Fix public file shares 9840 * Fix #1541: Allow for restoring recycle items to different locations 9841 * Fix #1718: Use the -static ldflag only for the 'build-ci' target 9842 * Enh #1719: Application passwords CLI 9843 * Enh #1719: Application passwords management 9844 * Enh #1725: Create transfer type share 9845 * Enh #1755: Return file checksum available from the metadata for the EOS driver 9846 * Enh #1673: Deprecate using errors.New and fmt.Errorf 9847 * Enh #1723: Open in app workflow using the new API 9848 * Enh #1655: Improve json marshalling of share protobuf messages 9849 * Enh #1694: User profile picture capability 9850 * Enh #1649: Add reliability calculations support to Mentix 9851 * Enh #1509: Named Service Registration 9852 * Enh #1643: Cache resources from share getter methods in OCS 9853 * Enh #1664: Add cache warmup strategy for OCS resource infos 9854 * Enh #1710: Owncloudsql storage driver 9855 * Enh #1705: Reduce the size of all the container images built on CI 9856 * Enh #1669: Mint scope-based access tokens for RBAC 9857 * Enh #1683: Filter created shares based on type in OCS 9858 * Enh #1763: Sort share entries alphabetically 9859 * Enh #1758: Warn user for not recommended go version 9860 * Enh #1747: Add checksum headers to tus preflight responses 9861 * Enh #1685: Add share to update response 9862 9863 Details 9864 ------- 9865 9866 * Bugfix #1779: Set Content-Type header correctly for ocs requests 9867 9868 Before this fix the `Content-Type` header was guessed by `w.Write` because `WriteHeader` was 9869 called to early. Now the `Content-Type` is set correctly and to the same values as in ownCloud 10 9870 9871 https://github.com/owncloud/ocis/issues/1779 9872 9873 * Bugfix #1650: Allow fetching shares as the grantee 9874 9875 The json backend now allows a grantee to fetch a share by id. 9876 9877 https://github.com/cs3org/reva/pull/1650 9878 9879 * Bugfix #1693: Fix move in owncloud storage driver 9880 9881 When moving a file or folder (includes renaming) the filepath in the cache didn't get updated 9882 which caused subsequent requests to `getpath` to fail. 9883 9884 https://github.com/cs3org/reva/issues/1693 9885 https://github.com/cs3org/reva/issues/1696 9886 9887 * Bugfix #1666: Fix public file shares 9888 9889 Fixed stat requests and propfind responses for publicly shared files. 9890 9891 https://github.com/cs3org/reva/pull/1666 9892 9893 * Bugfix #1541: Allow for restoring recycle items to different locations 9894 9895 The CS3 APIs specify a way to restore a recycle item to a different location than the original by 9896 setting the `restore_path` field in the `RestoreRecycleItemRequest`. This field had not 9897 been considered until now. 9898 9899 https://github.com/cs3org/reva/pull/1541 9900 https://cs3org.github.io/cs3apis/ 9901 9902 * Bugfix #1718: Use the -static ldflag only for the 'build-ci' target 9903 9904 It is not intended to statically link the generated binaries for local development workflows. 9905 This resulted on segmentation faults and compiller warnings. 9906 9907 https://github.com/cs3org/reva/pull/1718 9908 9909 * Enhancement #1719: Application passwords CLI 9910 9911 This PR adds the CLI commands `token-list`, `token-create` and `token-remove` to manage 9912 tokens with limited scope on behalf of registered users. 9913 9914 https://github.com/cs3org/reva/pull/1719 9915 9916 * Enhancement #1719: Application passwords management 9917 9918 This PR adds the functionality to generate authentication tokens with limited scope on behalf 9919 of registered users. These can be used in third party apps or in case primary user credentials 9920 cannot be submitted to other parties. 9921 9922 https://github.com/cs3org/reva/issues/1714 9923 https://github.com/cs3org/reva/pull/1719 9924 https://github.com/cs3org/cs3apis/pull/127 9925 9926 * Enhancement #1725: Create transfer type share 9927 9928 `transfer-create` creates a share of type transfer. 9929 9930 https://github.com/cs3org/reva/pull/1725 9931 9932 * Enhancement #1755: Return file checksum available from the metadata for the EOS driver 9933 9934 https://github.com/cs3org/reva/pull/1755 9935 9936 * Enhancement #1673: Deprecate using errors.New and fmt.Errorf 9937 9938 Previously we were using errors.New and fmt.Errorf to create errors. Now we use the errors 9939 defined in the errtypes package. 9940 9941 https://github.com/cs3org/reva/issues/1673 9942 9943 * Enhancement #1723: Open in app workflow using the new API 9944 9945 This provides a new `open-in-app` command for the CLI and the implementation on the 9946 appprovider gateway service for the new API, including the option to specify the appplication 9947 to use, thus overriding the preconfigured one. 9948 9949 https://github.com/cs3org/reva/pull/1723 9950 9951 * Enhancement #1655: Improve json marshalling of share protobuf messages 9952 9953 Protobuf oneof fields cannot be properly handled by the native json marshaller, and the 9954 protojson package can only handle proto messages. Previously, we were using a workaround of 9955 storing these oneof fields separately, which made the code inelegant. Now we marshal these 9956 messages as strings before marshalling them via the native json package. 9957 9958 https://github.com/cs3org/reva/pull/1655 9959 9960 * Enhancement #1694: User profile picture capability 9961 9962 Based on feedback in the new ownCloud web frontend we want to omit trying to render user avatars 9963 images / profile pictures based on the backend capabilities. Now the OCS communicates a 9964 corresponding value. 9965 9966 https://github.com/cs3org/reva/pull/1694 9967 9968 * Enhancement #1649: Add reliability calculations support to Mentix 9969 9970 To make reliability calculations possible, a new exporter has been added to Mentix that reads 9971 scheduled downtimes from the GOCDB and exposes it through Prometheus metrics. 9972 9973 https://github.com/cs3org/reva/pull/1649 9974 9975 * Enhancement #1509: Named Service Registration 9976 9977 Move away from hardcoding service IP addresses and rely upon name resolution instead. It 9978 delegates the address lookup to a static in-memory service registry, which can be 9979 re-implemented in multiple forms. 9980 9981 https://github.com/cs3org/reva/pull/1509 9982 9983 * Enhancement #1643: Cache resources from share getter methods in OCS 9984 9985 In OCS, once we retrieve the shares from the shareprovider service, we stat each of those 9986 separately to obtain the required info, which introduces a lot of latency. This PR introduces a 9987 resoource info cache in OCS, which would prevent this latency. 9988 9989 https://github.com/cs3org/reva/pull/1643 9990 9991 * Enhancement #1664: Add cache warmup strategy for OCS resource infos 9992 9993 Recently, a TTL cache was added to OCS to store statted resource infos. This PR adds an interface 9994 to define warmup strategies and also adds a cbox specific strategy which starts a goroutine to 9995 initialize the cache with all the valid shares present in the system. 9996 9997 https://github.com/cs3org/reva/pull/1664 9998 9999 * Enhancement #1710: Owncloudsql storage driver 10000 10001 This PR adds a storage driver which connects to a oc10 storage backend (storage + database). 10002 This allows for running oc10 and ocis with the same backend in parallel. 10003 10004 https://github.com/cs3org/reva/pull/1710 10005 10006 * Enhancement #1705: Reduce the size of all the container images built on CI 10007 10008 Previously, all images were based on golang:1.16 which is built from Debian. Using 'scratch' 10009 as base, reduces the size of the artifacts well as the attack surface for all the images, plus 10010 copying the binary from the build step ensures that only the strictly required software is 10011 present on the final image. For the revad images tagged '-eos', eos-slim is used instead. It is 10012 still large but it updates the environment as well as the EOS version. 10013 10014 https://github.com/cs3org/reva/pull/1705 10015 10016 * Enhancement #1669: Mint scope-based access tokens for RBAC 10017 10018 Primarily, this PR is meant to introduce the concept of scopes into our tokens. At the moment, it 10019 addresses those cases where we impersonate other users without allowing the full scope of what 10020 the actual user has access to. 10021 10022 A short explanation for how it works for public shares: - We get the public share using the token 10023 provided by the client. - In the public share, we know the resource ID, so we can add this to the 10024 allowed scope, but not the path. - However, later OCDav tries to access by path as well. Now this 10025 is not allowed at the moment. However, from the allowed scope, we have the resource ID and we're 10026 allowed to stat that. We stat the resource ID, get the path and if the path matches the one passed 10027 by OCDav, we allow the request to go through. 10028 10029 https://github.com/cs3org/reva/pull/1669 10030 10031 * Enhancement #1683: Filter created shares based on type in OCS 10032 10033 https://github.com/cs3org/reva/pull/1683 10034 10035 * Enhancement #1763: Sort share entries alphabetically 10036 10037 When showing the list of shares to the end-user, the list was not sorted alphabetically. This PR 10038 sorts the list of users and groups. 10039 10040 https://github.com/cs3org/reva/issues/1763 10041 10042 * Enhancement #1758: Warn user for not recommended go version 10043 10044 This PR adds a warning while an user is building the source code, if he is using a go version not 10045 recommended. 10046 10047 https://github.com/cs3org/reva/issues/1758 10048 https://github.com/cs3org/reva/pull/1760 10049 10050 * Enhancement #1747: Add checksum headers to tus preflight responses 10051 10052 Added `checksum` to the header `Tus-Extension` and added the `Tus-Checksum-Algorithm` 10053 header. 10054 10055 https://github.com/owncloud/ocis/issues/1747 10056 https://github.com/cs3org/reva/pull/1702 10057 10058 * Enhancement #1685: Add share to update response 10059 10060 After accepting or rejecting a share the API includes the updated share in the response. 10061 10062 https://github.com/cs3org/reva/pull/1685 10063 https://github.com/cs3org/reva/pull/1724 10064 10065 Changelog for reva 1.7.0 (2021-04-19) 10066 ======================================= 10067 10068 The following sections list the changes in reva 1.7.0 relevant to 10069 reva users. The changes are ordered by importance. 10070 10071 Summary 10072 ------- 10073 10074 * Fix #1619: Fixes for enabling file sharing in EOS 10075 * Fix #1576: Fix etag changing only once a second 10076 * Fix #1634: Mentix site authorization status changes 10077 * Fix #1625: Make local file connector more error tolerant 10078 * Fix #1526: Fix webdav file versions endpoint bugs 10079 * Fix #1457: Cloning of internal mesh data lost some values 10080 * Fix #1597: Check for ENOTDIR on readlink error 10081 * Fix #1636: Skip file check for OCM data transfers 10082 * Fix #1552: Fix a bunch of trashbin related issues 10083 * Fix #1: Bump meshdirectory-web to 1.0.2 10084 * Chg #1562: Modularize api token management in GRAPPA drivers 10085 * Chg #1452: Separate blobs from metadata in the ocis storage driver 10086 * Enh #1514: Add grpc test suite for the storage provider 10087 * Enh #1466: Add integration tests for the s3ng driver 10088 * Enh #1521: Clarify expected failures 10089 * Enh #1624: Add wrappers for EOS and EOS Home storage drivers 10090 * Enh #1563: Implement cs3.sharing.collaboration.v1beta1.Share.ShareType 10091 * Enh #1411: Make InsecureSkipVerify configurable 10092 * Enh #1106: Make command to run litmus tests 10093 * Enh #1502: Bump meshdirectory-web to v1.0.4 10094 * Enh #1502: New MeshDirectory HTTP service UI frontend with project branding 10095 * Enh #1405: Quota querying and tree accounting 10096 * Enh #1527: Add FindAcceptedUsers method to OCM Invite API 10097 * Enh #1149: Add CLI Commands for OCM invitation workflow 10098 * Enh #1629: Implement checksums in the owncloud storage 10099 * Enh #1528: Port drone pipeline definition to starlark 10100 * Enh #110: Add signature authentication for public links 10101 * Enh #1495: SQL driver for the publicshare service 10102 * Enh #1588: Make the additional info attribute for shares configurable 10103 * Enh #1595: Add site account registration panel 10104 * Enh #1506: Site Accounts service for API keys 10105 * Enh #116: Enhance storage registry with virtual views and regular expressions 10106 * Enh #1513: Add stubs for storage spaces manipulation 10107 10108 Details 10109 ------- 10110 10111 * Bugfix #1619: Fixes for enabling file sharing in EOS 10112 10113 https://github.com/cs3org/reva/pull/1619 10114 10115 * Bugfix #1576: Fix etag changing only once a second 10116 10117 We fixed a problem with the owncloud storage driver only considering the mtime with a second 10118 resolution for the etag calculation. 10119 10120 https://github.com/cs3org/reva/pull/1576 10121 10122 * Bugfix #1634: Mentix site authorization status changes 10123 10124 If a site changes its authorization status, Mentix did not update its internal data to reflect 10125 this change. This PR fixes this issue. 10126 10127 https://github.com/cs3org/reva/pull/1634 10128 10129 * Bugfix #1625: Make local file connector more error tolerant 10130 10131 The local file connector caused Reva to throw an exception if the local file for storing site 10132 data couldn't be loaded. This PR changes this behavior so that only a warning is logged. 10133 10134 https://github.com/cs3org/reva/pull/1625 10135 10136 * Bugfix #1526: Fix webdav file versions endpoint bugs 10137 10138 Etag and error code related bugs have been fixed for the webdav file versions endpoint and 10139 removed from the expected failures file. 10140 10141 https://github.com/cs3org/reva/pull/1526 10142 10143 * Bugfix #1457: Cloning of internal mesh data lost some values 10144 10145 This update fixes a bug in Mentix that caused some (non-critical) values to be lost during data 10146 cloning that happens internally. 10147 10148 https://github.com/cs3org/reva/pull/1457 10149 10150 * Bugfix #1597: Check for ENOTDIR on readlink error 10151 10152 The deconstructed storage driver now handles ENOTDIR errors when `node.Child()` is called 10153 for a path containing a path segment that is actually a file. 10154 10155 https://github.com/owncloud/ocis/issues/1239 10156 https://github.com/cs3org/reva/pull/1597 10157 10158 * Bugfix #1636: Skip file check for OCM data transfers 10159 10160 https://github.com/cs3org/reva/pull/1636 10161 10162 * Bugfix #1552: Fix a bunch of trashbin related issues 10163 10164 Fixed these issues: 10165 10166 - Complete: Deletion time in trash bin shows a wrong date - Complete: shared trash status code - 10167 Partly: invalid webdav responses for unauthorized requests. - Partly: href in trashbin 10168 PROPFIND response is wrong 10169 10170 Complete means there are no expected failures left. Partly means there are some scenarios 10171 left. 10172 10173 https://github.com/cs3org/reva/pull/1552 10174 10175 * Bugfix #1: Bump meshdirectory-web to 1.0.2 10176 10177 Updated meshdirectory-web mod to version 1.0.2 that contains fixes for OCM invite API links 10178 generation. 10179 10180 https://github.com/sciencemesh/meshdirectory-web/pull/1 10181 10182 * Change #1562: Modularize api token management in GRAPPA drivers 10183 10184 This PR moves the duplicated api token management methods into a seperate utils package 10185 10186 https://github.com/cs3org/reva/issues/1562 10187 10188 * Change #1452: Separate blobs from metadata in the ocis storage driver 10189 10190 We changed the ocis storage driver to keep the file content separate from the metadata by 10191 storing the blobs in a separate directory. This allows for using a different (potentially 10192 faster) storage for the metadata. 10193 10194 **Note** This change makes existing ocis storages incompatible with the new code. 10195 10196 We also streamlined the ocis and the s3ng drivers so that most of the code is shared between them. 10197 10198 https://github.com/cs3org/reva/pull/1452 10199 10200 * Enhancement #1514: Add grpc test suite for the storage provider 10201 10202 A new test suite has been added which tests the grpc interface to the storage provider. It 10203 currently runs against the ocis and the owncloud storage drivers. 10204 10205 https://github.com/cs3org/reva/pull/1514 10206 10207 * Enhancement #1466: Add integration tests for the s3ng driver 10208 10209 We extended the integration test suite to also run all tests against the s3ng driver. 10210 10211 https://github.com/cs3org/reva/pull/1466 10212 10213 * Enhancement #1521: Clarify expected failures 10214 10215 Some features, while covered by the ownCloud 10 acceptance tests, will not be implmented for 10216 now: - blacklisted / ignored files, because ocis/reva don't need to blacklist `.htaccess` 10217 files - `OC-LazyOps` support was [removed from the 10218 clients](https://github.com/owncloud/client/pull/8398). We are thinking about [a state 10219 machine for uploads to properly solve that scenario and also list the state of files in progress 10220 in the web ui](https://github.com/owncloud/ocis/issues/214). The expected failures 10221 files now have a dedicated _Won't fix_ section for these items. 10222 10223 https://github.com/owncloud/ocis/issues/214 10224 https://github.com/cs3org/reva/pull/1521 10225 https://github.com/owncloud/client/pull/8398 10226 10227 * Enhancement #1624: Add wrappers for EOS and EOS Home storage drivers 10228 10229 For CERNBox, we need the mount ID to be configured according to the owner of a resource. Setting 10230 this in the storageprovider means having different instances of this service to cater to 10231 different users, which does not scale. This driver forms a wrapper around the EOS driver and 10232 sets the mount ID according to a configurable mapping based on the owner of the resource. 10233 10234 https://github.com/cs3org/reva/pull/1624 10235 10236 * Enhancement #1563: Implement cs3.sharing.collaboration.v1beta1.Share.ShareType 10237 10238 Interface method Share() in pkg/ocm/share/share.go now has a share type parameter. 10239 10240 https://github.com/cs3org/reva/pull/1563 10241 10242 * Enhancement #1411: Make InsecureSkipVerify configurable 10243 10244 Add `InsecureSkipVerify` field to `metrics.Config` struct and update examples to include 10245 it. 10246 10247 https://github.com/cs3org/reva/issues/1411 10248 10249 * Enhancement #1106: Make command to run litmus tests 10250 10251 This updates adds an extra make command to run litmus tests via make. `make litmus-test` 10252 executes the tests. 10253 10254 https://github.com/cs3org/reva/issues/1106 10255 https://github.com/cs3org/reva/pull/1543 10256 10257 * Enhancement #1502: Bump meshdirectory-web to v1.0.4 10258 10259 Updated meshdirectory-web version to v.1.0.4 bringing multiple UX improvements in provider 10260 list and map. 10261 10262 https://github.com/cs3org/reva/issues/1502 10263 https://github.com/sciencemesh/meshdirectory-web/pull/2 10264 https://github.com/sciencemesh/meshdirectory-web/pull/3 10265 10266 * Enhancement #1502: New MeshDirectory HTTP service UI frontend with project branding 10267 10268 We replaced the temporary version of web frontend of the mesh directory http service with a new 10269 redesigned & branded one. Because the new version is a more complex Vue SPA that contains image, 10270 css and other assets, it is now served from a binary package distribution that was generated 10271 using the [github.com/rakyll/statik](https://github.com/rakyll/statik) package. The 10272 `http.services.meshdirectory.static` config option was obsoleted by this change. 10273 10274 https://github.com/cs3org/reva/issues/1502 10275 10276 * Enhancement #1405: Quota querying and tree accounting 10277 10278 The ocs api now returns the user quota for the users home storage. Furthermore, the ocis storage 10279 driver now reads the quota from the extended attributes of the user home or root node and 10280 implements tree size accounting. Finally, ocdav PROPFINDS now handle the 10281 `DAV:quota-used-bytes` and `DAV:quote-available-bytes` properties. 10282 10283 https://github.com/cs3org/reva/pull/1405 10284 https://github.com/cs3org/reva/pull/1491 10285 10286 * Enhancement #1527: Add FindAcceptedUsers method to OCM Invite API 10287 10288 https://github.com/cs3org/reva/pull/1527 10289 10290 * Enhancement #1149: Add CLI Commands for OCM invitation workflow 10291 10292 This adds a couple of CLI commands, `ocm-invite-generate` and `ocm-invite-forward` to 10293 generate and forward ocm invitation tokens respectively. 10294 10295 https://github.com/cs3org/reva/issues/1149 10296 10297 * Enhancement #1629: Implement checksums in the owncloud storage 10298 10299 Implemented checksums in the owncloud storage driver. 10300 10301 https://github.com/cs3org/reva/pull/1629 10302 10303 * Enhancement #1528: Port drone pipeline definition to starlark 10304 10305 Having the pipeline definition as a starlark script instead of plain yaml greatly improves the 10306 flexibility and allows for removing lots of duplicated definitions. 10307 10308 https://github.com/cs3org/reva/pull/1528 10309 10310 * Enhancement #110: Add signature authentication for public links 10311 10312 Implemented signature authentication for public links in addition to the existing password 10313 authentication. This allows web clients to efficiently download files from password 10314 protected public shares. 10315 10316 https://github.com/cs3org/cs3apis/issues/110 10317 https://github.com/cs3org/reva/pull/1590 10318 10319 * Enhancement #1495: SQL driver for the publicshare service 10320 10321 https://github.com/cs3org/reva/pull/1495 10322 10323 * Enhancement #1588: Make the additional info attribute for shares configurable 10324 10325 AdditionalInfoAttribute can be configured via the `additional_info_attribute` key in the 10326 form of a Go template string. If not explicitly set, the default value is `{{.Mail}}` 10327 10328 https://github.com/cs3org/reva/pull/1588 10329 10330 * Enhancement #1595: Add site account registration panel 10331 10332 This PR adds a site account registration panel to the site accounts service. It also removes 10333 site registration from the xcloud metrics driver. 10334 10335 https://github.com/cs3org/reva/pull/1595 10336 10337 * Enhancement #1506: Site Accounts service for API keys 10338 10339 This update adds a new service to Reva that handles site accounts creation and management. 10340 Registered sites can be assigned an API key through a simple web interface which is also part of 10341 this service. This API key can then be used to identify a user and his/her associated (vendor or 10342 partner) site. 10343 10344 Furthermore, Mentix was extended to make use of this new service. This way, all sites now have a 10345 stable and unique site ID that not only avoids ID collisions but also introduces a new layer of 10346 security (i.e., sites can only be modified or removed using the correct API key). 10347 10348 https://github.com/cs3org/reva/pull/1506 10349 10350 * Enhancement #116: Enhance storage registry with virtual views and regular expressions 10351 10352 Add the functionality to the storage registry service to handle user requests for references 10353 which can span across multiple storage providers, particularly useful for cases where 10354 directories are sharded across providers or virtual views are expected. 10355 10356 https://github.com/cs3org/cs3apis/pull/116 10357 https://github.com/cs3org/reva/pull/1570 10358 10359 * Enhancement #1513: Add stubs for storage spaces manipulation 10360 10361 This PR adds stubs for the storage space CRUD methods in the storageprovider service and makes 10362 the expired shares janitor configureable in the publicshares SQL driver. 10363 10364 https://github.com/cs3org/reva/pull/1513 10365 10366 Changelog for reva 1.6.0 (2021-02-16) 10367 ======================================= 10368 10369 The following sections list the changes in reva 1.6.0 relevant to 10370 reva users. The changes are ordered by importance. 10371 10372 Summary 10373 ------- 10374 10375 * Fix #1425: Align href URL encoding with oc10 10376 * Fix #1461: Fix public link webdav permissions 10377 * Fix #1457: Cloning of internal mesh data lost some values 10378 * Fix #1429: Purge non-empty dirs from trash-bin 10379 * Fix #1408: Get error status from trash-bin response 10380 * Enh #1451: Render additional share with in ocs sharing api 10381 * Enh #1424: We categorized the list of expected failures 10382 * Enh #1434: CERNBox REST driver for groupprovider service 10383 * Enh #1400: Checksum support 10384 * Enh #1431: Update npm packages to fix vulnerabilities 10385 * Enh #1415: Indicate in EOS containers that TUS is not supported 10386 * Enh #1402: Parse EOS sys ACLs to generate CS3 resource permissions 10387 * Enh #1477: Set quota when creating home directory in EOS 10388 * Enh #1416: Use updated etag of home directory even if it is cached 10389 * Enh #1478: Enhance error handling for grappa REST drivers 10390 * Enh #1453: Add functionality to share resources with groups 10391 * Enh #99: Add stubs and manager for groupprovider service 10392 * Enh #1462: Hash public share passwords 10393 * Enh #1464: LDAP driver for the groupprovider service 10394 * Enh #1430: Capture non-deterministic behavior on storages 10395 * Enh #1456: Fetch user groups in OIDC and LDAP backend 10396 * Enh #1429: Add s3ng storage driver, storing blobs in a s3-compatible blobstore 10397 * Enh #1467: Align default location for xrdcopy binary 10398 10399 Details 10400 ------- 10401 10402 * Bugfix #1425: Align href URL encoding with oc10 10403 10404 We now use the same percent encoding for URLs in WebDAV href properties as ownCloud 10. 10405 10406 https://github.com/owncloud/ocis/issues/1120 10407 https://github.com/owncloud/ocis/issues/1296 10408 https://github.com/owncloud/ocis/issues/1307 10409 https://github.com/cs3org/reva/pull/1425 10410 https://github.com/cs3org/reva/pull/1472 10411 10412 * Bugfix #1461: Fix public link webdav permissions 10413 10414 We now correctly render `oc:permissions` on the root collection of a publicly shared folder 10415 when it has more than read permissions. 10416 10417 https://github.com/cs3org/reva/pull/1461 10418 10419 * Bugfix #1457: Cloning of internal mesh data lost some values 10420 10421 This update fixes a bug in Mentix that caused some (non-critical) values to be lost during data 10422 cloning that happens internally. 10423 10424 https://github.com/cs3org/reva/pull/1457 10425 10426 * Bugfix #1429: Purge non-empty dirs from trash-bin 10427 10428 This wasn't possible before if the directory was not empty 10429 10430 https://github.com/cs3org/reva/pull/1429 10431 10432 * Bugfix #1408: Get error status from trash-bin response 10433 10434 Previously the status code was gathered from the wrong response. 10435 10436 https://github.com/cs3org/reva/pull/1408 10437 10438 * Enhancement #1451: Render additional share with in ocs sharing api 10439 10440 Recipients can now be distinguished by their email, which is rendered as additional info in the 10441 ocs api for share and file owners as well as share recipients. 10442 10443 https://github.com/owncloud/ocis/issues/1190 10444 https://github.com/cs3org/reva/pull/1451 10445 10446 * Enhancement #1424: We categorized the list of expected failures 10447 10448 We categorized all expected failures into _File_ (Basic file management like up and download, 10449 move, copy, properties, trash, versions and chunking), _Sync_ (Synchronization features 10450 like etag propagation, setting mtime and locking files), _Share_ (File and sync features in a 10451 shared scenario), _User management_ (User and group management features) and _Other_ (API, 10452 search, favorites, config, capabilities, not existing endpoints, CORS and others). The 10453 [Review and fix the tests that have sharing step to work with 10454 ocis](https://github.com/owncloud/core/issues/38006) reference has been removed, as we 10455 now have the sharing category 10456 10457 https://github.com/owncloud/core/issues/38006 10458 https://github.com/cs3org/reva/pull/1424 10459 10460 * Enhancement #1434: CERNBox REST driver for groupprovider service 10461 10462 https://github.com/cs3org/reva/pull/1434 10463 10464 * Enhancement #1400: Checksum support 10465 10466 We now support checksums on file uploads and PROPFIND results. On uploads, the ocdav service 10467 now forwards the `OC-Checksum` (and the similar TUS `Upload-Checksum`) header to the storage 10468 provider. We added an internal http status code that allows storage drivers to return checksum 10469 errors. On PROPFINDs, ocdav now renders the `<oc:checksum>` header in a bug compatible way for 10470 oc10 backward compatibility with existing clients. Finally, GET and HEAD requests now return 10471 the `OC-Checksum` header. 10472 10473 https://github.com/owncloud/ocis/issues/1291 10474 https://github.com/owncloud/ocis/issues/1316 10475 https://github.com/cs3org/reva/pull/1400 10476 https://github.com/owncloud/core/pull/38304 10477 10478 * Enhancement #1431: Update npm packages to fix vulnerabilities 10479 10480 https://github.com/cs3org/reva/pull/1431 10481 10482 * Enhancement #1415: Indicate in EOS containers that TUS is not supported 10483 10484 The OCDAV propfind response previously hardcoded the TUS headers due to which clients such as 10485 phoenix used the TUS protocol for uploads, which EOS doesn't support. Now we pass this property 10486 as an opaque entry in the containers metadata. 10487 10488 https://github.com/cs3org/reva/pull/1415 10489 10490 * Enhancement #1402: Parse EOS sys ACLs to generate CS3 resource permissions 10491 10492 https://github.com/cs3org/reva/pull/1402 10493 10494 * Enhancement #1477: Set quota when creating home directory in EOS 10495 10496 https://github.com/cs3org/reva/pull/1477 10497 10498 * Enhancement #1416: Use updated etag of home directory even if it is cached 10499 10500 We cache the home directory and shares folder etags as calculating these is an expensive 10501 process. But if these directories were updated after the previously calculated etag was 10502 cached, we can ignore this calculation and directly return the new one. 10503 10504 https://github.com/cs3org/reva/pull/1416 10505 10506 * Enhancement #1478: Enhance error handling for grappa REST drivers 10507 10508 https://github.com/cs3org/reva/pull/1478 10509 10510 * Enhancement #1453: Add functionality to share resources with groups 10511 10512 https://github.com/cs3org/reva/pull/1453 10513 10514 * Enhancement #99: Add stubs and manager for groupprovider service 10515 10516 Recently, there was a separation of concerns with regard to users and groups in CS3APIs. This PR 10517 adds the required stubs and drivers for the group manager. 10518 10519 https://github.com/cs3org/cs3apis/pull/99 10520 https://github.com/cs3org/cs3apis/pull/102 10521 https://github.com/cs3org/reva/pull/1358 10522 10523 * Enhancement #1462: Hash public share passwords 10524 10525 The share passwords were only base64 encoded. Added hashing using bcrypt with configurable 10526 hash cost. 10527 10528 https://github.com/cs3org/reva/pull/1462 10529 10530 * Enhancement #1464: LDAP driver for the groupprovider service 10531 10532 https://github.com/cs3org/reva/pull/1464 10533 10534 * Enhancement #1430: Capture non-deterministic behavior on storages 10535 10536 As a developer creating/maintaining a storage driver I want to be able to validate the 10537 atomicity of all my storage driver operations. * Test for: Start 2 uploads, pause the first one, 10538 let the second one finish first, resume the first one at some point in time. Both uploads should 10539 finish. Needs to result in 2 versions, last finished is the most recent version. * Test for: 10540 Start 2 MKCOL requests with the same path, one needs to fail. 10541 10542 https://github.com/cs3org/reva/pull/1430 10543 10544 * Enhancement #1456: Fetch user groups in OIDC and LDAP backend 10545 10546 https://github.com/cs3org/reva/pull/1456 10547 10548 * Enhancement #1429: Add s3ng storage driver, storing blobs in a s3-compatible blobstore 10549 10550 We added a new storage driver (s3ng) which stores the file metadata on a local filesystem 10551 (reusing the decomposed filesystem of the ocis driver) and the actual content as blobs in any 10552 s3-compatible blobstore. 10553 10554 https://github.com/cs3org/reva/pull/1429 10555 10556 * Enhancement #1467: Align default location for xrdcopy binary 10557 10558 https://github.com/cs3org/reva/pull/1467 10559 10560 Changelog for reva 1.5.1 (2021-01-19) 10561 ======================================= 10562 10563 The following sections list the changes in reva 1.5.1 relevant to 10564 reva users. The changes are ordered by importance. 10565 10566 Summary 10567 ------- 10568 10569 * Fix #1401: Use the user in request for deciding the layout for non-home DAV requests 10570 * Fix #1413: Re-include the '.git' dir in the Docker images to pass the version tag 10571 * Fix #1399: Fix ocis trash-bin purge 10572 * Enh #1397: Bump the Copyright date to 2021 10573 * Enh #1398: Support site authorization status in Mentix 10574 * Enh #1393: Allow setting favorites, mtime and a temporary etag 10575 * Enh #1403: Support remote cloud gathering metrics 10576 10577 Details 10578 ------- 10579 10580 * Bugfix #1401: Use the user in request for deciding the layout for non-home DAV requests 10581 10582 For the incoming /dav/files/userID requests, we have different namespaces depending on 10583 whether the request is for the logged-in user's namespace or not. Since in the storage drivers, 10584 we specify the layout depending only on the user whose resources are to be accessed, this fails 10585 when a user wants to access another user's namespace when the storage provider depends on the 10586 logged in user's namespace. This PR fixes that. 10587 10588 For example, consider the following case. The owncloud fs uses a layout {{substr 0 1 10589 .Id.OpaqueId}}/{{.Id.OpaqueId}}. The user einstein sends a request to access a resource 10590 shared with him, say /dav/files/marie/abcd, which should be allowed. However, based on the 10591 way we applied the layout, there's no way in which this can be translated to /m/marie/. 10592 10593 https://github.com/cs3org/reva/pull/1401 10594 10595 * Bugfix #1413: Re-include the '.git' dir in the Docker images to pass the version tag 10596 10597 And git SHA to the release tool. 10598 10599 https://github.com/cs3org/reva/pull/1413 10600 10601 * Bugfix #1399: Fix ocis trash-bin purge 10602 10603 Fixes the empty trash-bin functionality for ocis-storage 10604 10605 https://github.com/owncloud/product/issues/254 10606 https://github.com/cs3org/reva/pull/1399 10607 10608 * Enhancement #1397: Bump the Copyright date to 2021 10609 10610 https://github.com/cs3org/reva/pull/1397 10611 10612 * Enhancement #1398: Support site authorization status in Mentix 10613 10614 This enhancement adds support for a site authorization status to Mentix. This way, sites 10615 registered via a web app can now be excluded until authorized manually by an administrator. 10616 10617 Furthermore, Mentix now sets the scheme for Prometheus targets. This allows us to also support 10618 monitoring of sites that do not support the default HTTPS scheme. 10619 10620 https://github.com/cs3org/reva/pull/1398 10621 10622 * Enhancement #1393: Allow setting favorites, mtime and a temporary etag 10623 10624 We now let the ocis driver persist favorites, set temporary etags and the mtime as arbitrary 10625 metadata. 10626 10627 https://github.com/owncloud/ocis/issues/567 10628 https://github.com/cs3org/reva/issues/1394 10629 https://github.com/cs3org/reva/pull/1393 10630 10631 * Enhancement #1403: Support remote cloud gathering metrics 10632 10633 The current metrics package can only gather metrics either from json files. With this feature, 10634 the metrics can be gathered polling the http endpoints exposed by the owncloud/nextcloud 10635 sciencemesh apps. 10636 10637 https://github.com/cs3org/reva/pull/1403 10638 10639 Changelog for reva 1.5.0 (2021-01-12) 10640 ======================================= 10641 10642 The following sections list the changes in reva 1.5.0 relevant to 10643 reva users. The changes are ordered by importance. 10644 10645 Summary 10646 ------- 10647 10648 * Fix #1385: Run changelog check only if there are changes in the code 10649 * Fix #1333: Delete sdk unit tests 10650 * Fix #1342: Dav endpoint routing to home storage when request is remote.php/dav/files 10651 * Fix #1338: Fix fd leaks 10652 * Fix #1343: Fix ocis move 10653 * Fix #551: Fix purging deleted files with the ocis storage 10654 * Fix #863: Fix dav api for trashbin 10655 * Fix #204: Fix the ocs share with me response 10656 * Fix #1351: Fix xattr.Remove error check for macOS 10657 * Fix #1320: Do not panic on remote.php/dav/files/ 10658 * Fix #1379: Make Jaeger agent usable 10659 * Fix #1331: Fix capabilities response for multiple client versions 10660 * Fix #1281: When sharing via ocs look up user by username 10661 * Fix #1334: Handle removal of public shares by token or ID 10662 * Chg #990: Replace the user uuid with the username in ocs share responses 10663 * Enh #1350: Add auth protocol based on user agent 10664 * Enh #1362: Mark 'store-dev-release' CI step as failed on 4XX/5XX errors 10665 * Enh #1364: Remove expired Link on Get 10666 * Enh #1340: Add cache to store UID to UserID mapping in EOS 10667 * Enh #1154: Add support for the protobuf interface to eos metadata 10668 * Enh #1154: Merge-rebase from master 10/11/2020 10669 * Enh #1359: Add cache for calculated etags for home and shares directory 10670 * Enh #1321: Add support for multiple data transfer protocols 10671 * Enh #1324: Log expected errors with debug level 10672 * Enh #1351: Map errtypes to status 10673 * Enh #1347: Support property to enable health checking on a service 10674 * Enh #1332: Add import support to Mentix 10675 * Enh #1371: Use self-hosted Drone CI 10676 * Enh #1354: Map bad request and unimplement to http status codes 10677 * Enh #929: Include share types in ocs propfind responses 10678 * Enh #1328: Add CLI commands for public shares 10679 * Enh #1388: Support range header in GET requests 10680 * Enh #1361: Remove expired Link on Access 10681 * Enh #1386: Docker image for cs3org/revad:VERSION-eos 10682 * Enh #1368: Calculate and expose actual file permission set 10683 10684 Details 10685 ------- 10686 10687 * Bugfix #1385: Run changelog check only if there are changes in the code 10688 10689 https://github.com/cs3org/reva/pull/1385 10690 10691 * Bugfix #1333: Delete sdk unit tests 10692 10693 These depend on a remote server running reva and thus fail in case of version mismatches. 10694 10695 https://github.com/cs3org/reva/pull/1333 10696 10697 * Bugfix #1342: Dav endpoint routing to home storage when request is remote.php/dav/files 10698 10699 There was a regression in which we were not routing correctly to the right storage depending on 10700 the url. 10701 10702 https://github.com/cs3org/reva/pull/1342 10703 10704 * Bugfix #1338: Fix fd leaks 10705 10706 There were some left over open file descriptors on simple.go. 10707 10708 https://github.com/cs3org/reva/pull/1338 10709 10710 * Bugfix #1343: Fix ocis move 10711 10712 Use the old node id to build the target path for xattr updates. 10713 10714 https://github.com/owncloud/ocis/issues/975 10715 https://github.com/cs3org/reva/pull/1343 10716 10717 * Bugfix #551: Fix purging deleted files with the ocis storage 10718 10719 The ocis storage could load the owner information of a deleted file. This caused the storage to 10720 not be able to purge deleted files. 10721 10722 https://github.com/owncloud/ocis/issues/551 10723 10724 * Bugfix #863: Fix dav api for trashbin 10725 10726 The api was comparing the requested username to the userid. 10727 10728 https://github.com/owncloud/ocis/issues/863 10729 10730 * Bugfix #204: Fix the ocs share with me response 10731 10732 The path of the files shared with me was incorrect. 10733 10734 https://github.com/owncloud/product/issues/204 10735 https://github.com/cs3org/reva/pull/1346 10736 10737 * Bugfix #1351: Fix xattr.Remove error check for macOS 10738 10739 Previously, we checked the xattr.Remove error only for linux systems. Now macOS is checked 10740 also 10741 10742 https://github.com/cs3org/reva/pull/1351 10743 10744 * Bugfix #1320: Do not panic on remote.php/dav/files/ 10745 10746 Currently requests to /remote.php/dav/files/ result in panics since we cannot longer strip 10747 the user + destination from the url. This fixes the server response code and adds an error body to 10748 the response. 10749 10750 https://github.com/cs3org/reva/pull/1320 10751 10752 * Bugfix #1379: Make Jaeger agent usable 10753 10754 Previously, you could not use tracing with jaeger agent because the tracing connector is 10755 always used instead of the tracing endpoint. 10756 10757 This PR removes the defaults for collector and tracing endpoint. 10758 10759 https://github.com/cs3org/reva/pull/1379 10760 10761 * Bugfix #1331: Fix capabilities response for multiple client versions 10762 10763 https://github.com/cs3org/reva/pull/1331 10764 10765 * Bugfix #1281: When sharing via ocs look up user by username 10766 10767 The ocs api returns usernames when listing share recipients, so the lookup when creating the 10768 share needs to search the usernames and not the userid. 10769 10770 https://github.com/cs3org/reva/pull/1281 10771 10772 * Bugfix #1334: Handle removal of public shares by token or ID 10773 10774 Previously different drivers handled removing public shares using different means, either 10775 the token or the ID. Now, both the drivers support both these methods. 10776 10777 https://github.com/cs3org/reva/pull/1334 10778 10779 * Change #990: Replace the user uuid with the username in ocs share responses 10780 10781 The ocs api should not send the users uuid. Replaced the uuid with the username. 10782 10783 https://github.com/owncloud/ocis/issues/990 10784 https://github.com/cs3org/reva/pull/1375 10785 10786 * Enhancement #1350: Add auth protocol based on user agent 10787 10788 Previously, all available credential challenges are given to the client, for example, basic 10789 auth, bearer token, etc ... Different clients have different priorities to use one method or 10790 another, and before it was not possible to force a client to use one method without having a side 10791 effect on other clients. 10792 10793 This PR adds the functionality to target a specific auth protocol based on the user agent HTTP 10794 header. 10795 10796 https://github.com/cs3org/reva/pull/1350 10797 10798 * Enhancement #1362: Mark 'store-dev-release' CI step as failed on 4XX/5XX errors 10799 10800 Prevent the errors while storing new 'daily' releases from going unnoticed on the CI. 10801 10802 https://github.com/cs3org/reva/pull/1362 10803 10804 * Enhancement #1364: Remove expired Link on Get 10805 10806 There is the scenario in which a public link has expired but ListPublicLink has not run, 10807 accessing a technically expired public share is still possible. 10808 10809 https://github.com/cs3org/reva/pull/1364 10810 10811 * Enhancement #1340: Add cache to store UID to UserID mapping in EOS 10812 10813 Previously, we used to send an RPC to the user provider service for every lookup of user IDs from 10814 the UID stored in EOS. This PR adds an in-memory lock-protected cache to store this mapping. 10815 10816 https://github.com/cs3org/reva/pull/1340 10817 10818 * Enhancement #1154: Add support for the protobuf interface to eos metadata 10819 10820 https://github.com/cs3org/reva/pull/1154 10821 10822 * Enhancement #1154: Merge-rebase from master 10/11/2020 10823 10824 https://github.com/cs3org/reva/pull/1154 10825 10826 * Enhancement #1359: Add cache for calculated etags for home and shares directory 10827 10828 Since we store the references in the shares directory instead of actual resources, we need to 10829 calculate the etag on every list/stat call. This is rather expensive so adding a cache would 10830 help to a great extent with regard to the performance. 10831 10832 https://github.com/cs3org/reva/pull/1359 10833 10834 * Enhancement #1321: Add support for multiple data transfer protocols 10835 10836 Previously, we had to configure which data transfer protocol to use in the dataprovider 10837 service. A previous PR added the functionality to redirect requests to different handlers 10838 based on the request method but that would lead to conflicts if multiple protocols don't 10839 support mutually exclusive sets of requests. This PR adds the functionality to have multiple 10840 such handlers simultaneously and the client can choose which protocol to use. 10841 10842 https://github.com/cs3org/reva/pull/1321 10843 https://github.com/cs3org/reva/pull/1285/ 10844 10845 * Enhancement #1324: Log expected errors with debug level 10846 10847 While trying to download a non existing file and reading a non existing attribute are 10848 technically an error they are to be expected and nothing an admin can or even should act upon. 10849 10850 https://github.com/cs3org/reva/pull/1324 10851 10852 * Enhancement #1351: Map errtypes to status 10853 10854 When mapping errtypes to grpc statuses we now also map bad request and not implemented / 10855 unsupported cases in the gateway storageprovider. 10856 10857 https://github.com/cs3org/reva/pull/1351 10858 10859 * Enhancement #1347: Support property to enable health checking on a service 10860 10861 This update introduces a new service property called `ENABLE_HEALTH_CHECKS` that must be 10862 explicitly set to `true` if a service should be checked for its health status. This allows us to 10863 only enable these checks for partner sites only, skipping vendor sites. 10864 10865 https://github.com/cs3org/reva/pull/1347 10866 10867 * Enhancement #1332: Add import support to Mentix 10868 10869 This update adds import support to Mentix, transforming it into a **Mesh Entity Exchanger**. 10870 To properly support vendor site management, a new connector that works on a local file has been 10871 added as well. 10872 10873 https://github.com/cs3org/reva/pull/1332 10874 10875 * Enhancement #1371: Use self-hosted Drone CI 10876 10877 Previously, we used the drone cloud to run the CI for the project. Due to unexpected and sudden 10878 stop of the service for the cs3org we decided to self-host it. 10879 10880 https://github.com/cs3org/reva/pull/1371 10881 10882 * Enhancement #1354: Map bad request and unimplement to http status codes 10883 10884 We now return a 400 bad request when a grpc call fails with an invalid argument status and a 501 not 10885 implemented when it fails with an unimplemented status. This prevents 500 errors when a user 10886 tries to add resources to the Share folder or a storage does not implement an action. 10887 10888 https://github.com/cs3org/reva/pull/1354 10889 10890 * Enhancement #929: Include share types in ocs propfind responses 10891 10892 Added the share types to the ocs propfind response when a resource has been shared. 10893 10894 https://github.com/owncloud/ocis/issues/929 10895 https://github.com/cs3org/reva/pull/1329 10896 10897 * Enhancement #1328: Add CLI commands for public shares 10898 10899 https://github.com/cs3org/reva/pull/1328 10900 10901 * Enhancement #1388: Support range header in GET requests 10902 10903 To allow resuming a download we now support GET requests with a range header. 10904 10905 https://github.com/owncloud/ocis-reva/issues/12 10906 https://github.com/cs3org/reva/pull/1388 10907 10908 * Enhancement #1361: Remove expired Link on Access 10909 10910 Since there is no background jobs scheduled to wipe out expired resources, for the time being 10911 public links are going to be removed on a "on demand" basis, meaning whenever there is an API call 10912 that access the list of shares for a given resource, we will check whether the share is expired 10913 and delete it if so. 10914 10915 https://github.com/cs3org/reva/pull/1361 10916 10917 * Enhancement #1386: Docker image for cs3org/revad:VERSION-eos 10918 10919 Based on eos:c8_4.8.15 (Centos8, version 4.8.15). To be used when the Reva daemon needs IPC 10920 with xrootd/eos via stdin/out. 10921 10922 https://github.com/cs3org/reva/pull/1386 10923 https://github.com/cs3org/reva/pull/1389 10924 10925 * Enhancement #1368: Calculate and expose actual file permission set 10926 10927 Instead of hardcoding the permissions set for every file and folder to ListContainer:true, 10928 CreateContainer:true and always reporting the hardcoded string WCKDNVR for the WebDAV 10929 permissions we now aggregate the actual cs3 resource permission set in the storage drivers and 10930 correctly map them to ocs permissions and webdav permissions using a common role struct that 10931 encapsulates the mapping logic. 10932 10933 https://github.com/owncloud/ocis/issues/552 10934 https://github.com/owncloud/ocis/issues/762 10935 https://github.com/owncloud/ocis/issues/763 10936 https://github.com/owncloud/ocis/issues/893 10937 https://github.com/owncloud/ocis/issues/1126 10938 https://github.com/owncloud/ocis-reva/issues/47 10939 https://github.com/owncloud/ocis-reva/issues/315 10940 https://github.com/owncloud/ocis-reva/issues/316 10941 https://github.com/owncloud/product/issues/270 10942 https://github.com/cs3org/reva/pull/1368 10943 10944 Changelog for reva 1.4.0 (2020-11-17) 10945 ======================================= 10946 10947 The following sections list the changes in reva 1.4.0 relevant to 10948 reva users. The changes are ordered by importance. 10949 10950 Summary 10951 ------- 10952 10953 * Fix #1316: Fix listing shares for nonexisting path 10954 * Fix #1274: Let the gateway filter invalid references 10955 * Fix #1269: Handle more eos errors 10956 * Fix #1297: Check the err and the response status code 10957 * Fix #1260: Fix file descriptor leak on ocdav put handler 10958 * Fix #1253: Upload file to storage provider after assembling chunks 10959 * Fix #1264: Fix etag propagation in ocis driver 10960 * Fix #1255: Check current node when iterating over path segments 10961 * Fix #1265: Stop setting propagation xattr on new files 10962 * Fix #260: Filter share with me requests 10963 * Fix #1317: Prevent nil pointer when listing shares 10964 * Fix #1259: Fix propfind response code on forbidden files 10965 * Fix #1294: Fix error type in read node when file was not found 10966 * Fix #1258: Update share grants on share update 10967 * Enh #1257: Add a test user to all sites 10968 * Enh #1234: Resolve a WOPI bridge appProviderURL by extracting its redirect 10969 * Enh #1239: Add logic for finding groups to user provider service 10970 * Enh #1280: Add a Reva SDK 10971 * Enh #1237: Setup of grpc transfer service and cli 10972 * Enh #1224: Add SQL driver for share manager 10973 * Enh #1285: Refactor the uploading files workflow from various clients 10974 * Enh #1233: Add support for custom CodiMD mimetype 10975 10976 Details 10977 ------- 10978 10979 * Bugfix #1316: Fix listing shares for nonexisting path 10980 10981 When trying to list shares for a not existing file or folder the ocs sharing implementation no 10982 longer responds with the wrong status code and broken xml. 10983 10984 https://github.com/cs3org/reva/pull/1316 10985 10986 * Bugfix #1274: Let the gateway filter invalid references 10987 10988 We now filter deleted and unshared entries from the response when listing the shares folder of a 10989 user. 10990 10991 https://github.com/cs3org/reva/pull/1274 10992 10993 * Bugfix #1269: Handle more eos errors 10994 10995 We now treat E2BIG, EACCES as a permission error, which occur, eg. when acl checks fail and 10996 return a permission denied error. 10997 10998 https://github.com/cs3org/reva/pull/1269 10999 11000 * Bugfix #1297: Check the err and the response status code 11001 11002 The publicfile handler needs to check the response status code to return proper not pound and 11003 permission errors in the webdav api. 11004 11005 https://github.com/cs3org/reva/pull/1297 11006 11007 * Bugfix #1260: Fix file descriptor leak on ocdav put handler 11008 11009 File descriptors on the ocdav service, especially on the put handler was leaking http 11010 connections. This PR addresses this. 11011 11012 https://github.com/cs3org/reva/pull/1260 11013 11014 * Bugfix #1253: Upload file to storage provider after assembling chunks 11015 11016 In the PUT handler for chunked uploads in ocdav, we store the individual chunks in temporary 11017 file but do not write the assembled file to storage. This PR fixes that. 11018 11019 https://github.com/cs3org/reva/pull/1253 11020 11021 * Bugfix #1264: Fix etag propagation in ocis driver 11022 11023 We now use a new synctime timestamp instead of trying to read the mtime to avoid race conditions 11024 when the stat request happens too quickly. 11025 11026 https://github.com/owncloud/product/issues/249 11027 https://github.com/cs3org/reva/pull/1264 11028 11029 * Bugfix #1255: Check current node when iterating over path segments 11030 11031 When checking permissions we were always checking the leaf instead of using the current node 11032 while iterating over path segments. 11033 11034 https://github.com/cs3org/reva/pull/1255 11035 11036 * Bugfix #1265: Stop setting propagation xattr on new files 11037 11038 We no longer set the propagation flag on a file because it is only evaluated for folders anyway. 11039 11040 https://github.com/cs3org/reva/pull/1265 11041 11042 * Bugfix #260: Filter share with me requests 11043 11044 The OCS API now properly filters share with me requests by path and by share status (pending, 11045 accepted, rejected, all) 11046 11047 https://github.com/owncloud/ocis-reva/issues/260 11048 https://github.com/owncloud/ocis-reva/issues/311 11049 https://github.com/cs3org/reva/pull/1301 11050 11051 * Bugfix #1317: Prevent nil pointer when listing shares 11052 11053 We now handle cases where the grpc connection failed correctly by no longer trying to access the 11054 response status. 11055 11056 https://github.com/cs3org/reva/pull/1317 11057 11058 * Bugfix #1259: Fix propfind response code on forbidden files 11059 11060 When executing a propfind to a resource owned by another user the service would respond with a 11061 HTTP 403. In ownCloud 10 the response was HTTP 207. This change sets the response code to HTTP 207 11062 to stay backwards compatible. 11063 11064 https://github.com/cs3org/reva/pull/1259 11065 11066 * Bugfix #1294: Fix error type in read node when file was not found 11067 11068 The method ReadNode in the ocis storage didn't return the error type NotFound when a file was not 11069 found. 11070 11071 https://github.com/cs3org/reva/pull/1294 11072 11073 * Bugfix #1258: Update share grants on share update 11074 11075 When a share was updated the share information in the share manager was updated but the grants 11076 set by the storage provider were not. 11077 11078 https://github.com/cs3org/reva/pull/1258 11079 11080 * Enhancement #1257: Add a test user to all sites 11081 11082 For health monitoring of all mesh sites, we need a special user account that is present on every 11083 site. This PR adds such a user to each users-*.json file so that every site will have the same test 11084 user credentials. 11085 11086 https://github.com/cs3org/reva/pull/1257 11087 11088 * Enhancement #1234: Resolve a WOPI bridge appProviderURL by extracting its redirect 11089 11090 Applications served by the WOPI bridge (CodiMD for the time being) require an extra 11091 redirection as the WOPI bridge itself behaves like a user app. This change returns to the client 11092 the redirected URL from the WOPI bridge, which is the real application URL. 11093 11094 https://github.com/cs3org/reva/pull/1234 11095 11096 * Enhancement #1239: Add logic for finding groups to user provider service 11097 11098 To create shares with user groups, the functionality for searching for these based on a pattern 11099 is needed. This PR adds that. 11100 11101 https://github.com/cs3org/reva/pull/1239 11102 11103 * Enhancement #1280: Add a Reva SDK 11104 11105 A Reva SDK has been added to make working with a remote Reva instance much easier by offering a 11106 high-level API that hides all the underlying details of the CS3API. 11107 11108 https://github.com/cs3org/reva/pull/1280 11109 11110 * Enhancement #1237: Setup of grpc transfer service and cli 11111 11112 The grpc transfer service and cli for it. 11113 11114 https://github.com/cs3org/reva/pull/1237 11115 11116 * Enhancement #1224: Add SQL driver for share manager 11117 11118 This PR adds an SQL driver for the shares manager which expects a schema equivalent to the one 11119 used in production for CERNBox. 11120 11121 https://github.com/cs3org/reva/pull/1224 11122 11123 * Enhancement #1285: Refactor the uploading files workflow from various clients 11124 11125 Previously, we were implementing the tus client logic in the ocdav service, leading to 11126 restricting the whole of tus logic to the internal services. This PR refactors that workflow to 11127 accept incoming requests following the tus protocol while using simpler transmission 11128 internally. 11129 11130 https://github.com/cs3org/reva/pull/1285 11131 https://github.com/cs3org/reva/pull/1314 11132 11133 * Enhancement #1233: Add support for custom CodiMD mimetype 11134 11135 The new mimetype is associated with the `.zmd` file extension. The corresponding 11136 configuration is associated with the storageprovider. 11137 11138 https://github.com/cs3org/reva/pull/1233 11139 https://github.com/cs3org/reva/pull/1284 11140 11141 Changelog for reva 1.3.0 (2020-10-08) 11142 ======================================= 11143 11144 The following sections list the changes in reva 1.3.0 relevant to 11145 reva users. The changes are ordered by importance. 11146 11147 Summary 11148 ------- 11149 11150 * Fix #1140: Call the gateway stat method from appprovider 11151 * Fix #1170: Up and download of file shares 11152 * Fix #1177: Fix ocis move 11153 * Fix #1178: Fix litmus failing on ocis storage 11154 * Fix #237: Fix missing quotes on OCIS-Storage 11155 * Fix #1210: No longer swallow permissions errors in the gateway 11156 * Fix #1183: Handle eos EPERM as permission denied 11157 * Fix #1206: No longer swallow permissions errors 11158 * Fix #1207: No longer swallow permissions errors in ocdav 11159 * Fix #1161: Cache display names in ocs service 11160 * Fix #1216: Add error handling for invalid references 11161 * Enh #1205: Allow using the username when accessing the users home 11162 * Enh #1131: Use updated cato to display nested package config in parent docs 11163 * Enh #1213: Check permissions in ocis driver 11164 * Enh #1202: Check permissions in owncloud driver 11165 * Enh #1228: Add GRPC stubs for CreateSymlink method 11166 * Enh #1174: Add logic in EOS FS for maintaining same inode across file versions 11167 * Enh #1142: Functionality to map home directory to different storage providers 11168 * Enh #1190: Add Blackbox Exporter support to Mentix 11169 * Enh #1229: New gateway datatx service 11170 * Enh #1225: Allow setting the owner when using the ocis driver 11171 * Enh #1180: Introduce ocis driver treetime accounting 11172 * Enh #1208: Calculate etags on-the-fly for shares directory and home folder 11173 11174 Details 11175 ------- 11176 11177 * Bugfix #1140: Call the gateway stat method from appprovider 11178 11179 The appprovider service used to directly pass the stat request to the storage provider 11180 bypassing the gateway, which resulted in errors while handling share children as they are 11181 resolved in the gateway path. 11182 11183 https://github.com/cs3org/reva/pull/1140 11184 11185 * Bugfix #1170: Up and download of file shares 11186 11187 The shared folder logic in the gateway storageprovider was not allowing file up and downloads 11188 for single file shares. We now check if the reference is actually a file to determine if up / 11189 download should be allowed. 11190 11191 https://github.com/cs3org/reva/pull/1170 11192 11193 * Bugfix #1177: Fix ocis move 11194 11195 When renaming a file we updating the name attribute on the wrong node, causing the path 11196 construction to use the wrong name. This fixes the litmus move_coll test. 11197 11198 https://github.com/cs3org/reva/pull/1177 11199 11200 * Bugfix #1178: Fix litmus failing on ocis storage 11201 11202 We now ignore the `no data available` error when removing a non existing metadata attribute, 11203 which is ok because we are trying to delete it anyway. 11204 11205 https://github.com/cs3org/reva/issues/1178 11206 https://github.com/cs3org/reva/pull/1179 11207 11208 * Bugfix #237: Fix missing quotes on OCIS-Storage 11209 11210 Etags have to be enclosed in quotes ". Return correct etags on OCIS-Storage. 11211 11212 https://github.com/owncloud/product/issues/237 11213 https://github.com/cs3org/reva/pull/1232 11214 11215 * Bugfix #1210: No longer swallow permissions errors in the gateway 11216 11217 The gateway is no longer ignoring permissions errors. It will now check the status for 11218 `rpc.Code_CODE_PERMISSION_DENIED` codes and report them properly using 11219 `status.NewPermissionDenied` or `status.NewInternal` instead of reusing the original 11220 response status. 11221 11222 https://github.com/cs3org/reva/pull/1210 11223 11224 * Bugfix #1183: Handle eos EPERM as permission denied 11225 11226 We now treat EPERM errors, which occur, eg. when acl checks fail and return a permission denied 11227 error. 11228 11229 https://github.com/cs3org/reva/pull/1183 11230 11231 * Bugfix #1206: No longer swallow permissions errors 11232 11233 The storageprovider is no longer ignoring permissions errors. It will now report them 11234 properly using `status.NewPermissionDenied(...)` instead of `status.NewInternal(...)` 11235 11236 https://github.com/cs3org/reva/pull/1206 11237 11238 * Bugfix #1207: No longer swallow permissions errors in ocdav 11239 11240 The ocdav api is no longer ignoring permissions errors. It will now check the status for 11241 `rpc.Code_CODE_PERMISSION_DENIED` codes and report them properly using 11242 `http.StatusForbidden` instead of `http.StatusInternalServerError` 11243 11244 https://github.com/cs3org/reva/pull/1207 11245 11246 * Bugfix #1161: Cache display names in ocs service 11247 11248 The ocs list shares endpoint may need to fetch the displayname for multiple different users. We 11249 are now caching the lookup fo 60 seconds to save redundant RPCs to the users service. 11250 11251 https://github.com/cs3org/reva/pull/1161 11252 11253 * Bugfix #1216: Add error handling for invalid references 11254 11255 https://github.com/cs3org/reva/pull/1216 11256 https://github.com/cs3org/reva/pull/1218 11257 11258 * Enhancement #1205: Allow using the username when accessing the users home 11259 11260 We now allow using the userid and the username when accessing the users home on the `/dev/files` 11261 endpoint. 11262 11263 https://github.com/cs3org/reva/pull/1205 11264 11265 * Enhancement #1131: Use updated cato to display nested package config in parent docs 11266 11267 Previously, in case of nested packages, we just had a link pointing to the child package. Now we 11268 copy the nested package's documentation to the parent itself to make it easier for devs. 11269 11270 https://github.com/cs3org/reva/pull/1131 11271 11272 * Enhancement #1213: Check permissions in ocis driver 11273 11274 We are now checking grant permissions in the ocis storage driver. 11275 11276 https://github.com/cs3org/reva/pull/1213 11277 11278 * Enhancement #1202: Check permissions in owncloud driver 11279 11280 We are now checking grant permissions in the owncloud storage driver. 11281 11282 https://github.com/cs3org/reva/pull/1202 11283 11284 * Enhancement #1228: Add GRPC stubs for CreateSymlink method 11285 11286 https://github.com/cs3org/reva/pull/1228 11287 11288 * Enhancement #1174: Add logic in EOS FS for maintaining same inode across file versions 11289 11290 This PR adds the functionality to maintain the same inode across various versions of a file by 11291 returning the inode of the version folder which remains constant. It requires extra metadata 11292 operations so a flag is provided to disable it. 11293 11294 https://github.com/cs3org/reva/pull/1174 11295 11296 * Enhancement #1142: Functionality to map home directory to different storage providers 11297 11298 We hardcode the home path for all users to /home. This forbids redirecting requests for 11299 different users to multiple storage providers. This PR provides the option to map the home 11300 directories of different users using user attributes. 11301 11302 https://github.com/cs3org/reva/pull/1142 11303 11304 * Enhancement #1190: Add Blackbox Exporter support to Mentix 11305 11306 This update extends Mentix to export a Prometheus SD file specific to the Blackbox Exporter 11307 which will be used for initial health monitoring. Usually, Prometheus requires its targets to 11308 only consist of the target's hostname; the BBE though expects a full URL here. This makes 11309 exporting two distinct files necessary. 11310 11311 https://github.com/cs3org/reva/pull/1190 11312 11313 * Enhancement #1229: New gateway datatx service 11314 11315 Represents the CS3 datatx module in the gateway. 11316 11317 https://github.com/cs3org/reva/pull/1229 11318 11319 * Enhancement #1225: Allow setting the owner when using the ocis driver 11320 11321 To support the metadata storage we allow setting the owner of the root node so that subsequent 11322 requests with that owner can be used to manage the storage. 11323 11324 https://github.com/cs3org/reva/pull/1225 11325 11326 * Enhancement #1180: Introduce ocis driver treetime accounting 11327 11328 We added tree time accounting to the ocis storage driver which is modeled after [eos synctime 11329 accounting](http://eos-docs.web.cern.ch/eos-docs/configuration/namespace.html#enable-subtree-accounting). 11330 It can be enabled using the new `treetime_accounting` option, which defaults to `false` The 11331 `tmtime` is stored in an extended attribute `user.ocis.tmtime`. The treetime accounting is 11332 enabled for nodes which have the `user.ocis.propagation` extended attribute set to `"1"`. 11333 Currently, propagation is in sync. 11334 11335 https://github.com/cs3org/reva/pull/1180 11336 11337 * Enhancement #1208: Calculate etags on-the-fly for shares directory and home folder 11338 11339 We create references for accepted shares in the shares directory, but these aren't updated 11340 when the original resource is modified. This PR adds the functionality to generate the etag for 11341 the shares directory and correspondingly, the home directory, based on the actual resources 11342 which the references point to, enabling the sync functionality. 11343 11344 https://github.com/cs3org/reva/pull/1208 11345 11346 Changelog for reva 1.2.1 (2020-09-15) 11347 ======================================= 11348 11349 The following sections list the changes in reva 1.2.1 relevant to 11350 reva users. The changes are ordered by importance. 11351 11352 Summary 11353 ------- 11354 11355 * Fix #1124: Do not swallow 'not found' errors in Stat 11356 * Enh #1125: Rewire dav files to the home storage 11357 * Enh #559: Introduce ocis storage driver 11358 * Enh #1118: Metrics module can be configured to retrieve metrics data from file 11359 11360 Details 11361 ------- 11362 11363 * Bugfix #1124: Do not swallow 'not found' errors in Stat 11364 11365 Webdav needs to determine if a file exists to return 204 or 201 response codes. When stating a non 11366 existing resource the NOT_FOUND code was replaced with an INTERNAL error code. This PR passes 11367 on a NOT_FOUND status code in the gateway. 11368 11369 https://github.com/cs3org/reva/pull/1124 11370 11371 * Enhancement #1125: Rewire dav files to the home storage 11372 11373 If the user specified in the dav files URL matches the current one, rewire it to use the 11374 webDavHandler which is wired to the home storage. 11375 11376 This fixes path mapping issues. 11377 11378 https://github.com/cs3org/reva/pull/1125 11379 11380 * Enhancement #559: Introduce ocis storage driver 11381 11382 We introduced a now storage driver `ocis` that deconstructs a filesystem and uses a node first 11383 approach to implement an efficient lookup of files by path as well as by file id. 11384 11385 https://github.com/cs3org/reva/pull/559 11386 11387 * Enhancement #1118: Metrics module can be configured to retrieve metrics data from file 11388 11389 - Export site metrics in Prometheus #698 11390 11391 https://github.com/cs3org/reva/pull/1118 11392 11393 Changelog for reva 1.2.0 (2020-08-25) 11394 ======================================= 11395 11396 The following sections list the changes in reva 1.2.0 relevant to 11397 reva users. The changes are ordered by importance. 11398 11399 Summary 11400 ------- 11401 11402 * Fix #1099: Do not restore recycle entry on purge 11403 * Fix #1091: Allow listing the trashbin 11404 * Fix #1103: Restore and delete trash items via ocs 11405 * Fix #1090: Ensure ignoring public stray shares 11406 * Fix #1064: Ensure ignoring stray shares 11407 * Fix #1082: Minor fixes in reva cmd, gateway uploads and smtpclient 11408 * Fix #1115: Owncloud driver - propagate mtime on RemoveGrant 11409 * Fix #1111: Handle redirection prefixes when extracting destination from URL 11410 * Enh #1101: Add UID and GID in ldap auth driver 11411 * Enh #1077: Add calens check to verify changelog entries in CI 11412 * Enh #1072: Refactor Reva CLI with prompts 11413 * Enh #1079: Get file info using fxids from EOS 11414 * Enh #1088: Update LDAP user driver 11415 * Enh #1114: System information metrics cleanup 11416 * Enh #1071: System information included in Prometheus metrics 11417 * Enh #1094: Add logic for resolving storage references over webdav 11418 11419 Details 11420 ------- 11421 11422 * Bugfix #1099: Do not restore recycle entry on purge 11423 11424 This PR fixes a bug in the EOSFS driver that was restoring a deleted entry when asking for its 11425 permanent purge. EOS does not have the functionality to purge individual files, but the whole 11426 recycle of the user. 11427 11428 https://github.com/cs3org/reva/pull/1099 11429 11430 * Bugfix #1091: Allow listing the trashbin 11431 11432 The trashbin endpoint expects the userid, not the username. 11433 11434 https://github.com/cs3org/reva/pull/1091 11435 11436 * Bugfix #1103: Restore and delete trash items via ocs 11437 11438 The OCS api was not passing the correct key and references to the CS3 API. Furthermore, the 11439 owncloud storage driver was constructing the wrong target path when restoring. 11440 11441 https://github.com/cs3org/reva/pull/1103 11442 11443 * Bugfix #1090: Ensure ignoring public stray shares 11444 11445 When using the json public shares manager, it can be the case we found a share with a resource_id 11446 that no longer exists. 11447 11448 https://github.com/cs3org/reva/pull/1090 11449 11450 * Bugfix #1064: Ensure ignoring stray shares 11451 11452 When using the json shares manager, it can be the case we found a share with a resource_id that no 11453 longer exists. This PR aims to address his case by changing the contract of getPath and return 11454 the result of the STAT call instead of a generic error, so we can check the cause. 11455 11456 https://github.com/cs3org/reva/pull/1064 11457 11458 * Bugfix #1082: Minor fixes in reva cmd, gateway uploads and smtpclient 11459 11460 https://github.com/cs3org/reva/pull/1082 11461 https://github.com/cs3org/reva/pull/1116 11462 11463 * Bugfix #1115: Owncloud driver - propagate mtime on RemoveGrant 11464 11465 When removing a grant the mtime change also needs to be propagated. Only affectsn the owncluod 11466 storage driver. 11467 11468 https://github.com/cs3org/reva/pull/1115 11469 11470 * Bugfix #1111: Handle redirection prefixes when extracting destination from URL 11471 11472 The move function handler in ocdav extracts the destination path from the URL by removing the 11473 base URL prefix from the URL path. This would fail in case there is a redirection prefix. This PR 11474 takes care of that and it also allows zero-size uploads for localfs. 11475 11476 https://github.com/cs3org/reva/pull/1111 11477 11478 * Enhancement #1101: Add UID and GID in ldap auth driver 11479 11480 The PR https://github.com/cs3org/reva/pull/1088/ added the functionality to lookup UID 11481 and GID from the ldap user provider. This PR adds the same to the ldap auth manager. 11482 11483 https://github.com/cs3org/reva/pull/1101 11484 11485 * Enhancement #1077: Add calens check to verify changelog entries in CI 11486 11487 https://github.com/cs3org/reva/pull/1077 11488 11489 * Enhancement #1072: Refactor Reva CLI with prompts 11490 11491 The current CLI is a bit cumbersome to use with users having to type commands containing all the 11492 associated config with no prompts or auto-completes. This PR refactors the CLI with these 11493 functionalities. 11494 11495 https://github.com/cs3org/reva/pull/1072 11496 11497 * Enhancement #1079: Get file info using fxids from EOS 11498 11499 This PR supports getting file information from EOS using the fxid value. 11500 11501 https://github.com/cs3org/reva/pull/1079 11502 11503 * Enhancement #1088: Update LDAP user driver 11504 11505 The LDAP user driver can now fetch users by a single claim / attribute. Use an `attributefilter` 11506 like `(&(objectclass=posixAccount)({{attr}}={{value}}))` in the driver section. 11507 11508 It also adds the uid and gid to the users opaque properties so that eos can use them for chown and 11509 acl operations. 11510 11511 https://github.com/cs3org/reva/pull/1088 11512 11513 * Enhancement #1114: System information metrics cleanup 11514 11515 The system information metrics are now based on OpenCensus instead of the Prometheus client 11516 library. Furthermore, its initialization was moved out of the Prometheus HTTP service to keep 11517 things clean. 11518 11519 https://github.com/cs3org/reva/pull/1114 11520 11521 * Enhancement #1071: System information included in Prometheus metrics 11522 11523 System information is now included in the main Prometheus metrics exposed at `/metrics`. 11524 11525 https://github.com/cs3org/reva/pull/1071 11526 11527 * Enhancement #1094: Add logic for resolving storage references over webdav 11528 11529 This PR adds the functionality to resolve webdav references using the ocs webdav service by 11530 passing the resource's owner's token. This would need to be changed in production. 11531 11532 https://github.com/cs3org/reva/pull/1094 11533 11534 Changelog for reva 1.1.0 (2020-08-11) 11535 ======================================= 11536 11537 The following sections list the changes in reva 1.1.0 relevant to 11538 reva users. The changes are ordered by importance. 11539 11540 Summary 11541 ------- 11542 11543 * Fix #1069: Pass build time variables while compiling 11544 * Fix #1047: Fix missing idp check in GetUser of demo userprovider 11545 * Fix #1038: Do not stat shared resources when downloading 11546 * Fix #1034: Fixed some error reporting strings and corresponding logs 11547 * Fix #1046: Fixed resolution of fileid in GetPathByID 11548 * Fix #1052: Ocfs: Lookup user to render template properly 11549 * Fix #1024: Take care of trailing slashes in OCM package 11550 * Fix #1025: Use lower-case name for changelog directory 11551 * Fix #1042: List public shares only created by the current user 11552 * Fix #1051: Disallow sharing the shares directory 11553 * Enh #1035: Refactor AppProvider workflow 11554 * Enh #1059: Improve timestamp precision while logging 11555 * Enh #1037: System information HTTP service 11556 * Enh #995: Add UID and GID to the user object from user package 11557 11558 Details 11559 ------- 11560 11561 * Bugfix #1069: Pass build time variables while compiling 11562 11563 We provide the option of viewing various configuration and version options in both reva CLI as 11564 well as the reva daemon, but we didn't actually have these values in the first place. This PR adds 11565 that info at compile time. 11566 11567 https://github.com/cs3org/reva/pull/1069 11568 11569 * Bugfix #1047: Fix missing idp check in GetUser of demo userprovider 11570 11571 We've added a check for matching idp in the GetUser function of the demo userprovider 11572 11573 https://github.com/cs3org/reva/issues/1047 11574 11575 * Bugfix #1038: Do not stat shared resources when downloading 11576 11577 Previously, we statted the resources in all download requests resulting in failures when 11578 downloading references. This PR fixes that by statting only in case the resource is not present 11579 in the shares folder. It also fixes a bug where we allowed uploading to the mount path, resulting 11580 in overwriting the user home directory. 11581 11582 https://github.com/cs3org/reva/pull/1038 11583 11584 * Bugfix #1034: Fixed some error reporting strings and corresponding logs 11585 11586 https://github.com/cs3org/reva/pull/1034 11587 11588 * Bugfix #1046: Fixed resolution of fileid in GetPathByID 11589 11590 Following refactoring of fileid generations in the local storage provider, this ensures 11591 fileid to path resolution works again. 11592 11593 https://github.com/cs3org/reva/pull/1046 11594 11595 * Bugfix #1052: Ocfs: Lookup user to render template properly 11596 11597 Currently, the username is used to construct paths, which breaks when mounting the `owncloud` 11598 storage driver at `/oc` and then expecting paths that use the username like 11599 `/oc/einstein/foo` to work, because they will mismatch the path that is used from propagation 11600 which uses `/oc/u-u-i-d` as the root, giving an `internal path outside root` error 11601 11602 https://github.com/cs3org/reva/pull/1052 11603 11604 * Bugfix #1024: Take care of trailing slashes in OCM package 11605 11606 Previously, we assumed that the OCM endpoints would have trailing slashes, failing in case 11607 they didn't. This PR fixes that. 11608 11609 https://github.com/cs3org/reva/pull/1024 11610 11611 * Bugfix #1025: Use lower-case name for changelog directory 11612 11613 When preparing a new release, the changelog entries need to be copied to the changelog folder 11614 under docs. In a previous change, all these folders were made to have lower case names, 11615 resulting in creation of a separate folder. 11616 11617 https://github.com/cs3org/reva/pull/1025 11618 11619 * Bugfix #1042: List public shares only created by the current user 11620 11621 When running ocis, the public links created by a user are visible to all the users under the 11622 'Shared with others' tab. This PR fixes that by returning only those links which are created by a 11623 user themselves. 11624 11625 https://github.com/cs3org/reva/pull/1042 11626 11627 * Bugfix #1051: Disallow sharing the shares directory 11628 11629 Previously, it was possible to create public links for and share the shares directory itself. 11630 However, when the recipient tried to accept the share, it failed. This PR prevents the creation 11631 of such shares in the first place. 11632 11633 https://github.com/cs3org/reva/pull/1051 11634 11635 * Enhancement #1035: Refactor AppProvider workflow 11636 11637 Simplified the app-provider configuration: storageID is worked out automatically and UIURL 11638 is suppressed for now. Implemented the new gRPC protocol from the gateway to the appprovider. 11639 11640 https://github.com/cs3org/reva/pull/1035 11641 11642 * Enhancement #1059: Improve timestamp precision while logging 11643 11644 Previously, the timestamp associated with a log just had the hour and minute, which made 11645 debugging quite difficult. This PR increases the precision of the associated timestamp. 11646 11647 https://github.com/cs3org/reva/pull/1059 11648 11649 * Enhancement #1037: System information HTTP service 11650 11651 This service exposes system information via an HTTP endpoint. This currently only includes 11652 Reva version information but can be extended easily. The information are exposed in the form of 11653 Prometheus metrics so that we can gather these in a streamlined way. 11654 11655 https://github.com/cs3org/reva/pull/1037 11656 11657 * Enhancement #995: Add UID and GID to the user object from user package 11658 11659 Currently, the UID and GID for users need to be read from the local system which requires local 11660 users to be present. This change retrieves that information from the user and auth packages and 11661 adds methods to retrieve it. 11662 11663 https://github.com/cs3org/reva/pull/995 11664 11665 Changelog for reva 1.0.0 (2020-07-28) 11666 ======================================= 11667 11668 The following sections list the changes in reva 1.0.0 relevant to 11669 reva users. The changes are ordered by importance. 11670 11671 Summary 11672 ------- 11673 11674 * Fix #941: Fix initialization of json share manager 11675 * Fix #1006: Check if SMTP credentials are nil 11676 * Chg #965: Remove protocol from partner domains to match gocdb config 11677 * Enh #986: Added signing key capability 11678 * Enh #922: Add tutorial for deploying WOPI and Reva locally 11679 * Enh #979: Skip changelog enforcement for bot PRs 11680 * Enh #965: Enforce adding changelog in make and CI 11681 * Enh #1016: Do not enforce changelog on release 11682 * Enh #969: Allow requests to hosts with unverified certificates 11683 * Enh #914: Make httpclient configurable 11684 * Enh #972: Added a site locations exporter to Mentix 11685 * Enh #1000: Forward share invites to the provider selected in meshdirectory 11686 * Enh #1002: Pass the link to the meshdirectory service in token mail 11687 * Enh #1008: Use proper logging for ldap auth requests 11688 * Enh #970: Add required headers to SMTP client to prevent being tagged as spam 11689 * Enh #996: Split LDAP user filters 11690 * Enh #1007: Update go-tus version 11691 * Enh #1004: Update github.com/go-ldap/ldap to v3 11692 * Enh #974: Add functionality to create webdav references for OCM shares 11693 11694 Details 11695 ------- 11696 11697 * Bugfix #941: Fix initialization of json share manager 11698 11699 When an empty shares.json file existed the json share manager would fail while trying to 11700 unmarshal the empty file. 11701 11702 https://github.com/cs3org/reva/issues/941 11703 https://github.com/cs3org/reva/pull/940 11704 11705 * Bugfix #1006: Check if SMTP credentials are nil 11706 11707 Check if SMTP credentials are nil before passing them to the SMTPClient, causing it to crash. 11708 11709 https://github.com/cs3org/reva/pull/1006 11710 11711 * Change #965: Remove protocol from partner domains to match gocdb config 11712 11713 Minor changes for OCM cross-partner testing. 11714 11715 https://github.com/cs3org/reva/pull/965 11716 11717 * Enhancement #986: Added signing key capability 11718 11719 The ocs capabilities can now hold the boolean flag to indicate url signing endpoint and 11720 middleware are available 11721 11722 https://github.com/cs3org/reva/pull/986 11723 11724 * Enhancement #922: Add tutorial for deploying WOPI and Reva locally 11725 11726 Add a new tutorial on how to run Reva and Wopiserver together locally 11727 11728 https://github.com/cs3org/reva/pull/922 11729 11730 * Enhancement #979: Skip changelog enforcement for bot PRs 11731 11732 Skip changelog enforcement for bot PRs. 11733 11734 https://github.com/cs3org/reva/pull/979 11735 11736 * Enhancement #965: Enforce adding changelog in make and CI 11737 11738 When adding a feature or fixing a bug, a changelog needs to be specified, failing which the build 11739 wouldn't pass. 11740 11741 https://github.com/cs3org/reva/pull/965 11742 11743 * Enhancement #1016: Do not enforce changelog on release 11744 11745 While releasing a new version of Reva, make release was failing because it was enforcing a 11746 changelog entry. 11747 11748 https://github.com/cs3org/reva/pull/1016 11749 11750 * Enhancement #969: Allow requests to hosts with unverified certificates 11751 11752 Allow OCM to send requests to other mesh providers with the option of skipping certificate 11753 verification. 11754 11755 https://github.com/cs3org/reva/pull/969 11756 11757 * Enhancement #914: Make httpclient configurable 11758 11759 - Introduce Options for the httpclient (#914) 11760 11761 https://github.com/cs3org/reva/pull/914 11762 11763 * Enhancement #972: Added a site locations exporter to Mentix 11764 11765 Mentix now offers an endpoint that exposes location information of all sites in the mesh. This 11766 can be used in Grafana's world map view to show the exact location of every site. 11767 11768 https://github.com/cs3org/reva/pull/972 11769 11770 * Enhancement #1000: Forward share invites to the provider selected in meshdirectory 11771 11772 Added a share invite forward OCM endpoint to the provider links (generated when a user picks a 11773 target provider in the meshdirectory service web interface), together with an invitation 11774 token and originating provider domain passed to the service via query params. 11775 11776 https://github.com/sciencemesh/sciencemesh/issues/139 11777 https://github.com/cs3org/reva/pull/1000 11778 11779 * Enhancement #1002: Pass the link to the meshdirectory service in token mail 11780 11781 Currently, we just forward the token and the original user's domain when forwarding an OCM 11782 invite token and expect the user to frame the forward invite URL. This PR instead passes the link 11783 to the meshdirectory service, from where the user can pick the provider they want to accept the 11784 invite with. 11785 11786 https://github.com/sciencemesh/sciencemesh/issues/139 11787 https://github.com/cs3org/reva/pull/1002 11788 11789 * Enhancement #1008: Use proper logging for ldap auth requests 11790 11791 Instead of logging to stdout we now log using debug level logging or error level logging in case 11792 the configured system user cannot bind to LDAP. 11793 11794 https://github.com/cs3org/reva/pull/1008 11795 11796 * Enhancement #970: Add required headers to SMTP client to prevent being tagged as spam 11797 11798 Mails being sent through the client, specially through unauthenticated SMTP were being 11799 tagged as spam due to missing headers. 11800 11801 https://github.com/cs3org/reva/pull/970 11802 11803 * Enhancement #996: Split LDAP user filters 11804 11805 The current LDAP user and auth filters only allow a single `%s` to be replaced with the relevant 11806 string. The current `userfilter` is used to lookup a single user, search for share recipients 11807 and for login. To make each use case more flexible we split this in three and introduced 11808 templates. 11809 11810 For the `userfilter` we moved to filter templates that can use the CS3 user id properties 11811 `{{.OpaqueId}}` and `{{.Idp}}`: ``` userfilter = 11812 "(&(objectclass=posixAccount)(|(ownclouduuid={{.OpaqueId}})(cn={{.OpaqueId}})))" 11813 ``` 11814 11815 We introduced a new `findfilter` that is used when searching for users. Use it like this: ``` 11816 findfilter = 11817 "(&(objectclass=posixAccount)(|(cn={{query}}*)(displayname={{query}}*)(mail={{query}}*)))" 11818 ``` 11819 11820 Furthermore, we also introduced a dedicated login filter for the LDAP auth manager: ``` 11821 loginfilter = "(&(objectclass=posixAccount)(|(cn={{login}})(mail={{login}})))" ``` 11822 11823 These filter changes are backward compatible: `findfilter` and `loginfilter` will be 11824 derived from the `userfilter` by replacing `%s` with `{{query}}` and `{{login}}` 11825 respectively. The `userfilter` replaces `%s` with `{{.OpaqueId}}` 11826 11827 Finally, we changed the default attribute for the immutable uid of a user to 11828 `ms-DS-ConsistencyGuid`. See 11829 https://docs.microsoft.com/en-us/azure/active-directory/hybrid/plan-connect-design-concepts 11830 for the background. You can fall back to `objectguid` or even `samaccountname` but you will run 11831 into trouble when user names change. You have been warned. 11832 11833 https://github.com/cs3org/reva/pull/996 11834 11835 * Enhancement #1007: Update go-tus version 11836 11837 The lib now uses go mod which should help golang to sort out dependencies when running `go mod 11838 tidy`. 11839 11840 https://github.com/cs3org/reva/pull/1007 11841 11842 * Enhancement #1004: Update github.com/go-ldap/ldap to v3 11843 11844 In the current version of the ldap lib attribute comparisons are case sensitive. With v3 11845 `GetEqualFoldAttributeValue` is introduced, which allows a case insensitive comparison. 11846 Which AFAICT is what the spec says: see 11847 https://github.com/go-ldap/ldap/issues/129#issuecomment-333744641 11848 11849 https://github.com/cs3org/reva/pull/1004 11850 11851 * Enhancement #974: Add functionality to create webdav references for OCM shares 11852 11853 Webdav references will now be created in users' shares directory with the target set to the 11854 original resource's location in their mesh provider. 11855 11856 https://github.com/cs3org/reva/pull/974 11857 11858 Changelog for reva 0.1.0 (2020-03-18) 11859 ======================================= 11860 11861 The following sections list the changes in reva 0.1.0 relevant to 11862 reva users. The changes are ordered by importance. 11863 11864 Summary 11865 ------- 11866 11867 * Enh #402: Build daily releases 11868 * Enh #416: Improve developer experience 11869 * Enh #468: remove vendor support 11870 * Enh #545: simplify configuration 11871 * Enh #561: improve the documentation 11872 * Enh #562: support home storages 11873 11874 Details 11875 ------- 11876 11877 * Enhancement #402: Build daily releases 11878 11879 Reva was not building releases of commits to the master branch. Thanks to @zazola. 11880 11881 Commit-based released are generated every time a PR is merged into master. These releases are 11882 available at: https://reva-releases.web.cern.ch 11883 11884 https://github.com/cs3org/reva/pull/402 11885 11886 * Enhancement #416: Improve developer experience 11887 11888 Reva provided the option to be run with a single configuration file by using the -c config flag. 11889 11890 This PR adds the flag -dev-dir than can point to a directory containing multiple config files. 11891 The reva daemon will launch a new process per configuration file. 11892 11893 Kudos to @refs. 11894 11895 https://github.com/cs3org/reva/pull/416 11896 11897 * Enhancement #468: remove vendor support 11898 11899 Because @dependabot cannot update in a clean way the vendor dependecies Reva removed support 11900 for vendored dependencies inside the project. 11901 11902 Dependencies will continue to be versioned but they will be downloaded when compiling the 11903 artefacts. 11904 11905 https://github.com/cs3org/reva/pull/468 11906 https://github.com/cs3org/reva/pull/524 11907 11908 * Enhancement #545: simplify configuration 11909 11910 Reva configuration was difficul as many of the configuration parameters were not providing 11911 sane defaults. This PR and the related listed below simplify the configuration. 11912 11913 https://github.com/cs3org/reva/pull/545 11914 https://github.com/cs3org/reva/pull/536 11915 https://github.com/cs3org/reva/pull/568 11916 11917 * Enhancement #561: improve the documentation 11918 11919 Documentation has been improved and can be consulted here: https://reva.link 11920 11921 https://github.com/cs3org/reva/pull/561 11922 https://github.com/cs3org/reva/pull/545 11923 https://github.com/cs3org/reva/pull/568 11924 11925 * Enhancement #562: support home storages 11926 11927 Reva did not have any functionality to handle home storages. These PRs make that happen. 11928 11929 https://github.com/cs3org/reva/pull/562 11930 https://github.com/cs3org/reva/pull/510 11931 https://github.com/cs3org/reva/pull/493 11932 https://github.com/cs3org/reva/pull/476 11933 https://github.com/cs3org/reva/pull/469 11934 https://github.com/cs3org/reva/pull/436 11935 https://github.com/cs3org/reva/pull/571 11936 11937 Changelog for reva 0.0.1 (2019-10-24) 11938 ======================================= 11939 11940 The following sections list the changes in reva 0.0.1 relevant to 11941 reva users. The changes are ordered by importance. 11942 11943 Summary 11944 ------- 11945 11946 * Enh #334: Create release procedure for Reva 11947 11948 Details 11949 ------- 11950 11951 * Enhancement #334: Create release procedure for Reva 11952 11953 Reva did not have any procedure to release versions. This PR brings a new tool to release Reva 11954 versions (tools/release) and prepares the necessary files for artefact distributed made 11955 from Drone into Github pages. 11956 11957 https://github.com/cs3org/reva/pull/334 11958