Twitter G+ Facebook YouTube Donate

Community and Developer Behavior Guidelines

We are a community. Some are core developers who have been around for well over a decade, others are newer contributors, or are just users or fans, but regardless, it forms some kind of community. For this community to function we need to adhere to a set of guidelines to ensure it functions effectively and doesn't push new people away, or drive existing members away. This here is a set of rough guidelines for those with commit access (developers) and those without (general users or contributors) to follow to ensure things work well. It is not law, but know that if you stray too far from these guidelines, that there may be consequences such as deletion of accounts, removal from mailing lists, banning from IRC channels or loss of commit access, not to mention loss of respect.
General

We are a group of people with a sense of humor. We like to remain relaxed, swap jokes (of varying levels of taste), and otherwise encourage, cajole or simply banter at times. This community would not be what it is without this, so keep in mind that when interpreting what people say, it may be meant as humor or as a lighthearted poke. Look for an interpretation that is positive, rather than negative. If this simply is not possible, then someone has strayed from these guidelines.

Not everyone speaks English natively, but it is the primary language used here. Some people may not express themselves well. Have patience with that. Put yourself in their shoes.

Everyone
  • Have patience with developers. They are often very busy and sometimes very stressed.
  • Please treat everyone with kindness and respect. Never try and hurt, demean, insult or abuse them.
  • Never be rude or take any disagreement to a personal level. Agree to disagree if that is what is needed.
Developers
  • Stick to coding conventions when working on code in EFL or related repositories we host
  • Stick to commit guidelines with your commit shortlog, log contents and other metadata
  • Be available on our IRC channels as often as possible for discussion, as well as be subscribed to and read/reply our Development, Users and Git Commits mailing lists
  • Get a Phabricator account so you can report, triage etc. bugs, review patches and so on
  • Take responsibility for your code. Don't just “dump and run”
  • Be friendly, welcoming, patient and helpful to newcomers especially, in addition to the above “Everyone” rules

IRC

IRC Server Port Channel Topic
irc.freenode.net 6667 #e General
irc.freenode.net 6667 #e.py Python related
irc.freenode.net 6667 #e.bsd BSD related
irc.freenode.net 6667 #e.de General in german
irc.freenode.net 6667 #e.fr General in french
irc.freenode.net 6667 #e.kr General in korean

Many of the core developers involved in Enlightenment as well as a lot of users are on IRC. They use IRC often and will discuss many development issues there instead of e-mail, due to it having immediate feedback as well as convenient shared discussion channels.

We use the Freenode IRC network, and you will find us on the #e channel. You can use a, IRC client like X-Chat, Konversation, Pidgin, and many others. If your client already has a listing for freenode, just select it. If not just set up the server as irc.freenode.net as your server with the normal IRC port of 6667. Once connected just join #e (you can just type in the command: /join #e then Enter). Just type + press Enter to talk.

E-Mail

Mailing List Archive Comment
UsersArchiveGeneral User discussion and issues
DevelopersArchiveDiscussion related to development and for developers using EFL etc.
AnnouncementsArchiveAnnouncements of releases and anything important
Git CommitsOld ArchiveMail git+subscribe@lists.enlightenment.org with “subscribe“ (no quotes) in the message body
QA reports Mail e-bork+subscribe@lists.enlightenment.org with “subscribe“ (no quotes) in the message body

Our primary non-realtime form of communication is via e-mail. This allows everyone to participate no matter what timezone the live in or what waking hours they keep. It allows for streamlined access via your favorite e-mail application, which should handle large volumes of messages and conversations well already. It allows for off-line reading and replies (unlike web forums or IRC),

The language used on our mailing lists is English. It is a universal language that more people speak than any other, so if you want to participate, please use English, and then everyone can understand and respond. Also note that these lists are public and everyone sees the e-mails sent to them, and anyone may respond. Not all answers will be correct, but the vast majority will be.

In addition to the lists being a forum for questions, suggestions and other such discussions, they are also used as a news feed. Especially our commits mailing list. Every piece of code changed, bug fixed, or feature added will be broadcast on our commits mailing list. If you want to know what is going on, our commits list is an absolute must to subscribe to.

We have 3 main lists. The GIT Commits List is for sending out notices of every commit that happens to our repositories, with full source diffs, log and who did the work. The Devel List is where most of the developer and development discussions happen. This list will be more technical that the Users List. The Users List is where regular user discussions will happen.

In addition the Intl List is for posting changes to internationalization like updated PO files. The Announce List is just for announcements and not discussion, so it's low traffic designed for people only wanting to track releases etc.

Bugs

We use Phabricator for our bug tracking and Wiki. If you have a bug or issue, please Report a bug. We will eventually get to it, but try and assign it to someone appropriate so it gets attention. Be aware that you will need to register an account to submit bugs there.

Please use Maniphest for bugs, not for discussions or feature requests or for “I don't know how to do this” questions. It's for reporting actual problems. For questions we have E-Mail and IRC. Also remember that we will prioritize bug fixing to those things that are core, urgent or necessary, so just because a report isn't acted on soon, doesn't mean we won't eventually get to it. Once it's in the system it won't disappear. It just takes it being noticed.

We have a wiki-based primary website (this one), and a “technical wiki” over on Phabricator. It happens to be split this way simply due to history and that this wiki here is newer, replacing static web pages.

Patches

On Phabricator the Differential tool is used for patch submission and review. You will need an account to submit patches. You will also need to use the Arcanist tool to do this - please see the Arcanist documentation as to how to do this.

While the above is the preferred method, you can also send patches using Phabricator directly. If you are unable to use Phabricator for whatever reason, please resort to sending a patch to the mailing list, or contacting the developers on IRC.