Comments (2)
After testing, I think I found part of the problem.
Something is wrong by the use of Arc.Definition.Versioning.resolve_file_name(definition, version, file_and_scope)
over here
By the time this function is called, the Arc.File looks something like the following:
%Arc.File{
binary: nil,
file_name: "1_list_image.jpg",
path: "/var/folders/7n/l6vc139d0c7bswg8b84j45s80000gn/T/QEWTHIDYJLEA2IDVIQXGVLPAB5EUWCWU.png"
}
Note how file_name
already has the format that the definition has defined. Then when we call Arc.Definition.Versioning.resolve_file_name
, we are essentially running through the definition's filename function again resulting in a redundant operation. I'm not sure what the intention is and would love some feedback. In the meantime, I'll continue to work on a fix.
from arc_gcs.
I found the bug and have a pull request finished.
The issue is that the file path must be calculated separately in the put
function as arc has already modified the file.file_name
value to reflect the output of the definition's filename function.
Therefore, we can't use do_gcs_key
at this point in time.
I made some changes that take the same approach as arc's S3 layer - namely, calculate path during the put
function.
from arc_gcs.
Related Issues (16)
- Google published hex HOT 4
- Missing changelog entries HOT 2
- Error: (FunctionClauseError) no function clause matching in URI.encode/
- Push 0.0.4 tag HOT 1
- Arc Ecto http url uploads seem to fail after upgrading to 0.2.x
- No way to set http timeouts
- URLs generated with custom asset_host should not include bucket name HOT 1
- Can't delete files
- Error handling for get_token/0 - address "no matching right hand side value" error HOT 1
- mix format
- 2 requests for each file HOT 2
- Files on GCS have spaces replaced with plus signs
- Bump hex.pm version HOT 2
- Bad Request after upgrade to 0.2.0 HOT 4
- Invalid File HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from arc_gcs.