Giter Club home page Giter Club logo

erlang-dbus's People

Contributors

christophermlewis avatar dominicletz avatar jeanparpaillon avatar lauramcastro avatar leizhao5 avatar lemenkov avatar mkrentovskiy avatar mpotra avatar norrland avatar saa avatar slashmili avatar tonywallace64 avatar wrachwal avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

erlang-dbus's Issues

status

the project looks interresting but it lacks of a user documentation and/or examples. What is the status about that? Any ETA? Do you have any example I could look at?

Bytestrings (ay)

Hi,

I'm the creator of pydbus, DBus bindings for Python. I've stumbled upon the case of bytestrings - ay - which are commonly used to send non-Unicode data over DBus.

Because of the GDBus's API, apps commonly require these strings to be '\0'-terminated. And that's completely unintuitive for high-level languages, and something that requires the user to read API docs.

I'm thinking about solving the problem automatically, and I see two solutions:

  1. Auto-append and auto-strip the last character of "ay"s; [EDIT: impossible, some APIs use not-terminated strings]
  2. Decree (how?) that GDBus API is wrong, and strings sent over the wire should not be \0-terminated.
  3. [EDIT:] Create a new DBus annotation meaning "All "ay"s in the arguments of this method/signal are \0-terminated bytestrings" - and auto-append/auto-strip \0 if it's present.

Whatever we choose, the solution should be agreed upon by authors of bindings for all languages. That's why I'm here.

Do you have any experience with "ay"-encoded bytestrings?

Relevant discussion: LEW21/pydbus#27 (please reply there, I've opened similar issues in 8 different projects to get attention of bindings authors)

DBus demo needs gen_dbus

Commit b0bde84 'temporarily' disabled the gen_dbus module, rendering the demo example impossible to run. Sadly, renaming gen_dbus.erl.bak to gen_dbus.erl and re-compiling does not help, since at least one macro is missing (HEADER_MEMBER). Even after defining such macro, and fixing some other issues, the furthers one gets when starting the dbus_demo application is to a badarg error on the binary:split/3 call on dbus_auth_cookie_sha1 module (line 24).

Same behaviour is observed by simply starting dbus (dbus:start()) and then running dbus:connect(session).

--- Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/7591469-dbus-demo-needs-gen_dbus?utm_campaign=plugin&utm_content=tracker%2F2587299&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F2587299&utm_medium=issues&utm_source=github).

Release on hex

release it on hex.pm so we can use it as a dependency easily in rebar3 or elixir projects

Attribute name is optional

In introspection XML format, 'name' attribute is optional. But actually, absence of 'name' causes a crash

Broken DBUS_COOKIE_SHA1 auth

DBUS_COOKIE_SHA1 auth is broken

--- Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/32447668-broken-dbus_cookie_sha1-auth?utm_campaign=plugin&utm_content=tracker%2F2587299&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F2587299&utm_medium=issues&utm_source=github).

D-Bus Service_Behaviour

Hi @jeanparpaillon As you said I have opened it as an issue to discuss about proceedings for the project idea of D-Bus Service_Behaviour. Can you please provide me with some information, may be to assign me some bugs as a starting point. Also provide links to the relevant stuff (project specific).
Thanks :)

--- Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/31530021-d-bus-service_behaviour?utm_campaign=plugin&utm_content=tracker%2F2587299&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F2587299&utm_medium=issues&utm_source=github).

make test: example-service.py not started

Executing 'make test' some tests fail due to missing DBUS service 'net.lizenn.dbus.SampleService'

Either the README should state that the following Python script should be started before running 'make test' or the corresponding Makefile rule in file erlang.mk should start/stop the script, eg:

diff --git a/erlang.mk b/erlang.mk
index 98db78b..39ed906 100644
--- a/erlang.mk
+++ b/erlang.mk
@@ -890,7 +890,9 @@ ct:
 else
 ct: test-build
        @mkdir -p logs/
+       ./test/dbus_client_SUITE_data/example-service.py & echo $$! > /tmp/example-service.pid
        $(gen_verbose) $(CT_RUN) -suite $(addsuffix _SUITE,$(CT_SUITES)) $(CT_OPTS)
+       kill `cat /tmp/example-service.pid`
 endif

BTW: even if the example-service is available, I see the following error reports, but the test-report shows 0 failures.

=ERROR REPORT==== 13-Aug-2015::06:55:18 ===
Bad input fd in erts_poll()! fd=18, port=#Port<0.2238>, driver=inert_drv, name=inert_drv

Development environment

Hi. I use mac os x. I can try run dbus on mac, but I don't think that it's good idea. And i think about vagrantfile for dev/tests. What do you think?

dbus_service_reg is simply wrong

If we look at the code for dbus_service_reg:handle_call({export_service,ServiceName}...) we see a call to dbus_bus_reg:export_service(undefined, ServiceName), which then exports to each bus.

The reason we have separate busses in dbus is separation of concerns, to separate system messages from session messages for example. Exporting a service to every bus is simply the wrong thing to do.

A grep of the source shows that dbus_bus_reg:export_service and dbus_bus_reg:unexport service are only called from dbus_service_reg.

I suggest therefore that dbus_service_reg be removed from the repository, its associated start command removed from dbus_sup and export and unexport be removed from dbus_bus_reg.

Tony

disable logging

Hi there,

I have a silly question, how can I disable logging in this project?

Is it possible to add an option to to main app and configure the log level?

dbus_example_client:test/0 does not work

Initially had a call to dbus_dbus:env_to_bus_id/0 which was not exported.'
Tried changing that to dbus_dbus_connection:get_bus_id(session) but then failed at dbus_dbus_reg:get_bus where dbus_bus:init/1 called dbus_connection:start_link which does not exist.


Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

Unable to compile UNIX transport

I am trying to add dbus support to my phoenix app

$ mix deps.compile dbus
WARN:  Missing plugins: [rebar3_hex]
==> dbus (compile)
Compiling src/dbus_transport_unix.erl failed:
src/dbus_transport_unix.erl:15: can't find include lib "procket/include/procket.hrl"
src/dbus_transport_unix.erl:56: undefined macro 'PF_LOCAL'
src/dbus_transport_unix.erl:154: undefined macro 'UNIX_PATH_MAX'
src/dbus_transport_unix.erl:21: function init/1 undefined
ERROR: compile failed while processing /vagrant/deps/dbus: rebar_abort

I've removed src/dbus_transport_unix.erl and it compiles properly.

Erlang/OTP 18 [erts-7.0] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:10] [hipe] [kernel-poll:false]
Elixir 1.2.0

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.