Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Jan 12 02:14
    incoventures opened #59
  • Nov 29 2021 18:32

    github-actions[bot] on v4.1.0

    (compare)

  • Nov 29 2021 18:27

    jeremydmiller on master

    added the AutoStart option for … (compare)

  • Nov 29 2021 16:39

    github-actions[bot] on v4.0.0

    (compare)

  • Nov 29 2021 16:39

    jeremydmiller on master

    fixed version in Oakton.csproj (compare)

  • Nov 29 2021 16:37

    jeremydmiller on master

    using .net 6 in the nuget publi… (compare)

  • Nov 29 2021 16:33
    jeremydmiller closed #50
  • Nov 29 2021 16:33

    jeremydmiller on master

    enabling the usage of the opts … (compare)

  • Nov 29 2021 16:33
    jeremydmiller commented #50
  • Nov 29 2021 16:06
    jeremydmiller closed #54
  • Nov 29 2021 16:06
    jeremydmiller commented #54
  • Nov 29 2021 16:05
    jeremydmiller closed #58
  • Nov 29 2021 16:05
    jeremydmiller commented #58
  • Nov 29 2021 16:05
    jeremydmiller closed #56
  • Nov 29 2021 16:05
    jeremydmiller commented #56
  • Nov 29 2021 16:05

    jeremydmiller on master

    removing obsolete warnings, lit… simple recipe for using minimal… run commands synchronously mode… and 1 more (compare)

  • Nov 29 2021 15:03
    jeremydmiller edited #56
  • Nov 29 2021 15:03
    jeremydmiller opened #58
  • Nov 29 2021 14:59
    jeremydmiller commented #54
  • Nov 27 2021 23:31
    jeremydmiller opened #57
David Smith
@flipdoubt
Essentially, Oakton and Serilog don't play nice together if your Serilog configuration does something fancy like load sinks from appsettings.
Jeremy D. Miller
@jeremydmiller
Or Serilog does something odd to locate the appsettings.json itself. I’ve had no reports of problems with Oakton plus IConfiguration, so that might actually be pointing the finger at Serilog itself.
David Smith
@flipdoubt
Agreed.
Brian Dukes
@bdukes
I'm setting up a new ASP.NET 5 app and when using the RunOaktonCommands (from Oakton 3.1.0 NuGet package), the site starts and then stops immediately.
❯ dotnet run
Building...
Searching 'Lamar.Diagnostics, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' for commands
info: Microsoft.Hosting.Lifetime[0]
Now listening on: https://localhost:5001
info: Microsoft.Hosting.Lifetime[0]
Now listening on: http://localhost:5000
info: Microsoft.Hosting.Lifetime[0]
Application started. Press Ctrl+C to shut down.
info: Microsoft.Hosting.Lifetime[0]
Hosting environment: Development
info: Microsoft.Hosting.Lifetime[0]
Content root path: C:\inetpub\wwwroot\iss.local\InnovativeStaffSolutions.EmployeeManagement.Web
info: Microsoft.Hosting.Lifetime[0]
Application is shutting down...
Brian Dukes
@bdukes
If I switch the PackageReference to Oakton.AspNetCore 3.0.0 and continue with using Oakton; then it seems to work, but if I use using Oakton.AspNetCore; running the web app works, but running commands gives null references or empty output 🤷🏻‍♂️
Jeremy D. Miller
@jeremydmiller
Oakton.AspNetCore is obsolete, and stuck back at .Net Core 3.1. I'll try it out tomorrow on a local app, but I haven't seen this behavior at all.
Brian Dukes
@bdukes
👍🏻
Brian Dukes
@bdukes
I found that it works with Oakton 3.0.0 (which is what I was getting when I referenced Oakton.AspNetCore), but not with 3.0.1, 3.0.2, or 3.1.0
Jeremy D. Miller
@jeremydmiller
@bdukes When you did that, did you get any Nuget warnings about version mismatches?
Brian Dukes
@bdukes
no, only when I tried to use Oakton 2.0.5
Brian Dukes
@bdukes

