semvec/pypi-packages huggingface dataset:
zeel-publisher 4.1.0
A package for publishing to SNS
Requires Python: ~=3.6.1

# Zeel Publisher

A Library meant to standardize the way zapi services interact with SNS/SQS.

# Getting Started

## Docker

The infrastructure of this library is designed to be run inside of various
docker containers. Specifically there is a container for:
- The python environment the library's code runs in
- A jaeger tracing instance
- The localstack AWS simulator

These containers can be viewed inside the project's docker-compose.yml

Because these containers are all needed to create a functioning local
environment, proceeding without docker is NOT recommended. It can be installed
using the docker for mac installer or via

`brew cask install docker`

## The pipenv Virtual Environment

This service's dependencies are all managed with
[https://github.com/pypa/pipenv](pipenv) and are enumerated inside the project's
Pipfile and Pipfile.lock files. Pipenv is a superset of Pip, and will create a
virtual python environment (the .venv folder) for this Service. To that end,
please ensure you have pipenv installed on your local machine.

`brew install pipenv`

### Configuring your Virtual Environment

To create a virtual environment (the .venv directory) inside your project folder
instead of your home (~) directory, save the following in your .bash_profile or .zshrc:

`export PIPENV_VENV_IN_PROJECT=1`

This is highly recommended for vscode users, as the project's linters and
formatters are configured to use binaries installed to a local .venv

### Running the Library's tests on Docker

Although tests can be run locally, it is recommended to run them through docker,
where they will have access to the infrastructure they need. To do so you can
use this command:

`docker-compose run publisher-app bash test.sh`

# Modules

## Event Publisher

A Class meant for publishing Event Messages to a single SNS topic.

# Distribution

This Code is meant for distribution across multiple projects, namely our various
zapi services which require zeel-publisher as a dependency. The library itself
is hosted on PyPi and can be found at

https://pypi.org/project/zeel-publisher/

## Versioning

Zeel publisher versioning follows the [Semantic Versioning](https://docs.npmjs.com/about-semantic-versioning) syntax:

`Major.Minor.Patch`

Make sure to update setup.py accordingly before publishing a new version.

## Commands for uploading to PyPi

Create build - `pipenv run python3 setup.py sdist`
Publish - `pipenv run twine upload dist/*`
dragonfly-sync-lib 1.0.0
A library that facilitates transporting data around.

# :dragon_face: Dragonfly - A Python Data Translation Library

A library that facilitates data translation.

## Changelog

### v1.0.0

- Added unit tests
- New Sync API, which uses context managers within Sync
- Overall improvements to code readability

### v0.2.0

- Added "delete_flag" configuration parameter to flexibilize deletion detection in DefaultDataWriter
- Added method hints
django-geoaxis 0.0.2
A Django authentication backend for GeoAxIS

==============
django_geoaxis
==============

A Django authentication backend for `GeoAxIS <https://gxisaccess.nga.mil>`_ OAuth.


requirements
^^^^^^^^^^^^

.. code-block::

   pip install git+ssh://git@github.com:boundlessgeo/django-geoaxis.git#egg=django_geoaxis

local_settings.py (example)
^^^^^^^^^^^^^^^^^^^^^^^^^^^

.. code-block:: python

    import os
    from django.conf import settings

    def isValid(v):
        if v and len(v) > 0:
            return True
        else:
            return False

    SOCIAL_AUTH_NEW_USER_REDIRECT_URL = '/'
    DEFAULT_AUTH_PIPELINE = (
        'social_core.pipeline.social_auth.social_details',
        'social_core.pipeline.social_auth.social_uid',
        'social_core.pipeline.social_auth.auth_allowed',
        'social_core.pipeline.social_auth.social_user',
        'social_core.pipeline.user.get_username',
        'social_core.pipeline.mail.mail_validation',
        'social_core.pipeline.social_auth.associate_by_email',
        'social_core.pipeline.user.create_user',
        'social_core.pipeline.social_auth.associate_user',
        'social_core.pipeline.social_auth.load_extra_data',
        'social_core.pipeline.user.user_details'
    )
    SOCIAL_AUTH_GEOAXIS_KEY = os.getenv('OAUTH_GEOAXIS_KEY', None)
    SOCIAL_AUTH_GEOAXIS_SECRET = os.getenv('OAUTH_GEOAXIS_SECRET', None)
    SOCIAL_AUTH_GEOAXIS_HOST = os.getenv('OAUTH_GEOAXIS_HOST', None)
    OAUTH_GEOAXIS_USER_FIELDS = os.getenv(
        'OAUTH_GEOAXIS_USER_FIELDS', 'username, email, last_name, first_name')
    SOCIAL_AUTH_GEOAXIS_USER_FIELDS = map(
        str.strip, OAUTH_GEOAXIS_USER_FIELDS.split(','))
    OAUTH_GEOAXIS_SCOPES = os.getenv('OAUTH_GEOAXIS_SCOPES', 'UserProfile.me')
    SOCIAL_AUTH_GEOAXIS_SCOPE = map(str.strip, OAUTH_GEOAXIS_SCOPES.split(','))
    ENABLE_GEOAXIS_LOGIN = isValid(SOCIAL_AUTH_GEOAXIS_KEY)
    if settings.SITEURL.startswith('https'):
        SOCIAL_AUTH_REDIRECT_IS_HTTPS = True
    # GeoAxisOAuth2 will cause all login attempt to fail if
    # SOCIAL_AUTH_GEOAXIS_HOST is None
    if ENABLE_GEOAXIS_LOGIN:
        settings.AUTHENTICATION_BACKENDS += (
            'django_geoaxis.backends.geoaxis.GeoAxisOAuth2',
        )

login template addition
^^^^^^^^^^^^^^^^^^^^^^^

Add the following to your login template.

.. code-block:: html

   {% if ENABLE_GEOAXIS_LOGIN %}
        <a class="btn-geoaxis btn-social btn bg-ms btn-block" href="{% url 'social:begin' 'geoaxis' %}?{{ redirect_field_name }}={{ redirect_field_value }}">
            <i class="fa fa-lock"></i> Log In with GeoAxis
        </a>