From c5942928b14438ef50dcdc55d4a41df9de3f8954 Mon Sep 17 00:00:00 2001 From: zhi-ching Date: Thu, 22 Feb 2024 08:58:35 +0800 Subject: [PATCH] - add some best-practices --- best-practices.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/best-practices.md b/best-practices.md index 2dbd6d5..c36095d 100644 --- a/best-practices.md +++ b/best-practices.md @@ -2,9 +2,15 @@ ## Best practices +### SDK API version +Always use the latest SDK API version as it contains the up-to-date feature and security patches. Kindly note that all the SDK version is backward compatible. + ### One custom step per jar It is recommended that you bundle one custom step per JAR. This will simplify the process of updating or removing a single custom step. And it will also promote security by isolation. A problematic custom step can be easily detected and isolated without affecting after custom step. +### Keep custom step or parser jar size minimal +Package the custom step/parser jar as small as possible (ie 10MB). + ### Fat jar Bundle the custom step in a fat jar where all dependencies are bundled into a single jar. This allow custom step to use specific version of libraries without affecting other custom step. For more details, [read this](README.md#class-isolation). @@ -59,6 +65,9 @@ public StepProcessor createProcessor(final StepProcessorBuilder processorBuilder } ``` +### Semantic version +Remember to change the semantic version in `createMetadata` method provided by SDK API and jar package version after making changes to your custom step, parser, or file generator. + ## Limitation ### Both custom chooser and column chooser cannot be reset Once the value for the custom chooser or column chooser is selected, it cannot be reset to its initial state anymore. For example, once hash tag is selected for the prefix custom chooser, prefix custom chooser cannot be reset to display "Select a value".