Giter Club home page Giter Club logo

toolbox's People

Contributors

erikfanderson avatar

Stargazers

 avatar

Watchers

 avatar  avatar

toolbox's Issues

Tools cannot have same class name

Right now tools can be added that have same class name. Onbiously this will mess things up. Need to at least check that all tools being used do not have conflicting class names. Also might make sense to specify the tool by an alias rather than a class name in the job field so users do not need to go look up the class name. They can simply define the alias when they define their list of tools.

Add CI

Need to add CI at some point... Also will want to reassess status of current tests and see if any new ones need to be added

Change tool namespaces to be configurable

tool namespaces should be configurable. Should use a "namespace" field in the tool.yml.
This can also change the global namespace use "internal.tools.{namespace}" for internal info and simply "{namespace}" for the tool namespace. This wiill change things like "tools.vlsi" to "vlsi"

Jinja2 templates absolute paths

Allow for absolute paths (i.e. not relative to jinja dirs) so that tool schemas can use "file()" schema attributes for these files

Get rid of weird tools.yml...

tools.yml is unnecessary! Simply make this a simple config file and then allow toolbox to automatically load any toolbox.yml in the cwd

warnings issued when non-checked property in namespace given

If there is a namespace "thing" and "thing.prop" is given but "prop" is not defined in the "thing" tool.yml then toolbox should issue a warning to alert the user so they know that the value is not being checked. This can be a problem if the tool.yml has a default value but the user is actually trying to override it

Add optional fields in tool.yml file

Allow for some fields to be checked only when another field is true. Will enable things like versioning for Cadence tools.

e.g. if "genus_version == 191" then require a bunch of additional fields within the namespace to be required, otherwise don't require those fields

Tools should automatically generate a tool specific database

self.tool should return a dictionary with all of the tool properties that pertain to that tool.
The namespace should be separated by the schema/tool name. This will replace the current tool = self.get_db(...) and subsequent tool.update(self.get_db(...))

Limit user variables to "user" namespace

Forces users to only put custom vars in "user" namespace! Will avoid confusion in the future as more and more. Also means that "user" must be an invalid namespace for a tool. This is taken care of if "user" is added to the database in the init function of the toolbox class

Python configuration instead of YAML configs

Develop some sort of API such that we can take python files as configs instead of yaml. We should probably limit the dictionary input to be non dot dict? We just want to be able to specify config fields directly in python.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.