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 new UI for disconnecting DBs #4124

Open
wants to merge 9 commits into
base: develop
Choose a base branch
from

Conversation

seancolsen
Copy link
Contributor

@seancolsen seancolsen commented Jan 13, 2025

Fixes #4120

Fixes #3450

Screenshots

Default modal state

image

When "Drop" is selected

image

  • A message displays
  • It links to the GitHub issue.
  • The form can't be submitted.

Help text for internal schemas

image

When removing internal schemas

image

Help text for types

image

Help text for role

image

When specifying a role

image

  • Role name and password are required to submit the form

When errors are encountered

image

Design notes

  • This UI differs from our Figma design, but I think it should in be in line with what we discussed during today's call.

  • In 3def20c I removed some low-level CSS that I didn't like.

    @ghislaineguerin I'd like you to sign off on this change, because this seems to be CSS that you added.

    It's a subtle change...

    Before my change After my change
    image image

    Before my change we had a mix of 400 vs 500 font weights in the same section, which looks messy to me. The difference is subtle, but once I noticed it, I just couldn't un-see it. The 400 weight is our default font weight that gets used by regular text, e.g. "This will remove". And the 500 weight was applied to a few low-level UI elements like form field labels.

    After my change, form field labels no longer get any special font weight. In my opinion, this makes them blend in with regular text better, which I think is appropriate given the structure of many of our forms. I didn't remove all the 500 weights. I think it still works fine for titles and such.

Checklist

  • My pull request has a descriptive title (not a vague title like Update index.md).
  • My pull request targets the develop branch of the repository
  • My commit messages follow best practices.
  • My code follows the established code style of the repository.
  • I added tests for the changes I made (if applicable).
  • I added or updated documentation (if applicable).
  • I tried running the project locally and verified that there are no visible errors.

Developer Certificate of Origin

Developer Certificate of Origin
Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
1 Letterman Drive
Suite D4700
San Francisco, CA, 94129

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.


Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
    have the right to submit it under the open source license
    indicated in the file; or

(b) The contribution is based upon previous work that, to the best
    of my knowledge, is covered under an appropriate open source
    license and I have the right under that license to submit that
    work with modifications, whether created in whole or in part
    by me, under the same open source license (unless I am
    permitted to submit under a different license), as indicated
    in the file; or

(c) The contribution was provided directly to me by some other
    person who certified (a), (b) or (c) and I have not modified
    it.

(d) I understand and agree that this project and the contribution
    are public and that a record of the contribution (including all
    personal information I submit with it, including my sign-off) is
    maintained indefinitely and may be redistributed consistent with
    this project or the open source license(s) involved.

@seancolsen seancolsen added this to the v0.2.0 (beta release) milestone Jan 13, 2025
@seancolsen seancolsen added the pr-status: review A PR awaiting review label Jan 13, 2025
@seancolsen
Copy link
Contributor Author

seancolsen commented Jan 13, 2025

@ghislaineguerin this is in draft state because it's not ready to merge. But it is ready for UX review. Can you please look over the PR description and let me know if you have any concerns?

Base automatically changed from 4102_db_upgrade_ui to develop January 14, 2025 10:04
@seancolsen seancolsen marked this pull request as ready for review January 14, 2025 17:22
Copy link
Member

@pavish pavish left a comment

Choose a reason for hiding this comment

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

@seancolsen The code looks good.

I find the UX confusing with too many options for the user to understand. However, I do not have any suggestions and since this is a rare admin level operation, I don't think it's important to address it anytime soon.

@pavish pavish removed their assignment Jan 15, 2025
Copy link
Contributor

@ghislaineguerin ghislaineguerin left a comment

Choose a reason for hiding this comment

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

@seancolsen I'm ok with the CSS change. I'm a bit concerned with the "Outside of Mathesar" label... could be a bit confusing. How about "After Disconnection"?

@seancolsen
Copy link
Contributor Author

@ghislaineguerin

the "Outside of Mathesar" label

Yeah, I'm not totally satisfied with this either. What's tough is that most of the ideas I had for this label (and yours too) would also seem to apply to the other checkboxes as well. For example, "After Disconnection" could apply to "Remove Mathesar's internal schemas".

I'm going to keep this PR open. Perhaps we can have a quick chat about it tomorrow. Maybe @pavish wants to join. If there are some quick changes to copy or structure that would improve this, I'd be open to making them.

@seancolsen seancolsen added pr-status: revision A PR awaiting follow-up work from its author after review and removed pr-status: review A PR awaiting review labels Jan 16, 2025
@seancolsen
Copy link
Contributor Author

Update: We had a quick chat about this at the end of our product meeting today.

  • I need to make some more changes to this PR to align with the approach we agreed to take during the call.

  • I also encountered another complicating factor that I sent an email about: stored role passwords don't actually get deleted from Mathesar when disconnecting the last DB from a given server. So I need some clarity from that email thread before I can finish this.

@seancolsen
Copy link
Contributor Author

@pavish and @ghislaineguerin can you give this another look now?

Note that the "Remove stored role passwords" checkbox only displays when the DB is the last DB in its containing server.

image

image

image

@seancolsen seancolsen removed the pr-status: revision A PR awaiting follow-up work from its author after review label Jan 17, 2025
@seancolsen seancolsen added the pr-status: review A PR awaiting review label Jan 17, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pr-status: review A PR awaiting review
Projects
None yet
3 participants