Skip to content

Epic: introduce pixel-agnostic API across the whole library #907

Description

@antonfirsov

I'm opening this to track the API changes I'm planning to introduce in multiple PR-s:

  • Adding the non-generic Image base class, refactor and publish processors without color parameters. (Introduce a non-generic Image base class #904)
  • Introduce pixel independent color type, refactor and publish processors having color values as parameters.
  • Make ImageSharp.Drawing API non-generic.
  • Do a sanity check on the resulting API set. Drop (or consider dropping) generic classes made obsolete by the new API (ColorBuilder<T>, NamedColors<T> and ImageProcessingContext<T>)
  • Define (or at least considerdefining) a non-generic variant of ImageFrameCollection
  • Update SixLabors/Samples (also taking other aspects into account)
  • Anaylize impact on AOT, extend AotCompilerTools. EDIT: Won't do it for RC1. Moved to separate issue: Maintain Xamarin iOS support by keeping the library "AOT-proof" #946.

After finishing the changes, I'm planning to publish a blog post to explain the new API and help existing users with a migration guide.

Activity

  1. added this to the 1.0.0-rc1 milestone on May 9, 2019
  2. changed the title [-]Epic: shift towards a pixel agnostic API[/-] [+]Epic: introduce pixel-agnostic API across the whole library[/+] on May 9, 2019
  3. added a commit that references this issue on May 23, 2019
  4. added a commit that references this issue on Aug 25, 2019
  5. antonfirsov commented on Sep 7, 2019

    @antonfirsov
    MemberAuthor

    All points are finished here, including the update of the Samples, closing!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions