soil

An object oriented database that is easy to use and fun to play with

https://github.com/apptivegrid/soil

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.1%) to scientific vocabulary

Keywords

database oop pharo
Last synced: 6 months ago · JSON representation ·

Repository

An object oriented database that is easy to use and fun to play with

Basic Info
  • Host: GitHub
  • Owner: ApptiveGrid
  • License: mit
  • Language: Smalltalk
  • Default Branch: main
  • Homepage:
  • Size: 1.94 MB
Statistics
  • Stars: 53
  • Watchers: 8
  • Forks: 8
  • Open Issues: 42
  • Releases: 1
Topics
database oop pharo
Created over 3 years ago · Last pushed 6 months ago
Metadata Files
Readme License Citation Authors

README.md

Soil

CI matrix

Soil is an object oriented database in pharo. It is transaction based having ACID transactions. It has binary search capabilities with SkipList and BTree+ indexes. It aims to be a simple yet powerful database making it easy to develop with, easy to debug with, easy to inspect, ...

To read more please have a look at the documentation

Loading

note The main branch is not usable for existing databases right now, we need to apply a non-backward compatible change. When v4 is released there will be a converter for old databases to migrate. Please load v3 until then

Load it in 64bit Pharo 11/12/13 with Metacello:

smalltalk Metacello new repository: 'github://ApptiveGrid/Soil:v3/src'; baseline: 'Soil'; load. Note: For now, Windows is not supported. Contact us if you want to help!

caution Soil is in an early stage meaning there are might be things missing. It is battle tested as it is the driving database behind ApptiveGrid but you might have different requirements. If so, tell us!

Latest release

The latest release is v3 which you can load via

smalltalk Metacello new repository: 'github://ApptiveGrid/Soil:v3/src'; baseline: 'Soil'; load.

The changelog can be found here

note: Releases in Soil are branches. Loading it with a release tag will get the hot fixes of that release. If you do not want this please use the commit hash as version instead

Development

We use github for organizing our development. You can see what we are doing right now on the project board. An up-to-date list of milestones you can find in milestones.

Talks about Soil

  • ESUG 2025 talks
  • Smalltalks 2024 talk "Soil: an object oriented database for fun and profit" Video YouTube
  • ESUG 2023 talk "Soil: a fresh look on object oriented databases" Slides PDF, SlideShare, Video on YouTube
  • ESUG 2023 talk "Soil and Pharo". Slides PDF, SlideShare
  • ESUG 2022 talk "there's no magic... until you talk about databases" Slides PDF, SlideShare, Video YouTube
  • ESUG 2022 ShowUs: "Soil: a OO Database for Pharo" Video YouTube

Soil in Action

If you want to see Soil in action, ApptiveGrid is using it to persist all data. (You can create a free accout here).

NEWS

(to get all Soil News by email, register here)

esug medal

Owner

  • Name: ApptiveGrid GmbH
  • Login: ApptiveGrid
  • Kind: organization
  • Location: Germany

Citation (CITATION.cff)

# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!

cff-version: 1.2.0
title: Soil
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Norbert
    family-names: Hartl
    affiliation: ApptiveGrid GmbH
    email: norbert@hartl.name
  - given-names: Marcus
    family-names: Denker
    email: marcus.denker@inria.fr
    affiliation: Inria
    orcid: 'https://orcid.org/0000-0003-2549-4222'
identifiers:
  - type: swh
    value: 'swh:1:dir:7ab481741958af9189981e1c557aacfad5d78d7c'
  - type: url
    value: 'https://hal.science/hal-04726251'
    description: HAL
repository-code: 'https://github.com/ApptiveGrid/Soil'
abstract: >-
  Soil is an object oriented database in pharo. It is
  transaction based having ACID transactions. It has binary
  search capabilities with SkipList and BTree+ indexes. It
  aims to be a simple yet powerful database making it easy
  to develop with, easy to debug with and easy to inspect.
keywords:
  - db
  - object database
  - OO
license: MIT
version: v2
date-released: '2024-08-28'

GitHub Events

Total
  • Issues event: 26
  • Watch event: 4
  • Delete event: 39
  • Issue comment event: 15
  • Push event: 125
  • Pull request review comment event: 1
  • Pull request review event: 37
  • Pull request event: 109
  • Fork event: 1
  • Create event: 56
Last Year
  • Issues event: 26
  • Watch event: 4
  • Delete event: 39
  • Issue comment event: 15
  • Push event: 125
  • Pull request review comment event: 1
  • Pull request review event: 37
  • Pull request event: 109
  • Fork event: 1
  • Create event: 56

Committers

Last synced: about 1 year ago

All Time
  • Total Commits: 1,278
  • Total Committers: 7
  • Avg Commits per committer: 182.571
  • Development Distribution Score (DDS): 0.354
Past Year
  • Commits: 384
  • Committers: 4
  • Avg Commits per committer: 96.0
  • Development Distribution Score (DDS): 0.378
Top Committers
Name Email Commits
Norbert Hartl n****t@2****e 825
Marcus Denker d****r@a****g 433
yannij y****e@g****m 6
Stephan Eggermont s****n@s****l 5
Esteban Lorenzano e****m@n****u 4
cdelaunay c****y@2****e 3
Astares a****s@g****e 2
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 122
  • Total pull requests: 381
  • Average time to close issues: 3 months
  • Average time to close pull requests: 2 days
  • Total issue authors: 5
  • Total pull request authors: 7
  • Average comments per issue: 0.42
  • Average comments per pull request: 0.2
  • Merged pull requests: 318
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 19
  • Pull requests: 135
  • Average time to close issues: 19 days
  • Average time to close pull requests: 1 day
  • Issue authors: 4
  • Pull request authors: 4
  • Average comments per issue: 0.53
  • Average comments per pull request: 0.19
  • Merged pull requests: 117
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • MarcusDenker (62)
  • noha (57)
  • rstewart2702 (1)
  • udoschneider (1)
  • tinchodias (1)
Pull Request Authors
  • MarcusDenker (197)
  • noha (171)
  • estebanlm (4)
  • StephanEggermont (4)
  • yannij (3)
  • pdebruic (1)
  • udoschneider (1)
Top Labels
Issue Labels
Pull Request Labels

Dependencies

.github/workflows/build.yml actions
  • actions/checkout v2 composite
  • hpi-swa/setup-smalltalkCI v1 composite