Skip to content

Latest commit

 

History

History
148 lines (94 loc) · 5.61 KB

CHANGELOG.md

File metadata and controls

148 lines (94 loc) · 5.61 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

  • Not yet!

[0.8.1] - 2021-02-22

Fixed

  • fixed bug when creating an api with auth settings

[0.8.0] - 2021-02-22

Added

  • New add:micro command that scaffolds a new microservice template as well as an ocelot gateway
  • New port property on the new:api template to let you customize and api or microservice port on localhost
  • Added https default on local
  • Added additional startup middleware
    • UseHsts for non dev environments
    • UseHttpsRedirection with notes on even more secure options
  • New AuthorizationSettings object and authorization based properties on the environments for the new:api and new:micro commands
  • Added new GetEntity and DeleteEntity integration tests with and without auth
  • Added 401/403 response types to swagger comments when using auth
  • Added auth to swagger setup
    • note that secret is currently stored in appsettings
  • Auth added to integration tests when required

Fixed

  • The CurrentStartIndex calculation in the PagedList class was broken and now has a new calculation.
  • Added null conditional operator (?.) to certain tests before .Data to make them fail more gracefully
    • Get{entity.Plural}_ReturnsSuccessCodeAndResourceWithAccurateFields()
    • Put{entity.Name}ReturnsBodyAndFieldsWereSuccessfullyUpdated
  • Cleaned up WebApplicationFactory to remove deprecated services.
  • Removed [Collection(""Sequential"")] from repo tests

Clean up

  • Internal tests now passing
  • refactored out template drilling
  • removed old auth debt from earlier alpha

[0.7.0] - 2021-01-12

Added

  • Removed the dependency on the foundation api template!

Fixed

  • Fixed UseEnvironment in WebAppFactory to use Development
  • Fixed integration tests to use the new Response wrapper
  • Updated pagination tests to have proper keys due to default sort order possibly breaking these tests

[0.6.1] - 2021-01-06

Fixed

  • XML comment info is now properly added to WebApi.csproj and the Swagger config
  • Extra line will no longer be added when no swagger contact url is provided
  • Repository now sets default sort order for proper sql compatibility in lists (issue #9)

[0.6.0] - 2020-12-22

Added

  • Added table name and schema properties to entity

  • Added column name attribute to entity properties

  • Added Serilog by default in all new projects. This includes Console and Seq logging by default in Development. For non-Development environments, you'll need to add whatever logging you're interested in to their respective app-settings projects. There are just too many options to create a whole API on top of Serilog.

  • Updated swagger implementation from nswag

  • Added Consumes and Produces headers to the controller endpoints

  • Added an option to manage additional swagger settings to your API endpoints. This will be turned off by default for now as dealing the with xml docs path is potentially burdensome, but will add a lot of valuable details for users consuming your API. If you are looking to add additional XML details, this is highly recommended.

  • Added a custom Response Wrapper to the GET and POST endpoints

Fixed

  • Fixed launch settings to have null environment variable for Startup (Production). If you'd like to change this, be sure to update the appsetting lookup in Program.cs
  • Fixed POST endpoint that was lacking a [FromBody] marker
  • BasePaginationParameters will now have MaxPageSizee and DefaultPageSize set as internal properties so they don't show up in swagger. These can be overridden in the distinct entity classes like so: internal override int MaxPageSize { get; } = 30;
  • Fixed controllers to be able to handle a name and plural with the same value (e.g. Buffalo)

[0.5.0] - 2020-12-14

Added

  • Added add:entities alias for the add:entity command
  • Can now add Guid or other non-integer primary key

Fixed

  • Fixed bug where postgres library was getting added every time

[0.4.2] - 2020-12-10

Fixed

  • Seeder was not getting added to StartupDevelopment when using add:entity command

[0.4.1] - 2020-12-10

Fixed

  • Async method in controller POST wasn't awaited

[0.4.0] - 2020-12-06

Added

  • Default Startup.cs class can now be configured using the reserved Startup keyword

Fixed

  • Fixed craftsman add:property -h help text
  • The appsettings connection string will now escape backslash
  • Foreign key using statement will now be dynamic on DTOs

[0.3.1] - 2020-12-02

Added

  • Added new:webapi alias that acts the same as new:api

Fixed

  • Fixed craftsman add:property -h to point to the correct help page

[0.3.0] - 2020-11-14

Added

  • Updated the API to run on NET 5.0
  • Pagination metadata enhancements on PagedList that is returned in GET list endpoint will now include more metadata for the current page including the current size as well as the start and end indices. I also removed the Next and Previous Page URI links to reduce complexity.
  • Updated all controller calls to be asynchronous, including the get list
  • Saves updated to be asynchronous
  • One major capability I want to add into this is a good basis for auth generation. I've started to build this out, but it could (and very likely will) change drastically. With that said, I left it in as an alpha feature in case anyone is interested in trying it.

Fixed

  • Add Entity bug in repository fixed
  • Fixed some builder options when not using auth