@devbro/pashmak 0.1.23 → 0.1.25

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.
@@ -456,7 +456,7 @@ var Router = class {
456
456
  // src/facades.mts
457
457
  var import_neko_scheduler = require("@devbro/neko-scheduler");
458
458
  var import_neko_helper2 = require("@devbro/neko-helper");
459
- var import_neko_context2 = require("@devbro/neko-context");
459
+ var import_neko_context3 = require("@devbro/neko-context");
460
460
  var import_neko_storage2 = require("@devbro/neko-storage");
461
461
  var import_neko_mailer2 = require("@devbro/neko-mailer");
462
462
  var import_neko_config = require("@devbro/neko-config");
@@ -481,6 +481,7 @@ __export(queue_exports, {
481
481
  });
482
482
  __reExport(queue_exports, require("@devbro/neko-queue"));
483
483
  var import_neko_helper = require("@devbro/neko-helper");
484
+ var import_neko_context2 = require("@devbro/neko-context");
484
485
  var DatabaseTransport = class {
485
486
  static {
486
487
  __name(this, "DatabaseTransport");
@@ -497,37 +498,37 @@ var DatabaseTransport = class {
497
498
  messageQueues = [];
498
499
  repeater;
499
500
  processMessage = /* @__PURE__ */ __name(async () => {
500
- const conn = db(this.config.db_connection);
501
- try {
502
- await conn.connect();
503
- let q = conn.getQuery();
504
- let messages = await q.table(this.config.queue_table).whereOp("channel", "in", Array.from(this.channels.keys())).whereOp("status", "in", ["pending", "failed"]).limit(this.config.message_limit).orderBy("last_tried_at", "asc").get();
505
- for (let msg of messages) {
506
- try {
507
- let callback = this.channels.get(msg.channel);
508
- await callback(msg.message);
509
- await q.table(this.config.queue_table).whereOp("id", "=", msg.id).update({
510
- status: "processed",
511
- updated_at: /* @__PURE__ */ new Date(),
512
- last_tried_at: /* @__PURE__ */ new Date(),
513
- retried_count: (msg.retried_count || 0) + 1
514
- });
515
- } catch (error) {
516
- await q.table(this.config.queue_table).whereOp("id", "=", msg.id).update({
517
- status: "failed",
518
- last_tried_at: /* @__PURE__ */ new Date(),
519
- retried_count: (msg.retried_count || 0) + 1,
520
- process_message: error.message || "Error processing message"
521
- });
501
+ await import_neko_context2.context_provider.run(async () => {
502
+ const conn = db(this.config.db_connection);
503
+ try {
504
+ await conn.connect();
505
+ let q = conn.getQuery();
506
+ let messages = await q.table(this.config.queue_table).whereOp("channel", "in", Array.from(this.channels.keys())).whereOp("status", "in", ["pending", "failed"]).limit(this.config.message_limit).orderBy("last_tried_at", "asc").get();
507
+ for (let msg of messages) {
508
+ try {
509
+ let callback = this.channels.get(msg.channel);
510
+ await callback(msg.message);
511
+ await q.table(this.config.queue_table).whereOp("id", "=", msg.id).update({
512
+ status: "processed",
513
+ updated_at: /* @__PURE__ */ new Date(),
514
+ last_tried_at: /* @__PURE__ */ new Date(),
515
+ retried_count: (msg.retried_count || 0) + 1
516
+ });
517
+ } catch (error) {
518
+ await q.table(this.config.queue_table).whereOp("id", "=", msg.id).update({
519
+ status: "failed",
520
+ last_tried_at: /* @__PURE__ */ new Date(),
521
+ retried_count: (msg.retried_count || 0) + 1,
522
+ process_message: error.message || "Error processing message"
523
+ });
524
+ }
522
525
  }
526
+ } catch (error) {
527
+ logger().error("Error in DatabaseTransport listen interval:", {
528
+ error
529
+ });
523
530
  }
524
- } catch (error) {
525
- logger().error("Error in DatabaseTransport listen interval:", {
526
- error
527
- });
528
- } finally {
529
- await conn.disconnect();
530
- }
531
+ });
531
532
  }, "processMessage");
532
533
  constructor(config2 = {}) {
533
534
  this.config = { ...this.config, ...config2 };
@@ -651,7 +652,7 @@ var scheduler = (0, import_neko_helper2.createSingleton)(() => {
651
652
  });
652
653
  return rc;
653
654
  });
654
- var db = /* @__PURE__ */ __name((label = "default") => (0, import_neko_context2.ctx)().getOrThrow(["database", label]), "db");
655
+ var db = /* @__PURE__ */ __name((label = "default") => (0, import_neko_context3.ctx)().getOrThrow(["database", label]), "db");
655
656
  var storage = (0, import_neko_helper2.createSingleton)((label = "default") => {
656
657
  let storage_config = import_neko_config.config.get(["storages", label].join("."));
657
658
  const provider = import_neko_storage2.StorageProviderFactory.create(
@@ -707,7 +708,7 @@ var logger = (0, import_neko_helper2.createSingleton)((label) => {
707
708
  const logger_config = import_neko_config.config.get(["loggers", label].join("."));
708
709
  const rc = new import_neko_logger.Logger(logger_config);
709
710
  rc.setExtrasFunction((message) => {
710
- message.requestId = (0, import_neko_context2.ctxSafe)()?.get("requestId") || "N/A";
711
+ message.requestId = (0, import_neko_context3.ctxSafe)()?.get("requestId") || "N/A";
711
712
  return message;
712
713
  });
713
714
  return rc;
@@ -648,6 +648,7 @@ var cache = (0, import_neko_helper.createSingleton)((label) => {
648
648
 
649
649
  // src/queue.mts
650
650
  var import_neko_helper2 = require("@devbro/neko-helper");
651
+ var import_neko_context3 = require("@devbro/neko-context");
651
652
  var DatabaseTransport = class {
652
653
  static {
653
654
  __name(this, "DatabaseTransport");
@@ -664,37 +665,37 @@ var DatabaseTransport = class {
664
665
  messageQueues = [];
665
666
  repeater;
666
667
  processMessage = /* @__PURE__ */ __name(async () => {
667
- const conn = db(this.config.db_connection);
668
- try {
669
- await conn.connect();
670
- let q = conn.getQuery();
671
- let messages = await q.table(this.config.queue_table).whereOp("channel", "in", Array.from(this.channels.keys())).whereOp("status", "in", ["pending", "failed"]).limit(this.config.message_limit).orderBy("last_tried_at", "asc").get();
672
- for (let msg of messages) {
673
- try {
674
- let callback = this.channels.get(msg.channel);
675
- await callback(msg.message);
676
- await q.table(this.config.queue_table).whereOp("id", "=", msg.id).update({
677
- status: "processed",
678
- updated_at: /* @__PURE__ */ new Date(),
679
- last_tried_at: /* @__PURE__ */ new Date(),
680
- retried_count: (msg.retried_count || 0) + 1
681
- });
682
- } catch (error) {
683
- await q.table(this.config.queue_table).whereOp("id", "=", msg.id).update({
684
- status: "failed",
685
- last_tried_at: /* @__PURE__ */ new Date(),
686
- retried_count: (msg.retried_count || 0) + 1,
687
- process_message: error.message || "Error processing message"
688
- });
668
+ await import_neko_context3.context_provider.run(async () => {
669
+ const conn = db(this.config.db_connection);
670
+ try {
671
+ await conn.connect();
672
+ let q = conn.getQuery();
673
+ let messages = await q.table(this.config.queue_table).whereOp("channel", "in", Array.from(this.channels.keys())).whereOp("status", "in", ["pending", "failed"]).limit(this.config.message_limit).orderBy("last_tried_at", "asc").get();
674
+ for (let msg of messages) {
675
+ try {
676
+ let callback = this.channels.get(msg.channel);
677
+ await callback(msg.message);
678
+ await q.table(this.config.queue_table).whereOp("id", "=", msg.id).update({
679
+ status: "processed",
680
+ updated_at: /* @__PURE__ */ new Date(),
681
+ last_tried_at: /* @__PURE__ */ new Date(),
682
+ retried_count: (msg.retried_count || 0) + 1
683
+ });
684
+ } catch (error) {
685
+ await q.table(this.config.queue_table).whereOp("id", "=", msg.id).update({
686
+ status: "failed",
687
+ last_tried_at: /* @__PURE__ */ new Date(),
688
+ retried_count: (msg.retried_count || 0) + 1,
689
+ process_message: error.message || "Error processing message"
690
+ });
691
+ }
689
692
  }
693
+ } catch (error) {
694
+ logger().error("Error in DatabaseTransport listen interval:", {
695
+ error
696
+ });
690
697
  }
691
- } catch (error) {
692
- logger().error("Error in DatabaseTransport listen interval:", {
693
- error
694
- });
695
- } finally {
696
- await conn.disconnect();
697
- }
698
+ });
698
699
  }, "processMessage");
699
700
  constructor(config2 = {}) {
700
701
  this.config = { ...this.config, ...config2 };
package/dist/queue.mjs CHANGED
@@ -3,6 +3,7 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
3
3
  export * from "@devbro/neko-queue";
4
4
  import { db, logger } from "./facades.mjs";
5
5
  import { createRepeater } from "@devbro/neko-helper";
6
+ import { context_provider } from "@devbro/neko-context";
6
7
  class DatabaseTransport {
7
8
  static {
8
9
  __name(this, "DatabaseTransport");
@@ -19,37 +20,37 @@ class DatabaseTransport {
19
20
  messageQueues = [];
20
21
  repeater;
21
22
  processMessage = /* @__PURE__ */ __name(async () => {
22
- const conn = db(this.config.db_connection);
23
- try {
24
- await conn.connect();
25
- let q = conn.getQuery();
26
- let messages = await q.table(this.config.queue_table).whereOp("channel", "in", Array.from(this.channels.keys())).whereOp("status", "in", ["pending", "failed"]).limit(this.config.message_limit).orderBy("last_tried_at", "asc").get();
27
- for (let msg of messages) {
28
- try {
29
- let callback = this.channels.get(msg.channel);
30
- await callback(msg.message);
31
- await q.table(this.config.queue_table).whereOp("id", "=", msg.id).update({
32
- status: "processed",
33
- updated_at: /* @__PURE__ */ new Date(),
34
- last_tried_at: /* @__PURE__ */ new Date(),
35
- retried_count: (msg.retried_count || 0) + 1
36
- });
37
- } catch (error) {
38
- await q.table(this.config.queue_table).whereOp("id", "=", msg.id).update({
39
- status: "failed",
40
- last_tried_at: /* @__PURE__ */ new Date(),
41
- retried_count: (msg.retried_count || 0) + 1,
42
- process_message: error.message || "Error processing message"
43
- });
23
+ await context_provider.run(async () => {
24
+ const conn = db(this.config.db_connection);
25
+ try {
26
+ await conn.connect();
27
+ let q = conn.getQuery();
28
+ let messages = await q.table(this.config.queue_table).whereOp("channel", "in", Array.from(this.channels.keys())).whereOp("status", "in", ["pending", "failed"]).limit(this.config.message_limit).orderBy("last_tried_at", "asc").get();
29
+ for (let msg of messages) {
30
+ try {
31
+ let callback = this.channels.get(msg.channel);
32
+ await callback(msg.message);
33
+ await q.table(this.config.queue_table).whereOp("id", "=", msg.id).update({
34
+ status: "processed",
35
+ updated_at: /* @__PURE__ */ new Date(),
36
+ last_tried_at: /* @__PURE__ */ new Date(),
37
+ retried_count: (msg.retried_count || 0) + 1
38
+ });
39
+ } catch (error) {
40
+ await q.table(this.config.queue_table).whereOp("id", "=", msg.id).update({
41
+ status: "failed",
42
+ last_tried_at: /* @__PURE__ */ new Date(),
43
+ retried_count: (msg.retried_count || 0) + 1,
44
+ process_message: error.message || "Error processing message"
45
+ });
46
+ }
44
47
  }
48
+ } catch (error) {
49
+ logger().error("Error in DatabaseTransport listen interval:", {
50
+ error
51
+ });
45
52
  }
46
- } catch (error) {
47
- logger().error("Error in DatabaseTransport listen interval:", {
48
- error
49
- });
50
- } finally {
51
- await conn.disconnect();
52
- }
53
+ });
53
54
  }, "processMessage");
54
55
  constructor(config = {}) {
55
56
  this.config = { ...this.config, ...config };
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/queue.mts"],"sourcesContent":["export * from \"@devbro/neko-queue\";\nimport { QueueTransportInterface } from \"@devbro/neko-queue\";\nimport { Query } from \"@devbro/neko-sql\";\nimport { db, logger } from \"./facades.mjs\";\nimport { createRepeater } from \"@devbro/neko-helper\";\n\ntype DatabaseTransportConfig = {\n queue_table: string;\n db_connection: string;\n listen_interval: number;\n message_limit: number;\n};\n\nexport class DatabaseTransport implements QueueTransportInterface {\n private config: DatabaseTransportConfig = {\n queue_table: \"queue_messages\",\n db_connection: \"default\",\n listen_interval: 60, // seconds\n message_limit: 10, // messages per each fetch\n };\n channels = new Map<string, (message: string) => Promise<void>>();\n messageQueues: { channel: string; message: string }[] = [];\n repeater: ReturnType<typeof createRepeater>;\n\n processMessage = async () => {\n const conn = db(this.config.db_connection);\n try {\n await conn.connect();\n let q: Query = conn.getQuery();\n let messages = await q\n .table(this.config.queue_table)\n .whereOp(\"channel\", \"in\", Array.from(this.channels.keys()))\n .whereOp(\"status\", \"in\", [\"pending\", \"failed\"])\n .limit(this.config.message_limit)\n .orderBy(\"last_tried_at\", \"asc\")\n .get();\n for (let msg of messages) {\n try {\n let callback = this.channels.get(msg.channel)!;\n await callback(msg.message);\n // mark message as processed\n await q\n .table(this.config.queue_table)\n .whereOp(\"id\", \"=\", msg.id)\n .update({\n status: \"processed\",\n updated_at: new Date(),\n last_tried_at: new Date(),\n retried_count: (msg.retried_count || 0) + 1,\n });\n } catch (error) {\n await q\n .table(this.config.queue_table)\n .whereOp(\"id\", \"=\", msg.id)\n .update({\n status: \"failed\",\n last_tried_at: new Date(),\n retried_count: (msg.retried_count || 0) + 1,\n process_message:\n (error as Error).message || \"Error processing message\",\n });\n }\n }\n } catch (error) {\n logger().error(\"Error in DatabaseTransport listen interval:\", {\n error,\n });\n } finally {\n await conn.disconnect();\n }\n };\n\n constructor(config: Partial<DatabaseTransportConfig> = {}) {\n this.config = { ...this.config, ...config };\n this.repeater = createRepeater(\n this.processMessage,\n this.config.listen_interval * 1000,\n );\n }\n\n async dispatch(channel: string, message: string): Promise<void> {\n const conn = db(this.config.db_connection);\n try {\n await conn.connect();\n let schema = conn.getSchema();\n if ((await schema.tableExists(this.config.queue_table)) === false) {\n return;\n }\n let q: Query = conn.getQuery();\n await q.table(this.config.queue_table).insert({\n channel: channel,\n message: message,\n processed: false,\n created_at: new Date(),\n updated_at: new Date(),\n last_tried_at: null,\n process_message: \"\",\n retried_count: 0,\n status: \"pending\",\n });\n } finally {\n await conn.disconnect();\n }\n }\n\n async registerListener(\n channel: string,\n callback: (message: string) => Promise<void>,\n ): Promise<void> {\n this.channels.set(channel, callback);\n }\n\n async startListening(): Promise<void> {\n this.repeater.start();\n }\n\n async stopListening(): Promise<void> {\n this.repeater.stop();\n }\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/queue.mts"],"sourcesContent":["export * from \"@devbro/neko-queue\";\nimport { QueueTransportInterface } from \"@devbro/neko-queue\";\nimport { Query } from \"@devbro/neko-sql\";\nimport { db, logger } from \"./facades.mjs\";\nimport { createRepeater } from \"@devbro/neko-helper\";\nimport { context_provider } from \"@devbro/neko-context\";\n\ntype DatabaseTransportConfig = {\n queue_table: string;\n db_connection: string;\n listen_interval: number;\n message_limit: number;\n};\n\nexport class DatabaseTransport implements QueueTransportInterface {\n private config: DatabaseTransportConfig = {\n queue_table: \"queue_messages\",\n db_connection: \"default\",\n listen_interval: 60, // seconds\n message_limit: 10, // messages per each fetch\n };\n channels = new Map<string, (message: string) => Promise<void>>();\n messageQueues: { channel: string; message: string }[] = [];\n repeater: ReturnType<typeof createRepeater>;\n\n processMessage = async () => {\n await context_provider.run(async () => {\n const conn = db(this.config.db_connection);\n try {\n await conn.connect();\n let q: Query = conn.getQuery();\n let messages = await q\n .table(this.config.queue_table)\n .whereOp(\"channel\", \"in\", Array.from(this.channels.keys()))\n .whereOp(\"status\", \"in\", [\"pending\", \"failed\"])\n .limit(this.config.message_limit)\n .orderBy(\"last_tried_at\", \"asc\")\n .get();\n for (let msg of messages) {\n try {\n let callback = this.channels.get(msg.channel)!;\n await callback(msg.message);\n // mark message as processed\n await q\n .table(this.config.queue_table)\n .whereOp(\"id\", \"=\", msg.id)\n .update({\n status: \"processed\",\n updated_at: new Date(),\n last_tried_at: new Date(),\n retried_count: (msg.retried_count || 0) + 1,\n });\n } catch (error) {\n await q\n .table(this.config.queue_table)\n .whereOp(\"id\", \"=\", msg.id)\n .update({\n status: \"failed\",\n last_tried_at: new Date(),\n retried_count: (msg.retried_count || 0) + 1,\n process_message:\n (error as Error).message || \"Error processing message\",\n });\n }\n }\n } catch (error) {\n logger().error(\"Error in DatabaseTransport listen interval:\", {\n error,\n });\n }\n });\n };\n\n constructor(config: Partial<DatabaseTransportConfig> = {}) {\n this.config = { ...this.config, ...config };\n this.repeater = createRepeater(\n this.processMessage,\n this.config.listen_interval * 1000,\n );\n }\n\n async dispatch(channel: string, message: string): Promise<void> {\n const conn = db(this.config.db_connection);\n try {\n await conn.connect();\n let schema = conn.getSchema();\n if ((await schema.tableExists(this.config.queue_table)) === false) {\n return;\n }\n let q: Query = conn.getQuery();\n await q.table(this.config.queue_table).insert({\n channel: channel,\n message: message,\n processed: false,\n created_at: new Date(),\n updated_at: new Date(),\n last_tried_at: null,\n process_message: \"\",\n retried_count: 0,\n status: \"pending\",\n });\n } finally {\n await conn.disconnect();\n }\n }\n\n async registerListener(\n channel: string,\n callback: (message: string) => Promise<void>,\n ): Promise<void> {\n this.channels.set(channel, callback);\n }\n\n async startListening(): Promise<void> {\n this.repeater.start();\n }\n\n async stopListening(): Promise<void> {\n this.repeater.stop();\n }\n}\n"],"mappings":"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","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@devbro/pashmak",
3
- "version": "0.1.23",
3
+ "version": "0.1.25",
4
4
  "description": "testing application for the entire repo",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",