CHANGELOG.md 8.26 KB
Newer Older
Kenneth Reitz's avatar
Kenneth Reitz committed
1 2
# Python Buildpack Changelog

3
# Master
Casey Faist's avatar
Casey Faist committed
4

Casey Faist's avatar
Casey Faist committed
5 6
- Sqlite3 Update:
  - Add Tests
7
- Bug fix: pipenv no longer installs twice on CI
Casey Faist's avatar
Casey Faist committed
8

Casey Faist's avatar
Casey Faist committed
9 10
--------------------------------------------------------------------------------

Casey Faist's avatar
Casey Faist committed
11 12 13 14
# 157 (2019-09-18)

- Typo fixes

Casey Faist's avatar
Casey Faist committed
15
# 156 (2019-09-12)
Casey Faist's avatar
Casey Faist committed
16

17
- Python 3.6.9 and 3.7.4 now available.
Casey Faist's avatar
Casey Faist committed
18

19 20
- Move get-pip utility to S3
- Build utility and documentation updates
Casey Faist's avatar
Casey Faist committed
21
- Bump Hatchet tests to point at new default python version.
Casey Faist's avatar
Casey Faist committed
22 23 24 25 26

# 155 (2019-08-22)

add docs and make target for heroku-18 bob builds

27 28 29 30
# 154 (2019-07-17)

Fix python 3.5.7 formula actually building 3.7.2

David Zuelke's avatar
David Zuelke committed
31 32 33 34
# 153 (2019-06-21)

Hotfix for broken heroku-16 deploys

Casey Faist's avatar
Casey Faist committed
35
# 152 (2019-04-04)
36 37 38 39

Python 3.7.3 now available.

# 151 (2019-03-21)
Casey's avatar
Casey committed
40 41 42

Python 3.5.7 and 3.4.10 now available on all Heroku stacks.

Casey's avatar
Casey committed
43 44 45 46
# 150 (2019-03-13)

Python 2.7.16 now available on all Heroku stacks.

Casey's avatar
Casey committed
47 48 49 50
# 149 (2019-03-04)

Hotfix for broken Cedar 14 deploys

Casey's avatar
Casey committed
51 52 53 54
# 148 (2019-02-21)

No user facing changes, improving internal metrics

55
# 147 (2019-02-07)
Casey Faist's avatar
Casey Faist committed
56 57 58

Python 3.7.2 and 3.6.8 now available on all Heroku stacks.

59
# 146 (2018-11-11)
60

Casey Faist's avatar
Casey Faist committed
61
Python 3.7.1, 3.6.7, 3.5.6 and 3.4.9 now available on all Heroku stacks.
62

63
# 145 (2018-11-08)
Casey Faist's avatar
Casey Faist committed
64 65 66

Testing and tooling expanded to better support new runtimes

Casey Faist's avatar
Casey Faist committed
67
# 144 (2018-10-10)
Casey Faist's avatar
Casey Faist committed
68 69 70 71

Switch to cautious upgrade for Pipenv install to ensure the pinned pip version
is used with Pipenv

Casey Faist's avatar
Casey Faist committed
72
# 143 (2018-10-09)
73 74 75 76

Add support for detecting SLUGIFY_USES_TEXT_UNIDECODE, which is required to
install Apache Airflow version 1.10 or higher.

Casey Faist's avatar
Casey Faist committed
77
# 142 (2018-10-08)
Casey Faist's avatar
Casey Faist committed
78 79 80

Improvements to Python install messaging

Casey Faist's avatar
Casey Faist committed
81 82 83 84
# 139, 140, 141

No user-facing changes, documenting for version clarity

85
# 138 (2018-08-01)
Casey Faist's avatar
Casey Faist committed
86 87 88

Use stack image SQLite3 instead of vendoring

89
# 137 (2018-07-17)
Terence Lee's avatar
Terence Lee committed
90 91 92

Prevent 3.7.0 from appearing as unsupported in buildpack messaging.

93
# 136 (2018-06-28)
94 95 96

Upgrade to 3.6.6 and support 3.7.0 on all runtimes.

97
# 135 (2018-05-29)
98 99 100

Upgrade Pipenv to v2018.5.18.

