SeaMist 1.1.5 – What’s new

SeaMist 1.1.5l

Don’t worry I will be covering other topics next week. Just wanted to share that I’ve released SeaMist version 1.1.5, the most complete Kraken.io API wrapper for .net, which includes lots of what was still missing. And I have some other interesting news as well.

SeaMist 1.1.5 – Release notes

Let’s start with the Kraken.io API features which have been included within SeaMist 1.1.5.

1 – Direct Upload, including Blob Storage and S3

The biggest miss until now was the ability to upload files. Fortunately, I’ve found some time to implement “Direct Upload” and in addition added Direct Upload support for Azure Blob storage and Amazon S3 as well.

Uploading a file is using SeaMist is super simple as can be seen in the samples below. Just make sure to provide a byte array containing the contents of the file (I’m using a byte array to make sure the API fits all scenarios for example reading from disk, memory streams), the name of the file, and the instructions based on the IOptimizeUploadWaitRequest or IOptimizeUploadRequest interface.

Model.OptimizeUploadWaitRequest
Model.Azure.OptimizeUploadWaitRequest
Model.S3.OptimizeUploadWaitRequest
Model.OptimizeUploadRequest
Model.Azure.OptimizeUploadRequest
Model.S3.OptimizeUploadRequest

If you want to upload a file to kraken.io and wait for the output, just use the sample below and make changes as desired.

And if you would like to receive a callback use the following sample:

If you are interested in using Azure Blob storage or Amazon S3, make sure to use the appropriate instructions/classes which can be found nothing the Azure and S3 namespaces. Both wait and callback calls are supported.

If you want to make use of all external storage features, just pass a new instance of a data store and provide a value for the external storage properties of your choice. See sample below.

Note: Amazon S3 storage has some addition options which aren’t available or not implemented for Azure Blob storage by the kraken.io team.

Now the upload feature has been implemented, you can build some interesting supporting projects like for example: batch scripts, post build tasks, post content publish tasks etc.

If you have created something cool using SeaMist 1.1.5, please let me know!

2 – Automatic Image Orientation

If you are interested in using this feature, you probably already know what it does. Given that this was just simple to implement, I’ve included this option within this release. For a details description, please consult the kraken.io documentation.

3 – Enhancing Resized Images

The enhancing resized images option is actually very helpful when generating thumbnails / small preview images. I’ve seen great results with this option enabled.

The following code sample demonstrates how to include the option;

What’s still missing and why?

For is far as I can see, i’m only missing the following:

  • Crop Mode – within release 1.1.6
  • Chroma Subsampling – within release 1.1.6, depends if the option is ignored for other types
  • Lossy – quality – I want a relation between the two without breaking existing interfaces. Given that the default is very good already, it’s not very high on my to-do list
  • Image Sets – I won’t implement image sets because i don’t like the way kraken.io designed this feature. What I would like see this implemented as multipart content instead, the same as for example WEB API.

Some other news

believe it or not, but I have some other SeaMist related news as well. Kraken.io contacted me last week regarding the current state of SeaMist.

They actually proposed to make SeaMist the official .NET API wrapper, which would result in moving the repository to Kraken.io as well. I like this idea because this can only result in a larger user base and possibly more contributions.

at the moment, I can’t provide a timeframe but will keep everyone posted! Comments, contributions and suggestions are always welcome.

Post Navigation