(→Scope) |
|||
Line 127: | Line 127: | ||
<!-- [[Category:FeaturePageIncomplete]] --> | <!-- [[Category:FeaturePageIncomplete]] --> | ||
[[Category: | [[Category:FeatureReadyForFesco]] | ||
<!-- When your feature page is completed and ready for review --> | <!-- When your feature page is completed and ready for review --> | ||
<!-- remove Category:FeaturePageIncomplete and change it to Category:FeatureReadyForWrangler --> | <!-- remove Category:FeaturePageIncomplete and change it to Category:FeatureReadyForWrangler --> | ||
<!-- After review, the feature wrangler will move your page to Category:FeatureReadyForFesco... if it still needs more work it will move back to Category:FeaturePageIncomplete--> | <!-- After review, the feature wrangler will move your page to Category:FeatureReadyForFesco... if it still needs more work it will move back to Category:FeaturePageIncomplete--> | ||
<!-- A pretty picture of the page category usage is at: https://fedoraproject.org/wiki/Features/Policy/Process --> | <!-- A pretty picture of the page category usage is at: https://fedoraproject.org/wiki/Features/Policy/Process --> |
Revision as of 22:10, 10 November 2009
IntelliJ IDEA
Summary
Add Community IntelliJ IDEA Community Edition packages and their dependencies into repositories. Along with Eclipse and NetBeans already provided by Fedora, IDEA is a popular Java-based development environment.
Owner
- Name: Lubomir Rintel
- email: <lkundrak@v3.sk>
- Name: Michal Ingeli
- email: <mi@v3.sk>
Current status
- Targeted release: Fedora 13
- Last updated: Nov Mon 09 2009
- Percentage of completion: 19.832%
What's already done can be found at http://fedorapeople.org/~lkundrak/intellij-idea/ which should (along with the dependency matrix below) give you more specific idea about the progress.
Detailed Description
See Summary and Scope for more details. This is mostly a packaging exercise.
Benefit to Fedora
Fedora users will gain comfortable access to features of Community Edition if IDEA, which include support for Java language, popular version control systems, GUI designer, etc. The overview of features is available in comparison matrix.
Apart from IDEA itself, many of its dependencies are a rather nice addition to the Fedora package collection. This includes Saxon HE, a modern implementation of popular XML-related W3C standards and recommendations, JGraph graphing library and most importantly a complete tooling for scripting in Groovy language.
Scope
- Several new packages have to be added to Fedora
- Pulled in from JPackage and adjusted to conform with guidelines
- Newly packaged
- Some packages need to be updated (or compat packages added) to be compatible with IDEA requirements
- This is the only change that touches existing stuff
- IDEA itself has to be packaged
- The build system adjusted not to use bundled prebuilt code
- FIXME--explicitly list all the packages that need to be modified or added
How To Test
Each of the dependency packages will be QA-ed passing through standard packaging review process. Fair amount of packages contains test suites run in %check
phase of the package build process.
Correctness of the dependency chain of the core (conflicts and requires) will be verified in several scenarios
- Minimal installation (in mock chroot)
- Desktop live installation
- Everything installation
Functionality of each of the plugins needs to be verified separately and the test plan is dependent on provided functionality and would vary for each specific plugin.
User Experience
- Install
pkcon install intellij-idea
- Run
idea
Dependencies
Since IDEA itself is a new package, nothing depends on it. Here are idea's requirements [1]:
Core
Package | From where | Notes | Bugzilla Ticket (review, etc.) |
---|---|---|---|
intellij-idea | Needs to be created | In works. SPEC & Patches: [2] | |
picocontainer | Pull from JPackage | Old dead reviews 227093, 252119 | |
groovy | New package (upstream's RPM package is useless). Done: [3] | Dependency chain: everything, compilation. Requires apache-ivy and xstream. Needs review | 534168 |
xstream | Pull from JPackage Done: [4] | Depends on jettison, cglib. Needs review | 534135 |
cglib | Pull from JPackage | Port IDEA to 2.2 API (from 2.1.3): Done. Dead review: 469894, attempt to revive | |
xmlbeans | Pull from JPackage | Depends on saxon8 or saxon9 | 227122 |
saxon9 | New package | JPackage had saxon8. Needs review | 532664 |
apache-ivy | New package | Needs review | 534021 |
microba | New package | Needs review | 532205 |
jgraph | New package | Review in progress | 532203 |
jettison | Pull from JPackage | Done | 508521 |
nanoxml | Pull from JPackage | Done | 532315 |
jna | Needs -examples subpackage | 532208 | |
junit4 | Needs update to 4.6 | Need to check dependencies: Done | 532210 |
Plugins
TBD (can wait until Core is finished). No plugin is a hard dependency.
Package | From where | Notes | Ticket (review, etc.) |
---|
Contingency Plan
None necessary. If the work will not be finished early enough, the existing packaging work does not need to be reverted.
Documentation
The packaging will be well described in comments, this wiki page will be regularly updated with progress and serve as overview of what is done to anyone who would like to contribute.
Release Notes
It may make sense to add something similar to the following to What's New paragraph. Would need adjustments in accordance with features (plugins) that could actually be packaged:
IntelliJ IDEA Community Edition integrated development environment is available in package collection for this release of Fedora. Most important features include: * Intuitive creation of GUIs similar to IDEA's own one * Integration with Ant and Maven * Testing with TestNG and JUnit * Compatibility with Eclipse projects * Language support for Java, Groovy, XML and Regular Expressions * Version control with CVS, Subversion and GIT