-
(hidden) JqTKidYke #[[(hidden) S-ygYfi0j]]
-
(hidden) iZX9r-N9A [[(hidden) QMlKNxKBK]]
-
(hidden) jkN63t3F9
-
{{[[TODO]]}} (hidden) EnDCrpm9O [[(hidden) AAxPDXt37]] #[[(hidden) v0H4bT6Yu]]
-
(hidden) VcUI5UazH
-
{{[[TODO]]}} (hidden) lJCdHvMgn [[(hidden) pHco5hQZn]]
-
{{[[TODO]]}} (hidden) c2g-2IwXB [[(hidden) tv1zOVzED]]
-
(hidden) qlikyk-Jx #[[(hidden) yPhbpedU4]]
-
(hidden) Tuf_wHXVL
-
(hidden) ADaW0YhqI [[(hidden) AAxPDXt37]]
-
(hidden) 9uKry6sfN
-
(hidden) W0TCjcm2E
-
(hidden) vueMqcbo3
-
(hidden) 3_3iBiPh_
-
(hidden) y7E8065q9
-
-
(hidden) 8WRjofpZR
-
(hidden) xnghm1n0i
-
(hidden) yWfbJ14BT
-
(hidden) hjUtoExwR
-
(hidden) ZWSGTVu7O
-
(hidden) iCyzc7nIN
-
(hidden) euryicfDr
-
(hidden) E5_agekEe
-
(hidden) F05OHb0Ey
-
(hidden) WHv13lkuR
-
(hidden) yC78IzgQs
-
(hidden) K1b0zHgMl
-
(hidden) SdLr2PAsX [[(hidden) RWyP0mLVh]]
-
(hidden) YMHHAQycB
-
(hidden) L0Ba7oBoO
-
(hidden) BhUVax4P3
-
[[git-stacked-rebase]]
-
{{[[TODO]]}} if partial branch is behind it's remote, handle it
-
{{[[TODO]]}} handle errors & exiting (e.g. `wasRebaseStillInProgress` is affected if we exit w/ exit code - git's rebase does not write to file unless it's success, but we do, and so the next run will take the edited todo, instead of generating a new one)
-
{{[[TODO]]}} instead of `process.exit(code)`, return the code instead `return code` to make the module usable by itself, and then use the returned code in the CLI itself.
-
{{[[TODO]]}} handle incompatible args/options
-
re: ((mrZI0BkQ0))
-
{{[[TODO]]}} let's also __not__ write to stdout, and instead return the message if it needs to be written, and to where
-
realized when noticed that calls to `process.stderr.write` are always the same - always need `"\n" + stuff + "\n\n"` - thus wanted to abstract, and then realized.
-
part of what the talk was about: ((ECPmuH08j))
-
this is especially good & well-fitting because the program is library-first / module-first, as in, it's a module, and the CLI is only something on top of it. it's good because then anyone can write tools on top of it.
-
see also this commit:
-
{{[[TODO]]}} ideally `gitStackedRebase` could be made pure, and it'd return ~~either an array of actions to take, or an array of errors~~ upd: errors can happen when taking actions, so it'd be best to return actions, since they can produce errors (we wouldn't have any errors regardless since we don't call the actions). and the the consumer can iterate on the actions.
-
again, cc ((ECPmuH08j))
-
damn, is this the default in clojure? from the talk it'd seem that it's a good, reasonable best-practice. would be kinda amazing to try & do this more.
-
[[git-stacked-rebase]] [[export-html-pages]]
-
re: ((ECPmuH08j))
-
lol, i wanted to both use the linked reference for "clojure" ([[(hidden) d_BU9kVtB]]), and for the whole thing to be **in bold**. but that doesn't work in roam! and then i realized that when i'll be creating the Block's string parser, it'll need to be aware of the existing context / scope, i.e. what things wrap it already. i thought that you might want to walk upwards to check such things. and then i realized that [[(hidden) DTTuZxhoc]] (that i use for creating [[codemods]]) is exactly that. and that i could write a custom parser for roam's Block string (or, in general, any [[(hidden) XW4WLkPLe]] string i guess), and have it usable w/ jscodeshift. 🤯🤯🤯 [[(hidden) DY6wPnICE]] / [[(hidden) lVDvvGLLj]] i indeed thought/knew that the 2 projects are related, but this much? wow, no. i guess now all 3 are:D also: - [[(hidden) DTTuZxhoc]] is created by an engineer who works/worked at [[(hidden) unlH_9R0B]]. - [[(hidden) unlH_9R0B]] devs use [[(hidden) Qb76iqf_n]] + [[(hidden) iKtPaNgmv]] for version management (just like git) + [[(hidden) Qb76iqf_n]] has [[(hidden) mgTvVDjW-]] HOLY SHIT x2 it's all related (though 1 way, not both - $$\implies$$, not $$\iff$$)
-
-
-
-
also, am very much liking the [[(hidden) U5k5oJ6YK]] way of returning a status / a boolean if success instead of an array, and taking the array as an argument (by reference, because array is object and in js, objects are taken by reference always), and appending into the array.
-
-
-
-
{{[[TODO]]}} remember which branch was used so that the argument becomes optional (as long as there's only 1 stacked rebase in progress (are >1 even possible / should they?))
-
{{[[TODO]]}} (!) check how `git log` works, and resolve the commits & branches in a similar way
-
e.g. situation - i edited a todo, i applied, but then i reset the latest branch. git-stacked-rebase still picks up the commits from the partial branches. same even if i remove stacked-rebase/ dir. git log shows them correctly. we need to be like git log. edit: ooh nvm, the sub-branches are still f'ed up, `git log` only shows the `origin/` (remote) variants of the branches.
-
-
-
(hidden) 7neXFQ4hw
-
(hidden) qO0etB8nr
-
(hidden) P_DXJKES6
-
{{[[TODO]]}} (hidden) y3kwCgtkF #[[(hidden) jOMmlCP4S]]
-
thought about placing [[git-stacked-rebase]]'s core files in a folder, and e.g. keeping the CLI in the root folder of the repo. i'd like to keep the structure as flat as possible, so thought to maybe add prefixes and then separate w/ a dot, while still keeping it as a filename & not inside folder (e.g. `/core.gitStackedRebase.ts` instead of `/core/gitStackedRebase.ts`), but looks a little sus maybe? but it's reachable more easily upd: okay i thought `git-stacked-rebase.gitStackedRebase.ts` so it seemed really long & strange, but now that i wrote `core.`, it seems kinda not too bad!?
-
(hidden) m7-3Km45B
-
-
(hidden) AUVkbPUsN
-
(hidden) q_BVQrkbs
-
(hidden) EhBFntX8B
-
{{[[TODO]]}} (hidden) ArTjjjhqT [[github]] #[[(hidden) D1lY0CG5e]]
-
(hidden) GFSaphh61
-
(hidden) -K-ftwVfV
-
(hidden) DiiOWZTNy
-
{{[[TODO]]}} (hidden) O4aLc-WfN [[(hidden) i9tU5xFDv]] #[[(hidden) jOMmlCP4S]]
-
(hidden) IYITHHkFo
-
(hidden) phTUt5gcJ
-
(hidden) xfSzCB8-T
-
(hidden) HZSqzJZQr