From Fedora Project Wiki
(Updated rabbitmq status)
(Updated erlang-riak_client status)
(7 intermediate revisions by the same user not shown)
Line 29: Line 29:
|-
|-
| '''Name''' || '''EL-4''' || '''EL-5''' || '''EL-6''' || '''F-13''' || '''F-14''' || '''Rawhide'''
| '''Name''' || '''EL-4''' || '''EL-5''' || '''EL-6''' || '''F-13''' || '''F-14''' || '''Rawhide'''
|-
| {{package|erlang-basho_stats|basho_stats}} || - || - || wip || - || wip || {{yes|1.0.1}}
|-
|-
| {{package|compat-erlang}} || - || - || - || {{yes|R10B-10}} || {{yes|R10B-10}} || {{yes|R10B-10}}
| {{package|compat-erlang}} || - || - || - || {{yes|R10B-10}} || {{yes|R10B-10}} || {{yes|R10B-10}}
Line 44: Line 46:
| {{package|erlang-amf}} || {{no|-}} || {{yes|0.git27329144}} || {{yes|0.git27329144}} || {{yes|0.git27329144}} || {{yes|0.git27329144}} || {{yes|0.git27329144}}
| {{package|erlang-amf}} || {{no|-}} || {{yes|0.git27329144}} || {{yes|0.git27329144}} || {{yes|0.git27329144}} || {{yes|0.git27329144}} || {{yes|0.git27329144}}
|-
|-
| {{package|erlang-cluster_info}} || {{no|-}}<ref>requires erlang:get_stacktrace/0</ref>  ||  -  || wip || - || wip || {{yes|0.1.0}}
| {{package|erlang-cluster_info}} || {{no|-}}<ref>requires erlang:get_stacktrace/0</ref>  ||  -  || {{yes|0.1.0}} || - || {{yes|0.1.0}} || {{yes|0.1.0}}
|-
|-
| {{package|erlang-erlsyslog}} || {{yes|0.1}} || {{yes|0.1}} || {{yes|0.1}} || {{yes|0.1}} || {{yes|0.1}} || {{yes|0.1}}
| {{package|erlang-erlsyslog}} || {{yes|0.1}} || {{yes|0.1}} || {{yes|0.1}} || {{yes|0.1}} || {{yes|0.1}} || {{yes|0.1}}
Line 52: Line 54:
| {{package|erlang-getopt}} || {{no|-}}<ref>No lists:keymember/3, lists:keysearch/3 and string:to_lower/1 functions available in R11B</ref> || {{yes|0.3}} || {{yes|0.3}} || {{yes|0.3}} || {{yes|0.3}} || {{yes|0.3}}
| {{package|erlang-getopt}} || {{no|-}}<ref>No lists:keymember/3, lists:keysearch/3 and string:to_lower/1 functions available in R11B</ref> || {{yes|0.3}} || {{yes|0.3}} || {{yes|0.3}} || {{yes|0.3}} || {{yes|0.3}}
|-
|-
| {{package|erlang-js}} || {{no|-}} || {{no|-}} || wip || - || wip || {{yes|0.5.0}}
| {{package|erlang-js}} || {{no|-}} || {{no|-}} || {{yes|0.5.0}} || - || {{yes|0.5.0}} || {{yes|0.5.0}}
|-
|-
| {{package|erlang-oauth}} || {{no|-}}<ref>No public_key module and base64:decode/1, base64:encode_to_string/1, httpc:request/4, re:split/3 and string:to_lower/1 functions available in R11B</ref> || {{yes|1.0.1}} || {{yes|1.0.1}} || {{yes|1.0.1}} || {{yes|1.0.1}} || {{yes|1.0.1}}
| {{package|erlang-oauth}} || {{no|-}}<ref>No public_key module and base64:decode/1, base64:encode_to_string/1, httpc:request/4, re:split/3 and string:to_lower/1 functions available in R11B</ref> || {{yes|1.0.1}} || {{yes|1.0.1}} || {{yes|1.0.1}} || {{yes|1.0.1}} || {{yes|1.0.1}}
Line 94: Line 96:
| {{package|erlang-rebar|rebar}} || {{no|-}} || {{no|-}} || {{yes|2}} || - || {{yes|2}} || {{yes|2}}
| {{package|erlang-rebar|rebar}} || {{no|-}} || {{no|-}} || {{yes|2}} || - || {{yes|2}} || {{yes|2}}
|-
|-
| {{package|erlang-riak_err|riak_err}} || - || - || {{yes|1.0.0}} || - || {{yes|1.0.0}} || {{yes|1.0.0}}
| {{package|erlang-riak_client|riak_client}} || - || - || {{yes|1.1.0}} || - || {{yes|1.1.0}} || {{yes|1.1.0}}
|-
| {{package|erlang-riak_err|riak_err}} || - || - || {{yes|1.0.1}} || - || {{yes|1.0.1}} || {{yes|1.0.1}}
|-
|-
| {{package|erlang-webmachine|webmachine}} || {{no|-}} || - || {{yes|1.8.0}} || - || {{yes|1.8.0}} || {{yes|1.8.0}}  
| {{package|erlang-webmachine|webmachine}} || {{no|-}} || - || {{yes|1.8.0}} || - || {{yes|1.8.0}} || {{yes|1.8.0}}  
Line 111: Line 115:
* [https://bugzilla.redhat.com/543151 exmpp] - a fast and scalable library for the eXtensible Messaging and Presence Protocol.
* [https://bugzilla.redhat.com/543151 exmpp] - a fast and scalable library for the eXtensible Messaging and Presence Protocol.
* [https://bugzilla.redhat.com/639292 erlang-etorrent] - Erlang BitTorrent client and library
* [https://bugzilla.redhat.com/639292 erlang-etorrent] - Erlang BitTorrent client and library
* [https://bugzilla.redhat.com/652543 erlang-riak_client] - Erlang client for Riak
* [https://bugzilla.redhat.com/652598 erlang-riak_core] - Distributed systems infrastructure used by Riak
* [https://bugzilla.redhat.com/652598 erlang-riak_core] - Distributed systems infrastructure used by Riak
* [https://bugzilla.redhat.com/652623 erlang-bitcask] - Eric Brewer-inspired key/value store
* [https://bugzilla.redhat.com/652623 erlang-bitcask] - Eric Brewer-inspired key/value store
Line 122: Line 125:
* [http://erlyweb.org/ erlyweb]
* [http://erlyweb.org/ erlyweb]
* [http://www.stacken.kth.se/project/yxa/ Yxa]
* [http://www.stacken.kth.se/project/yxa/ Yxa]
* [http://github.com/ngerakines/erlang_mysql erlang-mysql-driver] - A native Erlang MySQL client library. One of the runtime dependencies for ejabberd. Please, not that there are two forks - [http://svn.process-one.net/ejabberd-modules/mysql/trunk one from P1] and another one from [http://erlang-mysql-driver.googlecode.com/svn/trunk Yariv Sadan]. All these three projects are based on the original work by Magnus Ahltorp.
* [http://github.com/ngerakines/erlang_mysql erlang-mysql-driver] - A native Erlang MySQL client library. One of the runtime dependencies for ejabberd. Please, not that there are two forks - [http://svn.process-one.net/ejabberd-modules/mysql/trunk one from P1] and another one from [http://erlang-mysql-driver.googlecode.com/svn/trunk Yariv Sadan]. All these three projects are based on the original work by Magnus Ahltorp. Read [http://www.eonblast.com/blog/erlang-mysql-driver-history/ this post] for further  details.
* [http://jungerl.sourceforge.net/ Jungerl] is also contains some very interesting libraries and applications, however not all of them are in good shape.
* [http://jungerl.sourceforge.net/ Jungerl] is also contains some very interesting libraries and applications, however not all of them are in good shape.
* [http://trapexit.org/Special:UserContributions User contributions page] at trapexit contains some handy user-submitted utilities.
* [http://trapexit.org/Special:UserContributions User contributions page] at trapexit contains some handy user-submitted utilities.

Revision as of 14:10, 6 April 2011

Erlang Special Interest Group

Mission

To encourage the packaging of Erlang projects in Fedora.

Members/Packagers/Reviewers

Please add your name above if you want to help.

Tasks

  • Create common guidelines for erlang-related applications and libraries
  • Ensure that all packages are built with +debug_info (slightly increase the size of beam-files, but won't hurt performance at all)
  • Allow parallel installation of packages (similar to kernel)
  • Provide pre-built plt images
  • Narrow Build Requires - only list packages which are required for building and not the whole erlang stack.
  • Remove "soft" dependencies. Some package dependencies are not strictly required - application tries to "dlopen" it (it starts to use it only in case of success; in case of failure it fallbacks to some default scenario). Notable one is a debugger which tries to download GUI interface and fallbacks to cli in case of failure.
  • Fix installation of jinterface - it doesn't use %{_javadir} for storing jar-file now.
  • All man-pages should be marked as docs. Consider also installing them to system-default paths (very likely will produce a conflicts and namespace clashes).
  • pgsql needs patching for R11B due to missing lists:keymember/3 function. Seems to be a very simple task.

Current packages

Name EL-4 EL-5 EL-6 F-13 F-14 Rawhide
Package-x-generic-16.pngbasho_stats - - wip - wip 1.0.1
Package-x-generic-16.pngcompat-erlang - - - R10B-10 R10B-10 R10B-10
Package-x-generic-16.pngcouchdb - 0.11.2 1.0.1 0.11.2 1.0.1 1.0.1
Package-x-generic-16.pngebloom - - 1.0.2 - 1.0.2 1.0.2
Package-x-generic-16.pngejabberd - 2.1.5 2.1.5 2.1.5 2.1.5 2.1.5
Package-x-generic-16.pngeradius -[1] 0.20070627cvs 0.20070627cvs 0.20070627cvs 0.20070627cvs 0.20070627cvs
Package-x-generic-16.pngerlang R11B-2 R12B-5 R14B-0 R13B-04 R14B-0 R14B-0
Package-x-generic-16.pngerlang-amf - 0.git27329144 0.git27329144 0.git27329144 0.git27329144 0.git27329144
Package-x-generic-16.pngerlang-cluster_info -[2] - 0.1.0 - 0.1.0 0.1.0
Package-x-generic-16.pngerlang-erlsyslog 0.1 0.1 0.1 0.1 0.1 0.1
Package-x-generic-16.pngerlang-gen_leader -[3] 0.git 0.git 0.git 0.git 0.git
Package-x-generic-16.pngerlang-getopt -[4] 0.3 0.3 0.3 0.3 0.3
Package-x-generic-16.pngerlang-js - - 0.5.0 - 0.5.0 0.5.0
Package-x-generic-16.pngerlang-oauth -[5] 1.0.1 1.0.1 1.0.1 1.0.1 1.0.1
Package-x-generic-16.pngerlang-protobuffs -[6] 0.git58ff962 0.git58ff962 0.git58ff962 0.git58ff962 0.git58ff962
Package-x-generic-16.pngerlang-pgsql 0.20101203svn 0.20101203svn 0.20101203svn 0.20101203svn 0.20101203svn 0.20101203svn
Package-x-generic-16.pngerlsom -[7] 1.2.1 1.2.1 1.2.1 1.2.1 1.2.1
Package-x-generic-16.pngErlyDTL - 0.6.0[8] 0.6.0 - 0.6.0 0.6.0
Package-x-generic-16.pngesasl -[9] 0.1 0.1 0.1 0.1 0.1
Package-x-generic-16.pngesdl - - - 1.0.1 1.0.1 1.0.1
Package-x-generic-16.pngetap 0.3.4 0.3.4 0.3.4 0.3.4 0.3.4 0.3.4
Package-x-generic-16.pnggettext - 2.1.0 2.1.0 2.1.0 2.1.0 2.1.0
Package-x-generic-16.pnggproc - - 0.git - 0.git 0.git
Package-x-generic-16.pngibrowse - 2.1.0 2.1.3 2.1.3 2.1.3 2.1.3
Package-x-generic-16.pnglfe - 0.6.1 0.6.1 0.6.1 0.6.1 0.6.1
Package-x-generic-16.pnglog4erl - 0.9.0 0.9.0 0.9.0 0.9.0 0.9.0
Package-x-generic-16.pngluke -[10] - 0.2.3 - 0.2.3 0.2.3
Package-x-generic-16.pngmisultin - 0.6.1 0.6.1 0.6.1 0.6.1 0.6.1
Package-x-generic-16.pngmochiweb -[11] 1.4.1 1.4.1 1.4.1 1.4.1 1.4.1
Package-x-generic-16.pngmustache.erl - 0.1.0 0.1.0 0.1.0 0.1.0 0.1.0
Package-x-generic-16.pngneotoma - 1.4 1.4 1.4 1.4 1.4
Package-x-generic-16.pngrabbitmq-server - 2.2.0 2.1.1 2.2.0 2.2.0 2.2.0
Package-x-generic-16.pngrebar - - 2 - 2 2
Package-x-generic-16.pngriak_client - - 1.1.0 - 1.1.0 1.1.0
Package-x-generic-16.pngriak_err - - 1.0.1 - 1.0.1 1.0.1
Package-x-generic-16.pngwebmachine - - 1.8.0 - 1.8.0 1.8.0
Package-x-generic-16.pngwings - - - 1.2 1.2 1.2
Package-x-generic-16.pngxmlrpc - 1.13 1.13 1.13 1.13 1.13
Package-x-generic-16.pngyaws -[12] -[13] 1.89 1.89 1.89 1.89
  1. No ets:delete/2, ets:insert/2, ets:lookup/2, ets:match_object/2, ets:new/2 and ets:update_counter/3 functions in R11B.
  2. requires erlang:get_stacktrace/0
  3. No erlang:function_exported/3, lists:keysearch/3 and lists:member/2 functions available in R11B
  4. No lists:keymember/3, lists:keysearch/3 and string:to_lower/1 functions available in R11B
  5. No public_key module and base64:decode/1, base64:encode_to_string/1, httpc:request/4, re:split/3 and string:to_lower/1 functions available in R11B
  6. No erlang:iolist_to_binary/1, lists:keymember/3, lists:keysearch/3,lists:keytake/3, lists:member/2, string:join/2 and string:to_lower/1 functions available in R11B.
  7. No erlang:get_stacktrace/0, erlang:list_to_existing_atom/1, erlang:make_fun/3, lists:keysearch/3 and lists:member/2 functions available in R11B. It seems to be a doable task.
  8. Erlang >= R13B is required, so some functions won't work as expected.
  9. libgsasl is unavailable for EL-4
  10. lists:member/2 is missing in R11B.
  11. Lots of missing required functions in R11B.
  12. Erlang >= R13B is required
  13. Erlang >= R13B is required

Reviews

Potential packages

  • erlyweb
  • Yxa
  • erlang-mysql-driver - A native Erlang MySQL client library. One of the runtime dependencies for ejabberd. Please, not that there are two forks - one from P1 and another one from Yariv Sadan. All these three projects are based on the original work by Magnus Ahltorp. Read this post for further details.
  • Jungerl is also contains some very interesting libraries and applications, however not all of them are in good shape.
  • User contributions page at trapexit contains some handy user-submitted utilities.
  • Nitrogen Web Framework.
  • egssapi - Erlang GSSAPI and SPNEGO API (one of the runtime requirements for Yaws).
  • eldap - Erlang LDAP API. A patched copy is bundled with ejabberd.

Rejected packages

  • Jabberlang - a client Jabber library for Erlang. Obsoleted by exmpp
  • erlmedia - Erlang library for parsing different media formats. One of the requirements for erlyvideo. Abandoned by upstream authors.
  • erlang-rtmp - Erlang RTMP library. One of the requirements for erlyvideo. Abandoned by upstream authors.
  • erlang-fd_server. Similar functionality (binding to privileged ports) may be obtained with kernel > 2.6.24 with capabilities.