MEDfl 0.1.24__py3-none-any.whl → 0.1.26__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
- Name: Medfl
3
- Version: 0.1.24
2
+ Name: MEDfl
3
+ Version: 0.1.26
4
4
  Summary: Python Open-source package for simulating federated learning and differential privacy
5
5
  Home-page: https://github.com/HaithemLamri/MEDfl
6
6
  Author: MEDomics consortium
@@ -0,0 +1,32 @@
1
+ MEDfl-0.1.26.data/scripts/setup_mysql.sh,sha256=PXl271yvYBrXwrZ7P0tsYHnGkOubKvRaFee4MnzsSko,560
2
+ Medfl/__init__.py,sha256=wamSaVIS4RoIHcTCLQPKQ5f8odcy87mRCKyRR7-Qpu4,57
3
+ Medfl/LearningManager/__init__.py,sha256=mvlAmHEHljXGaB6Ij0EPN0Txw21qX25ELK3X7QkoVwA,358
4
+ Medfl/LearningManager/client.py,sha256=9WyLYCsI9JuHjneLbbzDf7HtzjYINuLfqwkbxOsrBrE,6083
5
+ Medfl/LearningManager/dynamicModal.py,sha256=0mTvDJlss0uSJ3_EXOuL_d-zRmFyXaKB4W4ql-uEX8Y,10821
6
+ Medfl/LearningManager/federated_dataset.py,sha256=fQqIbhO6LSk16Ob9z6RohaZ8X71Ff-yueynjulrl4M0,2141
7
+ Medfl/LearningManager/flpipeline.py,sha256=M4-OL4nlogv08J_YsyDsGHXR6xe8BWx4HIsuL1QyUvY,7303
8
+ Medfl/LearningManager/model.py,sha256=DA7HP34Eq1Ra65OlkBmjH9d2MD7OEbsOhfxD48l4QOk,7679
9
+ Medfl/LearningManager/params.yaml,sha256=5I-NljhnSaqzjkWVNzrOtrB8z7tnHBKiBmY-mKGhBQM,450
10
+ Medfl/LearningManager/params_optimiser.py,sha256=pjhDskhSPuca-jnarYoJcFVBvRkdD9tD3992q_eMPSE,18060
11
+ Medfl/LearningManager/plot.py,sha256=iPqMV9rVd7hquoFixDL20OzXI5bMpBW41bkVmTKIWtE,7927
12
+ Medfl/LearningManager/server.py,sha256=7edxPkZ9Ju3Mep_BSHQpUNgW9HKfCui3_l996buJVlU,7258
13
+ Medfl/LearningManager/strategy.py,sha256=n0asQajkHfGLDX3QbbV5qntQA-xuJZU8Z92XccZENsA,3517
14
+ Medfl/LearningManager/utils.py,sha256=gAFkA4cUimMaUh40lvveL8b7NvB8zPjWonwZKVk8HpE,9342
15
+ Medfl/NetManager/__init__.py,sha256=RhO9Ya6wXOdM6qO58wjTD-lNL7-q8KvPDvSccYP9wUY,246
16
+ Medfl/NetManager/database_connector.py,sha256=zZYOYD1ZGpdOxiH_HuMFnofjJimOcnoZ02fdD0Rkh9E,1538
17
+ Medfl/NetManager/dataset.py,sha256=eEuVzCp5dGD4tvDVKq6jlSReecge7T20ByG4d7_cnXU,2869
18
+ Medfl/NetManager/flsetup.py,sha256=CS7531I08eLm6txMIDWFMCIrPP-dNpOLBTaR2BR6X0c,11754
19
+ Medfl/NetManager/net_helper.py,sha256=leXwpkDewj-_bXZUO3S_DscELnyZogb6jmz6Bjrsmag,6860
20
+ Medfl/NetManager/net_manager_queries.py,sha256=2dfhba0iuh40kVoC7am-vC4Hlrvr-zfJ5ESymsI1Kps,4327
21
+ Medfl/NetManager/network.py,sha256=NPHaSSLLA9FIBkqg3Il8g7VDQ1Ds8rH4d91srT6wUNI,5730
22
+ Medfl/NetManager/node.py,sha256=HQPKy-RHs5SkVxPo5EdjD-W9XK--TaFXa49ooua5_kU,6344
23
+ alembic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
24
+ alembic/env.py,sha256=a4zJAzPNLHnIrUlXCqf_8vuAlFu0pceFJJKM1PQaOI4,1649
25
+ scripts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
26
+ scripts/base.py,sha256=pR7StIt3PpX30aoh53gMkpeNJMHytAPhdc7N09tCITA,781
27
+ scripts/config.ini,sha256=tDQQlpwZbCFQuSS017yjEiLglLihp6wETbWtNrSWeAA,82
28
+ scripts/create_db.py,sha256=iWE1z33rU_KbIeqoVzdWLhDRLk00TcRf2iYuqpDzOjw,4494
29
+ MEDfl-0.1.26.dist-info/METADATA,sha256=cX617jlzpKbpwieidkfDyDT4Vi4sK1NMj87BFCc1qZ8,5580
30
+ MEDfl-0.1.26.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
31
+ MEDfl-0.1.26.dist-info/top_level.txt,sha256=hMAmSbfVxxQBmDx0uaQeXYlSrdC42iD58FyzJGl2lAs,22
32
+ MEDfl-0.1.26.dist-info/RECORD,,
@@ -1,3 +1,3 @@
1
- Medfl
1
+ MEDfl
2
2
  alembic
