Fabien Castan
4bd0ff1a1d
[doc] CONTRIBUTING: add illustration
2025-05-02 23:05:01 +02:00
Fabien Castan
603ff3795d
[doc] Illustration: add contributing
2025-05-02 22:49:26 +02:00
Fabien Castan
c317e2e91c
[doc] README: fix bold
2025-05-02 22:43:55 +02:00
Fabien Castan
3c810c2a13
[doc] README: Clarified distinction between Meshroom engine, user interface, and plugins
2025-05-02 20:48:29 +02:00
Candice Bentéjac
3c1741b734
Merge pull request #2710 from alicevision/dev/fstring
...
Modernize to python 3.9 using flynt and pyupgrade
2025-05-02 11:56:55 +01:00
Fabien Castan
6764862b4c
[bin] Use raw strings for regex
2025-04-30 19:31:22 +02:00
Fabien Castan
41738f7f40
Modernize to python-3.9+ with pyupgrade (--py39-plus)
2025-04-30 19:18:54 +02:00
Fabien Castan
22b2161ddd
No need for explicit string conversion
2025-04-30 19:16:23 +02:00
Fabien Castan
1d4ba577a9
Apply flynt to use f-strings
2025-04-30 19:13:53 +02:00
Fabien Servant
37a6d9e2e7
Merge pull request #2715 from alicevision/fix/defaultCacheFolderBatch
...
[bin] `meshroom_batch`: Stop using removed `defaultCacheFolder`
2025-04-30 09:53:12 +02:00
Candice Bentéjac
5afd2c1df7
[bin] meshroom_batch
: Stop using removed defaultCacheFolder
2025-04-29 15:46:34 +02:00
Candice Bentéjac
006288aba2
Merge pull request #2703 from alicevision/dev/isolatedProcessEnv
...
New local isolated computation for python nodes
2025-04-28 17:31:11 +01:00
Candice Bentéjac
f8567fb98f
[desc] Node: Clean-up code
2025-04-28 18:24:58 +02:00
Candice Bentéjac
8300626ef5
[core] Node: Clean-up code
2025-04-28 18:24:08 +02:00
Fabien Castan
2fa380fc6c
Merge pull request #2711 from alicevision/dev/removeInternals
...
Remove internal and no longer used files
2025-04-28 18:19:47 +02:00
Candice Bentéjac
081d38f78d
Stop using bare except
statements
2025-04-28 17:28:10 +02:00
Fabien Servant
2a619b2ea6
Remove internal and no longer used files
2025-04-28 14:48:07 +00:00
Fabien Castan
ff9a0370ac
Fix node states after loading
...
The states of nodes were not valid the first time they were loaded, but
became valid after any topological update (such as creating or removing
a node or edge).
The reason was that the loading of the graph was done before setting the
project path (and thus the cacheDir). So the status files of the nodes
were not available during the graph creation and were not updated at the
end of the load.
Now we set the filepath/cache first, so everything is right from the
start.
2025-04-14 22:45:47 +02:00
Fabien Castan
be43c5c2a7
[ui] Compatibility nodes cannot be computed or recomputed
...
When the compatibility node was fully computed, the recompute/resubmit
button was available in the UI menu.
The reason is that we need to propagate that the connected nodes can be
computed if there is a compatibility node in the dependency iff it is
already fully computed.
Now there is an additional explicit check.
2025-04-14 22:28:08 +02:00
Fabien Castan
8be8ea5703
Fix display of Compatibility nodes
...
"isComputable" is renamed as "isComputableType": this function is only
about the Meshroom Node type and not about the computability in the
current context.
Even if we are in compatibility mode, we may has access to the nodeDesc
and its information about the node type.
2025-04-14 19:03:12 +02:00
Fabien Castan
2ad55352ee
[core] declaring "global" var access is useless
2025-04-14 11:24:13 +02:00
Fabien Castan
b9a5c00279
[core] fix logging
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-04-14 10:26:36 +02:00
Fabien Castan
346d78df30
Adapt unittests to deal with graph saving
2025-04-13 19:02:26 +02:00
Fabien Castan
cd219fd70e
[core] more typing
2025-04-13 19:02:26 +02:00
Fabien Castan
ee679fcf34
Merge pull request #2700 from dyster/patch-1
...
change git clone link to use https link in "get the project"
2025-04-13 13:50:55 +02:00
Fabien Castan
4cbd2e7766
[ui] simplify visible/displayable status
2025-04-13 13:09:25 +02:00
Fabien Castan
c01aefc4f3
[ui] GraphEditor: Improved node status computable/submitable checks
2025-04-13 13:09:25 +02:00
Fabien Castan
38e82b926f
[core] Add support for "3d" semantic
2025-04-13 13:09:25 +02:00
Fabien Castan
e65dc09710
[core] Simplify checks for displayable outputs
2025-04-13 13:09:24 +02:00
Fabien Castan
ca75e758be
[core] improve checks for sessionUid and execMode
2025-04-13 13:09:24 +02:00
Fabien Castan
299d8f29df
[core] NodeChunk: global notification for all status changes and no more separate notification for execMode
2025-04-13 13:09:24 +02:00
Fabien Castan
44ec6f0be7
[core] NodeChunk: Do not raise an error when we stop a chunk that is not running
...
When we stop the process of a node with multiple chunks, the Node
function will call the stop function of each chunk.
So, the chunck status could be SUBMITTED, RUNNING or ERROR.
2025-04-13 13:09:24 +02:00
Fabien Castan
008d6c75ee
Automatically save the project when computing or submitting to renderfarm
...
If the project is not saved at all, it will suggest to save it manually
or to define a project in a temporary folder using date/time for the
project name.
2025-04-13 13:09:24 +02:00
Fabien Castan
db8fd02aeb
New plugins load
...
MESHROOM_PLUGINS_PATH can be used to automatically load nodes and
pipelines from a folder structure.
2025-04-13 13:09:24 +02:00
Fabien Castan
92555f6ab3
[core] more explicit error messages when loading plugins
2025-04-13 13:09:23 +02:00
Fabien Castan
ea3f87b041
[core] improve the update of the node status
2025-04-13 13:09:23 +02:00
Fabien Castan
8be90ce362
[core] node: simplify with a new method isMainNode()
...
And add the check about duplicates for canBeStopped/canBeCanceled.
2025-03-28 12:21:16 +01:00
Fabien Castan
4e7de577c2
[core] Init node name with non-empty unique ID
2025-03-28 12:18:00 +01:00
Fabien Castan
e54127fbf0
[core] statusNodeName change over time due to duplicates
2025-03-28 12:17:21 +01:00
Fabien Castan
75ab823c18
[core] node: udpate isExtern check
2025-03-28 12:16:40 +01:00
Fabien Castan
0c32060264
[core] node: add some typing
2025-03-28 12:15:39 +01:00
Fabien Castan
2f08448310
Rely on the nodeDesc MrNodeType
2025-03-26 11:36:39 +00:00
Fabien Castan
1ca83fc6a9
[ui] Check if node types are available before using them
2025-03-26 11:33:13 +00:00
Fabien Castan
b3c4f675a8
rename "typing" to avoid conflicts
2025-03-26 11:32:35 +00:00
Fabien Castan
4c7ff6eb1a
[core] remove duplicated function from BaseNode
2025-03-26 11:29:09 +00:00
Fabien Castan
eb9df4c900
Explicit meshroom node type in status file
...
Avoid an ambiguous LOCAL_ISOLATED, as a process can be extern and using
an isolated execution environement.
2025-03-25 12:28:22 +01:00
Fabien Castan
426855baa6
[ui] ensure all node types used in the UI are declared
...
Avoid qml errors when accessing non-existing nodes.
The entry exist in the dict and we retrieve a null node.
2025-03-24 18:12:27 +01:00
Fabien Castan
727a4d129b
New notion of local isolated computation for python nodes using meshroom_compute
...
Reoganization
- BaseNode: is the base class for all nodes
- Node: is now dedicated to python nodes, with the implentation directly
in the process function
- CommandLineNode: dedicated to generate and run external command lines
2025-03-24 17:59:19 +01:00
Fabien Castan
faece7efca
minor wording
2025-03-24 00:12:06 +01:00
Fabien Castan
1ad526d627
[core] Use exist_ok on makedirs
2025-03-24 00:12:05 +01:00