Commit Graph

3648 Commits

Author SHA1 Message Date
Tzu-ping Chung e51b5d0996 Add tests for environment marker precedence logic
Close #1757.
2018-03-23 01:56:27 +08:00
Dan Ryan 29a1a0b537 Merge pull request #1815 from pypa/editable-packages-fixes
Fix detection of editable packages
2018-03-21 12:58:08 -04:00
Tzu-ping Chung 49cb2b087a Add test to go through the editable check code path
This would have failed without the previous commit.
2018-03-21 23:32:58 +08:00
Tzu-ping Chung c8562129de Fix editable package filtering logic
Pipfile entry values can be strings; need to check if they actually have a
"get" method before accessing. Also extract the logic into utils.py so it
lives with other functions similar to it.
2018-03-21 21:29:41 +08:00
Tzu-ping Chung 25a2186b0a dev_editable_packages => editable_dev_packages 2018-03-21 21:27:31 +08:00
kennethreitz 6af66f9c08 getting creative
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.

Signed-off-by: Kenneth Reitz <me@kennethreitz.org>
2018-03-21 08:02:02 -04:00
kennethreitz 4426caa315 Merge branch 'master' of github.com:pypa/pipenv 2018-03-21 07:53:59 -04:00
kennethreitz b3c509c11c Revert "delete .travis.yml"
This reverts commit 37251a1fd9.
2018-03-21 07:53:47 -04:00
kennethreitz 424b127b1a Merge pull request #1813 from mmasztalerczuk/bugfix/incorrect-path
Fix problem with incorrect import path
2018-03-21 07:52:57 -04:00
Mariusz Masztalerczuk ce0bf71f0a Merge branch 'master' into bugfix/incorrect-path 2018-03-21 12:51:39 +01:00
Mariusz Masztalerczuk 0ac8eb3f9c Fix problem with incorrect import path 2018-03-21 12:40:28 +01:00
kennethreitz b1b1208caf Merge branch 'master' of github.com:pypa/pipenv 2018-03-21 07:11:05 -04:00
kennethreitz 7cd4bf13b2 version bump
Signed-off-by: Kenneth Reitz <me@kennethreitz.org>
2018-03-21 07:10:55 -04:00
kennethreitz 6f0c1afea7 history
Signed-off-by: Kenneth Reitz <me@kennethreitz.org>
2018-03-21 07:10:44 -04:00
kennethreitz c97dd47a48 Merge pull request #1812 from pypa/bugfix/resolve-editable-setupfiles
Resolve editable packages on the local filesystem
2018-03-21 07:10:19 -04:00
kennethreitz a58e2a8392 inject environment variables into pipfile.lock
Signed-off-by: Kenneth Reitz <me@kennethreitz.org>
v11.9.0
2018-03-21 07:05:03 -04:00
kennethreitz e025a3b52f don't propogate env vars to pipfile.lock
Signed-off-by: Kenneth Reitz <me@kennethreitz.org>
2018-03-21 06:59:30 -04:00
kennethreitz 32356dc093 improvements to pipfile
Signed-off-by: Kenneth Reitz <me@kennethreitz.org>
2018-03-21 06:54:29 -04:00
kennethreitz 8987c3aa97 Merge branch 'master' of github.com:pypa/pipenv
# Conflicts:
#	HISTORY.txt
2018-03-21 06:33:09 -04:00
kennethreitz b753ace2f6 diagnose 2018-03-21 06:32:15 -04:00
kennethreitz 6492f72f96 history
Signed-off-by: Kenneth Reitz <me@kennethreitz.org>
2018-03-21 06:31:54 -04:00
Dan Ryan 0668992111 Format code 2018-03-20 23:31:49 -04:00
Dan Ryan 3f92d7fe3a Resolve editable packages on the local filesystem
- Check for editable pipfile entries when running `pipenv install`
- Check only when lockfile or virtualenv doesnt exist but pipfile does
- If so, first install the editable dependencies, then do resolution
- Required to accommodate `ireq.get_dist()` which we use for setup.py
  parsing