101
# 134 (2018-05-02)
Kenneth Reitz's avatar
Kenneth Reitz committed
102 103 104

Default to 3.6.5, bugfixes.

Kenneth Reitz's avatar
Kenneth Reitz committed
105 106 107 108
# 133

Fixes for Pip 10 release.

Kenneth Reitz's avatar
Kenneth Reitz committed
109 110 111 112
# 132

Improve pip installation, with the release of v9.0.2.

Kenneth Reitz's avatar
Kenneth Reitz committed
113 114 115 116
# 131

Fix bug with pip.

Kenneth Reitz's avatar
pip  
Kenneth Reitz committed
117 118 119 120
# 130

Better upgrade strategy for pip.

Kenneth Reitz's avatar
Kenneth Reitz committed
121 122
# 129

Kenneth Reitz's avatar
Kenneth Reitz committed
123
Don't upgrade pip (from v128).
Kenneth Reitz's avatar
Kenneth Reitz committed
124

Kenneth Reitz's avatar
pipenv  
Kenneth Reitz committed
125 126
# 128

Kenneth Reitz's avatar
Kenneth Reitz committed
127
Upgrade pip, pin to Pipenv v11.8.2.
Kenneth Reitz's avatar
pipenv  
Kenneth Reitz committed
128

Kenneth Reitz's avatar
Kenneth Reitz committed
129 130 131 132
# 127

Pin to Pipenv v11.7.1.

133 134 135 136
# 126

Bugfixes.

Kenneth Reitz's avatar
Kenneth Reitz committed
137 138 139 140
# 125

Bugfixes.

Kenneth Reitz's avatar
Kenneth Reitz committed
141
# 124
142

Kenneth Reitz's avatar
Kenneth Reitz committed
143
Update buildpack to automatically install `[dev-packages]` during Heroku CI Pipenv builds.
144

Kenneth Reitz's avatar
Kenneth Reitz committed
145
- Skip installs if Pipfile.lock hasn't changed, and uninstall stale dependencies with Pipenv.
Kenneth Reitz's avatar
Kenneth Reitz committed
146
- Set `PYTHONPATH` during collectstatic runs.
Kenneth Reitz's avatar
Kenneth Reitz committed
147
- No longer warn if there is no `Procfile`.
Kenneth Reitz's avatar
Kenneth Reitz committed
148
- Update Pipenv's "3.6" runtime specifier to point to "3.6.4".
149

Kenneth Reitz's avatar
Kenneth Reitz committed
150 151
# 123

Kenneth Reitz's avatar
Kenneth Reitz committed
152
Update gunicorn `init.d` script to allow overrides.
Kenneth Reitz's avatar
Kenneth Reitz committed
153 154 155 156 157

# 122

Update default Python to v3.6.4.

Kenneth Reitz's avatar
Kenneth Reitz committed
158 159 160 161 162 163
# 121

Update default Python to v3.6.3.

# 120

Kenneth Reitz's avatar
Kenneth Reitz committed
164
Use `$ pipenv --deploy`.
Kenneth Reitz's avatar
Kenneth Reitz committed
165

Kenneth Reitz's avatar
Kenneth Reitz committed
166 167 168 169 170 171 172 173 174 175 176
# 119

Improvements to Pipenv support, warning on unsupported Python versions.

- We now warn when a user is not using latest 2.x or 3.x Python.
- Heroku now supports `[requires]` `python_full_version` in addition to `python_version`.

# 118

Improvements to Pipenv support.

Kenneth Reitz's avatar
Kenneth Reitz committed
177 178 179 180
# 117

Bug fix.

Kenneth Reitz's avatar
Kenneth Reitz committed
181
# 116
182

Kenneth Reitz's avatar
Kenneth Reitz committed
183 184 185 186
Vendoring improvements.

- Geos libraries should work on Heroku-16 now.
- The libffi/libmemcached vendoring step is now skipped on Heroku-16 (since they are installed in the base image).
187

188 189 190 191 192 193
# 115

Revert a pull request.

- No longer using `sub_env` for `pip install` step.

Kenneth Reitz's avatar
Kenneth Reitz committed
194 195 196 197 198 199
# 114

- Bugfixes.

