Commit Graph

288 Commits

Author SHA1 Message Date
Nick Mathewson
469051f650 Copy architectural documentation from tor-guts.git repository
I started this repository a while ago to work on documentation for
Tor's internals.  It needs substantial revision, but first, let's
get it copied into Tor's repository.

These files are copied, "warts and all", from the tor-guts.git repo,
commit de1e34259178b09861c0dea319c760fa80d0099a.

Part of 31819.
2019-09-24 19:26:04 -04:00
Antoine Veuiller
3bf90e704c doc(hacking): update = to # on sections 2019-08-21 16:22:37 +02:00
Antoine Veuiller
0d6c8eed49 doc(hacking): enhance markdown style 2019-08-21 16:22:08 +02:00
Nick Mathewson
4313f1cce8 Merge branch 'ticket28453_v2' into ticket28453_v2_merged 2019-06-11 10:22:37 -04:00
Nick Mathewson
765e4364d9 Merge remote-tracking branch 'tor-github/pr/1064' into maint-0.4.1 2019-06-10 09:37:17 -04:00
Nick Mathewson
4ceec4760c change some CI-substitute logic 2019-06-05 15:38:25 -04:00
rl1987
5d4b4f948a Mention Travis/Appveyor/Jenkins URLs in ReleasingTor.md 2019-05-31 09:35:19 +03:00
Nick Mathewson
d41427b054 A couple of suggestions from dgoulet on EndOfLife.md 2019-05-30 09:07:45 -04:00
Nick Mathewson
3ba2e04ee7 Minor tweaks on EOL process
First, clarify that this is for planned deprecations, not
security-related issues.

Second, we actually _don't_ want to remove the versions from the
approved list before the EOL date, or people will start getting
warnings too early.
2019-05-30 09:05:35 -04:00
teor
6263d9e13f doc: Add End of Life Tor instructions
Closes 28453.
2019-05-30 09:02:13 -04:00
teor
c390f1dd7e doc: Add a new Travis CI cron job when there's a new maint branch
Part of 28453.
2019-05-30 09:02:13 -04:00
Nick Mathewson
d20cfc00ce Note how to update the new website in the ReleasingTor.md instructions 2019-05-03 08:51:28 -04:00
teor
ac5753d3ca
Coding Standards: Document how to find git commits
Document how to find git commits and tags for bug fixes in
CodingStandards.md.

And update some changes file documentation.

Closes ticket 30261.
2019-04-23 10:03:18 +10:00
Elichai Turkel
0ebe290198 Removed the use of expect from CodingStandardsRust 2019-04-03 08:32:10 -04:00
Nick Mathewson
e2512950b6 Improve failure message from check-best-practices 2019-03-13 09:27:29 -04:00
Roger Dingledine
5dcd44cbe2 fix some of the typos in Maintaining.md 2019-02-17 16:55:55 -05:00
Nick Mathewson
b915b6cd21 Merge remote-tracking branch 'github/prop297' 2018-12-11 09:44:57 -05:00
Nick Mathewson
1f6d7bc4af Update ReleasingTor.md to reflect current practice
See #28479.
2018-12-05 07:58:53 -05:00
Nick Mathewson
b16d6453ad Rewrite updateVersions script in Python, add datestamp functionality.
This updateVersions.pl script was one of the only essential perl
scripts left in out maint system, and was the only one that used
autoconf to fill in the script.

This script adds a feature to define an APPROX_RELEASE_DATE macro
that is updated when the version changes.  We'll use this to
implement prop297, so that we have an accurate view of when a
release date happens.
2018-11-24 20:44:37 -05:00
Nick Mathewson
ed8a853bd8 Merge branch 'ticket28225_036_01_squashed' 2018-10-29 16:30:44 -04:00
David Goulet
91748cd17c doc: Add Maintaining.md documentation
Closes #28225

Signed-off-by: David Goulet <dgoulet@torproject.org>
2018-10-29 16:30:34 -04:00
teor
b0c456e578
doc: Use `` for commands and "" for quotes in ReleasingTor.md 2018-10-29 13:49:47 +10:00
teor
fe89d9df69
doc: Spell make test-network-all correctly in ReleasingTor.md
Closes ticket 28821.
2018-10-29 13:47:43 +10:00
rl1987
d49133d9ca Mention that we require Python 2.7 or newer 2018-09-24 11:25:33 -04:00
Nick Mathewson
c8aecd14fe Merge branch 'pr275_squashed' 2018-08-16 08:43:05 -04:00
cypherpunks
fef2ba2267 rust/docs: fix critical typo for missing_docs lint
Fix typo from fe66d06a45.
The exclamation point is what lets an attribute apply to
an entire crate, without the ! it's practically a placebo.

