Clone this repo:
  1. 7e6d9c1 Remove obsolete Pyrefly suppression comments by Oleh Prypin · 6 days ago upstream/main
  2. d949076 Fix the type signature of skip_log_prefix to preserve the decorated function's return type. by Abseil Team · 7 days ago
  3. a742ec3 Release Abseil-py 2.5.0 by Abseil Team · 4 weeks ago v2.5.0
  4. f05ee36 Apply defensive programming in `save_flag_values` by copying the input. by Thibaut Cuvelier · 8 weeks ago
  5. 1275a98 Fix a new Mypy issue in absl-py by Matej Aleksandrov · 8 weeks ago

Package version Supported Python versions License Build Status Overall downloads Last month downloads

Abseil Python Common Libraries

This repository is a collection of Python library code for building Python applications. The code is collected from Google's own Python code base, and has been extensively tested and used in production.

Features

  • Simple application startup
  • Distributed commandline flags system
  • Custom logging module with additional features
  • Testing utilities

Getting Started

Installation

To install the package, simply run:

pip install absl-py

Or install from source:

pip install .

Running Tests

To run Abseil tests, you can clone the git repo and run bazel:

git clone https://github.com/abseil/abseil-py.git
cd abseil-py
bazel test absl/...

Please also validate the type annotations against the latest mypy:

pip install mypy
mypy absl

Example Code

Please refer to smoke_tests/sample_app.py as an example to get started.

Documentation

See the Abseil Python Developer Guide.

Future Releases

The current repository includes an initial set of libraries for early adoption. More components and interoperability with Abseil C++ Common Libraries will come in future releases.

License

The Abseil Python library is licensed under the terms of the Apache license. See LICENSE for more information.