Kristaps Fabians Geikins
bde148f286
chore(server): migrating fully to ESM ( #5042 )
...
* wip
* some extra fixes
* stuff kinda works?
* need to figure out mocks
* need to figure out mocks
* fix db listener
* gqlgen fix
* minor gqlgen watch adjustment
* lint fixes
* delete old codegen file
* converting migrations to ESM
* getModuleDIrectory
* vitest sort of works
* added back ts-vitest
* resolve gql double load
* fixing test timeout configs
* TSC lint fix
* fix automate tests
* moar debugging
* debugging
* more debugging
* codegen update
* server works
* yargs migrated
* chore(server): getting rid of global mocks for Server ESM (#5046 )
* got rid of email mock
* got rid of comment mocks
* got rid of multi region mocks
* got rid of stripe mock
* admin override mock updated
* removed final mock
* fixing import.meta.resolve calls
* another import.meta.resolve fix
* added requested test
* nyc ESM fix
* removed unneeded deps + linting
* yarn lock forgot to commit
* tryna fix flakyness
* email capture util fix
* sendEmail fix
* fix TSX check
* sender transporter fix + CR comments
* merge main fix
* test fixx
* circleci fix
* gqlgen bigint fix
* error formatter fix
* more error formatting improvements
* esmloader added to Dockerfile
* more dockerfile fixes
* bg jobs fix
2025-07-14 10:26:19 +03:00
Kristaps Fabians Geikins
d2f2d95bb5
chore(server): migrate remaining tests to TS ( #4772 )
...
* auth tests migrated
* core tests
* pwdreset
* authz tests
2025-05-20 14:24:48 +03:00
Iain Sproat
89b2d9d22e
chore(server/logging): add operations logging to pwdreset module
2025-04-15 08:22:20 +01:00
andrewwallacespeckle
d1f040051d
refactor(server): Update system emails ( #4074 )
...
* Update email verification. And workspace invite emails.
* Footer logos
* Workspace requests
* Trial
* Misc emails
* New logo
* Updates to font, spacing and footer
* Remove space
* Update invite emails
* Correct classes
2025-03-07 15:30:03 +00:00
Iain Sproat
5655b3e758
fix(metrics): pass registry in to modules ( #4113 )
...
- ensure metrics are added to the correct registry
2025-03-06 08:37:05 +00:00
Iain Sproat
ce08e5e02d
refactor(server): logging directory renamed to observability ( #4077 )
2025-02-28 08:43:54 +00:00
Iain Sproat
c59e6043bb
fix(server/errors): derive errors from BaseError ( #3918 )
2025-01-30 18:15:56 +01:00
Kristaps Fabians Geikins
aee14edc5b
chore(server): getting rid of module-scoped event emitters - batch #1 ( #3766 )
...
* got rid of models emitter + added tests
* got rid of projects emitter + added tests
* replaced user event bus
* test migrate
2025-01-13 11:39:46 +02:00
Gergő Jedlicska
c186b23db6
feat(gatekeeper): send workspace trial expiry emails
2024-12-13 17:30:02 +01:00
Kristaps Fabians Geikins
11fec3222a
cjs doesnt like knex default export
2024-10-28 11:35:20 +02:00
Kristaps Fabians Geikins
f27f289dc6
chore(server): core IoC #78 - getServerInfoFactory
2024-10-17 12:37:43 +03:00
Kristaps Fabians Geikins
66d09808a8
chore(server): core IoC #61 - changePassword & validateUserPassword
2024-10-15 13:58:36 +03:00
Kristaps Fabians Geikins
781ee2cc2d
chore(server): core IoC #57 - getUserByEmailFactory
2024-10-15 13:17:34 +03:00
Kristaps Fabians Geikins
573970fc6c
chore(server): core IoC #55 - createUserFactory
2024-10-15 12:55:33 +03:00
Iain Sproat
f93d9093a0
fix(errors): all error should define an appropriate status code ( #3112 )
...
* fix(errors): all error should define a status code (default is 500)
- rename NoInviteFoundError to InviteNotFoundError to match xNotFoundError pattern
* remove unused errors
2024-09-25 13:08:13 +02:00
Kristaps Fabians Geikins
df7f0be830
chore(server): auth IoC 13 - index repo ( #3035 )
...
* chore(server): auth IoC 3 - getAllAppsCreatedByUserFactory
* minor fix
* chore(server): auth IoC 4 - getAllAppsAuthorizedByUserFactory
* chore(server): auth IoC 5 - createAppFactory
* chore(server): auth IoC 6 - updateAppFactory
* chore(server): auth IoC 7 - deleteAppFactory
* chore(server): auth IoC 8 - revokeExistingAppCredentialsForUserFactory
* chore(server): auth IoC 9 - revokeRefreshTokenFactory
* chore(server): auth IoC 10 - createAuthorizationCodeFactory
* chore(server): auth IoC 11 - createAppTokenFromAccessCodeFactory
* chore(server): auth IoC 12 - refreshAppTokenFactory
* chore(server): auth IoC 13 - index repo
---------
Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com >
2024-09-19 10:57:49 +02:00
Kristaps Fabians Geikins
180ce4a169
chore(server): pwdreset IoC 3 - finalizePasswordResetFactory
2024-09-12 15:10:30 +03:00
Kristaps Fabians Geikins
809a748995
chore(server): pwdreset IoC 2 - requestPasswordRecoveryFactory
2024-09-12 15:00:39 +03:00
Kristaps Fabians Geikins
7f608f301a
chore(server): pwdreset IoC 1 - createTokenFactory
2024-09-12 14:48:58 +03:00
Kristaps Fabians Geikins
c87b7c9041
fix up tests
2024-09-12 14:40:28 +03:00
Iain Sproat
819df9bc65
Prefer docker compose over docker-compose ( #1895 )
2023-12-21 18:45:20 +00:00
Kristaps Fabians Geikins
b02a07e2b6
feat: Frontend 2.0 MVP
2023-05-08 10:47:01 +03:00
Gergő Jedlicska
0be2d5ee54
fix: (server password reset): email mjml was missing mj tags ( #1452 )
2023-03-14 10:41:00 +01:00
Gergő Jedlicska
c4454c2ede
refactor(server email templates): use the mjml ejs rendering for all emails ( #1448 )
...
* refactor(server email templates): use the mjml ejs rendering for all emails
* fix(server access request): await the server info pls
2023-03-13 15:07:13 +01:00
Iain Sproat
7e89950358
feat(logging): log all http requests and responses ( #1416 )
...
- feat(logging): log all http requests and responses
- the auto logger does not log the body, to ensure sensitive payloads are not logged. Unfortunately this means that error messages are not logged either, so need to be manually logged.
- fix(logging): 400 errors should be info not error severity logging
2023-02-27 15:14:56 +00:00
Iain Sproat
4b1969c804
chore(server): improve logging of REST API endpoints ( #1414 )
...
- chore(server): adds endpoint parameter to some log messages
- and any other relevant parameters we have to hand (streamId, userId etc..)
- logging severity is info for `400` status codes, error for `500` status codes or equivalent.
2023-02-24 11:22:21 +00:00
Iain Sproat
4d01e13a84
feat(structured logging) ( #1242 )
...
* Revert "Revert structured logging 2 (#1240 )"
This reverts commit 78ecaeffcb .
* Logging should not be bundled into core shared directory
* making sure observability stuff isnt bundled into frontend
Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com >
2022-12-06 11:51:18 +00:00
Iain Sproat
78ecaeffcb
Revert structured logging 2 ( #1240 )
...
* Revert "'@' shortcut must come after it is configured in bootstrap (#1239 )"
This reverts commit 967329473f .
* Revert "Structured logging (attempt 2) (#1234 )"
This reverts commit 444d2ca7dd .
2022-12-05 15:46:09 +00:00
Iain Sproat
444d2ca7dd
Structured logging (attempt 2) ( #1234 )
...
* Revert "Revert "feat(structured logging): implements structured logging for backend (#1217 )" (#1227 )"
This reverts commit 63e6581162 .
* Use pino-http instead of express pino logger
* Use correct reference to knex and do not instantiate HttpLogger prematurely
* Adds missing dependency for pino to webhook-service
* Do not instantiate middleware when passed to express
* Refactor to move logging into shared
* Copy shared packages into dockerfiles
* Build shared workspace in docker build-stage for fileimport & webhook
2022-12-05 14:49:52 +00:00
Iain Sproat
63e6581162
Revert "feat(structured logging): implements structured logging for backend ( #1217 )" ( #1227 )
...
This reverts commit 84cb74e8b3 .
2022-11-25 16:57:28 +00:00
Iain Sproat
84cb74e8b3
feat(structured logging): implements structured logging for backend ( #1217 )
...
* each log line is a json object
* structured logging allows logs to be ingested by machines and the logs to be indexed and queried addresses #1105
* structured logging allows arbitrary properties to be appended to each log line, and ingestion of logs to remain robust
* Structured logging provided by `pino` library
* Add `express-pino-logger` dependency
* Remove `debug`, `morgan`, and `morgan-debug` and replace with structured logging
* `console.log` & `console.error` replaced with structured logging in backend
* Remove `DEBUG` environment variable and replace with `LOG_LEVEL`
- Note that there is a test which reads from a logged line on `stdout`. This is not robust, it would be better to use the childProcess.pid to look up the port number.
* Log errors at points we explicitly send error to Sentry
* Amend indentation of a couple of log messages to align indentation with others
2022-11-25 16:05:05 +00:00
Kristaps Fabians Geikins
ecb9f825bb
refactor: email verification flow & email template ( #967 )
2022-08-31 17:11:19 +03:00
Kristaps Fabians Geikins
774176246e
feat: pretty password reset email + bugfixes ( #939 )
2022-08-24 11:59:30 +03:00
Gergő Jedlicska
0ac118e05c
(refactor) server for less app-root-path
2022-05-03 13:10:00 +02:00
Cristian Balas
5a0632b7a3
auth fixes, k8s fixes ( #696 )
2022-04-13 17:11:11 +03:00
Fabians
4699e6794c
reformatting again for 88 width
2022-04-04 19:21:28 +03:00
Fabians
1c7436e7ff
extra prefer-const & object-shorthand
2022-04-04 19:00:24 +03:00
Gergő Jedlicska
d53df11f77
style(server): fix all eslint errors and break the tests
2022-03-31 14:18:44 +02:00
Gergő Jedlicska
569b4688fa
style(all): reformat with print width 88
2022-03-29 19:46:49 +02:00
Fabians
aa5e94d640
chore: reformatting everything with prettier
2022-03-29 17:12:31 +03:00
Gergő Jedlicska
68a4a95d90
refactor(server): rework test hooks
...
drop db migration before and after hooks, add helpers and root hooks
fix #531
2022-02-05 15:05:17 +01:00
Gergő Jedlicska
2dc184a070
test(server): update tests for email verification
2022-01-20 17:52:53 +01:00
luz paz
ad97cdf444
Fix various typos
...
Found via `codespell -q 3 -L optio,promisses,usera`
2021-07-22 09:23:21 -04:00
Dimitrie Stefanescu
75d2924de5
feat(server): starts work on #62
...
scaffolds basic server invite logic
2021-03-14 11:40:42 +00:00
Dimitrie Stefanescu
7d055859f4
fix(server): correctly concats pwd reset url & adds notrack attr on reset link
2021-03-09 09:20:01 +00:00
Dimitrie Stefanescu
e1f09e7796
fix(server): removes empty file from invites
2021-03-07 13:16:49 +00:00
Dimitrie Stefanescu
18c94613c5
feat(server): emails now use env vars to create transport
...
if not provided, the module will log an error. in testing env, uses a temp etherealmail account &
logs message urls.
2021-03-07 13:08:42 +00:00
Dimitrie Stefanescu
b88d794d39
test(server): adds missing tests
...
user pwd change service, and basic checks on pwd reset tokens
2021-03-06 17:42:12 +00:00
Dimitrie Stefanescu
8dcc203175
feat(server): finalised pwd resets
2021-03-06 11:08:13 +00:00
Dimitrie Stefanescu
a47874f8c0
feat(server): pwd resets ✅
...
users can now reset passwords. still todo: integration with .env vars for email provider & tests
2021-03-05 08:22:19 +00:00