-
-
Notifications
You must be signed in to change notification settings - Fork 4.6k
Implement backend for FileJump (#8114) #8693
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
base: master
Are you sure you want to change the base?
Conversation
- Implemented complete filejump backend with API integration - Added comprehensive test suite for filejump backend - Updated documentation and configuration - All integration tests passing for filejump backend
How are the integration tests going? Does See here for more info: https://github.com/rclone/rclone/blob/master/CONTRIBUTING.md#writing-a-new-backend |
Yes, everything works. I just tested it again. But I had to start it with a bigger timeout. I tested it with It finished in 1h48min. Here is the output of the test: |
That is a bit slow, but not the slowest backend!
That looks really good. The bisync tests took the longest. We can add a time modifier in the rclone/fstest/test_all/config.yaml Line 201 in ff9cbab
This multiplies the normal timeout (which is 1h) by that factor. Looking at the timings none of the tests took longer than 2h so that should be fine. This backend was made using the public REST API at https://eu.filejump.com/api-docs - is that right? I'll give the code a review now. |
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.
This is looking really great. The integration tests all passing is fantastic.
I've put some notes inline - nothing serious.
I think you've got some lint things to fix too.
Thank you
Yes, that is right. But Google Chrome even shows the typescript of the original Code of the website and it is easy to see in the network tab in the browser after every request, what exactly happened. So there are two different ways how to upload a file. One is by requesting an upload url and upload it there (directly to the underlying wasabi backend). The website does it this way. And the other way to upload a file is via the public REST API. It looks like a wrapper, which uploads the file later to the wasabi backend. I did it like the website. With big files, it maybe should be faster, because the files don't use the wrapper. But maybe for short files, I should use the REST API. As I am at the moment on holidays and can just program on my phone, I will look into your change review later. But actually this artificial intelligence agent: https://www.atlassian.com/blog/announcements/rovo-dev-command-line-interface helped me A LOT with programming. I told it to make my code pass the tests and the same day, my code passed ALL the tests! Sometimes, I had to guide it, but it is unbelievable, you should test it 😄 It is completely free until the end of this month. And if you like, while I am on holidays, you can update my code, however you like. But don't worry, just if you have time |
@masrlinu thanks for the update. I'll mark this for v1.71 which is due 23rd August. So enjoy your holiday and don't feel you need to look at this until you get back :-) |
Hi @ncw! I've addressed all the suggestions, fixed the linter issues, updated the docs, and fixed the filejump-specific workspace handling. The latest changes also include support for move, dir-move, cleanup, about, and publiclink. Let me know what you think! |
I've implemented some fixes. The FileJump cleanup logic wasn't working properly when the trash contained too many files, so I've updated it to delete trash files in batches of 100. I also addressed a few other issues. All integration tests are passing: |
What is the purpose of this change?
This PR implements a backend for the storage provider FileJump.com.
Was the change discussed in an issue or in the forum before?
Yes, this backend was requested in issue #8114.
Checklist