wiki:TechnicalDocumentation

Version 17 (modified by flip, 9 years ago) (diff)

--

Technical Documentation

This is the central station for technical documentation about Vespa. It's not likely to be of interest to those who just want to use Vespa. It's for those who want to know more about Vespa's development as a software project, including how to contribute.

Here you can find high level overviews of various topics (Python, wxPython, SQLite, C++, compilers, 3rd party libraries, etc.) as well as detailed notes written by the technical team.

General

Getting Started

  • DeveloperSetup - Everything you need to get started as a Vespa developer including how to get Vespa's source code, how to set up the UI design tools, and various technical notes.

General Technical Notes About Vespa

  • CodingStandards
  • Dependencies? - A complete, technically-oriented list of 3rd party libraries that Vespa uses, including minimum acceptable versions.
  • VespaDataDirectory - How to find Vespa's data directory
  • IniFiles - About Vespa's INI files
  • ExceptionHandler - How Vepsa's custom exception handler works (and how to disable it)
  • SetupPy - What Vespa's setup.py does and doesn't do, how it works, etc.
  • VIFF - An overview of VIFF (Vespa Interchange File Format), the XML format Vespa uses for imports and exports
  • ExportFormat - A little about importing and exporting
  • PlatformNotes - Details about installing Vespa on various operating systems
  • Swigging Gamma Implementation and Issues & Solutions
  • Python3Issues - A summary of changes in Python 3 that we should keep in mind
  • ThePerilsOfStr - Why we should stop using str() on strings
  • ImportSubtleties - Some subtle points about Python's import, especially for file in vespa/common

Database Topics

GUI Development

Documents about wxWidgets, wxPython and wxGlade and how we use them in our apps.

Other Technical Notes