pymake

A build system based on Build Systems à la Carte
git clone https://git.grace.moe/pymake
Log | Files | Refs | README

DateCommit messageAuthorFiles+-
2025-04-22 21:23Incorporate @once and @cache_conditionally by converting the entire rebuild stack into async/await, which involves some ast rewriting...gracefu8+115-61
2025-04-22 18:55Merge pickler and rebuildgracefu4+91-92
2025-04-22 18:22Add once / exec utils, use from ... import ... instead of import ... to make the code harder to readgracefu5+168-26
2025-04-22 18:10Make function pickling a normal class againgracefu3+20-33
2025-04-22 12:49Remove useless helper (.setdefault already exists)gracefu2+21-13
2025-04-20 17:07Replace file pickling with open wrappergracefu7+59-51
2025-04-20 12:07Change rerun syntax to use lambdas instead of strings, enable support for pickling local functions to make it work, added pickling of files because why not, and split package into multiple filesgracefu7+278-165
2025-04-20 00:01Refactor the rerun_if_changed based build system into its own filegracefu3+143-113
2025-04-19 23:18Don't crash if eval throws an exception on a future run, store/load functions for interfacing with dbgracefu2+12-6
2025-04-19 23:09Make the two tar sketches more similargracefu3+27-19
2025-04-19 22:42Replace tar2 primitive with rerun_if_changedgracefu3+53-33
2025-04-19 21:54Add proof of concept of build system based on a single primitivegracefu4+139-8
2025-04-19 19:26Add a sketch of how a simple tar rule might be implemented by handgracefu6+65-0
2025-04-19 15:57add async version of maingracefu1+10-0
2025-04-17 23:39sketch second versiongracefu2+447-0
2025-04-17 23:37add small example for compiling c files with motivation for restarting rulesgracefu1+33-1
2025-04-17 23:37figure out octal syntaxgracefu1+1-1
2025-04-16 17:53Improve my understanding of coroutine vs Future vs futurelike and CLI to allow building rulesgracefu1+36-34
2025-04-16 14:51Automatically wrap non-coroutines in coroutines when detachinggracefu2+24-15
2025-04-16 09:35Do packaging stuffgracefu8+886-786
2025-04-15 23:52Implement async shell and open (but comment it out cause it looks bad), not crash on exception (but not handling properly either), ensure typing works with Python 3.10gracefu3+311-13
2025-04-15 16:37I hate closuresgracefu1+30-18
2025-04-15 16:25Fix types, remove rawrule and add a function to register rules with Rulesgracefu1+8-39
2025-04-15 14:20Modify the suspending scheduler to use the Store, and edit a bunch of commentsgracefu2+54-23
2025-04-15 14:07Some docstrings, slots, refactored a bit how cache functions workgracefu2+191-106
2025-04-15 10:10Move stuff into classesgracefu1+16-12
2025-04-15 05:19Minor typing tweaksgracefu2+14-12
2025-04-14 21:09Move examples to own filegracefu3+117-99
2025-04-14 19:33Refactor, tweak, support concurrencygracefu1+199-125
2025-04-14 16:56First sketch of build system based on a suspending scheduler and constructive trace rebuildergracefu2+294-0
2025-04-14 16:55Initial commitgracefu0+0-0