Skip to main content

Python library with common functionality for other Waikato projects. Changelog =========

0.0.46 (2025-05-14)

  • removed restrictions from requirements.txt

0.0.45 (2025-04-14)

  • using underscore in project name now

0.0.44 (2024-02-16)

  • fixed methods get_location and make_fit of the NormalizedLocatedObject class

0.0.43 (2024-02-16)

  • added support for normalized geometric shapes (module wai.common.geometry): NormalizedPoint, NormalizedPolygon, NormalizedRectangle

  • added support for normalized located objects (module wai.common.imaging.locateobjects): NormalizedLocatedObject, NormalizedLocatedObjects

0.0.42 (2023-08-18)

  • wai.common._functions now imports Hashable from collections.abc instead of collections (got removed in Python 3.10)

0.0.41 (2022-12-14)

  • String serialisation of spectra now produces a .spec-file formatted string.

  • Bug fixes.

0.0.40 (2022-07-27)

  • improved checks in LocatedObject.has_polygon() to avoid parse errors when poly_x and poly_y are empty strings

0.0.39 (2022-05-23)

  • fixed LocatedObjects.from_report method: no longer skips field names that end with x/y/width/height, only when they exactly match that name.

0.0.38 (2022-05-23)

  • Added serialisers for lists and tuples.

0.0.37 (2021-08-26)

  • Bug fixes.

0.0.36 (2021-07-16)

  • Added serialisers for raw binary data and dictionaries.

  • Added tools for working with subsets and permutations.

0.0.35 (2020-08-05)

  • Bug fixes.

0.0.34 (2020-07-30)

  • Added function to get the standard app configuration directory on a system.

0.0.33 (2020-07-30)

  • Bug fixes.

0.0.32 (2020-07-29)

  • Fixed bug where option handlers weren’t respecting redefinitions of option help text.

0.0.31 (2020-03-31)

  • Removed Rational class as a better implementation is provided by fractions.Fraction.

  • Several changes to CLI classes:

    • Can query the optionality of all option types.

    • Default values are now unchecked.

    • TypedOption no longer produces lists of lists for certain combinations of nargs and action.

    • Argument parsers log by default (instead of printing to stdout/stderr).

  • Can now get all registered classes from a ClassRegistry.

0.0.30 (2020-03-23)

  • Added a partial implementation of rational numbers.

0.0.29 (2020-03-18)

  • Bug fixes.

  • Initial values for options on CLIInstantiable objects can be specified in internal format.

0.0.28 (2020-03-12)

  • Bug fixes.

0.0.27 (2020-03-12)

  • Additional functionality for ClassRegistry.

  • New cli Option, ClassOption, selects from a predefined set of classes.

  • import_code can now optionally bypass aliasing of inner classes.

  • meta.code_repr package for representing values as Python code.

0.0.26 (2020-03-11)

  • Fixed bug in Option descriptors which prevented them from working with generic option-handlers in Python3.6.

0.0.25 (2020-03-10)

  • Added LazyDescriptor.

  • Added function to get the fully-qualified name of a class.

  • Added function to get the import code for a class.

  • Added ClassRegistry class.

  • Added meta-constants module.

  • Added command-line utilities.

0.0.24 (2020-02-21)

  • Fixed typing bug in dynamic_defaults.

0.0.23 (2020-02-20)

  • Added dynamic defaults.

  • Added function to get the kwargs that are supplied to a function (non-default).

  • Added decorator ensure_error_type which wraps exceptions not of a particular type in that type.

  • Removed json package, now in its own repository, wai-json.

0.0.22 (2020-02-12)

  • Added instanceoptionalmethod, a decorator for methods which can be called from either the class or an instance, and take whichever they are called from as their first argument.

  • Added LoggingMixin, which adds logging support to classes.

  • Added serialisation utilities.

  • Added utility for a standard library logger.

0.0.21 (2020-01-24)

  • Added logging utilities package, with utility for a standard root logger.

0.0.20 (2019-12-16)

  • Added extra methods to Polygon, Point.

0.0.19 (2019-11-27)

  • Reworking of JSON configurations to unify value setting between internal and JSON values.

  • Adding caching of non-varying calculated attributes to improve serialisation time.

0.0.18 (2019-11-15)

  • Added PathContextManager, which is a context manager which changes the cwd temporarily.

  • Added ensure_path, which creates a directory if it doesn’t exist.

0.0.17 (2019-10-31)

  • Added TypeVarProperty, for easier caching of dynamic type variables.

  • Added depth argument to flatten (iterators and sequences).

0.0.16 (2019-10-22)

  • Added support for ADAMS report files.

  • Added basic support for geometry.

  • Added support for working with located objects in image-classification/identification tasks.

0.0.15 (2019-10-09)

  • Bug fixes.

0.0.14 (2019-10-09)

  • Configuration schema caching is now lazier than ever.

  • JSON serialisation now validates in both directions.

