Fork me on GitHub
#aleph
<
2022-10-06
>
Matthew Davidson (kingmob)10:10:03

Hey all, if you’re thinking of contributing, and want a t-shirt (or a tree planted in your name), we’re participating in Hacktoberfest!

💯 1
valerauko13:10:25

what are issues that you want to prioritize?

valerauko13:10:37

I just made https://github.com/clj-commons/aleph/pull/630 I myself want to see asap. Happy to help with other stuff too.

dergutemoritz13:10:24

Ah great, I also meant to do that for the same reason :D

Matthew Davidson (kingmob)13:10:46

Weird, the Circle checkout phase is failing again. ???

dergutemoritz13:10:51

I found https://discuss.circleci.com/t/switched-our-template-over-to-2-0-and-getting-git-error-trying-to-pull-remote-ref/20371/11 which seems to be about the same issue. But if the multiple slashes were the problem, it should have never worked, shouldn't it :thinking_face:

dergutemoritz13:10:36

Hm mabye it's caused by the / in your branch name @UAEH11THP

Matthew Davidson (kingmob)13:10:38

Maybe, but I tend to label my branches git flow-style, too

valerauko13:10:05

i could try re-pushing on a non-/ branch but it's never caused a problem before

Matthew Davidson (kingmob)13:10:13

And our circle config file has barely changed in two years

dergutemoritz13:10:16

Hmm yeah seems unlikely to be the culprit. The original branch name doesn't even show up in the output.

Matthew Davidson (kingmob)13:10:16

@UAEH11THP Can you try adding some whitespace and push up another commit? (We’ll squash later.)

dergutemoritz13:10:16

My best guess is that CircleCI changed something on their end wrt how they check out PRs

dergutemoritz14:10:58

Hm no, the script is no different from when it last worked in a similar case

dergutemoritz14:10:54

https://www.githubstatus.com/incidents/gq1x0j8bv67v looks very relevant: > We identified an issue with the checkout action download which was causing elevated actions failures. But according to them, it should have been fixed 2 hours ago already.

Matthew Davidson (kingmob)14:10:10

That’s not quite true. This section:

if [ "$existing_repo" = 'true' ] || [ 'false' = 'true' ]; then
  echo 'Fetching from remote repository'
  if [ -n "$CIRCLE_TAG" ]; then
    git fetch --force --tags origin
  else
    git fetch --force origin +refs/heads/master:refs/remotes/origin/master
  fi
fi
became this:
if [ "$existing_repo" = 'true' ] || [ 'true' = 'true' ]; then
  echo 'Fetching from remote repository'
  if [ -n "$CIRCLE_TAG" ]; then
    git fetch --force --tags origin
  else
    git fetch --force origin +refs/pull/630/head:refs/remotes/origin/pull/630
  fi
fi

dergutemoritz14:10:13

That's a similar case in that it also uses the refs/pull thing

dergutemoritz14:10:27

the only difference there is the PR ID

dergutemoritz14:10:49

Ah, the whitespace push did the trick 👍

dergutemoritz14:10:03

Now the check is failing with a legitimate error 🙂

valerauko14:10:54

i kinda expected something like that to be necessary... that's why i opened https://github.com/clj-commons/aleph/issues/631

👍 1
Matthew Davidson (kingmob)14:10:30

Build 200 is much, much older, but yeah, it has the same script and worked

dergutemoritz14:10:24

@UAEH11THP Does the failing check's output suffice to steer you to the solution? (curious because it's the first time it comes up 😄)

Matthew Davidson (kingmob)14:10:55

It’s something new to support deps.edn

dergutemoritz14:10:30

Right - I tried to make the error and hwo to resolve it self-explanatory 🤞

valerauko14:10:52

I was confused by the "deps/lein-to-deps". I thought it meant lein deps or lein-to-deps, not realizing there's a deps folder

Matthew Davidson (kingmob)14:10:12

It feels like there should be a way to automate it, or at least automate the check, with git pre-commit or something

dergutemoritz14:10:36

A bit too heavy for pre-commit

valerauko14:10:53

at work i have a lein alias that runs lein ancient upgrade and lein pom then all i need is run lein update-deps and it just does all the steps we use the pom.xml to get dependabot alerts, so it's a very similar workflow to this

