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

HAST-295: Open-source Hast.Core #98

Merged
merged 34 commits into from
Feb 7, 2023
Merged

HAST-295: Open-source Hast.Core #98

merged 34 commits into from
Feb 7, 2023

Conversation

Piedone
Copy link
Member

@Piedone Piedone commented Feb 3, 2023

HAST-295

Note to the reviewer: The 9638b69 commit just copies the dev of Hast.Core. You can skip that commit. The actual changes come only after commit ef8d2a0.

…e to the .NET decompilation result being different
…hanged due to the .NET decompilation result being different
…changed due to the .NET decompilation result being different
…ed due to the .NET decompilation result being different
… various changed due to the .NET decompilation result being different
… due to the .NET decompilation result being different
…due to the .NET decompilation result being different
…d simplifying test classes by removing code that's optimized out by the compiled anyway
@Piedone Piedone changed the base branch from client to dev February 3, 2023 19:58
@Piedone Piedone changed the title Open-source Hast.Core HAST-295: Open-source Hast.Core Feb 3, 2023
Comment on lines -20 to -23
- Their projects need to be located in a subfolder of *Hast.Core*.
- Both the Debug and Release build output directories should be set just to *bin\\*.

If a *Hast.Core* projects needs to have types accessible in the Client flavor then create a corresponding `Abstractions` project. Such projects should follow the same rules listed above as *Hast.Core* projects with the only difference being that they should be located in a subfolder of *Hast.Abstractions*. Exceptions are projects that are directly added as imported extensions in `Hast.Layer`: Those can be just normal projects (like `Hast.Transformer.Abstractions`).
Copy link
Member Author

Choose a reason for hiding this comment

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

These are not applicable anymore, but GetHastLibraries() still loads dependencies from the available (hard-referenced) Hast DLLs. We can perhaps change that to use static loading, but for that, we'd need to add a reference to a type in each assembly, which seems like a chore and error-prone in the future if we add new projects.

Copy link
Member

Choose a reason for hiding this comment

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

I wonder if we can determine the types using some kind of compile time analysis using Roslyn code generation? Then this could be automated away and we'd have one less error source.

Copy link
Member Author

Choose a reason for hiding this comment

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

We can iterate over the loaded assemblies instead of the files too, and filter by name there. Apart from the name, we could use a marker attribute in SharedAssemblyInfo, but I don't think that's much better.

Copy link
Member Author

Choose a reason for hiding this comment

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

Based on #99 I suggest leaving this as it is for now.

Copy link
Member

Choose a reason for hiding this comment

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

Yeah, no change request here. I just answered your comment where you wrote it. 😉

Docs/GettingStarted.md Outdated Show resolved Hide resolved
Docs/ReleaseNotes.md Outdated Show resolved Hide resolved
Docs/WorkingWithHastlayer.md Outdated Show resolved Hide resolved
Hast.Core/Hast.Transformer/DefaultTransformer.cs Outdated Show resolved Hide resolved
Samples/Hast.Samples.Kpz.Algorithms/Readme.md Outdated Show resolved Hide resolved
Samples/Hast.Samples.Kpz.Algorithms/Readme.md Outdated Show resolved Hide resolved
@sarahelsaig sarahelsaig merged commit f251b2c into dev Feb 7, 2023
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.

None yet

2 participants