bw 5 and 6
(We talked about this briefly in person yesterday.)
We have a couple of breaking things in the pipeline. We also have some big tasks for bw 5 pending. It is probably not feasible to tackle all of this for bw 5. I propose we release bw 5 soon and retarget the big stuff for bw 6.
To clarify:
- “Big stuff” is
- everything regarding the hypothetical megadict,
- maybe https://github.com/bundlewrap/bundlewrap/issues/706,
- maybe https://github.com/bundlewrap/bundlewrap/issues/705 (lots of downstream changes),
- and I vaguely remember some larger TODOs in the code but I might be wrong.
- Anything else marked for bw 5 would be the “little things”.
Option 1: At the very least, I’d like to see this merged for bw 5:
- https://github.com/bundlewrap/bundlewrap/issues/851
- https://github.com/bundlewrap/bundlewrap/issues/838
- https://github.com/bundlewrap/bundlewrap/issues/818
And maybe also:
- https://github.com/bundlewrap/bundlewrap/issues/676
- https://github.com/bundlewrap/bundlewrap/issues/672
Option 2: Or we could go ahead and do all the “little things” now for bw 5, that would be more work of course.
I’d be fine with either option.
Since bw 5 would be the next normal release, we’d just merge all this to main (people running main must expect breakage anyway). If the need for another 4.x arises, we’ll just branch from the current 4.23.1 tag.
Thoughts?
I think we should atleast do everything that's marked as TODO 5.0 in the code:
bundlewrap/itemqueue.py
72: if item.cascade_skip: # TODO 5.0 always do this when removing cascade_skip
bundlewrap/repo.py
524: # TODO 5.0 make this a cached set
532: # TODO 5.0 make this a cached set
bundlewrap/lock.py
238: # TODO 5.0 Just use "page_lines(output)" here
bundlewrap/node.py
852: # TODO remove in 5.0
882: Deprecated, remove in 5.0.0
bundlewrap/utils/plot.py
97: # FIXME this is not filtering auto deps, but we should rethink filters anyway in 5.0
bundlewrap/deps.py
141: # remove next line in 5.0 when killing get_auto_deps
bundlewrap/metagen.py
151: # TODO remove in 5.0
419: # Uncomment this in 5.0 and remove the rest of this block
bundlewrap/items/__init__.py
593: # TODO remove sorted() in 5.0 to pass a set
771: DEPRECATED remove in 5.0, use get_auto_attrs instead
842: # TODO remove sorted() in 5.0 to pass a set
858: # TODO rename to display_on_fix in 5.0
Personally, i'd love to have everything except for purging in 5.0, that's probably doable in a couple of weeks if we commit to throw some dev time on that.
Discussed it in person and said that this looks fine.