dergutemoritz14:10:07

@U10EC98F5 it involves two lein invocations which makes it too slow to run on every commit IMHO

Matthew Davidson (kingmob)14:10:38

Hmmm, yeah, I didn’t know it was so slow

dergutemoritz14:10:49

@UAEH11THP Yeah it could be written as a Leiningen task instead and I started doing that initially but it became pretty unwieldy. Another option would be to invoke the shell script via Leiningen but that would add yet another heavy lein invocation 😬

dergutemoritz14:10:27

FWIW, I also condidered babashaka but didn't want to add another external dependency because that's also quite unwieldy to do the way things are set up right now

valerauko14:10:13

running it shouldn't be a common occurrence so just documenting it is fine imo

dergutemoritz14:10:18

But I see how the error message can be misunderstood the way you did - making a note to improve it

Matthew Davidson (kingmob)14:10:26

Can bb easily get the lein deps, regardless? How hard would it be to duplicate the output of lein pprint without lein?

dergutemoritz14:10:08

@U10EC98F5 At that point I didn't yet have the epiphany of using lein pprint and would have implemented a good enough parser for the raw project.clj

Matthew Davidson (kingmob)14:10:17

I don’t personally mind adding bb as a dep. It’s used in many of the CircleCI builds already, so it’s not a new depthere

valerauko14:10:33

-        echo "ERROR: ${f} needs to be re-generated via deps/lein-to-deps" >&2
+        echo "ERROR: ${f} needs to be re-generated using the script \"deps/lein-to-deps\"" >&2

👍 1
dergutemoritz14:10:44

Ah so the Clojure image we're using already has it? I assumed not. Well then, will keep it in mind 🙂

dergutemoritz14:10:08

@UAEH11THP lgtm! Feel free to include in your PR

Matthew Davidson (kingmob)14:10:01

I don’t think it does, or if it does, I don’t think it’s kept up-to-date with the speed of bb development. Pretty sure slipset wrote a script to download the latest as needed

dergutemoritz14:10:15

Ah yeah, that's the unwieldiness I didn't want to drag in 😄

dergutemoritz14:10:44

At least in this particular case, given the lein pprint situation, it wouldn't have been worth it.

Matthew Davidson (kingmob)14:10:45

I guess if it’s only needed when updating deps, we can live with it. Can we add a comment reminding us in the project.clj?

Matthew Davidson (kingmob)14:10:04

Not just the CONTRIBUTING file, but inline with the deps themselves

👍 1
dergutemoritz14:10:14

Certainly wouldn't hurt!

Matthew Davidson (kingmob)14:10:03

@UAEH11THP Do you want to continue working on CONTRIBUTING.md?

valerauko14:10:40

for this PR i think so yeah. unless you want me to add anything dependency-update specific

dergutemoritz14:10:09

@UAEH11THP Great initiative! Left you some feedback on that one

👍 1
dergutemoritz15:10:45

Merged! Two more to go and the shirt is yours 😄

dergutemoritz15:10:00

Or your name on the tree, of course!

valerauko15:10:18

haha, i've cleared the hacktoberfest bar on 10/1 already. i'm just happy to see aleph come back to life

Eugen19:10:20

I was checking out Jetty the other day qnd saw they have a Conformance / HTTP compatibility information and I think even tests. Is there something like this for Aleph? a list of RFCs that aleph (tries) to conform with? Is there a TCK to check? is there prior work or interest in this direction?

Matthew Davidson (kingmob)03:10:43

@U011NGC5FFY I don’t believe there’s any such thing, but PRs would be welcome.

valerauko04:10:55

I'm aware of https://github.com/summerwind/h2spec/ for http/2 and the apparently since-then-unmaintained https://github.com/kazu-yamamoto/h3spec/ for http/3 but I don't know of any for http/1.1

Matthew Davidson (kingmob)06:10:18

Well, you know, we would like to support HTTP 2 and 3… 😉

Eugen06:10:12

thanks for the info and the links. will check them out

valerauko06:10:34

i have implemented http/2 before in clojure on top of netty so i can help with that. i also tried my hands at http/3 but their incubator project was too early at that time so i bailed. https://github.com/valerauko/iny

👍 2