From 0b92809c899f1fc630821c9f551fec823701180b Mon Sep 17 00:00:00 2001 From: joshua-oss <55251797+joshua-oss@users.noreply.github.com> Date: Sat, 4 Nov 2023 19:22:55 -0700 Subject: [PATCH] Bump Release to 1.0.2 (#581) * Bump version to take use snssql 1.0.2 * Show proper message and abort if mbi not installed --------- Co-authored-by: Joshua --- synth/HISTORY.md | 5 +++++ synth/VERSION | 2 +- synth/docs/source/index.rst | 4 ++++ synth/pyproject.toml | 4 ++-- synth/setup.py | 2 +- synth/snsynth/mst/mst.py | 2 +- 6 files changed, 14 insertions(+), 5 deletions(-) diff --git a/synth/HISTORY.md b/synth/HISTORY.md index f9296587..3190d587 100644 --- a/synth/HISTORY.md +++ b/synth/HISTORY.md @@ -1,3 +1,8 @@ +# SmartNoise Synth v1.0.2 Release Notes + +* Switch to use SmartNoise SQL v1.0.2 +* Synthesizers now convert integer epsilon to float rather than crashing (thanks, @lo2aayy) + # SmartNoise Synth v1.0.1 Release Notes * Upgrade to OpenDP v0.7.0 diff --git a/synth/VERSION b/synth/VERSION index 7f207341..e6d5cb83 100644 --- a/synth/VERSION +++ b/synth/VERSION @@ -1 +1 @@ -1.0.1 \ No newline at end of file +1.0.2 \ No newline at end of file diff --git a/synth/docs/source/index.rst b/synth/docs/source/index.rst index 6b42ece5..346f2d80 100644 --- a/synth/docs/source/index.rst +++ b/synth/docs/source/index.rst @@ -51,6 +51,10 @@ Preprocessor Hints When inferring a preprocessor, the synthesizer first attempts to determine whether each column is categorical, ordinal, or continuous. To skip this step and tell the synthesizer how to treat each column, you can pass in the ``categorical_columns``, ``ordinal_columns``, and ``continuous_columns`` arguments to the ``fit()`` method. Additionally, if you know that columns can have missing values, you can specify ``nullable=True``. +.. note:: + + Before using the MST synthesizer, please install ``mbi`` by running ``pip install git+https://github.com/ryan112358/private-pgm.git``. + .. code-block:: python from snsynth import Synthesizer diff --git a/synth/pyproject.toml b/synth/pyproject.toml index 65d30ca8..b5eb638e 100644 --- a/synth/pyproject.toml +++ b/synth/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "smartnoise-synth" -version = "1.0.1" +version = "1.0.2" description = "Differentially Private Synthetic Data" authors = ["SmartNoise Team "] license = "MIT" @@ -15,7 +15,7 @@ opendp = "^0.7.0" opacus = "^0.14.0" torch = "<2.0.0" pac-synth = "^0.0.8" -smartnoise-sql = "^1.0.1" +smartnoise-sql = "^1.0.2" Faker = "^15.0.0" [tool.poetry.dev-dependencies] diff --git a/synth/setup.py b/synth/setup.py index 3fc15001..b9504569 100644 --- a/synth/setup.py +++ b/synth/setup.py @@ -25,7 +25,7 @@ setup_kwargs = { 'name': 'smartnoise-synth', - 'version': '1.0.1', + 'version': '1.0.2', 'description': 'Differentially Private Synthetic Data', 'long_description': '[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![Python](https://img.shields.io/badge/python-3.7%20%7C%203.8-blue)](https://www.python.org/)\n\n\n\n# SmartNoise Synthesizers\n\nDifferentially private synthesizers for tabular data. Package includes:\n* MWEM\n* MST\n* QUAIL\n* DP-CTGAN\n* PATE-CTGAN\n* PATE-GAN\n* AIM\n\n## Installation\n\n```\npip install smartnoise-synth\n```\n\n## Using\n\nPlease see the [SmartNoise synthesizers documentation](https://docs.smartnoise.org/synth/index.html) for usage examples.\n\n## Note on Inputs\n\nMWEM and MST require columns to be categorical. If you have columns with continuous values, you should discretize them before fitting. Take care to discretize in a way that does not reveal information about the distribution of the data.\n\n## Communication\n\n- You are encouraged to join us on [GitHub Discussions](https://github.com/opendp/opendp/discussions/categories/smartnoise)\n- Please use [GitHub Issues](https://github.com/opendp/smartnoise-sdk/issues) for bug reports and feature requests.\n- For other requests, including security issues, please contact us at [smartnoise@opendp.org](mailto:smartnoise@opendp.org).\n\n## Releases and Contributing\n\nPlease let us know if you encounter a bug by [creating an issue](https://github.com/opendp/smartnoise-sdk/issues).\n\nWe appreciate all contributions. Please review the [contributors guide](../contributing.rst). We welcome pull requests with bug-fixes without prior discussion.\n\nIf you plan to contribute new features, utility functions or extensions to this system, please first open an issue and discuss the feature with us.\n', 'author': 'SmartNoise Team', diff --git a/synth/snsynth/mst/mst.py b/synth/snsynth/mst/mst.py index 75524013..f6d0a422 100644 --- a/synth/snsynth/mst/mst.py +++ b/synth/snsynth/mst/mst.py @@ -5,7 +5,7 @@ from mbi import FactoredInference, Dataset, Domain except ImportError: print("Please install mbi with:\n pip install git+https://github.com/ryan112358/private-pgm.git") - + raise ImportError from scipy import sparse from disjoint_set import DisjointSet import networkx as nx