Code Monkey home page Code Monkey logo

ahk.stdlib's Introduction

AHK Lib v2

Outline

  • Must be centralized and secure so code can be trusted.
  • But also must be easy to submit, and easy to accept submissions.
  • Peer elected maintainers review submissions. Less chance of
  • Transparent processes are key.

Code Style Guidelines

  • Clean, well structured code.
  • Code must be wrapped in functions/classes with clear, non-conflicting namespaces.
  • Code must not depend on positioning of #include.
  • Prefer code without side effects. (e.g. unnecessarily and unexpectedly polluting or relying on the global namespace.)
  • Consistent indentation. (4 spaces per indentation?)
  • Consistent brace style. (Allman ?)
  • Exposed interfaces should be documented in a standard way. (doxygen or gendocs?).
  • Exposed interfaces should be mostly stable and not change.
  • Usage examples should be provided.
  • Forum topic on AutoHotkey.com. (keep the centralized support)

Submission

  • Any script can be submitted for review, and must meet all requirements in the Code Style Guidelines section.
  • All scripts MUST be submitted with a licence and it MUST be included at the top of all files submitted.
  • Group members will peer review the code for style and robustness.
  • Script author is included in the process.
  • Any issues found can be fixed and the script reevaluated.
  • Two peer reviews to make sure any errors are caught early on.
  • Eighty percent majority approval for new scripts to be added into central repository.

Repository

  • Automatic download script(s).
  • Autoupdate to the latest for the branch (Basic, L, etc.).
  • Separate branches for each version of AHK (basic, L, v2, etc.).
  • Versions: (say a new version makes breaking changes) Separate files: SuperLib.ahk, SuperLib2.ahk; major versions only.
  • Script author may commit short bug fixes with streamlined review process (only one review needed).

Maintainers

  • (This might be easier with something like gerrit, though more complicated. Future maybe?)
  • Maintainers should seek public opinion on key decisions whenever possible.

ahk.stdlib's People

Contributors

infogulch avatar uberi avatar

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.