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!
what are issues that you want to prioritize?
I just made https://github.com/clj-commons/aleph/pull/630 I myself want to see asap. Happy to help with other stuff too.
Ah great, I also meant to do that for the same reason :D
Weird, the Circle checkout phase is failing again. ???
Indeed
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 🤔
Hm mabye it's caused by the / in your branch name @vale
Maybe, but I tend to label my branches git flow-style, too
e.g., bugfix/…
i could try re-pushing on a non-/ branch but it's never caused a problem before
And our circle config file has barely changed in two years
Hmm yeah seems unlikely to be the culprit. The original branch name doesn't even show up in the output.
@vale Can you try adding some whitespace and push up another commit? (We’ll squash later.)
My best guess is that CircleCI changed something on their end wrt how they check out PRs
Hm no, the script is no different from when it last worked in a similar case
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.
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
That's a similar case in that it also uses the refs/pull thing
the only difference there is the PR ID
Ah, the whitespace push did the trick 👍
Now the check is failing with a legitimate error 🙂
i kinda expected something like that to be necessary... that's why i opened https://github.com/clj-commons/aleph/issues/631
Build 200 is much, much older, but yeah, it has the same script and worked
@vale Does the failing check's output suffice to steer you to the solution? (curious because it's the first time it comes up 😄)
It’s something new to support deps.edn
Right - I tried to make the error and hwo to resolve it self-explanatory 🤞
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
Ah, I see
It feels like there should be a way to automate it, or at least automate the check, with git pre-commit or something
A bit too heavy for pre-commit
How so?
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
@kingmob it involves two lein invocations which makes it too slow to run on every commit IMHO
Hmmm, yeah, I didn’t know it was so slow
@vale 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 😬
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
running it shouldn't be a common occurrence so just documenting it is fine imo
But I see how the error message can be misunderstood the way you did - making a note to improve it
Can bb easily get the lein deps, regardless? How hard would it be to duplicate the output of lein pprint without lein?
@vale indeed!
@kingmob 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
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
heh
- 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\"" >&2Ah so the Clojure image we're using already has it? I assumed not. Well then, will keep it in mind 🙂
@vale lgtm! Feel free to include in your PR
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
Ah yeah, that's the unwieldiness I didn't want to drag in 😄
At least in this particular case, given the lein pprint situation, it wouldn't have been worth it.
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?
Not just the CONTRIBUTING file, but inline with the deps themselves
Certainly wouldn't hurt!
@vale Do you want to continue working on CONTRIBUTING.md?
Or is it done?
(for now)
for this PR i think so yeah. unless you want me to add anything dependency-update specific
Nah, that’s ok
@vale Great initiative! Left you some feedback on that one
Merged! Two more to go and the shirt is yours 😄
Or your name on the tree, of course!
haha, i've cleared the hacktoberfest bar on 10/1 already. i'm just happy to see aleph come back to life
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?
@eugen.stan I don’t believe there’s any such thing, but PRs would be welcome.
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
Well, you know, we would like to support HTTP 2 and 3… 😉
thanks for the info and the links. will check them out
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