Moleculer v0.14.5 Release Notes

Release Date: 2020-03-25 // about 4 years ago
  • Wrapping service methods with middlewares

    ๐Ÿ†• New localMethod hook in middlewares which wraps the service methods.

    Example

    // my.middleware.js
    module.exports = {
        name: "MyMiddleware",
    
        localMethod(next, method) {
            return (...args) => {
                console.log(`The '${method.name}' method is called in '${method.service.fullName}' service.`, args);
                return handler(...args);
            }
        }
    }
    

    Schema for service methods

    Similar for action schema, you can define service methods with schema. It can be useful when middleware wraps service methods.

    Example for new method schema

    // posts.service.js
    module.exports = {
        name: "posts",
    
        methods: {
            list: {
                async handler(count) {
                    // Do something
                    return posts;
                }
            }
        }
    };
    

    ๐Ÿ”„ Changes

    • โž• add chunk limit for streams in message transporting. #683
    • โž• add baseUrl option to Datadog metric reporter. #694
    • ๐Ÿ›  fix open handles in unit tests. #695
    • โšก๏ธ update d.ts #699 #700 #703