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

[bukuserver] Bookmarklet, optional fetch, refactor #643

Merged
merged 6 commits into from
Dec 14, 2022

Conversation

LeXofLeviafan
Copy link
Collaborator

Several commits with co-dependent code.

fixes #639:

  • preventing override of POST data by URL arguments in create_form()
  • adding metadata collection to the bookmarklet (when no text is selected)
  • implementing a checkbox allowing to disable automatic fetching of empty fields (placed under the submit buttons)
  • fixing saved link in the success alert (so that it works correctly in the form page)
  • automatically closing any of the primary pages if opened in popup window (so that it works like a modal dialog)
  • hiding/blocking primary page links in popup window (in the "refactoring" commit)
  • handling DB rejection in create_model() (producing custom error message)

fixes #642:

  • disabling hyperlinks for URLs without netloc (in list & details)
    note: URL parser works differently in JS, so I'm using the netloc value calculated in Python
  • changing URL check on create from "blank" to "empty"

also:

  • handling nonexistent ID in get_one(), as suggested in Bookmarklet handling form in bukuserver ignores entered values #639
  • including a temporary file created by tests into gitignore
  • moving API implementation into a separate file, as suggested in Documenting bukuserver API #637 (put as a separate commit for clarity)
  • improving wording in bukuserver readme (configuration section)
  • removing JSON response code duplication (detected by linter after separating API)
  • simplifying get_bool_from_env_var() (and documenting valid inputs in readme)
  • fixing tags modal title & JS error in statistic page (the latter occurs when clicking outside of a pie chart)
  • improving saved link message detection & adding a backlink to it (so that the "list" link & form submit redirect to previous page)
    note: there's an upstream bug occurring in certain circumstances which breaks backlink logic; I suggest waiting for an upstream fix rather than trying to work around it
  • moving duplicate logic in templates (+flash.js) out into a macro library
  • implementing partial l10n support (via env variable) in case someone wants it (there's code that accounts for l10n but no easy way to test it out)

@jarun jarun merged commit e49d61d into jarun:master Dec 14, 2022
@jarun
Copy link
Owner

jarun commented Dec 14, 2022

Thank you!

@rachmadaniHaryono please review when you get the time.

Guys, please let me know when you want me to make a release. If you want some more time to test (and get it tested by users as well) no problem.

Also, feel free to enrich the GUI. If it can be made more visually appealing without sacrificing performance, we can discuss. It seems users are very much interested in the GUI, thanks to @rachmadaniHaryono for coming up with the idea of bukuserver.

@LeXofLeviafan
Copy link
Collaborator Author

LeXofLeviafan commented Dec 14, 2022

please review when you get the time.

Er… I thought the review was supposed to be done before the merge 😅

Also, feel free to enrich the GUI. If it can be made more visually appealing without sacrificing performance, we can discuss.

Well, when I have a UX suggestion I usually create a feature request ticket for discussion (although come to think of it I haven't had access to label management in most GitHub projects I worked with so I kinda forgot to add any 😅), such as was the case with delete button on the bookmark edit page; as for a visually appealing UI design, I don't have much ideas as I'm no designer – the only suggestion I have so far is implementing a "dark mode" (whether as a UI setting or via a variable), possibly as a default setting.

(For a dark theme, out of these free ones on MIT license, one of the following could be used: Cyborg, Darkly, Slate, Superhero… Slate seems to have a softer contrast while retaining a similar look)

edit: added an issue for dark mode discussion

Guys, please let me know when you want me to make a release. If you want some more time to test (and get it tested by users as well) no problem.

Dunno about testing, but I'm pretty sure it'd be a good idea to complete #637 (documenting the API) before making a release… Unless you want to make another release soon after, just to make the API "official" (it would hardly make sense to "release" the API in-between the app releases).

edit: just found another bug, albeit a minor one 😅

@rachmadaniHaryono
Copy link
Collaborator

please review when you get the time.

Er… I thought the review was supposed to be done before the merge sweat_smile

it is more hassle to revert the pr so i will review it on next pr

Guys, please let me know when you want me to make a release. If you want some more time to test (and get it tested by users as well) no problem.

i agree with @LeXofLeviafan that api doc should be done before release

also because this is big release for bukuserver, warn the user that anything may break

@LeXofLeviafan
Copy link
Collaborator Author

If we're going ahead with #648 (and possibly other API changes), it should probably also be done before release.

@github-actions github-actions bot locked and limited conversation to collaborators Jan 14, 2023
@LeXofLeviafan LeXofLeviafan deleted the refactor branch August 24, 2024 17:12
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

URL handling in bukuserver Bookmarklet handling form in bukuserver ignores entered values
3 participants