Board index FlightGear Development

Announcing FFGo: a new FlightGear launcher

FlightGear is opensource, so you can be the developer. In the need for help on anything? We are here to help you.
Forum rules
Core development is discussed on the official FlightGear-Devel development mailing list.

Bugs can be reported in the bug tracker.

Re: Announcing FFGo: a new FlightGear launcher

Postby rominet » Mon Dec 21, 2015 10:47 am

Hello,

I am pleased to announce the release of FFGo 1.8.0. The main changes in this release are the following:
  • New “Airport Finder” dialog. This dialog, accessible under the Tools menu, allows one to easily find airports using various criteria: distance to a chosen, “reference airport”; number of land runways, water runways, or helipads; length of the longest or shortest runway in the airport, etc. Results are listed in a table giving these criteria for each airport as well as the initial and final bearings for the shortest path from or to the reference airport. The table of results can be sorted according to airport ICAO code, name or any of the aforementioned criteria (click on a column header to sort according to the corresponding field; click a second time on the same column header to reverse the sort order).

    The Airport Finder dialog uses a new widget set for airport selection, that is mainly based on Ttk's Treeview widget.

    See this message and the following one for screenshots and more details.
  • Add the number of land runways, water runways, helipads, plus the minimum and maximum runway lengths for each airport to the apt digest file (aka “airport database”). This allows to perform quick searches over all airports known to apt.dat using these criteria (used in the Airport Finder dialog). The format version of the apt digest file changed from 1 to 2 to reflect this change. Migration for users should be completely automatic.
  • Previously, when in carrier mode, clicking on a different airport in the airport list didn't really select it, as it didn't leave carrier mode. This is not the case anymore.
  • Allow resizing the main parts of FFGo's main window by dragging with the mouse (this uses a Ttk PanedWindow).
  • More tolerant parsing of apt.dat, in order to make it possible to use current apt.dat files distributed at X-Plane's NOTAMs page.
  • Tolerate invalid smoothness values in apt.dat. This is not really needed, since invalid values only cause an error when looking up buggy runway metadata, but this will allow users to access the rest of these particular runway metadata... Change mainly motivated by this bug report on the X-Plane Scenery Gateway.
  • Fix calculation of airport centroid coordinates. Use n-vectors to compute the latitude and longitude of the centroid of each airport. The previous method, a simple arithmetic mean for latitude and longitude, could give incorrect results with airports having runway ends located on either side of the 180° meridian or very close to the North or South pole (not that I encountered any such problem, but I prefer a correct method, all the more since the performance impact is negligible).
  • Fix wrong unit for runway width in apt.dat v850 and later data. In v850 format, runway widths and helipad lengths and widths are given in meters, whereas in v810 format, they were given in feet. This led to confusion and before this version, runway widths were wrongly converted as if they had been given in feet (for > v810 data). This is now fixed.

    In runway tooltips, print the length and width first in meters, then in feet, instead of the other way around (since this is how they are specified in the primary source...).
  • Behind-the-scenes tooltip improvements. Most notably, the new TreeviewToolTip class allows to have dynamic tooltips in the Treeview widgets used in the new Airport Finder dialog.
  • Update the German translation. (thanks to chris_blues)

As usual, you can get this release from FFGo's home page. Debian packages for jessie and unstable are available from there, along with the distribution-agnostic tarballs and zip files.

Note: users of Debian testing or unstable can now install python3-geographiclib from their usual Debian mirror (recently added package).
rominet
 
Posts: 557
Joined: Sat Nov 01, 2014 1:33 pm
Callsign: F-KATS
Version: Git next
OS: Debian GNU/Linux

Re: Announcing FFGo: a new FlightGear launcher

Postby rominet » Thu Dec 31, 2015 10:54 am

Hello,

