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

Crashing with TypeError: range() integer end argument expected, got float #403

Closed
ndubbaka opened this issue Dec 14, 2016 · 4 comments
Closed
Labels
bug
Milestone

Comments

@ndubbaka
Copy link

@ndubbaka ndubbaka commented Dec 14, 2016

When I run this command weasyprint https://en.wikipedia.org/wiki/Gravity Gravity.pdf I don't get a pdf file & I see the below Traceback

WARNING: Ignored `-webkit-column-width: 30em` at 1:26, unknown property.
/usr/local/lib/python2.7/site-packages/cairocffi/surfaces.py:447: UserWarning: implicit cast from 'char *' to a different pointer type: will be forbidden in the future (check that the types are as you expect; use an explicit ffi.cast() if they are correct)
  *keep_alive.closure))
Traceback (most recent call last):
  File "/usr/local/bin/weasyprint", line 11, in <module>
    sys.exit(main())
  File "/usr/local/lib/python2.7/site-packages/weasyprint/__main__.py", line 164, in main
    getattr(html, 'write_' + format_)(output, **kwargs)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/__init__.py", line 178, in write_pdf
    return self.render(stylesheets, presentational_hints).write_pdf(
  File "/usr/local/lib/python2.7/site-packages/weasyprint/__init__.py", line 143, in render
    self, stylesheets, enable_hinting, presentational_hints)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/document.py", line 334, in _render
    [Page(p, enable_hinting) for p in page_boxes],
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/__init__.py", line 53, in layout_document
    pages = list(make_all_pages(context, root_box))
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/pages.py", line 567, in make_all_pages
    page_number)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/pages.py", line 513, in make_page
    positioned_boxes, positioned_boxes, adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 70, in block_level_layout
    adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 98, in block_box_layout
    page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 603, in block_container_layout
    adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 70, in block_level_layout
    adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 98, in block_box_layout
    page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 603, in block_container_layout
    adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 70, in block_level_layout
    adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 98, in block_box_layout
    page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 603, in block_container_layout
    adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 70, in block_level_layout
    adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 98, in block_box_layout
    page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 603, in block_container_layout
    adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 70, in block_level_layout
    adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 98, in block_box_layout
    page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 603, in block_container_layout
    adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 70, in block_level_layout
    adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 98, in block_box_layout
    page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 603, in block_container_layout
    adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 70, in block_level_layout
    adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 98, in block_box_layout
    page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 603, in block_container_layout
    adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 70, in block_level_layout
    adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 98, in block_box_layout
    page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 603, in block_container_layout
    adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 65, in block_level_layout
    adjoining_margins)
  File "/usr/local/lib/python2.7/site-packages/weasyprint/layout/blocks.py", line 224, in columns_layout
    for i in range(count):
TypeError: range() integer end argument expected, got float.
@liZe liZe closed this in cf0efe6 Dec 15, 2016
@liZe
Copy link
Member

@liZe liZe commented Dec 15, 2016

I think that this problem is fixed in cf0efe6. I have to add some tests about columns to avoid this in the future.

@liZe liZe reopened this Dec 15, 2016
@liZe
Copy link
Member

@liZe liZe commented Dec 15, 2016

Reopening: the footnotes are broken (because of columns), it's time to fix this for real.

@ndubbaka
Copy link
Author

@ndubbaka ndubbaka commented Dec 15, 2016

Thanks for the quick response. I will check it out.

@liZe liZe added the bug label Dec 16, 2016
liZe added a commit that referenced this issue Dec 16, 2016
Related to #403.
@liZe liZe added this to the 0.34 milestone Dec 16, 2016
@liZe
Copy link
Member

@liZe liZe commented Dec 16, 2016

Multi-page algorithm is now much better, and the rendering of the Gravity page seems to be perfect (in a CSS way, it doesn't mean that Wikipedia's CSS for print is beautiful). I really have to add some tests before closing this issue.

@liZe liZe closed this in 18b1931 Dec 16, 2016
jsonn pushed a commit to jsonn/pkgsrc that referenced this issue Jan 15, 2017
Version 0.34
------------

Released on 2016-12-21.

Bug fixes:

* `#398 <https://github.com/Kozea/WeasyPrint/issues/398>`_:
  Honor the presentational_hints option for PDFs.
* `#399 <https://github.com/Kozea/WeasyPrint/pull/399>`_:
  Avoid CairoSVG-2.0.0rc* on Python 2.
* `#396 <https://github.com/Kozea/WeasyPrint/issues/396>`_:
  Correctly close files open by mkstemp.
