Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge 2.5 into 2.6 #959

Merged
merged 32 commits into from
Mar 18, 2024
Merged

Conversation

acolwell
Copy link
Collaborator

Thanks for submitting a pull request! Please provide enough information so that others can review your pull request. Additionally, make sure you've done all of these things:

PR Description

What type of PR is this? (Check one of the boxes below)

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Improvement (non-breaking change which does not add functionality nor fixes a bug but improves Natron in some way)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • My change requires a change to the documentation
    • I have updated the documentation accordingly

What does this pull request do?

Merges changes to RB-2.5 to RB-2.6

Have you tested your changes (if applicable)? If so, how?

Yes. I've verified the tests still pass and the windows installer still builds. I verified the windows installer works and indicates it is a 2.6 build.

acolwell and others added 30 commits September 12, 2023 11:51
* Refactored RenderScale

- Moved declaration to its own file.
- Removed inheritance from OfxPointD so implementation could be changed.
- Made data members private to hide implementation and created
  helper methods to capture common use patterns.
- Change TrackerNodeInteract::selectedMarkerScale to a double since
  it didn't really need to be a RenderScale.
- Added named constant for RenderScale with x & y set to 1.
- Convert RenderScale implementation to mipmapLevel.
…eanups (NatronGitHub#922)

* Make mipmapLevel capitalization consistent across the codebase.
* Fix instances of mipmapLevels stored in ints instead of unsigned ints.
* Removed ViewerInstance::getViewerMipmapLevel() since it was identical to ViewerInstance::getMipmapLevel() and updated the single caller.
* Rename OverlaySupport::getCurrentRenderScale() to getCurrentMipmapLevel().
* Updated OpenImageIO tarball sha256 sum and source directory.
* Updated ffmpeg patch's sha256 sum. The index line has extra hash digits now.
- Always include cstdint in GlobalDefines.h to avoid missing decl errors.
- Change NATRON_BUILD_WORKSPACE to a shorter path to avoid path length
  errors that can occur during python file compilation.
- Change logic in build-Windows-installer.sh related to mt.exe and
  the Qt Installer Framework so that these binaries could be retrieved
  from the Windows SDK and msys2 respectively.
- Fixed assert() in Tests/FileSystemModel_Test.cpp that broke the
  debug build.
- Fixed asserts in Engine/EffectInstanceRenderRoI.cpp so that they
  are only checked if tiling is supported. The assert was
  accidentally applied to all cases when the code was refactored
  by NatronGitHub#918
- Updated Linux CI to build and test release AND debug builds.
  This should help avoid such issues from sneaking in going forward.
* Add BT1886 view EOTF

---------

Co-authored-by: cedric <cedric.paille@gmail.com>
Co-authored-by: Frédéric Devernay <devernay@users.noreply.github.com>
…atronGitHub#936)

- Adding a step to the Windows workflow that downloads and sets up
  the Natron pacman repo.

- Removed dependencies from the "Install Windows system packages"
  that are installed when the mingw-w64-x86_64-natron-build-deps-qt5
  package is installed.
* Update shiboken includes and typesystem paths to fix Windows build.

Pyside2 and a few other python related packages were updated
on MSYS2 in the last week or so which caused the Windows Installer
builds to start failing. This change modifies how include & typesystem paths
are specified on the command-line. It appears that shiboken no
longer handles colon separated path lists on Windows so each include and typesystem path is now
specified with its own -I or -T option respectively.
…atronGitHub#939)

Msys2 has removed its firebird2 package. This change replaces the
package reference in our mingw-w64-natron-build-deps-qt5 package.

The pacman repo building workflow logic has been reworked so that
it generates versioned .zip files and builds the repo locally if
it can't download the current repo version.  This allows changes
to the repo to generate the new zip file AND allows the installer
and CI workflows to pass at the same time. This makes it easier
to verify that the changes to the repo actually fix build issues
when the pull request workflows run.

Co-authored-by: Aaron Colwell <300262+acolwell@users.noreply.github.com>
…ng dependencies (NatronGitHub#946)

* Add logic to verify that OFX plugins load.

* Add missing libheif dependencies.
…GitHub#947)

This change removes the return value for clipIfOverlaps() and
updates all callers. This was done to address a comment made in
NatronGitHub#930 (comment)

- Removed return value from RectI::clipIfOverlaps() and RectD::clipIfOverlaps()

- Introduced clip() that updates a RectI or RectD with the intersection of
  itself and another rectangle.

- Reworked several clipIfOverlaps() callers to use clip() or intersect()
  instead of clipIfOverlaps().
Fixing GenericWatcher::scheduleBlockingTask() so that it actually holds
the tasksMutex when it is pushing new task information.
Fixes more instances of unnamed QMutexLocker objects that were
not holding the lock for the duration of the containing scope.
* Introduce ScopedGLContext to simplify temporary contexts in OSGLContext_win.
* Fix crashing on startup for AMD GPUs.

This change makes sure there is an active context when
GetGPUInfoAMD() is called. While it is not explicitly stated in
https://www.opengl.org/registry/specs/AMD/wgl_gpu_association.txt
that a GL context needs to be current, it is somewhat implied by
the fact that these extension methods are fetched via
wglGetProcAddress(). According to the Windows docs, function
addresses are specific to a context so using them without an
active context seems to be undefined territory.

This should fix NatronGitHub#948
This change fixes the documentation generation so that the CSS
styles start working again.
@acolwell acolwell requested a review from devernay March 18, 2024 20:19
@acolwell acolwell force-pushed the merge_2.5_into_2.6 branch from 9a25a50 to 5d6e711 Compare March 18, 2024 20:56
Copy link
Member

@devernay devernay left a comment

Choose a reason for hiding this comment

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

LGTM!

@acolwell acolwell merged commit 7b07bc0 into NatronGitHub:RB-2.6 Mar 18, 2024
7 checks passed
@acolwell acolwell deleted the merge_2.5_into_2.6 branch March 18, 2024 22:09
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.

5 participants