I have released FFGo 1.8.1. As indicated by the version number (which uses semantic versioning), this is a bugfix-only release. The notable changes in this release are:
  • Support MagneticField from GeographicLib versions < 1.39. In these versions, the MagneticField program doesn't support the special string “now” for the time field. Use the current date in order to support these versions (i.e., released before November 11, 2014). This problem affected users of Debian jessie.
  • Layout improvements: make sure that the most important widgets in FFGo's
    main window are the last to be shrunk when the window is too small to display
    all of its widgets at their natural size. Most notably, the frame containing
    the “Run FG” button could be completely invisible in version 1.8.0 if started
    with a main window that is not very tall. With this change, the Options and FlightGear Output windows, the
    aircraft and airport lists, as well as the aircraft thumbnail, are all shrunk before starting to “touch” to any of the buttons or labels.
  • Fix wrong line numbers in error reports for index-based apt.dat requests. AptDat.readAirportDataUsingIndex() used to seek into the apt.dat.gz file using the specified index, but did not modify AptDat.lineNb accordingly. As a consequence, the line numbers for error reports concerning apt.dat parsing raised by this method were likely to be wrong. In order to properly fix this, it has been necessary to modify be the apt digest file format a little bit (storing a line number along with each index value), and therefore to change its format version from 2 to 3. Migration for users should be completely automatic.
  • Add notes concerning the 'pkg_resources' Python 3 module to the docs/INSTALL/INSTALL_en file. Users might need to install this module in somewhat unusual situations (e.g., distribution package missing this dependency).
The Debian packages have received the following bug fix: “add missing dependency on python3-pkg-resources”, and the ffgo package long description has been expanded to reflect FFGo's current feature set.

As usual, you can get this release from FFGo's home page. Debian packages for jessie and unstable are available from there, along with the distribution-agnostic tarballs and zip files.

Happy flying!
rominet
 
Posts: 557
Joined: Sat Nov 01, 2014 1:33 pm
Callsign: F-KATS
Version: Git next
OS: Debian GNU/Linux

Re: Announcing FFGo: a new FlightGear launcher

Postby chris_blues » Fri Jan 01, 2016 12:15 am

Congratulations for the new release just in time for the new year!

Speaking of which - it's 01:15 here; have a happy and productive new year everybody!
Don't hesitate to let me know if I'm incorrect or just annoying! As long as you do it gently! :)
Debian testing 64bit - Athlon II 2x2.6GHz - 8GB RAM - GeForce GTS 450
Citation II
User avatar
chris_blues
 
Posts: 1533
Joined: Mon May 03, 2010 1:30 pm
Location: claws of real life
Callsign: chris_blues
Version: GIT
OS: Debian 8 64

Re: Announcing FFGo: a new FlightGear launcher

Postby rominet » Fri Jan 01, 2016 8:25 am

Thank you, Chris, happy new year! :)
rominet
 
Posts: 557
Joined: Sat Nov 01, 2014 1:33 pm
Callsign: F-KATS
Version: Git next
OS: Debian GNU/Linux

Re: Announcing FFGo: a new FlightGear launcher

Postby pommesschranke » Sun Jan 03, 2016 1:26 pm

0.) Happy New Year

1.)
http://people.via.ecp.fr/~flo/projects/FFGo/
Forbidden
You don't have permission to access /~flo/projects/FFGo/ on this server.



2.)
can you please change FFGo so that it accepts atp.dat.gz with this 2-line header?
(that's how the file looks in the latest X-plane)

Code: Select all
I
1000 Generated by WorldEditor
1 3798 0 0 E46 02 Ranch
100 30.48 4 0 0.25 0 0 0 15 29.88083567 -103.70108085 0 0 1 0 0 0 33 29.86895821 -103.69317249 0 0 1 0 0 0
100 30.48 4 0 0.25 0 0 0 05 29.87181142 -103.70136737 0 0 1 0 0 0 23 29.87798246 -103.69288597 0 0 1 0 0 0
19 29.87195028 -103.70191469 1 WS
19 29.88127895 -103.70082809 1 WS
19 29.87784357 -103.69233863 1 WS
19 29.86851495 -103.69342525 1 WS

1 1932 0 0 SSOK 14 Bis
100 17.98 3 0 0.00 0 0 0 10 -23.21480832 -051.19038734 0 0 0 0 0 0 28 -23.21352502 -051.18127931 0 0 0 0 0 0
130 Airport Boundary
111 -23.21255068 -051.17979196
111 -23.21428287 -051.19208600
111 -23.21578265 -051.19187469
113 -23.21405046 -051.17958065
19 -23.21448067 -051.18578909 0 Windsock

...




3.)
I'd also like to know: how can I get back Flightgear's console output into my terminal like it was in older versions of FFGo? - In the yellow window I cannot stop the scrolling.

Thank You!
pommesschranke
 
Posts: 1104
Joined: Sat Apr 27, 2013 7:58 pm
Location: EDLM & LJCE
Callsign: d-laser
IRC name: laserman
Version: git
OS: Linux Lubuntu 18.04

Re: Announcing FFGo: a new FlightGear launcher

