redis-smq 7.0.0-rc.8 → 7.0.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## 7.0.0 (2022-06-18)
4
+
5
+ * Fix typing issue (cd8bf6a)
6
+ * Bump up redis-smq-common to v1.0.0 (02c353d)
7
+ * Update callback vs promise vs async/await benchmarks (6fca49c)
8
+ * Update README.md (7fbdcbf)
9
+
3
10
  ## 7.0.0-rc.8 (2022-06-09)
4
11
 
5
12
  * Update docs (96a45e7)
package/README.md CHANGED
@@ -19,9 +19,9 @@ RedisSMQ is a Node.js library for queuing messages (aka jobs) and processing the
19
19
 
20
20
  ## Features
21
21
 
22
- * **[High-performance message processing](/docs/performance.md)**
23
- * **[Multi-Queue Producers](#producer-class) & [Multi-Queue Consumers](#consumer-class)**: Offering very flexible models which make RedisSMQ an ideal message broker for your microservices.
24
- * **[Supporting both at-least-once/at-most-once delivery](/docs/api/message.md#messageprototypesetretrythreshold)**: In case of failures, while delivering or processing a message, RedisSMQ can guaranty that the message will be not lost and redelivered again. When configured to do so, RedisSMQ can also ensure that the message is delivered at-most-once.
22
+ * **[High-performance message processing](/docs/performance.md)**.
23
+ * **[Multi-Queue Producers](#producer-class) & [Multi-Queue Consumers](#consumer-class)**: Offering flexible Producer/Consumer models, with focus on simplicity and without tons of features. This can make RedisSMQ an ideal message broker for your microservices.
24
+ * **[Supports both at-least-once/at-most-once delivery](/docs/api/message.md#messageprototypesetretrythreshold)**: In case of failures, while delivering or processing a message, RedisSMQ can guaranty that the message will be not lost and redelivered again. When configured to do so, RedisSMQ can also ensure that the message is delivered at-most-once.
25
25
  * **[Message Expiration](/docs/api/message.md#messageprototypesetttl)**: A message will not be delivered if it has been in a queue for longer than a given amount of time, called TTL (time-to-live).
26
26
  * **[Message Consumption Timeout](/docs/api/message.md#messageprototypesetconsumetimeout)**: Timeout for consuming messages.
27
27
  * **[Queue Rate Limiting](/docs/queue-rate-limiting.md)**: Allowing you to control the rate at which the messages are consumed from a given queue.
@@ -30,11 +30,10 @@ RedisSMQ is a Node.js library for queuing messages (aka jobs) and processing the
30
30
  * **[Multiplexing](/docs/multiplexing.md)**: A feature which allows message handlers to use a single redis connection to dequeue and consume messages.
31
31
  * **[HTTP API](https://github.com/weyoss/redis-smq-monitor)**: an HTTP interface is provided to interact with the MQ.
32
32
  * **[Web UI](https://github.com/weyoss/redis-smq-monitor-client)**: RedisSMQ can be managed also from your web browser.
33
- * **[Logging](https://github.com/weyoss/redis-smq-common/blob/master/docs/logs.md)**: Comes with a built-in JSON logger. But you can also use your own logger instance.
33
+ * **[Logging](https://github.com/weyoss/redis-smq-common/blob/master/docs/logs.md)**: RedisSMQ comes with a built-in JSON logger, but can also use your application logger.
34
34
  * **[Configurable](/docs/configuration.md)**: Many options and features can be configured.
35
- * **Both redis & ioredis clients are supported**: RedisSMQ can be configured to use either `redis` or `ioredis` to connect to Redis server.
36
- * **Rigorously tested**: With 100+ tests and code coverage no less than 80%.
37
- * **Highly optimized**: Strongly-typed and implemented using pure callbacks, with small memory footprint and no memory leaks. See [callbacks vs promises vs async/await benchmarks](http://bluebirdjs.com/docs/benchmarks.html).
35
+ * **[Supports Multiple Redis clients](/docs/configuration.md)**: Depending on your preferences, RedisSMQ can use either [node-redis v3](https://github.com/redis/node-redis/tree/v3.1.2), [node-redis v4](https://github.com/redis/node-redis), or [ioredis](https://github.com/luin/ioredis).
36
+ * **[Highly optimized](https://lgtm.com/projects/g/weyoss/redis-smq/context:javascript)**: Strongly-typed and implemented using pure callbacks, with small memory footprint and no memory leaks. See [Callback vs Promise vs Async/Await benchmarks](https://gist.github.com/weyoss/24f9ecbda175d943a48cb7ec38bde821).
38
37
 
39
38
 
40
39
  ### RedisSMQ Use Case: Multi-Queue Producers & Multi-Queue Consumers
@@ -13,7 +13,7 @@ export declare class DequeueMessage {
13
13
  protected messageHandler: MessageHandler;
14
14
  protected priorityQueuing: boolean;
15
15
  constructor(messageHandler: MessageHandler, redisClient: RedisClient);
16
- protected dequeueMessageWithPriority(cb: ICallback<string>): void;
16
+ protected dequeueMessageWithPriority(cb: ICallback<string | null>): void;
17
17
  protected waitForMessage(cb: ICallback<string | null>): void;
18
18
  protected dequeueMessage(cb: ICallback<string | null>): void;
19
19
  dequeue(): void;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "redis-smq",
3
- "version": "7.0.0-rc.8",
3
+ "version": "7.0.0",
4
4
  "description": "A simple high-performance Redis message queue for Node.js.",
5
5
  "author": "Weyoss <weyoss@protonmail.com>",
6
6
  "license": "MIT",
@@ -36,7 +36,7 @@
36
36
  "bluebird": "3.7.2",
37
37
  "cron-parser": "3.5.0",
38
38
  "lodash": "4.17.21",
39
- "redis-smq-common": "1.0.0-rc.11",
39
+ "redis-smq-common": "1.0.0",
40
40
  "uuid": "8.3.2"
41
41
  },
42
42
  "devDependencies": {