#topgg-open-source
1 messages · Page 2 of 1
One message removed from a suspended account.
i just updeted your perms
updeted
One message removed from a suspended account.
well actually knowing topgg
One message removed from a suspended account.
you wont be able to for like an hour due to cache
One message removed from a suspended account.
One message removed from a suspended account.
One message removed from a suspended account.
its updated on my end so you just have to wait 
One message removed from a suspended account.
I wonder, what do you need the API token of the lib dev bot for?
because... she's a lib dev?
That says nothing about what I just asked
One message removed from a suspended account.
One message removed from a suspended account.
One message removed from a suspended account.
One message removed from a suspended account.
One message removed from a suspended account.
^
One message removed from a suspended account.
One message removed from a suspended account.
I feel like this bot was made for a different purpose but that works as well, never saw the actual reason behind it
Lets not be condescending
One message removed from a suspended account.
the bot is useful for testing things like posting stats
One message removed from a suspended account.
when you don't want to modify your actual bot's server count
One message removed from a suspended account.
Sure okay
One message removed from a suspended account.
👍
Me when I'm in a being annoying competition and my opponent is Faithie 
One message removed from a suspended account.
One message removed from a suspended account.
One message removed from a suspended account.
Why not commit it directly? Aren't you the only one maintaining the .NET SDK?
One message removed from a suspended account.
One message removed from a suspended account.
One message removed from a suspended account.
One message removed from a suspended account.
I mean sure but who are you waiting for to review?
One message removed from a suspended account.
so, a long time ago i was supposed to create a C++ library for posting to top.gg etc
i havent yet made a library that is standalone for it, but i took the first steps of making native support to post to top.gg in my latest bot rather than doing what i did the last two times, handing it off to backend php
heres what i got:
so theres a base struct type called botlist which accepts the details of a bot list; 99% of bot lists are compatible with top.gg, give or take naming of two json fields, so this is compatible with near everything. There's a timer that runs every 15 minutes setup from the bot's on_ready, which calls the post() function of all registered bot list struct types
defining a bot list's structure is simple as:
so basically this is all predefined, and all you'd need is config:
"botlists": {
"top.gg": {
"token": "XXX"
}
}
it would need a fair bit of work to make it generic to not require D++, but as it stands, with this code its required as it provides the timer functionality and the asynchronous HTTPS POST... other requirements are only nlohmann::json.
@karmic valley @dusky shale wanna continue working on the C++ SDK?
the library has lacked any development since - do y'all have plans for it?
i can work with u too now
let’s rewrite that thing
its rushed as u can see
we could use these
though it’s been a while since i created a project using cpp
i'm still stuck on how to write the http stuff (also things like C++ coroutines)
i could work on the library's core features once the http part is done tho
everything else after that is smooth sailing
i might be doing so soon, i just have some bootstrapping of my new bot to do first
C++ coroutines arent something you can really do standalone imho
but they are rather cool
why is that?
because it takes a massive amount of boilerplate
and you need something underneath it to marshall the coroutines
like an event driven loop
you cant just shoehorn two or more of those easily into a program
i think they expect some kind of framework like boost or something (or in our case dpp) to implement the coroutine support
Yeah unfortunately C++ coroutines are very complicated and you need to do a ton of stuff to get them working
You can read https://theshoemaker.de/posts/yet-another-cpp-coroutine-tutorial
@dusky shale
You don't need to go the callbacks path, you can definitely do it with coroutines but of course it's going to take much longer
And you'll have to learn C++ coroutines, which is hell :)
ain't no way Voltrex finally saying that something in C++ is hell 🙀
@deft merlin hai, can you dm me Top.gg's library developer bot token?
i needed a token to test my SDK but i don't have a bot listed
I can in the morning yeah, I'm currently in bed
I will remind you about dm null lib bot token* in 8 hours. Make sure I can DM you.

