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-20240409.tar.gz (10.8 kB view details)

Uploaded Source

Built Distribution

ews_core_config-20240409-py3-none-any.whl (8.8 kB view details)

Uploaded Python 3

File details

Details for the file ews_core_config-20240409.tar.gz.

File metadata

  • Download URL: ews_core_config-20240409.tar.gz
  • Upload date:
  • Size: 10.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.9

File hashes

Hashes for ews_core_config-20240409.tar.gz
Algorithm Hash digest
SHA256 779e5836394d4e65dd2a8a08cae94a25d9b7ab21d6a22fcedd88090fe9f352fb
MD5 ed7d5814faedbbf23fbd5c76ad0f411e
BLAKE2b-256 2b0c4838b78f695c0ec7f10fdf5ea4415dc2a322a72e313a46c78ca739a2f12b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ews_core_config-20240409-py3-none-any.whl
Algorithm Hash digest
SHA256 727cc6bc97d885ce62273f8a9998523b93eadac4c48ea1d0bcdd02202df35a4c
MD5 36f79f716fafdee3ac75a1b1635ca332
BLAKE2b-256 ce6fc72f6d090fe903d80545ac76a339deb0fbe4bd31a3bbd0cef6010cc2e3d7

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