Fix on commits af182d4ab5 and
b6059297d7, and note there are
still missing docs in both crypto and protover, for now.

https://doc.rust-lang.org/reference/attributes.html
2018-08-16 08:42:57 -04:00
Nick Mathewson
a7ea639f12 Merge branch 'maint-0.3.4' 2018-08-16 08:35:31 -04:00
Nick Mathewson
2deee972a3 Merge branch 'maint-0.3.3' into maint-0.3.4 2018-08-16 08:35:31 -04:00
Nick Mathewson
4847e22168 Merge branch 'maint-0.3.2' into maint-0.3.3 2018-08-16 08:35:27 -04:00
teor
db3414dd51
Rust: Say that we support rust stable in GettingStartedRust.md
In 24765, we said that we supported rust stable in CodingStandardsRust.md.
But we left GettingStartedRust.md saying that we support rust nightly.

Closes 27160.
2018-08-16 18:58:47 +10:00
teor
62ecb5e88f
doc: Document Appveyor and Jenkins in doc/HACKING/HelpfulTools.md
Closes 26852.
2018-07-18 12:11:08 +10:00
Roger Dingledine
baff5e2b9d Faravahar hasn't been voting on versions for a while now 2018-07-13 16:58:46 -04:00
Nick Mathewson
4793d91350 Describe "check-includes" in the CodingStandards.md file 2018-07-10 11:09:25 -04:00
Nick Mathewson
fa2d53aa6a Stop mentioning src/or and src/common in doc/HACKING 2018-07-10 11:03:45 -04:00
Nick Mathewson
23dc770f87 Add an initial CodeStructure.md file to doc/HACKING.
Not complete or pretty, but better than nothing.
2018-07-10 11:01:09 -04:00
Nick Mathewson
f720a5a439 Fix everything that previously referred to src/or 2018-07-05 17:15:50 -04:00
Nick Mathewson
81cb0afb2b Start splitting src/or
This is a very gentle commit that just lays the groundwork in the
build system: it puts the include files to build libtor-app.a into
src/core, and to build the tor executable into src/app.  The
executable is now "src/app/tor".
2018-07-05 17:15:50 -04:00
Nick Mathewson
9fa73003fc Remove dmalloc support; closes #26426
Dmalloc hasn't seen a release in over a decade, and there are much
better tools to use these days.
2018-06-20 10:21:34 -04:00
Nick Mathewson
9af6c48d24 remove EOL@EOF advice 2018-06-18 16:18:44 -04:00
juga0
cc09ff253e Add explanation about editorconf in coding standards
so that developers know what is .editorconfig for.
2018-06-11 21:29:40 +00:00
Nick Mathewson
f7949a440f Add a CONTRIBUTING file
This file contains pointers to other important top-level resources,
and some info about acceptable licenses.  Also, add that info to
CodingStandards.md
2018-05-11 13:19:37 -04:00
Alex Xu (Hello71)
2a3998a2e8 Add Travis CI instructions. fixes #23883 2018-05-08 09:12:46 -04:00
David Goulet
e12d4286bf doc: Add Module.md explaining Tor modules
Initial document that contains guidelines to write a new module in Tor.

Closes #25991

Signed-off-by: David Goulet <dgoulet@torproject.org>
2018-05-03 11:39:19 -04:00
Nick Mathewson
def2404083 typo fix in doc/HACKING/ReleasingTor 2018-03-29 11:08:09 -04:00
Nick Mathewson
a3c1d78c29 Merge branch 'maint-0.3.3' 2018-03-28 08:11:46 -04:00
Georg Koppen
684aef40f9 Bug 25664: Update libc version requirement for Rust
When merging the patches for #25310 the libc version requirement in
`GettingStartedRust.md` and `configure.ac` did not get updated to the
now needed 0.2.39.
2018-03-28 08:07:27 -04:00
Nick Mathewson
03e787e220 Merge branch 'maint-0.3.3' 2018-03-21 17:05:42 -04:00
Isis Lovecruft
9799394375 maint: Add script for vendoring/updating Rust dependencies.
* ADD documentation for usage both inside the script and in
   doc/HACKING/CodingStandardsRust.md
 * FIXES part of #25310: https://bugs.torproject.org/25310