@deft merlin good morning xiuh, any information regarding top.gg's documentation page? (docs.top.gg)
i want to add Rust's documentation to https://github.com/top-gg/docs
Top.gg documentation website. Contribute to top-gg/docs development by creating an account on GitHub.
(or any staff member who is a part of the task force handling this, if the task force is even still working)
Me and xiuh had a conversation about the docs page awhile back. Iirc a different staff member needs to change a setting for us to be able to update anything. That was the last I heard.
soooooooo how has that been going? it has been a long time since 9 September 2023
Idk, I'm not the taskforce leader for this right now. Real life has been in the way.
Family friendly currently.
I imagine he wouldn't be up to date on the situation. I never had the chance to update them on that situation before he took my place.
@faint fern
Gotcha! I'll see what I can do 
soo any updates?
One message removed from a suspended account.
One message removed from a suspended account.
Got busy moving back home for the holidays so it slipped my mind. Handled it now but don't expect anything before sometime next year as many are on holiday vacation 

any updates on it? @faint fern
I have to check in with some people from medal and we just got back today
hopefully in the next few days
thanks xiuh!! ❤️
please let me know
oh btw are we allowed to post bot stats for testing the autoposting feature through the lib dev bot?
Yep that's fine for testing
thanks! apparently i forgot that there was 'auto' in autoposter 
my SDK's autoposter isn't even auto at all, i'll fix it in a future major update
learning about Serenity will be fun
any updates on it? @faint fern
None yet
I'll poke xiuh when I get home from uni
aight
@drowsy thistle works now?
mhm
Dope
just wanted to say about the issue again but top.gg is broken atm so i'll ask again later
be gone intruder
Wait are not everyone supposed to see this?
Ask xiuh
everyone should see
but not talk 👍
Yea I fixed
One message removed from a suspended account.
to elaborate:
- search never was a thing in the code

- number makes much more sense for shards.
wait what
what happened to search
it used to work

yeah it used to work
when?
i mean i use search api and it works rn and has for a few months
which route?
One message removed from a suspended account.
idk you will have to check that
One message removed from a suspended account.
@cunning locust @drowsy thistle ???
i gotta search my chat logs cuz i've sent it before
One message removed from a suspended account.
wth i thought pim did something about it 
One message removed from a suspended account.
why

because i am fully convinced it worked when i ran dbl simulator (late 2021)
then make an api route for the new search system? 
the top.gg API doesn't feel right without the /api/search route
it was a site that let you fake approve bots based on a leaked ss of the old mod dashboard 
One message removed from a suspended account.
api/v1 maybe
it was funny
but for now i wanna just get it over with :D
anyways idk who maintains all the libs
but the number change might be breaking?
nah
One message removed from a suspended account.
One message removed from a suspended account.
also docs deploy works again
yipee
lesgo
One message removed from a suspended account.
there's a list?
CODEOWNERS is a thing in docs
One message removed from a suspended account.
but that doesnt seem up to date
One message removed from a suspended account.
One message removed from a suspended account.
poggies
fish a real one
anyways
good progress today
will deploy and hope the api doesn't explode
nah im sure maintaining the api is way easier than the site
real
One message removed from a suspended account.
gl 🙏
im just hoping at this point
checked and python + js libs both handle shards correctly
One message removed from a suspended account.
W
One message removed from a suspended account.
can you check mine too

blazingly fast!! 🚀
dotnet handles it
One message removed from a suspended account.
god im such a goated dev
One message removed from a suspended account.
One message removed from a suspended account.
lets hope the deploy works tho
One message removed from a suspended account.
ff runs the external development task force, so he is the point of contact for this stuff ^-^
cpp handles it too
@faint fern get ur ass over here
so basically all along
the api was just wrong
and everyone ignored it

One message removed from a suspended account.
lol the C++ one hasn't been maintained for months
idk about php, it doesn't say much
buffer left
i think its based on what the user sends
go handles it
also go supports this, wonder if the API still returns it
ruby handles it
@cunning locust have you checked the struct definitions in my Rust SDK?
lua only supports the server_count and shard_count fields, not shards array
don't just only look at that method
One message removed from a suspended account.
do people still use ruby
One message removed from a suspended account.
in general
2 refs i can find
One message removed from a suspended account.
rust confusing
rust ez
One message removed from a suspended account.
One message removed from a suspended account.
anyways, every lib supports it!
One message removed from a suspended account.
One message removed from a suspended account.


my ass is over here
time to read what be going on
oh yes library maintainer lists
this is what happens when I dont actually note down what im supposed to do I just forget
my brain pushes that to the side to save space for random wikipedia articles I find at 2 am
but you are a taskforce leader

