.Net Core/Standard support update (works!) and question about the future/maintainance/fork...?

35 views
Skip to first unread message

iv...@ivanz.com

unread,
Jul 22, 2016, 6:33:46 AM7/22/16
to machine_users
Hi all,

I wanted to start using MSpec on .NET Core / .NET Standard and found out about Inge's initial "porting" effort of which he blogged about here: http://www.ingebrigtsen.info/2016/04/16/machine-specifications-net-core/ .

I took his work and completed the port by implementing a "dotnet test" runner (https://github.com/ivanz/dotnet-test-mspec / Nuget: dotnet-test-mspec) and using it to port the MSpec tests, etc:  https://github.com/ivanz/Machine.Specifications.Core/tree/feature/port-test

The question is how do we move forward with this...

My preference would be not to fork MSpec and create a separate GitHub organization and so on, but to merge the efforts. Having said "efforts" though - it appears that no one is looking after the MSpec project any more, so unless access can be given to GitHub organization (for setting up things like AppVeyor, etc) and NuGet publishing, etc - a fork in a separate GitHub organization will be easier to manage. Either way I am happy to spend time on this.

What are your thoughts?


P.S: Quick intro: I have been a very long time MSpec user for personal and commercial projects and recently created "v2" of the Visual Studio MSpec runner (used in TFS and Visual Studio Team Services CI as well) here: https://github.com/machine-visualstudio/machine.vstestadapter

Alexander Groß

unread,
Jul 22, 2016, 6:39:29 AM7/22/16
to machin...@googlegroups.com
Hi Ivan,

I invited you to join the MSpec team. Let me know if you need anything else!

​Cheers,


Alex
-- 
Alexander Groß
http://therightstuff.de/

--
You received this message because you are subscribed to the Google Groups "machine_users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to machine_user...@googlegroups.com.
To post to this group, send email to machin...@googlegroups.com.
Visit this group at https://groups.google.com/group/machine_users.
For more options, visit https://groups.google.com/d/optout.

iv...@ivanz.com

unread,
Jul 24, 2016, 1:21:29 PM7/24/16
to machine_users
Hey,

Thanks for this. Are you happy for me (Einari is also keen to help/co-maintain) to simply go ahead with something like this (quick brain dump):

Next minor release of Machine.Specifications (current 
  • Backport changes to target the .NET Standard 
    • No behavior/breaking/functional changes for the existing .NET peeps
    • Support for .NET Core
    • Migrate the solution to the new dotnet/Visual Studio tooling
  • Adopt something like waffle.io or Huboard for project management
  • Move the CI (and potentially NuGet publish) to AppVeyor
Spikes:
  • machine.specifications.runner.console: Porting the console runner to .Net Standard (.Net Core + .Net) and build "dotnet test" on top of "it" to avoid code duplication as much as possible
  • machine.fakes + moq adaptor on .NET Standard (.Net Core + .Net)
Next minor release + 1 of Machine.Speficitations
  • Potentially try and target lower version of the .NET Standard to bring UWP support
Transfer of dotnet test runner and Visual Studio runner to the machine organization

Logistics
  • Admin premissions are required in GitHub org to set-up the AppVeyor CI integration (and HubBoard integration) 
  • I will have to create a "machine" account on AppVeyor CI with a user+password, which I can share with other organization members and also link the GitHub org with the AppVeyor team permissions, so that everyone has matching access
  • The Nuget publish key will have to be added to a AppVeyor CI "environment" for publishing.


Ivan.

Alexander Groß

unread,
Jul 24, 2016, 2:30:57 PM7/24/16
to machin...@googlegroups.com
Hi,

Go ahead and change code as you see fit - there's no need to get approval from anyone ;-)

I made you a machine owner and team admin and invited @einari to join team machine.specifications. The whole team gained admin access to all machine.specifications* repos.

We were using teamcity.codebetter.com, if you want to reuse the build infrastructure over there let me know.

As for NuGet, I think I can add you as an owner of the mspec nugets and then you can use your own API key to publish packages. Not sure, though. Shoot me your NuGet.org handle and I'll try to set you up.

Beste Grüße,


Alex
-- 
Alexander Groß
http://therightstuff.de/

Einar Ingebrigtsen

unread,
Jul 24, 2016, 3:27:29 PM7/24/16
to machine_users
Excellent Alexander. Thanks! 

We'll handle the gold with care.. :) 

Ivan Zlatev

unread,
Jul 29, 2016, 12:39:12 PM7/29/16
to machin...@googlegroups.com, Alexander Groß

Hey Alexander,

 

Can you please add me on NuGet to those packages. I want to potentially push a cross-platform 0.10 beta of Machine.Specifications over the weekend which targets the .NET Standard (and .NET – backwards compatible)

 

·        Machine.Specifications

·        Machine.Specifiactions.Should

·        machine.fakes

·        machine.specifications.runner.console

·        machine.specifications.runner.utility

 

And maybe to those if I get time to look into what can be made compatible with .NET Standard:

·        machine.specifications.runner.tdnet

·        machine.specifications.reporting

--
You received this message because you are subscribed to a topic in the Google Groups "machine_users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/machine_users/q5T7ENS21CQ/unsubscribe.
To unsubscribe from this group and all its topics, send an email to machine_user...@googlegroups.com.

Ivan Zlatev

unread,
Jul 29, 2016, 6:54:55 PM7/29/16
to machin...@googlegroups.com, Alexander Groß

Sorry – forgot to say that my username on nugget.org is ivanz: https://www.nuget.org/profiles/ivanz

Reply all
Reply to author
Forward
0 new messages