Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add blogpost about the rr memory debugging saga #1002

Merged
merged 4 commits into from
Sep 25, 2020
Merged

Conversation

Keno
Copy link
Member

@Keno Keno commented Sep 24, 2020

No description provided.

@github-actions
Copy link

Once the build has completed, you can preview your PR at this URL: https://julialang.netlify.app/previews/PR1002/

@Keno
Copy link
Member Author

Keno commented Sep 24, 2020

Copy link
Sponsor Member

@staticfloat staticfloat left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was really fun! Great work!

blog/2020/09/rr-memory-magic.md Outdated Show resolved Hide resolved
blog/2020/09/rr-memory-magic.md Outdated Show resolved Hide resolved
blog/2020/09/rr-memory-magic.md Outdated Show resolved Hide resolved
}
```

So we're just getting the type pointer from some array. We can find out which one:
Copy link
Sponsor Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Instantly lost me. 😂

I'm not sure what the C code is supposed to illustrate; if it's supposed to communicate to us that the code is straightforward, it may not be doing its job. Perhaps you can shrink it down to 2-3 lines? I can read a backtrace, so I know that it's focused on jl_svecset, of which there is only one in the above function, but there's a lot going on in that function and none of it is commented, so the casual reader will most likely either completely skip this or be confused by it.

It's also not clear what "getting the type pointer from some array" means. If you could unpack that a bit, (e.g. "getting a pointer to the type information associated with this array, a common operation done by the Julia runtime anytime it needs to access the type information of an object") it would also be helpful.

blog/2020/09/rr-memory-magic.md Outdated Show resolved Hide resolved
remaining. To quote Sherlock Holmes "When you have eliminated the impossible,
whatever remains, however improbable, must be the truth". Without rr, it may often
be tempting to blame unexplained crashes on bad hardware, cosmic rays or gremlins
living under the floors. Here, we were able to fairly convincingly conclude that
Copy link
Sponsor Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
living under the floors. Here, we were able to fairly convincingly conclude that
living under the floor. Here, we were able to fairly convincingly conclude that

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like floors, indicating the abstract concept of living under peoples' floors rather than a specific floor.

Copy link
Member

@fredrikekre fredrikekre left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mostly formatting and some typos.

@def authors = "Keno Fischer"
@def published = "23 September 2020"
@def title = "Remotely Debugging Faulty Memory - an rr case study"
@def rss_pubdate = Date(2020, 5, 2)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should be updated before merge.

blog/2020/09/rr-memory-magic.md Outdated Show resolved Hide resolved
blog/2020/09/rr-memory-magic.md Outdated Show resolved Hide resolved
blog/2020/09/rr-memory-magic.md Outdated Show resolved Hide resolved
blog/2020/09/rr-memory-magic.md Outdated Show resolved Hide resolved
Array{Any, 1}
```

(note that we masked out the low bits, which julia does use as mentioned above - and
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
(note that we masked out the low bits, which julia does use as mentioned above - and
(note that we masked out the low bits, which Julia does use as mentioned above - and

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is an implementation detail, so the style guide suggests julia (the program/implementation) rather than Julia (the abstract language). I'll code-format it.

to the DRAM and perhaps an electron microscope, but we need not go there, because we've already
determined this is not a Julia bug and the user will probably be replacing their machine.

# Conclusion
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
# Conclusion
## Conclusion

blog/2020/09/rr-memory-magic.md Outdated Show resolved Hide resolved
blog/2020/09/rr-memory-magic.md Outdated Show resolved Hide resolved
One good way to investigate a divergence is to poke around in memory a bit prior to when one suspects the divergence to
have occurred and see what kind of memory modifications could have made the difference. Usually, I just do this by going to the prior event, but in our case, there are 15 million conditional branches between the last two events, which is quite a bit of distance. Instead I hacked up a [quick command](https://github.com/mozilla/rr/pull/2658) that lets us seek directly to a particular tick count. In this case, I arbitrarily chose `143998750000`, about 10000 ticks prior to when the segfault occurred during the recording. Let's go there:

```
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this will highlight as Julia code, but it looks pretty good anyway for the rr traces.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll use bash highlighting.

@StefanKarpinski
Copy link
Sponsor Member

A few edits:

However, instead of seeing this segfault, we ended up somewhere else. In this case (but instead at ‘write’), during the replay, we instead tried to execute a write system call

would be clearer as

However, instead of seeing this segfault, we ended up somewhere else: instead at 'write'. In this case, during the replay, rr found itself trying to execute a valid write system call rather than segfaulting

Ok, so this is actually a pointer to a julia object (the type Array{Any, 1}) with a corrupted high bit.

maybe:

Barring a massive coincidence, this is an otherwise-valid pointer to a julia object (the type Array{Any, 1}) with a corrupted high bit.

I’m a bit lost in the middle part where you’re hunting down the precise divergence point—maybe a bit more explanation of each step and why you’re doing it.

memory on the users machine

should be:

memory on the user’s machine

great post, especially the conclusion!

@Keno Keno merged commit c93f98d into master Sep 25, 2020
@Keno Keno deleted the kf/rrmemorymagic branch September 25, 2020 00:07
@Keno
Copy link
Member Author

Keno commented Sep 25, 2020

Thanks for the feedback. Everyone. Merged. Of course as always, additional feedback can happen via comment here or direct PR.

zygmuntszpak added a commit to zygmuntszpak/www.julialang.org that referenced this pull request Feb 11, 2021
* Update juliacon-2020-open-source-bof-follow-up.md

Fix typo

* Update gsoc-2020-wrapup.md

Add Blog Post link

* Update diversity.md

* Redo hackathon page to support multiple events.

* Update diffeq.md for next JSoC (JuliaLang#994)

* Update "powered by" line to be shorter

Also to what Franklin itself uses.

* Fix JuliaLang#996

* Fix URL in MIT announcement banner

* Use Franklin 0.10

* fix issue mentioned in JuliaLang#998 (JuliaLang#1000)

* Create hacktoberfest.html

Add re-direct for Hacktoberfest

* Set stable release to 1.5.2 (JuliaLang#1003)

* Add blogpost about the rr memory debugging saga (JuliaLang#1002)

* Add blogpost about the rr memory debugging saga

* Address Elliot's feedback

* Fredrik's review

* Stefan's review

* fixing meta tags + hfun (JuliaLang#1005)

* fixing meta tags + hfun

* whitespaces

* comment improvement

* Add more twitter integration (JuliaLang#1006)

- If the blog author's twitter ID is specified, add a small twitter
bird after the author's name
- Add the @JuliaLanguage twitter handle for the twitter site metadata

* using local vars as defaults if defined (JuliaLang#1007)

* Tweak rr post blog title (JuliaLang#1008)

I was told the old title was boring - try to do better.

* Allow large image preview in Google (JuliaLang#1011)

* In dubio pro populo (JuliaLang#1010)

https://twitter.com/KenoFischer/status/1309287103675719680

* Update organizations.md

Add Algebraic Julia Applied Category Theory

* Fix diffeq training example for newer Julia

Julia v1.3+ builds longer stacks, which makes it easier for Tracker.jl to cause a spurious stackoverflow, so I just chopped the example down a bit.

* sitemap generation (JuliaLang#1016)

* Update index.md

Changed 'has' to 'have' to match 'members'.

* A couple extra rr post typos (JuliaLang#1020)

* Add new D&I Page

* Update index.md

Add sign up link!

* added header links for community page

retained styling by reusing css classes

* update link: MIT policy on conflict resolution

* remove double negative in community/stewards.md

Co-authored-by: Mason Protter <mason.protter@icloud.com>

* add paper published at Computação Brasil journal

* Create stickers.md

Add stickers page.

* Update index.html

Switch alert to Hacktoberfest

* Update index.html

* Update classes.md

Include Marzieh Khakifirooz course centered on JuMP Linear Optimization.

* Fix link for Hacktoberfest Hackathon/Meetup 2020

Hello! The old link was giving me a 404 error even when I was logged in to MLH. I think I fixed it by putting in the correct link from [Logan Kilpatrick's Discourse post for the hackathon/meetup](https://discourse.julialang.org/t/julia-language-hacktoberfest-meetup-hackathon-t-shirts/47645).

Old Link: https://organize.mlh.io/events/4574-hacktoberfest-online-global-julia-meetup
New Link: https://organize.mlh.io/participants/events/4574-hacktoberfest-online-global-julia-meetup

The new link in this PR works for me now.

Let me know if this is the correct fix! No worries if not, in that case feel free to disregard.

* Update organizations.md

Closes JuliaLang#995

* Update organizations.md

* Fix for deploy script (JuliaLang#1033)

* fixing deploy to avoid using ssh

* other attempt

* Update classes of Abel Siqueira at UFPR

* Add JuliaSmoothOptimizers organization (JuliaLang#1034)

* Add JuliaSmoothOptimizers organization

* Sort organization list

* Update organizations.md

JuliaAttic is not really relevant in this list...

Co-authored-by: Viral B. Shah <ViralBShah@users.noreply.github.com>

* Create shop.md

WIP Shop page

* Update index.html

* Update index.html

* Bad link for Algebraic Julia

Correct link is https://github.com/AlgebraicJulia

* add Julia High Performance, 2nd Edition

* add teaching activities at the University of Basel

* Add "Train Your Brain" book

* add Julia language companion

* Add Recent UAI 2020 Paper

The paper and its package:
https://github.com/BGU-CS-VIL/VersatileHDPMixtureModels.j

* The "Packages" header should link to the "Julia Packages" page (JuliaLang#1046)

* Add a link to the General registry (JuliaLang#1045)

* Add a link to the General registry

* Update index.md

Co-authored-by: Viral B. Shah <ViralBShah@users.noreply.github.com>

* Update Emacs logo to current one

Emacs logo taken from the offical GNU website:
https://www.gnu.org/software/emacs/

* updating courses in University of South Florida.

* Add RL algorithms section in GSoC project list

* JetBrains => Pluto (JuliaLang#1052)

* Update deploy.yml

* Adds IROS 2020 paper

* some ecosystem updates

* Update index.html

* Update index.html

* Update index.html

* Update index.html

* Create slack.md

* Fix PR comments

* Update foot_general.html

* Switch all Slack Invite links to the new URL.

* Fix typo index.md (JuliaLang#1062)

Fix 2 typos calander -> calendar

* Broken link (JuliaLang#1064)

* Broken link

Best way to fix?

* Link only name

* Fix placeholder expansions in downloads/platform, fixes JuliaLang#1065. (JuliaLang#1066)

* adding explicit language for shell blocks (JuliaLang#1067)

* Update index.md

* Update index.md

* Add courses at Universidad del Norte, Colombia (JuliaLang#1068)

* Adding example project ModulePlay.jl (JuliaLang#1069)

Project example and getting started with Julia tools.

* Update slack.md

cc @DilumAluthge Added note on generating new Slack Invite link.

* Update organizations.md (JuliaLang#1074)

* JSoC projects for DeepChem.jl

* the legal data page is no longer needed (JuliaLang#1072)

* Update current stable release to 1.5.3 (JuliaLang#1076)

* Add entry for Modia.

* Add JuliaControl.

* Add queryverse.

* Add JuliaTelecom.

* Update organizations.md

Add JuliaActors

* advertise jill.py in Downloads as a command-line installation tool (JuliaLang#926)

* advertise jill.py in Downloads as a command-line installation tool

jill.py is a command-line tool (written in Python) that downloads and
extracts official binaries, and makes symlinks for all platforms.

This could serve as a recommended alternatives to package managers such
as `apt`, `brew` and `choco`

* move jill.py after linux and freebsd section

* Add a few more organizations. (JuliaLang#1083)

* Make all dashes the same character.

* Add a few more organizations.

Also create new categories to keep Scientific more manageable:
 - Astronomy/Space
 - Physics/Quantum mechanics

* Fix broken link to MLJ projects, caps error

* add Flux to orgs

* Update organizations.md

Update more orgs per JuliaLang#1085

* Update research.md

* Update research.md

* Update Pluto description (JuliaLang#1089)

* Add DFTK JSOC project (JuliaLang#1090)

* Fix the build

* Update shop.md

* Update Slack Link

* Update index.html

* Update meta.html

* Update index.html

* Add files via upload

* Update research.md

I messed up the new reference the other day, sorry for the noise.

* Create greet.yml

* Update greet.yml

* Update greet.yml

Update greeting from the default.

* Update greet.yml

* remove some links from diversity pages that lead nowhere

* Clarify that windows LTS link is (installer)

* use a Project + Manifest to record the dependencies used (JuliaLang#1098)

* adding author blurb JuliaLang#1009

* Explain the vertical axis of the benchmark timing graph (JuliaLang#1102)

As discussed in https://discourse.julialang.org/t/julia-micro-benchmarks-graph/50005

* downloads: Add link to versions.json (JuliaLang#1101)

* downloads: Add link to versions.json

This file contains info on all published Julia versions (see JuliaLang/julia#33817 for more context).
It's currently not easy to find but may be useful for people who build Julia tooling.

Generation script: https://github.com/SaschaMann/Julia-versions.json/blob/main/build_json_map.jl (written by `@staticfloat`)
Repo that builds and deploys it: https://github.com/SaschaMann/Julia-versions.json

* Add link to schema

* downloads: Update link to JSON schema (JuliaLang#1103)

See JuliaLang#1101

* Fix misplaced formatting in the rendered website (JuliaLang#1104)

The `_` in `Java 1.8.0_17` triggers formatting in the rendered website.

* Update classes.md (JuliaLang#1105)

Adding classes at Universidad Adolfo Ibáñez, Chile.

* Add nightly portable builds for Windows (JuliaLang#1106)

* Add nightly portable builds for Windows

* Update nightlies.md

* Update nightlies.md

* Update index.html

Update the homepage alert.

* Update index.html

* Update guidelines.md

* Update platform.md

Some missing dashes and an equal sign make the CentOS (version 7 or higher) install commands incorrect. I fixed the formatting, and the commands work. The main place to look is at "-add-repo " should have been "--add-repo="

incorrect:
sudo yum-config-manager –add-repo https://copr.fedorainfracloud.org/coprs/nalimilan/julia/repo/epel-7/nalimilan-julia-epel-7.repo

corrected:
sudo yum-config-manager --add-repo=https://copr.fedorainfracloud.org/coprs/nalimilan/julia/repo/epel-7/nalimilan-julia-epel-7.repo

* Update platform.md

Changed "--add-repo" to "--add " under the CentOS 7 section.

* Fix the welcome message

* Update platform.md

Add back in "-repo"

* Update Slack invite URL

* Update pr_comment.yml

Add note that PR previews take ~15 to deploy.

* BioStructures.jl paper citation

* Update mooc.md

added 2 new courses in Julia

* Update books.md

added a book

* Update tutorials.md

added a tutorial with instructions on how to access :)

* Add a blog post on precompilation (JuliaLang#1111)

* Add download links for v1.6.0-beta1 (JuliaLang#1116)

Including the return of Linux PowerPC

* Fix typo (JuliaLang#1117)

* Add link to the JuliaPackages project

Also add a space in the name of the "Julia Observer" project,
matching how the project presents itself.

* Update deploy.yml

Switch to main

* Update greet.yml

Update to main

* Industry Julia Users Contributhon follow-up blog post (JuliaLang#1119)

Co-authored-by: mattBrzezinski <matt.brzezinski@invenia.ca>
Co-authored-by: Nathan Daly <44379820+rai-nhdaly@users.noreply.github.com>

* Ammendment to 2021 Industry Users Contributhon

* Update index.md

* Update index.md

Fix initial library script

* Add files via upload

* Update index.md

* Delete orglogos.png

* Add image and fix path.

* Update slack.md

* Blogpost about Julia Arrow support

* Update books.md (JuliaLang#1127)

* Update alert to show JuliaCon registration

* Update books.md (JuliaLang#1130)

* Address review and add a bit more content

* Latency blog, installment JuliaLang#2: snoopi_deep and flamegraphs (JuliaLang#1120)

* Latency blog, installment JuliaLang#2: snoopi_deep and flamegraphs

Co-authored-by: Nathan Daly <NHDaly@gmail.com>

* Fix date on "profiling inference" blog post (JuliaLang#1131)

* A few wording improvements (JuliaLang#1132)

* Update arrow.md

* Update platform.md

Was helping someone debug installing on a Mac. They were a bit confused about the symlink step. Overall, I think we should just be as radically simple and to-the-point as possible here.

Also for uninstallation, can we just say to nuke `~/.julia`? For most users, it probably doesn't make sense to tell them to delete specific subdirectories within.

* Update platform.md

* Update platform.md

* Update platform.md

* [ImgBot] Optimize images

*Total -- 9,540.21kb -> 7,029.86kb (26.31%)

/_assets/infra/pluto_jl.svg -- 2.57kb -> 0.76kb (70.21%)
/_assets/images/juliaastro.svg -- 4.61kb -> 1.58kb (65.6%)
/_assets/blog/2020-invalidations/invalidation_backedge_analysis.png -- 23.86kb -> 9.10kb (61.86%)
/assets/blog/2021-latency/pprof-top-no-root.png -- 131.57kb -> 56.44kb (57.1%)
/_assets/blog/2018-04-01-tetris-and-you/green_tetris.gif -- 1,328.00kb -> 616.73kb (53.56%)
/_assets/blog/2020-05-02-rr/arch.svg -- 37.53kb -> 20.32kb (45.86%)
/assets/blog/2021-latency/pprof-flamegraph-full-1.png -- 58.07kb -> 31.92kb (45.04%)
/assets/blog/2021-latency/pprof-flamepgraph-no-root-highlight.png -- 90.67kb -> 53.74kb (40.73%)
/learning/assets/JA-3.png -- 912.74kb -> 545.63kb (40.22%)
/learning/assets/JA-2.png -- 372.21kb -> 251.43kb (32.45%)
/community/assets/orglogos.png -- 1,715.55kb -> 1,188.69kb (30.71%)
/_assets/blog/2020-08-10-JuliaCon/JuliaCon2020Sponsors.png -- 286.65kb -> 198.85kb (30.63%)
/_assets/images/juliaopt.svg -- 103.96kb -> 73.65kb (29.15%)
/learning/assets/JA-1.png -- 422.10kb -> 308.79kb (26.84%)
/_assets/images/el.png -- 2.66kb -> 2.05kb (22.87%)
/_assets/images/logo_yao.png -- 602.38kb -> 468.98kb (22.15%)
/_assets/blog/2020-invalidations/SIMD_ascend.png -- 45.68kb -> 35.59kb (22.09%)
/_assets/blog/2020-05-02-rr/data/overhead.svg -- 107.60kb -> 84.97kb (21.03%)
/_assets/blog/2020-invalidations/SIMD_invalidations.png -- 155.37kb -> 124.01kb (20.18%)
/_assets/images/juliacloud.svg -- 3.74kb -> 3.07kb (17.94%)
/learning/assets/books.png -- 385.99kb -> 320.84kb (16.88%)
/_assets/infra/emacs.png -- 13.15kb -> 11.06kb (15.87%)
/learning/assets/schools.png -- 615.75kb -> 523.30kb (15.01%)
/assets/blog/2021-latency/flamegraph-flatten-demo.png -- 12.03kb -> 11.14kb (7.37%)
/assets/blog/2021-latency/flamegraph-complex.png -- 12.10kb -> 11.27kb (6.88%)
/_assets/blog/2020-09-23-rr-memory/faulty-mem.jpg -- 187.18kb -> 175.98kb (5.99%)
/_assets/infra/logo.svg -- 6.81kb -> 6.69kb (1.84%)
/_assets/images/cartpole.gif -- 189.58kb -> 187.34kb (1.18%)
/_assets/infra/cartpole.gif -- 189.58kb -> 187.34kb (1.18%)
/_assets/infra/lorenz.gif -- 190.46kb -> 190.00kb (0.24%)
/_assets/images/lorenz.gif -- 190.46kb -> 190.00kb (0.24%)
/_assets/infra/edit_icon.svg -- 0.41kb -> 0.41kb (0.24%)
/_assets/images/onlinestats.gif -- 497.73kb -> 497.22kb (0.1%)
/_assets/infra/onlinestats.gif -- 497.73kb -> 497.22kb (0.1%)
/_assets/infra/backsplash-3.svg -- 35.49kb -> 35.48kb (0.02%)
/_assets/benchmarks/benchmarks.svg -- 34.04kb -> 34.04kb (0%)
/_assets/blog/2017-08-23-native-julia-implementations-of-iterative-solvers-for-numerical-linear-algebra/resnorm.svg -- 74.23kb -> 74.23kb (0%)

Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>

* Update Manifest.toml (JuliaLang#1136)

* Remove 'soc' directory

* added a potential project, put my name on more specific items

* clarify CCSA

* Add difficulty and project type for DFTK

* Update ideas under the RL Algorithms section

Update the ideas under the RL Algorithms section to meet new requirements.

* Update science.md

* Update projects.md

* Delete science.md

* Update flux.md

* Update tooling.md

* Added two time series projects for GSOC

* Update organizations.md

* added Pythia GSOC to website

* Update slack.md

* Set upcoming release to 1.6.0-rc1 (JuliaLang#1167)

* Add some projects, remove some. (JuliaLang#1164)

* Remove UCX topic from HPC GSoC

@vchuravy has already implemented functional UCX support

* Update Parquet.jl GSoC entry (JuliaLang#1168)

Re-word Parquet.jl GSoC entry focussing on Tables.jl/Arrow.jl integration for large/out-of-core data, performance and support for missing encodings.

* Add me as mentor for "Distributed Training" GSoC (JuliaLang#1170)

* add two publications and update packages links

* Update the Images GSOC projects

Closes JuliaLang#1148

Co-authored-by: Eric Hanson <5846501+ericphanson@users.noreply.github.com>
Co-authored-by: Logan Kilpatrick <23kilpatrick23@gmail.com>
Co-authored-by: Christopher Rackauckas <accounts@chrisrackauckas.com>
Co-authored-by: Viral B. Shah <ViralBShah@users.noreply.github.com>
Co-authored-by: Sascha Mann <git@mail.saschamann.eu>
Co-authored-by: tlienart <tlienart@me.com>
Co-authored-by: Alex Arslan <ararslan@comcast.net>
Co-authored-by: Keno Fischer <keno@juliacomputing.com>
Co-authored-by: vapid babble <vapidbabble@gmail.com>
Co-authored-by: wchoston <wchoston@users.noreply.github.com>
Co-authored-by: pseudocodenerd <shekharmadhav03@gmail.com>
Co-authored-by: James <jpfairbanks@gmail.com>
Co-authored-by: Mason Protter <mason.protter@icloud.com>
Co-authored-by: André Lage <prof.alage@gmail.com>
Co-authored-by: Valentin Martinez Gama <70444148+valenmgama@users.noreply.github.com>
Co-authored-by: Kim Laberinto <kim.laberinto@gmail.com>
Co-authored-by: Abel <abel.s.siqueira@gmail.com>
Co-authored-by: Avik Sengupta <avik@sengupta.net>
Co-authored-by: Frank Schaefer <frank.schaefer@unibas.ch>
Co-authored-by: Bogumił Kamiński <bkamins@sgh.waw.pl>
Co-authored-by: dinarior <dinari.or@gmail.com>
Co-authored-by: Dilum Aluthge <dilum@aluthge.com>
Co-authored-by: Thomas Ingram <taingram@mtu.edu>
Co-authored-by: Changhyun Kwon <chkwon@users.noreply.github.com>
Co-authored-by: Jun Tian <find_my_way@foxmail.com>
Co-authored-by: Jerry Ling <proton@jling.dev>
Co-authored-by: Henrique Ferrolho <henriqueferrolho@gmail.com>
Co-authored-by: Marie-Helene Burle <marie.burle@westgrid.ca>
Co-authored-by: Páll Haraldsson <Pall.Haraldsson@gmail.com>
Co-authored-by: Fredrik Ekre <ekrefredrik@gmail.com>
Co-authored-by: Diego A. Casas <35376194+dact221@users.noreply.github.com>
Co-authored-by: robbyriverside <3100924+robbyriverside@users.noreply.github.com>
Co-authored-by: Marcelo Forets <mforets@gmail.com>
Co-authored-by: Rachel Kurchin <rkurchin@cmu.edu>
Co-authored-by: Stefan Karpinski <stefan@karpinski.org>
Co-authored-by: MA Laforge <ma.laforge.49@gmail.com>
Co-authored-by: Paul Bayer <Paul.Bayer@gleichsam.de>
Co-authored-by: Johnny Chen <johnnychen94@hotmail.com>
Co-authored-by: Jacek <jpnski@protonmail.ch>
Co-authored-by: Dhairya Gandhi <dhairya@juliacopmuting.com>
Co-authored-by: Fons van der Plas <fonsvdplas@gmail.com>
Co-authored-by: Michael F. Herbst <info@michael-herbst.com>
Co-authored-by: KristofferC <kcarlsson89@gmail.com>
Co-authored-by: Thibaut Lienart <ltib@me.com>
Co-authored-by: Robin Deits <robin.deits@gmail.com>
Co-authored-by: Sukera <11753998+Seelengrab@users.noreply.github.com>
Co-authored-by: Rodolfo Carvajal <rodolfo.carvajal@gmail.com>
Co-authored-by: Mustafa M <mus-m@outlook.com>
Co-authored-by: Jason Nicholson <1058191+jasonnicholson@users.noreply.github.com>
Co-authored-by: Joe Greener <jgreener@hotmail.co.uk>
Co-authored-by: rajraomichigan <rajnrao@umich.edu>
Co-authored-by: Tim Holy <tim.holy@gmail.com>
Co-authored-by: Benoit Pasquier <4486578+briochemc@users.noreply.github.com>
Co-authored-by: Waldir Pimenta <waldyrious@gmail.com>
Co-authored-by: Jarrett Revels <jarrettrevels@gmail.com>
Co-authored-by: mattBrzezinski <matt.brzezinski@invenia.ca>
Co-authored-by: Nathan Daly <44379820+rai-nhdaly@users.noreply.github.com>
Co-authored-by: Jacob Quinn <quinn.jacobd@gmail.com>
Co-authored-by: azev77 <azev77@users.noreply.github.com>
Co-authored-by: Nathan Daly <NHDaly@gmail.com>
Co-authored-by: Travis DePrato <773453+travigd@users.noreply.github.com>
Co-authored-by: ImgBotApp <ImgBotHelp@gmail.com>
Co-authored-by: Ian Butterworth <i.r.butterworth@gmail.com>
Co-authored-by: Steven G. Johnson <stevenj@alum.mit.edu>
Co-authored-by: Sebastian Pfitzner <pfitzseb@gmail.com>
Co-authored-by: Andrii Babii <babii.andrii@gmail.com>
Co-authored-by: Julian Samaroo <jpsamaroo@jpsamaroo.me>
Co-authored-by: Tanmay Mohapatra <tanmaykm@gmail.com>
Co-authored-by: Marek Kaluba <kalmar@amu.edu.pl>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants