SourcesMovePlan

Plan on move of NB Sources from hg.netbeans.org to Apache Git

This plan describes the steps to be done to move sources from current NB HG SCM to new Apache Git. It takes into acount change of license headers, continue development of NetBeans 9. NetBeans 9 development will need some running build jobs which then require also 3rd party binaries available... Nice to have goal is to have shortly after code donation build of NetBeans Platform available on Apache.

It assumes source code donation is legally approved from both sides.

Plan

Date Step Responsible Description
Before Day D Remove dependencies on Swing Layout Ext (GPL) from Platform NB9 Dev Preparation for Apache (non GPL build) done in main.
Day D (TBD) "Apache" branch created from hg.nb.org/releases Petr G. -
D+1 Run license headers change Tomas S. Will take 2, maybe 3 days as it is not fully automated process
D+1 Setup build job on deadlock to build from Apache branch Petr G. Standard NB build using binaries from http://hg.netbeans.org/binaries/
D+3 Build is done, verified Community Check the build is passing
D+4 NB 9 development is done on regular team repos NB9 dev Still using hg.nb.org. Sources are merged to "apache" branch periodically
D+4 Sources from "apache" branch are copied to Apache git Community The goal should be to produce NB Platform build from Apache Git using Apache approved libs.
D+5 Remove *GPL* libs from Apache NB Platform  ?? Following *GPL* libs are in Platform: 1. nsProxyAutoConfig.js, 2. Swing layout extension 1.0.4 - done earlier, 3. JavaHelp 2.0 (Oracle owned). 1st needs to be discussed with proxyselector-v2 module owner. JavaHelp - workaround - build using downloaded JavaHelp lib, at runtime default to display a help in browser.
D+5 Build job development for Apache Git - NB Full IDE & Platform Petr G. Develop a build using Apache Git, likely run on deadlock.nb.org using 3rd party libs from hg.nb.org. This is intermediate build before all infrastructure is available on Apache site.
D+5 Need to know how we will develop in Apache Git NB 9 + Community Decide on using "team branches" for which regular build jobs will be setup? Or use some other mechanism...? Automated push jobs between team repos and default? Where to build the IDE (cloudbees, Travis CI)
- NetBeans Platform build without GPL libs Petr G. NB Platform build is passing using Apache Git and Apache 3rd party libs location - TBD. Just Platform required subset of 3rd party libs, meeting Apache legal requirements. It is running on deadlock or on Apache builders (depends on availability).
- Perform final merge of sources from hg.nb.org/releases "apache" branch to Apache Git. Community HG.nb.org sources contain latest NB 9 development - avoid changes in JavaHelp support and proxySelector. There are 2 build jobs. One for Platform - Apache clean build. 2nd for full NB using Apache Git and 3rd party libs from hg.nb.org/binaries, excluding Platform binaries.
- Move NetBeans 9 developemnt to Apache Git NB 9 devs NetBeans 9 development will be performed on Apache Git likely using Full NB build job form deadlock. Platform is built on Apache infra using blessed 3rd party libs.
- Move up in clusters chain to remove GPL libs Community Remove and replace GPL libs used in ide, extide, Java, ... clusters. Extend the original Apache NB Platform build to build bigger set of IDE modules.

After this NetBeans 9 development will be performed in Apache GIT. Platform will be built on Apache using just Apache allowed 3rd party libs. There will be "Oracle" build building Full IDE using 3rd party libs from HG.NB.ORG

Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo