Releases: civisanalytics/civis-python
Releases · civisanalytics/civis-python
v1.11.0
1.11.0 - 2019-08-26
Added
- Add CLI command "sql" for command line SQL query execution. (#319)
- Add helper function (run_template) to run a template given its id and return
either the JSON output or the associated file ids. (#318) - Add helper function to list CivisML models. (#314)
- Added helper functions to share CivisML models with users or groups,
patterned after the existing API sharing endpoints. (#315) - Allow the base URL of the CLI to be configured through the
CIVIS_API_ENDPOINT
environment variable, like the civis Python module. (#312) - Allow the CLI log level to be configured with the
CIVIS_LOG_LEVEL
environment variable with the standardlogging
module levels.
For example:CIVIS_LOG_LEVEL=DEBUG civis users list-me
(#312) - Allow users to access
civis.utils.run_job
after animport civis
. (#305) civis.io.dataframe_to_file
andcivis.io.json_to_file
convenience functions.
(#262, #304)- Add the user's Python version to the User-Agent string. (#255, #301)
- Added a
last_response
parameter to theAPIClient
object. (#153, #302) - The deprecate_param decorator can take multiple parameter names, to allow
Python 2.7 compatibility for multiple deprecations. (#311)
Fixed
- Added missing docs for
json_to_file
anddataframe_to_file
(#320). - Fix unintentional dependency on scikit-learn for
parallel
module tests. (#245, #303) - Deprecate the
headers
parameter ofdataframe_to_civis
and always tell Civis
whether the import has headers or not, rather than autodetecting. (#263, #307) - Set
cloudpickle
requirements to <1.2 on Python v3.4. (#309) - Fixed an issue in the CLI which prevented users from accessing GET /aliases/{id}
and simultaneously generated a warning message. (#298, #316)
Changed
- Loosened version requirements of
pyyaml
to includepyyaml<=5.99
. (#293) - Loosened version requirement of
jsonref
to include0.2
to fix a
DeprecationWarning under Python 3.7. (#295) - Changed pubnub version requirement in requirements.txt to match setup.py
(#295) - Loosened version requirements of
click
to include v7 andjsonschema
to include v3. (#286, #300) - Surfaced
civis.io.split_schema_tablename
in the Sphinx docs. (#294) - Loosen
joblib
version requirement to include v0.13 and add code to
the Civis joblib backend which newer versions ofjoblib
can take
advantage of. Also loosened version requirement oncloudpickle
to
include v1. (#296, #299) - Run all tests in Ubuntu Xenial. (#310)
v1.10.0
v1.9.4
1.9.3 - 2019-02-05
v1.9.2
v1.9.1
1.9.1 - 2018-11-15
Fixed
_stash_dataframe_as_csv
incivis/ml/_model.py
now uses aStringIO
object which has thegetvalue
method (required bypandas
v0.23.1
if a file-like object is passed intodf.to_csv
). (#259)civis_to_multifile_csv
fully respects theclient
keyword argument
Added
- Added instructions in the README for adding an API key to a Windows 10
environment - Configured Windows CI using AppVeyor. (#258)
Changed
v1.9.0
1.9.0 - 2018-04-25
Fixed
- Added more robust parsing for tablename parsing in io. You may now
pass in tables like schema."tablename.with.periods". - Adding in missing documentation for civis_file_to_table
- Include JSON files with pip distributions (#244)
- Added flush to
civis_to_file
when passed a user-created buffer,
ensuring the buffer contains the entire file when subsequently read. - Fix several tests in the
test_io
module (#248) - Travis tests for Python 3.4 are now restricted to pandas<=0.20, the
last version which supported Python 3.4 (#249)
Added
- Added a utility function which can robustly split a Redshift schema name
and table name which are presented as a single string joined by a "." (#225) - Added docstrings for
civis.find
andcivis.find_one
. (#224) - Executors in
futures
(and the joblib backend, which uses them) will now
add "CIVIS_PARENT_JOB_ID" and "CIVIS_PARENT_RUN_ID" environment variables
to the child jobs they create (#236) - Update default CivisML version to v2.2. This includes a new function
ModelPipeline.register_pretrained_model
which allows users to train
a model outside of Civis Platform and use CivisML to score it at scale (#242, #247). - Added a new parameter
dvs_to_predict
tocivis.ml.ModelPipeline.predict
.
This allows users to select a subset of a model's outputs for scoring (#241). - Added
civis.io.export_to_civis_file
to store results of a SQL query
to a Civis file - Surfaced
civis.find
andcivis.find_one
in the Sphinx docs. (#250)
Changed
- Moved "Optional Dependencies" doc section to top of ML docs, and
added clarifications for pre-defined models with non-sklearn
estimators (#238) - Switched to pip install-ing dependencies for building the documentation (#230)
- Added a merge rule for the changelog to .gitattributes (#229)
- Default to "all" API resources rather than "base".
- Updated documentation on algorithm hyperparameters to reflect changes with
CivisML v2.2 release (#240)
v1.8.1
v1.8.0
1.8.0
2018-01-23
https://github.com/civisanalytics/civis-python/milestone/13
Added
- Documentation updated to reflect CivisML 2.1 features (#209)
civis.io.dataframe_to_civis
,civis.io.csv_to_civis
, andcivis.io.civis_file_to_table
functions now support thediststyle
parameter.- New notebook-related CLI commands: "new", "up", "down", and "open".
- Additional documentation for using the Civis joblib backend (#199)
- Documented additional soft dependencies for CivisML (#203)
Changed
- Changed
ModelPipeline.train
default forn_jobs
from 4 toNone
, so thatn_jobs
will be dynamically calculated by default (#203) - Use "feather"-formatted files to send data from users to CivisML, if possible. Require this when using
pd.Categorical
types, since CSVs require us to re-infer column types, and this can fail. Using feather should also give a speed improvement; it reads and writes faster than CSVs and produces smaller files (#200). ModelFuture
objects will emit any warnings which occurred during their corresponding CivisML job (#204)- Removed line setting "n_jobs" from an example of CivisML prediction. Recommended use is to let CivisML determine the number of jobs itself (#211).
- Update maximum CivisML version to v2.1; adjust fallback logic such that users get the most recent available release (#212).
Fixed
- Restored the pre-v1.7.0 default behavior of the
joblib
backend by setting theremote_backend
parameter default to 'sequential' as opposed to 'civis'. The default of 'civis' would launch additional containers in nested calls tojoblib.Parallel
. (#205) - If validation metadata are missing,
ModelFuture
objects will returnNone
for metrics or validation metadata, rather than issuing an exception (#208) - Allowed callers to pass
index
andencoding
arguments to theto_csv
method throughdataframe_to_civis
.
Performance Enhancements
civis.io.file_to_civis
now uses additional file handles for multipart upload instead of writing to disk to reduce disk usagecivis.io.dataframe_to_civis
writes dataframes to disk instead of using an in memory buffer