feat: Add database creation/deletion for Influx 1.8
Add features related to #541 and #259
Proposed Changes
In order to maintain a minimum of compatibility to Influx v1.8 the creation an deletion of buckets (old: databases) should be supported. With these little enhancements the influxdb-client-python could easily.
I implemented two new methods for calls to v1 API if the method for creating or deleting a bucket fails with an ApiException. That way no code changes are necessary regardless which version of Influx you are running on.
I implemented this with a call to the method influxdb_client.api_client.call_api instead of using the _buckets_service.post_buckets as this was easier and with less code changes. I had to invoke the creation of some arguments and hope you find it clean enough.
Checklist
As I just changed functionallity which wasn't there before and doesn't effect any of the other methods I don't know what to test or how to write a test for this. If this or anything else is needed, please advice me to the right direction.
Thanks so much for the pull request!
:handshake: :black_nib: Just a reminder that the CLA has not yet been signed, and we'll need it before merging. Please sign the CLA when you get a chance, then post a comment here saying !signed-cla
!signed-cla
The fails left are related to a numpy problem.
Thanks for your PR 👍
Please rebase your sources to fix CI build - #543
Will do 👍
Codecov Report
Base: 90.36% // Head: 89.72% // Decreases project coverage by -0.64% :warning:
Coverage data is based on head (
83deff4) compared to base (03f5bd7). Patch coverage: 13.79% of modified lines in pull request are covered.
Additional details and impacted files
@@ Coverage Diff @@
## master #544 +/- ##
==========================================
- Coverage 90.36% 89.72% -0.65%
==========================================
Files 39 39
Lines 3437 3466 +29
==========================================
+ Hits 3106 3110 +4
- Misses 331 356 +25
| Impacted Files | Coverage Δ | |
|---|---|---|
| influxdb_client/client/bucket_api.py | 58.46% <13.79%> (-35.99%) |
:arrow_down: |
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.
:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.
(Sorry for the little mess. I merged my rebased master to early)
Thanks for your feedback. I really like your approach and implemented a version check (_is_below_v2()) and an attribute for this (self._build_version).
I use the docstrings and raise a DeprecationWarning when falling back to InfluxQL but I guess with well documented you mean more than that? Where can I add a little description for this behaviour?
I don't know how to fix the semantic error in the PR title. Wozld you mind to change it to your needs, please?
Hi @Pitastic, I think it would be best to merge the commit and change the commit title to feat: Adding InfluxDB 1.8 support for database creation/deletion operations. I think it is also necessary to adjust the title of the PR to match that of the squashed commit.
If you need support, feel free to add me as a contributor to the original forked repository.