You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Greg Holmes dcaf58b0e4 Merge pull request #619 from csmith/tidying 8 jaren geleden
etc 2015! 9 jaren geleden
gradle Bump gradle version. 9 jaren geleden
res/com/dmdirc Improve formatting of whois events. 8 jaren geleden
src Disable numeric formatting, remove dead code. 8 jaren geleden
test/com/dmdirc Disable numeric formatting, remove dead code. 8 jaren geleden
test-res/com/dmdirc Add basic test for PluginFileHandler. 9 jaren geleden
.gitignore Stop ClientInfo being static. 9 jaren geleden
AUTHORS Add Google to the AUTHORS file. 10 jaren geleden
LICENCE 2015! 9 jaren geleden
README.md Add a README. 9 jaren geleden
UpdateCopyright.sh We're missing a file! 10 jaren geleden
build-installer.xml Build process improvements. 10 jaren geleden
build.gradle Bump gradle version. 9 jaren geleden
circle.yml Set the working directory... 9 jaren geleden
gradle.properties Add a bit more info to version.config. 9 jaren geleden
gradlew Add gradle wrapper 9 jaren geleden
gradlew.bat Add gradle wrapper 9 jaren geleden
settings.gradle Don't force project names any more. 9 jaren geleden

README.md

DMDirc

DMDirc is an IRC client written in Java. It’s cross-platform, hugely configurable, and is easily extensible with a robust plugins system.

This repository contains the ‘core’ of the client. If you’re interested in developing DMDirc or building it from scratch, you’d be much better off cloning the meta repository, which contains the core, plugins, IRC library, etc. Detailed setup instructions are available there as well.

Development information

Error handling

DMDirc has a user interface for displaying details of errors to users. It also supports uploading of errors to the DMDirc sentry instance if the user allows it (or manually clicks on send).

Errors should be logged using a Slf4j logger, and marked with one markers defined in LogUtils. These markers allow developers to specify whether an error is an “Application” error (which will get reported and should ultimately be fixed), or a “User” error (which is due to a problem with the user’s config, environment, etc), and also whether the error is fatal or not.

A typical class that reports errors will look something like the following:

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import static com.dmdirc.util.LogUtils.APP_ERROR;

public class MyClass {

    private static final Logger LOG = LoggerFactory.getLogger(MyClass.class);

    public void doSomething() {
        try {
            // Do something
        } catch (SomeException ex) {
            LOG.error(APP_ERROR, "Couldn't do something!", ex);
        }
    }

}