Bounties

From Free Pascal wiki
Revision as of 06:41, 13 October 2009 by Delphifreak (talk | contribs) (IDE Enhancements)

Deutsch (de) English (en) português (pt)

Introduction

Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.

Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is not to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community.

If there is no one interested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dollars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.

Examples:

  • Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com
  • Implement a new feature. Please make a budget Contact myemail@domain.com

Multi-platform bounties

FPC grammar

Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru

Optimizations for FPC/Lazarus

Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the Lazarus paypal account.

IDE Enhancements

1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20

2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the word "XYZ" and this would open the "FindInFiles" dialog. $20 Solved by Matthias.

Contact: sam_solver_AT_yahoo(dot)com

GLScene improvements

The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at

 http://www.real-time-volume-graphics.org/?page_id=5

To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...

Click to see Blinn-Phong shading Figure 5.5

Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gwm(dot)sc(dot)edu $300

SQL Database Administration Components $500 US

FPC/Lazarus needs a cross platform TSQLConnector based component for Create & Drop Databases, Add Table Drop Table and Alter Table. The solution to this bounty will be complete when a base TSQLAdministration component is developed to manage fields, tables, and database. Fields and their types must be enforced. TSQLAdministration extensions for native MySQL, PostgreSQL, and OracleSQL must also be supported.

The Base class and Three extended classes must be packaged and included in Lazarus distribution for optional installation in the IDE pallet.

The individual or point of contact for a group will receive $500.00 ($US). Contact Andrew Brunner (andrew.t.brunner@gmail.com) to register. A work in progress should be submitted to appropriate FPC/Lazarus SVN.

Windows bounties

Fixing bug #7182 - $100

$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.

Reparent Forms

Related to the bounty above, I'd like to spend another 50€ for anyone who manages to reparent a form with a specified owner (data module) to a given parent window handle (HWnd). In Delphi this is pretty simple (ParentWindow := NewParentWindowHandle), but it is not working properly in Lazarus. The form should be reparented completely (incl. accepting keyboard/mouse input and such). The code will be used for my open source project "Delphi ASIO & VST Packages" to make them usable with Lazarus (planned for version 1.5). Please contact me prior to fixing this (Christian at savioursofsoul.de)

Gtk bounties

Fix bug - $10

http://mantis.freepascal.org/view.php?id=11906 Contact http://www.wordwebsoftware.com/contact.html

Fix bugs on Gtk 2 IDE and Interface - $200

  • $200.00 US to anyone or group that gets the IDE to use gtk2 and to compile programs for GTK2 without major GUI bugs - both should work. The award of the bounty will be determined by votes from the mailing list. The list will first vote if the IDE and programs work and then on which person or group should receive the bounty.

Fix GLScene volume rendering on Linux

  • $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu

Windows CE bounties

None

Symbian bounties

RTL for Symbian phones - $1000

Create an RTL for Symbian phones (FPC for ARM already exists).

  • Include a very simple GUI app (like this one for PocketPC).
  • Needed for Symbian UIQ 2 and 3 at least.
  • Bounty $1000, open for negotiation if Series 60/80/90 supported.
  • Contact bounty (at) ccrdu.de.
    • Volunteers found and in contact!

Carbon bounties

None

Qt bounties

None

fpGUI bounties

None

Closed bounties

These are examples of successfully concluded bounties.

GTK2 clipping rect error

Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account. http://bugs.freepascal.org/view.php?id=12026

Small Fix for Linux x86_64 IDE

Carbon Components

  • Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton
  • Tombo earned $50.00 US for extending LazRGBGraphics to support the QT widgetset - offered by rorden at gwm.sc.edu

Small Windows Bugs

Apache modules - €300

  • Apache modules header translation and basic example. Awarded to Sekelsenmat.
FPC and Apache Modules

Making paszlib zipper Mac/Unix compatible

Tom G. earned 100 EUR for making the paszlib zipper Mac/Unix compatible. The zipper (TUnZipper.UnzipAllFiles) had no support for symbolic links, did not set executable bits of unzipped executable files, did not support directories, and raised a CRC exception. Thanks Tom for fixing this! - offered by Grau GbR (www.grauonline.de)

Make TListView "Virtual"

Dmitry B. (aka skalogryz) earned 200 EUR for making the Win32 and Carbon TListView implementations "virtual" - before that, TListView was not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler was missing (http://bugs.freepascal.org/view.php?id=7749). Thanks Dmitry for fixing this! - offered by Grau GbR (www.grauonline.de)