Skip to content
Snippets Groups Projects
Commit c6b265d5 authored by Alexander Schlemmer's avatar Alexander Schlemmer
Browse files

Merge branch 'dev' into f-better-macro-doc

parents 04d65a35 b67e5edb
Branches
Tags
2 merge requests!71REL: RElease v0.2.0,!51F better macro doc
Pipeline #29267 passed with warnings
...@@ -5,7 +5,22 @@ All notable changes to this project will be documented in this file. ...@@ -5,7 +5,22 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased] ## [Unreleased] ##
### Added ###
### Changed ###
### Deprecated ###
### Removed ###
### Fixed ###
### Security ###
## [0.1.0] - 2022-10-11
(Florian Spreckelsen)
### Added ### Added
...@@ -23,10 +38,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ...@@ -23,10 +38,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
* MAINT: Renamed module from `newcrawler` to `caoscrawler` * MAINT: Renamed module from `newcrawler` to `caoscrawler`
* MAINT: Removed global converters from `crawl.py` * MAINT: Removed global converters from `crawl.py`
### Deprecated
### Removed
### Fixed ### Fixed
* FIX: #12 * FIX: #12
...@@ -37,6 +48,3 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ...@@ -37,6 +48,3 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
hints to be compatible to python 3.8 hints to be compatible to python 3.8
* [#9](https://gitlab.com/caosdb/caosdb-crawler/-/issues/9): Sclaras of types * [#9](https://gitlab.com/caosdb/caosdb-crawler/-/issues/9): Sclaras of types
different than string can now be given in cfood definitions different than string can now be given in cfood definitions
### Security
...@@ -38,9 +38,9 @@ The original authors of this package are: ...@@ -38,9 +38,9 @@ The original authors of this package are:
# License # License
Copyright (C) 2021 Research Group Biomedical Physics, Max Planck Institute for Copyright (C) 2021-2022 Research Group Biomedical Physics, Max Planck Institute for
Dynamics and Self-Organization Göttingen. Dynamics and Self-Organization Göttingen.
Copyright (C) 2021 IndiScale GmbH Copyright (C) 2021-2022 IndiScale GmbH
All files in this repository are licensed under a [GNU Affero General Public All files in this repository are licensed under a [GNU Affero General Public
License](LICENCE) (version 3 or later). License](LICENCE) (version 3 or later).
# Release Guidelines for the CaosDB Python Client Library
This document specifies release guidelines in addition to the general release
guidelines of the CaosDB Project
([RELEASE_GUIDELINES.md](https://gitlab.com/caosdb/caosdb/blob/dev/RELEASE_GUIDELINES.md))
## General Prerequisites
* All tests are passing.
* FEATURES.md is up-to-date and a public API is being declared in that document.
* CHANGELOG.md is up-to-date.
* dependencies in `setup.cfg` are up-to-date.
## Steps
1. Create a release branch from the dev branch. This prevents further changes
to the code base and a never ending release process. Naming: `release-<VERSION>`
2. Update CHANGELOG.md
3. Check all general prerequisites.
4. Update the version:
- `version` variables in `src/doc/conf.py`
- Version in [setup.cfg](./setup.cfg): Check the `MAJOR`, `MINOR`, `MICRO`, `PRE` variables and set
`ISRELEASED` to `True`. Use the possibility to issue pre-release versions for testing.
5. Merge the release branch into the main branch.
6. Tag the latest commit of the main branch with `v<VERSION>`.
7. Delete the release branch.
8. Remove possibly existing `./dist` directory with old release.
9. Publish the release by executing `./release.sh` with uploads the caosdb
module to the Python Package Index [pypi.org](https://pypi.org).
10. Merge the main branch back into the dev branch.
11. After the merge of main to dev, start a new development version by
increasing at least the micro version in [setup.cfg](./setup.cfg) and
preparing CHANGELOG.md.
12. Create releases on gitlab.com and gitlab.indiscale.com that contain (at
least) the most recent section of the CHANGELOG as the description and link
to the PyPi package.
...@@ -42,13 +42,15 @@ DATADIR = os.path.join(os.path.dirname(__file__), "test_data", ...@@ -42,13 +42,15 @@ DATADIR = os.path.join(os.path.dirname(__file__), "test_data",
"extroot", "use_case_simple_presentation") "extroot", "use_case_simple_presentation")
# TODO: remove this # TODO: remove this
@pytest.fixture
def clear_database():
# TODO(fspreck): Remove once the corresponding advancedtools function can be @pytest.fixture
# used. def clear_database():
ents = db.execute_query("FIND ENTITY WITH ID>99") # TODO(fspreck): Remove once the corresponding advancedtools function can be
if ents: # used.
ents.delete() ents = db.execute_query("FIND ENTITY WITH ID>99")
if ents:
ents.delete()
def test_complete_crawler( def test_complete_crawler(
......
#!/bin/bash
rm -rf dist/ build/ .eggs/
python setup.py sdist bdist_wheel
python -m twine upload -s dist/*
[metadata] [metadata]
name = caoscrawler name = caoscrawler
version = 0.1 version = 0.1.1
author = Alexander Schlemmer author = Alexander Schlemmer
author_email = alexander.schlemmer@ds.mpg.de author_email = alexander.schlemmer@ds.mpg.de
description = A new crawler for caosdb description = A new crawler for caosdb
...@@ -10,19 +10,19 @@ long_description_content_type = text/markdown ...@@ -10,19 +10,19 @@ long_description_content_type = text/markdown
# project_urls # project_urls
classifiers = classifiers =
Programming Language :: Python :: 3 Programming Language :: Python :: 3
License :: OSI Approved :: AGPLv3 License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)
Operating System :: OS Independent Operating System :: OS Independent
[options] [options]
package_dir = package_dir =
= src = src
packages = find: packages = find:
python_requires = >=3.6 python_requires = >=3.8
install_requires = install_requires =
importlib-resources importlib-resources
caosdb caosdb
caosadvancedtools caosadvancedtools >= 0.6.0
yaml-header-tools>=0.2.1 yaml-header-tools >= 0.2.1
pyyaml pyyaml
odfpy #make optional odfpy #make optional
pandas pandas
......
...@@ -218,15 +218,15 @@ def create_records(values: GeneralStore, ...@@ -218,15 +218,15 @@ def create_records(values: GeneralStore,
keys_modified.append((name, key)) keys_modified.append((name, key))
propvalue, collection_mode = handle_value(value, values) propvalue, collection_mode = handle_value(value, values)
if key in SPECIAL_PROPERTIES: if key.lower() in SPECIAL_PROPERTIES:
# e.g. description, name, etc. # e.g. description, name, etc.
# list mode does not work for them # list mode does not work for them
if key == "path" and not propvalue.startswith(os.path.sep): if key.lower() == "path" and not propvalue.startswith(os.path.sep):
propvalue = os.path.sep + propvalue propvalue = os.path.sep + propvalue
# Convert relative to absolute paths: # Convert relative to absolute paths:
propvalue = os.path.normpath(propvalue) propvalue = os.path.normpath(propvalue)
setattr(c_record, key, propvalue) setattr(c_record, key.lower(), propvalue)
else: else:
if c_record.get_property(key) is None: if c_record.get_property(key) is None:
......
...@@ -56,6 +56,9 @@ The same version using cfood macros could be defined as follows: ...@@ -56,6 +56,9 @@ The same version using cfood macros could be defined as follows:
- name: README - name: README
filename: ^README.md$ filename: ^README.md$
The "MarkdownFile" key and its value will be replaced by everything that is
given below "definition" in the Macro.
The expanded version of `ExperimentalData` will look like: The expanded version of `ExperimentalData` will look like:
.. _example_files_2_expanded: .. _example_files_2_expanded:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment