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

Feature/23 feature request pin file loading #24

Merged
merged 64 commits into from
Sep 13, 2024

Conversation

Lypsolon
Copy link
Collaborator

@Lypsolon Lypsolon commented Jul 24, 2024

TODO

  • Make sure that ayon-cpp-dev-tools will be included as a cmake project, not via the CMakeInclude.txt

    • include("${CMAKE_CURRENT_SOURCE_DIR}/ext/ayon-cpp-dev-tools/CMakeInclude.txt")
  • fully clean build script

  • write Documentation for pinning file loading (Technical)

  • Write refactoring Proposal (proposal should remove the extra loop in _Rresolve() func)

  • check if bool m_staticParentCache; is used in resolver.h if not, remove

  • change getCachePtr() back to the old return behavior

  • move pinning file helper to its own file set

  • rewrite readme.md

  • re-implement the sdf strip macro

  • activate SDF Strip macro for the selected dccs (activated for all Build Plugins for now )

  • allow for root replace on both key and value portion of the pinning file.

Changelog Description

Additional info

Testing notes:

  1. start with this step
  2. follow this step

@Lypsolon Lypsolon marked this pull request as ready for review August 8, 2024 14:45
@Lypsolon
Copy link
Collaborator Author

Lypsolon commented Aug 9, 2024

@dee-ynput and @BigRoy, I requested you because of the documentation part mainly. just FYI

@mkolar mkolar changed the title Feature/23 feature request pinn file loading Feature/23 feature request pin file loading Aug 13, 2024
Copy link
Contributor

@robin-ynput robin-ynput left a comment

Choose a reason for hiding this comment

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

Hey @Lypsolon, overall that looks good to me.
The cpp part reads fine, I had no trouble understanding your logic here.

One recommendation for the future, this could easily have been 3 separated PRs (easier to review):

  • new cache logic feature implementation with dependencies update
  • rework build script in Python
  • documentation

Docs/Ayon_Docs/Admin_Docs.md Outdated Show resolved Hide resolved
Docs/Ayon_Docs/Admin_Docs.md Outdated Show resolved Hide resolved
Docs/Ayon_Docs/Dev_Docs.md Outdated Show resolved Hide resolved
Docs/Ayon_Docs/Dev_Docs.md Outdated Show resolved Hide resolved
Docs/Ayon_Docs/Dev_Docs.md Outdated Show resolved Hide resolved
Docs/Ayon_Docs/Dev_Docs.md Outdated Show resolved Hide resolved
scripts/build.py Show resolved Hide resolved
scripts/build.py Outdated Show resolved Hide resolved
scripts/build.py Outdated Show resolved Hide resolved
src/AyonUsdResolver/config.h Outdated Show resolved Hide resolved
@Lypsolon Lypsolon linked an issue Aug 19, 2024 that may be closed by this pull request
14 tasks
Lypsolon and others added 22 commits September 11, 2024 08:29
@Lypsolon
Copy link
Collaborator Author

Lypsolon commented Sep 11, 2024

@BigRoy, @dee-ynput and @antirotor.
im currently thinking about how we deal with the SDF args situation.
we have the option to enable and disable the removeSdfArgs function per build plugin.

but i have no idea what library's and tools have the SdfArgs problem so im asking myself should we
A: disable it for everything right now and then see where it errors when users get there hands to it ?
B: test by hand what application has the problem
C: enable it for everything and disable it when we do some more testing ? (in the CI Epic we might be able to add some tests for this ?)

[EDIT]: for now we just enable the SDF ARGS remove function for all BuildPlugins we can deactivate the macro per BuildPlugin when we find out who needs it and who dosnt.
its a performance penalty and i dont like it but the Ayon-Server is also a Performance penalty.

@Lypsolon Lypsolon merged commit 8e95a61 into develop Sep 13, 2024
@Lypsolon Lypsolon deleted the feature/23-feature-request_pinn_file_loading branch September 13, 2024 08:40
Lypsolon added a commit that referenced this pull request Sep 13, 2024
* Update README.md

* Update README.md