true but that does not make my memory better
^ I did set up some microsoft to do app to help me keep in touch of things I need to do tho
nice nice
fun fact
you can't read a body twice
now i have to do this
app.use((req, res, next) => {
// migrate /api to new part of the app dir
if (req.path.startsWith("/api")) {
return next();
}
return express.json({ limit: "1mb" })(req, res, next);
});
@kindred maple do u know who maintains the js api
One message removed from a suspended account.
@tiny shard the hasVoted url uses undocumented api stuff
/api/check should be /api/:botid/check
hi
for now i'll keep the logic in, but wanna get rid of it :3
we dont take the botId as a parameter
you can fetch it from the token body
i was pushing for the ability to pass an @me to properly recreate the functionality
to avoid breaking the api
const jwt = my_topgg_token
const payload = jwt.split('.')[1]
const payloadDecoded = btoa(payload)
const payloadDeserialized = JSON.parse(payloadDecoded)
return payloadDeserialized.id
either way
i'll keep maintaining it for now
since it's used in most js bots
sure
yeah i mean, we're in a troubled situation where most people dont update their sdk
yea fair
other things seem ok btw
just wasn't aware that was a thing while doing this migration lolol
also docs repo is fixed
this is finally becoming real !?!
good to know
lol
yea
remember the golden "we'll have a v1" days
we'll have a v1
but for now im cleaning up our codebase
and one of the things is the v0 api
that hasn't been touched for years
i use it too in my SDK lmao
i still don't get why you would want to check votes for other bots anyway
you would get a 403 afaik
do you know how to retrieve the bot ID from the API token?
/api/bots/check works rn
check this @drowsy thistle
ah icic, thanks!
i should remove the search feature in my SDK, right?
it doesn't do anything yeah

@dense barn
https://github.com/top-gg/docs/pull/85
The following pull request attempts to add a documentation page for the Rust SDK again, after the previous attempt #80 failed because it was pretty much ignored (just like any other pull request)
O...
@drowsy thistle merged it!
lesgoooo ❤️
any idea when they will be pushed to docs.top.gg?
i think
theres a bug in the publish

it spent like
2h publishing
ill check it soon

One message removed from a suspended account.
Hey! This is Buffer. My account was compromised, and I didn't realize it until someone brought up the issue. By then, it was too late—the hijacker had already published those commits. They were never published by me, and I was unaware of my GitHub account being compromised until this incident. I'm truly sorry for what happened. Regarding my departure from the Top.gg server, I felt pressured and uncertain about what to do. I was embarrassed, and I apologize to @drowsy thistle for cutting you off. I was afraid you would be against me. I'm sorry for this late explanation; personal matters have kept me busy, which is why I didn't realize I had been hacked. I'm very grateful to those who helped me revert the commits. I've forgotten how to use the git command already. That's all, thank you.
I'm also writing this message because some guy posted me on bleepingcomputer and it's affecting my reputation... I'm truly sorry..
(copy-pasted my explanation on Github)
It's okay ❤️❤️
Thank you!
Someone please remove my contributor role now, I don't even deserve it lol
I would be more than happy to become the current maintainer for the Python SDK

it's okay buffer, you've tried your best! ❤️
I understand how you feel, but rest assured, nobody blames you, the lack of process is at blame at a core level.
This was a good wake up call to ensure we can both keep our users safe moving forward and create a more collaborative environment for individual contributors
This is a good wake up call for the Python SDK itself too because it's incredibly outdated 
can you make me the new maintainer 
go for it 
poggies
also i saw u were unable to merge urself?
i guess we need to add you to the repo
good moment to test if the protected branches work as intended :)
@drowsy thistle do you have some time to help test?
oh, what about the rust-sdk ones?
i'm able to merge that one
which repo?
no
that requires me to create a new branch and make a pull request
yea that's good

any library dev should be able to review your code
so feel free to use this channel as like the channel for anything SDKs
ofcourse I will also be around to do reviews
and will do more of them 
are you sure? because it says that "At least 1 approving review is required by reviewers with write access"
i doubt any library dev has write access lmao
yea we'll change that ofcourse
lib devs can be added to the top-gg-community org directly now because its no longer shared with internal code
kekw nice
anything you can do about https://github.com/Top-gg-Community/python-sdk/pull/79 ?
Fixes #75
Fixes #78
Proposed Changes
Add Python 3.12 support by making the aiohttp dependency use versions >=3.9.0.
Add Python 3.11 support by migrating from setup.py to pyproject.toml.
Make th...
lmaooo
i've replied to some 
@drowsy thistle replied back!
replied back! now waiting for shivaco (now sky) to do something about the API token

