by

Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • 17:16
    ctrlcctrlv commented #937
  • 17:11
    simoncozens commented #937
  • 17:07
    ctrlcctrlv opened #937
  • Jul 11 13:49
    alerque commented #919
  • Jul 11 05:12
    ctrlcctrlv closed #935
  • Jul 11 05:12
    ctrlcctrlv commented #935
  • Jul 10 23:08
    alerque commented #616
  • Jul 10 22:57
    alerque edited #616
  • Jul 10 22:46
    alerque synchronize #616
  • Jul 10 22:46

    alerque on new-documentation

    ci(actions): Install libarchive… (compare)

  • Jul 10 22:40
    alerque edited #616
  • Jul 10 22:40
    alerque milestoned #616
  • Jul 10 22:38
    alerque synchronize #616
  • Jul 10 22:38

    alerque on new-documentation

    docs(manual): Size \code font t… docs(manual): Change \examplefo… docs(manual): Copy-edit explana… and 6 more (compare)

  • Jul 10 22:13
    alerque commented #853
  • Jul 10 22:13
    alerque commented #853
  • Jul 10 22:13
    alerque commented #853
  • Jul 10 22:07
    alerque opened #936
  • Jul 10 19:53
    alerque commented #853
  • Jul 10 19:42
    alerque commented #853