Postby rominet » Sun Jan 03, 2016 6:42 pm

Hello,

0) Thank you, same to you!

1) Yeah, I have seen that. I don't have direct control over the web server installation. I hope it will be solved soon... Fortunately, by visiting the GitHub page or the PyPI page for FFGo, you still have access to almost the same information (minus the screenshot gallery and HTML documents generated from their .rst sources that you can find in the Git repo and in release tarballs). You can still download tarballs/zip files from the PyPI page, and you can do the standard install with 'pip install ffgo', which by default downloads from PyPI. The installation manual can be consulted from the Git repo: https://github.com/frougon/FFGo/blob/ma ... INSTALL_en

2) This is already present in the Git repo since Nov 28 (https://github.com/frougon/FFGo/commit/ ... 7a3b29ca02) and in stable releases since version 1.8.0. Just update FFGo and you should be fine.

3) Normally, the terminal output has never been suppressed. Are you sure it doesn't contain FG output? Can you replicate it?

You can stop the automatic scrolling in the Output Window (the yellow one) by commenting out 'self.FGOutput.showEnd()' in App._updateFgfsProcessOutput() from ffgo/gui/mainwindow.py (line 1552 in the Git repo). Maybe I should make this configurable.
In the meantime, you can do it in a branch of yours that you rebase on 'master' whenever you want to update. To create your change:
Code: Select all
git checkout -b yourbranch
<do the modif>
git commit -v ffgo/gui/mainwindow.py

Then, to update 'master' and rebase 'yourbranch' on it:
Code: Select all
git checkout yourbranch && git pull --rebase

Of course, this will cause a conflict when I make this configurable, but at that point, you won't need 'yourbranch' anymore.

There are also automatically-rotated FFGo log files in ~/.ffgo/Logs (%APPDATA%/FFGo/Logs on Windows). They include exceptions and FlightGear messages (along with FFGo messages). Do you know them?
rominet
 
Posts: 557
Joined: Sat Nov 01, 2014 1:33 pm
Callsign: F-KATS
Version: Git next
OS: Debian GNU/Linux

Re: Announcing FFGo: a new FlightGear launcher

Postby rominet » Sun Jan 03, 2016 8:55 pm

rominet wrote in Sun Jan 03, 2016 6:42 pm:You can stop the automatic scrolling in the Output Window (the yellow one) by commenting out 'self.FGOutput.showEnd()' in App._updateFgfsProcessOutput() from ffgo/gui/mainwindow.py (line 1552 in the Git repo). Maybe I should make this configurable.

