Extensions: [BUG] name of resized image is missing original image name if there was no file type extension

Created on 1 Oct 2019  路  7Comments  路  Source: firebase/extensions

[READ] Step 1: Are you in the right place?

Yes

[REQUIRED] Step 2: Describe your configuration

  • Extension name: _ (storage-resize-images)
  • Configuration values (redact info where appropriate):
    -Size:64x64
    -Cloud Storage Path: empty

    [REQUIRED] Step 3: Describe the problem

I just added storage-resize-images extension to my firebase project, it is working as expected when i upload an image manually from the firebase console, but the problem is that whenever i use

storageRef.putString()

function to upload base64 url encoded image to the firebase storage cloud, the compressed image will be created but its name is only _64x64 (not original_64x64).

Obviously i am resizing images as 64x64.

Since the created file doesn't contain a unique name it is unaccessible for me dynamically...Is there something am i missing?

Steps to reproduce:

Install storage-resize-images extension to my firebase project.(web)

Expected result

storage-resize-images extension to create an image file using the "original.jpeg" image as "original_64x64.jpeg"

Actual result

The extension generated the image as expected but the naming was wrong, it is _64x64.jpeg instead of original_64x64.jpeg

blocked bug

Most helpful comment

Still experiencing this when an uploaded file does not have an extension.

I am aware that I can check whether filename has an extension before uploading, but IMO the resize image extension should be able to handle case without file extension.

Can this be re-opened ?

image

All 7 comments

Hey @emrebicer :wave: - thanks for reporting this issue, will get this looked at.

It seems like this bug only happens when the uploaded file doesn't have a file extension. When there is an extension (.jpg), or even a . at the end of the filename (random-filename.) then it works as expected. The resized image name is {original filename}_64x64.. It seems like the extension is expected and without it, something is getting messed up.

You can set a file extension when using putString by specifying a the file name when creating a storage reference:

const imageStorageRef = firebase.storage().ref('images/space.jpg');
// ...
imageStorageRef.putString(/* ... */) // ..

Is there some other case where it would never set a file extension?

You can set a file extension when using putString by specifying a the file name when creating a storage reference:

const imageStorageRef = firebase.storage().ref('images/space.jpg');
// ...
imageStorageRef.putString(/* ... */) // ..

Is there some other case where it would never set a file extension?

After adding ".jpg" at the end of my file names the problem went away. It looks like a proper solution for me. Closing the issue, thank you :).

Still experiencing this when an uploaded file does not have an extension.

I am aware that I can check whether filename has an extension before uploading, but IMO the resize image extension should be able to handle case without file extension.

Can this be re-opened ?

image

@Salakar We should support file names without file type extensions. Can you work on a PR to fix this?

Actually I see it's fixed in https://github.com/firebase/extensions/pull/134 :)

Was this page helpful?
0 / 5 - 0 ratings

Related issues

dfischer picture dfischer  路  3Comments

yahavt picture yahavt  路  3Comments

ccjernigan picture ccjernigan  路  4Comments

keatonwalker picture keatonwalker  路  6Comments

dfdgsdfg picture dfdgsdfg  路  5Comments