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

2019.01 #302

Closed
mosra opened this Issue Dec 29, 2018 · 13 comments

Comments

2 participants
@mosra
Copy link
Owner

mosra commented Dec 29, 2018

I took a much-needed week-long break, which means 2018.12 is not humanly possible anymore and so the release will overflow to 2019. Happy new year, btw.

(Boring) things to do, in order:

  • Make "shader compatibility" APIs and sources semi-public so these can be used from dependent libs and projects (TextureTools, imgui, Ui, redacted and probably more) postponed
  • ImGui
  • Everything else that's in the 2019.01 milestone and wasn't postponed (is anything else there?)
    • Not anything significant from #293, as I want to have all these together to be able to measure the total improvement
  • Fix the Doxygen dumpster fire (the stable release is again anything but stable)
  • Make the Object Picking example work on Firefox (the glReadPixels() format fiasco again, https://github.com/mosra/magnum-website/issues/8) impossible, hitting several bugs, postponed
  • Update toolchains submodule with Android / Emscripten on Windows fixes
  • Document the "lack of model/view terminology" and explanation of inverse lookAt() in the transform docs, update the docs for #287 as well -- dba0928 and 8240b8a
  • Format support tables (list of all formats with plugins that provide support) i wanted them to look nice, but doxygen had a different opinion. Postponed.
  • Update bootstrap repos with dropped CMake 2.8 and GCC 4.7 support and updated toolchains submodule
  • Update copyright years (after all PRs are merged)
  • archlinux package update
  • homebrew package update -- mosra/homebrew-magnum@ded8123
  • vcpkg package update, dependent packages should depend only on magnum[core], not the full thing (e.g. magnum-integration) (@Squareys, thanks! 🙏 ) -- Microsoft/vcpkg#5312
  • Hunter Corrade package update (ruslo/hunter#1730)
  • Hunter Magnum package once everything is tagged (ruslo/hunter#1731)
  • Rename ScopedExit to ScopeGuard mosra/corrade@f80dbfd

Nice to have:

  • Crosscompilation support in Corrade Hunter package (details in #298) postponed
  • Conan packages (#304) -- done for Corrade, Magnum package postponed
  • MSYS packages (mosra/corrade#56, #307, mosra/magnum-plugins#50)
  • SwiftShader-powered test on Travis (put a Linux *.so from Chrome binary on ci.magnum.graphics, use that), would bump test coverage from 52% to over 80% postponed
  • Make GL::defaultFramebuffer constexpr to avoid static constructors and linker issues impossible, we need it mutable
  • Fix Quaternion (s)lerp to not use atan (details in the reddit comment for the quaternion post) i have the fix implemented already, but it needs more testing (especially for the error behavior), so postponing
  • Initial work for the magnum-singles repository
    • Publish the single-header-generator tool (docs)
    • Write the README, reference it from Magnum readme
    • Add ArrayView library there postponed
    • Add ScopeGuard there
  • Make ArrayView slicing APIs constexpr (use the new assert) mosra/corrade@1158b09
  • STL compat for ArrayView (construct from vectors/arrays) postponed, this needs quite a lot of work and testing to get right
  • Make Animation::TrackView constexpr (needs constexpr type-erasing for StridedArrayView) not possible due to function pointer casts, postponed
  • File callbacks for AbstractFont postponed

Fun (but not extremely important) things to do:

  • Draft the ShaderTools library, add AbstractShaderConverter plugin iface postponed
  • Conversions for basic Vulkan vector/rectangle/... types (Vulkan marketing!) -- 3281a27
  • anyEvent() in Sdl2App for easier handling of additional events -- 20a55b1
  • inotify implementation for Utility::FileWatcher (and a blocking API for it) postponed
  • Windows implementation for Utility::FileWatcher postponed
  • Dynamic plugin support for Android 23+ postponed
  • wrap up FFmpegAudioImporter, add image version of it (needs mainly documenting all the supported formats) postponed
  • Tweakable support for Android and Emscripten (need some way to supply changed files and notify the app ... (web)sockets?) postponed
  • Hot-reload support for Android (need some way to call system() on the host... sockets?) postponed
  • Finally integrate the Push The Box example postponed

Use the opportunity to Break Stuff™ so I can more easily integrate stuff later (also fun):

  • API-agnostic base for Text::GlyphCache (#143) postponed
  • Design Containers::UniquePtr with opt-in (currently implicit) STL compatibility and convert all Trade::AbstractImporter APIs to it (could also help with #293 later)
    • Move all APIs to use it
  • Redesign Trade::AbstractImageConverter to make it possible to convert compressed images to compressed images and all other combinations postponed
  • Redesign Trade::MeshData to get rid of vectors, make it possible to support interleaved data similarly to AnimationData and make it more extensible for additional attributes in progress, but a MeshTools rework needs to happen in parallel and that's quite a bit of work

@mosra mosra added this to the 2018.1d milestone Dec 29, 2018

@mosra mosra added this to TODO in Project management via automation Dec 29, 2018

@mosra mosra added the help wanted label Dec 29, 2018

@mosra mosra pinned this issue Dec 29, 2018

@mosra

This comment has been minimized.

Copy link
Owner Author

mosra commented Jan 3, 2019

@Squareys added a task for you: https://github.com/Microsoft/vcpkg/blob/master/ports/magnum-integration/CONTROL (and probably all others) should say just Build-Depends: magnum[core] instead of Build-Depends: magnum

(Thanks in advance! 🙏 )

Cc: @roig

@pthom

This comment has been minimized.

Copy link
Contributor

pthom commented Jan 6, 2019

@mosra : I will have some time to help you for the hunter package next week, if you need it. (I was on holiday until then :-)

@mosra

This comment has been minimized.

Copy link
Owner Author

mosra commented Jan 6, 2019

@pthom oh, thank you! I'm afraid the release tagging will happen more near to the end of the month, since there's still a lot of stuff I have to do until then.

The other Hunter-related task was crosscompilation support for Corrade (based on the hints @ruslo mentioned in #298), and that would be best to have done before the tagging happen so the released version can make use of it. But unless you explicitly need that yourself I don't want to force you into that task.

@pthom

This comment has been minimized.

Copy link
Contributor

pthom commented Jan 7, 2019

@mosra : ok. I do not need it at the moment. Ping me if you need help :-)

@mosra

This comment has been minimized.

Copy link
Owner Author

mosra commented Jan 24, 2019

Progress so far:

  • ImGui integration and the example is merged, web version available at https://magnum.graphics/showcase/imgui/. I'll postpone WebGL 1 / ES2 port for later, as it's not extremely critical.
  • Copyright years updated 🎆
  • Doxygen post-release fixes submitted, issues opened (still have to use a fork, tho), the docs now tell what #include statements to use for all free symbols
  • Sdl2Application::anyEvent() together with SDL_Event access done in 20a55b1
  • Containers::Pointer and Reference implementations done (article on the blog), now moving all APIs to them
  • Initial work for the magnum-singles repository done, generator tool published (docs)
@mosra

This comment has been minimized.

Copy link
Owner Author

mosra commented Jan 28, 2019

More progress:

  • ImGui update to 1.67 done in mosra/magnum-integration@01dc2b3, one minor breaking change in a test
  • ScopedExit -> ScopeGuard done in mosra/corrade@f80dbfd
  • MSYS package PRs merged
  • Constexpr ArrayView slicing done in mosra/corrade@1158b09
  • All APIs, examples etc. are moved to use the new Pointer and Reference APIs (CIs still running tho), except a few cases where it needs more work and thus was postponed
  • magnum-singles README etc. finished, ScopeGuard added there

Some larger work that needs some time to get right is postponed after the release.

@mosra

This comment has been minimized.

Copy link
Owner Author

mosra commented Feb 4, 2019

Final update (running late, argh):

  • bootstrap repos updated to latest CMake modules + toolchains
  • Conan package for Corrade integrated (mosra/corrade#57)
  • Math conventions docs improved in dba0928 and 8240b8a
  • Everything else postponed
  • Vulkan conversion done in 3281a27

Tagging right after the CIs are green.

@mosra

This comment has been minimized.

Copy link
Owner Author

mosra commented Feb 5, 2019

@pthom The v2019.01 tag is pushed now, so I guess ready for Hunter packaging. Sorry for this taking so long and thanks in advance! 👍

@pthom

This comment has been minimized.

Copy link
Contributor

pthom commented Feb 5, 2019

@mosra: here is the PR for corrade v2019.01 : ruslo/hunter#1730

@mosra

This comment has been minimized.

Copy link
Owner Author

mosra commented Feb 5, 2019

Wow, you're quick :)

@pthom

This comment has been minimized.

Copy link
Contributor

pthom commented Feb 5, 2019

@mosra :

@mosra mosra moved this from TODO to In progress in Project management Feb 7, 2019

@mosra

This comment has been minimized.

Copy link
Owner Author

mosra commented Feb 10, 2019

@pthom thanks for all the work on the Hunter package :) It's now in the docs as well.

@mosra mosra unpinned this issue Feb 10, 2019

@mosra

This comment has been minimized.

Copy link
Owner Author

mosra commented Feb 18, 2019

Arch packages (or at least the two main ones) are updated now as well, so I think I can finally close this.

For the record, the release announcement is here: https://blog.magnum.graphics/announcements/2019.01/

@mosra mosra closed this Feb 18, 2019

Project management automation moved this from In progress to Done Feb 18, 2019

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