Done in the Git repo (https://github.com/frougon/FFGo/commit/ ... b37c75b379). There is a new checkbox labelled "Automatically scroll the Output Window" in the Miscellaneous tab of the Preferences dialog. Just uncheck it and you should be happy.
rominet
 
Posts: 557
Joined: Sat Nov 01, 2014 1:33 pm
Callsign: F-KATS
Version: Git next
OS: Debian GNU/Linux

Re: Announcing FFGo: a new FlightGear launcher

Postby pommesschranke » Sun Jan 03, 2016 9:02 pm

I updated from 1.7.0 to 1.8.1:

Code: Select all
pip3 install --upgrade ffgo


and get this when I try to start it:

Code: Select all
/usr/local/bin/ffgo
FFGo 1.8.1 gestartet
Benutze:
  - Python 3.4.3
  - CondConfigParser 1.0.2

Traceback (most recent call last):
  File "/usr/local/bin/ffgo", line 9, in <module>
    load_entry_point('FFGo==1.8.1', 'console_scripts', 'ffgo')()
  File "/usr/local/lib/python3.4/dist-packages/ffgo/main.py", line 181, in main
    res = run(master, params)
  File "/usr/local/lib/python3.4/dist-packages/ffgo/main.py", line 113, in run
    app = App(master, config, params)
  File "/usr/local/lib/python3.4/dist-packages/ffgo/gui/mainwindow.py", line 120, in __init__
    self.surveyDependencies()
  File "/usr/local/lib/python3.4/dist-packages/ffgo/gui/mainwindow.py", line 517, in surveyDependencies
    logger.noticeNP(textwrap.fill(s, width=textWidth))
  File "/usr/local/lib/python3.4/dist-packages/ffgo/logging.py", line 27, in logFunc_noPrefix
    self.log(LogLevel[level], False, *args, **kwargs)
  File "/usr/local/lib/python3.4/dist-packages/ffgo/logging.py", line 46, in log
    print(*args, **kwargs)
UnicodeEncodeError: 'ascii' codec can't encode character '\xf6' in position 81: ordinal not in range(128)


After choosing "yes" to import settings from the .fgo folder, it started without the error.
In case you ask for my old .ffgo folder - I accidently deleted it :-(


FG's output is in my console. sorry, don't know why I was thinking it was not.
pommesschranke
 
Posts: 1104
Joined: Sat Apr 27, 2013 7:58 pm
Location: EDLM & LJCE
Callsign: d-laser
IRC name: laserman
Version: git
OS: Linux Lubuntu 18.04

Re: Announcing FFGo: a new FlightGear launcher

Postby pommesschranke » Sun Jan 03, 2016 9:42 pm

I can reproduce the encoding bug:
I do
Code: Select all
unset LANG

before starting ffgo.

I have to do that. If I don't do it , flightgear starts with strange colors.

ok, I can insert "unset LANG" into run_fgfs.sh
works for me.
pommesschranke
 
Posts: 1104
Joined: Sat Apr 27, 2013 7:58 pm
Location: EDLM & LJCE
Callsign: d-laser
IRC name: laserman
Version: git
OS: Linux Lubuntu 18.04

Re: Announcing FFGo: a new FlightGear launcher

Postby rominet » Sun Jan 03, 2016 10:10 pm

Well, what you saw is not a bug. FFGo wanted to print:
Code: Select all
[FFGo notice] GeographicLib's Python Anbindung nicht gefunden. FFGo hat
Ausweichlösungen, daher sollten Sie keinen Unterschied bemerken. Allerdings
können einige geodäsische Berechnungen nur mit GeographicLib vorgenommen
werden. Sie werden benachrichtigt, wenn das passiert.
Erkannte FlightGear Version: 3.7.0

(0xF6 being the hex code for 'ö') but you are making this impossible by declaring that your terminal can't accept anything else than ASCII (i.e., 127 characters, no more!).

The FlightGear locale bug is well known, unfortunately, and nasty. I have it too if I run fgfs in fr_FR.UTF-8 locale. Your last workaround seems OK, except I would do LANG=en_US.UTF-8 instead (the corresponding locale, en_US.UTF-8, has to be generated on your system: '# dpkg-reconfigure locales' can do that on Debian). The FlightGear locale bug doesn't happen in this locale (en_US.UTF-8), and IMHO it is better defined this way than by unsetting LANG (encoding is defined as UTF-8, at least).

I have reread and tested the piece of code generating the traceback you posted in both the de_DE.UTF-8 and de_DE.ISO-8859-1 locales (within a terminal run in the corresponding locale each time). I didn't find any problem.

If you want German messages, I suggest you use the de_DE.UTF-8 locale everywhere except in your run_fgfs.sh (maybe this is already the case, dunno). UTF-8 is so convenient...

BTW, did you see my previous message? I added the option you apparently wanted concerning autoscrolling of the Output Window (only in Git for now, though)...
rominet
 
Posts: 557
Joined: Sat Nov 01, 2014 1:33 pm
Callsign: F-KATS
Version: Git next
OS: Debian GNU/Linux

Re: Announcing FFGo: a new FlightGear launcher

Postby pommesschranke » Sun Jan 03, 2016 10:40 pm

thank you!
your program has the best support on this planet ;-)


I have a suggestion of the airport chooser:
Either 2 input fields: one for ICAO and one for full text,
or one input field and a checkbox to change between ICAO and full text search mode.

for the aircraft chooser and maybe also for airports it would be nice to have a history/favorites/bookmarks.

...just an idea
pommesschranke
 
Posts: 1104
Joined: Sat Apr 27, 2013 7:58 pm
Location: EDLM & LJCE
Callsign: d-laser
IRC name: laserman
Version: git
OS: Linux Lubuntu 18.04

Re: Announcing FFGo: a new FlightGear launcher

Postby wkitty42 » Mon Jan 04, 2016 2:15 am

pommesschranke wrote in Sun Jan 03, 2016 9:42 pm:I can reproduce the encoding bug:
I do
Code: Select all
unset LANG

before starting ffgo.

I have to do that. If I don't do it , flightgear starts with strange colors.

ok, I can insert "unset LANG" into run_fgfs.sh
works for me.

THIS is still a problem with the current repo code?? if so, perhaps you should band on the drum in the dev list a little bit more ;)
"You get more air close to the ground," said Angalo. "I read that in a book. You get lots of air low down, and not much when you go up."
"Why not?" said Gurder.
"Dunno. It's frightened of heights, I guess."
User avatar
wkitty42
 
