mutagen icon indicating copy to clipboard operation
mutagen copied to clipboard

Apply plugin globaly withouth attributes

Open hmvp opened this issue 7 years ago • 3 comments

According to: https://stackoverflow.com/questions/42592285/how-to-load-rust-compiler-plugins-without-modifying-the-source-code we can also go the clippy route from the test runner and always use the plugin.

This will make it easier to use mutagen. But we do need to take care of not mutating the tests themselfs..

hmvp avatar Mar 04 '18 09:03 hmvp

I know (and being one of clippy's maintainers I should know :smile:). Another way of doing that is calling cargo rustc -Z extra-plugins mutagen-plugin, but that's finicky and relies on the plugin being on the library path.

Also we should probably look for #[test] attributes on items so we can skip them. Probably need a no_mutate mode, as with flamer's #[no_flame], too.

llogiq avatar Mar 04 '18 09:03 llogiq

Ilogiq, do you have any pointers on what the best approach for this would be? I assume the first route is the easiest and the only downside is that projects need the plugin as a dev dependency in their Cargo.toml.

I would like to see this project to work the same as clippy in the sense that you can just run cargo mutagen on any project without modifications and it will just work...

hmvp avatar Mar 16 '18 09:03 hmvp

Of course we can go the cargo rustc route, which is easier to set up and don't need to hook into rustc (although I don't recall any breakage w.r.t. the driver in the last months, so that API seems to be stable enough).

llogiq avatar Mar 16 '18 17:03 llogiq