pygame-community / pygame-ce

🐍🎮 pygame - Community Edition is a FOSS Python library for multimedia applications (like games). Built on top of the excellent SDL library.
https://pyga.me
832 stars 139 forks source link

Pygame 1.9.2 release (107) #122

Closed GalacticEmperor1 closed 1 year ago

GalacticEmperor1 commented 1 year ago

Issue №107 opened by illume at 2012-02-11 18:32:27

Originally reported by: Lenard Lindstrom (Bitbucket: llindstrom, GitHub: llindstrom)


Pygame 1.9.2 release TODO

This issue is for coordinating the release of Pygame 1.9.2.

Windows

Issue # 75 - freetype module


Comments

*illume commented at 2012-02-14 08:23:16*

Original comment by René Dudfield (Bitbucket: illume, GitHub: illume):


hey,

For the new freetype stuff, we can run them through a few games that are normally used for testing to see if they work. Perhaps asking on the mailing list for testing or a code review.

We can use the release plan docs, which are in docs/howto_release_pygame.txt if they are still ok. Basically about two weeks of RCs and testing and announcing on the mailing list to give anyone time.

OSX builds with new SDL. The apple pythons, and the python.org pythons.

I'll ask Brian if we can get the build bots updating from hg or not... http://thorbrian.com/pygame/builds.php

Doc comments... clean up included doc comments included in offline docs, so spam isn't included. Or just don't include them. Or consider using the same comment system that is used on the projects (which has really good spam prevention tools, but still allows easy commenting).

I've resigned myself to not being able to clean up a lot of the half finished Experimental modules. They can just be released marked as Experimental, and maybe get improved apon later I think.

Open 1.9.2 bugs... we can make a list here of the bugs, and see if there are any we can fix.

cheers,


*illume commented at 2012-02-14 17:37:50*

Original comment by Lenard Lindstrom (Bitbucket: llindstrom, GitHub: llindstrom):



*illume commented at 2013-10-03 20:34:00*

Original comment by Lenard Lindstrom (Bitbucket: llindstrom, GitHub: llindstrom):


Changeset 9e222e19d04f marks the official start of alpha testing with version 1.9.2a0


*illume commented at 2013-10-26 23:31:01*

Original comment by Lenard Lindstrom (Bitbucket: llindstrom, GitHub: llindstrom):


Class freetype.Font is complete and ready for Pygame 1.9.2a0. Its api is frozen (Issure # 75, changeset e352941).


*illume commented at 2015-07-27 18:51:10*

Original comment by Lenard Lindstrom (Bitbucket: llindstrom, GitHub: llindstrom):


Hope to have Windows prebuilts soon for both 32-bit and 64-bit Windows. Right now I am cross-compiling from Linux. I have only tested the 32-bit version on Wine so far. They work, though are not a drop-in replacement for the ones built on Windows XP. Next, I will test the 32-bit prebuilts on XP.


*illume commented at 2015-07-29 20:00:45*

Original comment by Diliup Gabadamudalige (Bitbucket: diliupg, GitHub: diliupg):


This is great news! Thank you in advance!


*illume commented at 2016-05-02 18:31:44*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


Is this any closer? Alpha testing started 2.5 years ago now (!) Can we as external contributors do anything to move it forwards?


*illume commented at 2016-05-02 19:40:08*

Original comment by Diliup Gabadamudalige (Bitbucket: diliupg, GitHub: diliupg):


YES! I hope this can move forward. We should be in PYGAME 2.0 by now......


*illume commented at 2016-05-02 19:45:22*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


PyGame 2 is probably going to be a much bigger deal - see issue # 174 for that. But it would be really good to see a release of pygame on PyPI with wheels, so that people can easily install it. Even if that's just releasing the code as it is right now (or the last working version, if something just got broken), I think it's important to make it so that people can get it with pip.


*illume commented at 2016-05-03 03:55:15*

Original comment by Diliup Gabadamudalige (Bitbucket: diliupg, GitHub: diliupg):


I am currently working with pygame-1.9.2a0.win32-py2.7 and this so far has no crash or errors. A final version would be good for stability. I think it is the "game" part in the name that is putting people off and delaying the improvements maybe because it sounds "gamish" and not serious.. ? ! :)


*illume commented at 2016-05-04 05:30:05*

Original comment by René Dudfield (Bitbucket: illume, GitHub: illume):


Yes, pip install is the main thing I think # 59. Would be nice to fix the current test failures, and go through the pull requests to review them, and possibly include them if they make sense.

Doing some testing with python3.5 would be needed. There's a pull request for getting the test runner open. That might be a nice help for someone to see if that works and if so apply it.


*illume commented at 2016-05-05 06:39:15*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


I spent a while yesterday trying to get the Launchpad builds working on Ubuntu 16.04. I ran into a bizarre problem with numpy, however: when the test subprocess tries to import numpy, it fails with:

  File "/usr/lib/python2.7/dist-packages/numpy/core/__init__.py", line 14, in <module>
    from . import multiarray
ImportError: cannot import name multiarray

Full build log here.

I added an import numpy in the parent test runner process, and that doesn't cause an issue, but for some reason it doesn't work in the tests that try to use it (I was debugging sndarray). Any ideas?

I also had to tweak the include and library paths a bit for the new Debian multiarch stuff. That patch isn't quite right yet - I'll have a better shot at getting it working, and make a pull request.


*illume commented at 2016-05-05 07:03:53*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


Travis tests are passing! https://travis-ci.org/illume/pygame/builds/127990579

I think it was moving from 2.6 to 2.7 that did it. Can we just drop Python 2.6 support? It's seemingly not working properly anyway, and 2.7 came out over five years ago. Pygame seems to be suffering from a lack of developer time, so let's not make extra work by trying to support old Python versions.


*illume commented at 2016-05-21 11:13:51*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


Updates on this: we have tests passing on Travis and on Launchpad, and most of the PRs that are fixing things (rather than adding things) are merged. The remaining things I see are:


*illume commented at 2016-05-30 09:04:05*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


Let's not lose the momentum here - does anyone have time to look at pull request # 29 (finding SDL libraries on OS X) or pull request # 64 (building Windows wheels on Appveyor)?

Someone also opened an issue about segfaults with a recent commit (# 297). If that's a recent regression, which isn't clear from the description, it would be nice to find a fix before doing a release.


*illume commented at 2016-05-31 13:03:20*

Original comment by René Dudfield (Bitbucket: illume, GitHub: illume):


Awesome work Thomas. Also, thanks for the gentle pushes.

I have some time this weekend :) Will attempt the OSX stuff first. I noticed that travisci now has OSX builds available!

ps. I left a note on the appveyor pull request. If you merge your code in, then I should be able to slowly attempt to fix it. (if my notes don't fix it already).

Cheers!


*illume commented at 2016-06-01 06:10:12*

Original comment by Diliup Gabadamudalige (Bitbucket: diliupg, GitHub: diliupg):


great things are on the horizon. Thanks to Thomas K. and all the others.


*illume commented at 2016-06-13 11:36:34*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


Status update: PRs 9 and 64 were merged, and I've given up on trying to make manylinux wheels for now (see # 295).

The remaining PRs to be reviewed are:


*illume commented at 2016-06-16 15:51:56*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


@illume : another gentle push ;-) Do you think you might have time to look at those two pull requests this weekend? I hope they're the last things to do before making a 1.9.2 release.

Of course, anyone else reading this is encouraged to review the PRs as well. It would also be useful if any Windows users could install the wheels from Appveyor (select the relevant Python version, and click the 'Artifacts' tab), and make sure that they work for running games on your computer. To run the aliens example game: python -m pygame.examples.aliens.


*illume commented at 2016-06-18 09:08:42*

Original comment by René Dudfield (Bitbucket: illume, GitHub: illume):


Hi ya,

I've been working on mac related things last weekend, and will continue this weekend. Unfortunately the latest development environment doesn't work that well for older versions of MacOS. So I'm going to concentrate my efforts on the travisci mac builds which have access to OS X 10.9 - 10.11. Tracking on issue # 300


*illume commented at 2016-06-26 15:16:42*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


Status update:


*illume commented at 2016-06-30 13:55:07*

Original comment by Diliup Gabadamudalige (Bitbucket: diliupg, GitHub: diliupg):


With all due respect to all,