Posts: 5644
Joined: Fri Feb 20, 2015 3:46 pm
Location: central NC, USA
Callsign: wk42
Version: git next
OS: Kubuntu 14.04.5

Re: Announcing FFGo: a new FlightGear launcher

Postby rominet » Mon Jan 04, 2016 11:11 am

pommesschranke wrote in Sun Jan 03, 2016 10:40 pm:thank you!
your program has the best support on this planet ;-)

Wow, thank you :)
pommesschranke wrote in Sun Jan 03, 2016 10:40 pm:I have a suggestion of the airport chooser:
Either 2 input fields: one for ICAO and one for full text,
or one input field and a checkbox to change between ICAO and full text search mode.

I understand what you mean, but I am not sure what the use case for such a feature would be. In my experience, it has always been possible to find the desired airport with very few keystrokes. I suppose you just want the "other matches" (on ICAO when typing part of the airport name and vice versa) to be filtered out as soon as possible. Ah, maybe you want to browse all airports whose name contains "big" or something like that, but not their ICAO. OK, I could add a radio button, maybe... but I don't want to slow down the search function with an additional test that is not very useful in general (no offense intended :wink:). Will see.
pommesschranke wrote in Sun Jan 03, 2016 10:40 pm:for the aircraft chooser and maybe also for airports it would be nice to have a history/favorites/bookmarks.

Why not, but there isn't much space left on the main window. I'll think about it.

Thanks for your feedback!
rominet
 
Posts: 557
Joined: Sat Nov 01, 2014 1:33 pm
Callsign: F-KATS
Version: Git next
OS: Debian GNU/Linux

Re: Announcing FFGo: a new FlightGear launcher

Postby rominet » Mon Jan 04, 2016 5:38 pm

Good news: the web server hosting FFGo's home page seems to be operating properly again.

@pommesschranke:
Since you upgraded FFGo with:
Code: Select all
pip3 install --upgrade ffgo

you can trivially install GeographicLib's Python module (which is apparently missing in your installation) with:
Code: Select all
pip3 install geographiclib

This is optional, almost everything works very well without it, but that will allow you, for instance, to find that the VHXX-SASQ distance is approx. 10790 nautical miles (using 10820 as the maximum distance in the Airport Finder dialog), whereas FlightGear's GPS Settings dialog thinks it is 0.0 nautical miles, because this is one of the cases that can't be handled with Vincenty's method. (FG could report an error instead of giving a false result---this is what FFGo does when GeographicLib's Python module is not available---but presumably a lot of code would have to be changed in order to cope with an API able to report "I don't know").
rominet
 
Posts: 557
Joined: Sat Nov 01, 2014 1:33 pm
Callsign: F-KATS
Version: Git next
OS: Debian GNU/Linux

Re: Announcing FFGo: a new FlightGear launcher

Postby rominet » Wed Jan 13, 2016 6:36 pm

Hello,

Users of the Git repository can now enjoy the new airport chooser in FFGo's main window. It uses the same classes as the reference airport chooser in the Airport Finder dialog. This fixes small alignment problems in the previous implementation (due to the ICAO codes not having the same display width), allows one to sort the airport list by ICAO code or airport name, in ascending or descending order, with a simple click on the relevant column header, and brings the nice logic from widgets.AirportChooser to the main window airport list (such as preferring an exact match on ICAO code when there are also substring matches on airport names for a given search string).

I didn't include more columns than ICAO code and airport name, because there is already the airport tooltip and I didn't want to clutter the interface too much or use more space, but doing so would be very simple (if needed, we could “create” space here by using a horizontal scrollbar).

Concerning pommesschranke's suggestion of aircraft bookmarks or something similar, I like the idea. I think I'll implement this as a new dialog listing the most frequently used aircrafts in the last year or something like that, with the underlying data saved in JSON format under ~/.ffgo. It is not on the immediate TODO list, but one of these days... :wink:

Finally, having compiled FlightGear and SimGear from yesterday's next branch, the locale-related FlightGear bug mentioned a few messages above appears to be fixed. :)
rominet
 
Posts: 557
Joined: Sat Nov 01, 2014 1:33 pm
Callsign: F-KATS
Version: Git next
OS: Debian GNU/Linux

PreviousNext

Return to Development

Who is online

Users browsing this forum: BLEXBot [Bot] and 17 guests