Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
9
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Switch to GitLab Next
Sign in / Register
Toggle navigation
Open sidebar
datadrivendiscovery
tests-data
Commits
8f786c45
Commit
8f786c45
authored
Nov 05, 2020
by
Mitar
1
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fixing typing.
parent
af4afcf9
Pipeline
#212587243
failed with stage
in 1 minute and 42 seconds
Changes
13
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
57 additions
and
39 deletions
+57
-39
primitives/setup.cfg
primitives/setup.cfg
+8
-15
primitives/test_primitives/abs_sum.py
primitives/test_primitives/abs_sum.py
+1
-1
primitives/test_primitives/container_hyperparam.py
primitives/test_primitives/container_hyperparam.py
+1
-1
primitives/test_primitives/fail.py
primitives/test_primitives/fail.py
+2
-0
primitives/test_primitives/file_reader.py
primitives/test_primitives/file_reader.py
+2
-2
primitives/test_primitives/monomial.py
primitives/test_primitives/monomial.py
+10
-5
primitives/test_primitives/multi_data_hyperparam.py
primitives/test_primitives/multi_data_hyperparam.py
+1
-1
primitives/test_primitives/postgresql.py
primitives/test_primitives/postgresql.py
+19
-6
primitives/test_primitives/primitive_hyperparam.py
primitives/test_primitives/primitive_hyperparam.py
+1
-1
primitives/test_primitives/primitive_sum.py
primitives/test_primitives/primitive_sum.py
+1
-1
primitives/test_primitives/random.py
primitives/test_primitives/random.py
+2
-2
primitives/test_primitives/random_classifier.py
primitives/test_primitives/random_classifier.py
+8
-3
primitives/test_primitives/sum.py
primitives/test_primitives/sum.py
+1
-1
No files found.
primitives/setup.cfg
View file @
8f786c45
...
...
@@ -5,21 +5,14 @@ max-line-length = 200
description-file = README.md
[mypy]
pretty = True
show_error_context = True
show_column_numbers = True
ignore_missing_imports = True
warn_redundant_casts = True
# TODO: Enable back once false positives are fixed.
# See: https://github.com/python/mypy/issues/4412
#warn_unused_ignores = True
warn_unused_ignores = True
warn_unused_configs = True
disallow_untyped_defs = True
# TODO: Remove once this is fixed: https://github.com/python/mypy/issues/4300
[mypy-d3m.container.list]
ignore_errors = True
# TODO: Remove once this is fixed: https://github.com/python/mypy/issues/4300
[mypy-d3m.metadata.hyperparams]
ignore_errors = True
# TODO: Remove once this is fixed: https://github.com/python/mypy/pull/4384#issuecomment-354033177
[mypy-d3m.primitive_interfaces.distance]
ignore_errors = True
disallow_incomplete_defs = True
# TODO: Enable eventually.
# disallow_untyped_decorators = True
primitives/test_primitives/abs_sum.py
View file @
8f786c45
import
os.path
import
typing
import
numpy
as
np
# type: ignore
import
numpy
as
np
from
d3m
import
container
,
utils
,
exceptions
from
d3m.metadata
import
hyperparams
,
base
as
metadata_base
...
...
primitives/test_primitives/container_hyperparam.py
View file @
8f786c45
import
os.path
import
typing
import
numpy
as
np
# type: ignore
import
numpy
as
np
from
d3m
import
container
,
utils
from
d3m.metadata
import
hyperparams
,
base
as
metadata_base
...
...
primitives/test_primitives/fail.py
View file @
8f786c45
...
...
@@ -80,6 +80,8 @@ class FailPrimitive(transformer.TransformerPrimitiveBase[Inputs, Outputs, Hyperp
'primitive_family'
:
metadata_base
.
PrimitiveFamily
.
OPERATOR
,
})
_fitted
:
bool
def
__init__
(
self
,
*
,
hyperparams
:
Hyperparams
)
->
None
:
super
().
__init__
(
hyperparams
=
hyperparams
)
self
.
_conditional_fail
(
'__init__'
)
...
...
primitives/test_primitives/file_reader.py
View file @
8f786c45
import
os
import
typing
import
numpy
# type: ignore
import
frozendict
# type: ignore
import
numpy
import
frozendict
from
d3m
import
container
,
utils
as
d3m_utils
from
d3m.base
import
primitives
...
...
primitives/test_primitives/monomial.py
View file @
8f786c45
...
...
@@ -75,14 +75,19 @@ class MonomialPrimitive(supervised_learning.SupervisedLearnerPrimitiveBase[Input
'primitive_family'
:
metadata_base
.
PrimitiveFamily
.
REGRESSION
,
})
_a
:
float
_training_inputs
:
typing
.
Optional
[
Inputs
]
_training_outputs
:
typing
.
Optional
[
Outputs
]
_fitted
:
bool
# Random seed is not needed, but we need it in tests to test which random seed was passed to a primitive.
def
__init__
(
self
,
*
,
hyperparams
:
Hyperparams
,
random_seed
:
int
=
0
)
->
None
:
super
().
__init__
(
hyperparams
=
hyperparams
,
random_seed
=
random_seed
)
self
.
_a
:
float
=
0
self
.
_training_inputs
:
Inputs
=
None
self
.
_training_outputs
:
Outputs
=
None
self
.
_fitted
:
bool
=
False
self
.
_a
=
0
self
.
_training_inputs
=
None
self
.
_training_outputs
=
None
self
.
_fitted
=
False
def
produce
(
self
,
*
,
inputs
:
Inputs
,
timeout
:
float
=
None
,
iterations
:
int
=
None
)
->
base
.
CallResult
[
Outputs
]:
if
self
.
_a
is
None
:
...
...
@@ -109,7 +114,7 @@ class MonomialPrimitive(supervised_learning.SupervisedLearnerPrimitiveBase[Input
if
self
.
_fitted
:
return
base
.
CallResult
(
None
)
if
not
self
.
_training_inputs
or
not
self
.
_training_
in
puts
:
if
self
.
_training_inputs
is
None
or
self
.
_training_
out
puts
is
None
:
raise
ValueError
(
"Missing training data."
)
quotients
=
[
output
/
input
for
output
,
input
in
zip
(
self
.
_training_outputs
,
self
.
_training_inputs
)
if
input
!=
0
]
...
...
primitives/test_primitives/multi_data_hyperparam.py
View file @
8f786c45
import
os.path
import
typing
import
numpy
as
np
# type: ignore
import
numpy
as
np
from
d3m
import
container
,
utils
from
d3m.metadata
import
hyperparams
,
base
as
metadata_base
...
...
primitives/test_primitives/postgresql.py
View file @
8f786c45
...
...
@@ -9,8 +9,8 @@ import subprocess
import
time
import
typing
import
prctl
# type: ignore
import
psycopg2
# type: ignore
import
prctl
import
psycopg2
from
d3m
import
container
,
utils
from
d3m.metadata
import
base
as
metadata_base
,
hyperparams
...
...
@@ -92,13 +92,21 @@ class PostgreSQLPrimitive(transformer.TransformerPrimitiveBase[Inputs, Outputs,
'primitive_family'
:
metadata_base
.
PrimitiveFamily
.
OPERATOR
,
})
_connection
:
typing
.
Optional
[
psycopg2
.
connection
]
_process
:
typing
.
Optional
[
subprocess
.
Popen
]
_postgresql_base
:
typing
.
Optional
[
str
]
_config_dir
:
str
_data_dir
:
str
_run_dir
:
str
_config_file
:
str
def
__init__
(
self
,
*
,
hyperparams
:
Hyperparams
,
temporary_directory
:
str
=
None
)
->
None
:
super
().
__init__
(
hyperparams
=
hyperparams
,
temporary_directory
=
temporary_directory
)
# Initialize it early so that "__del__" has access to these attributes.
self
.
_connection
:
psycopg2
.
connection
=
None
self
.
_process
:
subprocess
.
Popen
=
None
self
.
_postgresql_base
:
str
=
None
self
.
_connection
=
None
self
.
_process
=
None
self
.
_postgresql_base
=
None
self
.
_postgresql_base
=
tempfile
.
mkdtemp
()
os
.
chmod
(
self
.
_postgresql_base
,
0o755
)
...
...
@@ -203,9 +211,14 @@ class PostgreSQLPrimitive(transformer.TransformerPrimitiveBase[Inputs, Outputs,
connection_error
=
error
time
.
sleep
(
0.1
)
else
:
raise
connection_error
if
connection_error
is
None
:
raise
TimeoutError
(
"Timeout waiting for the connection."
)
else
:
raise
connection_error
def
produce
(
self
,
*
,
inputs
:
Inputs
,
timeout
:
float
=
None
,
iterations
:
int
=
None
)
->
base
.
CallResult
[
Outputs
]:
assert
self
.
_connection
is
not
None
with
self
.
_connection
.
cursor
()
as
cursor
:
cursor
.
execute
(
"SELECT 42;"
)
return
base
.
CallResult
(
container
.
List
([
cursor
.
fetchone
()[
0
]],
generate_metadata
=
True
))
...
...
primitives/test_primitives/primitive_hyperparam.py
View file @
8f786c45
import
os.path
import
typing
import
pandas
as
pd
# type: ignore
import
pandas
as
pd
from
d3m
import
container
,
utils
from
d3m.metadata
import
hyperparams
,
base
as
metadata_base
...
...
primitives/test_primitives/primitive_sum.py
View file @
8f786c45
...
...
@@ -2,7 +2,7 @@ import os.path
import
time
import
typing
import
numpy
# type: ignore
import
numpy
from
d3m
import
container
,
exceptions
,
utils
from
d3m.metadata
import
base
as
metadata_base
,
hyperparams
...
...
primitives/test_primitives/random.py
View file @
8f786c45
import
os.path
import
typing
import
numpy
# type: ignore
import
numpy
from
d3m
import
container
,
utils
from
d3m.metadata
import
base
as
metadata_base
,
hyperparams
...
...
@@ -151,4 +151,4 @@ class RandomPrimitive(generator.GeneratorPrimitiveBase[Outputs, None, Hyperparam
A dict of values for each produce method wrapped inside ``MultiCallResult``.
"""
return
self
.
_fit_multi_produce
(
produce_methods
=
produce_methods
,
timeout
=
timeout
,
iterations
=
iterations
,
inputs
=
inputs
)
# type: ignore
return
self
.
_fit_multi_produce
(
produce_methods
=
produce_methods
,
timeout
=
timeout
,
iterations
=
iterations
,
inputs
=
inputs
)
primitives/test_primitives/random_classifier.py
View file @
8f786c45
...
...
@@ -63,14 +63,19 @@ class RandomClassifierPrimitive(SupervisedLearnerPrimitiveBase[Inputs, Outputs,
],
})
_random
:
random
.
Random
_training_outputs
:
typing
.
Optional
[
Outputs
]
_fitted
:
bool
_classes
:
typing
.
Optional
[
typing
.
List
]
def
__init__
(
self
,
*
,
hyperparams
:
Hyperparams
,
random_seed
:
int
=
0
)
->
None
:
super
().
__init__
(
hyperparams
=
hyperparams
,
random_seed
=
random_seed
)
self
.
_random
:
random
.
Random
=
random
.
Random
()
self
.
_random
=
random
.
Random
()
self
.
_random
.
seed
(
random_seed
)
self
.
_training_outputs
:
Outputs
=
None
self
.
_training_outputs
=
None
self
.
_fitted
=
False
self
.
_classes
:
typing
.
List
=
[]
self
.
_classes
=
[]
def
set_training_data
(
self
,
*
,
inputs
:
Inputs
,
outputs
:
Outputs
)
->
None
:
self
.
_training_outputs
=
outputs
...
...
primitives/test_primitives/sum.py
View file @
8f786c45
...
...
@@ -3,7 +3,7 @@ import pickle
import
typing
from
http
import
client
import
numpy
# type: ignore
import
numpy
from
d3m
import
container
,
utils
from
d3m.metadata
import
base
as
metadata_base
,
hyperparams
...
...
Mitar
@mitar
mentioned in issue
#9 (closed)
·
Nov 06, 2020
mentioned in issue
#9 (closed)
mentioned in issue #9
Toggle commit list
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment