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

Feature/refactor not to assume filesystem #35

Merged
merged 31 commits into from
Jun 15, 2020

Conversation

jechols
Copy link
Member

@jechols jechols commented Jun 15, 2020

No description provided.

jechols added 30 commits June 9, 2020 14:19
Makes room for a second pluggable function list for image stream
creation
This slightly simplifies some confusion in the way decoder plugins (and
soon streamers) were having to be built
This sets up a foundation for switching things to be less
filesystem-centric
Probably doesn't happen right now, but it could, so let's not make
things awful by returning a non-error
- Pulls a bit more code out of the handler and into a "get all the data"
  function for an easier read of the handler
- Uses a URL instead of filepath (thought the resource code just assumes
  it's a file path for now)
- Makes info cache get/set easier to follow
Fixes a panic when cache is saved as one struct and then we attempted to
re-read into a different struct
The img-specific error didn't make sense for plugins to implement, and
with a backward-incompatible release already happening....
Decoder handlers are now registered so the decoder isn't initialized
until it has to be, saving on unnecessary file reads
Most code is still assuming it has files (using
Streamer.Location().Path), but the streamer concept is in and used in at
least a tertiary way.
- Adds streaming C bindings for openjpeg
- Removes all places where the filesystem was still used for openjpeg
  handling of images
- Implements a separate stream opener from the actual bit that returns
  streams, much like how DecodeHandler was built
Removes the non-skip error on unsupported schemes, and reports the
information about the plugin's limitations as warnings in case somebody
does try to use it with, for example, S3 images
Getting last modification was still relying on a local file; this now
uses the streamer
Uses gocloud.dev for a variety of cloud blob URLs
- Since we don't include plugins on alpine, they're no longer built
- Fewer packages are installed on the "build" box
- golint is no longer downloaded on the "build" box
@jechols jechols merged commit ec74c0e into develop Jun 15, 2020
@jechols jechols deleted the feature/refactor-not-to-assume-filesystem branch June 15, 2020 18:04
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.

1 participant