magbeat

joined 1 year ago
 
  • by Rodrigo Oler
 

Adding fallback content for ng-content got a lot easier with Angular v18

 

Was waiting for a long time for jest to replace karma. It seems there is a new test runner overtaking jest for Angular testing: Web Test Runner.

[–] magbeat@programming.dev 2 points 1 year ago* (last edited 1 year ago) (1 children)

When you are developing a UI library (as we are) we want to support the old API for some time and mark is a deprecated. So one would add a second @Input() of type ScheduleEvent[] leave the old API be as Course[] and mark it as deprecated. In the next major version you could then retire the old API.

 

Great usecase for the transforming @Input properties.

We will have to refactor a huge (and I mean huge) component for a customer in the near future. The consuming teams should not notice any of this. transform could be very useful for this.

 

Never heard and never used this feature of Angular v16.

 

Has anyone already switched to Jest? Has anyone already gained experience with Playwright Component Tests in Angular?

 

Nice article on how to use the Angular Schematics to convert a project to all standalone components and about what the schematics actually do in every step.

[–] magbeat@programming.dev 1 points 1 year ago

Yes, you are right. Long living branches are the problem.

In this case it is a completely new project in the workspace (of course depends on the library in the workspace). It is a POC that has been postponed again and again by the customer due to priorities.

I think it's probably best to isolate the branch and take it out of the workspace. When it is ready, we can integrate it back into the workspace.

[–] magbeat@programming.dev 6 points 1 year ago

As @nibblebit@programming.dev said you can use multiple configuration providers. We usually have local appsettings.json files, even per machine appsettings.<HOSTNAME>.json and then use Environment Variables that are stored in a vault for the production environment. We add the appsettings.<HOSTNAME>.json files to .gitignore so that they don't get checked in.

    var env = Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT");
    configuration.AddJsonFile($"appsettings.{env}.json", optional: true, reloadOnChange: true);
    configuration.AddJsonFile($"appsettings.{Environment.MachineName}.json", optional: true, reloadOnChange: true);
    configuration.AddEnvironmentVariables();

Then you can provide the secrets as environment variables in the form of DATA__ConnectionString

view more: next ›