Skip to content
This repository has been archived by the owner on Apr 5, 2021. It is now read-only.

Commit

Permalink
updates for 0.8.2 release, incluing PyPi support
Browse files Browse the repository at this point in the history
  • Loading branch information
wpietri committed Dec 11, 2017
1 parent 5dcb819 commit f2690e0
Show file tree
Hide file tree
Showing 4 changed files with 31 additions and 59 deletions.
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,7 @@
__pycache__
Pipfile
Pipfile.lock
scratch*
.idea
build
dist
26 changes: 0 additions & 26 deletions Pipfile

This file was deleted.

32 changes: 12 additions & 20 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ Does it work for your model as well? Join the discussion on the
[sucks-users mailing
list](https://groups.google.com/forum/#!forum/sucks-users).

If you're curious about the protocol, I have [a rough doc](protocol.md)
If you're curious about the protocol, I have [a rough doc](http://github.com/wpietri/sucks/blob/master/protocol.md)
started. I'll happily accept pull requests for it.

Why the project name? Well, a) it's ridiculous that I needed to MITM
Expand All @@ -23,15 +23,14 @@ it's a vacuum.

## Installation

Check out this code, possibly create a virtualenv, and do
`pip install pipenv; pip install -e .`. If that doesn't work for
you, please [open an issue](https://github.com/wpietri/sucks/issues).
If you have a recent version of python, you should be able to
do `pip install sucks` to get the most recently released version of
this.

## Usage

To get started, you'll need to have already set up an EcoVacs account
using your smartphone. I've only tested this with Android, but I expect
it will work with iPhone-created accounts as well.
using your smartphone.

Step one is to log in:
```
Expand All @@ -44,7 +43,8 @@ Step one is to log in:
```

That creates a config file in ~/.config.sucks.conf. The password is
hashed before saving, so it's reasonably safe.
hashed before saving, so it's reasonably safe. (If it doesn't appear
to work for your continent, try "ww", their world-wide catchall.)

With that set up, you could have it clean in auto mode for 10 minutes
and return to its charger:
Expand Down Expand Up @@ -83,7 +83,7 @@ so it also has a mode where it randomly decides to run or not based on
a frequency you give it. My crontab entry looks like this:

```
0 10 * * * /home/william/projects/sucks/sucks clean -f 4/7 15 edge -f 1/14 10
0 10 * * * /home/william/projects/sucks/sucks.sh clean -f 4/7 15 edge -f 1/14 10
```

This means that every day at 10 am, it might do something. 4 days out
Expand Down Expand Up @@ -118,9 +118,9 @@ vacbot.run(Charge()) # return to the charger
## Developing

If you'd like to join in on developing, I recommend checking out the code,
doing `pipenv install` to set up a virtual environment, and then `pipenv shell`
to start using it. You can run the existing tests using `nosetests`. Current
test are not yet comprehensive, as the integrated nature of this makes it difficult.
setting up a virtual environment, and doing `pip install -e .`. You can
run the existing tests using `nosetests`. Current test are not yet
comprehensive, as the integrated nature of this makes it difficult.
But I aim to reduce that problem over time, so please add tests as you go.


Expand All @@ -142,12 +142,4 @@ very helpful in figuring out what the Android app was up to,
experiments](https://community.smartthings.com/t/ecovacs-deebot-n79/93410/33)
with his device, and
* All the users who have given useful feedback and reported on how it is
working for them.





## To Do

* add a status commmand
working for them, and even contributed code.
27 changes: 14 additions & 13 deletions setup.py
Original file line number Diff line number Diff line change
@@ -1,24 +1,17 @@
from setuptools import setup, find_packages
from codecs import open
from os import path

from pipenv.project import Project
from pipenv.utils import convert_deps_to_pip

pfile = Project(chdir=False).parsed_pipfile
requirements = convert_deps_to_pip(pfile['packages'], r=False)
test_requirements = convert_deps_to_pip(pfile['dev-packages'], r=False)

from setuptools import setup, find_packages

here = path.abspath(path.dirname(__file__))

# Get the long description from the README file
with open(path.join(here, 'README.md'), encoding='utf-8') as f:
with open(path.join(here, 'README.rst'), encoding='utf-8') as f:
long_description = f.read()

setup(
name='sucks',
version='0.8.1',
version='0.8.2',

description='a library for controlling certain robot vacuums',
long_description=long_description,
Expand Down Expand Up @@ -60,20 +53,28 @@
# simple. Or you can use find_packages().
packages=find_packages(exclude=['contrib', 'docs', 'tests']),


# List run-time dependencies here. These will be installed by pip when
# your project is installed. For an analysis of "install_requires" vs pip's
# requirements files see:
# https://packaging.python.org/en/latest/requirements.html

install_requires=convert_deps_to_pip(pfile['packages'], r=False),
install_requires=[
'sleekxmpp>=1.3',
'click>=6',
'requests>=2.18',
'pycryptodome>=3.4',
'pycountry-convert>=0.5'
],

# List additional groups of dependencies here (e.g. development
# dependencies). You can install these using the following syntax,
# for example:
# $ pip install -e .[dev,test]
extras_require={
'dev': convert_deps_to_pip(pfile['dev-packages'], r=False),
'dev': [
'nose',
'requests-mock>=1.3'
],
},

# If there are data files included in your packages that need to be
Expand Down

0 comments on commit f2690e0

Please sign in to comment.