Add a header to begin generating the table of contents

    Dyalog on GitHub

    Dyalog Ltd develops an increasing number of tools, libraries, and experimental projects using Git, and hosts the source code and distributable packages using GitHub. 

    Dyalog on GitHub

    The most widely used tools – for example, HttpCommand – are packaged with the Dyalog interpreter. These are available as soon as Dyalog is installed, and are fully supported using normal Dyalog Support Service channels. However, if you follow the development of any of these tools closely and you would like to experiment with new features or fixes before they are distributed “officially”, you can download the latest versions from GitHub. You can also use GitHub to report issues or submit pull requests for fixes.

    Dyalog-Labs on GitHub

    A second GitHub account, Dyalog-Labs, is used to share tools, libraries, and experimental projects that we think our most advanced users are likely to want to play with, for example, the VS Code plugin for Dyalog APL. Although we will do our best to process issues and pull requests, we can not guarantee the same level of support, or even that a given repository will continue to be supported at all. These tools are marked with a † on the Tools and Interfaces Catalogue.

    GitHub Basics

    Some basic actions are explained below to help you get started with GitHub if you are not already familiar with it.

    Import Directly to the Workspace

    If a tool is purely APL code (for example, a workspace or APL text source files) then it might be possible to bring it directly into the workspace using the experimental ]Get user command.

    For example, to get the latest release of HttpCommand:

    1. Navigate to the HttpCommand releases page in GitHub.
    2. Under Assets, right-click on HttpCommand.dyalog.
    3. Select Copy Link from the drop-down menu.
    4. In a Dyalog Session, enter ]Get and paste the link in the same line. Press Enter.
          ]Get https://github.com/Dyalog/HttpCommand/releases/download/v5.9.3/HttpCommand.dyalog
    #.HttpCommand
          (HttpCommand.GetJSON 'GET' 'https://catfact.ninja/fact').Data.fact
    Your cat's heart beats at a rate almost double that of yours, from 110-140 beats per minute.
    

    See ]Get -? for more information and examples.

    Using the Latest Development Version

    If no release is available, or if you want to use the latest development version of a tool, you can download the tool code as a compressed (zipped) folder:

    1. Open the project of interest.
    2. Click on Code.
    3. Select Download ZIP from the drop-down menu.

    Reporting Issues

    If you have trouble using a tool, or want to suggest an improvement, open an issue on GitHub.

    1. Open the project’s page on GitHub
    2. Click on the Issues tab
    3. Click on the New issue button

    Remember to include steps to reproduce your issue, the version number of the tool you are using and information about your operating environment.

    Developing a Tool

    This is a very brief summary of the Fork and Pull Request collaborative development procedure. For more thorough introductions to Git and GitHub, see:

    Changes over time can be viewed on the GitHub page for the project. For example, the changes for library-conga can be viewed at github.com/Dyalog/library-conga/commits/master. To participate in the development of a tool, or to fix an issue that you’ve spotted:

    1. Ensure that you have a GitHub account and are logged in.
    2. Open the project of interest.
    3. Click on Fork (in the top right corner of the project window)
      This takes a copy of the project to your account for you to work on. We recommend that you use a tool such as Atlassian SourceTree (unless you are already a seasoned Git user, in which case you already know what to do) and “clone” the repository from there.
    4. Once you have made changes to your fork of the project, click on Pull requests (near the top left corner of the project window) – this informs us that your changes are ready for us to review and include in the project.

    If you have any issues whilst trying to make updates, please contact us – we’re happy to talk you through the necessary process.

    Get Support