D:\PYTHON\SoftwareDG\Utilities\file rename new\File Utility\File Utility DG.exe\FR_frompy.py:154: RuntimeWarning: use mixer: DLL load failed: The specified module could not be found. (ImportError: DLL load failed: The specified module could not be found.) Traceback (most recent call last): File "FR_master.py", line 28, in File "FR_frompy.pyo", line 154, in File "pygame__init.pyo", line 105, in getattr__ NotImplementedError: mixer module not available (ImportError: DLL load failed: The specified module could not be found.)

So many years into pygame but this has NEVER been corrected.

If I knew how to amend this I would have done it. Does anyone know a way around this??

I sincerely hope that at least this time we can expect a PYGAME without all these unnecessary errors.


*illume commented at 2016-06-30 14:05:05*

Original comment by Diliup Gabadamudalige (Bitbucket: diliupg, GitHub: diliupg):


Another error is the pygame._view module missing error.

This error does not appear when you install from the source below. https://bitbucket.org/pygame/pygame/downloads

BUT this error is present when you install pygame from the link below. http://www.pygame.org/download.shtml WHICH IS THE PYGAME WEB SITE.

I pointed this out about 2 years ago but apparently no one saw it.

I hope these two issues will be sorted this time around

Thanks to all.


*illume commented at 2016-06-30 14:33:48*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


