@platformatic/runtime 1.42.0 → 1.44.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,7 +4,9 @@
4
4
  "openapi": true
5
5
  },
6
6
  "plugins": {
7
- "paths": ["plugin.js"]
7
+ "paths": [
8
+ "plugin.js"
9
+ ]
8
10
  },
9
11
  "watch": true
10
12
  }
@@ -0,0 +1,4 @@
1
+ CREATE TABLE IF NOT EXISTS movies (
2
+ id INTEGER PRIMARY KEY,
3
+ title TEXT NOT NULL
4
+ );
@@ -0,0 +1,5 @@
1
+ {
2
+ "name": "@myscope/myname",
3
+ "version": "0.0.1",
4
+ "description": "test package.json"
5
+ }
@@ -0,0 +1,29 @@
1
+ {
2
+ "$schema": "https://platformatic.dev/schemas/v0.22.0/db",
3
+ "server": {
4
+ "hostname": "127.0.0.1",
5
+ "port": 0
6
+ },
7
+ "migrations": {
8
+ "dir": "migrations",
9
+ "table": "versions",
10
+ "autoApply": true
11
+ },
12
+ "types": {
13
+ "autogenerate": false
14
+ },
15
+ "db": {
16
+ "connectionString": "sqlite://db.sqlite",
17
+ "graphql": true,
18
+ "ignore": {
19
+ "versions": true
20
+ },
21
+ "events": false
22
+ },
23
+ "plugins": {
24
+ "paths": [
25
+ "plugin.js"
26
+ ]
27
+ },
28
+ "watch": false
29
+ }
@@ -0,0 +1,12 @@
1
+ 'use strict'
2
+
3
+ /** @param {import('fastify').FastifyInstance} app */
4
+ module.exports = async function (app) {
5
+ app.get('/async_crash', async () => {
6
+ setImmediate(() => {
7
+ throw new Error('boom')
8
+ })
9
+
10
+ return 'ok'
11
+ })
12
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "$schema": "https://platformatic.dev/schemas/v1.20.0/runtime",
3
+ "entrypoint": "a",
4
+ "preload": "preload.js",
5
+ "autoload": {
6
+ "path": "./services"
7
+ },
8
+ "server": {
9
+ "hostname": "127.0.0.1",
10
+ "port": "{{PORT}}",
11
+ "logger": {
12
+ "level": "info"
13
+ }
14
+ }
15
+ }
@@ -0,0 +1 @@
1
+ globalThis.value = 42
@@ -0,0 +1,14 @@
1
+ {
2
+ "$schema": "https://platformatic.dev/schemas/v1.3.0/service",
3
+ "server": {
4
+ "logger": {
5
+ "level": "warn"
6
+ }
7
+ },
8
+ "plugins": {
9
+ "paths": [{
10
+ "path": "plugin.js",
11
+ "encapsulate": false
12
+ }]
13
+ }
14
+ }
@@ -0,0 +1,7 @@
1
+ 'use strict'
2
+
3
+ module.exports = async function (fastify, options) {
4
+ fastify.get('/hello', async (_, reply) => {
5
+ return { value: globalThis.value }
6
+ })
7
+ }
@@ -59,6 +59,18 @@ async function managementApiPlugin (app, opts) {
59
59
  return runtime.getServiceConfig(id)
60
60
  })
61
61
 
62
+ app.get('/services/:id/openapi-schema', async (request) => {
63
+ const { id } = request.params
64
+ app.log.debug('get openapi-schema', { id })
65
+ return runtime.getServiceOpenapiSchema(id)
66
+ })
67
+
68
+ app.get('/services/:id/graphql-schema', async (request) => {
69
+ const { id } = request.params
70
+ app.log.debug('get graphql-schema', { id })
71
+ return runtime.getServiceGraphqlSchema(id)
72
+ })
73
+
62
74
  app.post('/services/:id/start', async (request) => {
63
75
  const { id } = request.params
64
76
  app.log.debug('start service', { id })
package/lib/schema.js CHANGED
@@ -13,6 +13,10 @@ const platformaticRuntimeSchema = {
13
13
  $schema: {
14
14
  type: 'string'
15
15
  },
16
+ preload: {
17
+ type: 'string',
18
+ resolvePath: true
19
+ },
16
20
  autoload: {
17
21
  type: 'object',
18
22
  additionalProperties: false,
package/lib/worker.js CHANGED
@@ -4,6 +4,7 @@ const inspector = require('node:inspector')
4
4
  const { register, createRequire } = require('node:module')
5
5
  const { isatty } = require('node:tty')
6
6
  const { join } = require('node:path')
7
+ const { pathToFileURL } = require('node:url')
7
8
  const {
8
9
  MessageChannel,
9
10
  parentPort,
@@ -120,6 +121,10 @@ process.on('unhandledRejection', (err) => {
120
121
  })
121
122
 
122
123
  async function main () {
124
+ if (config.preload) {
125
+ await import(pathToFileURL(config.preload))
126
+ }
127
+
123
128
  const { inspectorOptions } = workerData.config
124
129
 
125
130
  if (inspectorOptions) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@platformatic/runtime",
3
- "version": "1.42.0",
3
+ "version": "1.44.0",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "bin": {
@@ -34,8 +34,8 @@
34
34
  "typescript": "^5.4.2",
35
35
  "undici-oidc-interceptor": "^0.5.0",
36
36
  "why-is-node-running": "^2.2.2",
37
- "@platformatic/sql-graphql": "1.42.0",
38
- "@platformatic/sql-mapper": "1.42.0"
37
+ "@platformatic/sql-graphql": "1.44.0",
38
+ "@platformatic/sql-mapper": "1.44.0"
39
39
  },
40
40
  "dependencies": {
41
41
  "@fastify/error": "^3.4.1",
@@ -63,13 +63,13 @@
63
63
  "undici": "^6.9.0",
64
64
  "why-is-node-running": "^2.2.2",
65
65
  "ws": "^8.16.0",
66
- "@platformatic/composer": "1.42.0",
67
- "@platformatic/db": "1.42.0",
68
- "@platformatic/config": "1.42.0",
69
- "@platformatic/service": "1.42.0",
70
- "@platformatic/generators": "1.42.0",
71
- "@platformatic/telemetry": "1.42.0",
72
- "@platformatic/utils": "1.42.0"
66
+ "@platformatic/composer": "1.44.0",
67
+ "@platformatic/config": "1.44.0",
68
+ "@platformatic/db": "1.44.0",
69
+ "@platformatic/generators": "1.44.0",
70
+ "@platformatic/service": "1.44.0",
71
+ "@platformatic/telemetry": "1.44.0",
72
+ "@platformatic/utils": "1.44.0"
73
73
  },
74
74
  "standard": {
75
75
  "ignore": [