mirror of
https://github.com/cypht-org/cypht.git
synced 2026-04-25 04:56:03 +03:00
[GH-ISSUE #318] 🐛 [Minor] Console prints error #276
Labels
No labels
2fa
I18N
PGP
Security
Security
account
advanced_search
advanced_search
announcement
api_login
authentication
awaiting feedback
blocker
bug
bug
bug
calendar
config
contacts
core
core
devops
docker
docs
duplicate
dynamic_login
enhancement
epic
feature
feeds
framework
github
github
gmail_contacts
good first issue
help wanted
history
history
imap
imap_folders
inline_message
installation
keyboard_shortcuts
keyboard_shortcuts
ldap_contacts
mobile
need-ssh-access
new module set
nux
pop3
profiles
pull-request
question
refactor
release
research
saved_searches
smtp
strategic
tags
tests
themes
website
wordpress
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/cypht#276
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @ulfgebhardt on GitHub (Feb 10, 2019).
Original GitHub issue: https://github.com/cypht-org/cypht/issues/318
Originally assigned to: @jasonmunro on GitHub.
🐛 Bugreport
[Minor] Console prints error
This is prob. caused by the switch to cash.js (?)
Version & Environment
Rev: 2f9f16b66004e197a001eee46d80653c7449505b
OS: [Chrome beta]
Note: Using InLineView
@jasonmunro commented on GitHub (Feb 10, 2019):
I can't seem to reproduce. Can you tell me on what page or during what action this happens? I need to reproduce it in debug mode so I can capture the trace leading up to the error. Thanks!
@ulfgebhardt commented on GitHub (Feb 10, 2019):
Directly after login - on the "Everything" Page; On "Contacts", on "History" ... so basically everywhere.
-> Maybe its a timing issue?
@ulfgebhardt commented on GitHub (Feb 10, 2019):
@jasonmunro commented on GitHub (Feb 10, 2019):
I see the problem, AND I see that I disabled keyboard shortcuts while working on cash.js and forgot to enable it! Either way this code is dodgy and I don't like it. We were jumping through hoops to load JS specific references in the body of the page that are defined in a JS include in the page, then on DOM load trying to force that data into being "real" JS hoping the include is present in time which is just daft.
I have a solution which fixes all this by embedding real JS in the page with keywords instead of actual JS functions we need to call. In the JS include we just translate the keywords into the function name and all this goes away. Running tests now and should have a fix committed shortly.
@jasonmunro commented on GitHub (Feb 10, 2019):
Should be fixed :)
@ulfgebhardt commented on GitHub (Feb 11, 2019):
<3
@jasonmunro commented on GitHub (Feb 12, 2019):
FYI I added some selenium tests around keyboard shortcuts after this fix and found out we have some cross browser issues because the default META control key is not as compatible across systems as I thought. Still working out how I want to fix that but I'm leaning toward just changing the defaults :).
@ulfgebhardt commented on GitHub (Feb 12, 2019):
I actually did not know there are Keyboard shortcuts ;-)
Where can I read the list of keys?
Also I have to thank you for taking my request, I did a while back, seriously about tests. I think it has contributed alot to current stability of cypht - would you say writing the test is while your worth - have they caught errors regularly for you?
@jasonmunro commented on GitHub (Feb 12, 2019):
If you enable the keyboard shortcuts module set you will find a "shortcuts" link in the Settings section that shows you the keys and actions, and lets you set your own for each action.
The UI tests have been great. It took some work getting the initial flow going but now it's easy to add a new suite of tests. The tests are actually in python because 1. I know python and 2. it has good selenium bindings to make controlling the browser easy. With Travis and browserstack in the mix, we can (and do) test against IE/Edge/FF/Chrome/Safari.
Unit tests are great, but just because a block of code behaves the way you expect does not mean the app as a whole does :). Not to mention unit tests only exercise server side code while the UI tests include the client side bits. One of the best tests we have is sending ourselves an E-mail then navigating to the unread page and opening it. The test code itself for that is simple, but bootstrapping Travis properly was a lot of work.
@ulfgebhardt commented on GitHub (Feb 12, 2019):
Haha yes, I know Travis is a pain - especially since you can only test after commit & push - but in my experience its quite powerful once properly set up.
@jasonmunro commented on GitHub (Feb 12, 2019):
Travis is a pain but absolutely worth it. I try to minimize breakage before pushing with this: https://github.com/jasonmunro/cypht/blob/master/scripts/commit_check.sh It runs sanity checks on all the PHP, JS, and CSS files, and it runs all our unit tests and UI tests.