Skip to content

Commit de6213c

Browse files
Merge pull request #198 from pepkit/dev
v0.10.0 Release
2 parents 2d2c66e + 969f95e commit de6213c

30 files changed

+960
-202
lines changed

MANIFEST.in

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,6 @@ include pipestat/schemas/*
44
include pipestat/backends/*
55
include pipestat/backends/file_backend/*
66
include pipestat/backends/db_backend/*
7+
include pipestat/backends/pephub_backend/*
78
include pipestat/pipestatreader/*
89
include pipestat/jinja_templates/*

docs/changelog.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,16 @@
22

33
This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) and [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) format.
44

5+
## [0.10.0] - 2024-07-18
6+
### Fixed
7+
- allow for bool or boolean in schema [#189](https://github.com/pepkit/pipestat/issues/189)
8+
- fix pipestat summarize bugs re: inaccurate paths [#190](https://github.com/pepkit/pipestat/issues/190)
9+
- add support for sqlite dbbackend [#192](https://github.com/pepkit/pipestat/issues/192)
10+
11+
## Added
12+
- pephub backend [#125](https://github.com/pepkit/pipestat/issues/125)
13+
14+
515
## [0.9.3] - 2024-06-06
616
### Fixed
717
- fixed regression with summarizing or creating a table via aggregate_results.yaml and "{record_identifier}" in the results file path

pipestat/__init__.py

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,9 @@
33
import logmuse
44

55
from ._version import __version__
6-
from .exceptions import PipestatError
76
from .const import PKG_NAME
8-
from .pipestat import (
9-
PipestatManager,
10-
SamplePipestatManager,
11-
ProjectPipestatManager,
12-
PipestatBoss,
13-
)
14-
7+
from .exceptions import PipestatError
8+
from .pipestat import PipestatBoss, PipestatManager, ProjectPipestatManager, SamplePipestatManager
159

1610
__all__ = [
1711
"PipestatError",

pipestat/_version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
__version__ = "0.9.3"
1+
__version__ = "0.10.0"

pipestat/argparser.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,10 @@
22

33
import argparse
44
import os
5+
56
from ubiquerg import VersionInHelpParser
6-
from ._version import __version__
77

8+
from ._version import __version__
89
from .const import ENV_VARS, PKG_NAME, STATUS_SCHEMA
910

1011
REPORT_CMD = "report"

pipestat/backends/abstract.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
import os
22
from abc import ABC
33
from logging import getLogger
4+
from typing import Any, Dict, List, Optional, Tuple, Union
5+
46
from ubiquerg import expandpath
5-
from typing import List, Dict, Any, Optional, Union, Tuple
67

78
from ..const import PKG_NAME, STATUS
8-
from ..helpers import force_symlink
99
from ..exceptions import SchemaError
10-
10+
from ..helpers import force_symlink
1111

1212
_LOGGER = getLogger(PKG_NAME)
1313

pipestat/backends/db_backend/db_helpers.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,7 @@
22
from typing import Any, Dict, List, Optional, Union
33
from urllib.parse import quote_plus
44

5-
6-
from sqlmodel import and_, or_, Integer, Float, String, Boolean
7-
5+
from sqlmodel import Boolean, Float, Integer, String, and_, or_
86

97
from pipestat.exceptions import MissingConfigDataError
108

pipestat/backends/db_backend/db_parsed_schema.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,10 @@
77
from typing import Any, Dict, List, Mapping, Optional
88

99
from pydantic import ConfigDict, create_model
10-
11-
1210
from sqlalchemy import Column, null
1311
from sqlalchemy.dialects.postgresql import JSONB
1412
from sqlmodel import Field, SQLModel
13+
1514
from pipestat.const import (
1615
CANONICAL_TYPES,
1716
CLASSES_BY_TYPE,
@@ -22,13 +21,13 @@
2221
PROJECT_NAME,
2322
RECORD_IDENTIFIER,
2423
SAMPLE_NAME,
25-
STATUS,
2624
SCHEMA_DESC_KEY,
2725
SCHEMA_ITEMS_KEY,
2826
SCHEMA_PROP_KEY,
2927
SCHEMA_TYPE_KEY,
28+
STATUS,
3029
)
31-
from pipestat.exceptions import SchemaError, PipestatError
30+
from pipestat.exceptions import PipestatError, SchemaError
3231
from pipestat.parsed_schema import ParsedSchema
3332

3433
_LOGGER = logging.getLogger(__name__)

pipestat/backends/db_backend/dbbackend.py

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,24 @@
11
import copy
22
import datetime
3-
from logging import getLogger
43
from contextlib import contextmanager
5-
from typing import List, Dict, Any, Optional, Union, NoReturn, Tuple
4+
from logging import getLogger
5+
from typing import Any, Dict, List, NoReturn, Optional, Tuple, Union
66

7-
from sqlmodel import SQLModel, Session, create_engine, select as sql_select
7+
from sqlmodel import Session, SQLModel, create_engine
8+
from sqlmodel import select as sql_select
89

9-
from pipestat.backends.db_backend.db_helpers import selection_filter
1010
from pipestat.backends.abstract import PipestatBackend
11+
from pipestat.backends.db_backend.db_helpers import selection_filter
12+
13+
from ...const import CREATED_TIME, MODIFIED_TIME, PKG_NAME, RECORD_IDENTIFIER, STATUS
1114
from ...exceptions import (
15+
ColumnNotFoundError,
1216
PipestatDatabaseError,
1317
RecordNotFoundError,
1418
SchemaError,
15-
ColumnNotFoundError,
16-
UnrecognizedStatusError,
1719
SchemaNotFoundError,
20+
UnrecognizedStatusError,
1821
)
19-
from ...const import PKG_NAME, STATUS, RECORD_IDENTIFIER, CREATED_TIME, MODIFIED_TIME
20-
2122

2223
_LOGGER = getLogger(PKG_NAME)
2324

pipestat/backends/file_backend/filebackend.py

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,21 @@
11
import datetime
2-
import os.path
32
import operator
3+
import os.path
44
from copy import deepcopy
55
from functools import reduce
6-
from itertools import chain
7-
from ...helpers import get_all_result_files
8-
9-
106
from glob import glob
7+
from itertools import chain
118
from logging import getLogger
12-
from yacman import FutureYAMLConfigManager as YAMLConfigManager
13-
from yacman import read_lock, write_lock
9+
from typing import Any, Callable, Dict, List, Literal, Optional, Tuple, Union
1410

1511
from ubiquerg import create_lock, remove_lock
12+
from yacman import FutureYAMLConfigManager as YAMLConfigManager
13+
from yacman import read_lock, write_lock
1614

17-
from typing import List, Dict, Any, Optional, Union, Literal, Callable, Tuple
18-
19-
from ...exceptions import UnrecognizedStatusError, PipestatError
2015
from ...backends.abstract import PipestatBackend
21-
from ...const import DATE_FORMAT, PKG_NAME, CREATED_TIME, MODIFIED_TIME, META_KEY, HISTORY_KEY
22-
16+
from ...const import CREATED_TIME, DATE_FORMAT, HISTORY_KEY, META_KEY, MODIFIED_TIME, PKG_NAME
17+
from ...exceptions import PipestatError, UnrecognizedStatusError
18+
from ...helpers import get_all_result_files
2319

2420
_LOGGER = getLogger(PKG_NAME)
2521

@@ -46,7 +42,7 @@ def __init__(
4642
this object method calls
4743
:param str pipeline_name: name of pipeline associated with result
4844
:param str pipeline_type: "sample" or "project"
49-
:param str parsed_schema: results output schema. Used to construct DB columns.
45+
:param str parsed_schema: results output schema.
5046
:param str status_schema: schema containing pipeline statuses e.g. 'running'
5147
:param str status_file_dir: directory for placing status flags
5248
:param str result_formatter: function for formatting result

pipestat/backends/pephub_backend/__init__.py

Whitespace-only changes.

0 commit comments

Comments
 (0)