while you're waiting, you can check https://github.com/Top-gg-Community/rust-sdk/pull/20 :D
approved both
@dense barn noooooo 
mhm

ok its back
no idea
@kindred maple check https://github.com/Top-gg-Community/dotnet-sdk/pull/27 
One message removed from a suspended account.
One message removed from a suspended account.
sure :D
One message removed from a suspended account.
One message removed from a suspended account.
One message removed from a suspended account.
if you can merge it, merge it
One message removed from a suspended account.
slay
One message removed from a suspended account.
poggies!
documentation overhaul 
very fancy
@faint fern Veld has summoned you sir
I can take a look after dinner 
@faint fern or @karmic valley https://github.com/Top-gg-Community/cpp-sdk/pull/6 
looks good but is there a reason you manually include dpp/win32_safe_warnings.h?
I'm guessing so you get the same warnings turned off
yup
you probably don't need to ever pass dpp::snowflake by ref
it's simply a wrapper object around a single uint64_t, so the whole class only is 64 bits wide
alright, thanks
what C++ standard is needed? 17 or 20?
nice
looks good to me
you could probably use a dpp::iconhash for avatar
instead of string
but then you'll need a separate bool or bit value to indicate animated
why so?
it's smaller
two 64 bit integers put together into a 128 bit value
ooooo alright!
I'll take a look after brekkie! 
https://github.com/Top-gg-Community/cpp-sdk/pull/7
@drowsy thistle @faint fern
This PR adds support for D++ asynchronous coroutines.
For this to work you must:
Use a C++20 supporting compiler (g++11 onwards etc)
build and install D++ with the DPP_CORO cmake flag
build cpp-sd...
i made a PR that adds optional coroutine support to the top.gg C++ library
using coroutines if you can is so much neater, it avoids callback hell
old API remains unchaged, if you enable it via a cmake flag it will add new function calls to the client class, e.g. co_get_user(user_id)
meaning you can do this:
#include <topgg/topgg.h>
#include <dpp/dpp.h>
#include <iostream>
int main() {
dpp::cluster bot{"your bot token"};
topgg::client topgg_client{&bot, "your top.gg token"};
const auto result = co_await topgg_client.co_get_bot(264811613708746752);
try {
const auto topgg_bot = result.get();
std::cout << topgg_bot.username << std::endl;
} catch (const std::exception& ext) {
std::cout << "error: " << ext.what() << std::endl;
}
return 0;
}
My subject matter knowledge for c++ is unfortunately quite lacking. However everything looks in order and very nicely done
Yep looks really solid! Good work
it may need some documentation
I don't think the readme is best place for it, where do you think that should go?

doxygen-generated documentation perhaps?
yeah sounds good
can someone please merge and approve: https://github.com/Top-gg-Community/cpp-sdk/pull/8

will do once i wake up
@faint fern @karmic valley can you take a look at this? thanks! https://github.com/Top-gg-Community/cpp-sdk/pull/10
sure
left a review
small stuff
one thing I didn't put in review but worth discussing I'm really not sure how all that move && voodoo is going to interact with dpp coroutines
as they're quite fussy about ownership
but I'm sure it's fine

done, can you check it again?
move operators?
&&
yeah
i am not sure how that stuff works alongside dpp async
because when you co await in dpp, dpp owns the promise
so what are you moving?
the future ig?
return std::forward<dpp::async<result<T>>>(m_fut).operator co_await().get();
but if youre able to run it and it doesnt crash immediately.... its probably ok
seems like overthinking ownership
it isnt rust 😄
😭
btw, what do you think of all the "members must start m_" stuff
im not keen as any good ide tells you this info, but...
could be worse, could be like m_lpszString

i believe non-public members must start with m_
idk.. felt good to differentiate which variable is a part of the class object and which isn't
WHAT WHY
this-> is disgusting
🤢
it is clearly telling the reader you are referring to a variable that is a member of this
m_ is a million times better than this->
saves you from typing 4 characters 
but still gets the idea across
lol
spoken like a rust dev
we could also rename void to vd
and int to i

at least we arent forced to do like public static final void main()
at least its not java
uint64_t