2018-03-21 17:04:28 -04:00
Isis Lovecruft
f9ccb2543d doc: Document our current rough-draft policy on Rust dependencies.
* FIXES #25310: https://bugs.torproject.org/25310
2018-03-21 17:04:04 -04:00
Nick Mathewson
cae7387ef2 Merge branch 'maint-0.3.3' 2018-03-20 07:59:13 -04:00
Nick Mathewson
74c767af29 Note that we require latest stable rust. 2018-03-20 07:58:29 -04:00
teor
01a977b492
Update the primitive types explanation in the Rust coding standards
Part of #25368.
Includes c_double in anticipation of #23061.
2018-02-27 15:55:13 +11:00
Nick Mathewson
d489e4847b Fix a variable name in tor-rust-dependencies 2018-02-21 11:55:25 -05:00
Nick Mathewson
d2bdb54d37 Wrap GettingStartedRust.md to 72 columns. 2018-02-21 11:55:07 -05:00
Deepesh Pathak
ca6682f3f8 Fix spelling mistakes corresponding to ticket #23650 2018-02-07 10:41:57 -05:00
Nick Mathewson
03ab24b44c Make more notes about important stuff in ReleasingTor.md 2018-01-26 14:39:08 -05:00
Nick Mathewson
73e5be5619 ReleasingTor.md: check for recommendation, listing on dl page
Closes ticket 23118.
2018-01-26 14:34:25 -05:00
teor
7b59199663
Fix a typo in CodingStandards.md
Closes #24596.
2017-12-12 12:32:50 +11:00
Nick Mathewson
5ee0cccd49 Merge branch 'macro_free_v2_squashed' 2017-12-08 14:58:43 -05:00
Nick Mathewson
7ca5f4bf03 document our allocator conventions 2017-12-08 14:47:19 -05:00
Isis Lovecruft
bb4993395c
doc: Document how to build with Rust dependencies in offline-mode.
* CLOSES #22907: https://bugs.torproject.org/22907
2017-11-28 22:39:55 +00:00
Alexander Færøy
251983eb8e
Add initial instructions on using Simpleperf for Android CPU profiling.
See: https://bugs.torproject.org/24062
2017-11-20 17:42:51 +01:00
Nick Mathewson
ebcd1a57c0 Note in the rust doc that these comments are bidirectional 2017-11-13 10:04:40 -05:00
Nick Mathewson
edf3d6b7ee Merge remote-tracking branch 'chelseakomlo/24032-cargo-rust-sync' 2017-11-13 09:59:10 -05:00
Chelsea Holland Komlo
05662f35ea update rust getting started for new build 2017-11-13 09:55:29 -05:00
Chelsea Holland Komlo
1c50331b9a annotate where C and Rust need to stay in sync 2017-11-11 23:19:34 -05:00
Nick Mathewson
2ed4a3e61e new email address for yuri; close 24241 2017-11-11 12:47:13 -05:00
David Goulet
dfe03a55fc doc: Add fedora packager point of contact
This is a link to the user page on the Fedora project website:

https://koji.fedoraproject.org/koji/userinfo?userID=2234

Fixes #24015

Signed-off-by: David Goulet <dgoulet@torproject.org>
2017-10-26 10:07:56 -04:00
Nick Mathewson
bc6769e0d4 Merge remote-tracking branch 'catalyst-oniongit/bug23739' 2017-10-03 09:04:21 -04:00
Taylor Yu
6a2a49e661 Improve docs on using gcov
Add more explanation in doc/HACKING about how to read gcov output,
including a reference to the gcov documentation in the GCC manual.
Also add details about how our postprocessing scripts modify gcov
output.
2017-10-03 07:45:36 -05:00
Nick Mathewson
7bc85d8204 Merge remote-tracking branch 'isis/bug23695' 2017-10-03 08:03:22 -04:00
Isis Lovecruft
40f1287978
doc: Add a good resource for learning to write Rust FFI. 2017-09-29 01:04:18 +00:00
Nick Mathewson
cbea334d6b Mention even more about changes files in doc/HACKING 2017-09-22 15:14:36 -04:00
Nick Mathewson
2032d7ca6f Update CodingStandards.md for changes-file stuff
'check-changes' is now part of "make check", and must pass.
2017-09-21 16:39:49 -04:00
Nick Mathewson
3c9ff0af96 small tweaks to releasingtor.md 2017-09-18 14:49:06 -04:00
Nick Mathewson
faf1242bed add frebsd ports maintainer to releasingtor list 2017-09-17 20:32:27 -04:00
Martin Kepplinger
8d913cc352 doc: make introduction paragraph point to correct data
doc/HACKING/GettingStarted.md says "you might like reading doc/HACKING",
which the reader obviously is already doing. Instead point to the "torguts"
documents that are mentioned a few lines below too.
2017-09-15 08:18:37 -04:00
Taylor Yu
55fef0534d Add guidelines for floating point use 2017-09-08 12:15:41 -05:00
David Goulet
2080a986ed
doc: Add our Ubuntu packager to ReleasingTor.md
His full name is: Simon Deziel.

