name = "db_maker"
description = "A generic for creating simple DBs (one table in an RDBMS)"
version = "20240119"

authors = ["Jeff Carter "]
maintainers = ["Bent Bracke <bent@bracke.dk>"]
maintainers-logins = ["bracke"]
licenses = "GPL-3.0-or-later"
website = "https://github.com/bracke/DB_Maker"
tags = ["database", "table"]

long-description = """
# DB_Maker
A generic for creating simple DBs (one table in an RDBMS) with PragmARC.Persistent_Skip_List_Unbounded and Ada GUI.

Searching does not use the O(log N) search of the underlying skip list, but instead does a linear search for fields that have the corresponding search text as a substring (case insensitive). This is much slower, but is still quite fast. If you have less than 100,000 records it should be fast enough. "Search" starts from the 1st record; "Search More" from the record after the last search. "Clear" clears the edit fields to make entering a new search easier.

Because searching is case insensitive and matches substrings, searching for "son" would match "Orson Welles", "Fowler De Johnsone", and "Son House".

Only about 7 fields will fit vertically in the typical browser window. This could perhaps be increased by making the font smaller. A vertical scroll bar will appear if needed.

Movies is a small demo program that could be used to catalogue a collection of films. DB_Strings is a non-limited replacement for PragmARC.B_Strings, since type B_String is limited in the Ada-12 version of the PragmARCs.
"""

[build-switches]
"*".style_checks = "No"
"*".ada_version = "Ada12"

[[depends-on]] # Avoid bug in GNAT 13
gnat = "<13.0 | >=13.3"

[[depends-on]]
pragmarc = "^20240323.0.0"

[[depends-on]]
ada_gui = "^20240224.0.0"

[origin]
commit = "05feea71716e21f6c3b0bf32eef7eb33b22806db"
url = "git+https://github.com/bracke/DB_Maker.git"

