-
Notifications
You must be signed in to change notification settings - Fork 297
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
Add instructions to install from source #260
Add instructions to install from source #260
Conversation
@tymokvo hi) better to update https://github.com/jeremytammik/RevitLookup/blob/dev/Contributing.md instead of Readme) Readme is more suitable for users, not for developers |
3c8fddc
to
a78cc56
Compare
Ok, moved to |
Contributing.md
Outdated
- Run `dotnet build -c '{configuration}'` | ||
- Where `{configuration}` is a string defined in [`RevitLookup.csproj`][rl-proj] at the XPath `/Project/PropertyGroup/Configurations` | ||
- E.g. `dotnet build -c 'Release R23'` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
with dotnet build SOLUTION configuration must be specified, not project configuration
/Project/PropertyGroup/Configurations
not informative, because it does not indicate a valid path
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you can you instructions from here
https://github.com/Nice3point/RevitTemplates/blob/develop/samples/MultiProjectSolution/Readme.md
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
with dotnet build SOLUTION configuration must be specified, not project configuration
Hm, I'm not sure I understand the difference. I thought the configuration that the project received was inherited from the solution?
Though, maybe this would be more precise if it were:
dotnet build source/RevitLookup/RevitLookup.csproj -c 'Release R23'
For example, in the repo root when I run:
dotnet build -c 'Release R23'
I see the (trimmed) output:
Determining projects to restore...
Restored ...\RevitLookup\source\RevitLookup\RevitLookup.csproj (in 1.27 sec).
1 of 2 projects are up-to-date for restore.
RevitLookup.UI -> ...\RevitLookup\source\RevitLookup.UI\bin\Release\net48\RevitLookup.UI.dll
RevitLookup.UI -> ...\RevitLookup\source\RevitLookup.UI\bin\Release\net8.0-windows\RevitLookup.UI.dll
RevitLookup -> ...\RevitLookup\source\RevitLookup\bin\Release R23\RevitLookup.dll
RevitLookup -> ...\RevitLookup\source\RevitLookup\bin\Release R23\publish
Publishing add-in RevitLookup -> ...\AppData\Roaming\Autodesk\Revit\Addins\2023\RevitLookup
Build succeeded.
0 Warning(s)
0 Error(s)
Time Elapsed 00:00:12.44
...which indicates to me that RevitLookup
has received the intended configuration, correct?
And dumping the MSBuild solution during build
shows:
<ProjectConfiguration Project="{05C77115-2277-4DFC-8F95-BE37E5F1130F}" AbsolutePath="...\RevitLookup\source\RevitLookup\RevitLookup.csproj" BuildProjectInSolution="True">Release R23|AnyCPU</ProjectConfiguration>
/Project/PropertyGroup/Configurations
not informative, because it does not indicate a valid path
I believe this is a valid XPath within the XML of the project file. For example, when I run:
xq -x /Project/PropertyGroup/Configurations .\source\RevitLookup\RevitLookup.csproj
I see:
Debug R21;Debug R22;Debug R23;Debug R24;Debug R25
$(Configurations);Release R21;Release R22;Release R23;Release R24;Release R25
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I thought the configuration that the project received was inherited from the solution?
no, https://github.com/jeremytammik/RevitLookup/blob/dev/RevitLookup.sln#L24-L39 solution has own configuration
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For example, in the repo root when I run:> dotnet build -c 'Release R23'
Here Release R23
must be solution configuration, not project.
I wrote one sentence here:
https://github.com/Nice3point/RevitTemplates/wiki/Multiple-Revit-Versions#extendingreducing-the-supported-revit-api-versions
Solution and project configuration names may differ, but the templates use the same naming style to avoid confusion
And if you write documentation about the build, you need to specify exactly the configuration of the solution, not refer to the project
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Though, maybe this would be more precise if it were: dotnet build source/RevitLookup/RevitLookup.csproj -c 'Release R23'
This line correct, Release R23 - project configuration, because you use path to csproj
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok, thank you! I will update.
Added more instructions, expanded documentation about building, structuring, and creating MSI files |
Qodana for .NETIt seems all right 👌 No new problems were found according to the checks applied 💡 Qodana analysis was run in the pull request mode: only the changed files were checked Detected 202 dependenciesThird-party software listThis page lists the third-party software dependencies used in RevitLookup
Contact Qodana teamContact us at qodana-support@jetbrains.com
|
Summary of the Pull Request
What is this about:
Add instructions to install from source.
Description:
This adds a section to the contributing guidelines explaining the steps to build and install from source rather than from the published releases.
Earlier today, I was having trouble getting the newest release to install. I figured I would try to install from source. It took a few minutes to figure it out, but thankfully the project is set up to install itself in a sane way. 😃
However, I figured it would be useful for others to know how to do this since, ostensibly, many users have a working
dotnet
installation that can build the project and may want to contribute.Quality Checklist
Note: only documentation changes.