- Fixes #1782
2018-03-20 23:27:31 -04:00
kennethreitz 546be007cf Merge pull request #1807 from jtratner/check-warehouse-pypi-org
Still check warehouse API for new pypi.org
2018-03-20 17:14:30 -04:00
kennethreitz fea515137f Merge pull request #1803 from paraschas/master
remove --update option from the documentation
2018-03-20 17:14:12 -04:00
kennethreitz 1b071bb63b Merge pull request #1808 from pypa/bugfix/resolver-markers
Simplify marker checks in patched resolver
2018-03-20 17:13:04 -04:00
Tzu-ping Chung 2b84ab6fd1 Merge pull request #1809 from jtratner/fix-inject-env-vars
Fix environment variable expansion with extras
2018-03-21 04:49:27 +08:00
Jeff Tratner 13070ac974 Fix environment variable expansion with extras 2018-03-20 10:50:53 -07:00
Jeff Tratner ff03d7d32a Still check warehouse API for new pypi 2018-03-20 09:04:00 -07:00
Dan Ryan e433ebbac2 Simplify marker checks in patched resolver
- Fix Overlapping naming checking for inner markers
- Perform a first-pass right-side split of markers and remove other
exact matching markers from the dependency string
- Fixes #1617, #1791, #1805, #1622
2018-03-20 11:30:37 -04:00
Dimitrios Paraschas 5f363a894c remove --update option from the documentation 2018-03-20 15:16:05 +02:00
kennethreitz 913713e9dc history
Signed-off-by: Kenneth Reitz <me@kennethreitz.org>
2018-03-20 08:22:40 -04:00
kennethreitz 57aecc3b4b history
Signed-off-by: Kenneth Reitz <me@kennethreitz.org>
2018-03-20 08:22:23 -04:00
kennethreitz dfb6dd470d Merge pull request #1754 from jtratner/cache-parsed-pipfile
Cache parsed pipfile
2018-03-20 08:21:24 -04:00
kennethreitz e8e38d7929 Merge pull request #1769 from dvf/dvf/parse-environment-variables
Allow values in Pipfile to consume Environment Variables
2018-03-20 08:16:31 -04:00
kennethreitz 30df6b1efc Merge pull request #1793 from jtratner/add-git-to-dockerfile
Add git to Dockerfile for git installs
2018-03-20 08:13:54 -04:00
kennethreitz d067f8b2a7 Merge pull request #1797 from pypa/bugfix/resolver-markers
Fix resolving against multiple markers
2018-03-20 08:13:19 -04:00
Dan Ryan 240107b5cf Fix resolving against multiple markers
- Fix for when requirements are also present
- Fixes #1791
2018-03-19 17:03:42 -04:00
kennethreitz b9894ced7e Merge pull request #1795 from pypa/diagnose-doc
Add a page to answer common questions
2018-03-19 16:01:55 -04:00
Tzu-ping Chung fed9569f9a Add faq page 2018-03-20 02:13:15 +08:00
Jeff Tratner 3b88bf9dae Add git to Dockerfile for git installs 2018-03-19 10:00:49 -07:00
Jeff Tratner 8a086f175a Stop using a threading.local 2018-03-19 09:57:47 -07:00
Jeff Tratner 3925f7a537 Do not bother hashing 2018-03-19 09:53:41 -07:00
Jeff Tratner dfb1a19dcf Clear pipfile cache when it seems like we might be mutating 2018-03-19 09:53:41 -07:00
Jeff Tratner bde5bb35c7 Apparently you cannot deepcopy TOMLFile objects
Weirdly (seems like) it only fails in test suite but not in actual
usage, but manual vetting suggests we don't modify the pipfile without
writing it to disk pretty much immediately.
2018-03-19 09:53:41 -07:00
Jeff Tratner 511561122b Cache pipfile parsing
On a (390+ line) Pipfile, it takes ~5s to parse the entire thing :O.
Pipenv has to parse the pipfile repeatedly and all over the place, so
caching the contents speeds things up dramatically (at least in this
case).

This PR establishes a little cache based upon file location + md5sum of
contents for the pipfile (and the hashing is pretty fast here). Given
that the cache key is based on the file contents, should be completely
fine to do (only possible issue is if parsed_pipfile gets mutated -
which is why I've added a defensive deepcopy).

Without the deepcopy, cache hit takes ~0.09ms.
With the deepcopy, cache hit takes 1.19ms.

If we can confirm no need for deepcopy, would shave off a second or two
off really big Pipfiles.
2018-03-19 09:53:41 -07:00
kennethreitz 0760cf0a9c attempt
Signed-off-by: Kenneth Reitz <me@kennethreitz.org>
v11.8.3
2018-03-19 08:19:42 -04:00
kennethreitz 5aeab06b2c attempt to fix #1738
Signed-off-by: Kenneth Reitz <me@kennethreitz.org>
2018-03-19 08:17:29 -04:00
kennethreitz c4ccc2292c allow_prereleases
Signed-off-by: Kenneth Reitz <me@kennethreitz.org>
2018-03-19 06:54:02 -04:00
kennethreitz a0606e43e3 remove easter egg 2018-03-19 06:51:51 -04:00