Blacklisting `PYTHONHOME` and `PYTHONPATH` for older apps. Upgrades to nltk support.

Kenneth Reitz's avatar
Kenneth Reitz committed
200 201
# 113

202
Updates to Pipenv support.
Kenneth Reitz's avatar
Kenneth Reitz committed
203

Kenneth Reitz's avatar
Kenneth Reitz committed
204 205 206 207 208 209
# 112

Bugfix.

- Fixed grep output bug.

Kenneth Reitz's avatar
Kenneth Reitz committed
210 211
# 111

Kenneth Reitz's avatar
Kenneth Reitz committed
212
Linting, bugfixes.
Kenneth Reitz's avatar
Kenneth Reitz committed
213

214
# 110
215

216
Update default Python to 3.6.2.
217

Kenneth Reitz's avatar
Kenneth Reitz committed
218 219
# 109

220 221 222
Update Default Python to 3.6.1, bugfixes.

- Fixed automatic pip uninstall of dependencies removed from requirements.txt.
Kenneth Reitz's avatar
Kenneth Reitz committed
223

Kenneth Reitz's avatar
Kenneth Reitz committed
224 225
# 108

226
Fix output for collectstatic step.
Kenneth Reitz's avatar
Kenneth Reitz committed
227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243

# 107

Bugfix for C dependency installation.

# 106

 Don't install packages that could mess up packaging.

 - The Python buildpack will automatically remove `six`, `pyparsing`, `appdirs`,
   `setuptools`, and `distribute` from a `requirements.txt` file now, as these
   packages are provided by the Python buildpack.

 # 105

 Improvements to output messaging.

244 245
# 104

Kenneth Reitz's avatar
Kenneth Reitz committed
246
General improvements.
247

