Changes between Version 60 and Version 61 of Developers
- Timestamp:
- 2018-11-05T17:50:54+01:00 (6 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Developers
v60 v61 11 11 [[BR]] 12 12 [[BR]] 13 [[Color(IMPORTANT to be able to create a ticket or add a topic in a forum, if you don't already have a user account then you have to '''[/register create it by clicking here]''',/lime)]] 14 13 15 14 16 == Overview of NEMO development process 15 [[Color(if you have developments to share, please read this introductory section first,/lime)]]16 17 17 NEMO is a free licence software, so that all the developments from the community are more than welcome.[[BR]] 18 Still, since the NEMO reference is share by the whole community after a commonly agreed development and validation process, the developments to be added in the NEMO reference must follow a specific quality control process.[[BR]] 19 The different levels of sharing for your developments are briefly described below, in order to help you find the best way(s) for your developments to reach to community. 18 NEMO is a free licence software, so anyone can use and develop NEMO for its own purposes. [[BR]] 19 The NEMO reference code is available through official releases following some precise developement plan and quality control processes.The NEMO reference is under the responsibility of the NEMO System Team.[[BR]] 20 20 21 First and foremost, to be able to create a ticket or add a topic in a forum, if you don't already have a user account then you have to '''[/register create it]'''. 21 All suggestions or developments from the community are welcome and can be announced in one of the forums.[[BR]] 22 22 23 A development can be eligible for the NEMO reference. If so, this task should be added to NEMO development annual work plan.[[BR]] 24 As a first step,a ticket should be opened to describe the development and its implementation, so as the existing validations.[[BR]] 25 This ticket will be examined by NEMO Developer's Committee to decide if the development is relevant and useful for the NEMO shared reference.[[BR]] 26 Once the approval of Developer's Committee is sent, the development action can be added into the NEMO development yearly work plan and will need a contribution from the intial developer to be completed. 23 27 24 === A piece of software related to NEMO, that you want to share: 25 '''You have developed a tool for NEMO pre- or post-processing, you have a personal repository with files you would like to share''' with the community, etc... , please add a topic in the [forum:5 Alternative configurations, repositories and utilities] forum 28 The different options to inform, share and eventually implement your developments in the NEMO reference are described below: 26 29 27 === A development of NEMO code itself28 '''You developed a new piece in NEMO, for your own purpose and you now want to inform the community''', but you're not ready to do more. You are welcome to create a ticket here and attach the routines you have developped to your new ticket. 30 === A piece of software that you want to share: 31 * You have developed a tool related to NEMO (pre- or post-processing), please add a topic in the [forum:5 Alternative configurations, repositories and utilities] forum 29 32 30 newticket?summary=&type=ENHANCEMENT&component=ALL&version=trunk&severity=minor&keywords=&cc=&milestone=&priority=low&description=&owner=&sfp_email=&sfph_mail= 33 * You have a new development of NEMO, and believe it is of interest for the community, but you're not ready to do more. You are welcome to [https://forge.ipsl.jussieu.fr/nemo/newticket?summary=&type=ENHANCEMENT&component=ALL&version=release-3.6&severity=minor&keywords=&cc=&description=&milestone=&priority=low&owner=systeam&sfp_email=&sfph_mail= create a ticket here] and attach the routines you have developped to your new ticket. 31 34 32 '''You developed a new piece in NEMO, for your own purpose and you think it would be useful for you and/or the community to add it into the NEMO reference'''.[[BR]] 35 === A contribution the the NEMO reference 36 You developed a new piece in NEMO, for your own purpose and you think it would be useful for you and/or the community to add it into the NEMO reference.[[BR]] 33 37 This very good idea needs a little more work, from you and also from the NEMO System Team in charge of NEMO development. 34 38 35 39 As a first step, you should, as above, open a ticket here: [[BR]] 36 describing the development. Please create it with a "TASK" type, so that the NEMO workplan discussionscan take it in account.40 describing the development. Please create it with a "TASK" type, so that the NEMO Developer's Committee can take it in account. 37 41 38 42 Listing a development action in the NEMO reference development plan is decision with strong implications: first criteria is of course the scientific interest, but the amount of work needed to successfully meet the quality control requirements has also to be evaluated. This concerns: 39 43 * The overall coherency with NEMO development strategy 40 44 * Coding rules, performances 41 * Documentation (in the code, on-line and refer nce manual)45 * Documentation (in the code, on-line and reference manual) 42 46 * Building the development branch in phase with latest NEMO release 43 * Validation phase , including checking this development is not braking any existing feature47 * Validation phase: checking that the development does what is expected, and that it is not breaking any existing feature (in terms of natural, computer sciences and of performances) 44 48 45 Considering the costs (efforts needed to implement development in the NEMO reference) and benefits, the NEMO System Team will eventually offer you to contribute to the implementation work in the NEMO reference. If so, the development will be added in the workplan of the year,you will be the PI of this action with the perspective of merging this new development by the end of civil year, during the so-called "Merge Party" meeting. If you agree with this perspective, you will be contacted by a member of NEMO System Team who will help you through the different development steps.49 The NEMO System Team will ask you to contribute to the implementation work in the NEMO reference: you will be the PI of this action with the perspective of merging this new development by the end of civil year, during the so-called "Merge Party" meeting. If you agree with this perspective, you will be contacted by a member of NEMO System Team who will help you through the different development steps. 46 50 47 48 49 {{{#!comment50 51 Claire: j'ai enlevé cette table parce que je ne crois pas que cette différence entre Consortium members et autres soit pertinente ici: la difference est entre développements acceptés pour la référence de NEMO et les autres. A revoir si tu veux52 [[Include(wiki:Developers/Homepage/Table)]]53 }}}54 51 55 52 === Development activities … … 65 62 66 63 * [wiki:Developers/WorkingOnTickets] 64 * [wiki:Developers/WorkingEnvironment] 67 65 * [wiki:Developers/SVNHowTo] 68 66 … … 77 75 78 76 * (|mail|) [https://listes.ipsl.fr/sympa/info/nemo-forge forge@nemo-ocean.eu]: to be notified of each event on this platform (repository commits, ticket creation/update and forums messages).\\ 79 ''Very high traffic recommended for developers only.''77 ''Very high traffic recommended for all developers'' 80 78 81 {{{#!comment82 83 Claire: pas convaincue que le paragraphe suivant doive être ici?? Je le vois plutôt dans Developing code changes?84 85 86 === Recommended development installation87 88 After the global reorganisation of the repository, it is now advisable to entirely download the new default development organisation in your local computing architecture:89 * [browser:/NEMO/trunk]: ''the main development branch''90 * [browser:/NEMO/branches]91 * NEMO/branches/`YYYY`: ''yearly development branches intended to be merged into trunk by the end of the year''92 * NEMO/branches/`{NERC,UKMO}`: ''restricted to British operational activities''93 * [browser:/NEMO/releases]: ''all official NEMO releases'', '''only the last one is maintained'''94 95 The first checkout will be a bit longer than usual but the SVN commands will be much simpler: the branching operations will be done locally and pushed later to the repository instead of committing directly to the repository with former complex `svn+ssh` syntax and then downloading locally. \\96 Follow the steps below to download the recommended development installation97 98 [[Include(wiki:Developers/WorkingEnvironment)]]99 100 See [wiki:/Developers/SVNHowTo#Basics SVN basics] for more.101 102 === New build of the working copy103 104 To facilitate the development work by simplifying the management and the sharing of the code in the repository, while ensuring the consistency of the working copies, we have introduced the [http://svnbook.red-bean.com/en/1.7/svn.advanced.externals.html SVN externals definitions] in the building of the working copies. \\105 We have identified the core code and the complementary codes of NEMO, the latter which are developing less rapidly have been extracted from the default development organisation of the repository (`branches` / `releases` / `trunk`) to different locations of the repository.106 107 From now on, a working copy of the NEMO reference (WC) is the summation of few checkouts from different sources defined by the `svn:externals` properties of the working copy. '''To be conservative, all externals definitions are fixed by default (@[[Color(${, #AA22FF)]][[Color(PEGREV, #B8860B)]][[Color(}, #AA22FF)]])'''. \\108 Here is an example which is not supposed to be up to date with the current external codes.109 110 [[Include(wiki:Developers/ExternalDefinitions)]]111 112 ''If you have to modify these properties to get external modifications, you can learn how to update your working copy in [wiki:Developers/SVNHowTo]''.113 114 ==115 }}}