Releases: civisanalytics/civis-python
Releases · civisanalytics/civis-python
v1.16.0
Added
- Added documentation around testing code using mocking (#447)
- Added the type of
civis.response.Response
andcivis.response.PaginatedResponse
returned in the API resources documentation (#438) - Added job ID and run ID as custom headers in API calls (#437)
- Added support for Python 3.9 (#436)
- Added job ID and run ID to the exception message of
CivisJobFailure
coming from aCivisFuture
object (#426) - Added the
encoding
parameter to bothcivis.io.read_civis
andcivis.io.read_civis_sql
,
so that these two functions can retrieve non-UTF-8 data whenuse_pandas
isFalse
. (#424) ContainerFuture
propagates error messages from logs (#416)- Added EmptyResultError to
civis.io.read_civis
docs (#412) - Added default values from swagger in client method's signature (#417)
Changed
- Explicitly stated CSV-like civis file format requirement in
civis.io.civis_file_to_table
's docstring (#445) - Called out the fact that
joblib.Parallel
'spre_dispatch
defaults to"2*n_jobs"
in the Sphinx docs (#443) - Updated
civis_api_spec.json
, moved it to undercivis/resources/
, and checked in
a script to facilitate updating it again (#440, #441) - Bumped version numbers for dependencies to allow their latest major releases (#436)
- Switched from TravisCI to CircleCI (#432)
- Moved the changes from #416 for propagating error messages
fromContainerFuture
toCivisFuture
(#426) - Updated the docstrings for
file_to_civis
(forbuf
andexpires_at
),
dataframe_to_file
(forexpires_at
), andjson_to_file
(forexpires_at
). (#427) - Ability to use joblib 1.1.x (#429)
Fixed
- Relaxed SQL type checking in
civis.io.civis_file_to_table
by casting toVARCHAR
when type inconsistency is detected for a given column and at least one input file
hasVARCHAR
(#439) - Updated info about MacOS shell configuration file to be
~/.zshrc
(#444) - Fixed the Sphinx docs to show details of multi-word API endpoints (#442)
- Dropped the buggy/unnecessary
_get_headers
incivis.io.read_civis_sql
(#415) - Clarified the
table_columns
parameter incivis.io.*
functions (#434) - Warned about the
retry_total
parameter ofcivis.APIClient
being inactive and deprecated (#431) - Converted
assert
statements in non-test code into proper error handling (#430, #435) - Handled the index-out-of-bounds error when CSV preprocessing fails in
civis_file_to_table
by raising a more informative exception (#428) - Corrected camel to snake case for "sql_type" in
io
docstrings, and added an input check to catch misspellings in thetable_columns
input (#419).
Removed
- Dropped support for Python 3.6 (#436)
- Removed no-longer-used PubNub code (#425)
- Removed no-longer-supported Python 2 option for notebook creation in the CLI (#421)
Security
- Turned on
safety
andbandit
checks at CircleCI builds (#446)
v1.15.1
v1.15.0
Changed
- Bump minimum pubnub version to
4.1.12
(#397) - In
civis.io.civis_file_to_table
, ensure that data types are detected when table_columns are provided with no sql_types. Additionally, throw an error if some sql_types are provided and not others. (#400) - Retain specific sql types when there are multiple input files and
table_columns
specified incivis.io.civis_file_to_table
(#402) - Removed Python 3.5 support (#404)
- Updated list of base API resources to include
aliases
,git_repos
,json_values
,services
, andstorage_hosts
so that they show up in the sphinx docs (#406) - Update the API spec at
civis/tests/civis_api_spec.json
so that new endpoints are included (e.g.,/exports/files/csv
) (#407) - Refactor file cleaning logic for
civis.io.civis_file_to_table
(#405) - Refactored retry logic to use tenacity package, added random jitter on retries, and retry on POST 429 and 503s. (#401)
Fixed
v1.14.2
Added
- Added support for Python 3.8 (#391)
Fixed
- Fixed a bug in the CLI tool which caused failed commands to exit with a 0 exit status. (#389)
- Fixed some issues that the newly-released flake8 3.8 complained about, including a buggy print statement for logging in run_joblib_func.py. (#394)
- Fixed a bug when cancelling jobs while using the Civis joblib backend. (#395)
Changed
- Added additional detail to
civis.io.dataframe_to_civis
,civis.io.csv_to_civis
, andcivis.io.civis_file_to_table
's docstrings on the primary key parameter. (#388) - Made polling threads for Civis futures be daemon threads so that Python processes will shut down properly in Python 3.8 (#391)
- Removed deprecation warning on the
file_id
parameter ofcivis.io.civis_file_to_table
. The parameter name will be kept in v2. (#360, #393) - Show tables of methods for each set of endpoints in the API Resources pages. (#396)
v1.14.1
v1.14.0
Added
- Added
.outputs
method to retrieve outputs fromCivisFuture
objects. (#381) - Added
table_columns
parameter tocivis.io.civis_file_to_table
,civis.io.dataframe_to_civis
, andcivis.io.csv_to_civis
(#379)
Fixed
- Fixed/relaxed version specifications for click, jsonref, and jsonschema. (#377)
Removed
- Removed support for Python 2.7 and 3.4. (#378)
Changed
- No longer require ServiceClient to be instantiated to parse a
service api spec. (#382)
v1.13.1
v1.13.0
Added
- Add
civis jobs follow-log
andcivis jobs follow-run-log
CLI commands. (#359) - Add documentation for follow-log CLI Commands to main docs. (#367)
Fixed
- Fixed a bug related to duplicating parent job parameters when using
civis.parallel.infer_backend_factory
. (#363) - Fixed crashing on NULL fields in
civis sql
CLI command. (#366) - Fixed
hidden
parameter not getting used incivis.io.civis_file_to_table
. (#364) - Fixed
effective_n_jobs
to account forn_jobs=None
, which is a default for the LogisticsRegression insklearn=0.22.x
. (#365) - Fixed crashing on NULL fields in
civis sql
CLI command (#366) - Fixed a bug related to creating a ModelPipeline from a registered model. (#369)
- Fixed readme and setup.py to appease twine. (#373)
Changed
- Made repeated invocations of
civis.tests.create_client_mock
faster by caching the real APIClient that the mock spec is based on (#371)
v1.12.1
v1.12.0
1.12.0 - 2020-01-14
Added
- Added method
get_storage_host_id
to the APIClient. (#328) - Added debug logging to some
civis.io
functions. (#325) - Added
ServiceClient
andServiceEndpoint
class. (#343) - Added new arguments to
civis.io.civis_to_multifile_csv
to expose max_file_size parameter. (#342)
Fixed
- Removed incorrect "optional" marker for the
sql
argument in I/O
functions. (#338) - Raise a more informative exception when calling
file_to_dataframe
on an expired file. (#337) ModelPipeline.register_pretrained_model
should persist the user-supplied
estimator object indefinitely. (#331)- Fixed requirements.txt listing for
cloudpickle
-->=0.2
, not<=0.2
. (#323) - Fixed issue in
civis.io.read_civis_sql
when returning data that contains
double quotes. (#328) - Fixed issue with pyyaml version for Python 3.4 by requiring pyyaml version <=5.2
Changed
- Updated cloudpickle and joblib dependencies. (#349)
- CivisML uses platform aliases instead of hard-coded template IDs. (#341, #347)
- CivisML versions and pre-installed packages are documented on Zendesk instead. (#341)
- Issue a
FutureWarning
on import for Python 2 and 3.4 users. (#333,
#340) - Pass
headers
anddelimiter
to Civis API endpoint for cleaning files incivis.io.civis_file_to_table
. (#334) - Issue a
FutureWarning
on import for Python 2 users. (#333) - Update the Civis logo in the Sphinx documentation. (#330)
- Allow the
name
arg to be optional incivis.io.file_to_civis
. (#324) - Refactor
civis.io.civis_file_to_table
to use a new set of Civis API endpoints for cleaning and importing CSV files. (#328) - Added new arguments to
civis.io.civis_file_to_table
to expose additional functionality from new Civis API endpoints. (#328) - Added new arguments from
civis.io.civis_file_to_table
todataframe_to_civis
andcsv_to_civis
methods. (#328)