i think some languages go too far, you have to be able to read the code
i cant agree with rusts pub fn mut lol
must be hell for non-english speakers
lmaoo you would get used to it
at least it's not like go
where members starting with a capital letter means public
Alr so im not very good at cpp anymore but seems the PR has a brain seal of approval
I'll merge

yo @drowsy thistle, im adding google test on the cpp sdk. Im also gonna implement the webhook feature on the cpp version since it hasnt been implemented yet
poggies!
good luck on it!
this is wild
@dusky shale please let me know if you've made a pull request! 
oh hi! im actually struggling on building it, but I'll get into it eventually
oh, if you're struggling, feel free to ask me! maybe i can help ya
what are you struggling on?
are you able to build the sdk yourself?
yeah!
the build instructions are in the readme
the Windows one worked for me at least
thats weird im getting code related errors
im fixing them one by one and will update you
oh, great to hear! if you're stuck feel free to let me know
i don't have any information on what you're doing because you didn't fork the repo hahaha
you won't!
just make a separate branch
and the upstream branch should be untouched
if you wanna make a change in which you're afraid that it could make a mess, just make a branch for it
D:\Important Files\Codes\CPP\cpp-sdk\src\models.cpp(91,12): error C2061: syntax error: identifier 'TOPGG_UNUSED' [D:\Important Files\Codes
\CPP\cpp-sdk\build\topgg.vcxproj]
i didnt even touch the models.cpp lol
thats just a sample error that im getting
theres alot
im fixing them dont worry
TOPGG_UNUSED is supposed to be a macro that expands to an unused attribute if it exists, or nothing if it doesn't
ill create a branch soon
poggies
check this out https://github.com/Top-gg-Community/cpp-sdk/pull/11
will do! 

btw if u see removed things im testing something lol
noted!
i was able to fix all the errors and i can now run the tests
the pushed commit should do that too
poggies, good job on that! 
yoo! can u run the tests? lmk if ur getting this too:
0% tests passed, 1 tests failed out of 1
Total Test time (real) = 0.02 sec
The following tests FAILED:
1 - topgg_tests (Exit code 0xc0000135
)
bc i think this is a dependency issue
i am eating outside for a bit, will look into this in a few hours!
@dusky shale heya uhm
it would be cool if the changes stayed consistent with the codebase's style lol (like there are some usage of 4-space indentation)
but it's okay!
oh i didnt know that
what are the other things that i need to know about the repo?
so i can take 📓
why remove the inline?
i dont think its needed
is it?
though member functions defined insdie a class are implicitly inline by default
but we can add it back if u want to
nothing will change after that

