Fix all-users addin manifest path for Revit 2027+#3276
Fix all-users addin manifest path for Revit 2027+#3276tay0thman wants to merge 0 commit intopyrevitlabs:developfrom
Conversation
|
Unable to trigger custom agent "Code Reviewer". You have run out of credits 😔 |
|
@jmcouffin minor fix, but a copilot review still welcomed. |
|
Please wait before merging. I need to validate actual wip do not work with Revit 2027. |
There was a problem hiding this comment.
Pull request overview
Updates pyRevit’s Revit add-in manifest placement logic to match Revit 2027+’s new all-users discovery rules, ensuring --allusers attachments are written to the shared third-party location that Revit 2027 actually loads.
Changes:
- Simplified
RevitAddons.GetRevitAddonsFolder()to route Revit 2027+ all-users manifests toC:\Program Files\Autodesk\Revit\Addins\<year>. - Removed the install-dir/registry-based path construction for Revit 2027+ all-users attachments (now uses the fixed shared location).
- Updated shipped binaries (
bin/netfx,bin/netcore) to reflect the code change.
Reviewed changes
Copilot reviewed 1 out of 5 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| dev/pyRevitLabs/pyRevitLabs.TargetApps.Revit/RevitAddons.cs | Adjusts all-users add-in manifest folder logic for Revit 2027+ to the new shared location. |
| bin/netfx/pyRevitLabs.TargetApps.Revit.dll | Rebuilt binary containing the updated add-ins path logic (net48). |
| bin/netcore/pyRevitLabs.TargetApps.Revit.dll | Rebuilt binary containing the updated add-ins path logic (net8.0-windows). |
I won't merge anything. |
|
@tay0thman did some tests + reviewed, logic seems fine. |
e134730 to
eed6aac
Compare
|
@jmcouffin I pushed a new commit |
338e5a8 to
90c6199
Compare
|
@jmcouffin these DLL conflicts are sticky, can you compile them when merging? |
003af2a to
48d2de8
Compare
Fix all-users addin manifest path for Revit 2027+
Problem
Revit 2027 changed how all-users add-in manifests are discovered. The previous three paths behave as follows:
fixed #3275
%ProgramData%\Autodesk\Revit\Addins\2027C:\Program Files\Autodesk\Revit 2027\AddIns\C:\Program Files\Autodesk\Revit\Addins\2027The current
GetRevitAddonsFolder()builds the second path (install-dir based) for 2027+--allusersattachments, which Revit rejects with "not signed as internal addin".Revit 2027 journal explicitly states:
Fix
Simplified
GetRevitAddonsFolder()inRevitAddons.csto use the correct shared path for Revit 2027+:Removed the
RevitProduct.ListInstalledProducts()registry lookup which was building the wrong base path.Changed files
dev/pyRevitLabs/pyRevitLabs.TargetApps.Revit/RevitAddons.cs— core path fixbin/,bin/netcore/,bin/netfx/)Testing
pyrevit attach <clone> default --installed --allusersplaces manifest atC:\Program Files\Autodesk\Revit\Addins\2027\%ProgramData%path (unchanged)%APPDATA%) unchanged for all versionspyrevit envshows correct attachment info for all Revit versions (2023–2027)