- #696: Move "setuptools" package to build dependency.
- #682: Check core types when creating Authentication instances.
- #682: New example for working with Authentication API.
- #679: Add note to caught errors about need to check client timeout.
- #672: Adding type validation to url attribute in client object
- #674: Add type linting to client.flux_table.FluxTable, remove duplicated
from pathlib import Pathat setup.py - #675: Ensures WritePrecision in Point is preferred to
DEFAULT_PRECISION
- #667: Missing
py.typedin distribution package
- #664: Multiprocessing example uses new source of data
- #665: Shows how to leverage header fields in errors returned on write.
- #652: Refactor to
timezonespecificdatetimehelpers to avoid use deprecated functions - #663: Accept HTTP 201 response to write request
- #657: Prefer datetime.fromisoformat over dateutil.parse in Python 3.11+
- #658: Add
find_buckets_iterfunction that allow iterate through all pages of buckets.
- #655: Replace deprecated
urllibcallsHTTPResponse.getheaders()andHTTPResponse.getheader().
- #654: Enable packaging type information -
py.typed
- #648: Fix
DataFrameserialization withNaNvalues
- #643: Add a support for Python 3.12
- #636: Handle missing data in data frames
- #638, #642: Refactor DataFrame operations to avoid chained assignment and resolve FutureWarning in pandas, ensuring compatibility with pandas 3.0.
- #641: Correctly dispose ThreadPoolScheduler in WriteApi
- #639: Use Markdown for
README
- #625: Make class
Pointequatable
- #562: Use
ThreadPoolSchedulerforWriteApi's batch subject instead ofTimeoutSchedulerto prevent creating unnecessary threads repeatedly - #631: Logging HTTP requests without query parameters
- #635: Fix render
README.rstat GitHub
- #616: Add
find_tasks_iterfunction that allow iterate through all pages of tasks.
- #601: Use HTTResponse.headers to clear deprecation warning [urllib3]
- #610: Use iloc to clear deprecation warning
- #566: Fix Sphinx documentation build and add support
.readthedocs.ymlV2 configuration file
This release disables using of the HTTP proxy environment variables HTTP_PROXY and HTTPS_PROXY for the asynchronous HTTP client.
The proxy environment variables must be explicitly enabled in the client's configuration:
from influxdb_client.client.influxdb_client_async import InfluxDBClientAsync
async with InfluxDBClientAsync(url="http://localhost:8086", token="my-token", org="my-org",
client_session_kwargs={'trust_env': True}) as client:
passThis release introduces a support for new version of InfluxDB API definitions with following breaking changes:
User,UserResponse,ResourceMemberandResourceOwnerclasses no longer supportsoauth_idfieldTaskclass no longer supportstypefieldScriptUpdateRequestclass no longer supportsnamefieldUsersService.get_flagsoperation is moved toConfigService
- #586: Add
config_namekey argument forfrom_config_filefunction to allow loading a specific configuration from a config file
- #588: Use the latest InfluxDB API definitions for generated APIs
- #583: Async HTTP client doesn't always use
HTTP_PROXY/HTTPS_PROXYenvironment variables. [async/await] - #584: Parsing empty query result value as
numpy.NaN - #595: The
Config-Encoding: identityheader will no longer be set by thewrite_apicalls to a remote server
- #559: Exceptions in callbacks can cause deadlocks
- #536: Query to
CSVskip empty lines - #538: Configure types of
integerfields when initializingPointfromdictstructure
- #528: Add
BucketSchemasServiceto manage explicit bucket schemas to enforce column names, tags, fields, and data types for your data
- #526: Creating client instance from static configuration
- #531: HTTP request return type for Management API [async/await]
- #534: Use
HTTResponse.headersto clear deprecation warning [urllib3]
- #523: Add Python 3.11 to CI builds
- #509: Rename
key_filetocert_key_fileinside the central configuration class
- #510: Allow to use client's optional configs for initialization from file or environment properties
- #509: MTLS support for the InfluxDB Python client
- #512: Exception propagation for asynchronous
QueryApi[async/await] - #518: Parsing query response with two-bytes UTF-8 character [async/await]
- #521: Duplicated
debugoutput
- #498: Add possibility to update user's password by
users_api - #502: Add
FluxRecord.rowwith response data stored in array
- #497: Parsing InfluxDB response with new line character in CSV column [async/await]
- #483: Querying data if the
debugis enabled - #477: Parsing date fails due to thread race
- #486: Serializing DataFrames with columns starting with digits
- #491: Creating
Taskswithimportstatements
- #472: Update
RxPYto4.0.4
- #397: Add an example: How to use RxPY to prepare batches by maximum bytes count
- #269: Add new example: How to check connection credentials
- #467: Add possibility to initialize client by json file
- #450: Improve Query UX - simplify serialization to JSON and add possibility to serialize query results as a flattened list of values
- #462: Redact the
AuthorizationHTTP header from log
- #440: Add possibility to specify timestamp column and its timezone [DataFrame]
- #457: Formatting nanoseconds to Flux AST
- #449: Remove
pytzlibrary
- #443: Initialization of the client without auth credentials
- #433: Rename
InvocableScriptstoInvokableScripts
- #435: Add possibility to authenticate by
username/password
- #439: Remove
sixlibrary
- #413: Add support for
async/awaitwith asyncio viaInfluxDBClientAsync, for more info see: How to use Asyncio
- #425: Improve error message if there is no
organizationwith requiredname
- #412:
DeleteApiuses default value fromInfluxDBClient.orgif anorgparameter is not specified - #405: Add
InfluxLoggingHandler. A handler to use the client in native python logging. - #404: Add
InvokableScriptsApito create, update, list, delete and invoke scripts by seamless way
- #419: Use
allowed_methodsto clear deprecation warning [urllib3]
- #419: Update dependencies:
urllib3to 1.26.0
- #411: Use new Codecov uploader for reporting code coverage
This release introduces a support for new version of InfluxDB OSS API definitions - oss.yml. The following breaking changes are in underlying API services and doesn't affect common apis such as - WriteApi, QueryApi, BucketsApi, OrganizationsApi...
- Add
LegacyAuthorizationsServiceto deal with legacy authorizations - Add
ResourceServiceto retrieve all knows resources - Add
BackupServiceto represents the data backup functions of InfluxDB - Add
ReplicationsServiceto represents the replication functions of InfluxDB - Add
RestoreServiceto represents the data restore functions of InfluxDB - Add
ConfigServiceto retrieve InfluxDB's runtime configuration - Add
RemoteConnectionsServiceto deal with registered remote InfluxDB connections - Add
TelegrafPluginsServiceto retrieve all Telegraf's plugins - Update
TemplatesServiceto deal withStackandTemplateAPI DBRPsService:- doesn't requires
org_idparameter for operations get_dbr_ps_idoperation usesDBRPGetas a type of resultpatch_dbrpidoperation usesDBRPGetas a type of resultpost_dbrpoperation usesDBRPCreateas a type of request
- doesn't requires
DefaultService:get_routesoperation is moved toRoutesServiceget_telegraf_pluginoperation is moved toTelegrafsServicepost_signinoperation is moved toSigninServicepost_signoutoperation is moved toSignoutService
OrganizationsService:get_orgs_id_secretsoperation is moved toSecretsServicepatch_orgs_id_secretsoperation is moved toSecretsServicepost_orgs_id_secretsoperation is moved toSecretsService
- Remove
DocumentApiin favour of InfluxDB Community Templates. For more info see - influxdb#19300, openapi#192 TelegrafsServiceusesTelegrafPluginRequestto createTelegrafconfigurationTelegrafsServiceusesTelegrafPluginRequestto updateTelegrafconfiguration
- #399: Use the latest InfluxDB OSS API definitions to generated APIs
- #408: Improve error message when the client cannot find organization by name
- #407: Use
pandas.concat()instead of deprecatedDataFrame.append()[DataFrame]
- #393: Add callback function for getting profilers output with example and test
- #375: Construct
InfluxDBErrorwithout HTTP response - #378: Correct serialization DataFrame with nan values [DataFrame]
- #384: Timeout can be specified as a
float - #380: Correct data types for querying [DataFrame]
- #391: Ping function uses debug for log
- #395: Add an example How to use create a Task by API
- #370: Add Python 3.10 to CI builds
- #358: Update management API:
BucketsApi- add possibility to:updateOrganizationsApi- add possibility to:updateUsersApi- add possibility to:update,delete,find
- #356: Add
MultiprocessingWriterto write data in independent OS process
- #359: Correct serialization empty columns into LineProtocol [DataFrame]
InfluxDBClient.health(): instead useInfluxDBClient.ping()
- #352: Add
PingServiceto check status of OSS and Cloud instance
- #344: Add an example How to use Invokable scripts Cloud API
- #330: Add support for write structured data -
NamedTuple,Data Classes - #335: Add support for custom precision for index specified as number [DataFrame]
- #341: Add support for handling batch events
- #348: Optimize appending new columns to Pandas DataFrame [DataFrame]
- #331: Add Migration Guide
- #341: How to handle client errors
- #319: Add supports for array expressions in query parameters
- #320: Add JSONEncoder to encode query results to JSON
- #317:
delete_apialso acceptdatetimeas a value forstartandstop
- #321: Fixes return type for dashboard when
include=propertiesis used
- #327: Switch to next-gen CircleCI's convenience images
- #281:
FluxTable,FluxColumnandFluxRecordobjects have helpful reprs - #293:
dataframe_serializersupports batching - #301: Add
proxy_headersto configuration options - #306: Supports
numpytype in serialization to Line protocol
- #301: How to configure proxy
- #283: Set proxy server in config file
- #290:
Thresholddomain models mapping - #290:
DashboardServiceresponses types - #303: Backslash escaping in serialization to Line protocol
- #312: Zip structure for AWS Lambda
- #299: Deploy package to Anaconda.org
- #264: Org parameter can be specified as ID, Name or Organization Object [write, query]
- #264: Deprecated
org_idoptions BucketsApi.create_bucket in favor oforgparameter
- #270: Supports
write_precisionfor write Pandas DataFrame
This release introduces a support for new InfluxDB OSS API definitions - oss.yml. The following breaking changes are in underlying API services and doesn't affect common apis such as - WriteApi, QueryApi, BucketsApi, OrganizationsApi...
AuthorizationsServiceusesAuthorizationPostRequestto createAuthorizationBucketsServiceusesPatchBucketRequestto updateBucketDashboardsServiceusesPatchDashboardRequestto updateDashboardDeleteServiceis used to delete time series date instead ofDefaultServiceDBRPscontains list ofDBRPincontentpropertyOrganizationsServiceusesPostOrganizationRequestto createOrganizationRuncontains list ofLogEventinlogpropertyOrganizationsServiceusesPatchOrganizationRequestto updateOrganizationOnboardingResponseusesUserResponseasuserpropertyResourceMemberandResourceOwnerinherits fromUserResponseUserscontains list ofUserResponseinuserspropertyUsersServiceusesUserResponseas a response to requests
- #237: Use kwargs to pass query parameters into API list call - useful for the ability to use pagination.
- #241: Add detail error message for not supported type of
Point.field - #238: Add possibility to specify default
timezonefor datetimes withouttzinfo - #262: Add option
auth_basicto allow proxied access to InfluxDB 1.8.x compatibility API
- #254: Serialize
numpyfloats into LineProtocol
- #255: Fix invalid description for env var
INFLUXDB_V2_CONNECTION_POOL_MAXSIZE
- #261: Use InfluxDB OSS API definitions to generated APIs
- #222: Pass configured timeout to HTTP client
- #218: Support for
with .. as ..statement - #232: Specify package requirements in
setup.py - #235: Write a dictionary-style object without tags
- #206: Use default (system) certificates instead of Mozilla's root certificates (certifi.where())
- #217: Fix clone_task function
- #209: Allow setting shard-group durations for buckets via API
- #202: Added an example how to use RxPY and sync batching
- #213: Added an example how to use Buckets API
- #193: Fixed
tasks_apito use proper function to getRun
- #200: Updated docs, examples, tests: use
closeinstead of__del__.
- #199: Updated stable image to
influxdb:latestand nightly toquay.io/influxdb/influxdb:nightly
- #176: Allow providing proxy option to InfluxDBClient
- #179: Updated default docker image to v2.0.3
- #189: Updated docs about
DeleteApi.
- #171: CSV parser is able to parse export from UI
- #170: Skip DataFrame rows without data - all fields are nan.
- #175: Updated default docker image to v2.0.2
- #163: Added support for Python 3.9
- #161: Added logging message for retries
- #164: Excluded tests from packaging
- #152: WriteApi supports generic Iterable type
- #158: Added possibility to specify certificate file path to verify the peer
- #151: Default port changed from 9999 -> 8086
- #156: Removed labels in organization API, removed Pkg* structure and package service
- #154: Fixed escaping string fields in DataFrame serialization
- #140: Added exponential backoff strategy for batching writes, Allowed to configure default retry strategy. Default value for
retry_intervalis 5_000 milliseconds. - #136: Allows users to skip of verifying SSL certificate
- #143: Skip of verifying SSL certificate could be configured via config file or environment properties
- #141: Added possibility to use datetime nanoseconds precision by
pandas.Timestamp - #145: Api generator was moved to influxdb-clients-apigen
- #112: Support timestamp with different timezone in _convert_timestamp
- #120: ciso8601 is an optional dependency and has to be installed separably
- #121: Added query_data_frame_stream method
- #132: Use microseconds resolutions for data points
- #117: Fixed appending default tags for single Point
- #115: Fixed serialization of
\n,\rand\tto Line Protocol,=is valid sign for measurement name - #118: Fixed serialization of DataFrame with empty (NaN) values
- #130: Use
Retry-Afterheader value for Retryable error codes
- #92: Optimize serializing Pandas DataFrame for writing
- #110: Removed log system from Bucket, Dashboard, Organization, Task and Users API - influxdb#18459, Update swagger to latest version
- #105: Fixed mapping dictionary without timestamp and tags into LineProtocol
- #108: The WriteApi uses precision from Point instead a default precision
- #79: Added support for writing Pandas DataFrame
- #85: Fixed a possibility to generate empty write batch
- #86: BREAKING CHANGE: Fixed parameters in delete api - now delete api accepts also bucket name and org name instead of only ids
- #93: Remove trailing slash from connection URL
- #75: Updated docs to clarify how to use an org parameter
- #84: Clarify how to use a client with InfluxDB 1.8
- #72: Optimize serializing data into Pandas DataFrame
- #59: Set User-Agent to influxdb-client-python/VERSION for all requests
- #61: Correctly parse CSV where multiple results include multiple tables
- #66: Correctly close connection pool manager at exit
- #69:
InfluxDBClientandWriteApicould serialized by pickle (python3.7 or higher)
- #52: Initialize client library from config file and environmental properties
- #54: Add Python 3.7 and 3.8 to CI builds
- #56: Fix default tags for write batching, added new test
- #58: Source distribution also contains: requirements.txt, extra-requirements.txt and test-requirements.txt
- #50: Implemented default tags
- #47: Updated swagger to latest version
- #49: Added beta release to continuous integration
- #48: InfluxDBClient default org is used by WriteAPI
- #44: Optimized serialization into LineProtocol, Clarified how to use client for import large amount of data
- #42: Updated swagger to latest version
- #45: Pandas is a optional dependency and has to installed separably
- #29: Added support for serialise response into Pandas DataFrame
- #24: Added possibility to write dictionary-style object
- #27: Added possibility to write bytes type of data
- #30: Added support for streaming a query response
- #35: FluxRecord supports dictionary-style access
- #31: Added support for delete metrics
- #28: Updated swagger to latest version
- #19: Removed strict checking of enum values
- #22: Documented how to connect to InfluxCloud
- #2: The write client is able to write data in batches (configuration:
batch_size,flush_interval,jitter_interval,retry_interval) - #5: Added support for gzip compression of query response and write body
- #10: Updated swagger to latest version