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.
Todas as alterações notáveis neste projeto serão documentadas neste arquivo.
O formato é baseado em Keep a Changelog (PT-BR), e este projeto adere a Versionamento Semântico (PT-BR).
- Add
AsNoTracking
AsNoTracking to improve query performance across multiple RPC services. - Changes in
CustomerRpcService
- Added query join to fetch customers including related
Person
andDependents
entities. - Filtered customers based on
CustomerId
usingUlid
parsed from the request cursor. - Limited query results to 20 records, tracked without changes, and converted to a list asynchronously.
- Added query join to fetch customers including related
- ID's are now required instead of having a default value to avoid some unintentional new ID problem.
- People "FullName" are now indexed but "MobilePhoneNumber" and "Cpf" are no longer indexed.
- Fix cursor condition on GetPaginated requests.
- Increase Customer "BillingAddress" length to 120.
- Implement FakerService to generate data.
- Add
Bogus
package to generate fake data for tests. - Dependents is now it's own type.
- Update protobufs from
2f4e2cdbd
to9ae6e9999
. - Person now has index on "MobilePhoneNumber" and "Cpf"
- Rename "Void" data type to "VoidValue"
- Update protobufs from
a5d081123
to2f4e2cdbd
.
- Protobuf now has changed some messages to use a generic Void value.
- Update protobufs from
d5bc3684d
toa5d081123
.
- Fix all "GetPaginated" not working with a cursor that was not null (some GET functions are still missing "include" arguments on the select).
- Update All AWS packages to the more recent version.
- Add "Include Error Detail=True" to Postgres connection string in debug mode.
- Add missing Authorization in services.
- Update Person & Customer model definition.
- Update all "GetPaginated" can have null as a cursor value in case is the first fetch.
- Update protobufs from
3d4788411
tod5bc3684d
.
- Better "ErrorMessage" in some validations.
- Remove "AutoMapper".
- Remove "BackgroundJobStatus" from DB (because logs are enough to keep track).
- Update all Models and add "FromProtoRequest" and "ToGetById" on most of them.
- Update all Services To use "FromProtoRequest" and "ToGetById" instead of AutoMapper.
- Update protobufs from
15b4f0054
to3d4788411
.
- "SubscriptionInvoiceBackgroundJob" now is tracked in the DB.
- User now has "IsActive" to know if email is confirmed valid and allow it to login.
- Some User properties changes for the customer App.
- Cleaned some unused test code.
- Remove unnecessary error messages when they won't reach the end user.
- Add a variable character limit for RefreshToken.
- Change "CreatedBy" data type from
Int
toULID
. - Rename All "Comments" properties to "Observations".
- Update AutoMapper to support Ulid.
- Update protobufs from
0adaf3a56
to15b4f0054
.
- Add
Ulid
package from Cysharp, also added value converter. - Change every Model Id to ULID.
- Change Default Id on Postgres from
Serial
toIdentity
. - Rename Folder
CustomTypes
toValuesConverter
. - Rename Table "Persons" to "People".
- Change some data validation.
- Improve mapping of SQL relationships in EF Core.
- Change some data validation.
- Fix instances where a composite index was created, instead of multiple indexes.
- Finish basic implementation of gRPC services with the new protobufs, some stuff will be implemented later, but it's not needed for critical functionality.
- Add Middleware
GlobalExceptionHandler
to be able to log and return even when unknown errors occur, but at the moment does not work with gRPC. - Update protobufs from
a1d46b748
to0adaf3a56
.
- Rename Package and Project from "gs_server" to "GsServer".
- Update protobufs from
617c788f5
toa1d46b748
.
- Create "RequestTracerId" in every log using
HttpContext.TraceIdentifier
. - Add Untested
AwsS3Service.cs
. - Add Untested
AwsCloudWatch
for logging. - Implement "DecimalValue" conversion to "C# Decimal".
- Update protobufs from
9e568008b
to617c788f5
.
- Rename every model and add the suffix "Model".
- Update minor changes in models that will not be documented because it is not ready for release and consumption yet.
- Update protobufs from
b1e3e6a23
to9e568008b
.
- Create InvoiceBackgroundService (not finished).
- Create Models "BackgroundJob, Notification, Subscription, SubscriptionBilling, SaleBilling, Promotion".
- Implement Cursor pagination (replaced GetAll).
- Update protobufs from
4bd2bcfe3
tob1e3e6a23
. - Every model ID now has a prefix in it to make it more readable.
- Update major changes in models that will not be documented because it is not ready for release and consumption yet.
- Rename "Teacher" to "Instructor".
- Remove control flow enums.
- Create
CONTRIBUTING.md
. - Create
CODE_OF_CONDUCT.md
. - Create
Protos/
as a hack to solve proto import problem for now. - Continue implementation of gRPC with the new protobufs.
- Update
CHANGELOG.md
move "How to contribute" toCONTRIBUTING.md
. - Add suffix "Model" to every model to avoid problems with generated files.
- Change "Address" data type to string and delete AddressModel.
- Picture now can be binary on upload and path from services like Imgur, AWS S3, Azure Blob, and more.
- Update protobufs from
726541499
to4bd2bcfe3
. - Remove AutoMapper package.
- Update Microsoft.EntityFrameworkCore.Design package to "8.0.2".
- gs_test_db dev password.
- Start implementation of gRPC with the new protobufs.
- Authentication and Authorization.
- Create
TODO.md
. - Update protobufs from
3c0043404
to726541499
. - Removed wildcard operator
*
in<ItemGroup>
onGsServer.csproj
causing a warning loop on vscode when there's an error.
- Rename "Wards" to "Dependents" and use a Person model to make things simpler.
- Update wrong "MobilePhone" to "MobilePhoneNumber" in EntityFramework configuration.
- Pictures are now stored as bytes.
- change DataTypes of some Models.
- Removed Unnecessary and redundant "SubscribedDisciplines" in Customer Model.
- Add new Brazilian ID "Cin" in Person, CIN (Carteira de Identidade Nacional).
- Translate and Update Models to english.
- Update EntityFramework DataBase configuration for compatibility with new models.
- Added Guidelines for copyright and trademarks in
README.md
.
- Initial public release.