Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

[Refactor] Use the new interface of fileio from mmengine #2468

Merged
merged 6 commits into from
Dec 27, 2022

Conversation

zhouzaida
Copy link
Collaborator

@zhouzaida zhouzaida commented Dec 4, 2022

Thanks for your contribution and we appreciate it a lot. The following instructions would make your pull request more healthy and more easily get feedback. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers.

Motivation

Use the new interface of fileio from MMEngine (open-mmlab/mmengine#533) which requires mmengine>=0.2.0.

Modification

  • Update mmengine>=0.2.0 in requirements/runtime.txt
  • Add a new parameter backend_args and remove file_client_args

BC-breaking (Optional)

Yes. This PR removed the file_client_args parameter in several functions or classes.

Use cases (Optional)

Before this PR

img = mmcv.imread(s3_img_path, file_client_args={'backend': 'http'})

After this PR

img = mmcv.imread(http_img_path, backend_args={'backend': 'http'})

The only difference between file_client_args and backend_args is that the former may contain a prefix field, because in the previous fileio (mmengine < 0.2.0), there were multiple file backends with the same prefix, so you need to specify the prefix in file_client_args.

Checklist

Before PR:

  • I have read and followed the workflow indicated in the CONTRIBUTING.md to create this PR.
  • Pre-commit or linting tools indicated in CONTRIBUTING.md are used to fix the potential lint issues.
  • Bug fixes are covered by unit tests, the case that causes the bug should be added in the unit tests.
  • New functionalities are covered by complete unit tests. If not, please add more unit test to ensure the correctness.
  • The documentation has been modified accordingly, including docstring or example tutorials.

After PR:

  • If the modification has potential influence on downstream or other related projects, this PR should be tested with some of those projects, like MMDet or MMCls.
  • CLA has been signed and all committers have signed the CLA in this PR.

@zhouzaida zhouzaida added the WIP label Dec 4, 2022
@zhouzaida zhouzaida changed the title [Refactor] Use new interface of fileio [Refactor] Use the new interface of fileio from mmengine Dec 4, 2022
mmcv/transforms/loading.py Outdated Show resolved Hide resolved
@zhouzaida zhouzaida removed the WIP label Dec 11, 2022
@zhouzaida zhouzaida merged commit a3cb068 into open-mmlab:2.x Dec 27, 2022
@zhouzaida zhouzaida deleted the refactor-fileio branch December 27, 2022 16:09
tyomj pushed a commit to tyomj/mmcv that referenced this pull request May 8, 2023
…2468)

* [Refactor] Use new interface of fileio

* update ut

* remove file_client_args

* add * before backend_args

* refine backend_args description
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants