Skip to content

Commit

Permalink
Initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
underyx committed May 29, 2019
0 parents commit be45eb7
Show file tree
Hide file tree
Showing 19 changed files with 551 additions and 0 deletions.
41 changes: 41 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# Docs: https://circleci.com/docs/2.0/language-python/
version: 2
jobs:
build:
docker:
- image: kiwicom/tox:3.7

working_directory: ~/repo

steps:
- checkout

- restore_cache:
keys:
- v1-dependencies-{{ checksum "requirements.txt" }}
- v1-dependencies-

- run:
name: Install Alpine dependencies
command: apk add --no-cache curl findutils git

- run:
name: Install Python dependencies
command: pip install coverage

- run:
name: Create tox environments
command: tox --notest

- save_cache:
paths:
- ./.tox
key: v1-dependencies-{{ checksum "requirements.txt" }}

- run:
name: Run tests with tox
command: tox

- run:
name: Report coverage to codecov
command: bash <(curl -s https://codecov.io/bash)
12 changes: 12 additions & 0 deletions .coveragerc
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
[run]
branch = True
source =
kw.platform

[paths]
source =
kw/platform
.tox/*/lib/python*/site-packages/kw/platform

[report]
show_missing = True
185 changes: 185 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,185 @@
#### joe made this: http://goel.io/joe

#####=== Linux ===#####
*~

# KDE directory preferences
.directory

# Linux trash folder which might appear on any partition or disk
.Trash-*

#####=== OSX ===#####
.DS_Store
.AppleDouble
.LSOverride

# Icon must end with two \r
Icon


# Thumbnails
._*

# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns

# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk

#####=== Windows ===#####
# Windows image file caches
Thumbs.db
ehthumbs.db

# Folder config file
Desktop.ini

# Recycle Bin used on file shares
$RECYCLE.BIN/

# Windows Installer files
*.cab
*.msi
*.msm
*.msp

# Windows shortcuts
*.lnk

#####=== VisualStudioCode ===#####
.settings


#####=== Vim ===#####
[._]*.s[a-w][a-z]
[._]s[a-w][a-z]
*.un~
Session.vim
.netrwhist
*~

#####=== JetBrains ===#####
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio

*.iml

## Directory-based project format:
.idea/
# if you remove the above rule, at least ignore the following:

# User-specific stuff:
# .idea/workspace.xml
# .idea/tasks.xml
# .idea/dictionaries

# Sensitive or high-churn files:
# .idea/dataSources.ids
# .idea/dataSources.xml
# .idea/sqlDataSources.xml
# .idea/dynamic.xml
# .idea/uiDesigner.xml

# Gradle:
# .idea/gradle.xml
# .idea/libraries

# Mongo Explorer plugin:
# .idea/mongoSettings.xml

## File-based project format:
*.ipr
*.iws

## Plugin-specific files:

# IntelliJ
/out/

# mpeltonen/sbt-idea plugin
.idea_modules/

# JIRA plugin
atlassian-ide-plugin.xml

# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties

#####=== Python ===#####

# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class

# C extensions
*.so

# Distribution / packaging
.Python
env/
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
*.egg-info/
.installed.cfg
*.egg

# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec

# Installer logs
pip-log.txt
pip-delete-this-directory.txt

# Unit test / coverage reports
htmlcov/
.tox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*,cover

# Translations
*.mo
*.pot

# Django stuff:
*.log

# Sphinx documentation
docs/_build/

# PyBuilder
target/

#####=== Custom ===#####

.env
env
.cache
.mypy_cache
2 changes: 2 additions & 0 deletions .isort.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[settings]
known_third_party = setuptools
30 changes: 30 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
repos:
- repo: https://github.com/ambv/black
rev: 19.3b0
hooks:
- id: black
language_version: python3.7

- repo: https://gitlab.com/pycqa/flake8
rev: 3.7.7
hooks:
- id: flake8
language_version: python3.7

- repo: https://github.com/asottile/seed-isort-config
rev: v1.7.0
hooks:
- id: seed-isort-config

- repo: https://github.com/pre-commit/mirrors-isort
rev: v4.3.16
hooks:
- id: isort
language_version: python3.7

- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v2.1.0
hooks:
- id: trailing-whitespace
- id: end-of-file-fixer
- id: debug-statements
7 changes: 7 additions & 0 deletions AUTHORS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Credits

The `kiwi-platform-py` project is owned by the Software Platform Squad at Kiwi.com.
The interim maintainer, until the project reaches maturity, is [Bence Nagy (underyx)](https://underyx.me).

A full list of contributors can be found on [GitHub's Contributors page](https://github.com/kiwicom/kiwi-platform-py/graphs/contributors)
or you can obtain it on your own by running `git shortlog -sn`.
10 changes: 10 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).

## 0.1.0 (2019-05-29)

- Initial release, with a completely empty package.
55 changes: 55 additions & 0 deletions LICENSE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Blue Oak Model License

Version 1.0.0

## Purpose

This license gives everyone as much permission to work with
this software as possible, while protecting contributors
from liability.

## Acceptance

In order to receive this license, you must agree to its
rules. The rules of this license are both obligations
under that agreement and conditions to your license.
You must not do anything with this software that triggers
a rule that you cannot or will not follow.

## Copyright

Each contributor licenses you to do everything with this
software that would otherwise infringe that contributor's
copyright in it.

## Notices

You must ensure that everyone who gets a copy of
any part of this software from you, with or without
changes, also gets the text of this license or a link to
<https://blueoakcouncil.org/license/1.0.0>.

## Excuse

If anyone notifies you in writing that you have not
complied with [Notices](#notices), you can keep your
license by taking all practical steps to comply within 30
days after the notice. If you do not do so, your license
ends immediately.

## Patent

Each contributor licenses you to do everything with this
software that would otherwise infringe any patent claims
they can license or become able to license.

## Reliability

No contributor can revoke this license.

## No Liability

***As far as the law allows, this software comes as is,
without any warranty or condition, and no contributor
will be liable to anyone for any damages related to this
software or this license, under any kind of legal claim.***
10 changes: 10 additions & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
include *.md
include *.toml
include *.txt
include *.yaml

include .coveragerc
include .isort.cfg
include tox.ini

graft .circleci
26 changes: 26 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# kiwi-platform-py

[![CircleCI](https://circleci.com/gh/kiwicom/kiwi-platform-py.svg?style=svg)](https://circleci.com/gh/kiwicom/kiwi-platform-py)
[![codecov](https://codecov.io/gh/kiwicom/kiwi-platform-py/branch/master/graph/badge.svg)](https://codecov.io/gh/kiwicom/kiwi-platform-py)
[![Codacy Badge](https://api.codacy.com/project/badge/Grade/7594931404704cdc88d214f6b8898735)](https://www.codacy.com/app/bence/kiwi-platform-py?utm_source=github.com&utm_medium=referral&utm_content=kiwicom/kiwi-platform-py&utm_campaign=Badge_Grade)
[![GitHub tag (latest SemVer)](https://img.shields.io/github/tag/kiwicom/kiwi-platform-py.svg)](https://github.com/kiwicom/kiwi-platform-py/tags)

![PyPI - Python Version](https://img.shields.io/pypi/pyversions/kiwi-platform.svg)
[![Code style: black](https://img.shields.io/badge/code%20style-black-black.svg)](https://github.com/ambv/black)

Company standards as code for Kiwi.com

## Installation

Install with `pip install kiwi-platform`.

## Contributing

1. Check for open issues or open a fresh issue to start a discussion
2. Fork [the repository](https://github.com/kiwicom/kiwi-platform-py) on GitHub.
3. Send a pull request with your code!

Merging will require a test which shows that the bug was fixed,
or that the feature works as expected.
Feel free to open a draft pull request though without such a test
and ask for help with writing it if you're not sure how to.
1 change: 1 addition & 0 deletions kw/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
__import__("pkg_resources").declare_namespace(__name__)

0 comments on commit be45eb7

Please sign in to comment.