Skip to content

v6.0.0

Latest

Choose a tag to compare

@shaunagm shaunagm released this 09 Apr 18:55
0d44e4b

Welcome to release 6.0.0. This is a major release with one big breaking change, a few smaller breaking changes, and a couple really minor ones that we're flagging just to be safe.

The big change: if you have been installing Parsons with pip install parsons that will no longer install all dependencies! Instead you will install only core dependencies and will need to install additional dependencies with commands like pip install parsons[ngpvan]. You can learn more about the changes here and please reach out to us via the Parsons Slack or email (parsons@movementcooperative.org) if you have any questions or issues.

This release also removes support for Python 3.9.

Also, shout out to @crusopaul who made their first contribution in #1735 and to all our contributors to this release: @bmos @matthewkrausse @sharinetmc @codybraun @NirTatcher @shaunagm

What's Changed

Breaking Changes

Major

  • As mentioned above, we've changed the default behavior of the command pip install parsons in #1721
  • We've removed support for python 3.9 in #1618

Minor

  • The Box constructor now only takes an access token, the client id & secret have been removed. See by @crusopaul in #1723
  • We've changed how the 'Person' and 'Service' parent classes in the TargetSmart connector get instantiated, which hopefully will not trip anyone up but is technically a breaking change in #1804
  • If you are using the (currently undocumented) credential_tools.py you will need to import from parsons.utilities instead of fromparsons.tools - that change was made in #1812
  • We've updated the dockerignore for our docker image which may cause some (non-code) files to no longer be copied into the Parsons Docker image - see #1816

New Features

  • Survey methods have been added to the ActionNetwork connector by @NirTatcher in #1647
  • "Delete objects in sync to copy bucket" has been added to Google conncetor by @sharinetmc in #1708
  • get_meeting method has been added to the Zoom connector by @sharinetmc in #1798
  • The Box connector has been updated to use a newer library, and the upload_file and upload_file_to_folder_id methods have been added by @crusopaul in #1723
  • The Parsons Table now supports initialization from Generator, Iterator, and list[OrderedDict] a by @bmos in #1815
  • The GitHub connector has been updated to use PyGithub's Auth class by @bmos in #1809
  • Updates to our dbt tooling by @bmos in #1707

Bug fixes

Documentation Updates

  • Documentation data flow image redesign by @bmos in #1779
  • Add functions from parsons/utilities to our documentation by @bmos in #1813
  • Document and restructure setup.py by @bmos in #1653
  • update van api retrieval docs by @sharinetmc in #1702
  • Documentation / Docstring Syntax Fixes by @bmos in #1719
  • autoclass documentation for Newmode, NewmodeV1, and NewmodeV2 by @bmos in #1741
  • Documentation Tooling Updates by @bmos in #1718

Testing Updates

  • Pytest-native marking of live tests / selective enabling of live tests by @bmos in #1781
  • Modular pytesting for individual extras by @bmos in #1701
  • Extend etl tests by @bmos in #1739
  • Test cleanup by @bmos in #1750

Misc

  • re-use live test decorator by @bmos in #1691
  • Add label checker workflow For Breaking/Non-Breaking Changes by @matthewkrausse in #1782
  • Clarify confusing workflow steps by adding names by @bmos in #1808
  • Expose connector classes to static analysis tools by @bmos in #1810
  • Fix actions/cache key syntax by @bmos in #1780
  • Automatic PR labeling based on modified files and breaking/non-breaking checkboxes by @bmos in #1811
  • Remove 'uv run' from Python checks workflow by @bmos in #1807
  • Comment out requirements instructions in requirements.txt by @bmos in #1820
  • import Table from parsons directly by @bmos in #1692
  • Add xmltodict to mobilecommons dependencies by @bmos in #1699
  • remove vendored censusgeocode in favor of new version! by @bmos in #1710
  • Update box dependency to exclude version 4.4.0 by @bmos in #1720
  • add type hints for most literals by @bmos in #1732
  • Fix dependency-review workflow by @bmos in #1733
  • Add breaking changes section list to pull request template by @crusopaul in #1735
  • Don't modify the iterator we're looping over in etl by @bmos in #1737
  • Eliminate tmp_file fixture by @bmos in #1736
  • Fix circleci deployment by @bmos in #1751
  • Remove unnecessary list comprehensions by @bmos in #1738
  • Simplify existing ci workflow by @bmos in #1764
  • Standardize development dependency location + use uv more by @bmos in #1734

Dependency Updates

Full Changelog: v5.4.0...v6.0.0