Skip to content

Releases: ppy/osu-framework

2023.707.0

07 Jul 11:56
a08e61c
Compare
Choose a tag to compare

What's Changed

  • Add support for alternative clipboard keys (ctrl-insert / shift-delete / shift-insert) by @peppy in #5870
  • Fix android safe area not updating after returning to game with a different orientation by @Joehuu in #5872
  • Update deployment workflow to automatically run on new tag by @peppy in #5873
  • Update veldrid by @peppy in #5876
  • Fix IWindow.Resized being invoked with invalid data during WindowMode switch by @Susko3 in #5880
  • Make IWindow and IGraphicsSurface implementations internal by @Susko3 in #5881
  • Set PerMonitor V2 DPI awareness on Windows by @Susko3 in #5877
  • Work around iOS linker including ApplicationServices framework during compilation by @frenzibyte in #5886
  • Make shaders with passthrough layouts deterministic again by @smoogipoo in #5889
  • Fix game benchmarks being completely broken by @peppy in #5884
  • Reduce complexity overhead (and avoid one copy) when obtaining character SSDQs in SpriteTextDrawNode by @peppy in #5883
  • Reduce VBO buffer count to 2 by @peppy in #5896
  • Fix game tools being rendered outside safe area by @frenzibyte in #5887
  • Fix frame statistics display showing CADisplayLink callback delays under "WndProc" time by @frenzibyte in #5898
  • Pool and limit how many GC boxes can be displayed on FrameStatisticsDisplay at once by @peppy in #5899
  • Fix PerformanceOverlay autosize not working due to incorrect anchor by @peppy in #5900
  • Switch osu!framework iOS projects to use AOT compilation on release configurations by @frenzibyte in #5903
  • Disable front-to-back pass by default on all platforms by @peppy in #5905
  • Avoid initialising textures when unnecessary by @peppy in #5901

Full Changelog: 2023.625.0...2023.707.0

2023.625.0

25 Jun 02:59
ef2abda
Compare
Choose a tag to compare

What's Changed

  • Exclude U+202F NARROW NO-BREAK SPACE from being treated as fixed-width by @bdach in #5869
  • Fix NRT-related issues found game-side by @bdach in #5868

Full Changelog: 2023.624.0...2023.625.0

2023.624.0

24 Jun 15:37
9746d7d
Compare
Choose a tag to compare

What's Changed

  • Fix stray inspection showing up in rider by @peppy in #5856
  • Tidy up hot reload notification toast by @peppy in #5854
  • Improve nested ScrollContainer tests by @Susko3 in #5845
  • Bump OpenTabletDriver version to 0.6.1.0 by @X9VoiD in #5859
  • Cleanup Veldrid shader resource layouts and add header guard by @smoogipoo in #5857
  • Fix possible nullref when binding textures under Veldrid by @smoogipoo in #5862
  • Remove assembly dropdown from visual test browser by @peppy in #5855
  • Ensure triple buffer never uses the same buffer twice in a row by @peppy in #5853
  • Don't apply RenderBufferFormats to effect buffers by @EVAST9919 in #5865
  • Apply NRT to all files where it can be easily applied by @peppy in #5867

Full Changelog: 2023.620.0...2023.624.0

2023.620.0

20 Jun 08:00
147424e
Compare
Choose a tag to compare

What's Changed

  • Add source generator for HandleInputCache by @smoogipoo in #5761
  • Avoid initialising VeldridVertexBuffer immediately by @peppy in #5849
  • Fix item labels not generated while dropdown is in Ready state by @frenzibyte in #5850

Full Changelog: 2023.618.0...2023.620.0

2023.618.0

18 Jun 11:56
86e4ba9
Compare
Choose a tag to compare

What's Changed

  • Add include guards to all shaders by @smoogipoo in #5832
  • Update README.md to include VS Code plugin prerequisites by @Dreamurrrr in #5833
  • Remove Dropdown.AddDropdownItem(text, value) overload by @Susko3 in #5831
  • Add UseLocalVeldrid scripts by @smoogipoo in #5835
  • Fix cases of incorrect nullability in ToString override definitions by @frenzibyte in #5837
  • Add disk cache for shader compilations by @smoogipoo in #5829
  • Remove overrides of PopIn/PopOut in FocusedOverlayContainer by @jai-x in #5834
  • Add new DeferredStagingBuffer type by @smoogipoo in #5838
  • Fix WaitUntilNextFrameReady not being accounted for as Sleep time by @peppy in #5840
  • Move midi initialisation to a thread by @peppy in #5839
  • Enforce presence of all fragment shader inputs in Veldrid by @frenzibyte in #5687
  • Fix Dropdown calling GenerateItemText() before it was fully loaded by @Susko3 in #5836
  • Expose Path.BackgroundColour as a settable property by @smoogipoo in #5830
  • Fix UseLocalVeldrid not adding satellite assemblies to slnf files by @peppy in #5842
  • Fix nested DI candidates not analysed in non-candidate parent types by @smoogipoo in #5841
  • Fix performance when viewing the tail end of a long / zoomed-in waveform by @peppy in #5843
  • Ensure renderer-api-driven frame wait is only invoked when a frame is actually drawn by @peppy in #5846
  • Improve metal frame rendering when more than one display is connected by @peppy in #5847