@diliupg can you file separate errors for those two issues (if there aren't already issues). And please include a traceback for the second one - I don't recall much from 2 years ago!

It would also be helpful to know:


*illume commented at 2016-06-30 15:29:49*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


I've just tested the wheels from Appveyor with Python 3.5 and 2.7, both 64-bit. I could play the aliens example with sound on both. On 3.5 the whole test suite passed, but on 2.7 there was one error.

======================================================================
FAIL: test_freetype_Font_path (pygame.tests.freetype_test.FreeTypeFontTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "C:\Users\Thomas\Miniconda3\envs\pygame-py2\lib\site-packages\pygame\test
s\freetype_test.py", line 1127, in test_freetype_Font_path
    self.assertEqual(self._TEST_FONTS['sans'].path, self._sans_path)
AssertionError: u'C:\ufffdsers\\Thomas\\Miniconda3\\envs\\pygame-py2\\lib\\site-
packages\\pygame\\tests\\fixtures\\fonts\\test_sans.ttf' != 'C:\\Users\\Thomas\\
Miniconda3\\envs\\pygame-py2\\lib\\site-packages\\pygame\\tests\\fixtures\\fonts
\\test_sans.ttf'

It looks like a path has been misconstructed: that \ufffd is the unicode replacement character, presumably because the \U in C:\Users was interpreted as a unicode escape.


*illume commented at 2016-06-30 17:18:26*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


I've filed an issue for that as # 302.


*illume commented at 2016-07-01 07:10:08*

Original comment by Diliup Gabadamudalige (Bitbucket: diliupg, GitHub: diliupg):


https://bitbucket.org/pygame/pygame/downloads

In the repo above which is the latest Pygame version for Python27 and Python35 respectively running on 32 bit windows?

Is it prebuilt-x86-pygame-1.9.2-20150922.zip https://bitbucket.org/pygame/pygame/downloads/prebuilt-x86-pygame-1.9.2-20150922.zip and prebuilt-x64-pygame-1.9.2-20150922.zip https://bitbucket.org/pygame/pygame/downloads/prebuilt-x64-pygame-1.9.2-20150922.zip

or

pygame-1.9.2a0-hg_8d9e6a1f2635+.win-amd64-py2.7.msi https://bitbucket.org/pygame/pygame/downloads/pygame-1.9.2a0-hg_8d9e6a1f2635+.win-amd64-py2.7.msi and pygame-1.9.2a0-hg_8d9e6a1f2635+.win-amd64-py3.4.msi https://bitbucket.org/pygame/pygame/downloads/pygame-1.9.2a0-hg_8d9e6a1f2635+.win-amd64-py3.4.msi respectively.

Why is

which is from the Pygame site such a large installation compared to the one on bitbucket

The same applies to

The Pygame._view error comes when you install from the PYGAME site. This has been persistant since2013. I have pointed this out several years ago. Good to have something happening at least now.


*illume commented at 2016-07-01 07:53:59*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


The Pygame._view error comes when you install from the PYGAME site. This has been persistant since 2013.

I still don't know what the error you're referring to is! Please create an issue with the details. It's entirely possible that the installers on the download page have been the same build since 2013 and this issue is already fixed. If so, the most important thing is to do a new release and update the download page.


*illume commented at 2016-07-01 18:35:10*

Original comment by Diliup Gabadamudalige (Bitbucket: diliupg, GitHub: diliupg):


Hi!

I don't know how to create an issue. Maybe you can create one with this info.

When you create a program with Python 27 and Pygame and when you run it ImportError: No module named _view props up. This happens when yoou install Pygame from the installation on PYGAME WEB SITE. If you install from the bitbucket site this error is NOT THERE. pygame._view module is missing. I don't know how to make it any clearer than that.


*illume commented at 2016-07-01 20:48:06*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


You can create an issue by clicking on the 'Issues' section to the left and then clicking the 'Create issue' button in the top right. Here's a shortcut: https://bitbucket.org/pygame/pygame/issues/new

The key detail I'd want to add your description is what code you need to trigger the error. Does import pygame immediately cause the error? Does running python -m pygame.examples.aliens cause the error? Or does the code need to do something more specific to cause it?

I'd guess, however, that the installers linked on the download page are relatively old, and this is something that was fixed by the time the newer installers were made and uploaded to the Bitbucket downloads section. If that is the case, there's nothing that needs to be fixed in the code, just the download page (which I don't have access to change). But it would be good if someone who's seen this error can confirm that it's gone with the latest wheel builds.


*illume commented at 2016-07-11 13:39:25*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


Status update: the remaining things I'm aware of both relate to OSX:

Who can tackle Mac issues? Do we want to ask on the mailing list for people to help with testing and fixing stuff on Macs?


*illume commented at 2016-07-13 08:08:04*

Original comment by PanderMusubi (Bitbucket: PanderMusubi, GitHub: PanderMusubi):


We are about to start a project with pygame, however we are only allowed to work in Python 3 with stable releases. If there are reasonable fool-proof instructions on what (which branch with specific commands) and how (which games and tutorials) to test on Linux, OSX and Windows, we could help out with some testing and detailed reporting on bugs.


*illume commented at 2016-07-13 09:35:39*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


Thanks Pander, that would be great!

The most useful thing would be OSX testing, because that's the one I can't easily test and don't know how to fix. Using homebrew, you should be able to:

hg clone ssh://hg@bitbucket.org/pygame/pygame
brew install sdl sdl_image sdl_mixer sdl_ttf smpeg jpeg libpng portmidi freetype python3 python
#  Optionally create a virtualenv at this point
pip install --upgrade setuptools pip
pip install --upgrade numpy
python config.py
python setup.py install

#  Run the tests:
python -m pygame.tests

#  Run an example:
python -m pygame.examples.aliens

With the tests, do you see the same errors that we got on Travis, described in issue # 300?

Ideally, try with both Python 3 and 2, but if you don't have time, just getting Python 3 tested would be valuable.

If you also have time to test on Linux, the procedure is similar. On a Debian based distribution, you should be able to install the dependencies like this:

sudo apt-get install python-dev python3-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev libsdl1.2-dev libportmidi-dev libjpeg-dev libtiff4-dev libx11-6 libX11-dev xfonts-base xfonts-100dpi xfonts-75dpi xfonts-cyrillic

On Windows, we have ready built wheels on Appveyor. Select the relevant build from that page by Python version and 32/64 bit, click the artifacts tab, and download the wheel. You can install the wheel files with pip install pygame...whl (expand ... to the filename you downloaded).


*illume commented at 2016-07-13 14:59:25*

Original comment by PanderMusubi (Bitbucket: PanderMusubi, GitHub: PanderMusubi):


For Ubuntu Xenial libtiff4-dev -> libtiff5-dev and libX11-dev -> libx11-dev

Furthermore. hg fails:

$ hg clone ssh://hg@bitbucket.org/pygame/pygame The authenticity of host 'bitbucket.org (104.192.143.2)' can't be established. RSA key fingerprint is SHA256:zzXQOXSRBEiUtuE8AikJYKwbHaxvSc0ojez9YXaGp1A. Are you sure you want to continue connecting (yes/no)? yes remote: Warning: Permanently added 'bitbucket.org,104.192.143.2' (RSA) to the list of known hosts. remote: Permission denied (publickey). abort: no suitable response from remote hg!

$ hg clone ssh://hg@bitbucket.org/pygame/pygame remote: Permission denied (publickey). abort: no suitable response from remote hg!


*illume commented at 2016-07-13 15:02:29*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


Aha, thanks - I copied the command off our Travis job, which I think still runs on Trusty...or even Precise, maybe.

Sorry, my mistake with hg, I copied the command without thinking. If you clone with https, it should work:

hg clone https://bitbucket.org/pygame/pygame

*illume commented at 2016-07-13 15:21:11*

Original comment by PanderMusubi (Bitbucket: PanderMusubi, GitHub: PanderMusubi):


this error

...
loading pygame.tests.transform_test
.......F......F.....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
======================================================================
FAIL: test_get_error (pygame.tests.base_test.BaseModuleTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/pygame/tests/base_test.py", line 572, in test_get_error
    e)
AssertionError: Failed to access the SoundFont /usr/share/sounds/sf2/FluidR3_GM.sf2

======================================================================
FAIL: test_set_error (pygame.tests.base_test.BaseModuleTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/pygame/tests/base_test.py", line 589, in test_set_error
    e)
AssertionError: Failed to access the SoundFont /usr/share/sounds/sf2/FluidR3_GM.sf2

----------------------------------------------------------------------
Ran 708 tests in 26.822s

FAILED (failures=2)```

and after installing fluid-soundfont-gm

```======================================================================
FAIL: test_get_error (pygame.tests.base_test.BaseModuleTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/pygame/tests/base_test.py", line 572, in test_get_error
    e)
AssertionError: Failed to access the SoundFont /usr/share/sounds/sf2/TimGM6mb.sf2

======================================================================
FAIL: test_set_error (pygame.tests.base_test.BaseModuleTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/pygame/tests/base_test.py", line 589, in test_set_error
    e)
AssertionError: Failed to access the SoundFont /usr/share/sounds/sf2/TimGM6mb.sf2

----------------------------------------------------------------------
Ran 708 tests in 29.049s

FAILED (failures=2)```

is fixed with `sudo apt-get install fluid-soundfont-gm` and in the source code you need to change `/usr/share/sounds/sf2/TimGM6mb.sf2` into `/usr/share/sounds/sf2/FluidR3_GM.sf2` (I think). Can you confirm this and let me know when this is fixed in hg so I can build and test again?

PS   Ubuntu Xenial has fluid-soundfont-gm 3.1-5

<hr>

# # #  **[illume](https://github.com/illume)* commented at 2016-07-13 15:24:50*

*Original comment by* **Thomas Kluyver (Bitbucket: [takluyver](https://bitbucket.org/takluyver), GitHub: [takluyver](https://github.com/takluyver))**:

----------------------------------------

Can you try with `timgm6mb-soundfont` installed? This is working for me on Ubuntu, but the list of packages I specified may have been incomplete.

<hr>

# # #  **[illume](https://github.com/illume)* commented at 2016-07-13 15:28:47*

*Original comment by* **PanderMusubi (Bitbucket: [PanderMusubi](https://bitbucket.org/PanderMusubi), GitHub: [PanderMusubi](https://github.com/PanderMusubi))**:

----------------------------------------

Sorry, small update. I needed to install two packages: `sudo apt-get install fluid-soundfont-gm fluid-soundfont-gs`

```$ dpkg -L fluid-soundfont-gs|grep '\.sf2'
/usr/share/sounds/sf2/FluidR3_GS.sf2
$ dpkg -L fluid-soundfont-gm|grep '\.sf2'
/usr/share/sounds/sf2/FluidR3_GM.sf2```

Resulting error is:
```AssertionError: Failed to access the SoundFont /usr/share/sounds/sf2/TimGM6mb.sf2```

<hr>

# # #  **[illume](https://github.com/illume)* commented at 2016-07-13 15:34:44*

*Original comment by* **PanderMusubi (Bitbucket: [PanderMusubi](https://bitbucket.org/PanderMusubi), GitHub: [PanderMusubi](https://github.com/PanderMusubi))**:

----------------------------------------

Yes, that did the trick! You have to add to your prerequisites: `sudo apt-get install fluid-soundfont-gm timgm6mb-soundfont` (not fluid-soundfont-gs).

<hr>

# # #  **[illume](https://github.com/illume)* commented at 2016-07-13 15:40:13*

*Original comment by* **Thomas Kluyver (Bitbucket: [takluyver](https://bitbucket.org/takluyver), GitHub: [takluyver](https://github.com/takluyver))**:

----------------------------------------

OK, so on Ubuntu Xenial, here's the updated list of packages you needed to install:

python-dev python3-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev libsdl1.2-dev libportmidi-dev libjpeg-dev libtiff5-dev libx11-6 libx11-dev xfonts-base xfonts-100dpi xfonts-75dpi xfonts-cyrillic fluid-soundfont-gm timgm6mb-soundfont


<hr>

# # #  **[illume](https://github.com/illume)* commented at 2016-07-13 15:55:42*

*Original comment by* **PanderMusubi (Bitbucket: [PanderMusubi](https://bitbucket.org/PanderMusubi), GitHub: [PanderMusubi](https://github.com/PanderMusubi))**:

----------------------------------------

On Raspbian Jessie (on a Raspberry Pi 2) you need to install something different: `install fluid-soundfont-gm musescore-soundfont-gm`

And add to the general list: `apt-get install mercurial python-setuptools python3-setuptools python-numpy python3-numpy` (I would prefer that over installations via pip.)

<hr>

# # #  **[illume](https://github.com/illume)* commented at 2016-07-13 15:59:33*

*Original comment by* **Thomas Kluyver (Bitbucket: [takluyver](https://bitbucket.org/takluyver), GitHub: [takluyver](https://github.com/takluyver))**:

----------------------------------------

Thanks. Any chance you could help us get the tests working with OSX?

<hr>

# # #  **[illume](https://github.com/illume)* commented at 2016-07-13 16:04:08*

*Original comment by* **PanderMusubi (Bitbucket: [PanderMusubi](https://bitbucket.org/PanderMusubi), GitHub: [PanderMusubi](https://github.com/PanderMusubi))**:

----------------------------------------

On Raspbian Jessie, the aliens example works, but the normal test results in failures=5, errors=13:

```  File "/usr/local/lib/python2.7/dist-packages/pygame/tests/scrap_test.py", line 33, in setUp
    scrap.init ()
error:: SDL is not running on know window manager```

and above that

```... font_test.py", line 192, in test_render_args
...
AssertionError: Tuples differ: (8, 8, 8) != (10, 10, 10)

This I copied manually from the screen. In which file can I find the output of the test?


*illume commented at 2016-07-13 16:07:30*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


I don't think the output is written to a file by default. You can write it to a file by redirecting:

python -m pygame.tests > test_output.txt

*illume commented at 2016-07-13 16:07:39*

Original comment by PanderMusubi (Bitbucket: PanderMusubi, GitHub: PanderMusubi):


I hope this Friday on the machine of my colleague. Before embarking on testing OSX, wanted to get it running on Ubuntu and Raspbian in order to know what I am doing. As I don't have a lot of experience in building on OSX, ask also others.


*illume commented at 2016-07-13 16:08:17*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


That may need &> to redirect both stdout and stderr.


*illume commented at 2016-07-13 16:11:44*

Original comment by PanderMusubi (Bitbucket: PanderMusubi, GitHub: PanderMusubi):


it worked the first time, see http://pastebin.com/Bm3pTu8h for the output

which opengl (lib/dev) packages are needed?


*illume commented at 2016-07-13 16:17:02*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


Are you running in a graphical environment on the raspi? If it's in a plain console, then you need to configure some things to run the tests:

SDL_VIDEODRIVER=dummy SDL_AUDIODRIVER=disk python -m pygame.tests --exclude opengl

*illume commented at 2016-07-13 16:27:17*

Original comment by PanderMusubi (Bitbucket: PanderMusubi, GitHub: PanderMusubi):


then the result is http://pastebin.com/xSB5gsAu

all cases of which I assume are not hard to fix


*illume commented at 2016-07-13 16:53:18*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


I suspect there's still a missing dependency. The Ubuntu package for the last version of pygame depends on fonts-freefont-ttf - can you check that's installed in Raspian?


*illume commented at 2016-07-13 17:30:42*

Original comment by PanderMusubi (Bitbucket: PanderMusubi, GitHub: PanderMusubi):


Will do that tomorrow morning. Please, remove any .deb dependencies on font packages. This is a nightmware for users of TeX Live and other users that work with custom font installations or alternative font sources. This is a long story why, which I gladly explain if needed. Usually font package dependencies are only for one or two example templates or test cases. Preferably, also do not ship any TTF or OTF files. Using font-config will help you to find font files in a dynamic way.


*illume commented at 2016-07-14 08:56:11*

Original comment by PanderMusubi (Bitbucket: PanderMusubi, GitHub: PanderMusubi):


I had a quick look at all the font dependencies and font inclusion et cetera. Do you agree to create a separate issue for that to optimize that reducing font dependencies to a minimum and making font usage (in testing and examples) TTF/OTF agnostic?


*illume commented at 2016-07-14 09:03:43*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


Feel free to open an issue for it. I don't want to hold the 1.9.2 release up on that, however, because I suspect it's been that way for a long time, and it's proving more than hard enough already to actually get to a release, so we don't want to add more blockers unless they're really critical.


*illume commented at 2016-07-14 10:42:14*

Original comment by PanderMusubi (Bitbucket: PanderMusubi, GitHub: PanderMusubi):


Totally agree on that. After installation of fonts-freefont-ttf the output of the test is http://pastebin.com/dZSNCF1z


*illume commented at 2016-07-14 10:47:23*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


So it still fails... Looking into the code, it does actually use fontconfig (fc-list) to find fonts. Do you have fontconfig installed on the raspi?


*illume commented at 2016-07-14 11:26:08*

Original comment by PanderMusubi (Bitbucket: PanderMusubi, GitHub: PanderMusubi):


Yes, that did the trick! (I am a bit lazy testing regarding pygame.) sudo apt-get install fontconfig it is

Do you have a wiki page where this all gets documented?

skipping pygame.tests.midi_test (tag 'interactive')
skipping pygame.tests.sndarray_test (tag 'subprocess_ignore')
skipping pygame.tests.surfarray_test (tag 'subprocess_ignore')
loading pygame.tests.base_test
loading pygame.tests.blit_test
loading pygame.tests.bufferproxy_test
loading pygame.tests.camera_test
loading pygame.tests.color_test
loading pygame.tests.compat_test
loading pygame.tests.cursors_test
loading pygame.tests.display_test
loading pygame.tests.draw_test
loading pygame.tests.event_test
loading pygame.tests.fastevent_test
loading pygame.tests.font_test
loading pygame.tests.freetype_test
loading pygame.tests.ftfont_test
loading pygame.tests.gfxdraw_test
loading pygame.tests.image__save_gl_surface_test
loading pygame.tests.image_test
loading pygame.tests.imageext_test
loading pygame.tests.joystick_test
loading pygame.tests.key_test
loading pygame.tests.mask_test
loading pygame.tests.math_test
loading pygame.tests.mixer_music_test
loading pygame.tests.mixer_test
loading pygame.tests.mouse_test
loading pygame.tests.overlay_test
loading pygame.tests.pixelarray_test
loading pygame.tests.pixelcopy_test
loading pygame.tests.rect_test
loading pygame.tests.rwobject_test
loading pygame.tests.scrap_test
loading pygame.tests.sprite_test
loading pygame.tests.surface_test
loading pygame.tests.surflock_test
loading pygame.tests.sysfont_test
loading pygame.tests.threads_test
loading pygame.tests.time_test
loading pygame.tests.transform_test
....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
----------------------------------------------------------------------
Ran 644 tests in 48.003s

OK```

<hr>

# # #  **[illume](https://github.com/illume)* commented at 2016-07-14 11:30:26*

*Original comment by* **PanderMusubi (Bitbucket: [PanderMusubi](https://bitbucket.org/PanderMusubi), GitHub: [PanderMusubi](https://github.com/PanderMusubi))**:

----------------------------------------

Now running the build, tests and examples with Python 3 (from another hg clone). Extra requirement is `sudo apt-get install python-opengl python3-opengl` With Python 2 the example glcube works, with Python3 I get the error:

`The GLCUBE example requires PyOpenGL`

I also got that when I ran the example with Python 2 before installing python-opengl and python3-opengl. So pygame run with Python3 cannot find the opengl Python 3 bindings.

<hr>

# # #  **[illume](https://github.com/illume)* commented at 2016-07-14 11:33:29*

*Original comment by* **Thomas Kluyver (Bitbucket: [takluyver](https://bitbucket.org/takluyver), GitHub: [takluyver](https://github.com/takluyver))**:

----------------------------------------

I think this would be the place: http://www.pygame.org/wiki/CompileUbuntu

The sign-up URL is hidden to prevent spam, I'll send you a link by private message.

<hr>

# # #  **[illume](https://github.com/illume)* commented at 2016-07-14 11:41:52*

*Original comment by* **Thomas Kluyver (Bitbucket: [takluyver](https://bitbucket.org/takluyver), GitHub: [takluyver](https://github.com/takluyver))**:

----------------------------------------

I've pushed a couple of fixes to the glcube example; it looks like the version of pyopengl packaged in Ubuntu has a bug, so I also needed to upgrade it using pip.

<hr>

# # #  **[illume](https://github.com/illume)* commented at 2016-07-14 12:18:07*

*Original comment by* **PanderMusubi (Bitbucket: [PanderMusubi](https://bitbucket.org/PanderMusubi), GitHub: [PanderMusubi](https://github.com/PanderMusubi))**:

----------------------------------------

Xenial ships with 3.0.2.-1, Yakkety is planned to ship 3.1.0+dfsg-1, see https://launchpad.net/ubuntu/+source/pyopengl Shall I request Ubuntu to upgrade to 3.1.1a1, see https://pypi.python.org/pypi/PyOpenGL ? Do you have an url for the specific bug(s) pygame suffers otherwise so I can mention these in the upgrade request at Ubuntu?

<hr>

# # #  **[illume](https://github.com/illume)* commented at 2016-07-14 12:28:48*

*Original comment by* **Thomas Kluyver (Bitbucket: [takluyver](https://bitbucket.org/takluyver), GitHub: [takluyver](https://github.com/takluyver))**:

----------------------------------------

3.1.0 was what I got from PyPI (I didn't use the `--pre` flag to get the 3.1.1 alpha), so there's no need to upgrade it in Yakkety. I doubt you'll get an upgrade into Xenial now, but if you want to try, it looks like this is the issue: https://bugs.launchpad.net/ubuntu/+source/pyopengl/+bug/1573689

Aside: this sort of thing is why I rarely recommend distro packages - they've packaged this for an LTS release even though it's unusable, and it will now be a huge pain to fix.

<hr>

# # #  **[illume](https://github.com/illume)* commented at 2016-07-14 13:39:54*

*Original comment by* **PanderMusubi (Bitbucket: [PanderMusubi](https://bitbucket.org/PanderMusubi), GitHub: [PanderMusubi](https://github.com/PanderMusubi))**:

----------------------------------------

After installing 3.1.0 from Yakkety I get a black window appearing shortly and then this error:

p3/pygame$ python3 -m pygame.examples.glcube Traceback (most recent call last): File "/usr/lib/python3.5/runpy.py", line 184, in _run_module_as_main "main", mod_spec) File "/usr/lib/python3.5/runpy.py", line 85, in _run_code exec(code, run_globals) File "/usr/local/lib/python3.5/dist-packages/pygame/examples/glcube.py", line 109, in if name == 'main': main() File "/usr/local/lib/python3.5/dist-packages/pygame/examples/glcube.py", line 104, in main drawcube() File "/usr/local/lib/python3.5/dist-packages/pygame/examples/glcube.py", line 63, in drawcube pos, color = allpoints[vert] TypeError: 'zip' object is not subscriptable


Using 3.1.0 for Python 2 works.

PS  Please upvote the bug on launchpad, that might help.

<hr>

# # #  **[illume](https://github.com/illume)* commented at 2016-07-14 14:08:55*

*Original comment by* **Thomas Kluyver (Bitbucket: [takluyver](https://bitbucket.org/takluyver), GitHub: [takluyver](https://github.com/takluyver))**:

----------------------------------------

Yep, I pushed a fix for that recently (11a83b3).

I've upvoted the bug on Launchpad, but I'm not holding my breath.

<hr>

# # #  **[illume](https://github.com/illume)* commented at 2016-07-14 14:22:48*

*Original comment by* **PanderMusubi (Bitbucket: [PanderMusubi](https://bitbucket.org/PanderMusubi), GitHub: [PanderMusubi](https://github.com/PanderMusubi))**:

----------------------------------------

after

```hg pull
hg update```

glcube with Python 3 and python3-opengl 3.1.0 works. Thanks. I haven't ran all the examples, but it looks like it all works. Which ones are essential to complete Ubuntu and Raspbian testing?

<hr>

# # #  **[illume](https://github.com/illume)* commented at 2016-07-14 14:50:10*

*Original comment by* **Thomas Kluyver (Bitbucket: [takluyver](https://bitbucket.org/takluyver), GitHub: [takluyver](https://github.com/takluyver))**:

----------------------------------------

I'm not sure, to be honest; I haven't run them all either. I usually start with aliens because that's a reasonably complete mini-game, so it exercises input handling, 2d graphics, sprites and sound. If you have existing pygame code yourself, it would be great if you could check that it isn't broken with the latest pygame version.

If anyone has plenty of spare time, they could get [pyweek](https://pyweek.org/) games that use pygame, and check that they still work with the latest version. But the biggest priority for doing a release is sorting out the Mac issues listed at # 300.

<hr>

# # #  **[illume](https://github.com/illume)* commented at 2016-07-16 12:47:26*

*Original comment by* **PanderMusubi (Bitbucket: [PanderMusubi](https://bitbucket.org/PanderMusubi), GitHub: [PanderMusubi](https://github.com/PanderMusubi))**:

----------------------------------------

Okay, I am on an up to date OSX machine (which is not my domain) and did the following:

$ python Python 2.7.5... ... exit(0) $ sudo easy_install pip $ pip install --upgrade setuptools pip $ pip install --upgrade numpy $ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/HomeBrew/install/master/install)" $ sudo xcodebuild -license q agree $ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/HomeBrew/install/master/install)" $ brew install mercurial $ brew install sdl sdl_image sdl_mixer sdl_sdl_ttf portmidi smpeg jpeg freetype $ mkdir p2; cd p2 $ hg clone https://bitbucket.org/pygame/pygame $ cd pygame $ python config.py # ended up installing XQuartz-2.7.9.dmg ... Hunting dependencies... SDL : found 1.2.15 Framework SDL not found FONT : found Framework SDL_ttf not found IMAGE : found Framework SDL_image not found MIXER : found Framework SDL_mixer not found Framework CoreMIDI found Framework QuickTime found PNG : found JPEG : found PORTMIDI: found FREETYPE: found 2.6.3 ...

HOW TO INVESTIGATE AND FIX THE ERRORS REPORTED ABOVE?

$ sudo python setup.py install ... Finished processing dependencies for pygame==1.9.2b1 $ python -m pygame.tests

RESULTS IN THERE ERRORS AND FAILERS http://pastebin.com/aXQeUEad

$ python -m pygame.examples.aliens

WORKS, ALSO SOUND, HOWEVER NO TRANSPARANCY ON SPRITES

$ cd ../.. $ brew python3 $ xcode-select --install $ brew python3 $ mkdir p3; cd p3 $ hg clone https://bitbucket.org/pygame/pygame $ cd pygame $ python3 config.py Using Darwin configuration...

Hunting dependencies... SDL : found 1.2.15 Framework SDL not found FONT : found Framework SDL_ttf not found IMAGE : found Framework SDL_image not found MIXER : found Framework SDL_mixer not found Framework CoreMIDI found Framework QuickTime found PNG : found JPEG : found PORTMIDI: found FREETYPE: found 2.6.3

If you get compiler errors during install, doublecheck the compiler flags in the "Setup" file.

$ sudo python3 setup.py install ... Writing /usr/local/lib/python3.5/site-packages/pygame-1.9.2b1-py3.5.egg-info $ python3 -m pygame.tests

RESULTS IN ERRORS AND FAILURES, SEE http://pastebin.com/W7LcqW2K

$ python3 -m pygame.examples.aliens

WORKS, WITH SOUND, NO TRANSPARENCY IN SPRITES



Let me know when what and how to analyse and retest.

<hr>

# # #  **[illume](https://github.com/illume)* commented at 2016-07-19 10:24:51*

*Original comment by* **PanderMusubi (Bitbucket: [PanderMusubi](https://bitbucket.org/PanderMusubi), GitHub: [PanderMusubi](https://github.com/PanderMusubi))**:

----------------------------------------

If it is of any help, these are all the *libpng* files on the OSX machine I did the tests: http://pastebin.com/58f7YPiF (note z25 here is the user)

If I need to do some extra testing, let me know.

<hr>

# # #  **[illume](https://github.com/illume)* commented at 2016-07-21 12:12:10*

*Original comment by* **René Dudfield (Bitbucket: [illume](https://bitbucket.org/illume), GitHub: [illume](https://github.com/illume))**:

----------------------------------------

Thanks @PanderMusubi !

I'll look into it.

<hr>

# # #  **[illume](https://github.com/illume)* commented at 2016-07-29 18:58:02*

*Original comment by* **Thomas Kluyver (Bitbucket: [takluyver](https://bitbucket.org/takluyver), GitHub: [takluyver](https://github.com/takluyver))**:

----------------------------------------

Status update:

* We're nearly there on building wheels for the main three platforms. There are a few things to be finished up on pull request # 68 to make Linux wheels.
* Pull request # 29 for finding SDL libraries on OSX is still open, but now that we're making OSX wheels without that, maybe it's not so important.

<hr>
GalacticEmperor1 commented 1 year ago

*illume commented at 2016-07-31 16:34:32*

Original comment by René Dudfield (Bitbucket: illume, GitHub: illume):


I think pull request # 29 is going to require a LOT of testing. However, perhaps we have to do a lot of that testing anyway. I'm not sure. I really think the binary wheels are 99% better than a .dmg which requires sudo permission to copy in Framework builds. Also, the homebrew build already works, or can easily modify things. The one thing with mac builds now is to try to make sure py2app can still work. If it does, I'd say we don't even bother with .dmg releases. I guess we will find out once more testing happens.

I asked on the other open pull requests for more information and help. Some of them look pretty good, and are well done. However, I don't think they should be blockers.

Once the linux wheel stuff is done (compiling those other dependencies), we can do a release candidate. Then publicise it more widely and give people two weeks to maybe say... 'wait! this crashy thing needs fixing first'.

I'll update the release plan: docs/howto_release_pygame.txt

Additionally we need to make sure WHATSNEW is updated with the relevant changes for this release.

The other thing I'm going to try and document is the OSX building on travisci, and also the appveyor stuff. So hopefully other people can more easily change things and contribute.

ps. I'm taking the month off to work on pygame stuff.


*illume commented at 2016-08-01 14:49:53*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


I'm taking the month off to work on pygame stuff.

Awesome! Thanks on behalf of everyone using pygame who doesn't know you're doing this :-)


*illume commented at 2016-08-02 06:50:04*

Original comment by Diliup Gabadamudalige (Bitbucket: diliupg, GitHub: diliupg):


That sounds good! :)


*illume commented at 2016-08-05 18:16:14*

Original comment by Mochnant (Bitbucket: Mochnant, GitHub: Mochnant):


As a random pygame user wandering though... Thank you, @illume!


*illume commented at 2016-08-06 09:05:49*

Original comment by René Dudfield (Bitbucket: illume, GitHub: illume):


:)

That reminds me... also need to update all the credits listings. The final documentation work I am doing at this pull request. https://bitbucket.org/pygame/pygame/pull-requests/70/documenting-things-for-the-192-release/diff

One thing that might be a blocker is the sysfont module, which was changed to just use fc-list. Unfortunately this is not everywhere, and causes a very long pause on some systems. And I think it triggers a 'download X11' dialog on mac, since X11 is not there by default anymore. https://bitbucket.org/pygame/pygame/issues/179/need-to-update-system-font-lists-in


*illume commented at 2016-08-06 09:30:37*

Original comment by René Dudfield (Bitbucket: illume, GitHub: illume):


Thanks @PanderMusubi ! That's very helpful.


*illume commented at 2016-08-06 09:34:39*

Original comment by PanderMusubi (Bitbucket: PanderMusubi, GitHub: PanderMusubi):


The two attached scripts help run all examples with Python 2 and 3. Press enter after each example to progress to the next example.

I spend about four days testing, fault finding and documenting for Ubuntu, Raspbian and OSX. I did this in the context of a foundation I am working for. My colleagues were so kind to help out by making some hardware available. So, if you would, please add to the credits for the 1.9.2. release that part of the testing was done by: Stichting z25.org info@z25.org Thanks


*illume commented at 2016-08-06 10:36:25*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


Nice, thanks :-)


*illume commented at 2016-08-07 01:35:02*

Original comment by Caleb Hattingh (Bitbucket: cjrh, GitHub: cjrh):


I ran the tests on OS X, using homebrew versions of SDL things. There were 3 failed tests and 2 errors:

# !bash

======================================================================
FAIL: test_get_fonts (pygame.tests.font_test.FontModuleTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/calebhattingh/temp/env_pygame_3/lib/python3.5/site-packages/pygame-1.9.2b8-py3.5-macosx-10.11-x86_64.egg/pygame/tests/font_test.py", line 94, in test_get_fonts
    self.failUnless(name.islower(), name)
AssertionError: False is not true :

======================================================================
FAIL: test_get_fonts (pygame.tests.font_test.FontModuleTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/calebhattingh/temp/env_pygame_3/lib/python3.5/site-packages/pygame-1.9.2b8-py3.5-macosx-10.11-x86_64.egg/pygame/tests/font_test.py", line 94, in test_get_fonts
    self.failUnless(name.islower(), name)
AssertionError: False is not true :

======================================================================
FAIL: testLoadPNG (pygame.tests.image_test.ImageModuleTest)
see if we can load a png with color values in the proper channels.
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/calebhattingh/temp/env_pygame_3/lib/python3.5/site-packages/pygame-1.9.2b8-py3.5-macosx-10.11-x86_64.egg/pygame/tests/image_test.py", line 81, in testLoadPNG
    self.assertEquals(pixel_x1_y1, greyish_pixel)
AssertionError: (109, 120, 129, 140) != (110, 120, 130, 140)

======================================================================
ERROR: test_load (pygame.tests.mixer_music_test.MixerMusicModuleTest)
|tags:music|
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/calebhattingh/temp/env_pygame_3/lib/python3.5/site-packages/pygame-1.9.2b8-py3.5-macosx-10.11-x86_64.egg/pygame/tests/mixer_music_test.py", line 45, in test_load
    pygame.mixer.music.load(umusfn)
pygame.error: Unrecognized music format

======================================================================
ERROR: test_image_convert_bug_131 (pygame.tests.surface_test.SurfaceTypeTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/calebhattingh/temp/env_pygame_3/lib/python3.5/site-packages/pygame-1.9.2b8-py3.5-macosx-10.11-x86_64.egg/pygame/tests/surface_test.py", line 688, in test_image_convert_bug_131
    self.assertEquals( im.get_palette(),  ((0, 0, 0, 255), (255, 255, 255, 255)) )
pygame.error: Surface has no palette to get

The paste of the output: http://pastebin.com/iByvMrbZ

The aliens example worked, but as noted in several places the transparency in the sprites was missing. The specific commit was:

# !bash

$ hg summary
parent: 3578:2b59043d4151
 Merged in manylinux-wheels (pull request # 68)
branch: default
commit: 5 unknown (clean)
update: (current)

I don't know whether this is helpful, but it's another data point at least.


*illume commented at 2016-08-20 20:44:44*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


Status update:

We now have wheels building on all three major platforms (Linux, Windows, Mac). :grinning:

Anything else?


*illume commented at 2016-08-20 20:48:03*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


Oh, plus the test failures @cjrh reported above; I'm not sure what caused those. Maybe building newer versions of SDL libraries ourselves would help?


*illume commented at 2016-08-20 22:40:50*

Original comment by Caleb Hattingh (Bitbucket: cjrh, GitHub: cjrh):


My homebrew is up-to-date and these are my versions:

$ python config.py
Using Darwin configuration...

Hunting dependencies...
SDL     : found 1.2.15
Framework SDL not found
FONT    : found
Framework SDL_ttf not found
IMAGE   : found
Framework SDL_image not found
MIXER   : found
Framework SDL_mixer not found
Framework CoreMIDI found
Framework QuickTime found
PNG     : found
JPEG    : found
PORTMIDI: found
FREETYPE: found 2.6.5

Do the wheels mentioned above include the SDL? And if so, any different versions? IMO if it's possible to include as many dependencies as possible into the wheels, that would be best. I've had problems for many years getting pygame to work, always with problems with dependencies.


*illume commented at 2016-08-20 23:18:41*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


The wheels should bundle SDL and all libraries that we can't assume are part of the underlying OS.

I'm assuming that the test failures you listed above were the result of building from source, not of installing one of the Mac wheels?


*illume commented at 2016-08-20 23:33:45*

Original comment by Caleb Hattingh (Bitbucket: cjrh, GitHub: cjrh):


Yes, that's correct. I'll try the mac wheel instead.


*illume commented at 2016-08-20 23:57:10*

Original comment by Caleb Hattingh (Bitbucket: cjrh, GitHub: cjrh):


Much better, only 2 failed tests, both to do with fonts:

======================================================================
FAIL: test_get_fonts (pygame.tests.font_test.FontModuleTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/calebhattingh/temp/pygamewheel/env/lib/python3.5/site-packages/pygame/tests/font_test.py", line 94, in test_get_fonts
    self.failUnless(name.islower(), name)
AssertionError: False is not true :

======================================================================
FAIL: test_get_fonts (pygame.tests.font_test.FontModuleTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/calebhattingh/temp/pygamewheel/env/lib/python3.5/site-packages/pygame/tests/font_test.py", line 94, in test_get_fonts
    self.failUnless(name.islower(), name)
AssertionError: False is not true :

----------------------------------------------------------------------
Ran 677 tests in 24.531s

FAILED (failures=2)

This was using Python 3.5.2 (homebrew-supplied), and from inside a virtualenv. This was the wheel that got downloaded, is it correct?

$ pip install pygame
Collecting pygame
  Downloading pygame-1.9.2b6-cp35-cp35m-macosx_10_9_intel.whl (4.4MB)
    100% |████████████████████████████████| 4.4MB 320kB/s
Installing collected packages: pygame
Successfully installed pygame-1.9.2b6

*illume commented at 2016-08-21 05:07:58*

Original comment by Caleb Hattingh (Bitbucket: cjrh, GitHub: cjrh):


Ok, I figured out why that font test is failing. One of the fonts on my system has a missing family field (GeezaPro.ttc). In pygame/sysfont.py, the output of /usr/bin/fc-list is parsed and when this font is processed, the family field is blank:

def initsysfonts_unix(path="fc-list"):
    """use the fc-list from fontconfig to get a list of fonts"""
    fonts = {}

    try:
        #  note, we capture stderr so if fc-list isn't there to stop stderr
        #  printing.
        flout, flerr = subprocess.Popen('%s : file family style' % path, shell=True,
                                        stdout=subprocess.PIPE, stderr=subprocess.PIPE,
                                        close_fds=True).communicate()
    except Exception:
        return fonts

   entries = toascii(flout)
    try:
        for line in entries.split('\n'):   #  <--- line = '/System/Library/Fonts/GeezaPro.ttc: :style=Regular,,Ordinr,Normal,Normaali,Regolare,,,Regulier,,,'

            try:
                filename, family, style = line.split(':', 2)  #  <--- filename = ''/System/Library/Fonts/GeezaPro.ttc', family = '', style = 'style=Regular,,Ordinr,Normal,Normaali,Regolare,,,Regulier,,,'
                if splitext(filename)[1].lower() in OpenType_extensions:
                    bold = 'Bold' in style
                    italic = 'Italic' in style
                    oblique = 'Oblique' in style
                    for name in family.split(','):
                        if name:
                            break
                    else:
                        name = splitext(basename(filename))[0]

                    _addfont(
                        _simplename(name), bold, italic or oblique, filename, fonts)

            except Exception:
                #  try the next one.
                pass

    except Exception:
        pass

    return fonts

The family becomes the key in the Sysfonts dict. In font_tests.py, function test_get_fonts() calls pygame_font.get_fonts(), which creates a list out of the Sysfonts keys, one of which is now an empty string. As a result, self.failUnless(name.islower(), name) fails.

So basically, when building the Sysfonts dict, fonts with missing families should maybe be filtered out? Or given a generic name? I've no idea what the recommended behaviour for pygame might be.

HTH!


*illume commented at 2016-08-21 11:52:58*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


Thanks, I've copied that info into a new issue, # 312.


*illume commented at 2016-08-21 13:06:08*

Original comment by PanderMusubi (Bitbucket: PanderMusubi, GitHub: PanderMusubi):


For testing, use very common fonts and add a test on the output of fc-list to check if they are available.


*illume commented at 2016-08-22 07:04:10*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


I've pushed a fix for the fonts issue. The Mac dynamic linking issue (described in # 300) remains to be fixed.


*illume commented at 2016-09-13 18:07:53*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


Status update: we seem to have stalled a bit!


*illume commented at 2016-09-14 07:15:07*

Original comment by Diliup Gabadamudalige (Bitbucket: diliupg, GitHub: diliupg):


pygame need more code in C++....


*illume commented at 2016-09-14 08:59:47*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


pygame need more code in C++....

I can't tell if this is a joke or not! Remember that it's really hard to tell sarcasm on the internet without a ;-) to make it clear.

If it was a serious comment, then:


*illume commented at 2016-09-14 15:30:04*

Original comment by Diliup Gabadamudalige (Bitbucket: diliupg, GitHub: diliupg):


Hi! :) (friendly smile)

the blitting routines in pygame tend to be quite slow so some C++ code under the hood can help. I was under the impression that Pygame had some C++ code under the hood. If that is correct then what I said maybe considered for the future. If not can be ignored. It was most definitely NOT sarcasm. I use Pygame quite a bit and some speed in bitting can help when there are a lot of objects on the screen. :)


*illume commented at 2016-09-14 15:32:29*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


OK, please do open a new issue about that: https://bitbucket.org/pygame/pygame/issues/new


*illume commented at 2016-09-14 16:15:09*

Original comment by Diliup Gabadamudalige (Bitbucket: diliupg, GitHub: diliupg):


Pygama IS about graphics and graphics IS about screen blitting in the majority so I hope this can be worked on. Unfortunately I do not know any C++ else I would have helped even in a small capacity.


*illume commented at 2016-09-14 16:21:05*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


It may well get worked on, but please open a new issue ticket for it! This discussion is already long enough.

Here is the page to create a new issue: https://bitbucket.org/pygame/pygame/issues/new


*illume commented at 2016-09-14 16:55:08*

Original comment by Diliup Gabadamudalige (Bitbucket: diliupg, GitHub: diliupg):


one last question. There is no component called blit. Sounder which component should this ticket be raised? sprite? surface? display? This is the closest I can find.


*illume commented at 2016-09-14 18:02:41*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


I don't know, sorry. Pick one of those - we can always change it later if someone knows better.


*illume commented at 2016-09-23 13:59:12*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


Status update: not much has happened. Here are the things I think need attention to prepare for a release:


*illume commented at 2016-10-16 20:33:09*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


We seem to be stuck again. If the necessary person-time isn't available to fix OSX wheels, I'd suggest that we cut a 1.9.2 release with Linux and Windows wheels, which are already working. That would allow downstream packagers to ship the new release, e.g. in Linux distros. We're not taking anything away from Mac users: they'll still be able to install it with Macports or Homebrew.


*illume commented at 2016-10-17 05:15:09*

Original comment by Diliup Gabadamudalige (Bitbucket: diliupg, GitHub: diliupg):


Please release the Linux/Windows version. The Mac version can come later. I think you should release any version that is done as it is completed without waiting for other OS versions to fall in line. It really doesn't make sense.


*illume commented at 2016-11-17 11:33:29*

Original comment by Arno Nym (Bitbucket: SeveQ, GitHub: Unknown):


How's it going? Is 1.9.2 already released through some channels that I don't have on the screen?


*illume commented at 2016-11-17 17:58:38*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


It is not yet released. @illume , again, let us know if there's anything we can do to help make the release happen.


*illume commented at 2016-11-17 19:28:49*

Original comment by Tommy Sparber (Bitbucket: tsparber, GitHub: tsparber):


Moved comment to [# 300](https://bitbucket.org/pygame/pygame/issues/300/os-x-wheels-dmg-and-zip-builds-with-travis# comment-32250525) as it is related to building wheels on macOS.


*illume commented at 2016-11-18 05:50:05*

Original comment by Diliup Gabadamudalige (Bitbucket: diliupg, GitHub: diliupg):


hi!

what is the actual reason for the delay in releasing the Windows version of Pygame 1.9.2?


*illume commented at 2016-11-18 17:46:04*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


It's up to René, but he seems to have dropped off the face of the earth. I've just sent him an email to try to get in contact. Hopefully he's just been busy, but if we can't get in touch with him after a couple of weeks, I think we'd have to try to work out another way to move forwards.


*illume commented at 2016-11-19 12:58:28*

Original comment by Arno Nym (Bitbucket: SeveQ, GitHub: Unknown):


Couple of weeks... unfortunately we're developing a game for some research project which has a deadline and I'd love to get my hands on production v1.9.2 asap.


*illume commented at 2016-11-19 13:38:41*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


There are betas on PyPI; if we do a release soon, it won't be significantly different from those. Sorry, but I can't make a release, and working around the primary maintainer of the project is not something I'd do lightly - René may be on holiday, or simply busy with other things.


*illume commented at 2016-11-19 15:57:59*

Original comment by Arno Nym (Bitbucket: SeveQ, GitHub: Unknown):


Sorry, "fallen off the face of the earth" sounded somewhat worrying to say the least. PyGame has already become a pretty wide spread solution to build games (and other media applications) in Python. It'd be pretty unpleasant if its primary maintainer just disappeared.


*illume commented at 2016-11-19 16:35:13*

Original comment by Diliup Gabadamudalige (Bitbucket: diliupg, GitHub: diliupg):


With all due respect to Rene, can you please let someone who can look after the upkeep of Pygame take over and move on rather than do nothing? Please....


*illume commented at 2016-11-19 16:37:25*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


It would! I hope he's OK. I only know him through the internet, so I'm just going on publicly available information to contact him.

"Dropped off the face of the earth" is a fairly common phrase for when you lose contact with someone. I realise it could have sounded more alarming - sorry, I tend to slip into using colloquial idioms. Using English as the common language needs native speakers like me to put in a bit of effort too, to make sure we're being clear. :-)


*illume commented at 2016-11-21 07:00:10*

Original comment by Diliup Gabadamudalige (Bitbucket: diliupg, GitHub: diliupg):


I agree with you but when are we moving on? Why is Rene not responding? Is he not interested or simply don't care?


*illume commented at 2016-11-21 14:22:46*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


Please try to be respectful; I realise this is frustrating, but René has put in a lot of work on Pygame, and as far as I know, it's all on a volunteer basis. He may be very busy with work or family life at the moment. He may be injured or ill, or suffering from burn-out. This tone ("Is he not interested or simply don't care?") is not the kind of interaction that would make someone eager to spend time on the project.

Again, I'm frustrated by this situation as well, so I understand your annoyance, but grumpy comments on the internet don't solve anything. ;-)

As I said, I'm going to give it a couple of weeks for Rene to respond before I try to find a workaround. I've set a reminder in my calendar. Pygame 1.9.2 has been in the works for over three years, so it will last a couple more weeks!

If anyone knows René or a better way to contact him, please do try to reach him. I'm only going on a publicly available email address.


*illume commented at 2016-11-21 16:25:17*

Original comment by Diliup Gabadamudalige (Bitbucket: diliupg, GitHub: diliupg):


There was nothing disrespectful in my message. I asked three questions which should have been asked a long time ago. There is no disrespect intended. If one has no time to do something does everyone have to suffer? Isn't it better to hand over the work to someone who can move forward rather than hang on to it? Aren't we all grown up people here? I am only trying to be practical.


*illume commented at 2016-11-21 16:50:06*

Original comment by Diliup Gabadamudalige (Bitbucket: diliupg, GitHub: diliupg):


I messaged Rene on twitter, facebook and some other place. we'll see what happens. :)


*illume commented at 2016-11-21 18:22:07*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


I'm afraid it came across as brusque, even if you didn't mean it to. Without body language or tone of voice, everything sounds more angry over the internet, so it's worth making an extra effort to be nice compared to face-to-face conversations, so that we don't end up sniping at one another.


*illume commented at 2016-11-21 18:30:05*

Original comment by Diliup Gabadamudalige (Bitbucket: diliupg, GitHub: diliupg):


ok. I just had a facebook chat with Stephan Deibel the CEO ofWingware and he says this.. "Couldn't it just be forked? People interested in moving it forward could create a bitbucket project pygame-fork or something like that and just move forward..."

can't we doo that?


*illume commented at 2016-11-21 19:32:49*

Original comment by Arno Nym (Bitbucket: SeveQ, GitHub: Unknown):


Well, we could. Actually, you could do it yourself too. But I hesitate going so far so soon. Even I, being involved in a project with a deadline, would rather say, let's give René a chance to keep his project going. I find several weeks a bit long, but who am I after all to make demands? Seriously, if I were René I'd be really depressed if my project kinda two-timed while I was on vacation or whatever he's doing right now.

So, well... nobody stops you guys from forking the project but I think we should give René a chance to come back.


*illume commented at 2016-11-21 20:51:45*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


To reinforce what Hendrik said: forking is possible, but it's not a good option. It leads to confusion, duplicated effort, and potentially hurt feelings - see OpenOffice/LibreOffice for a high profile example. It's the open source equivalent of direct military action: we don't go there until we've exhausted all other opportunities.

My first preference is that we get in touch with René and he helps us finish up the release. I'm allotting a couple more weeks to trying this, because it's the best result for everyone, and I don't want to bypass René just because he's on vacation, dealing with a family emergency or something similar.

Failing that, the next best option is to try to keep going without René, but still within the Pygame project. I haven't worked out exactly how to do this yet - and I'm not interested in trying until it becomes necessary - but I'll make an educated guess that it's possible.

Only if both of those options prove impossible would I consider forking the project. And even then, I'm not much inclined to be involved in a fork myself - it's a big project, and I have plenty of other things to work on.


*illume commented at 2016-11-22 05:25:07*

Original comment by Diliup Gabadamudalige (Bitbucket: diliupg, GitHub: diliupg):


I would have forked it if I had the capacity and the knowledge to do so. I got back into programming in 2013 and have been waiting since then for Rene to come back. I sent him messages last night on Twitter, Facebook and from some other site which I cannot remember. I hope he comes back t least before Christmas.... :)


*illume commented at 2016-12-05 19:44:59*

Original comment by Joram Brenz (Bitbucket: Shildifreak, GitHub: Shildifreak):


Hey, I was looking at this because I was trying to upgrade my projects to python3. I understand that a release has to be planned carefully. But I noticed that there is a package named python3-pygame in debian experimental. Since the linux part of the release is relatively completed, can we get this package moved to unstable or testing?

For now I downloaded and compiled the sourcecode from this repository. It works fine with everything that I did so far. Is there anything one can do to help this project? Like running some specific tests? Keep up the good work!


*illume commented at 2016-12-05 22:53:27*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


We don't control the packaging in Debian, that's up to the Debian maintainer. Normally I'd expect it to be uploaded to unstable soon after we make a stable release. Then there's a 10 day delay, and it goes into testing if there are no serious bugs discovered. We've just made a release candidate, so if all goes well hopefully there will be a stable release soon.

Thanks for testing - the most important thing is checking it with your own code, in case we've broken something that the tests don't cover. We run the tests automatically, but it's always possible that something on your system will affect them, so if you have a few minutes to spare, try running them with python -m pygame.tests.


*illume commented at 2016-12-12 14:38:47*

Original comment by Aivar Annamaa (Bitbucket: aivarannamaa, GitHub: aivarannamaa):


Not sure if this is right place, but here are my test results for rc1 wheels.


Windows 10 64-bit, official Python 3.5.2 32-bit

Windows 10 64-bit, Anaconda Python 3.5.2 64-bit

Windows 7 64-bit, Anaconda Python 3.5.2 64-bit


Fedora 24 64-bit on VMWare, official Python 3.5.2

CentOS 7 on VMWare, custom built Python 3.5.2 (from Thonny - http://thonny.org)

# !none

    ERROR: all_tests_for (pygame.tests.mixer_music_test.AllTestCases)
    Traceback (most recent call last):
      File "test/pygame.tests.mixer_music_test.py", line 1, in all_tests_for
    subprocess completely failed with return code of -6
    cmd:          ['/usr/bin/python3', '-m', 'pygame.tests.test_utils.test_runner', 'pygame.tests.mixer_music_test', '--exclude', 'interactive,subprocess_ignore,python3_ignore']
    test_env:     environ({'XDG_SEAT': 'seat0', 'XDG_MENU_PREFIX': 'gnome-', 'XDG_CURRENT_DESKTOP': 'GNOME', 'XAUTHORITY': '/run/user/1000/gdm/Xauthority', 'MAIL': '/var/spool/mail/aivar', 'GJS_DEBUG_TOPICS': 'JS ERROR;JS LOG', 'SESSION_MANAGER': 'local/unix:@/tmp/.ICE-unix/1445,unix/unix:/tmp/.ICE-unix/1445', 'MODULEPATH': '/etc/scl/modulefiles:/etc/scl/modulefiles:/usr/share/Modules/modulefiles:/etc/modulefiles:/usr/share/modulefiles', 'USERNAME': 'aivar', 'QT_IM_MODULE': 'ibus', 'COLORTERM': 'truecolor', 'XDG_SESSION_TYPE': 'x11', 'PATH': '/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/home/aivar/.local/bin:/home/aivar/bin', 'MODULESHOME': '/usr/share/Modules', 'DISPLAY': ':0', '_': '/usr/bin/python3', 'XDG_RUNTIME_DIR': '/run/user/1000', 'LOADEDMODULES': '', 'HISTCONTROL': 'ignoredups', 'BASH_FUNC_module()': '() {  eval `/usr/bin/modulecmd bash $*`\n}', 'PWD': '/home/aivar', 'LS_COLORS': '..<skipped>...', 'GDM_LANG': 'en_US.UTF-8', 'LANG': 'en_US.UTF-8', 'XMODIFIERS': '@im=ibus', 'SDL_VIDEO_X11_WMCLASS': '-m', 'LESSOPEN': '||/usr/bin/lesspipe.sh %s', 'GDMSESSION': 'gnome', 'HISTSIZE': '1000', 'TERM': 'xterm-256color', 'XDG_SESSION_DESKTOP': 'gnome', 'XDG_VTNR': '2', 'USER': 'aivar', 'GJS_DEBUG_OUTPUT': 'stderr', 'DESKTOP_SESSION': 'gnome', 'WINDOWID': '29360134', 'SHLVL': '2', 'BASH_FUNC_scl()': '() {  local CMD=$1;\n if [ "$CMD" = "load" -o "$CMD" = "unload" ]; then\n eval "module $@";\n else\n /usr/bin/scl "$@";\n fi\n}', 'HOSTNAME': 'localhost.localdomain', 'QT_QPA_PLATFORMTHEME': 'qgnomeplatform', 'XDG_SESSION_ID': '1', 'VTE_VERSION': '4402', 'LOGNAME': 'aivar', 'GNOME_DESKTOP_SESSION_ID': 'this-is-deprecated', 'WINDOWPATH': '2', 'DBUS_SESSION_BUS_ADDRESS': 'unix:path=/run/user/1000/bus', 'HOME': '/home/aivar', 'SHELL': '/bin/bash'})
    working_dir:  /tmp/tmpejm7i8c3
    return (first 10 and last 10 lines):

*illume commented at 2016-12-12 15:05:49*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


I see a similar failure. We're already in the process of releasing 1.9.2, but do you want to open an issue for it?


*illume commented at 2016-12-12 18:27:58*

Original comment by Aivar Annamaa (Bitbucket: aivarannamaa, GitHub: aivarannamaa):


I got the same error on Ubuntu 16.04 on VMWare. It may be because of my VM peculiarities so I can't be sure it's real problem. I'll try to test it on another computer tomorrow.


*illume commented at 2016-12-12 18:29:47*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


I got something that looked quite similar on Ubuntu on real hardware, so it does seem like a real problem.


*illume commented at 2016-12-13 11:14:38*

Original comment by Aivar Annamaa (Bitbucket: aivarannamaa, GitHub: aivarannamaa):


I created the issue (# 317) but I don't want to say this should postpone the release (especially considering that Linux packagers don't use the wheels and bundled dependencies anyway)


*illume commented at 2016-12-13 11:22:46*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


No it shouldn't, especially since I've already partly made the release, and we're just waiting for Paul to upload it ;-)


*illume commented at 2016-12-13 13:49:48*

Original comment by Thomas Kluyver (Bitbucket: takluyver, GitHub: takluyver):


Nearly five years after this issue was opened to track the 1.9.2 release, it's done. Thank-you to everyone who made it happen!


*illume commented at 2016-12-13 14:15:08*

Original comment by Joe Rickerby (Bitbucket: joerick, GitHub: joerick):


Hooray! 🎉 thanks everyone


*illume commented at 2016-12-13 17:02:01*

Original comment by Arno Nym (Bitbucket: SeveQ, GitHub: Unknown):


Awesome!!!! Thanks!


*illume commented at 2016-12-25 00:46:55*

Original comment by René Dudfield (Bitbucket: illume, GitHub: illume):


🎉