3
3
  scripts
@@ -1,4 +1,4 @@
1
- # # Medfl/LearningManager/__init__.py
1
+ # # MEDfl/LearningManager/__init__.py
2
2
 
3
3
  # # Import modules from this package
4
4
  # from .client import *
@@ -72,7 +72,7 @@ class FlowerClient(fl.client.NumPyClient):
72
72
  raise TypeError("cid argument must be a string")
73
73
 
74
74
  if not isinstance(self.local_model, Model):
75
- raise TypeError("local_model argument must be a Medfl.LearningManager.model.Model")
75
+ raise TypeError("local_model argument must be a MEDfl.LearningManager.model.Model")
76
76
 
77
77
  if not isinstance(self.trainloader, DataLoader):
78
78
  raise TypeError("trainloader argument must be a torch.utils.data.dataloader")
@@ -1,6 +1,6 @@
1
- from Medfl.NetManager.net_helper import *
2
- from Medfl.NetManager.net_manager_queries import *
3
- from Medfl.NetManager.database_connector import DatabaseManager
1
+ from MEDfl.NetManager.net_helper import *
2
+ from MEDfl.NetManager.net_manager_queries import *
3
+ from MEDfl.NetManager.database_connector import DatabaseManager
4
4
 
5
5
  class FederatedDataset:
