[tor-bugs] #22106 [Core Tor/Tor]: Initial Rust support

Tor Bug Tracker & Wiki blackhole at torproject.org
Mon May 1 14:24:20 UTC 2017


#22106: Initial Rust support
--------------------------+------------------------------------
 Reporter:  Sebastian     |          Owner:
     Type:  defect        |         Status:  needs_revision
 Priority:  Medium        |      Milestone:  Tor: 0.3.2.x-final
Component:  Core Tor/Tor  |        Version:
 Severity:  Normal        |     Resolution:
 Keywords:                |  Actual Points:
Parent ID:                |         Points:
 Reviewer:                |        Sponsor:
--------------------------+------------------------------------

Comment (by Sebastian):

 Replying to [comment:8 teor]:
 > Replying to [comment:7 Sebastian]:
 > > > I think it's ok to expect people to install rust's libc: we already
 do this with libevent and {open,libre,*}SSL. They'll have to install rust,
 so installing libc is a reasonable ask.
 > >
 > > I don't know what you mean with install rust'c libc. It's a crate that
 needs to be available during building, not a dynamic library you can link
 to or something. The crate provides bindings for different host libc
 implementations.
 >
 > Oh, ok, then yes, a local crates mirror seems sensible.
 > And a make target to set it up. I can't quite work out how to do it!

 There's a subcommand for cargo called vendor (not installed automatically)
 that can do that. I can add a make target for it once we decided which of
 the options for mirroring we're taking.

 > > > Specific commits:
 > > >
 > > > 9a96733a2dab56342d6b3de1f2c2915429b21725
 > > >
 > > > Should we run the following rust tests during make check?
 > > > * tiny_keccak (yes, if we include it in ext)
 > > > * libc (no, but we might want to run it on platforms with poor rust
 support, so let's say that in the instructions)
 > >
 > > often, crates have more dependencies for running their tests or might
 even require an unstable version of the compiler to run them. Maybe we
 should add a new make target to run tests for rust dependencies?
 >
 > Seems like a good idea.
 >
 > Is there a linter (?) or style checker (make check-spaces) that we might
 want to run?

 There's both, clippy (a linter, requires Rust nightly) and rustfmt. Not
 yet sure how to best integrate them. Both are rapidly evolving.

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/22106#comment:9>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list