Clarity between `hosted_image` and `is_hosted` in `Project.upload`
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 30/100
- Issue type
- Bug
- Clarity
- Needs clarification
- Activity status
- Stale
- Tech stack
- python
- Domain
- api, backend-api-design, computer-vision
Research direction
Start at Project.upload and roboflow/adapters/rfapi.py:90, where upload_image is reported to raise UploadError after a 500 response. Trace how hosted_image and internal is_hosted are interpreted and compare the validation and error paths. Done means their distinction and expected behavior are explicit, and the shown call no longer bypasses checks into an unexplained server error.
Written by the indexing model from the issue text.
Description
I find it confusing that in Project.upload there's both a hosted_image: boolargument set by the user, and an internal is_hosted, that determines which errors may be thrown.
By setting hosted_image it's possible to bypass checks and send the image to Roboflow, which promptly returns a 500 code.
Still, maybe there's a reason behind it?
Test code:
import roboflow
img_path = "<path_to_img>"
rf = roboflow.Roboflow(api_key="API_KEY")
workspace_id = "<ws ID>"
project_id = "<proj ID>"
workspace = rf.workspace(workspace_id)
project = workspace.project(project_id)
project.upload(img_path, hosted_image=True)
This raises:
File ... /roboflow/adapters/rfapi.py:90, in upload_image(api_key, project_url, image_path, hosted_image, split, batch_name, tag_names, sequence_number, sequence_size, **kwargs)
UploadError: Bad response: 500: {'error': 'Unknown error'}
- Dominant language
- Python
- Stars
- 642
- Forks
- 146
- Avg merge
- 1d 10h
- Merged PRs (30d)
- 13
Getting set up
Starts the project's dev container in your browser, under your own GitHub account.
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from roboflow/roboflow-python
-
`--json` output is not valid JSON for `search --export`, `image upload <dir>`, `model upload` and `version download`Possibly taken @cdeil claimed this 37 days ago. Open
Difficulty 3/5 1-2 days Newbie friendliness 20/100
roboflow/roboflow-python#546 ·
Maintainers usually reply within 1 day
-
Failed uploads are reported as success: Version.deploy() / Workspace.deploy_model() don't raise, and roboflow model upload / roboflow image upload <dir> exit 0May be free again A pull request for this issue was closed without being merged. Open
Difficulty 4/5 3-5 days Newbie friendliness 55/100
roboflow/roboflow-python#545 ·
Maintainers usually reply within 1 day
-
Difficulty 4/5 3-5 days Newbie friendliness 45/100
roboflow/roboflow-python#505 · 2 comments ·
Maintainers usually reply within 1 day
-
Difficulty 4/5 3-5 days Newbie friendliness 30/100
roboflow/roboflow-python#433 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 4/5 3-5 days Newbie friendliness 25/100
roboflow/roboflow-python#429 ·
Maintainers usually reply within 1 day
All issues in roboflow/roboflow-python
Similar issues
-
area:core-platform effort:S priority:P3 risk:night-safe status:ready type:test
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
randomparity/kdive#3620 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
FinanceFlash/unvibecode#760 ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
google-research/google-research#3470 ·
Maintainers usually reply within 21 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
mrvautin/ha-workouts#11 ·