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

Upgrade freetype to 2.8.1. #24240

Closed
EmmanuelCharpentier mannequin opened this issue Nov 19, 2017 · 21 comments
Closed

Upgrade freetype to 2.8.1. #24240

EmmanuelCharpentier mannequin opened this issue Nov 19, 2017 · 21 comments

Comments

@EmmanuelCharpentier
Copy link
Mannequin

EmmanuelCharpentier mannequin commented Nov 19, 2017

[ Title modified at novoselt's suggestion ] :

Motivation : in Sage 8.1.rc2, R can't plot (at least on Debian testing, whose X is Wayland by default) :

> capabilities()
       jpeg         png        tiff       tcltk         X11        aqua 
      FALSE       FALSE       FALSE        TRUE       FALSE       FALSE 
   http/ftp     sockets      libxml        fifo      cledit       iconv 
       TRUE        TRUE        TRUE        TRUE        TRUE        TRUE 
        NLS     profmem       cairo         ICU long.double     libcurl 
       TRUE       FALSE       FALSE        TRUE        TRUE        TRUE 
Warning message:
In doTryCatch(return(expr), name, parentenv, handler) :
  impossible de charger l'objet partagé '/usr/local/sage-8/local/lib/R//modules//R_X11.so':
  /usr/lib/x86_64-linux-gnu/libharfbuzz.so.0: undefined symbol: FT_Get_Var_Blend_Coordinates
> q("no")

Contrast with the system's R :

> capabilities()
       jpeg         png        tiff       tcltk         X11        aqua 
       TRUE        TRUE        TRUE        TRUE        TRUE       FALSE 
   http/ftp     sockets      libxml        fifo      cledit       iconv 
       TRUE        TRUE        TRUE        TRUE        TRUE        TRUE 
        NLS     profmem       cairo         ICU long.double     libcurl 
       TRUE        TRUE        TRUE        TRUE        TRUE        TRUE 
> q("no")

The fix is to upgrade freetype to 2.8.1. Upstream tarball is : https://download.savannah.gnu.org/releases/freetype/freetype-2.8.1.tar.bz2

Component: packages: standard

Keywords: r-project graphics interfaces

Author: Emmanuel Charpentier

Branch/Commit: 7cde142

Reviewer: Andrey Novoseltsev

Issue created by migration from https://trac.sagemath.org/ticket/24240

@EmmanuelCharpentier EmmanuelCharpentier mannequin added this to the sage-8.1 milestone Nov 19, 2017
@jdemeyer
Copy link

comment:1

"has no graphics capabilities" is pretty vague. What do you consider to be the bug precisely?

@EmmanuelCharpentier
Copy link
Mannequin Author

EmmanuelCharpentier mannequin commented Nov 19, 2017

Branch: u/charpent/fix_R_graphics_again

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Nov 19, 2017

Branch pushed to git repo; I updated commit sha1. New commits:

7cde14224240 : Updated freetype to 2.8.1.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Nov 19, 2017

Commit: 7cde142

@EmmanuelCharpentier
Copy link
Mannequin Author

EmmanuelCharpentier mannequin commented Nov 19, 2017

comment:4

Replying to @jdemeyer:

"has no graphics capabilities" is pretty vague. What do you consider to be the bug precisely?

Precisely what it means : capabilities() show that all the imaging engines of R(jpeg, png, tiff, tcltk, X11, cairo) are disabled. In a terminal, plot(<something>) does nothing and yelds an error message from X11, which complaints of a missing function in a library called harfbuzz. Similar results in the Jupyter notebook.

This might been due to recent changes in system's X11 (Debian now uses Wayland by default), which might have triggered an hitherto unknown bug.

It turns out that updating freetype to 2.8.1 fixes the problem.

The resulting Sage passes ptestlong without any error whatsoever ; R sirt-of-passing its own test suite as usual.

==>needs_review. I'll try to test it on Windows (but that means an overnight run...)

@EmmanuelCharpentier
Copy link
Mannequin Author

EmmanuelCharpentier mannequin commented Nov 19, 2017

Author: Emmanuel Charpentier

@EmmanuelCharpentier

This comment has been minimized.

@novoselt
Copy link
Member

comment:5

Shouldn't this be a blocker for 8.1?

@EmmanuelCharpentier
Copy link
Mannequin Author

EmmanuelCharpentier mannequin commented Nov 19, 2017

comment:6

Replying to @novoselt:

Shouldn't this be a blocker for 8.1?

It should. I considered it. But I doubt somehow that this opinion would be shared by the core developers, given the popularity of R among them...

Anyway, feel free to review my patch ;-).

