-
Notifications
You must be signed in to change notification settings - Fork 159
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[full-ci] Drive aliases #7430
[full-ci] Drive aliases #7430
Conversation
Thanks for opening this pull request! The maintainers of this repository would appreciate it if you would create a changelog item based on your changes. |
8a19831
to
056a3c3
Compare
packages/web-app-files/src/components/FilesList/NotFoundMessage.vue
Outdated
Show resolved
Hide resolved
34b126c
to
17ecc3e
Compare
7cec6c2
to
c79dc7e
Compare
packages/web-app-files/src/components/FilesList/ResourceTable.vue
Outdated
Show resolved
Hide resolved
packages/web-app-files/src/components/SideBar/Shares/FileLinks.vue
Outdated
Show resolved
Hide resolved
packages/web-app-files/src/components/SideBar/Shares/Links/DetailsAndEdit.vue
Outdated
Show resolved
Hide resolved
9fc5112
to
28e13a7
Compare
packages/web-app-files/src/components/AppBar/CreateAndUpload.vue
Outdated
Show resolved
Hide resolved
packages/web-app-files/src/components/SideBar/Shares/SpaceMembers.vue
Outdated
Show resolved
Hide resolved
packages/web-app-files/src/components/SideBar/Shares/SpaceMembers.vue
Outdated
Show resolved
Hide resolved
packages/web-app-files/src/composables/upload/useUploadHelpers.ts
Outdated
Show resolved
Hide resolved
): Promise<Resource[]> { | ||
let resources: Resource[] | ||
if (isPublicSpaceResource(space)) { | ||
resources = await sdk.publicFiles.list( | ||
`${space.webDavPath.replace(/^\/public-files/, '')}/${path || ''}`, | ||
space.publicLinkPassword, | ||
DavProperties.PublicLink, | ||
[DavProperties.PublicLink].concat(davProperties), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this make sense? Do we always want to add this? Is it harmful to pass it to private files?
If we don't add it by default, I'm wondering how API consumers are supposed to add it if they need it?
Another approach would be to filter it out for non public link files.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
no, if you provide dav properties they should completely replace the default dav properties. Otherwise it would not be possible to do a propfind with just the id prop for example. All other requested data would be useless and bloat the response payload.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we remove the PublicLink property from davProperties for non PublicLink spaces?
Or doesn't it harm to request it even if it does not make sense?
I'm think of requesting additional properties for a resource and not having to think about whether we're dealing with a public link... does that make sense at all? I haven't worked with the webdav api really, so it's hard for me to judge...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've replaced the code with davProperties || [DavProperties.PublicLink]
. Still wondering, should we filter the PublicLink property out for the private files?
Results for oc10SharingIntUsers3 https://drone.owncloud.com/owncloud/web/28741/29/1 |
da57ac5
to
98ecca4
Compare
My findings so far:
|
Some more:
|
|
Findings with oc10:
|
OCIS followup findings:
|
The item path was not respected by the new DriveRedirect component. Changed that, mostly so that acceptance tests can directly route to a specific folder without providing the drive alias. Additionally, the DriveRedirect component has been stripped from irrelevant use cases.
The capability should only control whether or not the nav item and the context actions for toggling favorites should be visible. Loading does not need to be restricted.
SonarCloud Quality Gate failed. |
Congrats on merging this beast 🥳 |
Description
We changed the URL format to not use storageIds in the URL path anymore to identify spaces, but instead use drive aliases of spaces in the URL path.
BREAKING CHANGE for users: this breaks existing bookmarks - they won't resolve anymore.
BREAKING CHANGE for developers: the appDefaults composables from web-pkg now work with drive aliases, concatenated with relative item paths, instead of webdav paths. If you use the appDefaults composables in your application it's likely that your code needs to be adapted.
Related Issue
Types of changes
Checklist:
Open tasks:
storageId
route param with the id of the resolved drive itemfiles-spaces-personal
andfiles-spaces-project
driveAliasAndItem
and addshareId
to route querypublic
path segment) ->files/link/${driveAliasAndItem}
&files/upload/${token}
New
andUpload
buttons are disabledstorageId
orcurrentStorageId
oritem
in context of routes (should not exist anymore)createFolderLink
fix wrong route paramsFollowups (with issues)
PROPFIND 404
-> this happens because of the sidebar resource fetching. We do this as a follow up. Also see [full-ci] Space root not updated #7546 which should fix thisFollowups (issues to be created)