Skip to content

Latest commit

 

History

History
108 lines (70 loc) · 3.83 KB

CONTRIBUTING.md

File metadata and controls

108 lines (70 loc) · 3.83 KB

Contributing

The where and when to open an issue or pull request.

Issues

Issues are used to track bugs and feature requests. Need help or have a general question? Ask on Stack Overflow (tag sqlite.swift).

Before reporting a bug or requesting a feature, run a few searches to see if a similar issue has already been opened and ensure you’re not submitting a duplicate.

If you find a similar issue, read the existing conversation and see if it addresses everything. If it doesn’t, continue the conversation there.

If your searches return empty, see the bug or feature request guidelines below.

Bugs

Think you’ve discovered a new bug? Let’s try troubleshooting a few things first.

  • Is it an installation issue?

    If this is your first time building SQLite.swift in your project, you may encounter a build error, e.g.:

    No such module 'SQLite'
    

    Please carefully re-read the installation instructions to make sure everything is in order.

  • Have you read the documentation?

    If you can’t seem to get something working, check the documentation to see if the solution is there.

  • Are you up-to-date?

    If you’re perusing the documentation online and find that an example is just not working, please upgrade to the latest version of SQLite.swift and try again before continuing.

  • Is it an unhelpful build error?

    While Swift error messaging is improving with each release, complex expressions still lend themselves to misleading errors. If you encounter an error on a complex line, breaking it down into smaller pieces generally yields a more understandable error.

  • Is it an even more unhelpful build error?

    Have you updated Xcode recently? Did your project stop building out of the blue?

    Hold down the option key and select Clean Build Folder… from the Product menu (⌥⇧⌘K).

Made it through everything above and still having trouble? Sorry! Open an issue! And please:

  • Be as descriptive as possible.
  • Provide as much information needed to reliably reproduce the issue.
  • Attach screenshots if possible.
  • Better yet: attach GIFs or link to video.
  • Even better: link to a sample project exhibiting the issue.
  • Include the SQLite.swift commit or branch experiencing the issue.
  • Include devices and operating systems affected.
  • Include build information: the Xcode and macOS versions affected.

Feature Requests

Have an innovative feature request? Open an issue! Be thorough! Provide context and examples. Be open to discussion.

Pull Requests

Interested in contributing but don’t know where to start? Try the help wanted label.

Ready to submit a fix or a feature? Submit a pull request! And please:

  • If code changes, run the tests and make sure everything still works.
  • Write new tests for new functionality.
  • Update documentation comments where applicable.
  • Maintain the existing style.
  • Don’t forget to have fun.

While we cannot guarantee a merge to every pull request, we do read each one and love your input.