Translations of this page are also available in the following languages: Русский.
Todos
These lists are meant to provide the developers a reminder of undone projects. It is also a wish list capturing user’s desires for new features. New developers can also look here for projects which they might be interested in working on.
See tasks for non-programmer tasks.
The PCB Roadmap is on a separate page.
Tasks for programmers
Netlist Hacker
Somebody who is familiar with the generation/management of netlists is needed to help work on and improve gnetlist. Whether the existing gnetlist is used or if a total rewrite is needed is always an open option. Must be extremely familiar with UNIX/C/C++ programming.
Symbol Library Hacker
Somebody is needed to help get the symbol library up to the current symbol
spec. This individual would also help in the integration of new symbols and making sure that they meet the current symbol
spec. The task of getting the symbol library up to
spec is a combination of manual effort and automated updating (this sort of automated updating lends itself very well to a person with shell/perl scripting familiarity).
Windows Port Hacker/Manager
Somebody with expertise building and testing gEDA on UNIX systems and familiarity with the MS Windows 95/98/NT platform is needed to manage the gEDA Windows port. Testing, bug fixing, packaging, and releasing of gEDA on the Windows platform would be the primary responsibility of this person. This task requires a person who knows C, GTK+, UNIX, and MS Windows programming. The Windows port will NOT move forward if this task is not filled.
-
Release Hacker
Somebody who wants to create and manage releases is needed. Releases occur when the code is ready to be released, so there's no marketing pressure. This task requires gEDA building/testing familiarity as well perhaps some minor code hacking.
Release roadmap
This section should contain a list of only those issues that are considered as being important enough to block release until they are resolved. If a feature or bug gets bumped or has its importance reduced, please remove it from the list or move it to the appropriate later release.
Wishlist for next releases
Description | Launchpad bug | Developer(s) | Status |
Common release tasks | | | |
Screenshots of release version for a publicity revamp of gEDA website. | n/a | Peter C | |
Merge translations from Launchpad upstream | n/a | Peter C | |
Check copyright headers are up-to-date | 1086316 | | |
Common tasks | | | |
Where possible, ensure gEDA compiles with deprecated GTK / GLib APIs disabled | | | |
gschem | | | |
Cure all: “warning : ignoring return value of ‘…’, declared with attribute warn_unused_result” compiling with recent GCC versions | | | |
Avoid direct use of /tmp/ for undo schematics | | | |
Config GUI for gschem (and gattrib?) | | Peter B | |
More non-modal dialog boxes in gschem | | Edward H | |
Refactor gschem's action state machine and event dispatching code | | Edward H | |
Edit embedded symbols | | | |
Per project symbol storage to make the schematics independent from the symbol library | | | |
Clipboard support for copy / paste with text representations of gEDA schematic data | | | |
Clipboard support for copy / paste with graphic representation of gEDA schematic data | | | |
Refactor rendering code to allow its use outside of gschem | | Peter C | |
Refactor preview widget to make it available outside gschem | | Peter C | |
gschem: interface for editing paths and inserting / deleting nodes | n/a | | |
libgeda | | | |
UTF-8 / system / filesystem encoding bugs | 1868072 | | |
TinyScheme instead of Guile | | Peter B | |
New config mechanism to support non-turing complete config | | Peter B | Started! |
gnetlist | | | |
Per-page netlisting in libgeda | | Peter C | |
Refactor / improve gnetlist | | Peter C | |
gnetlist support for buses | | Peter C | Started! |
symbols | | | |
Prettify symbols (e.g. gates) using paths | n/a | | |
Libgeda:
Enable handling of .sch files with symbols having some (but not all) pins promoted onto the .sch file. This will enable pin-swapping via backannotation from PCB. (Architectural change)
Merge per-page netlisting from gnetlist (or re-write if necessary).
Gschem:
Create a button in gschem which will invoke gsch2pcb to create a netlist file ready for PCB to read in.
Enable hierarchical bus support. (Architectural change)
Make gschemrc variables settable from within gschem using a “settings” pull-down menu item (new). The idea is to update the contents of the gschemrc or gafrc files using pull-down menus, and write the changes out to the correct RC files.
Improve symbol library to handle very large symbol collections better.
Now the SELECTION is a GedaList and we can get “changed” signals, make more dialogs non-modal:
Support for embedding LaTeX maths to be rendered in text.
This could be output only, or preview bitmaps could be generated and cached by calling LaTeX, dvips and ps2epsi.
Would we add a new type of object for this, or allow attaching a “latex=1” attribute to the text object its self?
Gattrib:
Garchive:
Refdes_renum:
Develop scheme for backward annotation of changes from PCB to gschem. Requires modifications to libgeda to support, e.g. pin promotion from .sym file to .sch file (enabling pin swapping). (Architectural)
Create a Gerber → .pcb conversion tool. Result is metal layer or footprint editable by PCB. This might be a Perl script.
Implement lockfiles between gattrib and gschem.
Code cleanup and refactoring
Remove use of non GList linked lists. This is very invasive work, but allows much code cleanup where mixtures of the old and GList methods were available.
Remove unused variables and functions from various structures. Unused may also include “used”, but ineffective.