Changes between Version 63 and Version 64 of org/teams/NetworkTeam


Ignore:
Timestamp:
Dec 6, 2016, 11:40:12 PM (2 years ago)
Author:
isabela
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • org/teams/NetworkTeam

    v63 v64  
    1 = '''Network Team''' =
    2 == Overview ==
    3 Welcome to the Network Team page.  The ''Network Team'' is a group  of Tor people who are working on the backend: the program called Tor, the pluggable transports, the bridge distribution, the network simulators, the scripts that supports directory authorities, hidden services etc.
     1[[TOC]]
    42
    5 There are currently three other teams in Tor: the [https://trac.torproject.org/projects/tor/wiki/org/teams/MetricsTeam Metrics Team] a group of Tor people who care about measuring and analyzing things in the public Tor network, the ''Applications Team'' produces usable applications for end users, and the ''Community Team''  focuses on the non-technical aspects of growing a healthy Tor  community.
     3= Network Team =
     4== About us ==
     5Welcome to the Network Team page.  The ''Network Team'' is a group of Tor people who are working on Tor back-end: the program called Tor, the pluggable transports, the bridge distribution, the network simulators, the scripts that supports directory authorities, onion services etc.
    66
    7 == People ==
    8 The people who are part of this team is anyone working on the projects described above.  We're not listing  names here to keep the team open to everyone.  You're on the team if  you're participating in discussions and development, and you're not part  of the team anymore if you decide you want to move on (which we hope  won't happen).
     7One of the reasons we are not listing the names of the team members here is because we want to keep the team open to everyone. You're on the team if you're participating in discussions and development, and you're not part of the team anymore if you decide you want to move on (which we hope won't happen).
    98
    10 == Communication ==
    11 Our synchronous medium of communication is IRC meetings that happen every other Mondays and Wednesdays [https://www.torproject.org/about/contact.html.en#irc in #tor-dev on OFTC].  For the latest times for these meetings, see:
     9Excited about joining the team? Here is more information on how to get started.
     10
     11=== Team Meetings Schedule: ===
     12We use IRC for our meetings, we meet at [https://www.torproject.org/about/contact.html.en#irc #tor-dev channel on OFTC server].
     13
     14For other meetings, see:
    1215
    1316 * [wiki:org/teams/NetworkTeam/MeetingSchedule]
     17
     18||= Team Meetings =||= UTC =||= CET =||= EDT =||= PDT =||
     19|| Primary team meeting || Monday 1700 UTC || Monday 7:00pm CEST || Monday 12:00pm EST || Monday 9:00am PST ||
     20|| Patch party (more info here) || Tuesday 2300 UTC || Wednesday 1:00am CEST || Tuesday 06:00pm EST || Tuesday 3:00pm PST ||
     21
     22=== How we work ===
     23Besides meeting every week on irc for status update and team discussions, our team also uses the following mechanisms to organize our work:
     24
     25 * [https://trac.torproject.org/projects/tor/wiki/org/teams/NetworkTeam/TeamRotations Team rotations]: our rotation calendar - we rotate some 'duties' like bug triage, here you will find all rotation schedule and more information on the work that has to be done.
     26 * [https://trac.torproject.org/projects/tor/wiki/org/teams/NetworkTeam/CoreTorReleases Core Tor Releases]: here is more information about our release schedules, guidelines for release planning and ideas of how we can improve this process.
     27 * [https://trac.torproject.org/projects/tor/wiki/org/teams/NetworkTeam/FilingTicketNetworkTeam Filing a ticket for the network team].
     28 * [https://trac.torproject.org/projects/tor/wiki/org/teams/NetworkTeam/UsefulTicketsQueries Useful ticket queries].
     29 * New features starts with proposals - normally we discuss them at our [https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev ​tor-dev@ mailing list] and try to finalize the discussions on [wiki:org/teams/NetworkTeam/MeetingSchedule irc meetings].
     30
     31----
     32== Becoming a volunteer ==
     33Thanks for volunteering with us! This part of our wiki is a collection of information we believe might be useful for you who wants to help us develop our tools.
     34
     35=== >> Getting started ===
     36You could start by submitting a patch! Patches can help you learn our code and how our team work.
     37
     38=== >> Tips on finding a patch to work on ===
     39We have people on rotation triaging bugs every week, you could look for one of them online and ask for suggestions of what to work on.
     40
     41Or you can dig it yourself! Here are some queries we normally use, but you are welcome to just create new tickets if there is something in particular that you want to help with or a bug you found and has a patch for.
     42
     43=== >> Tips on finding your way around our code ===
     44For the past couple years we spent great amount of our time documenting our code to help people understand it. Here are some links for documentation that will help you get started with our code!
     45
     46==== HACKING/ ====
     47[https://gitweb.torproject.org/tor.git/tree/doc/HACKING/README.1st.md The HACKING/ folder] has helpful information about what you need to know to hack on Tor!
     48
     49 * First, read [https://gitweb.torproject.org/tor.git/tree/doc/HACKING/GettingStarted.md GettingStarted.md] to learn how to get a start in Tor development.
     50 * If you've decided to write a patch, [https://gitweb.torproject.org/tor.git/tree/doc/HACKING/CodingStandards.md CodingStandards.txt] will give you a bunch of information about how we structure our code.
     51 * It's important to get code right!  Reading [https://gitweb.torproject.org/tor.git/tree/doc/HACKING/WritingTests.md WritingTests.md] will tell you how to write and run tests in the Tor codebase.
     52 * There are a bunch of other programs we use to help maintain and develop the codebase: [https://gitweb.torproject.org/tor.git/tree/doc/HACKING/HelpfulTools.md HelpfulTools.md] can tell you how to use them with Tor.
     53 * If it's your job to put out Tor releases, see [https://gitweb.torproject.org/tor.git/tree/doc/HACKING/ReleasingTor.md ReleasingTor.md] so that you don't miss any steps!
     54 * A very important part of our development is code review, if you would like to collaborate with this part or want to sharp your skills in this front, check [https://gitweb.torproject.org/tor.git/tree/doc/HACKING/HowToReview.md HowToRevew.md].
     55
     56==== tor-guts: ====
     57The core Tor development team created [https://gitweb.torproject.org/user/nickm/torguts.git/tree/ tor-guts], a compilation of chapters that aims to explain the general structure of the Tor codebase, how it fits together, what functionality is available for extending Tor, and gives some notes on how Tor got that way.
     58
     59Some of the things we cover with this documentation:
     60
     61 * [https://gitweb.torproject.org/user/nickm/torguts.git/tree/01e-os-compat.md Chapter 01e-os-compat.md] covers networking and filesystems functions that helps us wrap differences between various operating systems we support.
     62 * [https://gitweb.torproject.org/user/nickm/torguts.git/tree/01d-crypto.md Chapter 01d-crypto.md] is dedicated to Lower-level cryptography functionality in Tor, in general Tor code shouldn't be calling crypto library directly (e.g. OpenSSL), this documentation helps developers understand the functions available in src/common/crypto\*.c or src/common/tortls.c that they can use these libraries indirectly.
     63 * [https://gitweb.torproject.org/user/nickm/torguts.git/tree/01c-time.md Chapeter 01c-time.md] cover Tor’s time-related functions, they exist to help developers parse time, or access cached time for when you have to do thousands of call and don’t want to overload the system, or information on how to schedule things.
     64 * [https://gitweb.torproject.org/user/nickm/torguts.git/tree/01g-strings.md Chapter 01g-strings.md] it's full of functions for manipulating the C string abstraction. It contains some often-missed highlights that will be helpful for developers who learning the ‘tor way’ of doing things in order to collaborate with our code base.
     65 * [https://gitweb.torproject.org/user/nickm/torguts.git/tree/01b-collections.md Chapter 01b-collections.md] talks about the different collections we have available and how these resources are useful when writing code for Tor.
     66 * [https://gitweb.torproject.org/user/nickm/torguts.git/tree/01a-memory.md Chapter 01a-memory.md] describes Tor’s functions for memory management. We advise developers to never use 'malloc', 'calloc', 'realloc, or 'free' on their own; always use the variants prefixed with 'tor_'. We also explain Tor’s convention for when the developer is writing their own functions, and some other choices we have made to help collaborators understand them.
     67
     68==== Modules and functions: ====
     69We use doxygen to generate documentation in html out of our comments on the code. With that we have documentation for all the modules in Tor, their data flows, their intended interactions, and their actual behaviors. As well as nearly all the functions.
     70
     71You will find this documentation in two places:
     72
     73 1. In the source code, at the start of each C file.
     74 1. When you click on individual C files under https://people.torproject.org/~nickm/tor-auto/doxygen/files.html   (scroll down to "detailed description").
     75
     76=== >> How to find us ===
     77We have what we call 'patch parties' meetings, they are for any volunteer to come with patches they want to discuss or need review for. These meetings happens on Tuesdays at 2300 UTC on irc. Check out the meetings information above for more details.
    1478
    1579If you want to reach someone from the team between these meetings to ask a development-related question, just go to '''#tor-dev''', and somebody from the team might either be around or appear later and get back to you.
     
    1781Our asynchronous medium of communication is the [https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev ​tor-dev@ mailing list].   This list is public in the sense that anyone can subscribe, send emails and read  archives. Feel free to subscribe and  just listen if you want, and feel free to post if you have a question  that you think is on topic.
    1882
    19 == Tickets ==
    20 
    21 Information on how we file ticket: [wiki:org/process/TorOnTrac]
    22 
    23 We use the keyword '''TorCoreTeamYYYYMM''' to mark the tickets we plan to work for the month.
    24 
    25 == Developer Git Repository ==
    26 
    27 Often time in tickets, you'll see something like: See branch `ticket20568_030_01`.
    28 
    29 That branch will usually be in the developer personal git repository. Here is a list of the common ones from the team ordered by their trac nickname:
    30 
    31  * arma: https://gitweb.torproject.org/arma/tor.git/
    32  * asn: https://gitweb.torproject.org/user/asn/tor.git/
    33  * dgoulet: https://gitweb.torproject.org/user/dgoulet/tor.git/
    34  * isis: https://gitweb.torproject.org/user/isis/tor.git/
    35  * mikeperry: https://gitweb.torproject.org/mikeperry/tor.git/
    36  * nickm: https://gitweb.torproject.org/nickm/tor.git/
    37  * teor: https://github.com/teor2345/tor.git
    38 
    39 == Releases ==
    40 Network team is responsible for Core Tor releases, we aim to have a new release every 6 months.
    41 
    42 Please check our [https://trac.torproject.org/projects/tor/wiki/org/teams/NetworkTeam/ReleaseGuidelines Release Guidelines] for more detailed information on the process.
    43 
    44 === Calendar: ===
    45 
    46 '''Past releases'''
    47 || Release || Maintainer(s) || Merge Window Start || Declared Freeze || Real Freeze || Stable Ready || End Of Life ||
    48 ||= 0.2.4 =|| nickm || ... || ... || ... || Dec 11, 2013 || eol? ||
    49 ||= 0.2.5 =|| nickm || ... || ... || ... || Dec 24, 2014 || eol? ||
    50 ||= 0.2.6 =|| nickm || ... || ... || ... || Mar 24, 2015 || eol? ||
    51 ||= 0.2.7 =|| nickm || ... || ... || ... || Nov 20, 2015 || eol? ||
    52 ||= 0.2.8 =|| nickm || ... || ... || ... || Aug 2, 2016  || eol? ||
    53 
    54 
    55 '''Experimental dates. May change over time.'''
    56 ||= Release =||= Maintainer(s) =||= Merge Window Start =||= Feature Freeze =||= Stable Ready =||
    57 ||= 0.2.9 =|| nickm || ... || Oct 17th, 2016 || Nov 17th, 2016 ||
    58 ||= 0.3.0 =|| nickm || Oct 24th, 2016 || Jan 24th, 2017 || Apr 24th, 2017 ||
    59 ||= 0.3.1 =|| nickm || Jan 31st, 2017 || May 1st, 2017 || Aug 1st, 2017 ||
    60 
    61 == Team rotation calendars ==
    62 === Weekly bug triage rotation ===
    63 '''Duties:'''
    64 
    65  * See the [https://trac.torproject.org/projects/tor/wiki/org/teams/NetworkTeam/BugTriage Bug Triage guide].  It's a work in progress!
    66 
    67 '''Calendar - October:'''
    68 
    69 || Week || who: ||
    70 || 10/03/16 - 10/07/16 || NULL ||
    71 || 10/10/16 - 10/14/16 || asn ||
    72 || 10/17/16 - 10/21/16 || dgoulet ||
    73 || 10/24/16 - 10/28/16 || asn ||
    74 
    75 '''Calendar - November:'''
    76 
    77 || Week || Who ||
    78 || 10/31/16 - 11/04/16 || ||
    79 || 11/07/16 - 11/11/16 || dgoulet ||
    80 || 11/14/16 - 11/18/16 || isis ||
    81 || 11/21/16 - 11/25/16 || dgoulet ||
    82 || 11/28/16 - 12/02/16 || asn ||
    83 
    84 '''Calendar - December:'''
    85 
    86 || Week || Who ||
    87 || 12/05/16 - 12/09/16 || dgoulet ||
    88 || 12/12/16 - 12/16/16 || nickm ||
    89 || 12/19/16 - 12/23/16 || nickm ||
    90 || (last week of December is holiday) || ||
    91 
    92 == Current Team Discussions ==
     83----
     84== More on Network Team ==
     85=== Current Team Discussions: ===
    9386 * [https://storm.torproject.org/shared/4GYhcG-FwuM9_hTrwaUumBh0ScXHjo_UO3mSLbF0JZm Sub-systems maintainers]
    9487 * [wiki:org/teams/NetworkTeam/TeamMeetingTorSummer2016Meeting Team meeting at Tor Summer 2016 Meeting]
    9588
    96 == Resources ==
     89=== Resources: ===
    9790 * [https://storm.torproject.org/shared/W5Yh41XAqRlLVYWpMn34XBN-PTQl89KKSXO8DNgi_34 More information on Network Team.]
    9891 * [wiki:org/teams/NetworkTeam/NetworkTeamProducts Network Team Products]
    9992 * [wiki:NetworkTeamRestrospectiveSummerDev2015 Network team retrospective notes from Summer Dev Meeting 2015].
    10093
    101 == Roadmap ==
     94=== Roadmaps: ===
    10295|| Team || Roadmap ||
    10396|| Core Tor || https://trac.torproject.org/projects/tor/wiki/org/roadmaps/CoreTor ||
    10497|| Onion Services || ||
    105 
    106 == Useful ticket queries ==
    107 Here are the all of the tickets we're planning to fix by version grouped by sponsor.
    108 If you're looking for something to take on in the upcoming month, this is a good query to use.
    109 
    110  * [query:?status=!closed&milestone=Tor%3A+0.2.8.x-final&group=sponsor Open 0.2.8 tickets, grouped by sponsor.]
    111  * [query:?status=!closed&milestone=Tor%3A+0.2.9.x-final&group=sponsor Open 0.2.9 tickets, grouped by sponsor.]
    112  * [query:?status=!closed&milestone=Tor%3A+0.3.0.x-final&group=sponsor Open 0.3.0 tickets, grouped by sponsor.]
    113 
    114 Here are the open tickets for this month, grouped by owner.
    115 If you're looking for something to hack today, here's what you've said you'd do.
    116 If you're looking for something unclaimed, look for the ones with no owner.
    117 
    118  * [query:?status=!closed&keywords=~TorCoreTeam201611&group=owner By owner.]
    119 
    120 Here are needs_(review|revision) tickets for this month, grouped by reviewer.
    121 If you're looking for something to review, here's what you said you'd review.
    122 If you're looking for something unclaimed, look for the ones with no reviewer.
    123 
    124  * [query:?status=needs_review&status=needs_revision&keywords=~TorCoreTeam201611&group=reviewer By reviewer.]
    125 
    126 Here are the 029-proposed tickets that somebody has marked as "possibly suitable for 0.2.9".  Let's triage these in or out.
    127 
    128  * [query:?status=!closed&keywords=~029-proposed 029-proposed tickets.]
    129 
    130 These tickets were in (or close to) needs_review.
    131 Nick will not review any other (non-critical) tickets until all of these have had reviews.:
    132 
    133  * [query:?status=!closed&keywords=~review-group-13&group=status&col=id&col=summary&col=keywords&col=status&col=owner&col=type&col=priority&col=reviewer&order=priority review-group-13 tickets.]
    134 
    135 === November 2016 ===
    136 [[TicketQuery(keywords=~TorCoreTeam201611,status=!closed,format=table,order=changetime,desc=true,col=id|summary|component|status|owner|reviewer|priority|severity|milestone|changetime|sponsor,max=100)]]