its restored again
oh really? never knew that hahahaha
thanks for letting me know! ❤️
yup! https://en.cppreference.com/w/cpp/language/inline
A function defined entirely inside a class/struct/union definition, whether it's a member function or a non-member friend function, is implicitly an inline function unless it is attached to a named module(since C++20).
interesting to know!
@dusky shale soooo how do i test it?
oh sorry! you have to create a dir first
mkdir build
if exists, rmdir it first
then cd into it
then cmake --build .
it uses google test so ctest --output-on-failure
@dusky shale why did you remove these lines?
thats what im telling u earlier
here
oh
for some reason i succesfully built the project removing those
im using Windows so
🤷♂️
fyi
if(WIN32 AND NOT EXISTS ${CMAKE_SOURCE_DIR}/deps/dpp.lib)
string(TOLOWER ${CMAKE_BUILD_TYPE} INSTALL_DPP_BUILD_TYPE)
execute_process(COMMAND powershell "-NoLogo" "-NoProfile" "-File" ".\\install_dpp_msvc.ps1" ${INSTALL_DPP_BUILD_TYPE} WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
endif()
``` runs the install D++ script for Windows (Microsoft Visual C++) if it couldn't find any
OH
that's what install_dpp_msvc.ps1 is for hahahaha
is there anything else that i need to change or know? ill be out after a few mins
oh, are you busy?
nope ill just drive
oh alrighty
@dusky shale why did you remove these docstrings?
is it for the same reason?
oh nope!
if u saw my comment on the commit, i was about to create the docs on docsify and was about to edit the docstrings because of the new updates
docsify?
why not doxygen?
i use docsify on every repo i got lol
idk about this
docsify is like an md to html converter
ahh
doxygen is much more popular among the C++ community tho
that's what i was aiming for with those docstrings
thanks! ❤️
Hey! Any updates? 🙂
Merry Christmas btw!
thank you soo much buffer! merry (late) christmas to you too! hahaha


i've been waiting for more updates from you buffer!
oh lol, i think it's all good now. I just added the webhook feature on the c++ version lol
other than that u did everything good
will check!
uhm, where's the commit that adds the webhook feature?
oh right, my bad!
your commit messages don't seem to mention webhooks in them so i assumed it's not implemented yet haha
hiii, thanks! can you show me build output of yours of the current repo? like the latest repo without my commits... Its weird because it shows these on mine when I cloned the repo and built it lol
i am on Windows 11, so i just ran the build commands as instructed in the readme
cmake -B build .
cmake --build build --config Release
I see, then I gotta void every commit that is related to the build script now

any updates on that?
Nope, nothing! I've been very busy lol

One message removed from a suspended account.
please refrain from minimodding, or i am reporting you to xiuh

does anyone here have access to the repo settings of the Python, C++, and Rust SDKs? i want to add a few secrets
@faint fern do you have access?
can check later 
😭
@faint fern maybe xiuh can do it for me
sounds good!
IM SORRY
i dont want to make family friendly sad


do you guys think i should adapt the breaking changes (i have a v0 branch in every top.gg sdk that i maintain) to the python sdk because it's has not been released since 2021?
should gift them a year of nitro for the troubles /s
bet
they deserve it
it's a huge honor 
so i recently decided to keep track of things in a spreadsheet
so here's my current progress on the SDKs: https://docs.google.com/spreadsheets/d/e/2PACX-1vQNAKeJ1Sdo4YGxuANSAHgNs5X7al7pP8tfsu5xUA7mTRN5gIpmS5FaH8z6kaVQmp2ttk7MZLOO8LZM/pub?gid=0&single=true&output=pdf

columns marked in red are affected by v0, bold columns are of priority
alright the Python and C++ SDKs are now pretty much done!
the Rust SDK is done too, but its autoposting feature is still not tested yet
awesome!
hey, can anyone review this? https://github.com/Top-gg-Community/node-sdk/pull/91
The following pull request deprecates many legacy features that are no longer supported/ignored/removed in Top.gg API v0 while also adding many new features, such as page in getVotes and support fo...
approved, left some comments, you may not need to destruct the token
really?? i thought it you patched it 😭
done, can you re-review it again 
lgtm
sorry veld but can you do it again 😭
wait until ci is done
i realized i messed up the docs because of ctrl+ring and you've already reviewed it by the time i made a commit lol
😭
it's done (i'm not sure if the jest tests are supposed to fail like that tho)
i assume not
FAIL tests/Api.test.ts
● Test suite failed to run
Got a malformed API token.
44 |
45 | if (tokenSegments.length !== 3) {
> 46 | throw new Error("Got a malformed API token.");
| ^
47 | }
48 |
49 | const tokenData = atob(token[1]);
at new Api (src/structs/Api.ts:46:13)
at Object.<anonymous> (tests/Api.test.ts:5:18)
no there's not
it doesnt need to be a real token
it just need to pass your validation
but that would require a real token, no?
no?
your token validates
random-string.base64objectwithid.random-string
its close enough to the structure of the token
it doesn't check validity
neither is it able to
because some of them do need to validate actual valid API requests
the library doesnt need to validate the api
if you want to write tests that test response cases use a mock
@dense barn just to confirm for above, there will never be a supported use case for using the stats endpoint on another bot that isn’t the one authenticated?
i dont know
we support both
im just commenting on that it doesnt need to change because the api endpoint still exists
gotcha. and as for this deprecation stuff, are the existing endpoints still working or will they just break
because if they’re just gonna break we ought to just release a new major and move on rather than deprecating
gotcha
we just cut down on the legacy api
some properties from the new API could break
while retaining the actual used features
yeah
such as invite, support, and avatar returning the full URL now
Parsing out the id is certainly an interesting choice. Why couldn’t the api just do an @me/ like discord?
all of my SDKs will have a major release
originally wanted to add deprecated to everything but i just gave up
well all this console log deprecated stuff?
read the pinned post, the v0 api wont get new features
any of the bot api routes are not deprecated
you dont need to parse the token
all the api endpoints still work without needing to do so
still doesn't work with a mock API token like adasdasdasggfg.eyJpZCI6IjEwMjY1MjU1NjgzNDQyNjQ3MjQiLCJib3QiOnRydWV9.asddsgdasdgds because it just returns 403s for every valid request
you cant send a request to the API
because you're not testing the API
yep, but unit tests arent' about testing external code
you don't want to have tokens in your testing code
that's bad practice
test your code
oh wait
changing it from authorization to Authorization changed it from 403 to 401

yea
@tiny shard what do you think about this?
ohhh wait nevermind it all makes sense now
i didn't see jest.setup.ts 
@dense barn it should work now, check the pull request again
oh btw if anyone knows go, can you review this? thanks! https://github.com/Top-gg-Community/go-sdk/pull/12
The following pull request removes many legacy features that are no longer supported/ignored/removed in Top.gg API v0 while also adding many new features, such as page in getVotes and support for r...
One message removed from a suspended account.
yes
One message removed from a suspended account.
One message removed from a suspended account.
One message removed from a suspended account.
One message removed from a suspended account.
(im kidding, i dont know much about php, lua, or ruby)
its up to their maintainers
i aint maintaining seven SDKs at once 💀
im gonna die when v1 gets announced
One message removed from a suspended account.
One message removed from a suspended account.
every component of the API structure should be implemented now!

every endpoint is also implemented (except for autoposter in the Java and C# SDKs)
(the libraries are still largely not tested yet though, i'm still waiting further updates from Veld to be able to test them properly.)
the one in our dms
oh and also i needed to clarify whether the search parameter in GET /bots was removed or not, as it's no longer available in the docs
the Python, C++, Rust, Lua, Java, Node.js, Go, Ruby, and C# SDKs have been tried and tested! (except for the broken POST /bots/stats endpoint which is beyond my control)

whats broken about it? 
it gives a 500
@kindred maple just wondering, how are we supposed to use CreateListener and/or SubmissionAdapter?
every aspect of the Python, C/C++, Rust, Lua, Node.js, Go, Java, and Ruby SDKs has been implemented and tested. 1 SDK left to go.
the autoposter feature has been implemented and tested in the java sdk
all that's left now is the C# sdk
i'm thinking of making SubmissionAdapter public instead of internal (since it already has RunAsync() implemented), make it inherit a base class Adapter which handles the Start() and Stop() methods, and remove the lastTimeUpdated check since it's being called periodically every updateTime by Start(). Adapter here implements the IAdapter interface
i don't know much about C# so i could have interpreted this incorrectly, please let me know if i should revise my changes
if anyone wants to see my changes, see: https://github.com/null8626/dotnet-sdk/compare/313bd24da8e10ece77b07f2dc00ef692852cc36e...master
this implementation of the autoposter has been successfully tested, which means that now every SDK (except php) has been successfully updated to v0 
(which is deprecated i know but still)
time to work on updating the docs!
@dense barn are widgets deprecated? https://top.gg/api/widget/status/160105994217586689.svg?leftcolor=FFFFFF gives out 500
no
been a pain maintaining them though, we rewrote the service after this service error
so im deploying and fixing that later
why?
new service infers colors from your bot metadata
sooo no parameters are needed? like at all?
three?
yeah
i was the original author :)
i wrote it as a miki package first
then donated the code to top.gg
fun fact
I'm also the author of the C# cleverbot api client
YOU COULD DONATE CODE??
ohhh
niceee, how's that going right now?
idk lol
kek
for small widgets, is it /widgets/:kind/:id in which :kind could be servers, upvotes, or owner or is it gonna be /widgets/small/:id or /widgets/:id?
for the time being, i'll just implement the large widget endpoint in my sdks

super awaiting following v1 updates!
if you want a specific discord id
you can use these links
ahhh
but still not much different right
except that it gives out 404 on mismatched entity types
will implement, thanks veld 
can't wait to hear more v1 news from ya
mismatched entity types?
yeah if you send a discord/server/<bot_id> it should be a 404 no?
yeah
i know, i'm not saying it's a bad thing, it's expected
i'll adopt the more general endpoints to keep things simple
done! 
null poggers
thankies! appreciate it so muchhh! 
welp time to work on the php sdk as well 
php sdk almost done, only its autoposter left 
i'll work on the docs tomorrow or next week
when i tried it with a different bot, e.g: mudae (432610292342587392), it doesn't seem to work for the former endpoint?
https://top.gg/api/v1/widgets/large/432610292342587392 gives out 404, but
https://top.gg/api/v1/widgets/large/discord/bot/432610292342587392 works
should we use the latter?
Topgg Id vs discord id
We need to know where the id comes from that's why there's a discord bot id
wait so the former only works for top.gg IDs?
noted noted, my bad
this is a bit confusing sorry 😭
time to rewrite the sdks to adapt to this 
i am so DUMB 
C++, C#, and Go SDKs now have a proper documentation! i want to prioritize documentation coverage, consistency, and readability, so it may take a few days to properly document every SDK

The Top.gg API Documentation rewrite is largely done now! 
hopefully things are more comfortable to read now 

the red deprecated tag is pretty heavy
but other than that is looks really neat!
Would be awesome to alphabetically sort the libraries
you're right, i'll change the text to white 
can u make it grey background instead?
ohh suree
the red in general is super harsh, seems more like a danger sign than "oh this is old"
i thought it would be more consistent with the site's color theme 
noted! will do!

the libraries are now alphabetically sorted and the color used for deprecated properties is now easier on the eyes!

not really API related, but can you check this pull request? @woven granite https://github.com/top-gg/eslint-config/pull/3
i need it since the node sdk depends on it and @top-gg/eslint-config requiring old peer dependencies hinders me from trying to update the sdk's dependencies
the PHP and .NET SDKs now have working webhook wrappers for Laravel and ASP.NET Core/Blazor respectively with the possibility of future events in mind
, since the documentation said that future webhook events are possible in v1
the Ruby SDK now has a working webhook wrapper for Ruby on Rails and Sinatra! 
the Java SDK now has a working webhook wrapper for Spring Boot, Dropwizard, and Eclipse Jetty! 

the C++ SDK now has a working webhook wrapper for cpp-httplib and Drogon! 
amazing
@faint fern can you look after this?
if you have time of course
should have time saturday
about to head to bed and will be busy tmrw
me too haha, it's 2:45am for me, gn!
the Lua SDK now has a working webhook wrapper for both HTTP and HTTPS!
which means that every SDK now should have every API feature covered 
the spreadsheet is now back to being fully green again 
forgot about this until now, mb. I do not have perms to merge 
@woven granite do you have perms to merge? https://github.com/top-gg/eslint-config/pull/3
wrote this insightful comment but could not merge :(
On the pub facing?
Its still only xiuh and veld iirc
Why do we need to update it?
Would prefer if we just break that dependency and archive the config repo
so we just directly include the eslint config in the node sdk?
just make one in the repo yes
we don't use that repo internally anymore and I'd prefer it be archived

pull request closed, the updated eslint config is now embedded in the node.js SDK 
<@&412346069675147264> hello, the first /api/v1/ is launching soon. Ive documented it in a PR here: https://github.com/top-gg/docs/pull/99
yes, it should show the exact url in the docs
oh alright
what are the minimum required properties for the application command structure?
is it just name and description
because looking at discord's documentation, that's way too many 
I mean I would recommend to accept them from library types
Why would you need to check all of them?
most of the SDKs are library-agnostic
because either there are way too many libraries to support or it would be a chore to also constantly adapt to newer releases
right now we read:
- type
- name
- description
- name_localizations
- description_localization
- nsfw
in the future we will read:
- options
- name
- description
- name_localizations
- description_localizations
- required
- choices
- min_length
- max_length
- min_value
- max_value
- autocomplete
- integration_types
- contexts
though, I will recommend to use a type library from discord
that is, if you want to manage the type, otherwise just allow anything
we will throw a json error if there's descrepancies

this should also be reflected in the documentation, in case somebody goes libless
I don't think it should imo
We may read more in the future
the goal is for it to be 100% discord-api compliant
what we support right now and what we will support in the future doesn't really matter for the public facing API
otherwise we will suddenly have to fail requests that miss data because the sdk is not up to date
which will be the worst case scenario for everyone, me, devs, and sdk maintainers
noted noted
i'll just support everything
just in case
this will take a bit, so be patient!
perfect
there is no GET for the /commands endpoint?
no
you don't need to read them back because you generate them
im updating the docs with the latest variant now btw

https://github.com/top-gg/docs/pull/99 updated here
perfect checking now














