- 236 - Fix compilation problem on ESP32 Core 3.0.0
- 210 - Allow setting of options without previously set connection params
- 211 - Fixed ESP32 builds using unofficial Arduino Cores
- 202 - Added option to specify timestamp precision and do not send timestamp. Set using
WriteOption::useServerTimestamptrue)
.
- 200 - Backward compatible compilation. Solves marked 'override', but does not override errors.
- 198 - Effective passing Point by value
- 193 - Automatically adjusting point timestamp according to the setting of write precision.
- 185 - Added diagnostic server connection state getter
bool InfluxDBClient::isConnected()
- 174,181 - All API methods with a string param allow specifying string by all basic types:
- Arduino
String
class - C
char *
orchar[]
- Flash string using
F
,PSTR
orFPSTR
macros
- 176 - Cleared all compiler warnings
- 167 - Added
InfluxDBClient::writeRecord(const char *record)
. - 167 - Added possibility to disable retrying by setting
maxRetryAttempts
to zero:client.setWriteOptions(WriteOptions().maxRetryAttempts(0));
- 172 - Added directly streaming batch for write. It can be enabled by
InfluxDBClient::setStreamWrite(bool enable = true)
. Writing by streaming lines of batch saves RAM as it sends data without allocating a buffer. On the other hand, this way of writing is about half times slower than the classic way, when allocating the buffer for writing the whole batch. - 172 - Allowing larger batch size, > 255.
- 173 - Added Flux query parameters. Now supported by InfluxDB Cloud only.
- #147 - Updated InfluxDB 2 Cloud CA root certificate to ISRG Root X1.
Current InfluxDB 2 Cloud CA root certificate DST Root CA X3 expires on September 30th 2021! - #157 - Added Buckets sub-client for managing buckets in InfluxDB 2.
- #150 -
HTTPOptions::httpReadTimeout
is also set as the connect timeout for HTTP connection on ESP32. It also works for HTTPS connection since ESP32 Arduino Core 2.0.0. - #156 - Correctly rounding writeBufferSize, when bufferSize/batchSize >= 256.
- #162 - Fixed flushing of not full buffer after the flush timeout.
- #163 - More precise description of supported devices.
- #143 -
InfluxDBClient::setInsecure
now works also for ESP32. Requires Arduino ESP32 SDK 1.0.5 or higher
- #134:
- Added untrusted connection (skipping certificate validation) info to Readme
SecureWrite
andSecureBatchWrite
demos enhanced with example about using untrusted connection- Various fixes of typos
- #137 - Fixed parsing Flux response with unexpected annotations
- #125 - Added credentials to the InfluxDB 1.x validation endpoint (/ping). To leverage this, enable ping authentication
- #129 - Updated InfluxDB 2 Cloud CA certificate to trust servers from all cloud providers (AWS, Azure, GCP)
- #121 - Fixed compile error in case of warning is treated as an error
- #122 - Deleting WiFiClient instance to avoid memory leaking when the InfluxDBClient is reinitialized
- #124 - Fixed compilation warnings
- #120 - Improved language wording in the Readme
- #117 - Added
InfluxDBClient::pointToLineProtocol(const Point& point)
for simple creation of InfluxDB line-protocol string with respect to default tags
- #114 - Renamed
getRemaingRetryTime()
->getRemainingRetryTime()
- #115 - Restored writing capability after a connection failure
- #118 - Added escaping of URL params (org, bucker, V1 username and pass)
- #107 - Added possibility to set default tags. Use
WriteOptions::addDefaultTag()
to add a tag that will be added to each written point using thewritePoint()
function. - #109 - Retry strategy improvements:
- Added
canSendRequest()
function to check if retry strategy is applied - Added
getRemaingRetryTime()
function to get wait time before another request (write/query) can be sent - Removed applying retry wait time in case of network error
- Better explanatory error message when a request is about to be sent in the retry wait state
- Added
- #108 - Added optional param for specifying decimal places of double.:
void Point::addField(String name, double value, int decimalPlaces = 2)
- #111 - Fixed blocked writing after another point reached max retry count (#110)
- #89 - ESP8266 only - Added Max Fragment Length Negotiation for TLS communication to reduce memory allocation. If server supports MFLN, it saves ~10kB. Standalone InfluxDB OSS server doesn't support MFLN, Cloud yes. To leverage MFLN for standalone OSS, a reverse proxy needs to be used.
- #91 - Improved API for settings of write and HTTP options:
- Introduced
WriteOptions
to wrap the write related options (write precision, batch-size, etc). It offers fluent style API allowing to change only the required options.InfluxDBClient
has overloadedsetWriteOptions(const WriteOptions& writeOptions)
method. - Introduced
HTTPOptions
to wrap the HTTP related options (e.g. reusing connection). It offers fluent style API allowing to change only the required options.InfluxDBClient
hassetHTTPOptions(const HTTPOptions& httpOptions)
method. - Added possibility to set HTTP response read timeout (part of the
HTTPOptions
). - Method
InfluxDBClient::void setWriteOptions(WritePrecision precision, uint16_t batchSize = 1, uint16_t bufferSize = 5, uint16_t flushInterval = 60, bool preserveConnection = true)
is deprecated and it will be removed in the next release.
- Introduced
- #93 - Write logic improvements
- Retry on failure logic unification with other InfluxDB clients (exponential retry, max retry count 3, max retry interval)
- Better write buffer memory management
- #87 - Fixed include file name in the Readme
- #99 - Changed default InfluxDB 2 port from 9999 to 8086 (default since InfluxDB 2 RC0)
- #90 - Fixed boolean type recognition of InfluxDB Flux
- #101 - Better memory efficient point line composition
- [NEW] Added possibility skip server certification validation (
setInsecure()
method) - [NEW] Added possibility to query flux on secured InfluxDB 1.8 using V1 approach
- [NEW]
validateConnection()
can be used also for the forward compatibility connection to InfluxDB 1.8 - [FIX] More precise default timestamp generating, up to microseconds
- [FIX] Debug compilation error
- [FIX] SecureBatchWrite compile error
- [NEW] Added possibility to read data from InfluxDB using Flux queries
- [NEW]
timeSync
utility function for synchronous time synchronization using NTP - [FIX] Properly initialize member variable (#59)
- [FIX] ASCII chars & compilation warning fix (#60)
- [Update] ESP8266 SDK 2.7+ required
- [FIX] SecureWrite crash (#54)
- [FIX] Compilation error on fields order (#43)
- [FIX] Invalid precision constant for microseconds (#49)
- [FIX] Write error in case point has no tags (#50)
- [Updated] CA Certificate for SSL (#38)
- [NEW] Added User-agent header
- [FIX] status code check when pinging an InfluxDB version 1.x instance
- New API with similar keywords as other official InfluxDB clients
- Richer set of data types for fields and timestamp methods
- Advanced features, such as implicit batching, automatic retrying on server back-pressure and connection failure, along with secured communication over TLS supported for both devices and authentication
- Special characters escaping
- Backward support for original API of V1/V2