Kenneth Reitz's avatar
Kenneth Reitz committed
248
- Fix for Heroku CI.
249 250 251 252 253
- Use `pkg_resources` to check if a distribution is installed instead of
  parsing `requirements.txt`. ([#395][395])

[395]: https://github.com/heroku/heroku-buildpack-python/pull/395

Kenneth Reitz's avatar
Kenneth Reitz committed
254 255 256 257 258 259 260 261 262 263
## 103

Bug fixes and improvements.

- Fix for Pipenv.
- Fix for Heroku CI.
- Improve handling of WEB_CONCURRENCY when using multiple buildpacks.
- Adjust environment variables set during the build to more closely match those in the dyno environment (DYNO is now available, STACK is not).
- Restore the build cache prior to running bin/pre_compile.

Kenneth Reitz's avatar
Kenneth Reitz committed
264 265 266 267 268 269
## 102

Buildpack code cleanup.

- Improved messaging around NLTK.

Kenneth Reitz's avatar
Kenneth Reitz committed
270 271 272 273 274 275
## 101

Updated setuptools installation method.

- Improved pipenv support.

Kenneth Reitz's avatar
v100!  
Kenneth Reitz committed
276 277 278 279
## 100

Preliminary pipenv support.

Kenneth Reitz's avatar
v99  
Kenneth Reitz committed
280 281 282 283
## 99

Cleanup.

Kenneth Reitz's avatar
v98  
Kenneth Reitz committed
284 285 286 287 288 289 290
## 98

Official NLTK support and other improvements.

- Support for `nltk.txt` file for declaring corpora to be downloaded.
- Leading zeros for auto-set WEB_CONCURRENCY.

Kenneth Reitz's avatar
v97  
Kenneth Reitz committed
291 292 293 294
## 97

Improved egg-link functionality.

Kenneth Reitz's avatar
v96  
Kenneth Reitz committed
295 296 297 298
## 96

Bugfix.

Kenneth Reitz's avatar
v95  
Kenneth Reitz committed
299 300
## 95

Kenneth Reitz's avatar
v98  
Kenneth Reitz committed
301
Improved output support.
Kenneth Reitz's avatar
v95  
Kenneth Reitz committed
302 303 304 305 306

## v94

Improved support for PyPy.

Kenneth Reitz's avatar
Kenneth Reitz committed
307 308 309 310
## v93

Improved support for PyPy.

Kenneth Reitz's avatar
v92  
Kenneth Reitz committed
311 312
## v92

Kenneth Reitz's avatar
v98  
Kenneth Reitz committed
313
Improved cache functionality and fix egg-links regression.
Kenneth Reitz's avatar
v92  
Kenneth Reitz committed
314

Kenneth Reitz's avatar
Kenneth Reitz committed
315 316 317 318
## v91

Bugfix, rolled back to v88.

Kenneth Reitz's avatar
v90  
Kenneth Reitz committed
319 320 321 322
## v90

Bugfix.

Kenneth Reitz's avatar
v89  
Kenneth Reitz committed
323 324
## v89

Kenneth Reitz's avatar
v98  
Kenneth Reitz committed
325
Improved cache functionality and fix egg-links regression.
Kenneth Reitz's avatar
v89  
Kenneth Reitz committed
326

Kenneth Reitz's avatar
v88  
Kenneth Reitz committed
327 328
## v88

Kenneth Reitz's avatar
v98  
Kenneth Reitz committed
329
Fixed bug with editable pip installations.
Kenneth Reitz's avatar
v88  
Kenneth Reitz committed
330

Kenneth Reitz's avatar
v87  
Kenneth Reitz committed
331 332 333 334
## v87

Updated default Python 2.7.13.

Kenneth Reitz's avatar
Kenneth Reitz committed
335 336 337
- Python 2.7.13 uses UCS-4 build, more compatibile with linux wheels.
- Updated setuptools to v32.1.0.

Kenneth Reitz's avatar
v86  
Kenneth Reitz committed
338 339 340 341
## v86

Refactor and multi-buildpack compatibility.

Kenneth Reitz's avatar
Kenneth Reitz committed
342 343
## v85

Kenneth Reitz's avatar
v98  
Kenneth Reitz committed
344
Packaging fix.
Kenneth Reitz's avatar
Kenneth Reitz committed
345

Kenneth Reitz's avatar
Kenneth Reitz committed
346 347 348 349 350 351 352
## v84

Updated pip and setuptools.

- Updated pip to v9.0.1.
- Updated setuptools to v28.8.0.

Kenneth Reitz's avatar
Kenneth Reitz committed
353 354
## v83

Kenneth Reitz's avatar
Kenneth Reitz committed
355 356
Support for Heroku CI.

Kenneth Reitz's avatar
Kenneth Reitz committed
357 358
- Cffi support for argon2

Kenneth Reitz's avatar
Kenneth Reitz committed
359 360 361 362 363 364
## v82 (2016-08-22)

Update to library detection mechnisms (pip-pop).

- Updated setuptools to v25.5.0

Kenneth Reitz's avatar
v81  
Kenneth Reitz committed
365 366 367 368
## v81 (2016-06-28)

Updated default Python to 2.7.11.

Kenneth Reitz's avatar
v87  
Kenneth Reitz committed
369 370
- Updated pip to v8.1.2.
- Updated setuptools to v23.1.0.
Kenneth Reitz's avatar
v81  
Kenneth Reitz committed
371

Kenneth Reitz's avatar
v80  
Kenneth Reitz committed
372 373 374 375
## v80 (2016-04-05)

Improved pip-pop compatibility with latest pip releases.

Kenneth Reitz's avatar
v79  
Kenneth Reitz committed
376 377 378 379
## v79 (2016-03-22)

Compatibility improvements with heroku-apt-buildpack.

Kenneth Reitz's avatar
Kenneth Reitz committed
380
## v78 (2016-03-18)
381 382 383 384 385 386 387 388 389 390 391

Added automatic configuration of Gunicorn's `FORWARDED_ALLOW_IPS` setting.

Improved detection of libffi dependency when using bcrypt via `Django[bcrypt]`.

Improved GDAL support.

- GDAL dependency detection now checks for pygdal and is case-insensitive.
- The vendored GDAL library has been updated to 1.11.1.
- GDAL bootstrapping now also installs the GEOS and Proj.4 libraries.

Kenneth Reitz's avatar
Kenneth Reitz committed
392
Updated pip to 8.1.1 and setuptools to 20.3.
Ed Morley's avatar
Ed Morley committed
393

394 395 396 397
## v77 (2016-02-10)

Improvements to warnings and minor bugfix.

Kenneth Reitz's avatar
Kenneth Reitz committed
398
## v76 (2016-02-08)
Kenneth Reitz's avatar
v76  
Kenneth Reitz committed
399 400 401 402 403 404 405

Improved Django collectstatic support.

- `$ python manage.py collectstatic` will only be run if `Django` is present in `requirements.txt`.
- If collectstatic fails, the build fails. Full traceback is provided.
- `$DISABLE_COLLECTSTATIC`: skip collectstatic step completely (not new).
- `$DEBUG_COLLECTSTATIC`: echo environment variables upon collectstatic failure.
Kenneth Reitz's avatar
Kenneth Reitz committed
406 407
- Updated build output style.
- New warning for outdated Python (via pip `InsecurePlatform` warning).
Kenneth Reitz's avatar
v76  
Kenneth Reitz committed
408

Kenneth Reitz's avatar
v75  
Kenneth Reitz committed
409 410 411 412
## v75 (2016-01-29)

Updated pip and Setuptools.

Kenneth Reitz's avatar
v74  
Kenneth Reitz committed
413 414 415
## v74 (2015-12-29)

Added warnings for lack of Procfile.
Kenneth Reitz's avatar
v71  
Kenneth Reitz committed
416

Kenneth Reitz's avatar
v72  
Kenneth Reitz committed
417 418 419 420
## v72 (2015-12-07)

Updated default Python to 2.7.11.

Kenneth Reitz's avatar
v72  
Kenneth Reitz committed
421
## v72 (2015-12-03)
Kenneth Reitz's avatar
v71  
Kenneth Reitz committed
422 423 424

Added friendly warnings for common build failures.

Kenneth Reitz's avatar
Kenneth Reitz committed
425 426 427 428
## v70 (2015-10-29)

Improved compatibility with multi and node.js buildpacks.

Kenneth Reitz's avatar
Kenneth Reitz committed
429 430 431 432 433 434 435 436 437 438 439
## v69 (2015-10-12)

Revert to v66.

## v68 (2015-10-12)

Fixed .heroku/venv error with modern apps.

## v67 (2015-10-12)

Further improved cache compatibility with multi and node.js buildpacks.
Kenneth Reitz's avatar
v65  
Kenneth Reitz committed
440

Kenneth Reitz's avatar
v66  
Kenneth Reitz committed
441 442 443 444
## v66 (2015-10-09)

Improved compatibility with multi and node.js buildpacks.

Kenneth Reitz's avatar
v65  
Kenneth Reitz committed
445 446 447 448
## v65 (2015-10-08)

Reverted v64.

Kenneth Reitz's avatar
v64  
Kenneth Reitz committed
449 450 451 452 453 454 455 456 457 458 459 460
## v64 (2015-10-08)

Improved compatibility with multi and node.js buildpacks.

## v63 (2015-10-08)

Updated Pip and Setuptools.

- Setuptools updated to v18.3.2
- Pip updated to v7.1.2


Kenneth Reitz's avatar
Kenneth Reitz committed
461 462 463 464 465 466 467
## v62 (2015-08-07)

Updated Pip and Setuptools.

- Setuptools updated to v18.1
- Pip updated to v7.1.0

Kenneth Reitz's avatar
Kenneth Reitz committed
468 469
## v61 (2015-06-30)

Kenneth Reitz's avatar
Kenneth Reitz committed
470
Updated Pip and Setuptools.
Kenneth Reitz's avatar
v61  
Kenneth Reitz committed
471 472 473 474

- Setuptools updated to v18.0.1
- Pip updated to v7.0.3

Kenneth Reitz's avatar
Kenneth Reitz committed
475
## v60 (2015-05-27)
Kenneth Reitz's avatar
Kenneth Reitz committed
476

Kenneth Reitz's avatar
Kenneth Reitz committed
477
Default Python is now latest 2.7.10. Updated Pip and Distribute.
Kenneth Reitz's avatar
Kenneth Reitz committed
478

Kenneth Reitz's avatar
Kenneth Reitz committed
479 480 481
- Default Python version is v2.7.10
- Setuptools updated to v16.0
- Pip updated to v7.0.1