aurelia / skeleton-navigation

Starter kits for building a standard navigation-style app with Aurelia.
Creative Commons Zero v1.0 Universal
732 stars 513 forks source link

skeleton-navigation es2016-asp.net5 fails to run #353

Closed adriatic closed 8 years ago

adriatic commented 8 years ago

Here is what happens after a successful build:

1>------ Build started: Project: skeleton-navigation-es2016-vs, Configuration: Debug Any CPU ------
1>
1>  Build succeeded.
1>           0 Warning(s).
1>           0 Error(s).
1>
1>  Time elapsed 00:00:00.9790539
1>
========== Build: 1 succeeded or up-to-date, 0 failed, 0 skipped ==========

Using either "Start debugging" or "Start without debugging" I get to see the same event:

image

The problem as it seems is that the jspm install task was never executed, so as the result a complete set of modules that jspm resolves is missing - see below the VS 2015 view of what it has available to run this skeleton:



No aurelia modules, no systemjs ...

plwalters commented 8 years ago

Step 5 of the install process on the readme is to jspm install -y

I'm open to improving the process so that it works for all environments, else SideWaffle is releasing some Visual Studio-specific templates we can promote that are targeted to that IDE only.

adriatic commented 8 years ago

Step 5 of the install process on the readme is to jspm install -y

I may have missed this, since the README file seemed just like a copy of the README file for es2016 version (no Visual Studio).

Note that this current approach is likely a derivative of this article by Aurelia member Scott Allen - which is "behind the state of the art" now

I am proposing to remove any and all console (cmd.exe) based configuration and do everything via Visual Studio extensions (.vsx) - as this image demonstrates:



This is the standard method for configuring any Visual Studio solution - and the whole purpose of Aurelia Navigation Skeleton apps is to allow "friction-less entry" into the world of Aurelia

adriatic commented 8 years ago

My final point in favor of a complete modernization of VS based skeleton is also the strongest one: despite the popular opinion, Aurelia based application is more often than not a part of a larger, distributed system (front end, back end identity management PaaS services, ...) and asp.net5 is likely the best platform for such distributed. This, Aurelia should fit into VS as good (and natural) as possible

adriatic commented 8 years ago

Over this weekend I created a few articles explaining my proposed approach to refreshing Visual Studio versions of the Skeleton navigation - see

Aurelia Application Skeletons

for more detals

codewithtyler commented 8 years ago

@adriatic I'm working on updating the ASP.NET templates so that it can be included in SideWaffle. Today I worked on the TypeScript template and what I ended up doing today to get it working on my end with Visual Studio was I created a gulp task that executes the command jspm install anytime I build the application. Here's what I added to the build.js file.

var exec = require('child_process').exec;

gulp.task('build-jspm', function () {
    exec('jspm install', function (err, stout, stderr) {
    });
});

Like I said that worked for the TypeScript template. Since the ES2016 template also uses jspm adding a gulp task to it should work for it as well. I'll start looking over your articles tomorrow, but I do believe that this can be fixed without having to rewrite the template.

adriatic commented 8 years ago

I'll start looking over your articles tomorrow, but I do believe that this can be fixed without having to rewrite the template.

As I explained in my Gitter based message to @PWKad, I do not want to "disrupt" the currently going process of maintaining the VS based skeletons - but trying to use these skeletons for Aurelia-KendoUI bridge tutorials, I discovered that they simply do not work. Since I am trying very hard to "attract" existing KendoUI users to "come to Aurelia", anything but best implementation of VS skeletons is not acceptable.

Regardless of the amount of the work needed to make them work, I think that my proposed approach is more modern and easier to maintain because my final version will require only Visual Studio, without having any excursions into console based invocations of npm and jspm`.

adriatic commented 8 years ago

Here's what I added to the build.js file.

Unless I do not understand your proposal, I believe that it is not the best we can take. All integration with npm, jspm, gulp, browserSync etc has to be done using Visual Studio Extensions

codewithtyler commented 8 years ago

As I explained in my Gitter based message to @PWKad, I do not want to "disrupt" the currently going process of maintaining the VS based skeletons - but trying to use these skeletons for Aurelia-KendoUI bridge tutorials, I discovered that they simply do not work.

Ah, I have trouble keeping up with the Gitter chat so I must have missed that message.

Unless I do not understand your proposal, I believe that it is not the best we can take. All integration with npm, jspm, gulp, browserSync etc have to be done using Visual Studio Extensions

If you'll look at the Gulp file it pulls its tasks from the build/tasks folder. In that folder are a series of .js files containing all the Gulp tasks. I added my jspm task in the build.js file. From what I remember of Scott Allens article on using JSPM and ASP.NET he just ran the commands manually. By using the Gulp task that I have created we can run the jspm install command directly from the Task Runner Explorer, which used to be a 3rd Party Visual Studio Extension but is now part of Visual Studio 2015.

I hope that clears any confusion.

EisenbergEffect commented 8 years ago

We've got some updates coming and there seems to be a plan for this, so I'm closing as resolved.