That error was:

Determining projects to restore...
C:\inetpub\wwwroot\iss.local\InnovativeStaffSolutions.EmployeeManagement.Web\InnovativeStaffSolutions.EmployeeManagement.Web.csproj : error NU1605: Detected package downgrade: Oakton from 3.0.0 to 2.0.5. Reference the package directly from the project to select a different version.
C:\inetpub\wwwroot\iss.local\InnovativeStaffSolutions.EmployeeManagement.Web\InnovativeStaffSolutions.EmployeeManagement.Web.csproj : error NU1605: InnovativeStaffSolutions.EmployeeManagement.Web -> Lamar.Diagnostics 3.0.2 -> Oakton (>= 3.0.0 && < 4.0.0)
C:\inetpub\wwwroot\iss.local\InnovativeStaffSolutions.EmployeeManagement.Web\InnovativeStaffSolutions.EmployeeManagement.Web.csproj : error NU1605: InnovativeStaffSolutions.EmployeeManagement.Web -> Oakton (>= 2.0.5)
Failed to restore C:\inetpub\wwwroot\iss.local\InnovativeStaffSolutions.EmployeeManagement.Web\InnovativeStaffSolutions.EmployeeManagement.Web.csproj (in 792 ms).

Brian Dukes
@bdukes
@jeremydmiller were you able to take a look at that issue and replicate? let me know if there's any other info I can provide. Thanks!
Brian Dukes
@bdukes
Looking at the difference between 3.0.0 and 3.0.1, it looks like it's probably related to the RunCommand switching to OaktonAsyncCommand (or, rather, the changes to the body of the command when that change happened)
Brian Dukes
@bdukes
I've confirmed that reverting the code in RunCommand to the non-async version fixed the issue for me. I tried a few variations with the async version but couldn't get it to wait without the Unloading event handling. However, I also saw that the issue went away after I added Serilog. So it apparently has something to do with how the internals of ASP.NET 5 are being configured.
Jeremy D. Miller
@jeremydmiller
In that case, would you create a PR to move RunCommand back to being sync? I'd be lying if I said I remember why that changed.
Brian Dukes
@bdukes
👍🏻 can do
Brian Dukes
@bdukes
Just submitted #53
Steven T. Cramer
@StevenTCramer
async checks dont' report as an error for me.
image.png
image.png
switching to sync check and I get the above
Steven T. Cramer
@StevenTCramer
image.png
something like this but async checks don't seem to work.
Jeremy D. Miller
@jeremydmiller
Can you make sure you’re on the very, very latest Oakton?
And maybe just throw the exception out of that method?
Steven T. Cramer
@StevenTCramer
I am updating my blazor template to add Oakton I will try again when I get back to it and let you know.
Igor Popov
@incoventures
when you integrate oakton with HostBuilder by replacing .Build() with .RunOaktonCommands(args);. How do you get a reference to iHost? e.g. i need to run host.Services.GetRequiredService<Startup>(); in my Main method but .RunOaktonCommands(args) returns Task<int>?
Jeremy D. Miller
@jeremydmiller
You can use IHostedService to do that exact kind of startup activity. That’s the idiomatic .Net way to do start up actions now anyway
Igor Popov
@incoventures
ok thanks, that was for a console app but I can change it to IHostedService if that's the only way
Aarav Navani
@shift-eleven
heya, is there a way I could run commands without specifying a command name and just calling the executable? such as calling just executable to start a repl?
Jeremy D. Miller
@jeremydmiller
You can specify a default command, yes. Or if you only have one command:
class Program
{
    static int Main(string[] args)
    {
        // As long as this doesn't blow up, we're good to go
        return CommandExecutor.ExecuteCommand<NameCommand>(args);
    }
}
Then also see the DefaultCommand usage here: https://jasperfx.github.io/oakton/documentation/bootstrapping/
Aarav Navani
@shift-eleven
Ah gotcha, thanks