Skip to content

Commit

Permalink
Travis Fix, Github Actions, heroku fix (#432)
Browse files Browse the repository at this point in the history
* Travis Fix, Github Actions, heroku fix
- Fix travis-ci
- Add github actions ci
- Remove 2.7, 3.5 from ci
- Add 3.6, 3.7, 3.8, 3.9 to ci
- Various requirements changes to support current python & fix tests
- Fix flake8 errors
- Bumped Heroku to python-3.9.2. I tested heroku with 3.6, 3.7, 3.8, 3.9 all with the new slack_update and it worked.

Travis is migrating away from travis-ci.org to travis-ci.com and changing how the free tier works. I would support moving away from travis and embracing github actions. But it doesn't hurt anything to run both for now.

* Removed duplicate comment

* Removed redundant pip installs

* - Pin natural to github version
- exclude flake8 for natural

* Pin natural to github commit
  • Loading branch information
pastorhudson authored Mar 24, 2021
1 parent 0a97d93 commit df52582
Show file tree
Hide file tree
Showing 9 changed files with 51 additions and 16 deletions.
26 changes: 26 additions & 0 deletions .github/workflows/python-app.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: Python package

on:
- push
- pull_request

jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [3.6, 3.7, 3.8, 3.9]

steps:
- uses: actions/checkout@v1
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r will/requirements/dev.txt
pip install tox-gh-actions
- name: Test with tox
run: tox
5 changes: 2 additions & 3 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
dist: xenial
language: python
python:
- '2.7'
- '3.4'
- '3.5'
- '3.6'
- '3.7'
- '3.8'
- '3.9'
sudo: false
services:
- docker
Expand Down
2 changes: 1 addition & 1 deletion runtime.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
python-2.7.3
python-3.9.2
2 changes: 1 addition & 1 deletion setup.py
100755 → 100644
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@

tests_require = [
'mock',
'pytest==4.6.6',
'pytest==6.2.2',
'pytest-cov',
'pytest-runner',
'pytest-mock',
Expand Down
11 changes: 9 additions & 2 deletions tox.ini
Original file line number Diff line number Diff line change
@@ -1,6 +1,13 @@
[tox]
envlist = py27, py34, py35, py36, py37
envlist = py36, py37, py38, py39

[gh-actions]
python =
2.7: py27
3.6: py36
3.7: py37
3.8: py38, mypy
3.9: py39

[testenv]
deps =
Expand All @@ -9,4 +16,4 @@ deps =
-rrequirements.txt
commands =
python setup.py test
flake8
flake8 --extend-exclude=./src/natural/*
1 change: 0 additions & 1 deletion will/plugins/productivity/remind.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@ def remind_me_at(self, message, reminder_text=None, remind_time=None, to_string=
formatted_to_string = ""
formatted_reminder_text = "%(mention_handle)s, you asked me to remind you%(to_string)s %(reminder_text)s" % {
"mention_handle": message.sender.mention_handle,
"from_handle": message.sender.handle,
"reminder_text": reminder_text,
"to_string": formatted_to_string,
}
Expand Down
16 changes: 9 additions & 7 deletions will/requirements/base.txt
Original file line number Diff line number Diff line change
@@ -1,27 +1,29 @@
APScheduler==2.1.2
beautifulsoup4==4.6.0
bottle==0.12.7
CherryPy==3.6.0
bottle==0.12.19
CherryPy==8.9.1
clint==0.5.1
dill==0.3.3
dnspython==1.15.0
fuzzywuzzy==0.15.1
Jinja2==2.7.3
Markdown==2.3.1
Markdown==3.3.4
MarkupSafe==0.23
# Pin natural to repo since release is not updated
-egit+git://github.com/tehmaze/natural.git@4d41ed6708965420ad884339e0e9ca5f089b2202#egg=natural
# Temporary fork of natural, until python 3 support is merged: https://github.com/tehmaze/natural/pull/13
# natural==0.2.1
will-natural==0.2.1.1
# will-natural==0.2.1.1
parsedatetime==1.1.2
python-Levenshtein==0.12.1
pyasn1-modules==0.0.5
pyasn1==0.1.7
pycrypto==2.6.1
pygerduty==0.28
pytz==2017.2
PyYAML==3.13
pytz==2021.1
PyYAML==5.4.1
regex==2017.9.23
redis==2.10.6
requests==2.25.0
six==1.15.0
urllib3==1.25.10
websocket-client==0.44.0
2 changes: 1 addition & 1 deletion will/requirements/dev.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ nose
coverage
yappi
tox
pytest==4.6.6
pytest==6.2.2
pytest-cov
pytest-mock
freezegun
2 changes: 2 additions & 0 deletions will/tests/test_plugin.py
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,8 @@ def test_get_backend_service_as_parameter(message, plugin, io_backend, all_io_ba
# freeze_time to mock datetime.datetime.now() method which is invoked
# when creating an event or message.
# https://github.com/spulec/freezegun


@freeze_time(WILLS_BIRTHDAY)
def test_say_with_room_arg(plugin, content, say_event, source_message, outgoing_topic):
room = "test"
Expand Down

0 comments on commit df52582

Please sign in to comment.