Olivier Nicole
@OlivierNicole
Yeah, a dozen or so failures here.
Olivier Nicole
@OlivierNicole
(and none on master)
Caleb Maclennan
@alerque
That's promising. The next thing I would do is spot-check one or two of the failing tests by building before/after PDF versions of the test and using a visual PDF diff to see what actually shifted and if the shift is explainable based on the thing I was intending to fix.
Olivier Nicole
@OlivierNicole
Doing that now…
Olivier Nicole
@OlivierNicole
image.png
Okay, there may be a few bugs in my patch.
Caleb Maclennan
@alerque
Italic is an incantation for visibility, Roman is invisible? That's special.
Olivier Nicole
@OlivierNicole
I’m guessing all children of a macro but the first get ignored.
Olivier Nicole
@OlivierNicole
Only one failure left, looking good.
Olivier Nicole
@OlivierNicole
None left. Will do the PR tomorrow though!
Olivier Nicole
@OlivierNicole
I need to make my math branch catch up with master. Do you have a policy, like do you want this to be done with a rebase, rather than a merge? It yields a cleaner history but, in my experience, can also be quite painful when you have to fix the same conflict commit after commit…
Caleb Maclennan
@alerque
Either way is fine. A merge is probably easiest to refresh a long running branch like that.
I rebase a lot of stuff but usually do so while I'm actively working on multiple feature branches myself and one depends on another. A periodic merge from master to just a long running feature branch in sync is okay.
The one caveat I would note is that if your branch has commits that predate our conventional commit message usage, it would be nice to rebase those just to prefix them properly so they make it into the release changelogs. But you can do that by rebasing on the original commit you branched from just to rewrite the messages, you can deal with the merge conflicts by later merging master.
Olivier Nicole
@OlivierNicole
Sure. It’s always difficult to rewrite the commit history of a new feature, because half the commits don’t make sense in terms of changelog, and you have to make a lot of choices.
Of course, the simplest choice would be to squash the entire history into a new feat commit, which kind of makes sense when a feature is very loosely coupled with the rest of the code.
Caleb Maclennan
@alerque
It's a ticklish problem, but my current approach is to have one feat: commit somewhere in the branch (say where the user facing API / command was introduced) even if the implementation isn't complete with that commit, then iterate on it with chore: through the end of the feature branch.
Note that it's a bad idea to use fix: for any commits relating to anything that hasn't been released yet because it produces silly change logs, chore: Fix... is more appropriate for use in a feature branch when the things being fixed are new since the last release tag.
Olivier Nicole
@OlivierNicole
Ah, that's very useful advice, thank you. Just a question: how would you define the meaning of chore:?
Caleb Maclennan
@alerque
90% of my commits ;-) Some unit of work that is progress on something but doesn't deserve a ChangeLog entry. Basically anything that's not a feat:, fix:refactor:,docs:,style:`, etc. Honestly the way I'm using it is kind of a lazy catch-all.
Ironically the Angular project was where the use of chore: was initiated and they seem to have dropped it.
Olivier Nicole
@OlivierNicole
Ok! Then if each commit doesn’t have to be an entirely smooth, self-contained, feature-or-fix change, that’s a relief.
Caleb Maclennan
@alerque
I know it's a little bit looser than some projects allow, but I'd say only commits directly on master need to be self-contained (and pass tests, etc.) That means you can have some lee-way for commits in feature branches and only the merge point really matters. But still the commit messages matter because they will go into the changelog (or not depending on the label).
Olivier Nicole
@OlivierNicole
Got it.
Caleb Maclennan
@alerque
This has a downside in that that git bisect kind of needs to be done in two stages, once iterating over merges/commits directly on master, then again on the offending feature branch. It also doesn't guarantee usefulness of such operations inside a feature branch. But so far it's been working out okay I think and the more granular commits in feature branches seem to be more useful than having a guarantee of being self-contained — the latter approach generally just meaning several units of work getting squashed together.
Olivier Nicole
@OlivierNicole
Silly question, is there a notion of a sans serif in SILE? When using LuaLaTeX with fontspec you have \setsansfont. I think about this because I see that Libertinus has “Sans” and “Sans Bold” variants.
Caleb Maclennan
@alerque
Yes and no. It doesn't have any notion of font families except what fontconfig can inform it of. It doesn't care if the font is a serif or a slab or a handwriting or wingdings. But fonts do specify styles that are related to eachother, so Libertinus Sans is a font family name that you can use with \font[family=Libertinus Sans], then later if you switch the weight it will still use the same font, just the bold weight \font[weight=800]. Or you can switch styles, \font[style=Italic]. It known how to look for those weight and shape variants using the Libertinus Sans family name.
But that has nothing to do with them being "sans serif", they just all have the same font family name.
Simon Cozens
@simoncozens
Olivier, if you want to measure a text string in the current font, you can use SILE.shaper:measureChar(s).
The way I understand "chore" is "this is not a user-facing enhancement, but equally it's not just tidying up code - it's reconfiguring internal machinery."
Olivier Nicole
@OlivierNicole

Olivier, if you want to measure a text string in the current font, you can use SILE.shaper:measureChar(s).

Oh okay, that’s good to know.

Olivier Nicole
@OlivierNicole
Well this is a weird one. I get this ugly overlap between two glyphs:
image.png
But when I try to show the boxes around each glyph using debugHbox, the overlap goes away:
image.png
I’m a bit puzzled here, because even if debugHbox modified the cursors (which it shouldn’t), every glyph knows its position and uses moveTo before outputting itself, so it shouldn’t matter.
Is there a history of bugs with this function?
Caleb Maclennan
@alerque
Not that I'm familiar with.
But I agree, it's not much use showing debug information if the inspector changes things when it looks at them!
I would open an issue report to track that, we probably want to put together a MWE and make a specific test out of it.
Olivier Nicole
@OlivierNicole
It’s on my math branch though, so I'm not sure I can come up with a MWE on master.
Olivier Nicole
@OlivierNicole
If I comment out the contents of debugHbox and leave only the calls to pdf.pushcolor_rgb and pdf.colorpop, it makes my overlap disappear.
  debugHbox = function(hbox, scaledWidth)
    ensureInit()
    pdf.colorpush_rgb(0.8, 0.3, 0.3)
    pdf.colorpop()
  end
This is getting interesting.
Simon Cozens
@simoncozens

@alerque, do you remember how I fix

Makefile:1154: *** unterminated call to function `foreach': missing `)'.  Stop.

? Trips me up almost every time.

Ah, gmake 4, that's it.
Caleb Maclennan
@alerque
gmake
Oops, didn't scroll far enough.
Simon Cozens
@simoncozens
OS X's make is now GNU make, but it's make 3, which is not good enough.
Caleb Maclennan
@alerque
...and I get frustrated when I hit and old box with GNU Make 4.2 instead of 4.3.
Caleb Maclennan
@alerque
Debugging remote build systems is not fun.