* `#403 <https://github.com/Kozea/WeasyPrint/issues/403>`_:
  Cast the number of columns into int.
* Fix multi-page multi-columns and add related tests.


Version 0.33
------------

Released on 2016-11-28.

New features:

* `#393 <https://github.com/Kozea/WeasyPrint/issues/393>`_:
  Add tests on MacOS.
* `#370 <https://github.com/Kozea/WeasyPrint/issues/370>`_:
  Enable @font-face on MacOS.

Bug fixes:

* `#389 <https://github.com/Kozea/WeasyPrint/issues/389>`_:
  Always update resume_at when splitting lines.
* `#394 <https://github.com/Kozea/WeasyPrint/issues/394>`_:
  Don't build universal wheels.
* `#388 <https://github.com/Kozea/WeasyPrint/issues/388>`_:
  Fix logic when finishing block formatting context.


Version 0.32
------------

Released on 2016-11-17.

New features:

* `#28 <https://github.com/Kozea/WeasyPrint/issues/28>`_:
  Support @font-face on Linux.
* Support CSS fonts level 3 almost entirely, including OpenType features.
* `#253 <https://github.com/Kozea/WeasyPrint/issues/253>`_:
  Support presentational hints (optional).
* Support break-after, break-before and break-inside for pages and columns.
* `#384 <https://github.com/Kozea/WeasyPrint/issues/384>`_:
  Major performance boost.

Bux fixes:

* `#368 <https://github.com/Kozea/WeasyPrint/issues/368>`_:
  Respect white-space for shrink-to-fit.
* `#382 <https://github.com/Kozea/WeasyPrint/issues/382>`_:
  Fix the preferred width for column groups.
* Handle relative boxes in column-layout boxes.

Documentation:

* Add more and more documentation about Windows installation.
* `#355 <https://github.com/Kozea/WeasyPrint/issues/355>`_:
  Add fonts requirements for tests.


Version 0.31
------------

Released on 2016-08-28.

New features:

* `#124 <https://github.com/Kozea/WeasyPrint/issues/124>`_:
  Add MIME sniffing for images.
* `#60 <https://github.com/Kozea/WeasyPrint/issues/60>`_:
  CSS Multi-column Layout.
* `#197 <https://github.com/Kozea/WeasyPrint/pull/197>`_:
  Add hyphens at line breaks activated by a soft hyphen.

Bux fixes:

* `#132 <https://github.com/Kozea/WeasyPrint/pull/132>`_:
  Fix Python 3 compatibility on Windows.

Documentation:

* `#329 <https://github.com/Kozea/WeasyPrint/issues/329>`_:
  Add documentation about installation on Windows.


Version 0.30
------------

Released on 2016-07-18.

WeasyPrint now depends on html5lib-0.999999999.

Bux fixes:

* Fix Acid2
* `#325 <https://github.com/Kozea/WeasyPrint/issues/325>`_:
  Cutting lines is broken in page margin boxes.
* `#334 <https://github.com/Kozea/WeasyPrint/issues/334>`_:
  Newest html5lib 0.999999999 breaks rendering.


Version 0.29
------------

Released on 2016-06-17.

Bug fixes:

* `#263 <https://github.com/Kozea/WeasyPrint/pull/263>`_:
  Don't crash with floats with percents in positions.
* `#323 <https://github.com/Kozea/WeasyPrint/pull/323>`_:
  Fix CairoSVG 2.0 pre-release dependency in Python 2.x.


Version 0.28
------------

Released on 2016-05-16.

Bug fixes:

* `#189 <https://github.com/Kozea/WeasyPrint/issues/189>`_:
  ``white-space: nowrap`` still wraps on hyphens
* `#305 <https://github.com/Kozea/WeasyPrint/issues/305>`_:
  Fix crashes on some tables
* Don't crash when transform matrix isn't invertible
* Don't crash when rendering ratio-only SVG images
* Fix margins and borders on some tables


Version 0.27
------------

Released on 2016-04-08.

New features:

* `#295 <https://github.com/Kozea/WeasyPrint/pull/295>`_:
  Support the 'rem' unit.
* `#299 <https://github.com/Kozea/WeasyPrint/pull/299>`_:
  Enhance the support of SVG images.

Bug fixes:

* `#307 <https://github.com/Kozea/WeasyPrint/issues/307>`_:
  Fix the layout of cells larger than their tables.

Documentation:

* The website is now on GitHub Pages, the documentation is on Read the Docs.
* `#297 <https://github.com/Kozea/WeasyPrint/issues/297>`_:
  Rewrite the CSS chapter of the documentation.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
2 participants
You can’t perform that action at this time.