Skip to content
Snippets Groups Projects
Commit 7b5e7fd2 authored by florian's avatar florian
Browse files

Merge branch 'dev' into f-doc-ref-properties

parents ef95a86a de9b9cb8
Branches
Tags
2 merge requests!107ENH: add entity getters and cached functions,!97F doc ref properties
Pipeline #34678 passed
...@@ -25,6 +25,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ...@@ -25,6 +25,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
documentation on adding REFERENCE properties, both in the docstring of documentation on adding REFERENCE properties, both in the docstring of
`Entity.add_property` and in the data-insertion tutorial. `Entity.add_property` and in the data-insertion tutorial.
## [0.11.2] - 2023-03-14 ##
### Fixed ###
- root logger is no longer used to create warnings. Fixes undesired output in
stderr
## [0.11.1] - 2023-03-07 ## ## [0.11.1] - 2023-03-07 ##
(Florian Spreckelsen) (Florian Spreckelsen)
......
...@@ -48,7 +48,7 @@ from setuptools import find_packages, setup ...@@ -48,7 +48,7 @@ from setuptools import find_packages, setup
ISRELEASED = False ISRELEASED = False
MAJOR = 0 MAJOR = 0
MINOR = 11 MINOR = 11
MICRO = 2 MICRO = 3
# Do not tag as pre-release until this commit # Do not tag as pre-release until this commit
# https://github.com/pypa/packaging/pull/515 # https://github.com/pypa/packaging/pull/515
# has made it into a release. Probably we should wait for pypa/packaging>=21.4 # has made it into a release. Probably we should wait for pypa/packaging>=21.4
......
...@@ -43,6 +43,8 @@ from caosdb.common.models import (Container, Entity, File, Property, Query, ...@@ -43,6 +43,8 @@ from caosdb.common.models import (Container, Entity, File, Property, Query,
get_config, SPECIAL_ATTRIBUTES) get_config, SPECIAL_ATTRIBUTES)
from caosdb.exceptions import CaosDBException from caosdb.exceptions import CaosDBException
logger = logging.getLogger(__name__)
class EntityMergeConflictError(CaosDBException): class EntityMergeConflictError(CaosDBException):
"""An error that is raised in case of an unresolvable conflict when merging """An error that is raised in case of an unresolvable conflict when merging
...@@ -413,7 +415,7 @@ def merge_entities(entity_a: Entity, entity_b: Entity, merge_references_with_emp ...@@ -413,7 +415,7 @@ def merge_entities(entity_a: Entity, entity_b: Entity, merge_references_with_emp
""" """
logging.warning( logger.warning(
"This function is currently experimental and insufficiently tested. Use with care.") "This function is currently experimental and insufficiently tested. Use with care.")
# Compare both entities: # Compare both entities:
......
...@@ -29,10 +29,10 @@ copyright = '2022, IndiScale GmbH' ...@@ -29,10 +29,10 @@ copyright = '2022, IndiScale GmbH'
author = 'Daniel Hornung' author = 'Daniel Hornung'
# The short X.Y version # The short X.Y version
version = '0.11.2' version = '0.11.3'
# The full version, including alpha/beta/rc tags # The full version, including alpha/beta/rc tags
# release = '0.5.2-rc2' # release = '0.5.2-rc2'
release = '0.11.2-dev' release = '0.11.3-dev'
# -- General configuration --------------------------------------------------- # -- General configuration ---------------------------------------------------
......
...@@ -60,7 +60,7 @@ it using its high level representation: ...@@ -60,7 +60,7 @@ it using its high level representation:
from caosdb.high_level_api import query from caosdb.high_level_api import query
res = query("FIND Record Experiment") res = query("FIND Experiment")
experiment = res[0] experiment = res[0]
# Use a property: # Use a property:
print(experiment.date) print(experiment.date)
...@@ -80,7 +80,7 @@ series of commands to achieve the same result: ...@@ -80,7 +80,7 @@ series of commands to achieve the same result:
import caosdb as db import caosdb as db
res = db.execute_query("FIND Record Experiment") res = db.execute_query("FIND Experiment")
output = res.get_property("output") output = res.get_property("output")
output_file = db.File(id=output.value[0].id).retrieve() output_file = db.File(id=output.value[0].id).retrieve()
print(output_file.path) print(output_file.path)
......
...@@ -69,8 +69,9 @@ Examples ...@@ -69,8 +69,9 @@ Examples
c.insert() c.insert()
# Useful for testing: wait until the user presses a key # Useful for testing: wait until the user presses a key
# Meanwhile have a look at the WebUI: You can e.g. query "FIND Test*" to view # Meanwhile have a look at the WebUI: You can e.g. query "FIND ENTITY Test*"
# all the entities created here and see the relations and links between them. # to view all the entities created here and see the relations and links
# between them.
b = input("Press any key to cleanup.") b = input("Press any key to cleanup.")
# cleanup everything after the user presses any button. # cleanup everything after the user presses any button.
c.delete() c.delete()
...@@ -25,7 +25,7 @@ However, you can also translate the examples to the data model that you have at ...@@ -25,7 +25,7 @@ However, you can also translate the examples to the data model that you have at
Let's start with a simple query. Let's start with a simple query.
>>> response = db.execute_query("FIND RECORD Guitar") >>> response = db.execute_query("FIND Guitar")
Queries work the same way as in the web interface. You simply provide the Queries work the same way as in the web interface. You simply provide the
query string to the corresponding function (``db.execute_query``). However, the result is not query string to the corresponding function (``db.execute_query``). However, the result is not
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment