cubicweb #8123231 page_size from http variables needs to be checked before being cast to int [validation pending]

Simply add "/" to the following URL

http://semweb.pro/view?rql=Any%20X%2CT%2CCD%20ORDERBY%20CD%20DESC%20WHERE%20X%20is%20IN%28MicroBlogEntry%2C%20BlogEntry%29%2C%20X%20title%20T%2C%20X%20creation_date%20CD&page_size=10

get :

http://semweb.pro/view?rql=Any%20X%2CT%2CCD%20ORDERBY%20CD%20DESC%20WHERE%20X%20is%20IN%28MicroBlogEntry%2C%20BlogEntry%29%2C%20X%20title%20T%2C%20X%20creation_date%20CD&page_size=10/

Stacktrace (most recent call last):

File "cubes/sentry/views.py", line 26, in publish
  return original_handle(self, rset)
File "cubicweb/web/views/basecontrollers.py", line 133, in publish
  rset=rset, view=view)
File "cubicweb/cwvreg.py", line 223, in main_template
  res = obj.render(**kwargs)
File "cubicweb/view.py", line 136, in render
  view_func(**context)
File "cubicweb/web/views/basetemplates.py", line 147, in call
  self.template_header(self.content_type, view)
File "cubicweb/web/views/basetemplates.py", line 172, in template_header
  self.template_html_header(content_type, page_title, additional_headers)
File "cubicweb/web/views/basetemplates.py", line 184, in template_html_header
  self.wview('htmlheader', rset=self.cw_rset)
File "cubicweb/view.py", line 242, in wview
  self._cw.view(__vid, rset, __fallback_vid, w=self.w, **kwargs)
File "cubicweb/req.py", line 413, in view
  return view.render(w=w, **kwargs)
File "cubicweb/view.py", line 136, in render
  view_func(**context)
File "cubicweb/web/views/basetemplates.py", line 315, in call
  self.alternates()
File "cubicweb/web/views/basetemplates.py", line 341, in alternates
  %  xml_escape(urlgetter.feed_url()))
File "cubicweb/web/views/xmlrss.py", line 197, in feed_url
  return self._cw.build_url(rql=self.cw_rset.limited_rql(), vid='rss')
File "cubicweb/rset.py", line 286, in limited_rql
  rset=self)
File "logilab/common/registry.py", line 375, in select_or_none
  return self._select_best(self[__oid], *args, **kwargs)
File "logilab/common/registry.py", line 399, in _select_best
  objectscore = obj.__select__(obj, *args, **kwargs)
File "logilab/common/registry.py", line 867, in traced
  ret = selector(cls, *args, **kwargs)
File "logilab/common/registry.py", line 1069, in __call__
  partscore = selector(cls, *args, **kwargs)
File "logilab/common/registry.py", line 867, in traced
  ret = selector(cls, *args, **kwargs)
File "cubicweb/predicates.py", line 495, in __call__
  page_size = int(page_size)
priorityminor
typebug
done in3.22.0
load0.250
load left0.000
closed by#dff28956f37e [predicates] guard against non-integer page_size form parameter
patch[test] test page_size problem (related to #8123231) [applied][predicates] guard against non-integer page_size form parameter [applied]