Breaking Changes

AddDropdownItem(LocalisableString text, T value) has been removed

If you were using this, refactor your code to use LocalisableString GenerateItemText(T value) instead.

Easiest way is to add LocalisableString? CustomDropdownText to your T, or wrap T in a class that has one.
Then simply change GenerateItemText() to use that:

public partial class MyDropdown : Dropdown<T>
{
    protected override LocalisableString GenerateItemText(T value)
        => value.CustomDropdownText ?? base.GenerateItemText(value);
}

Subclasses of FocusedOverlayContainer must now implement Pop{In,Out}()

Previously, subclasses of FocusedOverlayContainer were not forced to implement Pop{In,Out} themselves, despite actually needing to do so for the overlay to actually play transitions out correctly. This has now been changed and inheritors of the class must always implement Pop{In,Out}.

In practice this should not break any reasonable consumers of the class, except for the need to remove any base.Pop{In,Out}() calls in classes that directly inherit FocusedOverlayContainer and call base in Pop{In,Out}().

New Contributors

Full Changelog: 2023.608.0...2023.618.0

2023.608.0

08 Jun 16:22
b5e8a9b
Compare
Choose a tag to compare

What's Changed

  • Expose truncated state of SpriteText by @Joehuu in #5636
  • Remove redundant nullable suppression directives by @frenzibyte in #5824
  • Reduce invalidations of childrenSizeDependencies in edge cases by @smoogipoo in #5825
  • Update Veldrid package to revert CADisplayLink implementation from veldrid-side by @frenzibyte in #5826

Full Changelog: 2023.531.0...2023.608.0

2023.531.0

31 May 14:54
4de1bae
Compare
Choose a tag to compare

What's Changed

  • Force FrameTimeDisplay font choice to framework font by @peppy in #5806
  • Avoid creating new List<RectangleI> when no texture uploads are required by @peppy in #5807
  • Use DummyRenderer in HeadlessGameHost by @smoogipoo in #5810
  • Simplify UBO uploads by @smoogipoo in #5778
  • Simplify GL renderer uniform buffer binding by @smoogipoo in #5758
  • Match BDL SGen attributes by full type name by @smoogipoo in #5814
  • Combine source-gen and reflection BDL pathways by @smoogipoo in #5812
  • Allow SearchContainer implementations to manually trigger a Filter operation by @Cootz in #5772
  • Fix not being able to parse empty string into nullable bindable by @smoogipoo in #5815
  • Fix WndProc reporting too much elapsed time by @peppy in #5819
  • Update veldrid with macOS CVDisplayLink support by @peppy in #5821
  • Improve iOS/iPadOS frame timings by using CADisplayLink by @peppy in #5820

New Contributors

Full Changelog: 2023.521.0...2023.531.0

2023.521.0

22 May 00:02
9f689c5
Compare
Choose a tag to compare

What's Changed

  • Change method group inspection to warning to match osu! by @peppy in #5793
  • Fix source transfers on Interpolating and Decoupled clocks breaking by @peppy in #5782
  • Revert method group change in hot path by @peppy in #5796
  • Revert Schedule changes to Dropdown by @peppy in #5794
  • Add BindableList.ReplaceRange as an atomic operation by @Susko3 in #5797
  • Fix event bindings from long press flow in CursorContainer not being cleaned up by @peppy in #5798
  • Show more information in frame statistic display by @peppy in #5801
  • Unmap persistent buffers before uploading by @smoogipoo in #5800
  • Pin builds to .NET 6 by @peppy in #5804
  • Update SDL native libraries by @peppy in #5805
  • Use float for color space conversion by @huoyaoyuan in #5802

Full Changelog: 2023.513.0...2023.521.0

2023.513.0

13 May 11:53
034729d
Compare
Choose a tag to compare

What's Changed

  • Disable relative-mode mouse by default on Linux by @smoogipoo in #5776
  • Update installation command in template README by @jlacroix10 in #5781
  • Reduce overhead induced by checking Bass CPU usage by @peppy in #5784
  • Cache value of VerticalSync to avoid overhead retrieving from SDL2 each time by @peppy in #5783
  • Fix D3D11 losing performance by constantly mapping/unmapping buffers by @smoogipoo in #5785
  • Revert changes to texture upload from manual mipmap generation pull by @bdach in #5787

New Contributors

Full Changelog: 2023.510.0...2023.513.0

2023.510.0

10 May 06:10
ac32f37
Compare
Choose a tag to compare

What's Changed

  • Refactor source generation for abstraction by @smoogipoo in #5760
  • Remove cast in ResourceStore constructor by @nobbele in #5771
  • Remove [ExcludeFromDynamicCompile] attribute by @bdach in #5773
  • Update veldrid SPIRV with fix for older macOS versions by @peppy in #5780

New Contributors

Full Changelog: 2023.506.0...2023.510.0