Architecture Council/Open Issues
Open Issues are Overflow items that have been proposed for a meeting, but that we ran out of time discussing. These items are pushed forward from meeting to meeting until we find time picking one up.
How to start Releng?
- How to start a releng project for unattended builds on the ML - PDE build docs are good but only half the story
- Bjorn, NickB & Denis CBI Build Workshop 3: Build Hard With A Purpose but is that an answer for now? Current status?
- CBI being adopted by Paul Webster for e4
- Refer people to clone existing projects' releng? Which ones are good?
Mentoring New Projects
- We need more Architecture Council members to step up and become project mentors
- New projects require two mentors (a Good Thing™)
- How do new projects find/attract a mentor?
- Mailing list, bugzilla?
- "Work the crowd"
- What could be improved?
- Webpage improvements: more pre-canned content for new projects (like Sourceforge)?
Top Ten Recommendations
- Architecture Council/Top Ten Recommendations - should we start sorting them?
- Architecture Council/Links Collection - want more, more, more!
Relationship to E4
- E4/Pervasive Themes - Performance, Memory Footprint, Bloat (Boris' Blog), Concurrency
- Invite E4 to present to the EAC?
- E4 now has bi-weekly calls -- won't discuss E4 on the EAC unless asked / invited
- Examples: bug 245573 comment 12 (Dali JPA Tools Deadlock, John CC'd to EAC); bug 246840 discussion about ISchedulingRule (saving project preferences)
- What is causing issues?
- work performed during class loading (Activator.start()) - unknown context, can run at unpredictable times
- work performed in callbacks - unknown context, avoid synchronous callbacks
- General recommendations: (e.g. avoid synchronous callbacks, avoid in Activator.start(), static initializers or Singleton getters) - a general recommendation could be to avoid performing work at unpredictable times, but that would recommend against lazy initialization in general
- Does anybody have a well-working, consistent model on top of the current infrastructure?
- Totally new concurrency mechanism as part of E4 ?
- Better Javadoc ?
- Example: ISchedulingRule.isConflicting() vs. ISchedulingRule.contains(), and how does it relate to RuleFactory and MultiRule?
- Articles ? - John referenced the resource-deltas article
Eclipse Pain Points
- Eclipse Pain Points
- Performance & Memory Footprint, Bloat
- Restrictions on Resource model (Maven)
- IP due diligence and the processes around it
- Lots of these issues are already worked on by E4, and/or Committer Representatives at the Board, and/or the Planning Council
- But the EAC's charter includes identifying and naming pain pionts... anything not yet being addressed?
Other Ideas for Discussion
- Mentoring Galileo: What could be improved?
- Running each project's unittests with full Galileo installed; especially interesting for Performance tests
- Don't duplicate work done by the Planning Council
- Integrated bug reporting: Mylyn is providing a bug/error/enhancement reporting facility that will provide a flexible and product-configurable mapping between features, bundles and bug trackers bug 212209 (Example: http://wiki.eclipse.org/images/8/86/Mylyn-Bug-Reporting-Example.jpg ). Do we want this for Galileo?
Items proposed in 2007
- Coordinated build (Ganymede) infrastructure - how to achieve continuous integration, unit tests covering the integration of all projects, and consistency across all projects
- Early integration tests, Automated JUnit API conformance tests
- UI Consistency - when I'm not mistaken, the UI Guidelines are being reworked; how can we encourage projects to pick them up.
- Remote Development - Theoretically, EFS should be the foundation on which workspaces can be put on remote machines, and I do see a lot of interest in this -- but practically, there are some roadblocks. It's a pervasive topic since most projects are not really EFS-aware yet. How to improve the situation?
- Scripting, Macro Recording, DOMs - Another pervasive theme, if macro recording & playback is to be supported across an entire Eclipse based product, there need to be guidelines and APIs for projects to follow. It may be a multi-year multi-project effort but it may be worth getting it started.
- Security - With the number of plugins aver growing, is there a threat of trojans nesting themselves inside Eclipse? Getting a trojan or virus-like plugin into Eclipse can be extremely malicious - from spying to impersonation up to data destruction. Is it a real threat, and is there something that could / should be done?
- Project Model and Nested Projects - when developers lay out the directory structure on non-eclipse projects, they often use a tree where some directories represent projects. Those projects are "nested". This is also often related to the way the files are stored in a configuration management system. Unfortunately eclipse does not really support this real-world setup bug 35973, and this Blog by Alex Blewitt
- Integrated bug reporting: Mylyn is providing a bug/error/enhancement reporting facility that will provide a flexible and product-configurable mapping between features, bundles and bug trackers bug 212209. Once done it would be good to discuss how best for EPP and other products to consume this (Example: http://wiki.eclipse.org/images/8/86/Mylyn-Bug-Reporting-Example.jpg )
- Package visibility policies: New WTP Policy and bug 202711