* Maya + Unreal Build scripts (Win/Linux) (#15)

* added AyonUsdLinux build script (script uses system installed python

* added option to define boost lib name appending

* added windows ayon usd build script

* added documentation for the build plugins (python part) added windows / linux to tested platforms

* added TestAyonUsd.bat

* added /changed AyonUsd build.bat and cmake

* made scrtips more readable based on BigRoy feedback

* added an ´ to an your

* added linux py310 maya 2024.2 build plugin. works for building resolver with 3 env variables. loads under Alma Linux9

* moved complie plugin include in order to allow for setting compiler in BuildPlugin

* t

* unreal is broken again

* conflickts

* build this new branch because its broken

* new version for ayon-cpp-api

* changed build scripts so that all off them can run without anny changes only the AyonUsd Cmake script needs to define the project first because off a variable deadlock. this version will probably not work under windowns because i did not update the windwos build scripts

* added windows build scripts for maya and unreal

* Unreal and Maya work for windows now

* changed maya naming to be py11

* this is the version off the code that produced the Resolvers for windows and linux from May15th2024

* updated AyonUsdWin AyonUsd23_5_py39 plugin because we neet to define project at the start off this plugin so that we dont get an infinit loop

* Update BuildPlugins/AyonUsdWin/AyonUsd23_5_py39.cmake

Co-authored-by: Ondřej Samohel <[email protected]>

* Update BuildPlugins/MayaLinux/LinuxPy310Maya2024_2.cmake

Co-authored-by: Ondřej Samohel <[email protected]>

* Update BuildPlugins/MayaLinux/LinuxPy311Maya2025.cmake

Co-authored-by: Ondřej Samohel <[email protected]>

* Update BuildPlugins/MayaWin/WinPy310Maya2024_2.cmake

Co-authored-by: Ondřej Samohel <[email protected]>

* Update README.md

Co-authored-by: Ondřej Samohel <[email protected]>

* Update README.md

Co-authored-by: Ondřej Samohel <[email protected]>

* Update README.md

Co-authored-by: Ondřej Samohel <[email protected]>

* Update README.md

Co-authored-by: Ondřej Samohel <[email protected]>

* Update README.md

Co-authored-by: Ondřej Samohel <[email protected]>

* Update README.md

Co-authored-by: Ondřej Samohel <[email protected]>

* Update README.md

Co-authored-by: Ondřej Samohel <[email protected]>

* Update README.md

Co-authored-by: Ondřej Samohel <[email protected]>

* Update README.md

Co-authored-by: Ondřej Samohel <[email protected]>

* Update README.md

Co-authored-by: Ondřej Samohel <[email protected]>

* Update README.md

Co-authored-by: Ondřej Samohel <[email protected]>

* Update README.md

Co-authored-by: Ondřej Samohel <[email protected]>

* removed one TODO tag because it was resoved

* updated ayon-cpp-api to develop branch because PythonBuildSetup branch was merged into it

* Update README.md

Co-authored-by: Ondřej Samohel <[email protected]>

* Update README.md

Co-authored-by: Ondřej Samohel <[email protected]>

---------

Co-authored-by: Lyon_Rosenblatt <[email protected]>
Co-authored-by: Ondřej Samohel <[email protected]>

* added templates

* added templates

* Update proposal_technical.yml

Added Glossary of Terms and Conceptual framework as it became important for describing pinning support

* Update proposal_technical.yml

* renamed plugins and added naming template to README.md (#17)

Co-authored-by: Lyon_Rosenblatt <[email protected]>
Co-authored-by: Ondřej Samohel <[email protected]>

* was not albe to upload data because off broken sub moduele link on my side

* added back src files from commit 851967d because the changes from b64838a should be on a different branch

* Feature/ay 1212 cache entetry struct replacment for cache pair (#22)

* started to move assetIdent to its own file to become a class

* added macro to remove SDF_FOMRAT_ARGS, also added the build plugins from the build plugin rename branch

* removed old build plugins

* updated CMakeLists.txt because some files where not compiled into python target and so TF-Prepare module did not create the correct module

* replaced with assetIdent class

* doxygen file was changed but should not have been

* clean up s

* Update src/AyonUsdResolver/resolverContextCache.h

Co-authored-by: Ondřej Samohel <[email protected]>

* Update src/AyonUsdResolver/resolverContextCache.h

Co-authored-by: Ondřej Samohel <[email protected]>

* Update src/AyonUsdResolver/assetIdentDef.h

Co-authored-by: Ondřej Samohel <[email protected]>

* Update src/AyonUsdResolver/assetIdentDef.h

Co-authored-by: Ondřej Samohel <[email protected]>

* Update src/AyonUsdResolver/assetIdentDef.h

Co-authored-by: Ondřej Samohel <[email protected]>

* Update src/AyonUsdResolver/assetIdentDef.h

Co-authored-by: Ondřej Samohel <[email protected]>

* Update src/AyonUsdResolver/assetIdentDef.h

Co-authored-by: Ondřej Samohel <[email protected]>

* Update src/AyonUsdResolver/assetIdentDef.h

Co-authored-by: Ondřej Samohel <[email protected]>

* changed around the way remove sdf formats marco works so that its inplace now

* implemented Macro for inplace SDF Fromat Args removal

* added a status message to inform about the Macro selection at compile time

---------

Co-authored-by: Lyon_Rosenblatt <[email protected]>
Co-authored-by: Ondřej Samohel <[email protected]>

* changed cpp api to develop branch

* update ayon cpp api pointer to the actuall v0.1.0-aloha version of the cpp api (#28)

Co-authored-by: ynput <[email protected]>

* update git module file to solve merge conflicts (#29)

Co-authored-by: ynput <[email protected]>

* Feature/gh pages auto (#25)

* removed adding pages setup so i can have a seperate pr

* add documentation generation via pages

* add documentation generation via pages

* added info about github Pages data

* Update .github/workflows/static.yml

Co-authored-by: Roy Nieterau <[email protected]>

* fixed non clickable docs link

* upaded docs

* updates to readme

* updates to readme

* upade doxyfile because to ayon usd resolver project name

* moved docs from pinning suport branch

* updated readme and dev docs with the right link

---------

Co-authored-by: Lyon_Rosenblatt <[email protected]>
Co-authored-by: Roy Nieterau <[email protected]>
Co-authored-by: ynput <[email protected]>

* Feature/gh pages auto (#30)

* removed adding pages setup so i can have a seperate pr

* add documentation generation via pages

* add documentation generation via pages

* added info about github Pages data

* Update .github/workflows/static.yml

Co-authored-by: Roy Nieterau <[email protected]>

* fixed non clickable docs link

* upaded docs

* updates to readme

* updates to readme

* upade doxyfile because to ayon usd resolver project name

* moved docs from pinning suport branch

* updated readme and dev docs with the right link

* updated page workflow to use generate.py

---------

Co-authored-by: Lyon_Rosenblatt <[email protected]>
Co-authored-by: Roy Nieterau <[email protected]>
Co-authored-by: ynput <[email protected]>

* Feature/23 feature request pin file loading (#24)

* save

* save

* removed submodule to add again

* add ayon-cpp-dev-tools

* implemented pinning file loading for the resolver

* cleand up build.sh

* implemented build.py to replace build.bat and build.sh

* upaded build.py

* moved old build scripts and changed CMakeLists.txt to include CppDevTools

* updated all documentation and added new documentation for devs and Admins, implemented drop_cache added some more python wrappers

* re organised and refactored small part of _Resolve() func to only use one for loop to get active context

* add documentation generation via pages

* removed adding pages setup so i can have a seperate pr

* Update Docs/Ayon_Docs/Admin_Docs.md

Co-authored-by: Robin De Lillo <[email protected]>

* Update Docs/Ayon_Docs/Admin_Docs.md

Co-authored-by: Robin De Lillo <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Robin De Lillo <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Robin De Lillo <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Robin De Lillo <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Robin De Lillo <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Robin De Lillo <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Robin De Lillo <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Robin De Lillo <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Robin De Lillo <[email protected]>

* Update scripts/build.py

Co-authored-by: Robin De Lillo <[email protected]>

* changed names and text for PR

* added extra info to the Dev docs on how to use pinning suport with excample code, also expanded on the general excamples

* Update Docs/Ayon_Docs/Admin_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Admin_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Admin_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Admin_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* fixed a typo in a class

* updated the information about TF_DEBUG inside admin docs

* Update Docs/Ayon_Docs/Admin_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Admin_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* pinning file loading now allows for key and value root replace

* upade for compile

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Admin_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* Update Docs/Ayon_Docs/Dev_Docs.md

Co-authored-by: Roy Nieterau <[email protected]>

* removed docs to handle them in seperate pr

* added back the docs generation as it was in develop branch

* fixes for git modules file

---------

Co-authored-by: Lyon_Rosenblatt <[email protected]>
Co-authored-by: Robin De Lillo <[email protected]>
Co-authored-by: Roy Nieterau <[email protected]>
Co-authored-by: ynput <[email protected]>

---------

Co-authored-by: Ondřej Samohel <[email protected]>
Co-authored-by: Ondřej Samohel <[email protected]>
Co-authored-by: Lyon-Rosenblatt-Ynput <[email protected]>
Co-authored-by: Lyon_Rosenblatt <[email protected]>
Co-authored-by: ynput <[email protected]>
Co-authored-by: Roy Nieterau <[email protected]>
Co-authored-by: Robin De Lillo <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
4 participants