This pull request introduces several key changes to the backend of the PoeticMetric application, focusing on adding email service functionality, particularly for password recovery, and updating dependencies and configurations.
Email Service and Password Recovery:
Added EmailService interface and relevant types for sending emails, including EmailServiceSendParams and EmailServiceTemplatePasswordRecoveryParams. (backend/pkg/poeticmetric/email_service.go)
Integrated email service into the authentication service to send password recovery emails. (backend/pkg/service/authentication/main.go)
Added a new endpoint to send user password recovery emails. (backend/pkg/restapi/handler/authentication/main.go)
Configuration and Dependency Updates:
Updated .golangci.yaml to re-enable previously removed linters and add new ones. (backend/.golangci.yaml)
Updated go.mod to add and remove various dependencies. (backend/go.mod) [1][2][3][4][5]
Documentation Updates:
Updated Swagger documentation to include the new password recovery endpoint. (backend/pkg/restapi/docs/docs.go, backend/pkg/restapi/docs/swagger.json, backend/pkg/restapi/docs/swagger.yaml) [1][2][3]
Miscellaneous:
Renamed pointer.go to helpers.go and added a StringSlice function. (backend/pkg/poeticmetric/helpers.go)
Added SMTP configuration to EnvService for email functionality. (backend/pkg/poeticmetric/env_service.go) [1][2]
These changes collectively enhance the application's ability to handle password recovery through email, improve code maintainability, and ensure up-to-date dependencies and configurations.
This pull request introduces several key changes to the backend of the PoeticMetric application, focusing on adding email service functionality, particularly for password recovery, and updating dependencies and configurations.
Email Service and Password Recovery:
EmailService
interface and relevant types for sending emails, includingEmailServiceSendParams
andEmailServiceTemplatePasswordRecoveryParams
. (backend/pkg/poeticmetric/email_service.go
)backend/pkg/service/authentication/main.go
)backend/pkg/restapi/handler/authentication/main.go
)Configuration and Dependency Updates:
.golangci.yaml
to re-enable previously removed linters and add new ones. (backend/.golangci.yaml
)go.mod
to add and remove various dependencies. (backend/go.mod
) [1] [2] [3] [4] [5]Documentation Updates:
backend/pkg/restapi/docs/docs.go
,backend/pkg/restapi/docs/swagger.json
,backend/pkg/restapi/docs/swagger.yaml
) [1] [2] [3]Miscellaneous:
pointer.go
tohelpers.go
and added aStringSlice
function. (backend/pkg/poeticmetric/helpers.go
)EnvService
for email functionality. (backend/pkg/poeticmetric/env_service.go
) [1] [2]These changes collectively enhance the application's ability to handle password recovery through email, improve code maintainability, and ensure up-to-date dependencies and configurations.