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

Implement Permissions API #229

Draft
wants to merge 59 commits into
base: dev/v2
Choose a base branch
from
Draft

Implement Permissions API #229

wants to merge 59 commits into from

Conversation

MrIvanPlays
Copy link
Member

Currently, this lays the ground of a Permissions & Chat API for Treasury.
I'm opening this not just for discussion, but to implement sane ideas suggested in this PR.

Copy link
Member

@lokka30 lokka30 left a comment

Choose a reason for hiding this comment

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

Thanks Ivan! I've taken a look at what you've currently implemented, and left some comments.

@MrIvanPlays
Copy link
Member Author

there's another problem we need to discuss: that's about prefix and suffix nodes. their data type is a component. but the problem is that spigot and bungeecord utilize bungeecord-chat whilst any other server/proxy implementation (sponge, velocity, paper, etc.) utilizes adventure. if we opt in for bungeecord-chat components, then we need to download bungeecord-chat for the platforms where they don't have it and translate bungeecord-chat -> adventure, or the reverse, if we opt in for adventure components, then we need to download adventure for the platforms where they don't have it and translate adventure -> bungeecord-chat. a solution i thought of is create our own chat api, but that's basically just unnecessary reinvention of the wheel.

@MrIvanPlays MrIvanPlays added the thoughts wanted Thoughts from other developers would be appreciated on this issue. label Nov 23, 2022
@lokka30 lokka30 changed the title [WIP] Permissions API Implement Permissions API Nov 24, 2022
@lokka30 lokka30 added type: improvement A feature is added or adjusted priority: normal Normal priority status: confirmed Approved / validated labels Nov 24, 2022
@MrNemo64
Copy link
Contributor

MrNemo64 commented Nov 24, 2022

Sorry for avandoning Treasury for so long. I just dont have time to keep up. But I saw that you're asking for help.
I haven't got time to check what ideas you have proposed but:

solution i thought of is create our own chat api, but that's basically just unnecessary reinvention of the wheel.

Are these two systems too diferent from each other? Couldn't you just abstract the common/neccessary functionality and use the abstraction on the api, but on the code have it call the system of the platform?
Sorry if this doesn't help much, but I don't have time to keep up with all the progress

@MrIvanPlays
Copy link
Member Author

Are these two systems too diferent from each other?

Yes. Completely.

Couldn't you just abstract the common/neccessary functionality and use the abstraction on the api, but on the code have it call the system of the platform?

No.

Co-authored-by: montlikadani <[email protected]>
@montlikadani
Copy link
Contributor

a solution i thought of is create our own chat api

The only solution this ^. We could make a simplifed and small Component/NameComponent for these prefix/suffix to retrieve and change things. Or just a plain String as the last resort.

@MrIvanPlays
Copy link
Member Author

a solution i thought of is create our own chat api

The only solution this ^. We could make a simplifed and small Component/NameComponent for these prefix/suffix to retrieve and change things. Or just a plain String as the last resort.

I really don't want to think this is the only solution. An idea just passed through my mind and that is create a ComponentCreator that will spit out the component json, then consumers and implementors can shove that in bungee-chat or adventure and get a proper component.

@MrIvanPlays
Copy link
Member Author

@Jikoo any thoughts/ideas?

@Jikoo
Copy link
Collaborator

Jikoo commented Jan 2, 2023

Probably not for at least a month or two based on how things are looking - my GPU is failing, which in turn makes pretty much everything quite frustrating. I was very spoiled by dual 1440p monitors, a single at 1024x768 is practically unusable.

Please don't hold back on my account.

@MrIvanPlays MrIvanPlays removed this from the v2.0.0 milestone Jan 17, 2023
@MrIvanPlays
Copy link
Member Author

This is not gonna push back the 2.0.0 release anymore. We will release this when it's ready.

@lokka30 lokka30 mentioned this pull request Feb 1, 2023
3 tasks
@MrIvanPlays
Copy link
Member Author

@Jikoo please implement your ideas whenever you can

@Jikoo
Copy link
Collaborator

Jikoo commented Apr 9, 2023

This is the next major item on my list, but my development time is currently being devoted to a plugin of mine that has apparently been partially broken since like 1.14 due to changes that weren't listed on the MC wiki (whoops).

made them less complex to understand and work with
@MrIvanPlays
Copy link
Member Author

This is the next major item on my list, but my development time is currently being devoted to a plugin of mine that has apparently been partially broken since like 1.14 due to changes that weren't listed on the MC wiki (whoops).

okay, I just reworked nodes btw

@MrIvanPlays
Copy link
Member Author

it looks like to me there was 0 time to work on this :( . Anyone still interested in giving his ideas into writing this API?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
priority: normal Normal priority status: confirmed Approved / validated thoughts wanted Thoughts from other developers would be appreciated on this issue. type: improvement A feature is added or adjusted
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants