Comments (8)
Since 99% of this is done, let's close this and I'll open an issue for 'C' separately.
from gossip.
Branch for this work is 'auth'. WARNING: It will upgrade your LMDB in a way that makes it unusable back on unstable/master. Make a copy of your LMDB first in case you need to roll back.
Here is the work that is finished, and the work that is still needed:
- Augment Relay record to remember if a relay is approved or denied for both connection and authentication b193445
- Migrate to that new record b193445
- When AUTH request comes in, honor the relay setting. If the relay setting is still
None
, store data in GLOBALS to signal the UI that the User needs to be asked, and provide ToOverlord message handlers to handle the user action by both storing the answer and signalling the relay to either AUTH or not. a0ef26d - When a connection to a new relay happens, honor the connection setting. If the connection setting is still
None
, store data in GLOBALS to signal the UI that the user needs to be asked, and provide ToOverlord message handlers to handle the user action by storing the answer and either starting the minion or not f0aad07 - Settings for both connection and auth, off by default, turning them on engages the new logic and requires per-relay approvals
- Relay pages in UI to offer switches for these two new settings
- UI to interact with the user to handle pending approvals - there may be many at once.
from gossip.
This issue is ready for UI work now.
from gossip.
Final design after discussions on TM:
from gossip.
Notes about different and less intrusive approaches that can be evaluated for the future:
-
We can move the modal content to a standard view and show a new menu item, that display an alert dot when there are new elements to review;
-
We can show the permission request at the thread level (e.g., with an icon) so that the user knows that in order to view all the notes, he has to approve other relays;
from gossip.
@dtonon Mike has merged the branch into unstable. Can you review and see if what we have is good for a 0.10 release?
from gossip.
@bu5hm4nn it works well!
Some details:
- A - In dark mode the Decline button should also have the Primary style (white)
- B - Would be nice if the scrolling was "external" to the modal padding, so on the extreme right
- C - The buttons on the backuground are still active to hover/press, even if the action is not triggered
- D - If possibile would be nice to lengthen the line going down a little bit
- E - The light box background should be darker, both on dark and light theme - Already fixed and pushed
- F - Keep the alignment
- G - Trim the final slash
I would also remove the "wss://" to improve readability, but I suppose protocol is an important element in the approval evaluation, right @mikedilger?
Since encrypted protocol should be the standard, maybe in the future we can globally introduce a new way to visualize the protocol, adding a warning icon near the relays that are ws://. I will open an issue to track this idea.
from gossip.
All are fixed on unstable, except for 'C'. That one is an egui bug I cannot easily fix. However once we use our own widgets, we can avoid doing the click ui action when disabled.
from gossip.
Related Issues (20)
- (Suggestion) Add screenshots HOT 1
- Setting: auto-merge or auto-overwrite lists
- Setting: auto-advertise period
- Window prevented from being reduced in height HOT 3
- Add padding to the DM compose area
- Clean up spam database records HOT 2
- Spam filter hashtag support HOT 1
- emoji popup interacts poorly with scrolling HOT 1
- cannot get/merge follow list into gossip HOT 1
- Bookmarks feed is in random order HOT 1
- Database prune prunes bookmarks HOT 1
- Fake AUTH HOT 1
- Render nip-34 git stuff events better
- PersonList lengths are wrong in PersonListMetadata HOT 2
- This event does not show PoW, but it looks like it should HOT 1
- Support for NIP-99 Classified Listings HOT 1
- Clicking relay link
- app.ron not respecting GOSSIP_DIR HOT 1
- Copy links
- flatpak permissions for dri HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gossip.