Discord Build Logger: Difference between revisions

From Discord Client Modding Wiki
Jump to navigation Jump to search
(Add to misc tools category)
m (Grammarly (improve word))
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
The [https://discord.sale Discord Build Logger] is a service that logs every released build of the Discord client since 2018. It is currently offline pending a rewrite<ref group="External Links">[https://github.com/Discord-Build-Logger/Runtime GitHub: Discord-Build-Logger/Runtime]</ref>. It was created by [[Megumin]], and has gone through a number of rewrites since its inception. One day, as always, [[Megumin]] will have an ADHD-fuelled programming session and the build logger will be available again.{{Infobox
The [https://discord.sale Discord Build Logger] is a service that logs every released build of the Discord client since 2018. It is currently offline pending a rewrite<ref group="External Links">[https://github.com/Discord-Build-Logger/Runtime GitHub: Discord-Build-Logger/Runtime]</ref>. It was created by [[Megumin]] and has undergone several rewrites since its inception. One day, as always, [[Megumin]] will have an ADHD-fuelled programming session, and the build logger will be available again.
{{Infobox
| name = Discord Build Logger
| name = Discord Build Logger
| above = Discord Build Logger
| above = Discord Build Logger
Line 29: Line 30:


== Features ==
== Features ==
The Discord Build Logger has a number of features, including some that were not available on any other services at the time of inception.
The Discord Build Logger has several features, including some that were unavailable on any other services when it was first created.


=== Experiment Viewer ===
=== Experiment Viewer ===
For any chosen build, you could view all the [[Discord Experiments]] that were available in that release. Because of its use of [[wikipedia:Abstract_syntax_tree|Abstract Syntax Tree]] parsing<ref group="External Links">[https://github.com/Discord-Build-Logger/Runtime/blob/main/src/experimentParser/ExperimentASTVisitor.ts GitHub: Discord-Build-Logger/Runtime ExperimentASTVisitor.ts]</ref>, it could pick up experiments that were in the code, even if they were not actively registered in the client.
You could view all the [[Discord Experiments]] available for any chosen build in that release. Because of its use of [[wikipedia:Abstract_syntax_tree|Abstract Syntax Tree]] parsing<ref group="External Links">[https://github.com/Discord-Build-Logger/Runtime/blob/main/src/experimentParser/ExperimentASTVisitor.ts GitHub: Discord-Build-Logger/Runtime ExperimentASTVisitor.ts]</ref>, it could pick up experiments that were in the code, even if they were not actively registered in the client.


=== Module Browser ===
=== Module Browser ===
Using [[DPacker]]<ref group="External Links">[https://github.com/MeguminSama/dpacker GitHub: MeguminSama/dpacker]</ref>, another tool written by [[Megumin]], the Discord Build Logger allowed the user to browse every JavaScript file, and the contents of all the individual [[Webpack Module|Webpack Modules]] in a formatted, easy to read format. It also showed which modules depended upon other modules, allowing you to follow the flow of the code.
Using [[DPacker]]<ref group="External Links">[https://github.com/MeguminSama/dpacker GitHub: MeguminSama/dpacker]</ref>, another tool written by [[Megumin]], the Discord Build Logger allowed the user to browse every JavaScript file, and the contents of all the individual [[Webpack Module|Webpack Modules]] in a formatted, easy to read format. It also showed which modules depended upon others, allowing you to follow the code flow.


=== Builds Backlog ===
=== Builds Backlog ===
Build IDs could be provided and the logger could then scrape historic builds as far back as 2018, adding that information to the database. This includes IDs for current, and expired [[Build Override|Build Overrides]].
Build IDs could be provided, and the logger could scrape historic builds as far back as 2018 and add that information to the database. This includes IDs for current and expired [[Build Override|Build Overrides]].


=== API ===
=== API ===

Latest revision as of 15:17, 13 March 2024

The Discord Build Logger is a service that logs every released build of the Discord client since 2018. It is currently offline pending a rewrite[External Links 1]. It was created by Megumin and has undergone several rewrites since its inception. One day, as always, Megumin will have an ADHD-fuelled programming session, and the build logger will be available again.

Discord Build Logger
Discord Build Logger Favicon
Also known asdsale, DBL
AuthorMegumin
Websitediscord.sale
Source codeDiscord-Build-Logger/Runtime
Discord serverdiscord.gg/r5bmSXBEPC
ActiveJune 2019 - present
StatusTemporarily Offline

Features

The Discord Build Logger has several features, including some that were unavailable on any other services when it was first created.

Experiment Viewer

You could view all the Discord Experiments available for any chosen build in that release. Because of its use of Abstract Syntax Tree parsing[External Links 2], it could pick up experiments that were in the code, even if they were not actively registered in the client.

Module Browser

Using DPacker[External Links 3], another tool written by Megumin, the Discord Build Logger allowed the user to browse every JavaScript file, and the contents of all the individual Webpack Modules in a formatted, easy to read format. It also showed which modules depended upon others, allowing you to follow the code flow.

Builds Backlog

Build IDs could be provided, and the logger could scrape historic builds as far back as 2018 and add that information to the database. This includes IDs for current and expired Build Overrides.

API

The Discord Build Logger has a free, undocumented API allowing users to build their own tools or export data from the website.

References