\label{doc_decisions_README_md_md_doc_decisions_README}%
\Hypertarget{doc_decisions_README_md_md_doc_decisions_README}%
 We use decision template is based on \href{https://dl.acm.org/doi/10.1109/MS.2007.124}{\texttt{ \textquotesingle{}\textquotesingle{}using patterns to capture architectural decisions\textquotesingle{}\textquotesingle{}}} and \href{http://docs.arc42.org/section-9/}{\texttt{ arc42 decisions}}

Decisions need to\+:


\begin{DoxyItemize}
\item be implementable within the next major release
\item be according to \mbox{\hyperlink{doc_GOALS_md}{Elektra\textquotesingle{}s goals}}
\end{DoxyItemize}

To add a new decision copy {\ttfamily template.\+md} and add a link in the appropriate section here.\hypertarget{doc_decisions_README_md_autotoc_md1964}{}\doxysection{Implemented}\label{doc_decisions_README_md_autotoc_md1964}

\begin{DoxyItemize}
\item \mbox{\hyperlink{doc_decisions_unit_testing_md}{Unit Testing}}
\item \mbox{\hyperlink{doc_decisions_script_testing_md}{Script Testing}}
\item \mbox{\hyperlink{doc_decisions_library_split_md}{Library Split}}
\item \mbox{\hyperlink{doc_decisions_bootstrap_md}{Bootstrap}}
\item \mbox{\hyperlink{doc_decisions_empty_files_md}{Empty Files}}
\item \mbox{\hyperlink{doc_decisions_cmake_plugins_md}{CMake Plugins}}
\item \mbox{\hyperlink{doc_decisions_logging_md}{Logging}}
\item \mbox{\hyperlink{doc_decisions_elektra_web_md}{Elektra Web Structure}}
\item \mbox{\hyperlink{doc_decisions_elektra_web_recursive_md}{Elektra Web Recursive Structure}}
\item \mbox{\hyperlink{doc_decisions_cryptograhic_key_handling_md}{Cryptographic Key Handling}}
\item \mbox{\hyperlink{doc_decisions_relative_md}{Relative Storages}}
\item \mbox{\hyperlink{doc_decisions_deferred_plugin_calls_md}{Deferred Plugin Calls}}
\item \mbox{\hyperlink{doc_decisions_high_level_api_md}{High-\/level API}}
\item \mbox{\hyperlink{doc_decisions_highlevel_help_message_md}{High-\/level API Help Message}}
\item \mbox{\hyperlink{doc_decisions_global_keyset_md}{Global Key\+Set}}
\item \mbox{\hyperlink{doc_decisions_rest_api_documentation_md}{Rest API Documentation}}
\item \mbox{\hyperlink{doc_decisions_ingroup_removal_md}{Ingroup Removal}}
\item \mbox{\hyperlink{doc_decisions_commit_function_md}{Commit Function}}
\item \mbox{\hyperlink{doc_decisions_error_message_format_md}{Error Message Format}}
\item \mbox{\hyperlink{doc_decisions_default_values_md}{Default Values}}
\item \mbox{\hyperlink{doc_decisions_high_level_api_md}{High Level API}}
\item \mbox{\hyperlink{doc_decisions_error_codes_md}{Error codes}}
\item \mbox{\hyperlink{doc_decisions_error_code_implementation_md}{Error code implementation}}
\item \mbox{\hyperlink{doc_decisions_semantics_name_md}{Semantics for Name}}
\item \mbox{\hyperlink{doc_decisions_base_name_md}{Base Name}}
\item \mbox{\hyperlink{doc_decisions_lookup_every_key_md}{Lookup every key}}
\item \mbox{\hyperlink{doc_decisions_holes_md}{Holes and Non-\/leaf values}}
\item \mbox{\hyperlink{doc_decisions_multiple_file_backends_md}{Multiple File Backends}}
\item \mbox{\hyperlink{doc_decisions_boolean_md}{Boolean}}
\end{DoxyItemize}\hypertarget{doc_decisions_README_md_autotoc_md1965}{}\doxysection{In Progress}\label{doc_decisions_README_md_autotoc_md1965}

\begin{DoxyItemize}
\item \mbox{\hyperlink{doc_decisions_global_plugins_md}{Global Plugins}} (@mpranj)
\item \mbox{\hyperlink{doc_decisions_ensure_md}{Ensure}} (@kodebach)
\item \mbox{\hyperlink{doc_decisions_capabilities_md}{Capabilities}} (@markus2330)
\item \mbox{\hyperlink{doc_decisions_error_semantics_md}{Error Semantics}} (API)
\end{DoxyItemize}\hypertarget{doc_decisions_README_md_autotoc_md1966}{}\doxysection{Decided}\label{doc_decisions_README_md_autotoc_md1966}

\begin{DoxyItemize}
\item \mbox{\hyperlink{doc_decisions_warning_array_md}{Array for Warnings}}
\item \mbox{\hyperlink{doc_decisions_array_md}{Array}}
\end{DoxyItemize}\hypertarget{doc_decisions_README_md_autotoc_md1967}{}\doxysection{In Discussion}\label{doc_decisions_README_md_autotoc_md1967}

\begin{DoxyItemize}
\item \mbox{\hyperlink{doc_decisions_escaped_name_md}{Escaped Name}} merge with\+:
\item \mbox{\hyperlink{doc_decisions_store_name_md}{Store the escaped and/or unescaped key name}}
\item \mbox{\hyperlink{doc_decisions_spec_expressiveness_md}{Spec Expressiveness}}
\item \mbox{\hyperlink{doc_decisions_spec_metadata_md}{Metadata in Spec Namespace}}
\end{DoxyItemize}\hypertarget{doc_decisions_README_md_autotoc_md1968}{}\doxysection{Delayed}\label{doc_decisions_README_md_autotoc_md1968}

\begin{DoxyItemize}
\item \mbox{\hyperlink{doc_decisions_plugin_variants_md}{Plugin Variants}}
\item \mbox{\hyperlink{doc_decisions_global_validation_md}{Global Validation}}
\end{DoxyItemize}\hypertarget{doc_decisions_README_md_autotoc_md1969}{}\doxysection{Rejected}\label{doc_decisions_README_md_autotoc_md1969}

\begin{DoxyItemize}
\item \mbox{\hyperlink{doc_decisions_cmake_spec_md}{CMake spec}}
\item \mbox{\hyperlink{doc_decisions_null_pointer_checks_md}{Null Pointer Checks}}
\item \mbox{\hyperlink{doc_decisions_elektra_web_pubsub_md}{Elektra Web Publish Subscribe}}
\item \mbox{\hyperlink{doc_decisions_internal_cache_md}{Internal Cache}}
\item \mbox{\hyperlink{doc_decisions_vendor_spec_md}{Vendor Spec}} 
\end{DoxyItemize}