envd
envd copied to clipboard
WIP chore: optimized the cache mechanism
This PR is to solve the followings problems:
- More and more deps files such as requirements.txt
- Include syntax that import other files
Signed-off-by: nullday [email protected]
Thanks! Feel free to ping me if it is ready to review.
- Use the hash of
ir.Graphrather than the starlark bytecode hash to distinguish a manifest because ofincludesyntax that will import other envd manifest and the graph is always be the right person. - Search all fields in
ir.Graphwith keywords like file and path. It is a little tricky because I don't want to define a hook and add it into everycompileFuncin lang pkg. It is also a little dangerous If other contributors do not know this convention. So I need your suggestions @gaocegege @zwpaper
Search all fields in ir.Graph with keywords like file and path. It is a little tricky because I don't want to define a hook and add it into every compileFunc in lang pkg. It is also a little dangerous If other contributors do not know this convention. So I need your suggestions @gaocegege @zwpaper
I think we should document it in the code. Maybe add the comments in DefaultGraph.
/cc @VoVAllen @kemingy
Does this mean any field name inside DefaultGraph, with "File"/"Wheel"/"Path" will be considered as dependency and invalidate caches when they change?
Does this mean any field name inside DefaultGraph, with "File"/"Wheel"/"Path" will be considered as dependency and invalidate caches when they change?
Bingo!
[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: aseaday
The full list of commands accepted by this bot can be found here.
The pull request process is described here
- ~~OWNERS~~ [aseaday]
Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment
[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: aseaday
The full list of commands accepted by this bot can be found here.
The pull request process is described here
- ~~OWNERS~~ [aseaday]
Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment
Maybe we should always rebuild if there is a file from HTTP get.
Maybe we should always rebuild if there is a file from HTTP get.
LGTM
Is this ready to review?
@gaocegege @VoVAllen PTAL
[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: aseaday, gaocegege, kemingy
The full list of commands accepted by this bot can be found here.
The pull request process is described here
- ~~OWNERS~~ [aseaday,gaocegege,kemingy]
Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment