Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Nov 19 10:43
    DeadNumbers closed #468
  • Nov 14 21:56

    kpp on update_deps

    (compare)

  • Nov 14 21:56

    kpp on master

    chore(deps): update lru chore(deps): update clap chore(node): validate motd len and 7 more (compare)

  • Nov 14 21:56
    kpp closed #467
  • Nov 14 19:11
    kurnevsky commented #468
  • Nov 13 11:40
    DeadNumbers opened #468
  • Nov 12 20:48
    kpp edited #467
  • Nov 12 20:19
    coveralls commented #467
  • Nov 12 20:14
    kpp synchronize #467
  • Nov 12 20:14

    kpp on update_deps

    fix(node): exclude syslog from … (compare)

  • Nov 12 20:04
    coveralls commented #467
  • Nov 12 19:58
    kpp synchronize #467
  • Nov 12 19:58

    kpp on update_deps

    chore(rustc): bump MSRV (compare)

  • Nov 12 09:56
    kpp synchronize #467
  • Nov 12 09:56

    kpp on update_deps

    chore(rustc): bump MSRV (compare)

  • Nov 12 01:28
    coveralls commented #467
  • Nov 12 01:23
    kpp edited #467
  • Nov 12 01:22
    kpp synchronize #467
  • Nov 12 01:22

    kpp on update_deps

    chore(node): get rid of regex i… (compare)

  • Nov 12 01:04
    coveralls commented #467
Сухарик
@suhr

Do you do it all on enthusiasm? :)

Not only, but this kind of project cannot survive without enthusiasm.

If you are familiar with C++, rust shouldn't be that hard to you.
There's a lot of similar concepts.
Sergey Tolmachev
@Tolsi
So, do you already have messaging and voice calls in the library?
And what is the "onion client" from the examples? Is there support for Tor?
Сухарик
@suhr
It's a lower level part of the tox protocol. It uses onion routing to separate your ToxID from DHT ID.
Sergey Tolmachev
@Tolsi
oh, ok
Сухарик
@suhr
Basically, this part allows to avoid tracking of your activities by tox id.
Sergey Tolmachev
@Tolsi
It would be fantastic to have a Tox client library to tell it to "connect", subscribe to incoming events and send it outgoing.
With high level events
Сухарик
@suhr
There seem to be alive bindings in the TokTok project.
There are also rust bindings we are using for the web client right now.
Note that rstox is somewhat messy and we are going to replace it with tox-rs.
*bindings to c-toxcore
Сухарик
@suhr
Hm, seems I was too optimistic about “alive bindings”...
Sergey Tolmachev
@Tolsi
Looks like the current clients like Toxic have the valid client code and it can be reused https://github.com/JFreegman/toxic/tree/master/src
I have not researched this question deeply
I do not know how much such a client is in demand in principle. And how much time I am willing to devote to it. I love the ideas of decentralization and anonymity, but I spend a lot of time on development at work and I'm a little tired.
Roman
@kpp
@Tolsi take a look at https://github.com/tox-rs/tox/blob/friends/examples/echo.rs. Not that pretty but it works
We want to create both a simple API and a nice UI. Rust can be easily compiled into .wasm. So it's not an issue, just a matter of time

Do you do it all on enthusiasm? :)

No we didn't. But things changed.

Roman
@kpp
@kurnevsky pls update tox-node in AUR and put down some notes how to build it
@suhr same for nix
Сухарик
@suhr
Evgeny Kurnevsky
@kurnevsky
For aur there is no standard way to build packages. Usually they just add link to the package and wiki https://wiki.archlinux.org/index.php/Arch_User_Repository#Installing_packages
Roman
@kpp
Thanks
Evgeny Kurnevsky
@kurnevsky
It's fine - makepkg automatically updates this version to the latest commit when building the package.
pkgver() {
  cd "$pkgname"
  git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g'
}
Evgeny Kurnevsky
@kurnevsky
Though arch wiki doesn't say anything about when I should or should not update this version...
So updated.
Roman
@kpp
Thanks
Roman
@kpp
@NamsooCho please try to push our tox-node image to https://docs.docker.com/docker-hub/official_images/#creating-an-official-image
Cho
@NamsooCho
Ok
Cho
@NamsooCho
    pub fn spawn(self, dht_sk: SecretKey, dht_pk: PublicKey) -> impl Future<Item = (), Error = SpawnError> + Send { // TODO: send pings periodically
        future::lazy(move || {
            let relay_pk = self.pk;
            let self_c = self.clone();

            match *self.status.write() {
                ref mut status @ ClientStatus::Disconnected
                | ref mut status @ ClientStatus::Sleeping => *status = ClientStatus::Connecting,
                _ => return future::ok(()),
            }

            let future = TcpStream::connect(&self.addr)
                .and_then(move |socket| make_client_handshake(socket, &dht_pk, &dht_sk, &relay_pk)) // TODO: timeout
                .and_then(move |(socket, channel)| {
                    let stats = Stats::new();
                    let secure_socket = Framed::new(socket, Codec::new(channel, stats));
make_client_handshake(socket, &dht_pk, &dht_sk, &relay_pk) return with error type of std::io::Error.
I don’t want to change the return error type of make_client_handshake.
What is the most sound way to match these types.
spawn returns with error type of SpawnError.
Cho
@NamsooCho
I’d change it to e.context(Kind::enumKind).into().
Cho
@NamsooCho
But it fails to compile, so I will use imp From<IoError> for SpwanError.
Roman
@kpp

I don’t want to change the return error type of make_client_handshake.

why not?

Cho
@NamsooCho
Not changing is for temporary. Including it would be a big PR.
Evgeny Kurnevsky
@kurnevsky
@NamsooCho why do you need it at all?
You can first make a pr that changes this type and then do something else.
Cho
@NamsooCho
@kurnevsky I am adopting error_kind! macro to tcp client.
This issue is assigned to me.
Evgeny Kurnevsky
@kurnevsky

I will use imp From<IoError> for SpwanError.

Better convert it explicitly.