6
6
  def __init__(
@@ -9,12 +9,12 @@ from sqlalchemy import text
9
9
  from torch.utils.data import DataLoader, TensorDataset
10
10
  import torch
11
11
 
12
- from Medfl.LearningManager.server import FlowerServer
13
- from Medfl.LearningManager.utils import params, test
14
- from Medfl.NetManager.net_helper import get_flpipeline_from_name
15
- from Medfl.NetManager.net_manager_queries import (CREATE_FLPIPELINE_QUERY,
12
+ from MEDfl.LearningManager.server import FlowerServer
13
+ from MEDfl.LearningManager.utils import params, test
14
+ from MEDfl.NetManager.net_helper import get_flpipeline_from_name
15
+ from MEDfl.NetManager.net_manager_queries import (CREATE_FLPIPELINE_QUERY,
16
16
  DELETE_FLPIPELINE_QUERY , CREATE_TEST_RESULTS_QUERY)
17
- from Medfl.NetManager.database_connector import DatabaseManager
17
+ from MEDfl.NetManager.database_connector import DatabaseManager
18
18
 
19
19
  def create_query(name, description, creation_date, result):
20
20
  query = text(
@@ -12,10 +12,10 @@ from sklearn.base import BaseEstimator
12
12
  from sklearn.metrics import make_scorer, precision_score, recall_score, accuracy_score, f1_score,roc_auc_score, balanced_accuracy_score
13
13
  import optuna
14
14
 
15
- from Medfl.LearningManager.model import Model
16
- from Medfl.LearningManager.strategy import Strategy
17
- from Medfl.LearningManager.server import FlowerServer
18
- from Medfl.LearningManager.flpipeline import FLpipeline
15
+ from MEDfl.LearningManager.model import Model
16
+ from MEDfl.LearningManager.strategy import Strategy
17
+ from MEDfl.LearningManager.server import FlowerServer
18
+ from MEDfl.LearningManager.flpipeline import FLpipeline
19
19
 
20
20
  class BinaryClassifier(nn.Module):
21
21
  def __init__(self, input_size, num_layers, layer_size):
@@ -115,10 +115,11 @@ class FlowerServer:
115
115
  f"cuda:{int(cid) % 4}" if torch.cuda.is_available() else "cpu"
116
116
  )
117
117
  client_model = copy.deepcopy(self.global_model)
118
-
118
+
119
119
  trainloader = self.fed_dataset.trainloaders[int(cid)]
120
120
  valloader = self.fed_dataset.valloaders[int(cid)]
121
121
  # this helps in making plots
122
+
122
123
  client = FlowerClient(
123
124
  cid, client_model, trainloader, valloader, self.diff_priv
124
125
  )
@@ -165,7 +166,8 @@ class FlowerServer:
165
166
  ray_init_args = {"include_dashboard": False
166
167
  , "object_store_memory": 78643200
167
168
  }
168
-
169
+ self.fed_dataset.eng = None
170
+
169
171
  history = fl.simulation.start_simulation(
170
172
  client_fn=self.client_fn,
171
173
  num_clients=self.num_clients,
@@ -7,7 +7,7 @@ from sklearn.metrics import *
7
7
  from yaml.loader import SafeLoader
8
8
 
9
9
 
10
- from Medfl.NetManager.database_connector import DatabaseManager
10
+ from MEDfl.NetManager.database_connector import DatabaseManager
11
11
 
12
12
  # from scripts.base import *
13
13
  import json
@@ -44,7 +44,7 @@ DEFAULT_CONFIG_PATH = 'db_config.ini'
44
44
 
45
45
 
46
46
  def load_db_config():
47
- config = os.environ.get('MEDFL_DB_CONFIG')
47
+ config = os.environ.get('MEDfl_DB_CONFIG')
48
48
 
49
49
  if config:
50
50
  return ast.literal_eval(config)
@@ -58,7 +58,7 @@ def set_db_config(config_path):
58
58
  config = configparser.ConfigParser()
59
59
  config.read(config_path)
60
60
  if (config['mysql']):
61
- os.environ['MEDFL_DB_CONFIG'] = str(dict(config['mysql']))
61
+ os.environ['MEDfl_DB_CONFIG'] = str(dict(config['mysql']))
62
62
  else:
63
63
  raise ValueError(f"mysql key not found in file '{config_path}'")
64
64
 
@@ -1,4 +1,4 @@
1
- # # Medfl/NetworkManager/__init__.py
1
+ # # MEDfl/NetworkManager/__init__.py
2
2
 
3
3
  # # Import modules from this package
4
4
  # from .dataset import *
@@ -7,7 +7,7 @@ import subprocess
7
7
  class DatabaseManager:
8
8
  def __init__(self):
9
9
 
10
- from Medfl.LearningManager.utils import load_db_config
10
+ from MEDfl.LearningManager.utils import load_db_config
11
11
  db_config = load_db_config()
12
12
  if db_config:
13
13
  self.config = db_config
@@ -4,7 +4,7 @@ from sqlalchemy import text
4
4
  from .net_helper import *
5
5
  from .net_manager_queries import (DELETE_DATASET, INSERT_DATASET,
6
6
  SELECT_ALL_DATASET_NAMES)
7
- from Medfl.NetManager.database_connector import DatabaseManager
7
+ from MEDfl.NetManager.database_connector import DatabaseManager
8
8
 
9
9
  class DataSet:
10
10
  def __init__(self, name: str, path: str, engine=None):
@@ -3,14 +3,14 @@ from datetime import datetime
3
3
 
4
4
  from torch.utils.data import random_split, DataLoader, Dataset
5
5
 
6
- from Medfl.LearningManager.federated_dataset import FederatedDataset
6
+ from MEDfl.LearningManager.federated_dataset import FederatedDataset
7
7
  from .net_helper import *
8
8
  from .net_manager_queries import * # Import the sql_queries module
9
9
  from .network import Network
10
10
 
11
11
  from .node import Node
12
12
 
13
- from Medfl.NetManager.database_connector import DatabaseManager
13
+ from MEDfl.NetManager.database_connector import DatabaseManager
14
14
 
15
15
 
16
16
  class FLsetup:
@@ -46,7 +46,7 @@ class FLsetup:
46
46
 
47
47
  if not isinstance(self.network, Network):
48
48
  raise TypeError(
49
- "network argument must be a Medfl.NetManager.Network "
49
+ "network argument must be a MEDfl.NetManager.Network "
50
50
  )
51
51
 
52
52
  def create(self):
@@ -8,7 +8,7 @@ import pandas as pd
8
8
  from torch.utils.data import TensorDataset
9
9
  import numpy as np
10
10
 
11
- from Medfl.NetManager.database_connector import DatabaseManager
11
+ from MEDfl.NetManager.database_connector import DatabaseManager
12
12
 
13
13
 
14
14
  def is_str(data_df, row, x):
@@ -133,11 +133,8 @@ def get_nodeid_from_name(name):
133
133
  db_manager.connect()
134
134
  my_eng = db_manager.get_connection()
135
135
 
136
- NodeId = int(
137
- pd.read_sql(
138
- text(f"SELECT NodeId FROM Nodes WHERE NodeName = '{name}'"), my_eng
139
- ).iloc[0, 0]
140
- )
136
+ result_proxy = my_eng.execute(f"SELECT NodeId FROM Nodes WHERE NodeName = '{name}'")
137
+ NodeId = int(result_proxy.fetchone()[0])
141
138
  return NodeId
142
139
 
143
140
 
@@ -156,12 +153,8 @@ def get_netid_from_name(name):
156
153
  my_eng = db_manager.get_connection()
157
154
 
158
155
  try:
159
- NetId = int(
160
- pd.read_sql(
161
- text(f"SELECT NetId FROM Networks WHERE NetName = '{name}'"),
162
- my_eng,
163
- ).iloc[0, 0]
164
- )
156
+ result_proxy = my_eng.execute(f"SELECT NetId FROM Networks WHERE NetName = '{name}'")
157
+ NetId = int(result_proxy.fetchone()[0])
165
158
  except:
166
159
  NetId = None
167
160
  return NetId
@@ -182,12 +175,10 @@ def get_flsetupid_from_name(name):
182
175
  my_eng = db_manager.get_connection()
183
176
 
184
177
  try:
185
- id = int(
186
- pd.read_sql(
187
- text(f"SELECT FLsetupId FROM FLsetup WHERE name = '{name}'"),
188
- my_eng,
189
- ).iloc[0, 0]
190
- )
178
+
179
+ result_proxy = my_eng.execute(f"SELECT FLsetupId FROM FLsetup WHERE name = '{name}'")
180
+ id = int(result_proxy.fetchone()[0])
181
+
191
182
  except:
192
183
  id = None
193
184
  return id
@@ -208,12 +199,9 @@ def get_flpipeline_from_name(name):
208
199
  my_eng = db_manager.get_connection()
209
200
 
210
201
  try:
211
- id = int(
212
- pd.read_sql(
213
- text(f"SELECT id FROM FLpipeline WHERE name = '{name}'"),
214
- my_eng,
215
- ).iloc[0, 0]
216
- )
202
+
203
+ result_proxy = my_eng.execute(f"SELECT id FROM FLpipeline WHERE name = '{name}'")
204
+ id = int(result_proxy.fetchone()[0])
217
205
  except:
218
206
  id = None
219
207
  return id
@@ -234,12 +222,9 @@ def get_feddataset_id_from_name(name):
234
222
  my_eng = db_manager.get_connection()
235
223
 
236
224
  try:
237
- id = int(
238
- pd.read_sql(
239
- text(f"SELECT FedId FROM FedDatasets WHERE name = '{name}'"),
240
- my_eng,
241
- ).iloc[0, 0]
242
- )
225
+
226
+ result_proxy = my_eng.execute(f"SELECT FedId FROM FedDatasets WHERE name = '{name}'")
227
+ id = int(result_proxy.fetchone()[0])
243
228
  except:
244
229
  id = None
245
230
  return id
@@ -256,9 +241,8 @@ def master_table_exists():
256
241
  db_manager.connect()
257
242
  my_eng = db_manager.get_connection()
258
243
 
259
- return pd.read_sql(
260
- text(
261
- " SELECT EXISTS ( SELECT TABLE_NAME FROM information_schema.TABLES WHERE TABLE_NAME = 'MasterDataset' )"
262
- ),
263
- my_eng,
264
- ).values[0][0]
244
+
245
+ sql_query = text("SELECT EXISTS (SELECT TABLE_NAME FROM information_schema.TABLES WHERE TABLE_NAME = 'MasterDataset')")
246
+ result = my_eng.execute(sql_query)
247
+ exists = result.scalar()
248
+ return exists
@@ -1,6 +1,6 @@
1
- # src/Medfl/NetManager/network.py
1
+ # src/MEDfl/NetManager/network.py
2
2
 
3
- from Medfl.LearningManager.utils import *
3
+ from MEDfl.LearningManager.utils import *
4
4
 
5
5
  from .net_helper import *
6
6
  from .net_manager_queries import (CREATE_MASTER_DATASET_TABLE_QUERY,
@@ -10,7 +10,9 @@ from .net_manager_queries import (CREATE_MASTER_DATASET_TABLE_QUERY,
10
10
  UPDATE_NETWORK_QUERY, GET_NETWORK_QUERY)
11
11
  from .node import Node
12
12
  import pandas as pd
13
- from Medfl.LearningManager.utils import params
13
+ from MEDfl.LearningManager.utils import params
14
+
15
+ from sqlalchemy import text
14
16
 
15
17
 
16
18
  class Network:
@@ -104,9 +106,10 @@ class Network:
104
106
  DataFrame: A DataFrame containing information about all nodes in the network.
105
107
 
106
108
  """
107
- return pd.read_sql(
108
- text(LIST_ALL_NODES_QUERY.format(name=self.name)), self.eng
109
- )
109
+ query = text(LIST_ALL_NODES_QUERY.format(name=self.name))
110
+ result_proxy = self.eng.execute(query)
111
+ result_df = pd.DataFrame(result_proxy.fetchall(), columns=result_proxy.keys())
112
+ return result_df
110
113
 
111
114
  def create_master_dataset(self, path_to_csv: str = params['path_to_master_csv']):
112
115
  """
@@ -165,4 +168,7 @@ class Network:
165
168
  db_manager.connect() ;
166
169
  my_eng = db_manager.get_connection() ;
167
170
 
168
- return pd.read_sql(text("SELECT * FROM Networks"), my_eng)
171
+ result_proxy = my_eng.execute("SELECT * FROM Networks")
172
+ result = result_proxy.fetchall()
173
+ return result
174
+
Medfl/NetManager/node.py CHANGED
@@ -2,8 +2,8 @@ import pandas as pd
2
2
 
3
3
  from .net_helper import *
4
4
  from .net_manager_queries import *
5
- from Medfl.LearningManager.utils import params
6
- from Medfl.NetManager.database_connector import DatabaseManager
5
+ from MEDfl.LearningManager.utils import params
6
+ from MEDfl.NetManager.database_connector import DatabaseManager
7
7
 
8
8
  class Node:
9
9
  """
@@ -74,10 +74,12 @@ class Node:
74
74
  print("MasterDataset doesn't exist")
75
75
  else:
76
76
  columns = data_df.columns.tolist()
77
+
77
78
  # get master_dataset columns
78
- master_table_columns = pd.read_sql(
79
- text(SELECT_MASTER_COLUMNS_QUERY), self.engine
80
- ).columns.tolist()
79
+ result_proxy = self.engine.execute(SELECT_MASTER_COLUMNS_QUERY)
80
+ master_table_columns = result_proxy.keys()
81
+
82
+
81
83
  assert [x == y for x, y in zip(master_table_columns, columns)]
82
84
 
83
85
  def update_node(self):
@@ -94,21 +96,13 @@ class Node:
94
96
  """
95
97
  NodeId = get_nodeid_from_name(self.name)
96
98
  if column_name is not None:
97
-
98
- node_dataset = pd.read_sql(
99
- text(
100
- SELECT_DATASET_BY_COLUMN_QUERY.format(
101
- column_name, self.name
102
- )
103
- ),
104
- self.engine,
105
- )
106
-
99
+ query = text(SELECT_DATASET_BY_COLUMN_QUERY.format(column_name, self.name))
107
100
  else:
108
- node_dataset = pd.read_sql(
109
- text(SELECT_DATASET_BY_NODE_ID_QUERY.format(NodeId)),
110
- self.engine,
111
- )
101
+ query = text(SELECT_DATASET_BY_NODE_ID_QUERY.format(NodeId))
102
+
103
+ result_proxy = self.engine.execute(query)
104
+ node_dataset = pd.DataFrame(result_proxy.fetchall(), columns=result_proxy.keys())
105
+
112
106
  return node_dataset
113
107
 
114
108
  def upload_dataset(self, dataset_name: str, path_to_csv: str = params['path_to_test_csv']):
scripts/create_db.py CHANGED
@@ -18,6 +18,8 @@ def main(csv_file_path):
18
18
  config.read(config_file_path)
19
19
  mysql_config = config['mysql']
20
20
 
21
+ print('Im here !')
22
+
21
23
  mydb = mysql.connector.connect(host=mysql_config['host'], user=mysql_config['user'], password=mysql_config['password'])
22
24
  mycursor = mydb.cursor()
23
25
 
@@ -1,32 +0,0 @@
1
- Medfl/__init__.py,sha256=wamSaVIS4RoIHcTCLQPKQ5f8odcy87mRCKyRR7-Qpu4,57
2
- Medfl/LearningManager/__init__.py,sha256=DZZl9wUCY4vzA8ulmBL4EaFR8yVDYNdvur2mk4BJQnA,358
3
- Medfl/LearningManager/client.py,sha256=ik-0qImV6nrk1Iw70dEMKaN_r7NxvcyVl5nAWqjzmQY,6083
4
- Medfl/LearningManager/dynamicModal.py,sha256=0mTvDJlss0uSJ3_EXOuL_d-zRmFyXaKB4W4ql-uEX8Y,10821
5
- Medfl/LearningManager/federated_dataset.py,sha256=2zAl6lW058pqqTsTDv5ixRiIe5XaNKPPBK8rTva-LPY,2141
6
- Medfl/LearningManager/flpipeline.py,sha256=A0CtTtOoh2PfSuwH-bxOOndoflLjfTyWwR-DvydN-RA,7303
7
- Medfl/LearningManager/model.py,sha256=DA7HP34Eq1Ra65OlkBmjH9d2MD7OEbsOhfxD48l4QOk,7679
8
- Medfl/LearningManager/params.yaml,sha256=5I-NljhnSaqzjkWVNzrOtrB8z7tnHBKiBmY-mKGhBQM,450
9
- Medfl/LearningManager/params_optimiser.py,sha256=Pg_I5n_sPz-7ZqOsJGmnVM9ye7c5aPp5szBPmHsWKhE,18060
10
- Medfl/LearningManager/plot.py,sha256=iPqMV9rVd7hquoFixDL20OzXI5bMpBW41bkVmTKIWtE,7927
11
- Medfl/LearningManager/server.py,sha256=iQYiWFWMh9FdyQfNoAGYZ7l67fY4lB0dwICgnDXPOlA,7205
12
- Medfl/LearningManager/strategy.py,sha256=n0asQajkHfGLDX3QbbV5qntQA-xuJZU8Z92XccZENsA,3517
13
- Medfl/LearningManager/utils.py,sha256=7iJiA-v7mM4SuvvwxA9oAP8i15MvNpkMyCv6uC6lLoQ,9342
14
- Medfl/NetManager/__init__.py,sha256=htCEy8g7lrKKeZJ-cH9-YCTyWfIOLwKtoj_dlNasOuM,246
15
- Medfl/NetManager/database_connector.py,sha256=rooasWBSNtZZmqQvLPS0IimHQqWeCMyyGFRFzNM8Dlw,1538
16
- Medfl/NetManager/dataset.py,sha256=NpbmfSKJdtqIsShvjsb_z8W1vqlpYoFyZp8Wzsx_aEc,2869
17
- Medfl/NetManager/flsetup.py,sha256=IPWdZcz13PZic5OQyCiMyJ34cQPegKwkKEJSAqjjnqg,11754
18
- Medfl/NetManager/net_helper.py,sha256=VYJPVI65wo34X9GO9t1joNGPr3TutZdxfva-X6P3MSU,7017
19
- Medfl/NetManager/net_manager_queries.py,sha256=2dfhba0iuh40kVoC7am-vC4Hlrvr-zfJ5ESymsI1Kps,4327
20
- Medfl/NetManager/network.py,sha256=m6TOnzVCWOJME6fUUZ25ZpQedDeRn4O-tdE5HPVqOvw,5519
21
- Medfl/NetManager/node.py,sha256=Mua63zKs865bSu3QKfLJx7pxYdEXpPxDSCMRhDYNhms,6475
22
- Medfl-0.1.24.data/scripts/setup_mysql.sh,sha256=PXl271yvYBrXwrZ7P0tsYHnGkOubKvRaFee4MnzsSko,560
23
- alembic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
24
- alembic/env.py,sha256=a4zJAzPNLHnIrUlXCqf_8vuAlFu0pceFJJKM1PQaOI4,1649
25
- scripts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
26
- scripts/base.py,sha256=pR7StIt3PpX30aoh53gMkpeNJMHytAPhdc7N09tCITA,781
27
- scripts/config.ini,sha256=tDQQlpwZbCFQuSS017yjEiLglLihp6wETbWtNrSWeAA,82
28
- scripts/create_db.py,sha256=0bn5bBOl6FOKKKX0FPb6jwcbbWX9ScaOtL_HlpXHOME,4464
29
- Medfl-0.1.24.dist-info/METADATA,sha256=KtN26Rxa1kwsDLpVbxYXkt_yoBnlJ1nJmpNjMV6agcg,5580
30
- Medfl-0.1.24.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
31
- Medfl-0.1.24.dist-info/top_level.txt,sha256=CmLt1TC7PJj-V55rhffMZ9LSOiuSaaEbz9FJm_zOw_E,22
32
- Medfl-0.1.24.dist-info/RECORD,,
File without changes