Skip to main content

A simple TOML configuration for EWS settings

Project description

ews-core-config

PyPI version PyPI - License PyPI - Python Version PyPI - Wheel

Ruff Precommit

Installation

Install with

pipx install ews-core-config[cli]

What does it do

It looks for a .ews_config.toml file in your home directory.

See an example configuration in this discussion.

The default config is found in the file config.py.

Usage

Libraries developed by EWS Consulting can require this package as an optional dependency under the extra ews.

This can be done in the pyproject.toml file.

[project.optional-dependencies]
ews = ["ews-core-config"]

This installation will be like:

pip install ews-my-awesome-library[ews]

Then, in the code:

import contextlib
with contextlib.suppress(ImportError):
    from ews_core_config.config import read_settings
    read_settings()
my_password = os.getenv("EWS_SHAREPOINT_USERNAME", "")

This will read your config file and set all the environment variables.

For instance, other libraries (like the one used to retrieve files on our SharePoint) will have access to the env. variable EWS_SHAREPOINT_USERNAME and EWS_SHAREPOINT_PASSWORD.

Alternatively, you can directly retrieve the settings from the module.

from ews_core_config.config import read_settings
EWSSettings = read_settings()
username = EWSSettings.sharepoint_username
assert username != "", "Please set your SharePoint user name!"

This is not the preferred way. Indeed, it might be easier to refractor libraries to make them independent of our library if they just use environment variables.

Installation with pipx

pipx install .[cli] --editable --force

Project details


Download files

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

Source Distribution

ews-core-config-20240311.1.tar.gz (10.4 kB view details)

Uploaded Source

Built Distribution

ews_core_config-20240311.1-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

Details for the file ews-core-config-20240311.1.tar.gz.

File metadata

  • Download URL: ews-core-config-20240311.1.tar.gz
  • Upload date:
  • Size: 10.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.8

File hashes

Hashes for ews-core-config-20240311.1.tar.gz
Algorithm Hash digest
SHA256 4bf2d411ccec97ef0556723356feb255440f2f5387cec676f305b18ee615e4bd
MD5 290d10629214143ef373c7bdf230f3c3
BLAKE2b-256 d42ea958686403b4e94ce69f78edf8118d1b52095b81938e6c486833c5c548de

See more details on using hashes here.

File details

Details for the file ews_core_config-20240311.1-py3-none-any.whl.

File metadata

File hashes

Hashes for ews_core_config-20240311.1-py3-none-any.whl
Algorithm Hash digest
SHA256 eb1a29f2770f38fed68c74d3609f062b1573a1420413d3bb88b0c8a1435e3467
MD5 ab4c9b161b766649ef6e708bc1ca1fa3
BLAKE2b-256 9666e47fa7a2ed71722f15d6e6b92a53683f89b61af21a539182e6541ef472b2

See more details on using hashes here.

Supported by

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