Commit Graph

1430 Commits

Author SHA1 Message Date
kennethreitz 590d10ea60 Merge remote-tracking branch 'origin/master' 2017-08-31 13:18:37 -04:00
kennethreitz 4723abb896 Pipenv Updates (#458)
* fixed the bug for pypy-5.8.0

* update pipenv support

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>
2017-08-31 13:18:26 -04:00
kennethreitz 98b2c904c3 Merge remote-tracking branch 'origin/master' v112 2017-08-28 13:41:47 -04:00
kennethreitz 155b5eecb9 Grep bug fix (#456)
* fixed the bug for pypy-5.8.0

* changelog entry

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* use std-lib sub-env

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* let's see if this cleans things up

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* try v7 of stdlib

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* use new sub_env

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* set_env

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* set_default_env

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* v8 of stdlib

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* v112

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* oops (merge bug)

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* final merge error resolve

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* final final fix for merge conflict

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>
2017-08-28 13:41:32 -04:00
kennethreitz fb52d1bf59 Merge remote-tracking branch 'origin/master' v111 2017-08-28 13:24:32 -04:00
kennethreitz 845635d667 Changelog (#454)
* fixed the bug for pypy-5.8.0

* changelog entry

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>
2017-08-24 17:28:25 -04:00
kennethreitz 12c1d0b1d2 Merge remote-tracking branch 'origin/master' 2017-08-15 22:19:31 -07:00
Samuel Spencer 0c26eae214 Allow environment variables during pip install, fixes #416 (#417)
* Allow environment variables during pip install, fixes #416

* shift sub-env command, fix typo

* bash check thingy fixed
2017-08-12 02:55:15 -04:00
Jeremy Morrell 325a3165e4 Remove leading zeros from WEB_CONCURRENCY (#446)
* Remove leading zeros from `WEB_CONCURRENCY`

* fix DYNO_RAM (from node buildpack)

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>
2017-08-10 14:42:45 -04:00
Ed Morley bf378916af Speed up the multi-stage Travis run (#443)
Reduces the impact on Travis runtime caused by #438, by:
* Making the shellcheck job run on the container infra (`sudo: false`)
  which has faster boot times.
* Running the heroku-16 and cedar-14 stack tests in parallel, since
  previously they were separate stages (which are run in series by
  design).

Reduces Travis end-to-end time from ~10 minutes to ~6 minutes.
2017-08-10 14:29:15 -04:00
kennethreitz 38dbb17313 Merge remote-tracking branch 'origin/master' 2017-08-09 14:17:07 -04:00
Ed Morley c029e44dc8 Improve UX when clearing cache due to the stack changing (#442)
* Test that the cache is invalidated when the stack changes

* Improve UX when clearing cache due to the stack changing

Now outputs a message informing that the cache was cleared, and
clears the cache first to avoid a redundant message about removing
an old Python version.
2017-08-07 21:23:23 -04:00
kennethreitz 0dd9911e91 Merge remote-tracking branch 'origin/master' 2017-08-03 17:38:27 -04:00
kennethreitz f74d4db8c5 Shellcheck Compliance (#438)
* fixed the bug for pypy-5.8.0

* enable shellcheck in makefile

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* make compile script shellcheck compatible

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* let's see what this says

* fix pip installation

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* shellcheck detect script

* shellcheck release

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* shellcheck test-compile

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* shellcheck warnings/utils

* updated makefile

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* shellcheck collectstatic

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* shellcheck cryptography

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* shellcheck eggpath fixes

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* shellcheck gdal

* shellcheck goes-libs

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* shellcheck mercurial

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* nltk shellcheck

* shellcheck pip-install

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* shellcheck pip-uninstall

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* shellcheck pipenv

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* shellcheck pylibmc

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* shellcheck python

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* update makefile

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* final update to makefile

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* fix tests

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* actually fix the tests

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* update pipenv-python-version

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* requested fixes

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* update spellcheck sources

* attempted fix for shell globbing

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* further attempted fix

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* switch nltk styling

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* no more need for temp app for installing pip

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* attempt at staged build for shellcheck

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* attempted fix of travis file

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* reorder travis file

* add shellcheck to install

* make things clearer in travis file

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* better travis file

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* attempt at better travis file

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* better travis file

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>
2017-08-03 17:36:23 -04:00
kennethreitz 2b00650c01 Merge remote-tracking branch 'origin/master' 2017-08-02 20:01:12 -04:00
kennethreitz 2512694df9 Geos tests (#437)
* fixed the bug for pypy-5.8.0

* cleanup makefile

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* allow builds to happen when capitalization is used

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* restore behavior

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>

* make makefile default to heroku-16

* test geos libraries

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>
2017-08-02 19:59:44 -04:00
kennethreitz d380d949b7 Merge branch 'master' of https://git.heroku.com/python-builder-cedar-14 2017-08-01 14:38:14 -04:00
Johannes Hoppe f289984061 Update GDAL version to 1.11.5 (#432)
* Update GDAL version to 1.11.5

Update GDAL to latest bugfix release, see
http://trac.osgeo.org/gdal/wiki/Release/1.11.5-News

* Use pushd and popd in favor of cd
2017-08-01 14:33:23 -04:00
kennethreitz 1d37749ec1 fixed the bug for pypy-5.8.0 (#431) 2017-07-31 19:27:48 -04:00
kennethreitz d6ccb1aa57 fixed the bug for pypy-5.8.0 2017-07-31 19:08:15 -04:00
Josh Friend da13bf1f3d Add pypy2-5.8.0 (#430) 2017-07-31 18:46:43 -04:00
Ed Morley 78767e7199 Exclude Python's test suite from generated Python archives (#425)
This copies the official Docker Python images approach of stripping
the Python test suite after building from source.

For Python 3.6.2 this reduces the output from 184MB to 121MB and
removes the following directories:
```
.heroku/python/lib/python3.6/tkinter/test
.heroku/python/lib/python3.6/ctypes/test
.heroku/python/lib/python3.6/unittest/test
.heroku/python/lib/python3.6/distutils/tests
.heroku/python/lib/python3.6/sqlite3/test
.heroku/python/lib/python3.6/lib2to3/tests
.heroku/python/lib/python3.6/test
```

For Python 2.7.13 this reduces the output from 127MB to 91MB and
removes the following directories:
```
.heroku/python/lib/python2.7/ctypes/test
.heroku/python/lib/python2.7/unittest/test
.heroku/python/lib/python2.7/distutils/tests
.heroku/python/lib/python2.7/bsddb/test
.heroku/python/lib/python2.7/lib-tk/test
.heroku/python/lib/python2.7/sqlite3/test
.heroku/python/lib/python2.7/lib2to3/tests
.heroku/python/lib/python2.7/json/tests
.heroku/python/lib/python2.7/email/test
.heroku/python/lib/python2.7/test
```

Fixes #424.
2017-07-17 13:00:47 -04:00
kennethreitz 194932889d Python 3.6.2 (#423)
* pypy3-5.8.0

* updated cpython to 3.6.2

* update README to reflect new Python version
v110
2017-07-17 12:35:26 -04:00
Josh Friend 4293ec5564 Add CPython 3.6.2 (#422) 2017-07-17 11:48:05 -04:00
kennethreitz 57baab9f68 Update README.md (#415) 2017-06-20 10:43:51 -07:00
kennethreitz a7c20eea42 Python 3 default for buildpack (#409)
* update default python to 3.6.1

* v110

* nltk python2
v109
2017-06-20 09:14:01 -07:00
kennethreitz 0a4cc2c476 pypy3-5.8.0 (#414) 2017-06-15 15:54:40 -04:00
Ed Morley cbb718bb8b Fix pip uninstall by moving it prior to pip install (#413)
The pip-uninstall step stopped working when it was moved to after
the pip-install step in f27a84e.

This regression was temporarily fixed by part of #397, however that
PR was reverted in #404.

Adds a test to hopefully catch any future regressions :-)

Fixes #393.
2017-06-14 17:15:52 -04:00
kennethreitz db95cdd3f3 new pylibmc test (#408) v108 2017-06-05 13:47:48 -04:00
kennethreitz 04f3ddbc86 updates (#407)
* silently use sp-grep

* history

* update license
2017-06-05 13:34:15 -04:00
kennethreitz f06f5676e8 silently use sp-grep (#406) 2017-06-05 13:31:57 -04:00
kennethreitz c8c8995d70 Next version (#405)
* python 3.5.3

* v108

* new setuptools version

* removed unneeded variable
v107
2017-06-03 17:51:44 -04:00
kennethreitz 4ee3baaded Revert "Don't install packages that could mess packaging up" (#404)
* Revert "Fix pyyaml (#402)"

This reverts commit ff94908505.

* Revert "Don't install packages that could mess packaging up (#397)"

This reverts commit 5496c02f9f.
2017-06-03 17:36:19 -04:00
kennethreitz ff94908505 Fix pyyaml (#402)
* Revert "use pkg_resources to check for distributions (#395)"

This reverts commit 9b185f99d5.

* use sp-grep for django detection

* sp-grep

* fix setuptools script
v106
2017-06-02 15:23:05 -04:00
kennethreitz 5496c02f9f Don't install packages that could mess packaging up (#397)
* updated changelog

* remove setuptools sanity check

* update changelog

* pip-clean

* changelog note

* refactor codebase to improve package name detection

* fix version string

* cleanup

* add messaging, improve execution

* do uninstall first
2017-05-30 20:03:57 -04:00
Ed Morley 8d6d14b671 Update to bob-builder v0.0.13 (#399)
The recent fixes on bob-builder master have now been released.
2017-05-30 19:50:05 -04:00
kennethreitz 98dc586a99 Setuptools (#396)
* updated changelog

* remove setuptools sanity check
2017-05-30 11:36:10 -04:00
David Lord 9b185f99d5 use pkg_resources to check for distributions (#395)
more accurate than parsing requirements.txt
fixes #359
2017-05-30 11:05:33 -04:00
kennethreitz e8a79bbda5 fix for heroku ci (#392)
* attempted fix

* added a comment

* fixes

* improved changelog
2017-05-26 07:22:52 -07:00
Ed Morley e621ff4d5e Improve the workflow for generating binaries for Heroku-16 (#387)
* Updates bob-builder to a version that clears out the previous
  build directory, which prevents the stale files seen in #379.
* Adds a `buildenv-heroku-16` Make command to simplify the
  building and use of the Heroku-16 binary build environment.
* Sets `S3_BUCKET` and `S3_PREFIX` in the Docker image, to save
  having to do so manually each time.
* Removes the duplication of the bob-builder dependency between
  `Dockerfile` and `requirements.txt`.
* Disables the pip version check during Docker build, to avoid the
  noisy stderr warning about Ubuntu 16.04 pip being older (v8.1.1).
* Adds a `.dockerignore` to speed up the Docker build, by reducing
  the build context transferred to the daemon from 60MB to 2MB.
* Applies some Dockerfile best practices like disabling/removing
  cached files (since layer invalidation makes caching pointless).
2017-05-25 11:55:57 -07:00
Ed Morley 7a579e4eb7 Make assertCapturedSuccess display stdout if stderr was empty (#390)
In cases where there is no stderr there was previously no output,
which made it hard to find the cause. The assertion messages have
also been adjusted to remove the repetition (shunit2 already outputs
expected vs actual itself).

Before:
```
testPipenv
ASSERT:Expected captured exit code to be 0; was <2> expected:<0> but was:<2>
testPipenvVersion
```

After:
```
testPipenv
ASSERT:Captured exit code - expected:<0> but was:<2>
 !     Warning: Your application is missing a Procfile. This file tells Heroku how to run your application.
 !     Learn more: https://devcenter.heroku.com/articles/procfile
-----> Installing python-2.7.13
-----> Installing pip
-----> Generating 'requirements.txt' with pipenv

testPipenvVersion
```

Fixes #389.
2017-05-25 11:46:09 -07:00
kennethreitz a1ed1d7b42 Faster pipenv (#385)
* skip pip install for pipenv

* better

* improvements

* indent

* chmod +x

* export

* skip uninstall too

* pip freeze

* Revert "skip uninstall too"

This reverts commit faac96f62004f78c3d27a92cd865954fc7a3a53d.

* better comments

* redirect stderr to stdout
2017-05-25 10:55:01 -07:00
kennethreitz 9157111d44 Update README.md (#384) 2017-05-11 15:02:16 -04:00
Kaelan Thijs Fouwels 48f67ac5a6 Add runtime for python3 version of pypy 3.7.1 (#383) 2017-05-11 12:57:47 -04:00
kennethreitz f6d63ea53d chmod formula (#382) 2017-05-11 12:42:47 -04:00
Josh Friend 668219ae59 Add PyPy-5.7.1 (#370) 2017-05-11 12:10:13 -04:00
Ed Morley 18c404f72d Restore the build cache prior to running bin/pre_compile (#372)
So that any changes made to `.heroku/` within pre_compile (such as
installing additional libraries required for the later pip install) are
not clobbered by the cache being copied over afterwards.

Fixes #320.
2017-05-05 15:54:59 -04:00
kennethreitz 84f2fb5396 update python.gunicorn.sh to WEB_CONCURRENCY.sh (#373)
* update python.gunicorn.sh to WEB_CONCURRENCY.sh

* don't remove WEB_CONCURRENCY for prefixed 0s

* split gunicorn functionality into its own file

* cleanup comments

* fix var ordering

* add retry to curl

* use proper url for buildpack stdlib
2017-05-05 14:28:00 -04:00
kennethreitz d39b8c19b2 basics of metrics (#374)
* basics of metrics

* pin to stdlib v2

* measure python installation size

* lots of additional metrics

* add old output methods

* $

* empty commit
2017-05-03 14:15:03 -04:00
kennethreitz 9a24c9d17d don't unset DYNO (we're running on Heroku) (#371)
* don't unset DYNO (we're running on Heroku)

Fixes #280

* blacklist STACK env var for subshells
2017-04-25 10:27:57 -04:00