Custom Query (26254 matches)


Show under each result:

Results (25 - 27 of 26254)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
Ticket Resolution Summary Owner Reporter
#25639 wontfix think about Rust crate boundaries Hello71 Hello71


  • simpler is better
  • makes testing Rust a lot easier, otherwise there are problems with dependencies. see #25386 for more details
  • makes it easier for newbies. I was certainly very confused as to why each crate only has a single real file.


  • I discussed this on IRC with Sebastian, since it looks like he was the one who started splitting them up in the first place. he said he doesn't remember exactly why, but possibly it had something to do with a plan to swap in and out each crate individually, or possibly something to do with technical reasons regarding allocation or some such thing. I can't find anything regarding the latter, and I'm not convinced that the former is actually helpful.

therefore, if nobody has any objections, I propose moving all the Rust code into one crate. I asked on IRC, and somebody said that a ticket is better than mailing list, but I'm happy to copy and paste this into an email if that's better.

setting priority High since this blocks fixing #25386 with asan (unless anybody can think of better ways to do that), and that blocks proper Rust development.

#25895 fixed Cross-compiling tor rust for Windows is broken Hello71 gk

I managed to cross-compile at least a rust compiler for 64bit Windows but tor is not prepared for that:

x86_64-w64-mingw32-gcc  -mwindows -fstack-protector-all -Wstack-protector --param ssp-buffer-size=4 -fno-strict-overflow -Wno-missing-field-initializers -Wformat -Wformat-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-all -Wstack-protector --param ssp-buffer-size=1 -fasynchronous-unwind-tables -Wall -fno-strict-aliasing -Waddress -Warray-bounds -Wdate-time -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wignored-attributes -Winit-self -Wlogical-op -Wmissing-field-initializers -Wmissing-format-attribute -Wmissing-noreturn -Wnormalized=nfkc -Wnull-dereference -Woverlength-strings -Woverride-init -Wshadow -Wshift-count-negative -Wshift-count-overflow -Wshift-negative-value -Wshift-overflow=2 -Wsizeof-array-argument -Wstrict-overflow=1 -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wswitch-bool -Wsync-nand -Wtrampolines -Wunused-but-set-parameter -Wunused-but-set-variable -Wunused-const-variable=2 -Wunused-local-typedefs -Wvariadic-macros -W -Wfloat-equal -Wundef -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wwrite-strings -Wredundant-decls -Wchar-subscripts -Wcomment -Wformat=2 -Wwrite-strings -Wnested-externs -Wbad-function-cast -Wswitch-enum -Waggregate-return -Wpacked -Wunused -Wunused-parameter  -Wold-style-definition -Wmissing-declarations  -mwindows -Wl,--dynamicbase -Wl,--nxcompat -Wl,--enable-reloc-section -lssp -L/var/tmp/dist/mingw-w64/gcclibs -Wl,--nxcompat -Wl,--dynamicbase -o src/tools/tor-resolve.exe src/tools/tor-resolve.o src/common/libor.a src/common/libor-ctime.a ./src/rust/target/release/tor_rust.lib  -lws2_32 -luserenv  
x86_64-w64-mingw32-gcc: error: ./src/rust/target/release/tor_rust.lib: No such file or directory

We don't want to have a *lib file I think. What we get instead when cross-compiling (libtor_rust.a) looks actually promising.

#26038 worksforme Misc Rust/Cargo improvements (incl. use global cargo cache) Hello71 Hello71

for discussion (since nobody cared on #tor-dev): should we use the global cargo cache? I think most C+Rust projects still use the global cache. I tried searching GitHub ( I found that tor is the only project that does not. for users who do not care, using the global cache will save download time and bandwidth on repeat builds, and for those who do care, my patch prints a warning so they will know. (maybe it should be downgraded to NOTICE?)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
Note: See TracQuery for help on using queries.