Signed-off-by: David Goulet <dgoulet@torproject.org>
2017-09-07 12:35:31 -04:00
Nick Mathewson
8421756da3 Talk about assertions in CodingStandards.md 2017-09-07 09:37:39 -04:00
Nick Mathewson
babe31fc7c Not all invizbox people have the same TLD... :/ 2017-09-05 10:43:31 -04:00
Nick Mathewson
a229d6c2f8 Merge branch 'bug22818_squashed' 2017-09-04 11:44:56 -04:00
Isis Lovecruft
1645c5503d docs: Add notes on behaviours which Rust considers undefined. 2017-09-04 11:44:48 -04:00
Isis Lovecruft
12cf04646c docs: More Rust coding standards, based on without boats' comments. 2017-09-04 11:44:48 -04:00
Isis Lovecruft
aeef8a093f
docs: More Rust coding standards w.r.t. fuzzing and safety. 2017-08-30 21:54:41 +00:00
Isis Lovecruft
f9dc514e8f
docs: Clarify some portions of the Rust coding standards.
* THANKS TO Henry de Valence for review.
2017-08-30 21:38:13 +00:00
Isis Lovecruft
fe66d06a45
docs: Document coding standards, build instructions, etc. for Rust code.
* FIXES #22818
2017-08-29 23:25:02 +00:00
Nick Mathewson
cbfc50d485 add another invizbox maintainer to ReleasingTor.md 2017-08-24 16:20:26 -04:00
Nick Mathewson
18115b5aa9 Document some operators usage conventions. 2017-08-01 10:50:52 -04:00
Matt Traudt
d730449ba2 Add more details about git branch use in tor 2017-07-10 14:02:11 -04:00
Nick Mathewson
9e317641f9 impact -> affect 2017-07-10 10:03:45 -04:00
Chelsea H. Komlo
934f85f87a
specify when to run make distcheck 2017-07-09 16:17:21 -04:00
Chelsea H. Komlo
24d29c7ae0
make check is required for all code submissions
integration tests should be run for feature changes/major patches
2017-06-28 20:40:15 -04:00
Nick Mathewson
80ad374b84 Remove old callgraph scripts; recommend calltool instead. 2017-06-14 17:44:15 -04:00
Nick Mathewson
1405bdebb0 Update releasing-tor to reflect current versions and tooling
(Note that a lot of the removed guidance is stuff that the tools
will do automatically.)
2017-05-26 10:01:04 -04:00
Nick Mathewson
6bf82a4910 More clarification on 13802 2017-04-25 10:40:30 -04:00
David Goulet
cb8ac1f331 trace: Add a basic event-tracing infrastructure.
This commit adds the src/trace directory containing the basics for our tracing
subsystem. It is not used in the code base. The "src/trace/debug.h" file
contains an example on how we can map our tor trace events to log_debug().

The tracing subsystem can only be enabled by tracing framework at compile
time. This commit introduces the "--enable-tracing-debug" option that will
make all "tor_trace()" function be maped to "log_debug()".

Closes #13802

Signed-off-by: David Goulet <dgoulet@torproject.org>
2017-04-25 10:37:31 -04:00
Sebastian Hahn
2c001b483b Add a release checklist step to highlight changes
In an effort to better communicate with our users that they might need
to take certain actions when upgrading, we should extract from the
changelog the items that require some action (example: the new version
automatically generates keys, if you want them to be offline - make sure
to create them before upgrading).
2017-04-03 16:11:52 +02:00
Nick Mathewson
99ec44de45 Merge remote-tracking branch 'chelseakomlo/documentation_integ_tests' 2017-03-14 11:32:53 -04:00
Nick Mathewson
4d3310932a Small fixes to fuzzing documentation. 2017-02-24 10:57:58 -05:00