From issues-return-88837-archive-asf-public=cust-asf.ponee.io@nifi.apache.org Thu Dec 5 16:26:05 2019 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [207.244.88.153]) by mx-eu-01.ponee.io (Postfix) with SMTP id 49E63180643 for ; Thu, 5 Dec 2019 17:26:05 +0100 (CET) Received: (qmail 29300 invoked by uid 500); 5 Dec 2019 16:26:04 -0000 Mailing-List: contact issues-help@nifi.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@nifi.apache.org Delivered-To: mailing list issues@nifi.apache.org Received: (qmail 29290 invoked by uid 99); 5 Dec 2019 16:26:04 -0000 Received: from ec2-52-202-80-70.compute-1.amazonaws.com (HELO gitbox.apache.org) (52.202.80.70) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 05 Dec 2019 16:26:04 +0000 From: GitBox To: issues@nifi.apache.org Subject: [GitHub] [nifi-minifi-cpp] arpadboda commented on issue #690: MINIFICPP-1026 - Added base64 encoder-decoder to StringUtils Message-ID: <157556316441.1610.10691636321372266852.gitbox@gitbox.apache.org> Date: Thu, 05 Dec 2019 16:26:04 -0000 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit arpadboda commented on issue #690: MINIFICPP-1026 - Added base64 encoder-decoder to StringUtils URL: https://github.com/apache/nifi-minifi-cpp/pull/690#issuecomment-562204471 > > ``` > > * keep in mind that even if we used some base64 implementation from a third party we would still need > > > > * all the StringUtils functions that wrap it, except the encoding/decoding function > > * all the tests > > ``` > > This is debatable but a tested third party impl if one exists can be trusted. This is a lot of code with the potential for bugs. In your case you've written a lot of code, so I don't want to demean it but the code for an external third party with StringUtils seems much less risky with much lower tests -- unless we simply can't find a third party impl. What you say about cURL is a valid point. Did you attempt to find a third party example? If not I can take a look -- there may be other string related libraries that provide this and some of what we do with StringUtils.. Partly agree, partly disagree. For eg. boost does a lot of thing. But it is a huge dependency, heavily increases build time, etc. For most of the 3rd parties, in case we don't want to flood our own repo, we need to maintain cmake files, sometimes update dependencies, maybe edit bootstrap. These are also costs and they apply time to time when something needs to be updated. There are cases when these costs are definitely justified by the functionality the library introduces (just as opencv, curl, kafka, mqtt, etc...), but in case of some quite simple string util functionality the longer terms costs of having the dependency might show exceed the costs of doing it right, once. ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: users@infra.apache.org With regards, Apache Git Services