@novoselt
Copy link
Member

comment:7

Well, the patch works in terms of upgrading freetype, but on Debian Stretch I don't see the problem before or after. So I can give positive review to a ticket titled "Upgrade freetype".

@EmmanuelCharpentier
Copy link
Mannequin Author

EmmanuelCharpentier mannequin commented Nov 19, 2017

comment:8

Replying to @novoselt:

Well, the patch works in terms of upgrading freetype, but on Debian Stretch I don't see the problem before or after. So I can give positive review to a ticket titled "Upgrade freetype".

Do you run Xorg or Wayland ? I'm running testing, where X11 defaults to Wayland : that might be the source of the diffeernces in vbehaviour.

Can you plot from a terminal running "sage -R" ? For example, try "curve(sin(x), -pi, pi)".

Using graphics in the R librar interface from Sage is a bit more intricate. More on this later...

@EmmanuelCharpentier

This comment has been minimized.

@EmmanuelCharpentier EmmanuelCharpentier mannequin changed the title R 3.4.2 has no graphics capabilities Upgrade freetype to 2.8.1. Nov 19, 2017
@novoselt
Copy link
Member

comment:10

Replying to @EmmanuelCharpentier:

Do you run Xorg or Wayland ? I'm running testing, where X11 defaults to Wayland : that might be the source of the diffeernces in vbehaviour.

I am on stable, so presumably Xorg.

Can you plot from a terminal running "sage -R" ? For example, try "curve(sin(x), -pi, pi)".

I can as in it does not cause errors and there is a PDF file created with a plot. I am far from being an expert on the topic - my only interest in R graphics is to make sure that it keeps working for SageMathCell.

@novoselt
Copy link
Member

Reviewer: Andrey Novoseltsev

@EmmanuelCharpentier
Copy link
Mannequin Author

EmmanuelCharpentier mannequin commented Nov 21, 2017

comment:11

Resetting to needs_review to grap patchbots' attention. I'll reset the state according to the results.

@novoselt
Copy link
Member

comment:12

How is it supposed to test this ticket that needs a new package placed into upstream?

@jhpalmieri
Copy link
Member

comment:13

Replying to @novoselt:

How is it supposed to test this ticket that needs a new package placed into upstream?

Download the tarball linked in the description and place it into upstream. Or is that not what you meant?

Edit: Oh, you mean the patchbots. I have heard that they are supposed to do this somehow, but I don't know if that's true.

@novoselt
Copy link
Member

comment:14

Yes, I was curious how patchbot is supposed to guess it, although perhaps it reads the description and understands it sufficiently.

@EmmanuelCharpentier
Copy link
Mannequin Author

EmmanuelCharpentier mannequin commented Nov 22, 2017

comment:15

Replying to @jhpalmieri:

Replying to @novoselt:

How is it supposed to test this ticket that needs a new package placed into upstream?

Download the tarball linked in the description and place it into upstream. Or is that not what you meant?

Edit: Oh, you mean the patchbots. I have heard that they are supposed to do this somehow, but I don't know if that's true.

Apparently, one of them did early this morning. But it seems to have just patched the sources (successfully), but didn't try to rebuild Sage.

@EmmanuelCharpentier
Copy link
Mannequin Author

EmmanuelCharpentier mannequin commented Nov 24, 2017

comment:16

Okay. This one has been (positively) checked by 5 patchbots (while none of them did much : this is considered as an SPKG).

I revert to the positive review given by Andrey Novoseltsev .

@vbraun
Copy link
Member

vbraun commented Dec 11, 2017

Changed branch from u/charpent/fix_R_graphics_again to 7cde142

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants