From d8bb3aa6f51b331ef6ce3558707627be7a50c7ad Mon Sep 17 00:00:00 2001 From: Trygve Laugstøl Date: Mon, 27 May 2019 15:16:12 +0200 Subject: souffle: o Allowing to set MPNs when importing facts. o ninja: Allowing the user to have its own datalog files under ee/custom/kicad-souffle.dl and ee/custom/$supplier-souffle.dl. make_bom: Generate per-field URIs for custom URIs. Better than making values that contain custom field name + value. --- src/ee/tools/part_apply_souffle_post.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src/ee/tools/part_apply_souffle_post.py') diff --git a/src/ee/tools/part_apply_souffle_post.py b/src/ee/tools/part_apply_souffle_post.py index 4c23128..961b0c0 100644 --- a/src/ee/tools/part_apply_souffle_post.py +++ b/src/ee/tools/part_apply_souffle_post.py @@ -19,6 +19,8 @@ def work(in_path: Path, out_path: Path, work_dir: Path): for part in in_parts: out_parts.add_entry(part, False) + mpn_csv = work_dir / "out" / "mpn.csv" + with (work_dir / "out" / "fact.csv").open("r") as f: reader = csv.reader(f, dialect="excel-tab") for uri, key, value in reader: @@ -33,6 +35,17 @@ def work(in_path: Path, out_path: Path, work_dir: Path): print("New fact for {}: {}={}".format(uri, key, value)) part.facts.add(key, value) + if mpn_csv.is_file(): + with mpn_csv.open("r") as f: + reader = csv.reader(f, dialect="excel-tab") + for uri, mpn in reader: + try: + part = uri_idx.get_single(uri) + except KeyError: + raise EeException("Unknown part found in output: uri={}".format(uri)) + + part.add_mpn(mpn) + save_db(out_path, out_parts) -- cgit v1.2.3