diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 935ff9192b..18ce4881f9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -98,10 +98,10 @@ jobs: - name: Install dependencies (macOS) if: runner.os == 'macOS' run: | - curl -O https://www.panda3d.org/download/panda3d-1.10.14/panda3d-1.10.14-tools-mac.tar.gz - tar -xf panda3d-1.10.14-tools-mac.tar.gz - mv panda3d-1.10.14/thirdparty thirdparty - rmdir panda3d-1.10.14 + curl -O https://www.panda3d.org/download/panda3d-1.10.15/panda3d-1.10.15-tools-mac.tar.gz + tar -xf panda3d-1.10.15-tools-mac.tar.gz + mv panda3d-1.10.15/thirdparty thirdparty + rmdir panda3d-1.10.15 # Temporary hack so that pzip can run, since we are about to remove Cg anyway. install_name_tool -id "$(pwd)/thirdparty/darwin-libs-a/nvidiacg/lib/libCg.dylib" thirdparty/darwin-libs-a/nvidiacg/lib/libCg.dylib @@ -130,16 +130,16 @@ jobs: uses: actions/cache@v4 with: path: thirdparty - key: ci-cmake-${{ runner.OS }}-thirdparty-v1.10.14-r1 + key: ci-cmake-${{ runner.OS }}-thirdparty-v1.10.15-r1 - name: Install dependencies (Windows) if: runner.os == 'Windows' shell: powershell run: | if (!(Test-Path thirdparty/win-libs-vc14-x64)) { $wc = New-Object System.Net.WebClient - $wc.DownloadFile("https://www.panda3d.org/download/panda3d-1.10.14/panda3d-1.10.14-tools-win64.zip", "thirdparty-tools.zip") + $wc.DownloadFile("https://www.panda3d.org/download/panda3d-1.10.15/panda3d-1.10.15-tools-win64.zip", "thirdparty-tools.zip") Expand-Archive -Path thirdparty-tools.zip - Move-Item -Path thirdparty-tools/panda3d-1.10.14/thirdparty -Destination . + Move-Item -Path thirdparty-tools/panda3d-1.10.15/thirdparty -Destination . } - name: ccache (non-Windows) @@ -386,16 +386,16 @@ jobs: shell: powershell run: | $wc = New-Object System.Net.WebClient - $wc.DownloadFile("https://www.panda3d.org/download/panda3d-1.10.14/panda3d-1.10.14-tools-win64.zip", "thirdparty-tools.zip") + $wc.DownloadFile("https://www.panda3d.org/download/panda3d-1.10.15/panda3d-1.10.15-tools-win64.zip", "thirdparty-tools.zip") Expand-Archive -Path thirdparty-tools.zip - Move-Item -Path thirdparty-tools/panda3d-1.10.14/thirdparty -Destination . + Move-Item -Path thirdparty-tools/panda3d-1.10.15/thirdparty -Destination . - name: Get thirdparty packages (macOS) if: runner.os == 'macOS' run: | - curl -O https://www.panda3d.org/download/panda3d-1.10.14/panda3d-1.10.14-tools-mac.tar.gz - tar -xf panda3d-1.10.14-tools-mac.tar.gz - mv panda3d-1.10.14/thirdparty thirdparty - rmdir panda3d-1.10.14 + curl -O https://www.panda3d.org/download/panda3d-1.10.15/panda3d-1.10.15-tools-mac.tar.gz + tar -xf panda3d-1.10.15-tools-mac.tar.gz + mv panda3d-1.10.15/thirdparty thirdparty + rmdir panda3d-1.10.15 (cd thirdparty/darwin-libs-a && rm -rf rocket) - name: Set up XCode (macOS) @@ -403,17 +403,14 @@ jobs: run: sudo xcode-select -s /Applications/Xcode_14.3.1.app/Contents/Developer - name: Set up Python 3.13 - if: runner.os != 'Windows' uses: actions/setup-python@v5 with: python-version: '3.13' - name: Build Python 3.13 - if: runner.os != 'Windows' shell: bash run: | python makepanda/makepanda.py --git-commit=${{github.sha}} --outputdir=built --everything --no-eigen --python-incdir="$pythonLocation/include" --python-libdir="$pythonLocation/lib" --verbose --threads=4 --windows-sdk=10 --msvc-version=14.2 - name: Test Python 3.13 - if: runner.os != 'Windows' shell: bash run: | python -m pip install -r requirements-test.txt diff --git a/README.md b/README.md index 86669b396d..6e4e78784b 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,7 @@ Installing Panda3D ================== The latest Panda3D SDK can be downloaded from -[this page](https://www.panda3d.org/download/sdk-1-10-14/). +[this page](https://www.panda3d.org/download/sdk-1-10-15/). If you are familiar with installing Python packages, you can use the following command: @@ -64,8 +64,8 @@ depending on whether you are on a 32-bit or 64-bit system, or you can [click here](https://github.com/rdb/panda3d-thirdparty) for instructions on building them from source. -- https://www.panda3d.org/download/panda3d-1.10.14/panda3d-1.10.14-tools-win64.zip -- https://www.panda3d.org/download/panda3d-1.10.14/panda3d-1.10.14-tools-win32.zip +- https://www.panda3d.org/download/panda3d-1.10.15/panda3d-1.10.15-tools-win64.zip +- https://www.panda3d.org/download/panda3d-1.10.15/panda3d-1.10.15-tools-win32.zip After acquiring these dependencies, you can build Panda3D from the command prompt using the following command. Change the `--msvc-version` option based @@ -136,7 +136,7 @@ macOS ----- On macOS, you will need to download a set of precompiled thirdparty packages in order to -compile Panda3D, which can be acquired from [here](https://www.panda3d.org/download/panda3d-1.10.14/panda3d-1.10.14-tools-mac.tar.gz). +compile Panda3D, which can be acquired from [here](https://www.panda3d.org/download/panda3d-1.10.15/panda3d-1.10.15-tools-mac.tar.gz). After placing the thirdparty directory inside the panda3d source directory, you may build Panda3D using a command like the following: diff --git a/doc/ReleaseNotes b/doc/ReleaseNotes index 97a15ddbe8..e5651145b7 100644 --- a/doc/ReleaseNotes +++ b/doc/ReleaseNotes @@ -1,3 +1,64 @@ +----------------------- RELEASE 1.10.15 ----------------------- + +This release adds support for Python 3.13, and fixes some significant bugs. +Upgrading is highly recommended. + +Windowing +* Fix regression related to fullscreen switching on Windows (#1594) +* Fix issues related to fullscreen switching corner cases on macOS +* Fix keyUp event being eaten when switching fullscreen modes on macOS +* Support UTF-8 window titles on X11 +* Fix wrong error message on X11 if xf86dga extension is not found + +Rendering +* Add "Khronos PBR Neutral" tone mapping operator to HDR filter (#1659) +* OpenGL: Fix offscreen buffer clearing if back buffers are requested +* DirectX 9: Fix crash on window event after window close +* DirectX 9: Fix support for r32f and rgba32f textures +* DirectX 9: Fix crash when copying inverted framebuffer to texture RAM +* DirectX 9: Fix buffer crash if main window has no depth buffer + +Text +* Fix handling of surrogate pairs in text on Windows (#1629) +* Fix disabling text-native-antialias setting not working properly +* Fix small-caps not working with text-use-harfbuzz enabled (#1666) +* Show error instead of crash if glyph does not fit in page (#1626) +* Update docstring for set_text_color() (#1621) + +GUI +* Fix crash when PGEntry removes itself with background focus (#1650) +* Fix `PGEntry::get_cursor_Y()`, which always returned 0.0 (#1633) +* Now makes copies of mutable default values in DirectGUI constructor (#1587) + +Deployment +* Fix wrong relative paths with bam_model_extensions (#1642) +* Add bam_embed_textures option to embed textures in .bam files +* Don't warn about missing ld-linux library on aarch64 Linux +* build_apps dist hooks no longer import Panda3D (#1624) + +Miscellaneous +* Fix major memory leak on M1/M2/M3 Macs +* Fix seeking in OpenAL sounds not working on macOS in some cases (#1607) +* Fix direct.stdpy.glob not finding files in VFS (#1675) +* Improve printing of floating-point linmath objects (#1671) +* Fix VFS mount points not being listed as directories (#1244) +* Fix splits occurring in RopeNode geometry (#1325) +* Fix DistancePhasedNode exception at module clean-up time +* Fix magfilter on KW_mipmap in egg-palettize (#1631) +* Fix creating LerpFunctionInterval from functools.partial (#1623) +* Fix "no attribute notifier" in FSM.requestNext/Prev (#1644) +* Fix file_texture_mode property on BamWriter being read-only +* TransformState getters no longer return references to temporary (#1625) + +Build +* Assorted build fixes for Python 3.13 and 3.13t +* Fix assorted compiler warnings +* Build fix for newer FFmpeg versions +* Add --ignore option to test_wheel.py to allow ignoring tests +* Update Eigen to 3.2.10 (fixes binder2nd error when building with C++17) +* Fix non-determinism in Python bindings (#1651) +* Fix preprocessor issues in interrogate (#1635) + ----------------------- RELEASE 1.10.14 ----------------------- This release adds support for Python 3.12 and furthermore contains significant diff --git a/panda/src/text/dynamicTextFont.cxx b/panda/src/text/dynamicTextFont.cxx index 4d933619b5..53cda9d62a 100644 --- a/panda/src/text/dynamicTextFont.cxx +++ b/panda/src/text/dynamicTextFont.cxx @@ -566,7 +566,7 @@ make_glyph(int character, FT_Face face, int glyph_index) { if (_render_mode == RM_texture) { // Render the glyph if necessary. if (slot->format != ft_glyph_format_bitmap) { - FT_Render_Glyph(slot, ft_render_mode_normal); + FT_Render_Glyph(slot, _native_antialias ? ft_render_mode_normal : ft_render_mode_mono); } tex_x_size = bitmap.width; diff --git a/setup.cfg b/setup.cfg index f67637e357..c6e478a40e 100644 --- a/setup.cfg +++ b/setup.cfg @@ -19,6 +19,7 @@ classifiers = Programming Language :: Python :: 3.10 Programming Language :: Python :: 3.11 Programming Language :: Python :: 3.12 + Programming Language :: Python :: 3.13 Programming Language :: Python :: Implementation :: CPython Topic :: Games/Entertainment Topic :: Multimedia