Project

General

Profile

Actions

action #64412

closed

coordination #154768: [saga][epic][ux] State-of-art user experience for openQA

coordination #154771: [epic] Improved test developer user experience

Get rid of eval in OpenQA::WebAPI::Plugin::HashedParams

Added by tinita over 4 years ago. Updated 29 days ago.

Status:
Resolved
Priority:
Low
Assignee:
Category:
Feature requests
Target version:
Start date:
2020-03-11
Due date:
% Done:

0%

Estimated time:

Description

Problem

This plugin is a helper to receive nested data structures, as it can turn query parameters like

"settings[FOO][BAR]=baz"

into a data structure.

It is used only in the OpenQA::WebAPI::Controller::API::V1::Table.

The code removes unsafe characters and creates perl code which is then loaded with eval.

Suggestion

  1. The code could probably be replaced without eval, so we wouldn't need to clean the input.
  2. The Table API endpoints could also be changed to accept JSON instead, and we could get rid of the whole module.

Related issues 1 (0 open1 closed)

Related to openQA Project - action #166310: Replace jquery ajax calls with fetch API size:MResolveddheidler2024-09-04

Actions
Actions #1

Updated by tinita over 4 years ago

  • Description updated (diff)
Actions #2

Updated by okurz over 4 years ago

  • Priority changed from Normal to Low
Actions #3

Updated by tinita about 2 months ago

  • Related to action #166310: Replace jquery ajax calls with fetch API size:M added
Actions #4

Updated by dheidler about 2 months ago · Edited

  • Status changed from New to In Progress
  • Assignee set to dheidler

My current status while working on #166310 is to accept both.
But we can easily remove HashedParams now, as the JS code will now use JSON requests.

Actions #5

Updated by dheidler about 2 months ago

  • Status changed from In Progress to Blocked

Waiting for PR in #166310 to get merged.

Actions #6

Updated by dheidler about 2 months ago

  • Status changed from Blocked to In Progress
Actions #7

Updated by dheidler about 2 months ago

  • Status changed from In Progress to Feedback
Actions #8

Updated by dheidler about 2 months ago

  • Status changed from Feedback to In Progress

Now let's fix some tests and have a look at the template tests.
As discussed in daily, let's see if we can update the loadtemplate script and make this change unnoticed by users of this feature as they are using that script and not the API directly.

Actions #9

Updated by okurz about 2 months ago

  • Due date set to 2024-10-16
  • Target version changed from future to Ready
Actions #10

Updated by dheidler about 1 month ago

  • Status changed from In Progress to Resolved
Actions #11

Updated by dheidler about 1 month ago

  • Status changed from Resolved to Feedback

Partial revert to ensure that an updated load-templates script is rolled out when switching of the old api.
https://github.com/os-autoinst/openQA/pull/5993

Actions #12

Updated by dheidler about 1 month ago

  • Status changed from Feedback to Blocked

Let's wait two weeks for load-templates to flow downstream and then remove backwards compatibility from the API:
https://github.com/os-autoinst/openQA/pull/5994

Actions #13

Updated by okurz about 1 month ago

  • Parent task set to #154771
Actions #14

Updated by okurz about 1 month ago

  • Due date changed from 2024-10-16 to 2024-11-01
Actions #15

Updated by dheidler about 1 month ago

Rebased PR.

Actions #16

Updated by livdywan about 1 month ago

dheidler wrote in #note-12:

Let's wait two weeks for load-templates to flow downstream and then remove backwards compatibility from the API:
https://github.com/os-autoinst/openQA/pull/5994

Did you notify community on mailing list/matrix/GitHub? I don't see anything there 🤔

Actions #18

Updated by dheidler 29 days ago

  • Status changed from Blocked to Resolved
Actions #19

Updated by okurz 29 days ago

  • Due date deleted (2024-11-01)
Actions

Also available in: Atom PDF