Comments (5)
Also, it's worth stating that my pex is big enough that using PEX_NOCACHE
is not an option (and it would be a terrible UX for my users)
from python-rules.
What I think I'd like to do, is to use that content hash of the "_%s#lib"
sub-target
from python-rules.
Hum... This is sadly not a fixed problem. Something is wrong with my implementation, and your input, dear @samwestmoreland would be welcomed.
So this works when the content of the sources of the python_binary
get modified, but not when the files of dependent python_libraries
are changed.
from python-rules.
Do you think it could work to split the last rule which gathers everything in two ?
- One that would gather all the .pex.zip, .wheel and resources
- One that would add the preamble and produce the final pex
We would then be able to put the rule which inject the stamp in the pex in the middle and it would have all the resources available to compute a proper hash.
Do you think it could work ?
from python-rules.
Hey, right I see. Yeap, I think that sounds very reasonable. You essentially want to figure out everything you need that you want to be in the hash, i.e. the deps and the lib_rule, and build them beforehand in order to generate the stamp. Are you happy to create the PR? I can help out if you get stuck!
from python-rules.
Related Issues (20)
- Documentation and codelab
- Wheel_resolver e2e test fails trying to download tensorflow
- Incorrect evaluation of `@self` HOT 1
- Release the wheel downloader tool
- Unfriendly errors when the wheel downloader can't find a wheel
- Don't download in wheel_resolver. Just generate URL and download using remote_file HOT 2
- Allow multiple python module roots
- Add config option to override pip compile flags HOT 1
- De-duplicate python resources
- pip_library help text doesn't match arguments
- Error if `python_wheel` target is in root directory
- pip_library workaround breaks on Debian 12
- pytest test runner fails when running under `plz cover`
- Transitive dependencies are missing from test runners HOT 2
- Document how custom runners work better
- '#' in file path causing pip compilation issues (FreeBSD) HOT 1
- `python_wheel`: `ImportError` when `entry_points` is defined for certain PyPI packages
- Plugin and setup-python action don't seem to work together. HOT 2
- pex_main.py doesn't clean up exploded zip
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from python-rules.