New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Developers (diff) – NEMO

Changes between Version 60 and Version 61 of Developers


Ignore:
Timestamp:
2018-11-05T17:50:54+01:00 (5 years ago)
Author:
clevy
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Developers

    v60 v61  
    1111[[BR]] 
    1212[[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 
    1315 
    1416== Overview of NEMO development process 
    15 [[Color(if you have developments to share, please read this introductory section first,/lime)]] 
    1617 
    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. 
     18NEMO is a free licence software, so anyone can use and develop NEMO for its own purposes. [[BR]] 
     19The 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]] 
    2020 
    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]'''. 
     21All suggestions or developments from the community are welcome and can be announced in one of the forums.[[BR]] 
    2222 
     23A development can be eligible for the NEMO reference. If so, this task should be added to NEMO development annual work plan.[[BR]] 
     24As a first step,a ticket should be opened to describe the development and its implementation, so as the existing validations.[[BR]] 
     25This ticket will be examined by NEMO Developer's Committee to decide if the development is relevant and useful for the NEMO shared reference.[[BR]] 
     26Once 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. 
    2327 
    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 
     28The different options to inform, share and eventually implement your developments in the NEMO reference are  described below: 
    2629 
    27 === A development of NEMO code itself 
    28 '''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 
    2932 
    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. 
    3134 
    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 
     36You 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]] 
    3337This very good idea needs a little more work, from you and also from the NEMO System Team in charge of NEMO development. 
    3438 
    3539As 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 discussions can take it in account. 
     40describing the development. Please create it with a "TASK" type, so that the NEMO Developer's Committee can take it in account. 
    3741 
    3842Listing 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: 
    3943* The overall coherency with NEMO development strategy 
    4044* Coding rules, performances 
    41 * Documentation (in the code, on-line and refernce manual) 
     45* Documentation (in the code, on-line and reference manual) 
    4246* Building the development branch in phase with latest NEMO release 
    43 * Validation phase, including checking this development is not braking any existing feature 
     47* 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) 
    4448 
    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. 
     49The 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. 
    4650 
    47  
    48  
    49 {{{#!comment 
    50  
    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 veux 
    52 [[Include(wiki:Developers/Homepage/Table)]] 
    53 }}} 
    5451 
    5552=== Development activities 
     
    6562 
    6663* [wiki:Developers/WorkingOnTickets] 
     64* [wiki:Developers/WorkingEnvironment] 
    6765* [wiki:Developers/SVNHowTo] 
    6866 
     
    7775 
    7876* (|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'' 
    8078 
    81 {{{#!comment 
    82  
    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 installation 
    87  
    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 installation 
    97  
    98 [[Include(wiki:Developers/WorkingEnvironment)]] 
    99  
    100 See [wiki:/Developers/SVNHowTo#Basics SVN basics] for more. 
    101  
    102 === New build of the working copy 
    103  
    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 }}}