0.0.13 (2019-10-09)

  • Fixed bug in Configuration where cached schema were preventing grand-inheritance.

0.0.12 (2019-10-09)

  • Added support for checking Python versions.

  • get_argument_to_typevar now works with Python3.6 and Python3.7.

0.0.11 (2019-10-09)

  • Fix so that JSON schema definitions propagate through all composite schema.

0.0.10 (2019-10-08)

  • JSON schema package now has tools for working with references/definitions.

  • Configurations now validate additional properties as JSON by default.

0.0.9 (2019-10-04)

  • Added StrictConfiguration, which disables additional properties by default.

  • Minor fixes.

0.0.8 (2019-09-19)

  • Fixed bug in get_argument_to_typevar.

  • Added new property type for configurations, MapProperty, which behaves like a dict from strings to some sub-property type.

  • Configurations now support: validation of additional properties, initialisation by value or JSON, programmatically getting/setting additional properties.

0.0.7 (2019-09-18)

  • Added meta package for typing functionality.

0.0.6 (2019-09-17)

  • Fixed bug where Absent was being validated after Property.validate_value had checked it, and therefore failing.

0.0.5 (2019-09-17)

  • Added interfaces for serialising/deserialising JSON using custom representations.

  • Added exception package to meta package for processing exceptions. Currently only contains ExceptionChainer, which captures exceptions as a context-manager and then provides methods for processing them.

  • Added utility interface JSONValidatedBiserialisable.

  • Refactored configurations and properties to be more understandable.

  • Added AnyOfProperty.

0.0.4 (2019-09-13)

  • Two new iterable functions, all_meet_predicate and any_meets_predicate.

  • Added meta-functions for determining if methods in base-classes have been overridden by sub-classes.

  • Rejigged abc package.

  • Added JSON package, with tools for working with JSON and JSONSchema. Also specifies the configuration class, which allows for easy manipulation of JSON files in an object-oriented manner.

0.0.3 (2019-08-30)

  • Added load_dir function to file package, which can load all files in a directory.

  • Added is_hashable to test if an object is hashable.

  • Added Interval class representing intervals on the number line.

  • Added exception InvalidStateError for classes that get into an invalid setup.

  • Added typing module for type-related functionality.

  • Added first, which finds the first element of an iterable to match a predicate.

  • Added statistics package with quartile functions.

  • Added random, which returns the elements of an iterator in random order.

  • Added meta package, with functions to set and retrieve arbitrary meta-data against objects.

  • Added ConstantIterator class, which returns the same value over and over again.

  • Added metadata module to iterate, for working with metadata in iterables of objects.

  • Modified TwoWayDict so type-inference works with Python-3.7.

0.0.2 (2019-08-09)

  • Removed restriction that switch only work with enums. Now can switch on any type. Onus is on the user to handle modifications of the switched value during switching.

  • Added abc package, with utilities for working with abstract classes/methods.

  • Added decorator package, with custom decorators.

0.0.1 (2019-08-09)

  • Initial release

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wai_common-0.0.46.tar.gz (109.6 kB view details)

Uploaded Source

File details

Details for the file wai_common-0.0.46.tar.gz.

File metadata

  • Download URL: wai_common-0.0.46.tar.gz
  • Upload date:
  • Size: 109.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for wai_common-0.0.46.tar.gz
Algorithm Hash digest
SHA256 3f8043547bafadf3cb11d612c51f5e0af7d0f4823911e5a066025d8a9bc29f01
MD5 ed42a29f2267b97235314ec0c78c38d8
BLAKE2b-256 27b2c622910747625ec6dd7d241b0b29e5e5efe352dcb44c5f73ceea721a9d22

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.0.46 This release

1 file

0.0.45

1 file

0.0.44

1 file

0.0.43

1 file

0.0.42

1 file

0.0.41

1 file

0.0.40

1 file

0.0.39

1 file

0.0.38

1 file

0.0.37

1 file

0.0.36

1 file

0.0.35

1 file

0.0.34

1 file

0.0.33

1 file

0.0.32

1 file

0.0.31

1 file

0.0.30

1 file

0.0.29

1 file

0.0.28

1 file

0.0.27

1 file

0.0.26

1 file

0.0.25

1 file

0.0.24

1 file

0.0.23

1 file

0.0.22

1 file

0.0.21

1 file

0.0.20

1 file

0.0.19

1 file

0.0.18

1 file

0.0.17

1 file

0.0.16

1 file

0.0.15

1 file

0.0.14

1 file

0.0.13

1 file

0.0.12

1 file

0.0.11

1 file

0.0.10

1 file

0.0.9

1 file

0.0.8

1 file

0.0.7

1 file

0.0.6

1 file

0.0.5

1 file

0.0.4

1 file

0.0.3

1 file

0.0.2

1 file

0.0.1

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page