-
-
Notifications
You must be signed in to change notification settings - Fork 218
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
Update to latest enketo-core #6345
Comments
Moved to 3.12.0 to free up engineers to work on 3.11.0. |
This is blocked on updating to 5.9.2 first: #4386 |
@garethbowen, I wanted to know if CHT has the capability to track a CHV's visit length in XLSForm. I checked at the documentation and I found that the the Would like to know when it will be fixed. |
Hi @iesmail-znz, the On a related note, I see documentation on those fields in our old (and now archived) docs site, but can't find it in the new CHT docs site. I will port that over now. |
bumping to release following completion of #4386 |
Adding to the App Builders backlog too since this is needed to use supported ODK XPath functions in CHT apps. Edit: added link to Forum post. |
@garethbowen a couple of follow-up questions from the roadmap planning meeting:
|
Many forms are tested as part of the standard release test plan. It would be very useful to test a wider range of real world forms as well and that plan should be developed when this issue is being QAed. If time permits this test plan should be automated because we usually update enketo-core every release and we need to catch regressions early. The reason there are two very similar looking issues is we've made good progress towards the other one, so it should be relatively easy from a development perspective to finish that off ready for AT. This issue would then be a separate body of work which may be trivial or highly difficult depending on what breaking changes exist in the later versions of enketo-core. Obviously the two issues can only be developed one at a time but they could be ATed together to save time. In short I'm happy for this issue to be scheduled in 3.12 to reduce testing effort, but we should keep the issues separate so we can ship the other one, and postpone this one if it turns out to be difficult. |
ok, moving to v3.12 to align with #4386 |
Brac config - fp_follow_up_long_termThere is a section in the This description might be a little confusing, I think that a video can help to clarify. Video - 6345-enketo-upliftenketoUplift.mp4Video - mastermaster.mp4_______________________________________________________ Other forms having the same problem in one of its questions:fp_follow_up_prospectivefp_follow_up_prospective.-.enketoUplift.mp4fp_follow_up_refillfp_follow_up_refill.-.enketoUplift.mp4fp_follow_up_short_termfp_follow_up_short_term.-.enketoUplift.mp4 |
Okay, I think I have figured out what is going on with the person age constraints that are failing improperly for several forms. These forms try to ensure they are only applied to patients of a specific age range, calculated based on the patient's Triggering that "change" event in That is what changed since the old version of Enekto to break this functionality, but technically, I think the real issue here is that the constraint is not automatically re-validated when the value for In the meantime, though, I have updated the db-object-widget to manually trigger a re-validation of the field's constraint once the doc data is loaded. This should resolve the issue and return the behavior to how things work in |
Regarding the issue where answers that become non-relevant are not cleared, this could be serious challenge. Basically it is connected to the same behavior change we found with an earlier Since this is all tied up in the interactions between form config and deep Enekto functionality, there is not much we can do to mitigate this issue. I think we need to decide if the problem is serious enough that we should either roll our "new" Enketo version back to |
Thank you for the details @jkuester. The problem that I see is that if you make a mistake and select the wrong option and the new question displayed is a required one you will not be able to continue with the next part of the form because you can't "unselect" a radio button. Medic.Mobile.-.27.June.2022.mp4 |
As discussed, but documenting here for anyone else watching. My preference is to not change the version of enketo-core (either to 5.15.3 or 6.1.0) because that would trigger another round of extensive testing and potentially find new issues. Let's leave this PR as is so that we can lock in the gains we've made, and raise a new issue covering this specific bug. If a solution is found before 4.0.0 is released then it can be included too, but otherwise we can document this new bug as a "known issue" and solve in a minor release in the near future. |
Muso Config - Several formsIn the first page of the form, there is a required input for the patient's name, and no matter what value I select it is throwing an error saying: NOTE: This is only happening if I access the report through the "History" tab. Another important thing is that, in supervision_calendar
6345-enketo-uplift.mp4
master.mp4supervision_with_chw_iccm
6345-enketo-uplift.mov
master.movsupervision_with_chw_proccm
6345-enketo-uplift.mov
master.mov |
Muso config - Some forms are not able to load.Details of the user used to login:
Failed forms: |
Regarding the issues with the Brac Then, the problem with not being able to advance to the next page after selecting the answer to |
Regarding the Muso |
Regarding the issue with the Muso supervision forms where you could never successfully choose two persons, this turned out to be a bug in the |
Regarding the issues in the Muso |
Okay, I think I have finally figured out what was going on with the Muso contact edit form issue. The This particular situation was made more complicated because, in certain circumstances the Muso edit contact form would load without error. @tatilepizs noticed that the form worked when the contact being edited was created by the user. It turns out this behavior was caused because the db-object value in the form could be set in a couple of different ways (due to some weird circular configuration in the form). Its value would initially come from the current user's id. Then it would later be set to the Regardless, I have been able to clearly recreate the error in the interaction between the
I have had to do a pretty significant refactor of the db-object-widget to fix this situation. But in the end, this should be resolved. |
🎉 Really good news 🎉All the issues that were raised were retested and all of them are solved, some completely fixed, some with an external ticket created, and one (an unusual scenario) was marked as a known issue. All the details are in this comment QA team is done with the testing and this uplift is good to go from QA perspective 🎉 Huge thank you to @jkuester for all the help, support and patience during the process!! 🎉 🎉 |
Following up again on the Muso To give some more details here, the form is currently calculating a value based off the result of a |
The next time we bump our dependency on
enketo-core
we will have to switch api to depend onenketo-transformer
instead of the archivedenketo-xslt
. The transformer depends on the version of libxslt which works on node 12 so we could consider swapping to use that instead of the nativexsltproc
process. Additionally we may be able to use the transformer for more of the work that we do ourselves in the generate-xform service in API.Summary of AT Issues:
openrosa-xpath-evaluator
(comment)Proposal is to use a patch to revert behavior change for now (and wait for a major version bump)div
will open the widget (comment). Need to decide if this is acceptable behavior...field-list
group are not being automatically selected when the page is openedandroid-widget
to prevent this from triggering text input (and on-screen keyboard) when a date question is focused on (the widget, itself, is not automatically opened by the focus).repeat
so technically this is expected behavior that we probably do not need to worry about (comment)note
s are not bold. (comment)inputs
to be cleared. Fixed by updating our logic for makinginputs
always relevant. (comment)NO_LABEL
(comment)decimal-date-time
function.contact-summary
data into the form which required code changes (comment)contact-summary
that were fixed in#12
(comment)#9
.inputs
group relevant. Fixed now. (comment)#15
, the report generated for the Child Health Registration is not showing the correct information .inputs
group as#15
. Fixed by same changes.Baby did not attend their immunizations visit
, and the Vaccines that I chosen (Hepatitis A and B) are marked asNo
.report.nutrition_exit.patient_name
instead ofName
. This is also the same on master.#11
, the "long labels" are shown for this form because there is no provided translation.master
.#21
. Fixed by same solution.#9
and/or#15
.#9
and/or#15
.#15
.#17
where invalid data was being saved for forms. Fixed by updating thenutrition_followup
form. (contact)#17
where invalid data was being saved for forms. Fixed by updating the forms.master
.config-muso
on an instance running6345-enketo-uplift
.master
and6345-enketo-uplift
.config-brac
repo to address it. (comment)phone-widget
being too broadly applied now. Fixed by making the selector for that widget more precise. (comment)format-date
function behavior. When the pregnancy form submits with valid data, this problem does not present. (comment)We still need to land on a long-term fix for this. Waiting on 'Invalid Date' returned byformat-date
function when given an empty value enketo/enketo#864format-date
implementation to the branch that reverts to the old behavior. Going forwards we can consider keeping these changes or reverting them in favor of something else.format-date
#32
. Once I addressed those issues, this problem no longer presents.#15
?), but it seems to be working fine now.#34
,this problem is no longer presenting, but I am not sure exactly why or what was causing it in the first place (also maybe#15
?).The text was updated successfully, but these errors were encountered: