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

Removing Dynamic configuration #119

Closed
atruskie opened this issue May 24, 2017 · 2 comments
Closed

Removing Dynamic configuration #119

atruskie opened this issue May 24, 2017 · 2 comments
Assignees
Milestone

Comments

@atruskie
Copy link
Member

Using Dynamic for configuration was useful but we are of course running into scalability problems as all sorts of weird technicalities that surround Dynamic.

We want to replace our Dynamic configuration implementation with static configuration classes.

Investigate if we can do this automatically, or whether we just need to slowly move over.

@atruskie
Copy link
Member Author

atruskie commented Jun 5, 2017

In d2d94fc I investigated using an automated tool to generate statically typed classes for config files. While useful it did not provide the desired level of flexibility.

I think I'm going to go with the more boring option: Extending IAnalyzer with a series of statically typed (hand coded) classes/interfaces.

@atruskie
Copy link
Member Author

atruskie commented Feb 2, 2018

The commit 864f7a4 had to deal with the forced removal of the custom built dynamic YAML DLL we had built. This issue is now a priority.

@atruskie atruskie added this to the Open Source milestone Feb 2, 2018
@atruskie atruskie mentioned this issue Feb 14, 2018
31 tasks
atruskie added a commit that referenced this issue Feb 14, 2018
This commit is the bulk of the work required to remove DynamicYaml configuration and replace it with an extendable generic config file, which can also be used for static typing.

Note, build fails, tests fail. More work needed.

Note, nuget also needed to a package reinstall. It looks like the stylecop analyzers might be broken.

By Adding a `Parse` method to the `IAnalyser2` interface we can allow for analyzers to parse their own config files to static classes 😀. However, this means the way we resolve Analyses by identifiers has changed and is now dependent on either an explicit argument, or the first two sections (separated by a period) of a config file name.

This work was done for #119
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant