Skip to content

Conversation

raytopianprojects
Copy link
Contributor

@raytopianprojects raytopianprojects commented Apr 15, 2024

Issue description

There have been many requests from community members to be able to add their own shaders to CommonFilters because it saves them a lot of time and effort of having to re-implement filters that are already supported.

Solution description

In short these changes allow users to add their own shaders to CustomFilters, have ported all built in shaders to use new system and additionally add Chromatic Aberration, Vignette, Tint, Distortion, Resolution, LUT, and Film Grain as built in filters because they are now common.

New API

delFilter(name) 
loadFilter(name, shader_string, uniforms=None, consts=None, shader_inputs=None, needed_textures=None, needed_coords=None, render_into=None, auxbits=None, is_filepath=False, order=None

Here is an example of how AmbientOcclusion is implemented using the new system.

load_filter("AmbientOcclusion",
                   shader_string="o_color *= tex2D(k_txssao2, l_texcoord_ssao2).r;\n", # This will code will be added to the shader used by finalquad.
                   needed_textures=["ssao0", "ssao1", "ssao2", "depth", "aux"], # Tells the system additional textures that need to be created
                   needed_coords=["ssao2"], # Some shaders need additional coords due to render passes
                   auxbits=[AuxBitplaneAttrib.ABOAuxNormal], # Enables use of AuxBits generated by the auto shader
                   # render into takes the format of a dictonary whose arguments will be passed into renderQuadInto
                   render_into={ 
                       "filter-ssao0": {
                           "colortex": "ssao0", # a string type means use a texture with this name
                           "shader_inputs": {
                               "depth": "depth",
                               "params1": (numsamples, -amount / numsamples, radius, 0),
                               "params2": (strength, falloff, 0, 0),
                               "normal": "aux",
                               "random": base.loader.loadTexture("maps/random.rgb"),
                           },
                           "shader": Shader.make(SSAO_BODY % numsamples, Shader.SL_Cg) # Can also be a string
                       },
                       "filter-ssao1": {
                           "colortex": "ssao1",
                           "shader_inputs": {
                               "src": "ssao0",
                           },
                           "div": 2,
                           "shader": Shader.make(BLUR_X, Shader.SL_Cg)
                       },
                       "filter-ssao2": {
                           "colortex": "ssao2",
                           "shader_inputs":
                               {
                                   "src": "ssao1",
                               },
                           "shader": Shader.make(BLUR_Y, Shader.SL_Cg)
                       },
                   }, order=2) # Order allows users to set what order a filter will be applied. If no order is set then the filter's order will be set equal to the total amount of filters that are being applied.

Due to changes to reconfigure there have been minor breaking changes (some filters don't take the same arguments due to not needing them), despite this though all filters have been tested and have the same visual output.

Checklist

I have done my best to ensure that…

  • …I have familiarized myself with the CONTRIBUTING.md file
  • …this change follows the coding style and design patterns of the codebase
  • …I own the intellectual property rights to this code
  • …the intent of this change is clearly explained
  • …existing uses of the Panda3D API are not broken
  • …the changed code is adequately covered by the test suite, where possible.

Allow users to add their own shaders to CustomFilters. Port all built in shaders to use new system. Additionally add Chromatic Aberration, Vignette, Tint, Distortion, Resolution, LUT, and Film Grain as built in filters.

vfs: VirtualFileSystem = VirtualFileSystem.get_global_ptr()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This type annotation is only useful if the type-checker doesn't have information about what VirtualFileSystem.get_global_ptr returns (i.e., through stubs). If that's the case, the type-checker almost certainly doesn't know anything else about a VirtualFileSystem, so it doesn't really do much in any case. I'd recommend removing it, unless I'm missing something.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for catching that.

@raytopianprojects raytopianprojects marked this pull request as ready for review April 16, 2024 14:46
@rdb
Copy link
Member

rdb commented May 14, 2024

This is pretty neat. I think we need a new filter system on the C++ end of Panda, but there's no way that'll make it in time for 1.11, and this is simple enough that I might consider accepting this in the interim.

I prefer splitting the PR into the part containing the new system and the part with the additional filters for individual review.

I'm on the fence about stuffing the entire definition into a single dictionary structure. It gets unwieldy compared to an object hierarchy, but on the other hand, it does make it easier to load filters from some json-like file structure, hmm.

How is the order of render targets maintained? Dictionary insertion order?

If the uniforms and shader inputs are supposed to be specified in the same load_filter call, should they not go in the same place, with a shader input dictionary containing name, type and (default) value? Or is there a reason it was done this way?

Use the word "sort" instead of "order" for consistency with other parts of the Panda API.

Having the order default to None for these filters is a breaking change. There's an order enforced currently, one which makes sense. It shouldn't suddenly make tone mapping go after sRGB encoding if someone happens to call them in a different order, with the default settings.

I will think a bit more about the other aspects.

@raytopianprojects
Copy link
Contributor Author

raytopianprojects commented May 14, 2024

This is pretty neat. I think we need a new filter system on the C++ end of Panda, but there's no way that'll make it in time for 1.11, and this is simple enough that I might consider accepting this in the interim.

Yeah I agree that this is more of a stop gap then the permanent system.

I prefer splitting the PR into the part containing the new system and the part with the additional filters for individual review.

I'll split the PR up and it'd be good anyways to get feedback on some new filters people would like.

I'm on the fence about stuffing the entire definition into a single dictionary structure. It gets unwieldy compared to an object hierarchy, but on the other hand, it does make it easier to load filters from some json-like file structure, hmm.

The dictionary structure was partially inspired by how webgpu's render pipelines work and in my opinion it's nice to use but also very powerful. I can also look into adding json loading/saving for the filters. I mean we can already save/load particles so why not filters. If I do add that though loadFilter should probably become setFilter instead.

How is the order of render targets maintained? Dictionary insertion order?

Currently yes, but I could add a way to set the sort.

If the uniforms and shader inputs are supposed to be specified in the same load_filter call, should they not go in the same place, with a shader input dictionary containing name, type and (default) value? Or is there a reason it was done this way?

Looking at it again, it's because you can load the shader string from a file but I'll experiment and see which is more ergonomic.

Use the word "sort" instead of "order" for consistency with other parts of the Panda API.

Will do!

Having the order default to None for these filters is a breaking change. There's an order enforced currently, one which makes sense. It shouldn't suddenly make tone mapping go after sRGB encoding if someone happens to call them in a different order, with the default settings.

I was on the fence if I should assign default orders to the or not but you're correct that it could cause a lot of issues if I break that. I'll fix that breaking change.

I will think a bit more about the other aspects.

Yeah if you have any other feedback or ideas please let me know (we can also discuss in the discord if you have time). I'd love having this get merged and I believe that it'd make writing filters a lot more accessible, which in turns brings more people into Panda3D.

Also I have been working on a similar api but at the node level, I can make a pull request if you'd be interested. https://github.com/raytopianprojects/Effects

@rdb
Copy link
Member

rdb commented May 14, 2024

I'm not proposing we add JSON loading to this system—it was just an observation that it would be easy for a user to do this with this structure.

Another thought I have is that people might want to write filters in GLSL going forward, but I'm not quite sure how to address that issue here.

@raytopianprojects
Copy link
Contributor Author

raytopianprojects commented May 14, 2024

Yeah I've been thinking about GLSL authoring too.

I could spend the time converting the CG shaders to GLSL and then add the add the ability to switch between the languages but then again I don't know how many users are creating new projects using CG. So it might be worth just having GLSL as an option.

Ensure that each filter's sort is no longer a breaking change, add examples/test if CommonFilters is ran by itself, add printShader for to easily see internal shader code (should be changed to better work with Panda3D's own debug system), remove newly added filters (will be in separate pr), change how uniforms work so you just need to pass in a uniform as a dict instead of 3 separate args, and add reconfiguring to cleanup so the internal uniforms and textures dicts don't get removed when adding new filters.
@raytopianprojects
Copy link
Contributor Author

I've made changes based on your feedback rdb. I'll be creating a separate new filters pr soon.

While it no longer does anything this should fix the last breaking change.
Fix delHighDynamicRange
Change imports back to being relative
Merge tonemapping code from tonemapping pull request.
commit d75d63b5ac16848c25514ba804839e244fee2095
Author: Raytopian Projects <54505044+raytopianprojects@users.noreply.github.com>
Date:   Sat Jun 14 15:56:45 2025 -0600

    CutScene Class for Direct

    Issue description

    People often times want to be able to wait for a event in-between intervals.

    Solution description

    I have created a CutScene class which holds a list of Intervals and WaitFor classes. The CutScene class goes through each interval and if the next one is a WaitFor object it won't progress until either the event is fired or (if supplied) the WaitFor 'times out'. I'd say that this class is pretty simple but should speed up the workflow of direct users.

    Checklist

    I have done my best to ensure that…

    …I have familiarized myself with the CONTRIBUTING.md file
    …this change follows the coding style and design patterns of the codebase
    …I own the intellectual property rights to this code
    …the intent of this change is clearly explained
    …existing uses of the Panda3D API are not broken
    …the changed code is adequately covered by the test suite, where possible.

commit cbb313d7329fd32ff85a517b50f048974aba00b5
Author: Olivier Roussel <olivier.roussel@inria.fr>
Date:   Sun May 11 09:15:12 2025 +0200

    Use Win32 native calls for atomic also with clang-cl (#1746)

commit 98a50a794d4d00c19660d29cfcddba7517514e46
Author: omn14 <sirole@gmail.com>
Date:   Wed Apr 16 13:52:24 2025 +0200

    x11: Add function for detecting auto repeat key events (#1735)

commit 3191a450abbfca19d60c9ffabc5e1b1d95d5cf22
Author: rdb <git@rdb.name>
Date:   Tue Apr 15 21:38:41 2025 +0200

    workflow: Update Ubuntu runners to 22.04

commit 33e6ed890792d202e80bf3ddf11c80db0fb46061
Author: omn14 <sirole@gmail.com>
Date:   Tue Apr 15 15:59:15 2025 +0200

    physics: Add support for distance-based falloff (#1731)

commit eae39b339ca3ba5e0271f353927cd02a433fe66b
Author: rdb <git@rdb.name>
Date:   Tue Apr 15 10:44:33 2025 +0200

    collide: Fix CollisionNode owner crash (grab GIL when destructing)

commit 54355795673880cadb3b006becc35f87630bf083
Author: WMOkiishi <w.muneo.o@gmail.com>
Date:   Sun Apr 6 02:10:50 2025 -0600

    showbase: Annotate basic `Messenger` methods (#1726)

commit 4b4fa038955d56710033a5022d40bfee9992318c
Author: WMOkiishi <w.muneo.o@gmail.com>
Date:   Sun Apr 6 02:10:15 2025 -0600

    direct: Annotate functions called directly by top-level code (#1727)

commit 6274b478aad8bac262471c361e677d45804a2295
Author: rdb <git@rdb.name>
Date:   Thu Feb 27 15:11:16 2025 +0100

    pstats: Better handle overlapping collectors in Timeline

    Prevents staircase effect where overlapping bars will end up ever
    increasing the number of rows

commit 5a97488adfcbab5b9ebae37cf763eb5a43cd0cc4
Author: rdb <git@rdb.name>
Date:   Thu Feb 27 15:10:53 2025 +0100

    gtk-stats: Support trackpad zoom/pan gestures in Timeline view

commit 7c16720bb9b85199d2f175c5eede0cadc94c4d5b
Author: rdb <git@rdb.name>
Date:   Tue Feb 25 12:11:00 2025 +0100

    webgl: Improve canvas resizing behavior

    Automatically resize canvas to the CSS size

commit 85541de504840c076026202a57760c9a3c01be66
Author: rdb <git@rdb.name>
Date:   Mon Feb 24 22:45:48 2025 +0100

    grutil: Add support for playing video via HTML video+WebGL

commit c960874d4ee06303ff7ea439d0f6abe44b70ca77
Author: rdb <git@rdb.name>
Date:   Mon Feb 24 20:07:31 2025 +0100

    downloader: Add url property to VirtualFileHTTP

commit ab57b3c72f3cdacf6a7bbbcc29c94afff5825572
Author: rdb <git@rdb.name>
Date:   Mon Feb 24 20:06:28 2025 +0100

    downloader: Fix HTTP downloads on latest emscripten

commit f4da124b501b7a702d0469f3be249ed01f50c2dd
Author: rdb <git@rdb.name>
Date:   Sat Feb 22 11:06:31 2025 +0100

    pgraphnodes: Add setter for shadow buffer sort

commit 8de98592ca49a55bc71ca6cd934e3f0b8a74cf80
Author: WMOkiishi <w.muneo.o@gmail.com>
Date:   Wed Feb 19 10:59:19 2025 -0700

    showbase: Annotate basic `Loader` methods (#1723)

commit a7f8c57681522dedfb7d24290c98f3b09bed2a07
Author: rdb <git@rdb.name>
Date:   Wed Feb 5 10:12:28 2025 +0100

    display: Add per-shader PStats timer for compute dispatches

    Also add a total work group counter

    Fixes #1721

commit c729c75b299cb7d7945daaded6691fdf973fc458
Author: rdb <git@rdb.name>
Date:   Wed Feb 5 10:03:54 2025 +0100

    display: Add queries for max work group count/size/invocations

    Fixes #1713

commit fef27a7cb0d0158a9e4ea6d08790fabadd03f639
Author: rdb <git@rdb.name>
Date:   Mon Feb 3 18:09:00 2025 +0100

    Update emscripten to 4.0.2, Python to 3.12.8, enable bulk memory

commit 6452907b64daa1fd810a5d80bb38563e33e8703d
Author: rdb <git@rdb.name>
Date:   Mon Feb 3 18:06:30 2025 +0100

    Improvements for env handling with node.js and emscripten

    - Initializes the environment so that getenv et al works properly
    - No longer calls JS functions at static init time; the JS preamble will
      pass the right env vars to ExecutionEnvironment
    - Sets the binary name to the path of the .js file

commit 8a1159f4a7b9dc44c7519524ac09136777e24236
Author: rdb <git@rdb.name>
Date:   Sun Feb 2 20:12:17 2025 +0100

    makepanda: Only build pnmimagetypes with exceptions if using OpenEXR

commit 79d6727077c78e5f2dbb7c9dd85ccbc81ad40b6c
Author: rdb <git@rdb.name>
Date:   Sun Feb 2 20:11:32 2025 +0100

    Move MAIN_DIR initialization code from interrogate to panda3d

    Using the new -init flag, see panda3d/interrogate#3

commit ea1cbe47ac8f476e0d9ebd3e77f30c1d56b33fcf
Author: rdb <git@rdb.name>
Date:   Sun Feb 2 20:07:10 2025 +0100

    dist: Add missing hidden import for panda3d.core on enum

commit 3f0f90d83db21ab718e624bcbd28b042ab74435c
Author: rdb <git@rdb.name>
Date:   Sun Feb 2 20:06:46 2025 +0100

    makepanda: Don't try to call interrogate_module with -vv

commit b0e1e0c75a9af617060e224b5472cb68e9a7c13c
Author: WMOkiishi <w.muneo.o@gmail.com>
Date:   Sun Jan 12 17:47:15 2025 -0700

    showbase: Annotate callback methods

commit 0404febf96645f9ab3f913717263735f94a27d82
Author: rdb <git@rdb.name>
Date:   Thu Jan 30 14:13:15 2025 +0100

    windisplay: Fix IME result not showing up without `ime-aware true`

commit e681c17215c8b95c0b4f461b8b09569a38716bd4
Author: rdb <git@rdb.name>
Date:   Thu Jan 30 11:58:25 2025 +0100

    glgsg: Use glClearTexImage even when tex has no storage

    Just use glTexImage with null image to create the storage first, then
    clear it, this prevents needlessly generating a filled RAM image on the
    CPU

commit f188c8a028e5222a2f1d44c49d48cdc7e4def18c
Author: rdb <git@rdb.name>
Date:   Thu Jan 30 11:38:17 2025 +0100

    tests: Use approx comparison for test_depth_bias

commit 99b388871219be723ef2cad91c7606875d1e471e
Author: rdb <git@rdb.name>
Date:   Thu Jan 30 11:38:00 2025 +0100

    gobj: Fix Texture::clear_clear_color()

commit f6f391bd3decd945daafba06eda98999c6809856
Author: rdb <git@rdb.name>
Date:   Thu Jan 30 11:18:28 2025 +0100

    glgsg: Don't override texture clear color for FBO attachments

    This applies to FBOs without a clear set; the clear color set on the
    texture should determine the initial color.

commit 8114971c56ce89781e58336be6d5b349aca07b5a
Author: rdb <git@rdb.name>
Date:   Wed Jan 29 16:57:54 2025 +0100

    webgl: Improve handling of canvas focus

    Can now forcibly focus to the canvas with a foreground request, and now
    focuses automatically on window open (except if requested not to)

commit 1281875cbc871fd56abf1b3efe01c828f37bf5af
Author: rdb <git@rdb.name>
Date:   Wed Jan 29 16:04:53 2025 +0100

    linmath: Fix degenerate case in decompose_matrix

    Regression in 583f7366db786ff750d77fb8ff09fd3c5718db1c

commit 1fa8e2b0fc1d3926a1770e18d98f9c8f270a3a86
Author: rdb <git@rdb.name>
Date:   Wed Jan 29 16:38:41 2025 +0100

    webgl: Don't use stringToUTF32 for keypress handling

commit 287e456077701df8c3b06b9f71347d32f737c556
Author: rdb <git@rdb.name>
Date:   Wed Jan 29 16:56:58 2025 +0100

    glgsg: Fix BGR swap regression for sync uploads

    Was regression in 2a47826101b4ad798564a38bc3b38109994e4444

commit fa64a52fca875b99c1cdb423968bb53985afec7b
Author: rdb <git@rdb.name>
Date:   Wed Jan 29 11:12:07 2025 +0100

    glgsg: Do not prefer depth-stencil ms renderbuffers on macOS

    Fixes #1719

commit 1234388de8fdbace87c9e7765a979ba51f3b4b1f
Author: rdb <git@rdb.name>
Date:   Wed Jan 29 11:11:47 2025 +0100

    glgsg: Make multisample renderbuffer format match regular one

commit 9c7e9e9805d8379814997d46e5391778c322c7a4
Author: rdb <git@rdb.name>
Date:   Wed Jan 29 11:10:42 2025 +0100

    glgsg: Add more debug prints for renderbuffer creation

commit 97fcbc2e15c8dd4b9c08156708b2c9e6e75f4f45
Author: rdb <git@rdb.name>
Date:   Wed Jan 29 11:06:57 2025 +0100

    glgsg: Fix error message for unhandled external formats

commit 3725a00fdc65ff839c95f47e3852f1ba374bd444
Author: rdb <git@rdb.name>
Date:   Tue Jan 28 10:40:43 2025 +0100

    glgsg: Fix typo

commit 1a431b3894933df75bae4cc5a26fe10bbb3352ec
Author: rdb <git@rdb.name>
Date:   Tue Jan 28 09:53:34 2025 +0100

    glgsg: make async texture transfer threads configurable

commit 55a3a0d2af41db31a937f960dcc84d58a694dbe4
Author: rdb <git@rdb.name>
Date:   Mon Jan 27 17:26:17 2025 +0100

    glgsg: async screenshot refactor, general mechanism for fences

commit 2a47826101b4ad798564a38bc3b38109994e4444
Author: rdb <git@rdb.name>
Date:   Fri Jan 24 22:39:31 2025 +0100

    glgsg: Big refactoring of texture uploading, add async upload support

commit 2ea02ef0c8ad3d43e01b67f6d1ed1b2dafb46ac1
Author: rdb <git@rdb.name>
Date:   Fri Jan 24 22:19:42 2025 +0100

    putil: Add new primitives for async callbacks/futures

    These are a lot lighter than AsyncFuture and safer to use in C++ due to the reliance on RAII.  An async method can now take a CompletionToken, which will implicitly accept an arbitrary callable or an AsyncFuture pointer.

commit 67723ca06ac15ae6a43f7d780602fd32682e7d14
Author: rdb <git@rdb.name>
Date:   Mon Jan 27 13:03:36 2025 +0100

    display: Generalized method for running things on draw thread

    This is more general and elegant than manually listing all operations in
    a big enum

commit 5b0cf9e053dba0762b297744b5dd3d41c3189e85
Author: rdb <git@rdb.name>
Date:   Mon Jan 27 12:55:26 2025 +0100

    glgsg: More efficient handling of texture memory barriers

    New system uses counters instead of sets, just setting a counter for
    each barrier on a texture to the same value as a counter on the GSG when
    a barrier is pending, and incrementing the counter on the GSG whenever
    that barrier is issued, is enough to track pending barriers since
    barriers are global

commit a55860bf495403e810e0e1b289749432071cbcde
Author: rdb <git@rdb.name>
Date:   Mon Jan 27 11:52:32 2025 +0100

    glgsg: Fix memory barrier for extract_shader_buffer_data

commit 3833866801806568670e5fd8c100726e271b3088
Author: rdb <git@rdb.name>
Date:   Sat Jan 25 18:08:54 2025 +0100

    display: Add method to synchronously download SSBO contents

commit 7ba4fe365cb42f58fc6b6f306ce188d58cbbba01
Author: rdb <git@rdb.name>
Date:   Sat Jan 25 18:08:29 2025 +0100

    display: Add gsg.engine property

commit 3082d28fe81e4b1de4c93404ca343165f2a069ec
Author: rdb <git@rdb.name>
Date:   Wed Jan 22 22:17:56 2025 +0100

    pstatclient: Fix out-of-order events with thread profiling

    It could generate an end/start pair on a thread that is waiting due to other threads in that sync group submitting a PStats frame for the whole sync group, which would cause out-of-order events

commit da4e2cad9f7b1b799db54e1c3bc2af113032fbbb
Author: rdb <git@rdb.name>
Date:   Wed Jan 22 22:14:24 2025 +0100

    express: Use monotonic clock on POSIX (has nanosecond precision)

commit 674fa4480b8360eb8b8f8ed3124e25300e5506a8
Author: rdb <git@rdb.name>
Date:   Wed Jan 22 22:14:01 2025 +0100

    task: Fix first frame on task chain missed by PStats

commit 91f124e2f1f81c41f7aefaf3bde9dbcbd802e77f
Author: rdb <git@rdb.name>
Date:   Tue Jan 21 12:16:09 2025 +0100

    display: Allow setting a custom clock for a GraphicsEngine

    This is essential for supporting multiple engines, otherwise both engines will try to tick the global clock in render_frame()

commit 8c9ba6dc38290c990d240be20d545fa72587c78d
Author: rdb <git@rdb.name>
Date:   Tue Jan 21 12:04:01 2025 +0100

    cocoa: Fix compilation error

commit f872a82422e9b950b2224df5781b55af4021d0f0
Author: rdb <git@rdb.name>
Date:   Tue Jan 21 11:52:58 2025 +0100

    display: Support sharing graphics context between GraphicsEngines

    Automatically happens when creating a new window/buffer specifying a GSG that was created with a different engine.

commit 8f4d0c8a6634cbedc17ce728238145393eba85a8
Author: rdb <git@rdb.name>
Date:   Tue Jan 21 11:37:29 2025 +0100

    gobj: Make BufferContextChain thread-safe

commit db692edfa9fc6f0bb808891d772d637dfbc89c1e
Author: rdb <git@rdb.name>
Date:   Mon Jan 20 20:57:51 2025 +0100

    glgsg: Issue memory barriers for SSBOs

    At the moment, it assumes that all SSBO accesses are writes, once shaderpipeline lands we can sort out readonly accesses based on the qualifiers in the shader

commit 271fa9d9c03afc03943db3cb1ff26a28140c6d38
Author: rdb <git@rdb.name>
Date:   Sun Jan 19 11:09:47 2025 +0100

    glgsg: Fix issues with render-to-texture and cube map arrays

commit eb5366b9913898a1a8d596f05e0cf9d809302264
Author: WMOkiishi <w.muneo.o@gmail.com>
Date:   Thu Jan 16 08:04:09 2025 -0700

    tests: Update mypy to version 1.14.1 (#1715)

commit cc6646a448fcce061d5e89cba3cab6420d9efbae
Author: Disyer <daniel@tohka.us>
Date:   Sat Jan 11 21:32:52 2025 +0200

    cull: Fix crash caused by freeing a cull object with empty volume

commit be382a8f29f81c289be818760eae12523aa26837
Author: rdb <git@rdb.name>
Date:   Sun Dec 29 14:39:43 2024 +0100

    makewheel: Exclude some more system libs

    [skip ci]

commit 770e2fff0c6206bf4798c03288cb7490183343a3
Author: rdb <git@rdb.name>
Date:   Thu Dec 26 22:13:06 2024 +0100

    windisplay: Remove unused config.prc variable definitions:

    - responsive-minimized-fullscreen-window
    - hold-keys-across-windows
    - swapbuffer-framelock

commit f4337338c149b2fa3f1c0a1662b9104f14196288
Author: rdb <git@rdb.name>
Date:   Thu Dec 26 15:03:19 2024 +0100

    readme: Update Android build instructions

    [skip ci]

commit 598a94abfc0a5e20f2e00a2ce637ad36912e43f4
Author: rdb <git@rdb.name>
Date:   Thu Dec 26 15:00:55 2024 +0100

    android: Set minimum to API level 21

    [skip ci]

commit 5965d5bbece170c597f273be6c9935cc1b3c9bec
Author: burningbuffer <rodrigues3442@hotmail.com>
Date:   Sat Dec 21 14:53:07 2024 -0300

    windisplay: Prevent window resize to zero (#1705)

commit 899af61e2aacd8392890c008634286d25b67e0ad
Author: rdb <git@rdb.name>
Date:   Thu Dec 19 16:18:17 2024 +0100

    pgraph: Fix ModelPool return value reference count

commit e43dc87df593d3673b2daebbda00683f830221af
Author: rdb <git@rdb.name>
Date:   Sat Dec 14 15:25:03 2024 +0100

    Fix unit test failures on Python 3.13

commit 46cf9c0507b3c93c4ea85ea0374ae81803051999
Author: rdb <git@rdb.name>
Date:   Sat Dec 14 14:47:28 2024 +0100

    showbase: Fix Loader when destroying and recreating ShowBase

commit 3f2b9cd351ffe9ceaa849d556fd23340195e08f1
Author: rdb <git@rdb.name>
Date:   Sat Dec 14 13:25:12 2024 +0100

    pgraph: Make ModelPool.load_model() work same as Loader.load_sync()

    ModelPool.load_model() did not work like the other pools, didn't resolve relative to the VFS, didn't respect loader options... let's just make these work the same.  We should deprecate one in favor of the other eventually

commit 343ec6b3673f1520882da3b79cb9e53c6516df14
Author: rdb <git@rdb.name>
Date:   Sat Dec 14 12:57:27 2024 +0100

    showbase: Create Loader before ShowBase, importable from ShowBaseGlobal

    This makes it possible to load models before opening ShowBase

commit 5d465be01e9ac5a8aad9cb689af822f60682b7e9
Author: rdb <git@rdb.name>
Date:   Sat Dec 14 12:50:02 2024 +0100

    samples: Remove unused CardMaker import from procedural-cube sample

commit 5e0504972568eda733bacbab7e6ff0c4e5d2585f
Author: rdb <git@rdb.name>
Date:   Sat Dec 14 12:48:24 2024 +0100

    collide: Add custom owner field to CollisionNode

    This stores a weakref to a custom Python object, useful for being able to look up the game object corresponding to a particular collision node in an event without the downsides of Python tags

    Fixes #1703

commit 6f33bbecea7b1a3dd286c8131af36cace70a6229
Author: rdb <git@rdb.name>
Date:   Tue Dec 3 13:19:48 2024 +0100

    glgsg: Fix use after free with gl-force-fbo-color and layered FBO

commit 26dd78415366676246f144bbe10040e0550bbef4
Author: rdb <git@rdb.name>
Date:   Tue Dec 3 13:19:17 2024 +0100

    gobj: Make BufferResidencyTracker::_residency a const field

commit ff111132f41e72f864bb6747067a7f7f6b82511b
Author: rdb <git@rdb.name>
Date:   Wed Nov 27 18:11:10 2024 +0100

    android: Draw to whole window, ignoring contentRect

    This contentRect is quite odd and blocks out a big chunk at the top of the screen which doesn't really seem to correspond to anything

commit d87cbbce628ec2a20cea4dfc3ddf9b59f0f337a6
Author: rdb <git@rdb.name>
Date:   Wed Nov 27 18:10:18 2024 +0100

    dist: Validate application_id when building for Android

commit 7d753d479fb482026a0abd10eba5883befc5d427
Author: rdb <git@rdb.name>
Date:   Wed Nov 27 17:16:22 2024 +0100

    dist: Set various AndroidManifest.xml attribs, support appCategory

commit 6f0fa2b4ec3660fe220cec086196e3fa4e299c5b
Author: rdb <git@rdb.name>
Date:   Wed Nov 27 17:09:29 2024 +0100

    dist: Fix for Android configuration changes restarting app

    Intended to address most of #1216

commit 73c6759984cd8bb6d8cf1302e61dea1f0ec428b4
Author: rdb <git@rdb.name>
Date:   Wed Nov 27 16:25:24 2024 +0100

    android: Exit process after activity shutdown

    Hack to help with #1216 a bit

    Unfortunately this causes the activity to reopen sometimes, but maybe this can serve as a stopgap for now

commit 8a1d0f7a5a8ae7c53b60c4c4bc99373c4028a539
Author: rdb <git@rdb.name>
Date:   Wed Nov 27 16:00:59 2024 +0100

    makepanda: use javac from JAVA_HOME, check for deprecations

commit a855071bcf47cf98a54742d6bc4d7550c27fbcf2
Author: rdb <git@rdb.name>
Date:   Wed Nov 27 15:57:05 2024 +0100

    showbase: Fix regressions on Android due to not running on main thread

commit d6acaaffb0354f6078fcdc23fa2cefbb086d1bc0
Author: rdb <git@rdb.name>
Date:   Wed Nov 27 00:10:37 2024 +0100

    dist: Android fixes, esp. for Python 3.13

    This changes the use of sys.executable to sys.platlibdir, which requires Python 3.9+ (but that's probably okay since Python 3.8 is EOL)

    Python 3.13 has proper official Android support, including built-in stdout/stderr redirection, but it only does so if sys.executable is not set

commit 46e90058b9e373cc0a285c4be9cc8d7b3e0a51f6
Author: rdb <git@rdb.name>
Date:   Wed Nov 27 00:09:02 2024 +0100

    android: Fix crash on shutdown if stdout/err is not redirected

commit d1707c48fc32f931bcbbe1f56ebd35ff62c66a65
Author: rdb <git@rdb.name>
Date:   Wed Nov 27 00:08:09 2024 +0100

    makewheel: Correct path to libpython on Android

commit a32030d46e6a96547fe4ebe6b1036be652ef659f
Author: rdb <git@rdb.name>
Date:   Tue Nov 26 18:16:01 2024 +0100

    framework: Clean up task manager on close_framework()

    This prevents crashes due to the tasks it spawns continuing to run

commit ff3e7da752e5b7d031a9817de6e50e930adf8187
Author: rdb <git@rdb.name>
Date:   Tue Nov 26 17:02:26 2024 +0100

    pipeline: Never try to detach external pthread (fixes Android crash)

commit ac68b85d1f8fd18b0ad0df805744525f5ffd68fd
Author: rdb <git@rdb.name>
Date:   Tue Nov 26 16:42:45 2024 +0100

    shader: Fix compilation warning

commit 347164103c0de735173ebf209f68c06292f5bb69
Author: rdb <git@rdb.name>
Date:   Tue Nov 26 16:42:21 2024 +0100

    text: Don't try to use harfbuzz if freetype is not enabled either

commit c31041c8cc45a8d5ed850bdce535882ee533a199
Author: rdb <git@rdb.name>
Date:   Tue Nov 26 16:42:02 2024 +0100

    android: Fix assorted errors and deprecations

commit 44a41168bc225c27bc3656ad17f3fa124012b6ff
Author: rdb <git@rdb.name>
Date:   Tue Nov 26 16:41:13 2024 +0100

    makepanda: Fix assorted Android compile / package issues

commit 7191fb1ed68e470cdc7b11f3b5b74544991caea0
Author: rdb <git@rdb.name>
Date:   Tue Nov 26 16:40:49 2024 +0100

    makepanda: Don't look for macOS framework when cross-compiling

commit fa25c51d304a5fbe58f276ad7d4fe405bd9809d0
Author: rdb <git@rdb.name>
Date:   Tue Nov 26 16:40:18 2024 +0100

    notify: Fix compile error on Android

commit 639497310e2972eae81ee825dbdff14cdc02c520
Author: rdb <git@rdb.name>
Date:   Thu Nov 14 20:21:04 2024 +0100

    windisplay: Fix recursive loop in adjust_z_order

commit 22381c94d455f501b7364ba11296f459e44d66f4
Author: rdb <git@rdb.name>
Date:   Thu Nov 14 20:11:39 2024 +0100

    pgraphnodes: Disable lighting when rendering shadow cam

    This prevents accessing a texture (the shadow map) that we're currently rendering into.  Hopefully a reasonable driver was already optimizing out the access properly due to the color write being off, but it could cause unnecessary work in the driver

    This will have the effect of the shader generator generating a different shader for the shadow pass than for the main pass, ideally we optimize the shader generator a bit more so that there are fewer shaders generated for the shadow pass.

commit d173086a6f25ffe238f90b65386dad54119eb618
Author: rdb <git@rdb.name>
Date:   Thu Nov 14 20:07:48 2024 +0100

    putil: Fix SparseArray get_lowest_on_bit and get_lowest_off_bit

commit 804d49fdbb5d290c4558d56a8c8e6746e93a2696
Author: rdb <git@rdb.name>
Date:   Sat Nov 9 19:03:51 2024 +0100

    tinydisplay: Fix extracted texture not having sRGB format

commit 2b885944218b60ba9b6efc001e433a16a65e05b5
Author: rdb <git@rdb.name>
Date:   Sat Nov 9 19:03:27 2024 +0100

    tinydisplay: Fix vertex color being multiplied in even with material present

commit 134f0bbc8305281f459097ffea4e64bc74c82281
Author: rdb <git@rdb.name>
Date:   Sat Nov 9 19:02:54 2024 +0100

    tinydisplay: Fix material diffuse being ignored with only ambient light

commit 05d23cae351754150da61e20d1c822ecbcda2e6c
Author: rdb <git@rdb.name>
Date:   Sat Nov 9 19:02:28 2024 +0100

    tinydisplay: Set correct number of depth bits in buffer

commit d23e44e2f11830bb4fecbe8501143344ad7b68ab
Merge: f5433fa5d7 e270a073f4
Author: rdb <git@rdb.name>
Date:   Fri Nov 8 11:34:22 2024 +0100

    Merge branch 'release/1.10.x'

commit e270a073f490c7ec3ccd1719581a45de94b35743
Author: rdb <git@rdb.name>
Date:   Fri Nov 8 10:55:21 2024 +0100

    readme: Update download link to 1.10.15

    [skip ci]

commit f26009bd246bfcb66d36299be01588603c72ea58
Author: rdb <git@rdb.name>
Date:   Fri Nov 8 10:54:13 2024 +0100

    Add Python 3.13 to setup.cfg

    [skip ci]

commit 9dbd20d7bd0bd5a2f5d311a0d1307c4697003f3e
Author: rdb <git@rdb.name>
Date:   Thu Nov 7 16:20:49 2024 +0100

    workflow: No longer skip Python 3.13 builds on Windows

commit e199f25b4dc329a2b9776f22ba8952a8fe5ee520
Author: rdb <git@rdb.name>
Date:   Thu Nov 7 16:18:50 2024 +0100

    Update thirdparty links to 1.10.15

commit d8cc57a5f7ff282f9850ebd87fd6455617fcb45c
Author: rdb <git@rdb.name>
Date:   Thu Nov 7 16:01:19 2024 +0100

    doc: Add release notes for 1.10.15

    [skip ci]

commit f5433fa5d7de5d83eb7c58edbb5d1facf36d1a68
Author: rdb <git@rdb.name>
Date:   Thu Nov 7 12:49:11 2024 +0100

    CMake/makewheel: properly determine and pass platform tag

    One part of #1663

commit a6a386aab3031daae904de47fbfdb68282ec4d62
Author: rdb <git@rdb.name>
Date:   Thu Nov 7 11:34:02 2024 +0100

    text: Fix text-native-antialias not properly taking effect

commit b51dd4d7bc32706a1c31317acaed4618ecacde9a
Merge: 001d29e733 16431748de
Author: rdb <git@rdb.name>
Date:   Wed Nov 6 22:52:54 2024 +0100

    Merge branch 'release/1.10.x'

commit 16431748de941607c4cdd946cdc9260a7a025f52
Author: rdb <git@rdb.name>
Date:   Wed Nov 6 22:51:40 2024 +0100

    parametrics: fix RopeNode breaks due to float imprecision

    Fixes #1325

commit 001d29e733267efff405363b013bbe1e0a4b116d
Author: rdb <git@rdb.name>
Date:   Wed Nov 6 18:22:12 2024 +0100

    workflow: Fix correct outputdir for makepackage

commit a076dd4704f1fd27e7f3ea5a7fe21599c4a82701
Author: rdb <git@rdb.name>
Date:   Wed Nov 6 14:12:21 2024 +0100

    CMake: Fix issues locating Python in thirdparty on Windows

    Fixes #1472

commit 69498f23a528cd8d0904487196ac0ffb01941c27
Author: rdb <git@rdb.name>
Date:   Wed Nov 6 11:33:17 2024 +0100

    workflow: Add double-precision builds

    Fixes #1536

commit 0a4d22ad9fee6378eca84e656cea38136da835b3
Author: rdb <git@rdb.name>
Date:   Wed Nov 6 13:20:03 2024 +0100

    express: Fix VFS mount points not being listed as directories

    Fixes #1244

commit 4da5158b05294fa09033271c3e4927ca8cc8b7b4
Author: rdb <git@rdb.name>
Date:   Wed Nov 6 11:31:59 2024 +0100

    CMake: change how thirdparty directory is detected

commit 5caace1cdd1e8cdadfe3cc45c8b0828323f05dd0
Author: rdb <git@rdb.name>
Date:   Wed Nov 6 11:31:11 2024 +0100

    imageprogs: Fix compilation with CMake and STDFLOAT_DOUBLE

commit cdebca4703908a2b23c0900a62d604425f157229
Author: rdb <git@rdb.name>
Date:   Wed Nov 6 11:27:53 2024 +0100

    CMake: Only pass -fno-rtti and -frtti for C++ targets

commit 36d07e478cc45c9dc98cb01f49bc500f90c0b679
Author: rdb <git@rdb.name>
Date:   Wed Nov 6 11:14:08 2024 +0100

    makepanda: Remove unnecessary filesystem flags for emscripten run_tests

commit c3326fa0da094cb2b28b6c4c842852afb5b1f2a0
Author: rdb <git@rdb.name>
Date:   Wed Nov 6 11:09:50 2024 +0100

    tests: Fix node check for other envs

commit 8d24a5d1a90f12d4b2db5c96029b657f41b7cb45
Author: rdb <git@rdb.name>
Date:   Mon Nov 4 19:02:26 2024 +0100

    workflow: Disable Eigen on CMake macOS builder for now

    For some reason, CMake doesn't seem to respect CMAKE_CXX_STANDARD on macOS

commit 3585adfe338a3a16dff3aaaeb86035b699dad0e0
Author: rdb <git@rdb.name>
Date:   Mon Nov 4 16:03:27 2024 +0100

    workflow: Updates for runner deprecations

commit 72b9dd9a70b10b96e0f83b9423c80943e22feb09
Author: rdb <git@rdb.name>
Date:   Mon Nov 4 15:58:39 2024 +0100

    parser-inc: add emscripten/heap.h to squelch interrogate warning

commit 221d35d3a60bafd6f35aa7793397086994a3f29b
Author: rdb <git@rdb.name>
Date:   Mon Nov 4 13:31:22 2024 +0100

    Allow running test suite with emscripten via node.js

commit 8fcaea6e9006c4d14539d7f4b212296803fd7d0d
Author: rdb <git@rdb.name>
Date:   Mon Nov 4 15:28:06 2024 +0100

    makepanda: pip-install interrogate before setting PYTHONHOME

commit 271cd14544a01802c95eb8b29680679f53f1a570
Author: rdb <git@rdb.name>
Date:   Mon Nov 4 15:13:15 2024 +0100

    makepanda: Fix custom Python build location for cross-compile

commit 5722e40520ceacc5cba06990da4e0d61184bd0a8
Author: rdb <git@rdb.name>
Date:   Mon Nov 4 15:17:09 2024 +0100

    makepanda: Expand tilde in -incdir and -libdir options

commit e0c40968423be607278b1d77c9473b5a72548c50
Author: rdb <git@rdb.name>
Date:   Mon Nov 4 13:27:25 2024 +0100

    makepanda: Set extension suffix for emscripten properly

commit 7a690bb07110f50791e66a8daeef4d4bedc2a2a9
Author: rdb <git@rdb.name>
Date:   Mon Nov 4 13:26:29 2024 +0100

    makepanda: Link libmpdec.a et al in emscripten even with custom libdir

commit 7c74060035c21033885f75878921b6d620be7674
Author: rdb <git@rdb.name>
Date:   Mon Nov 4 13:25:36 2024 +0100

    dtoolutil: Read environment variables in emscripten under node.js

commit 94c63fe9da215b48ec2dfea4203e9e257531e842
Author: rdb <git@rdb.name>
Date:   Mon Nov 4 13:25:22 2024 +0100

    dtoolutil: Remove silly unused variable

commit 1a4ca179a98e5839f559488a77fb8d6f0c09b1bb
Author: rdb <git@rdb.name>
Date:   Mon Nov 4 13:19:38 2024 +0100

    tests: Properly skip Pmw tests when tkinter is not present

commit 60d7d9ec1e0a1f9b7c8311a94b32d550f9a979b7
Author: rdb <git@rdb.name>
Date:   Mon Nov 4 11:57:02 2024 +0100

    makepanda: Re-link executables with --static if dependency changed

commit c060b2f3feeee6f6549f045ab8307a07e259d6e2
Author: rdb <git@rdb.name>
Date:   Sun Nov 3 23:59:23 2024 +0100

    linmath: Fix vector printing issues with big values on emscripten

commit 8ff71aeb156161bb11bb7bda713fccba027c68a9
Author: rdb <git@rdb.name>
Date:   Sun Nov 3 23:58:28 2024 +0100

    webgl: Fix precision issues with default shaders

commit f4d9a6788810132a84bcaa8a8b3d23630a24326b
Author: rdb <git@rdb.name>
Date:   Sun Nov 3 23:57:04 2024 +0100

    makepanda: Add missing static libs for Python 3.12 emscripten build

commit 6823634f60a652be80b7ed627d1d11a2cea1e6c0
Author: rdb <git@rdb.name>
Date:   Sun Nov 3 16:23:31 2024 +0100

    cull: Use more efficient arena allocation for CullableObject

commit 50b984cffdfbc60e55cd9f95b5ca9affe65283df
Author: rdb <git@rdb.name>
Date:   Thu Oct 31 23:50:27 2024 +0100

    dtoolbase: Fix test failure on 32-bit Windows with pftoa

commit 7926d1047ef9b3b455642f5f13c839a11ede7cee
Author: rdb <git@rdb.name>
Date:   Thu Oct 31 14:58:00 2024 +0100

    text: Unbreak small caps support with text-use-harfbuzz

    Fixes #1666

commit 55fa0e9912633d0406f56033ec166b853e482717
Merge: 5b6318e77f 6f2231620d
Author: rdb <git@rdb.name>
Date:   Thu Oct 31 13:13:00 2024 +0100

    Merge branch 'release/1.10.x'

commit 6f2231620d796b47916397625f4bbfb78aaf76ad
Author: rdb <git@rdb.name>
Date:   Thu Oct 31 13:06:26 2024 +0100

    build_apps: Add bam_embed_textures option

commit 89c0371cbb8009a4a04438424c53e3c037e4fe47
Author: rdb <git@rdb.name>
Date:   Thu Oct 31 13:05:31 2024 +0100

    putil: BamWriter doc fix, initialize _root_node field properly

commit 5dcd70dcb5c513a26702df8708b98b84d5271bc2
Author: rdb <git@rdb.name>
Date:   Thu Oct 31 12:52:17 2024 +0100

    build_apps: Fix wrong relative paths with bam_model_extensions

    Fixes #1642

commit 2a6f4fc6ff4521b224a840d7064171f132600a66
Author: rdb <git@rdb.name>
Date:   Thu Oct 31 12:51:52 2024 +0100

    putil: Fix file_texture_mode on BamWriter not being writable

commit 32ad388a51a40c7f35a515b7c8819621f614a574
Author: rdb <git@rdb.name>
Date:   Thu Oct 31 12:51:31 2024 +0100

    gobj: Don't try to resolve empty alpha filename when writing bam

commit a311ad876f4dd64201b78c477364016efacffc3e
Author: rdb <git@rdb.name>
Date:   Thu Oct 31 12:51:07 2024 +0100

    test_wheel: Add --ignore option to ignore tests

commit e5ac1d0141295330ad4aa329d80c8412ce63dd37
Author: rdb <git@rdb.name>
Date:   Thu Oct 31 12:50:26 2024 +0100

    build_apps: Don't warn about missing ld-linux lib on aarch64

commit ff91f127bf2c11d05adb20f6e7f2ba234f1d6ec9
Author: rdb <git@rdb.name>
Date:   Wed Oct 30 21:51:56 2024 +0100

    py_compat: Fix Python 2.7 compilation error

    This code never actually gets compiled in Python 3

    [skip ci]

commit 5b6318e77f3cb1fea519bbd3cd637ad9b0be1606
Author: rdb <git@rdb.name>
Date:   Wed Oct 30 20:56:31 2024 +0100

    makepanda: Don't set macOS deployment target to 10.13 except when linking with Python

    This prevents building for multiple Python versions in the same build

    [skip ci]

commit c2de5c306f8430ed95b303d7edccbf132a240601
Author: rdb <git@rdb.name>
Date:   Wed Oct 30 20:19:05 2024 +0100

    makepanda: Don't link p3dcparse with pystub

    pystub doesn't really define enough symbols to be useful with newer Python versions, and it seems that there are compile errors with python 3.13t on manylinux2014 due to conflicts with the Python library itself

commit e2d9d3ef7ce56b37f417b6f2e455279433f67635
Author: rdb <git@rdb.name>
Date:   Wed Oct 30 20:09:31 2024 +0100

    makepanda: Fix python DLL not being copied into wheel on 3.13t

commit cfe3726aeb6d61180fb0c4c64fbf1306b0ce363e
Author: rdb <git@rdb.name>
Date:   Wed Oct 30 18:40:52 2024 +0100

    makepanda: Python 3.13 requires macOS 10.13

commit 957c4b9bce909b4ffb5af9f46715edaabe758517
Merge: 6d54aee0c7 27ce5c991e
Author: rdb <git@rdb.name>
Date:   Wed Oct 30 18:39:00 2024 +0100

    Merge branch 'release/1.10.x' into master

commit 6d54aee0c73da5eddce7afd0ce0d1085374c2255
Author: rdb <git@rdb.name>
Date:   Wed Oct 30 17:23:48 2024 +0100

    Remove runtime dependency on interrogatedb

commit 27ce5c991eb79c9bda6de439c0bec8198150fa9c
Author: rdb <git@rdb.name>
Date:   Wed Oct 30 14:57:35 2024 +0100

    dist: Python 3.13 requires macOS 10.13+

commit 0c1a0799b1a8dcead90c9f0879898a4a06ebd662
Author: rdb <git@rdb.name>
Date:   Wed Oct 30 14:41:06 2024 +0100

    Fix faulty auto-merge

commit 6010c711c0287a391d41175b3021ce3ebbdec18d
Author: rdb <git@rdb.name>
Date:   Wed Oct 30 14:14:25 2024 +0100

    tests: Add bin dir to PATH when running FreezeTool test

commit 5b80f19d01cbc46a09065f516aa9fe73084c6ce1
Author: rdb <git@rdb.name>
Date:   Wed Oct 30 14:13:44 2024 +0100

    Changes in preparation for Python 3.14

commit e58449cde70e29e80e62233d0e6ff7387c58bce6
Author: rdb <git@rdb.name>
Date:   Wed Oct 30 13:42:33 2024 +0100

    dtoolutil: Let Python do Filename conversion to UTF-8

commit 7560a1edd1f6a9c4954d8512cfddef428e94a8ed
Merge: a8d0f61e56 f47b34d2a1
Author: rdb <git@rdb.name>
Date:   Wed Oct 30 13:37:17 2024 +0100

    Merge branch 'release/1.10.x'

commit f47b34d2a13d02c67fd9e0e6cfaad2ddb0e3125f
Author: rdb <git@rdb.name>
Date:   Wed Oct 30 13:23:34 2024 +0100

    Fix remaining uses of ._PyType member in extension code

    This should be replaced with Dtool_GetPyTypeObject, hiding the implementation details a bit so that we can more easily change the underlying structure if we need later

    Also adds Py_NewRef to py_compat.h, backporting from master

commit df5f8d77daa802d030aa2277c5d7b987d7fd515a
Author: rdb <git@rdb.name>
Date:   Wed Oct 30 12:56:48 2024 +0100

    makepanda: Build fixes for Python 3.13t on Windows

commit e2385881181fe829a484983aa70ef1dbf19dcbf2
Author: rdb <git@rdb.name>
Date:   Wed Oct 30 13:16:25 2024 +0100

    makepanda: Fix wrong flag for excluding pythonXX_d.lib

commit 0ba2aadcd64584cc7c9b4625439e96b70daa92e5
Author: rdb <git@rdb.name>
Date:   Wed Oct 30 13:06:36 2024 +0100

    Introduce Py_IS_TYPE, use for Py_TYPE comparisons

commit 64454b1c9ff4fe7eb9a96a51cd2e3cccd1789038
Author: rdb <git@rdb.name>
Date:   Wed Oct 30 12:57:18 2024 +0100

    Replace direct uses of ob_type, which gives problems in nogil build

commit 10da05e2a64ae20db6ef351b3469039a352ce82d
Author: rdb <git@rdb.name>
Date:   Wed Oct 30 12:53:54 2024 +0100

    workflow: Skip Windows builds for Python 3.13 for now

commit a8d0f61e56613a0386657ad1ea818893b83698cc
Author: rdb <git@rdb.name>
Date:   Tue Oct 29 23:12:50 2024 +0100

    makepanda: Run correct interpreter when running --tests with 3.13t

commit b6e0088633ce4bc54d4f3f1b7030abe5d9f0fc9b
Author: rdb <git@rdb.name>
Date:   Tue Oct 29 23:11:06 2024 +0100

    makepanda: Specify --upgrade when installing interrogate

commit a632365b883ec0e37b1675261c38c55fe4e5abad
Author: rdb <git@rdb.name>
Date:   Tue Oct 29 22:23:50 2024 +0100

    win-stats: Handle app commands, support back keybind in flame graph

    See #1658

commit f9a5445d42f1eefa027d9b043727eb3ebd810747
Author: rdb <git@rdb.name>
Date:   Tue Oct 29 19:23:47 2024 +0100

    workflow: Test Python 3.13, update setup-python to v5

commit dbeab0b97bc7b0b363fb72ed9b1b8137b2626e25
Author: rdb <git@rdb.name>
Date:   Tue Oct 29 19:20:27 2024 +0100

    makepanda: Backport Python 3.13t build fixes

commit 12bb7d12bb0678ac229375a81aebc921e49c9958
Author: rdb <git@rdb.name>
Date:   Tue Oct 29 17:34:48 2024 +0100

    showbase: Fix DistancePhasedNode exception at module clean-up time

commit 7b02aa7026c91b9c665823f926379b7998aed59e
Author: rdb <git@rdb.name>
Date:   Tue Oct 29 17:32:27 2024 +0100

    makewheel: Fix NameError on Windows build

    [skip ci]

commit e0a8f7d1b82e25f0aff050537480bdbde398c2d7
Author: rdb <git@rdb.name>
Date:   Tue Oct 29 17:29:47 2024 +0100

    makepanda: Fix Windows wheel naming for 3.13t, it has no sys.abiflags

    [skip ci]

commit e9e9fb358411f24ba0e966ce5baf5d99d7e12548
Author: rdb <git@rdb.name>
Date:   Tue Oct 29 17:03:43 2024 +0100

    makepanda: Fixes for wheel naming in 3.13t build

    [skip ci]

commit fd7da1908ff89139694551573e4b70134e7d620c
Author: rdb <git@rdb.name>
Date:   Tue Oct 29 16:41:50 2024 +0100

    tests: Fix test suite with 3.13t build

    [skip ci]

commit 1f6ed882aba2658e21839a9c0ccf3a8d1cfce406
Author: rdb <git@rdb.name>
Date:   Tue Oct 29 16:36:49 2024 +0100

    makepanda: Use PythonT.framework when using free-threaded build

commit 6885edc8110c07995298741facc0acf52b0a82f3
Author: rdb <git@rdb.name>
Date:   Tue Oct 29 16:10:39 2024 +0100

    build: Update interrogate to 0.3.0 to support 3.13t build

commit c8a918a209c179e1cbcd898d251ca989e3cd053c
Author: rdb <git@rdb.name>
Date:   Tue Oct 29 13:15:28 2024 +0100

    pstats: Add Alt+Left in GTK flame graph to go back

    See #1658

commit 024b46b3cd95ee34433552b4c360f767a2a662d9
Author: rdb <git@rdb.name>
Date:   Tue Oct 29 13:10:47 2024 +0100

    workflow: dependabot updates

    Fixes #1696
    Fixes #1697
    Fixes #1698

    Co-authored-by: dependabot[bot] <support@github.com>

commit cd2ab8daeea330ab2309703437483cb2e10df102
Author: IsakTheHacker <67378443+IsakTheHacker@users.noreply.github.com>
Date:   Mon Oct 28 14:18:24 2024 +0100

    Create dependabot.yml (#1637)

    [skip ci]

commit c48721493ab2f16b049095fa147d8527414ef03f
Author: rdb <git@rdb.name>
Date:   Mon Oct 28 11:46:58 2024 +0100

    pstats: Allow scrolling through frames in flame charts

    Closes #1658

commit 9cbc45b9bf6b9994d8a2782b08359afb8eaf0902
Author: rdb <git@rdb.name>
Date:   Mon Oct 28 11:57:27 2024 +0100

    collide: Handle CollisionBox bam read without 2D info

commit 71e2b7fff60a7804a57f5cb7b33282b0532ceb9c
Author: rdb <git@rdb.name>
Date:   Mon Oct 28 09:20:33 2024 +0100

    collide: CollisionBox cleanup, remove redundant code, reduce mem use

commit a1fd79c80b532b3a17faa7572bfab0509e4d598c
Author: rdb <git@rdb.name>
Date:   Sun Oct 27 17:57:23 2024 +0100

    collide: Rewrite sphere-into-box collision test

    More reliable, possibly also better performance (but haven't profiled)

    Fixes #1673

commit 3d432ed8b29d0b1286ef9871fb01d3678be8e290
Author: rdb <git@rdb.name>
Date:   Sun Oct 27 17:54:30 2024 +0100

    collide: Fix sphere coming out wrong end of sphere with respect-prev-transform

    Even with respect-prev-transform, it was still possible to tunnel through another sphere if the new position is colliding with it but close to the opposing edge, since it would only activate the respect-prev-transform check if the new position isn't colliding.

commit 5f96cc592e57be00f5fd981cbb836cfded8c24ac
Merge: f5b0b1e1d6 d758d2b232
Author: rdb <git@rdb.name>
Date:   Sun Oct 27 09:40:52 2024 +0100

    Merge branch 'release/1.10.x'

commit d758d2b232e6501c9a53c375a69d2c6f7916903c
Author: rdb <git@rdb.name>
Date:   Thu Oct 24 16:41:56 2024 +0200

    pgui: Fix crash when PGEntry removes itself w/ background focus

    Fixes #1650

commit aa0462a35acb213aa4e969266d906dc7a388ed86
Author: rdb <git@rdb.name>
Date:   Thu Oct 24 16:17:49 2024 +0200

    fsm: Fix "no attribute notifier" error in requestNext/Prev

    Fixes #1644

commit b022fc9301a14bf0dd75b391e8ecbd3cfbbce568
Author: rdb <git@rdb.name>
Date:   Thu Oct 24 16:10:35 2024 +0200

    stdpy: Fix glob not finding files in VFS

    Half of fix to #1675

commit f5b0b1e1d614e2fdb5a6d49ea9fc3254b92f942d
Author: WMOkiishi <w.muneo.o@gmail.com>
Date:   Thu Oct 24 07:57:36 2024 -0600

    showbase: Annotate basic `ShowBase` setup/shutdown methods (#1558)

commit 42e2659636f0495f6c0e97b75f37f2212f0d861e
Author: rdb <git@rdb.name>
Date:   Thu Oct 24 15:39:43 2024 +0200

    filter: Add Khronos PBR Neutral tonemapping operator

    Closes #1661
    Fixes #1659

    Co-authored-by: Raytopia <54505044+raytopianprojects@users.noreply.github.com>

commit 583f7366db786ff750d77fb8ff09fd3c5718db1c
Author: rdb <git@rdb.name>
Date:   Sat Oct 19 11:52:10 2024 +0200

    linmath: Significant perf optimizations for decompose_matrix

commit f50fef37441e0b9c573b0078c3f1ff2edd325112
Author: rdb <git@rdb.name>
Date:   Thu Oct 17 12:32:33 2024 +0200

    Switch over to C++14, drop support for MSVC 2015

    The main reason is that the current development version of Eigen requires C++14 to be enabled, so otherwise we can't compile with the latest Eigen.

    If really needed, we can keep support for MSVC 2015 (please make your voice heard) but that would lock us out of a few features of C++14.

commit c6ed5acdc22f5321e1fe5ce7421293abd7d95a26
Author: Yonnji <46163506+Yonnji@users.noreply.github.com>
Date:   Fri Oct 18 12:03:15 2024 +0000

    fix building panda (#1694)

commit ad97e88a547198a3f95db756e748d21fc05f508f
Author: gabe <gabeklav@fastmail.com>
Date:   Thu Oct 17 15:34:32 2024 -0400

    Enable OpenAL-Soft extensions for non-framework builds and add config for disabling HRTF (#1620)

commit 905a7dd4829e037261d8f6a19b243ab91633551b
Author: rdb <git@rdb.name>
Date:   Thu Oct 17 16:23:36 2024 +0200

    glgsg: Fix missing include

commit 90d31bfe6f4a203d1bdaf6cfb0ae7c3f5db8b495
Author: rdb <git@rdb.name>
Date:   Thu Oct 17 16:18:42 2024 +0200

    github: Update issue templates, add links to forums/discord etc.

    [skip ci]

commit 7c9c4cd435b988db4e6e8acb5936f378b97be5b0
Author: rdb <git@rdb.name>
Date:   Thu Oct 17 16:18:12 2024 +0200

    gobj: devirtualize calls to GeomPatches::get_num_vertices_per_primitive()

commit 822d35d15b3370f9b3b4777b2ad781cff3cde0fc
Author: rdb <git@rdb.name>
Date:   Mon Oct 14 14:26:20 2024 +0200

    putil: Minor SimpleHashMap::remove() optimization

commit 61f8df2d7d64dc3ad29eab16659dd96311501735
Author: rdb <git@rdb.name>
Date:   Mon Oct 14 12:06:35 2024 +0200

    general: Fix assorted compiler warnings

commit 777ab6746cbd3e9ac12d6466d3c66470d68d6d64
Author: rdb <git@rdb.name>
Date:   Mon Oct 14 12:05:57 2024 +0200

    display: Fix double-precision build

    Fixes #1688

commit 52a7224d6ec86db4c18d18e658de0bbf79f649e2
Author: rdb <git@rdb.name>
Date:   Mon Oct 14 12:05:27 2024 +0200

    Fix various compiler warnings

commit ca25efc5f6696df11d897737db1d62cccb228aac
Author: rdb <git@rdb.name>
Date:   Sat Oct 12 09:57:04 2024 +0200

    makepanda: Remove --memory-init-file flag on emscripten

    [skip ci]

commit bd4dc8a379d668075609303652842d533d7fee74
Author: rdb <git@rdb.name>
Date:   Thu Oct 10 19:57:42 2024 +0200

    display: Fix ability to copy wdxGraphicsBuffer to RAM on DX9

commit 30418158e8430aa71ee642f8fd75e93675e91227
Author: rdb <git@rdb.name>
Date:   Thu Oct 10 19:57:14 2024 +0200

    dxgsg9: Allow getting alpha bits in buffer when host has no alpha

commit a59c8573598a98925ab5a259303f20523deb426c
Author: rdb <git@rdb.name>
Date:   Thu Oct 10 19:56:41 2024 +0200

    dxgsg9: Replace old A2W10V10U10 format with A32B32G32R32F

commit eac1cb57c43a7be615db1546b054c3d3a96f112d
Author: rdb <git@rdb.name>
Date:   Thu Oct 10 19:49:15 2024 +0200

    dxgsg9: Add missing formats to DXTextureContext9::get_bits_per_pixel

commit 05cf72e22f054bdc97b53987f09ed3c494de82d9
Author: rdb <git@rdb.name>
Date:   Thu Oct 10 19:48:50 2024 +0200

    dxgsg9: Fix texture clear color not working for 3D textures

commit 7557826c8bcd891c8a99ab62528ad88152731049
Merge: 37799dc3ce 51e469d065
Author: rdb <git@rdb.name>
Date:   Thu Oct 10 19:48:37 2024 +0200

    Merge branch 'release/1.10.x'

commit 51e469d0652718f54e4b77d503e605e102ecac0f
Author: rdb <git@rdb.name>
Date:   Thu Oct 10 19:41:14 2024 +0200

    Update BACKERS.md

    [skip ci]

commit cd2e3dfde93c3b59502ec4e14b87dd49e8122e91
Author: rdb <git@rdb.name>
Date:   Thu Oct 10 01:08:54 2024 +0200

    dxgsg9: Fix crash on window event after `close_window()`

commit beb49b3cd30376b87efeb4364df2296912f9bc81
Author: rdb <git@rdb.name>
Date:   Thu Oct 3 13:37:21 2024 +0200

    dxgsg9: Fix some format handling, support for r32f and rgba32f textures

commit 0ea0d5fa2bde2fc111b1b99a3bc345f732a56397
Author: rdb <git@rdb.name>
Date:   Thu Oct 3 13:29:12 2024 +0200

    dxgsg9: Fix crash when copying inverted framebuffer to texture RAM

commit 51876c61161b795333d564f5caa5692b43117840
Author: rdb <git@rdb.name>
Date:   Thu Oct 3 13:28:17 2024 +0200

    dxgsg9: Fix crash with buffer when there is no depth buffer

commit 37799dc3ce6137066f3fd02658f0b28eb6523590
Author: rdb <git@rdb.name>
Date:   Sun Sep 29 23:02:35 2024 +0200

    pipeline: Try to fix Windows compilation issue

commit 89fcfa1fe9860c826a80c1303b02ff77da40f419
Merge: 38261d4bb2 c05a63f4ae
Author: rdb <git@rdb.name>
Date:   Thu Sep 26 10:23:50 2024 +0200

    Merge branch 'release/1.10.x'

commit 38261d4bb2ee105452481cbc063101da2d2adfa9
Author: Drew Rogers <regdogg.acr@gmail.com>
Date:   Wed Sep 25 22:34:19 2024 -0500

    showbase: Patch for iris intervals

commit c05a63f4ae9bd7d8d7539e79667051e6684a2267
Author: rdb <git@rdb.name>
Date:   Sat Sep 21 10:23:52 2024 +0200

    pipeline: Fix compile error without pipelining enabled

    Closes #1684

    [skip ci]

commit beff684af320e044c68e3a0fde9edb3b9ab27aa1
Author: rdb <git@rdb.name>
Date:   Thu Sep 19 20:43:06 2024 +0200

    Further thread safety changes for Python 3.13 free threading

    See #1683

commit 4b2fa45578e3b269d572e95fb0317c48e5b656a6
Author: rdb <git@rdb.name>
Date:   Thu Sep 19 20:41:53 2024 +0200

    Make use of PyImport_GetModule function

commit 14f3cb0e404b508dda98c2fb3bd47e6dd382bec4
Author: rdb <git@rdb.name>
Date:   Thu Sep 19 20:25:45 2024 +0200

    tests: Add unit test for static property

commit 5106fc879fe0a163dafe8eb524eb781855466325
Author: rdb <git@rdb.name>
Date:   Thu Sep 19 16:00:59 2024 +0200

    Changes for compatibility with Python 3.13

    Includes some preliminary work to make free-threading safe, see also #1683

commit b32459ffa1268f69d8cb42419929cd90f08c6367
Merge: a4faa802af cdafd81764
Author: rdb <git@rdb.name>
Date:   Thu Sep 19 15:51:25 2024 +0200

    Merge branch 'release/1.10.x'

commit cdafd81764dcf794b031b630b00ef7d21f0239d9
Author: rdb <git@rdb.name>
Date:   Thu Sep 19 15:47:50 2024 +0200

    Fix compilation issues with Python 3.13

commit e70d0b47fce54c177628595134c9731afa5cf281
Author: rdb <git@rdb.name>
Date:   Thu Sep 19 14:20:35 2024 +0200

    distributed: Fix very minor memory leak

commit d7ede81aa32b12f44fbb27200a3db6422dc8dfaa
Author: rdb <git@rdb.name>
Date:   Thu Sep 19 11:15:44 2024 +0200

    cocoa: Fix compile error with MacOSX 10.6 SDK

commit a4faa802afd6718f97aeac254228240cc4a2d247
Author: rdb <git@rdb.name>
Date:   Thu Sep 19 00:25:51 2024 +0200

    cocoa: Remove autorelease pool in process_events()

    We now have one around the entire frame, in graphicsEngine.cxx

commit 442558bb2de66498a7c08f8c4e9daf6986a78532
Merge: b337f2a3da 9f493f588d
Author: rdb <git@rdb.name>
Date:   Thu Sep 19 00:25:16 2024 +0200

    Merge branch 'release/1.10.x'

commit 9f493f588d02591906ba011b2802c5bdb23c2091
Author: rdb <git@rdb.name>
Date:   Thu Sep 19 00:21:22 2024 +0200

    display: Fix significant memory leak on newer macOS versions

    It seems the Metal-based OpenGL driver uses autorelease a lot for resources that last only a single frame, so we need to create an autorelease pool around the frame lest the resources will only get cleaned up at application exit.

commit 756fe2e72bcce5b03a88ae1024302ecd0ec70fbc
Author: rdb <git@rdb.name>
Date:   Wed Sep 18 23:51:09 2024 +0200

    cocoa: Fix a very minor memory leak in DisplayInformation

commit b337f2a3da09fbe654b5b224bec56e8d7e8249e2
Author: rdb <git@rdb.name>
Date:   Mon Sep 16 21:42:28 2024 +0200

    pipeline: Use a high-precision timer for Thread::sleep() on Win32

    This is mainly used for clock mode M_limited, which is currently suffering from terrible imprecision on Windows.  This fixes that, making it possible to lower the value of sleep-precision down to 1ms.

commit bb5e4454fee1e01d4c18b27e957a6f759e3f0880
Author: rdb <git@rdb.name>
Date:   Mon Sep 16 21:41:52 2024 +0200

    putil: Add debug for oversleeping/undersleeping with M_limited clock

commit e3f580763a03de6c0ac02ebe1079fb069446943d
Author: John C. Allwein <git@johnnyapol.me>
Date:   Mon Sep 16 08:02:45 2024 -0600

    pview: add shift+r keyboard bind to reload all textures (#1678)

commit 8caf582b32a69a4393be98c18bf704cdb06d0038
Author: Timothy Choi <tyteen4a03@thelastcode.io>
Date:   Mon Sep 16 13:55:53 2024 +0200

    refactor(distributed): Un-nest generateGlobalObject's applyFieldValues function (#1667)

commit f5401b19fa5deb672754468a7648670124ed9431
Merge: e7604cb163 e2fb2d1241
Author: rdb <git@rdb.name>
Date:   Mon Sep 16 13:54:22 2024 +0200

    Merge branch 'release/1.10.x'

commit e2fb2d12413fa765016c0e373b5016f1bdca04f6
Author: rdb <git@rdb.name>
Date:   Mon Sep 16 13:30:06 2024 +0200

    cocoa: Prevent eating keyUp when switching to FS from macOS' FS

commit c7bcec1ff53473d5eab0e6f2371fef5730516a3e
Author: rdb <git@rdb.name>
Date:   Mon Sep 16 13:29:38 2024 +0200

    cocoa: Exit macOS' fullscreen mode when switching fullscreen

    Prevents black screen when switching to fullscreen

commit 82b9a1266c9f008451edca0e938bfae30734061d
Author: rdb <git@rdb.name>
Date:   Mon Sep 16 13:29:01 2024 +0200

    cocoa: Fix error when switching to FS while macOS' FS is active

commit e7604cb163c5864481bc5b9d161abb04a91b2451
Author: John C. Allwein <git@johnnyapol.me>
Date:   Sat Sep 7 21:20:44 2024 -0600

    event: fix result refcount leak when awaiting AsyncFuture

    Raising the StopIteration exception left the underlying
    result with an elevated refcount which prevented it from
    being cleaned up.

commit cfe3885c0e4f65f1ed7734bc7f21d7658cc77eef
Author: John C. Allwein <git@johnnyapol.me>
Date:   Sat Sep 14 12:25:08 2024 -0600

    event: use the persistent python wrapper when appending task object (#1681)

commit fc394e4c5971c6582d7f431a3ce3d1e8efb93572
Author: rdb <git@rdb.name>
Date:   Fri Aug 23 21:08:50 2024 +0200

    glgsg: Pass in osg_FrameNumber input via ShaderMatSpec mechanism

commit cd68287b6ab071906c8d4a7f0a14b67807ce2886
Author: rdb <git@rdb.name>
Date:   Fri Aug 23 15:09:21 2024 +0200

    shader: Get all aggregate shader inputs (eg. lights) in one go

    This means that p3d_LightSource[n] will be fetched once off the LightAttrib, written to the matrix cache, and then indexed into by the various ShaderMatSpec. This should be significantly more efficient, but the main aim is to prepare for a new binding system in the new shader pipeline

    User structs are still an exception as of now

commit 99225dfaeffb3121aecba69c0f9109249c859fd2
Author: rdb <git@rdb.name>
Date:   Thu Aug 22 22:44:03 2024 +0200

    shader: Unify ShaderPtrSpec and ShaderMatSpec mechanisms

commit 99f403470134f100eb5ead7af26a0291cffe52db
Author: rdb <git@rdb.name>
Date:   Thu Aug 22 15:53:08 2024 +0200

    shader: Don't store on ShaderMatSpec, use scratch matrix instead

commit dfc85b8a68b4224d37c9dd385af9c89a2dde11da
Author: rdb <git@rdb.name>
Date:   Fri Aug 23 16:27:15 2024 +0200

    tests: Make shadowViewMatrix test less sensitive

commit 833fdb5d3624a0ddbf09ee3d13c6df21e70af5d9
Author: rdb <git@rdb.name>
Date:   Fri Aug 23 14:12:58 2024 +0200

    readme: Update Python version in FreeBSD command

    Python 3.7 is no longer supported in Panda3D anyway

commit a8ca06ea4767c0bc0e10bff0ad66abd32a617bb9
Author: rdb <git@rdb.name>
Date:   Fri Aug 23 13:55:58 2024 +0200

    tests: Don't fail Dial test if tkinter failed to import

commit e2ad8f2a2fb18a473f1e5d0ef7b7ef2d439e58de
Author: rdb <git@rdb.name>
Date:   Fri Aug 23 13:53:10 2024 +0200

    tests: Test additional properties of light source struct

commit 2c5cebe7e090192eb816082b854a06dc318b0cc5
Author: rdb <git@rdb.name>
Date:   Fri Aug 23 14:13:46 2024 +0200

    display: Fix shader gen regression for more than 2 lights

commit d5d0b80dd3ab4bb94179226e12ab7ad25a637af8
Author: rdb <git@rdb.name>
Date:   Fri Aug 23 12:30:28 2024 +0200

    tests: Add unit tests for GLSL light, material, fog structs

commit 76ffef38d106079904f102ff7f40fa5816f6d869
Author: rdb <git@rdb.name>
Date:   Fri Aug 23 12:17:07 2024 +0200

    display: Allow passing whole state into dispatch_compute()

    This is mainly useful for unit testing

commit babd3a070d4cb83b3651b5f21a35caeb1b3d6dba
Author: rdb <git@rdb.name>
Date:   Thu Aug 22 15:52:48 2024 +0200

    display: Fix docstring formatting

commit 9e87af9dd74995bfcbaf0d820a9466b7df7573b6
Author: rdb <git@rdb.name>
Date:   Wed Aug 14 19:09:20 2024 +0200

    linmath: Fix compiler warning with gcc 14

commit 8d1524b6758a705d8f43ba1adca650b54c8e573d
Author: rdb <git@rdb.name>
Date:   Wed Aug 14 19:09:08 2024 +0200

    distort: Fix unprotected debug output

commit 78ace53dbe8c1a33c51f78729b97715016556a52
Author: rdb <git@rdb.name>
Date:   Wed Aug 14 19:08:49 2024 +0200

    dtoolutil: Fix typo in pfstream causing compiler warning

commit ddaeb053672b15bacdb9bda5b47f47ed7c51969a
Author: rdb <git@rdb.name>
Date:   Wed Aug 14 19:08:16 2024 +0200

    Fix compilation when building without bison

commit d3bb769a369a35c978f9891baa5a1deddc822020
Author: rdb <git@rdb.name>
Date:   Tue Aug 13 12:27:42 2024 +0200

    makepanda: Support overriding build of interrogate with env vars

    [skip ci]

commit 7f88f6de24caf068f96336c2839b7e2de3af67bc
Author: rdb <git@rdb.name>
Date:   Tue Aug 13 11:24:45 2024 +0200

    makepanda: Silently ignore --no-maya flags

    [skip ci]

commit ad4ecbcc16a32b86ee6290c156a3fb7d953596e2
Author: rdb <git@rdb.name>
Date:   Tue Aug 13 11:06:04 2024 +0200

    makepanda: Remove Autodesk Maya plug-ins

    These now live at https://github.com/panda3d/maya-egg

    Fixes #1584

commit fff9ea594cd2dfc2b7a90371e333198338f96b0d
Author: rdb <git@rdb.name>
Date:   Tue Aug 13 10:59:12 2024 +0200

    Split off 3ds Max exporter to a separate repository

    It now lives at https://github.com/panda3d/max-egg-plugin

    See #1584

commit 712300c9f1095a50e8719e8866c6f161aeba974b
Author: rdb <git@rdb.name>
Date:   Tue Aug 13 00:01:35 2024 +0200

    Fix prebuilt bison cxx files includes to work with CMake build

    Change makepanda to generate without the .yxx extension so that the include name is generated properly

commit 805f36ff929d29d5b84d32f2cd621945cc8c4afa
Author: rdb <git@rdb.name>
Date:   Mon Aug 12 16:46:47 2024 +0200

    CMake: Only export Tools target if BUILD_TOOLS is on

    [skip ci]

commit 4ca495d8284d923b9972ccc6630a2cbd113d0a5d
Author: rdb <git@rdb.name>
Date:   Mon Aug 12 16:39:20 2024 +0200

    CMake: Add separate BUILD_TOOLS option to build binaries

    This is separate from BUILD_PANDATOOL, which builds the pandatool tree

commit c8390ae7d5e821ed3ab31d4db8380dd6c465f46e
Author: rdb <git@rdb.name>
Date:   Mon Aug 12 16:32:24 2024 +0200

    CMake: install assorted pandatoolbase libraries

commit 243d59bf37bc0ed085202407e8f9e9746a2085a1
Author: rdb <git@rdb.name>
Date:   Sat Aug 10 16:29:14 2024 +0200

    workflow: Remove step to build host interrogate for emscripten

    This is now fetched automatically by makepanda as of e50465e8303bb42c3ae656f5f896cb958eb2e4ed

commit 8d2407d5536d111a017f346cccb53d04e23c2d66
Author: rdb <git@rdb.name>
Date:   Sat Aug 10 16:20:50 2024 +0200

    Delete cppparser and interrogate from tree

    These tools now live in https://github.com/panda3d/interrogate/

    See also #1074

commit ce4b79750c47d4a102a80151ed09f2376187d8da
Author: rdb <git@rdb.name>
Date:   Sat Aug 10 16:16:54 2024 +0200

    makepanda: Stop building interrogate

    Instead, install it using pip.  If you don't like this, submit a PR or use CMake

commit c9cddb8d922568f3b1a58fac382f1eb4757e0052
Author: rdb <git@rdb.name>
Date:   Sat Aug 10 16:15:58 2024 +0200

    CMake: Stop building interrogate from tree

    Instead, either build it externally (BUILD_INTERROGATE) or accept INTERROGATE_EXECUTABLE / INTERROGATE_MODULE_EXECUTABLE settings

commit e776c819b82cef86e82229e3648a3e2316342581
Author: rdb <git@rdb.name>
Date:   Sat Aug 10 12:59:37 2024 +0200

    makewheel: Exclude interrogate from panda3d wheel

    This will be available separately as panda3d-interrogate wheel, built from https://github.com/panda3d/interrogate

    Fixes #1074

    [skip ci]

commit 37152710b7414965b81c1bf33bfdde4f925e39c4
Author: Drew Rogers <regdogg.acr@gmail.com>
Date:   Mon Jul 1 15:57:54 2024 -0500

    showbase: Add functions to get interval for Iris Transitions

commit 21b39da65d5df50944941184521eb72678f8979c
Author: John C. Allwein <git@johnnyapol.me>
Date:   Tue Aug 6 10:51:52 2024 -0600

    pythonTask: fix refcount leak of non-panda Future::done

    A missing Py_DECREF on the future's "done" method
    caused both the bound method and the underlying
    self instance of the future to be leaked when
    awaiting non-panda futures (such as _asyncio.Future).

    This change includes a simple new test addition
    to catch this in the future.

commit fc1d95ae1d78a36ba4e2f40eb205c126f482b2de
Author: rdb <git@rdb.name>
Date:   Thu Aug 8 21:36:21 2024 +0200

    dtoolbase: Add missing includes to pstrtod.cxx

commit abf0b38705856d9141acd404838b09ca6fc3df7e
Author: rdb <git@rdb.name>
Date:   Thu Aug 8 21:36:00 2024 +0200

    dtoolutil: Use string compare instead of strcmp in filename.I

commit 23124dac073b64afc5ea25d1487b3f06814c06cf
Author: rdb <git@rdb.name>
Date:   Wed Aug 7 23:39:20 2024 +0200

    x11: Fix missing _net_wm_name field due to bad merge

commit ad57762e9f395edd5a652a78f5140bb847f89f56
Merge: 1cc0676e41 057c3f5476
Author: rdb <git@rdb.name>
Date:   Wed Aug 7 22:34:08 2024 +0200

    Merge branch 'release/1.10.x'

commit 057c3f547614f2c648455126ded49e02f9184270
Author: rdb <git@rdb.name>
Date:   Wed Aug 7 22:26:33 2024 +0200

    Update BACKERS.md

    [skip ci]

commit 8c8cbeea98abed875fbc2255e14bab2d0c7bf1b4
Author: rdb <git@rdb.name>
Date:   Wed Aug 7 17:24:11 2024 +0200

    linmath: For repr, use as much precision as needed for roundtrip

    Will use as few digits as is necessary to ensure that round-tripping the same number with pstrtod will result in the same vector.  This prevents eg. 3.3 formatting as 3.29999995 while still ensuring that two floats that are not equal (other than nan) are guaranteed to have a different string representation.

    Uses a hacky pftoa function that can be abandoned as soon as we adopt C++17, which has to_chars that does what we need

    Fixes #1671

commit ca7ba4eab321fe84e4cdcb2dbee6197358818a57
Author: rdb <git@rdb.name>
Date:   Wed Aug 7 15:53:27 2024 +0200

    py_panda: Add Dtool_GetPyTypeObject macro

    This is a cleaner, future-proof way of accessing a Panda type as PyTypeObject pointer

commit b8d6c7a2ef1dfaf80cd8d41a831365cb49d58765
Author: rdb <git@rdb.name>
Date:   Wed Aug 7 11:57:19 2024 +0200

    workflow: Update macOS-11 to macOS-12 runner

commit 46833e9144a7d1aab3b5f2b194e6385e6035045b
Author: rdb <git@rdb.name>
Date:   Wed Aug 7 11:56:55 2024 +0200

    Update BACKERS.md

    [skip ci]

commit 1cc0676e41da8cfdeb251b255012b957e77c44b9
Author: rdb <git@rdb.name>
Date:   Sun Aug 4 17:08:45 2024 +0200

    dtoolutil: Fix misnamed include guard

commit 58ea174eb2e8d4426a4635f1ee02b4acb1088259
Author: rdb <git@rdb.name>
Date:   Sat Aug 3 21:50:19 2024 +0200

    interrogate: Use the limited Python API for simple Python back-end

commit 0215b029851f34524f6abc20aee7567a76712d0f
Author: rdb <git@rdb.name>
Date:   Sat Aug 3 16:36:55 2024 +0200

    interrogate: Replace a use of std::cerr with nout

commit ae04533527f03675e5a017b60cb24e2de247b4d6
Author: rdb <git@rdb.name>
Date:   Sat Aug 3 16:36:37 2024 +0200

    dtoolutil: Fix typo in error message

commit 7a13d86d93a19cc9215fa1016eed57dcf0f3bbca
Author: rdb <git@rdb.name>
Date:   Sat Aug 3 15:00:22 2024 +0200

    CMake: remove vestigial HAVE_ROCKET_PYTHON macro

commit 17fbd09250be49af59627373afda28019e7996d1
Author: rdb <git@rdb.name>
Date:   Sat Aug 3 12:18:16 2024 +0200

    workflow: Change macOS-11 runner to macOS-12

commit 122453811d917b16e60e75f0de47b18e37c4dd7a
Author: rdb <git@rdb.name>
Date:   Sun Jun 30 11:53:17 2024 +0200

    glgsg: Fix clear of offscreen buffer if back buffers requested

commit b6ec48b27c17fdcdfb3a3604e157d107b73afa55
Author: rdb <git@rdb.name>
Date:   Tue May 28 22:28:37 2024 +0200

    Fix invalid metadata version 2.0 (should be 2.1)

commit 105f938d68e7a2cff0201bf11f8f4b51f116e934
Author: rdb <git@rdb.name>
Date:   Tue May 28 11:11:21 2024 +0200

    interrogate: Fix non-deterministic order of external import types

    Fixes #1651

commit a655784d8d36b4fefd0e926a18c2bea52c3271fa
Author: rdb <git@rdb.name>
Date:   Thu May 16 20:28:26 2024 +0200

    x11: attempt to fix UTF-8 window titles (see #209)

commit adb92428856853019583f398d27c5d34e44a9343
Author: rdb <git@rdb.name>
Date:   Tue May 14 23:19:46 2024 +0200

    glgsg: Fix faulty auto-merge

commit b6515c881cb3a488990c2cb0b438e33d748d104b
Merge: 0df17a00ca 2436a06527
Author: rdb <git@rdb.name>
Date:   Tue May 14 22:47:08 2024 +0200

    Merge branch 'release/1.10.x'

commit 0df17a00ca7a19d345dac4b3e2c30088391393f6
Merge: 3ffcce2cc2 8cc62c9706
Author: rdb <git@rdb.name>
Date:   Tue May 14 22:46:53 2024 +0200

    Merge branch 'bugfix/interrogate-gc-exception' of github.com:johnnyapol/panda3d

commit 2436a065272bd708e31c589164750d4a4ff39f02
Author: rdb <git@rdb.name>
Date:   Tue May 14 22:22:16 2024 +0200

    glgsg: Better error when invalid ShaderPtrSpec type is encountered

commit 8cc62c9706607dd61404ad11d7753d77a86cea61
Author: John C. Allwein <git@johnnyapol.me>
Date:   Sat May 11 22:31:22 2024 -0600

    interrogate: avoid GC exceptions processing objects mid-construction

    After 38692dd525525e20cd06204a646b35dd7e39902a, GC pauses occuring before
    the __init__ function of the C++ backed object is called in a inheritance chain will
    cause an exception during garbage collection and cause the python runtime to exit.

    This can be observed by say, forcing a GC-pause in MetaInterval.__init__ before it calls CMetaInterval::__init__.

commit 3ffcce2cc2b5c83425c18dc1fe9461987f67d89d
Author: Wizzerinus <development@toontowneventhorizon.com>
Date:   Thu Apr 25 14:55:30 2024 +0300

    add getPlayMode() for actor and anim interface

commit a9206041d96a41c19d870cfd085751222fa3258a
Author: Disyer <daniel@tohka.us>
Date:   Sun Mar 31 12:05:05 2024 +0300

    ffmpeg: Use ch_layout in favor of removed channel_layout and channels

    Closes #1641

commit 5da013e2e9a991c993532cc6886c53e4c38bccc0
Author: rdb <git@rdb.name>
Date:   Mon Apr 8 12:12:00 2024 +0200

    text: Properly handle surrogate pairs in text on Windows

    Fixes #1629

commit 2adc167f268bbdee5c81de27346be3f1d958137b
Author: rdb <git@rdb.name>
Date:   Mon Apr 8 11:22:15 2024 +0200

    windisplay: Fix regression related to fullscreen switching

    Fixes #1594
Merge PBR_NEUTRAL work into pull request.
@raytopianprojects
Copy link
Contributor Author

I believe I have incorporated all of the requested changes @rdb Is there anything else I need to do to get this merged?

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.

3 participants