Version 54 (modified by 15 years ago) ( diff ) | ,
---|
Contributing to the Qt Port of WebKit
Gitorious.org is hosting a public git repository of the QtWebKit port.
Coding Style
Effective immediately all commits to QtWebKit should use the WebKit coding style for all files in the project. That includes qwebview(.h|cpp), qwebpage(.h|.cpp) and all others. Repeat: the Qt style should not be used. Thank you.
Reporting Bugs
Bug reports, feature requests, and patches for the Qt-port of WebKit should all be submitted to the WebKit Bugzilla.
Please follow the standard reporting guidelines and steps for writing good bug reports, with the following specifics for the Qt port:
- All bugs related to the Qt port of WebKit should have the keyword 'Qt'
- Use the component to specify which area of the code you're targeting
- There are components for rendering, plugins, tests, text, forms, etc.
- The 'WebKit Qt' component should only be used for bugs/features in the QtWebKit API
- Add the keyword 'Performance' if the bug is performance-related
- Use the severity 'Enhancement' for feature-requests/enhancements
- Use the severity 'Blocker' for compilation errors/build breaks
- Use the severity 'Critical' for crashes
- Use the severities 'Minor, Normal, Major' for bugs
You can use http://webkit.org/new-qtwebkit-bug as a handy template.
Useful filters for existing Qt bugs
Bugs (unconfirmed or new) Bugs (assigned)
API Compilation Crashes Enhancements Rendering and Layout Performance Plugins Tools and Tests
Checking out the sources
Developers who wish to contribute to the port can check out the sources like so:
git clone git://gitorious.org/webkit/webkit.git
This is a git mirror of the WebKit SVN repository.
If you also want to track the staging branches for QtWebKit releases, do:
git remote add qtwebkit git://gitorious.org/+qtwebkit-developers/webkit/qtwebkit.git
This repository has the QtWebKit staging branches and other branches specific to the QtWebKit port.
Hacking on QtWebKit
- QtWebKit overview
- Process of contribution to QtWebKit's API
- Backporting fixes into the latest stable release
Running the tests
To run the tests the normal WebKit layout test infrastructure is used. In addition you need a fixed set of fonts for testing. You can download them using Git from Gitorious:
git clone git://gitorious.org/qtwebkit/testfonts.git
Then you have to set the WEBKIT_TESTFONTS variable to point to the newly checked-out testfonts directory.
As the last step you can just run
run-webkit-tests
from the WebKitTools/Scripts directory.
Individual tests can be run just directly using for example
run-webkit-tests LayoutTests/fast/forms/plaintext-mode-1.html
For debugging at test it may also be useful to run it directly in DumpRenderTree (with gdb):
WebKitBuild/Debug/bin/DumpRenderTree -v LayoutTests/fast/forms/plaintext-mode-1.html
The expected output can usually be found in the file with the same name as the test itself but with the .expected extension.
Building API Docs
Before you can build the API docs you need make sure to have Qt build from sources and run make docs
in your Qt build directory once. This will ensure that the Qt API documentation is built and can be referenced from the QtWebKit docs and it will also ensure that qdoc (the tool that generates the API docs) is built.
To build the QtWebKit API docs simply run make docs
in your build directory, i.e. WebKitBuild/Release
. The output will be generated in HTML in the doc/html
subdirectory.
Information on Git for QtWebKit developers
- QtWebKit Git Instructions
- Using Git with WebKit
- A Git cheat sheet
- An excellent article on Git for computer scientists
The Plan
Communication
We use the regular webkit-dev mailing list to coordinate. You can also find us in the #webkit channel on irc.freenode.net. We have two mailing lists specific to the QtWebKit port
Obtaining Check-In Privileges
Contributors with a proven track record of good patch submissions and that have demonstrated an ability to work well with the community can obtain check-in privileges to the QtWebKit git repository.
The various branches of the git repository mirror the branches in the upstream public webkit svn repository. Patches that land on a branch in the git repository are not automatically pushed to the svn repository. Patches intended for the svn repository must first be reviewed and then committed by developers with sufficient privileges.
Patches that are not specific to the QtWebKit port of the webkit project should not be submitted to the git repository rather they should be contributed directly to the upstream public webkit svn repository.
To obtain check in privileges to the git repository the contributor should inquire from one of the Administrator(s) of the qtwebkit-developers team.
Attachments (3)
-
Browser Performance Tests.zip
(10.7 KB
) - added by 14 years ago.
Analyses browser's performance at various stress-conditions. An animation starts and keeps on increasing the number of objects automatically. This ensures decrease of available memory, while capturing quality of browser's-graphical-rendering-capacity in fps(frames/second).
-
CSS3 2D Transforms.zip
(198.4 KB
) - added by 14 years ago.
Testcases checking for CSS3 2D Transforms functionality.
-
CSS3 3D Transforms.zip
(250.3 KB
) - added by 14 years ago.
Testcases checking for CSS3 3D Transforms functionality.
Download all attachments as: .zip