Todo ListΒΆ

Todo

This is a to-do box. (why is it not in a box??)

(The original entry is located in /chara/carmaweb/buildbot/slaves/chara.astro.umd.edu/ADMIT-git-incremental/build/doc/sphinx/doctest.rst, line 182.)

Todo

Really should look for attribute .filename, but normally derived classes should implement these; see e.g. File_AT.

(The original entry is located in [u’BDP.getfiles()’, u’:module: admit.bdp.BDP’, u’‘, u’Return the filename(s) associated with the basic data in a BDP.’, u’‘, u’:Parameters:’, u’‘, u’ **None**’, u’‘, u’:Returns:’, u’‘, u’ List of files’, u’‘, u’.. rubric:: Notes’, u’‘, u’.. todo::’, u’ Really should look for attribute .filename, but normally’, u’ derived classes should implement these; see e.g. File_AT.’], line 15.)

Todo

Extend functionality to show more.

(The original entry is located in [u’BDP.show()’, u’:module: admit.bdp.BDP’, u’‘, u’Show the xmlFile name.’, u’‘, u’:Parameters:’, u’‘, u’ **None**’, u’‘, u’:Returns:’, u’‘, u’ the xml file name’, u’‘, u’.. rubric:: Notes’, u’‘, u’.. todo::’, u’ Extend functionality to show more.’], line 15.)

Todo

this routine is identical to the one in Admit()

(The original entry is located in [u’AT.mkdir(dirname)’, u’:module: admit.AT’, u’‘, u’Make a directory in the ADMIT hierarchy.’, u’Checks whether the directory already exists.’, u’It also allows an absolute path, in the classical UNIX sense, but’, u’this is normally not needed.’, u’‘, u’:Parameters:’, u’‘, u’ **dirname** : str’, u’‘, u’ Directory name.’, u’‘, u’.. rubric:: Notes’, u’‘, u’.. todo:: this routine is identical to the one in Admit()’], line 16.)

Todo

1. in the current implementation every directory, admit or not-admit, can be made an admit directory (i.e. contain a root admit.xml)

  1. we really don’t need a basefile= in the argument list

(The original entry is located in [u”Admit(baseDir=None, name=’none’, basefile=None, create=True, dataserver=False, loglevel=20, commit=True)”, u’:module: admit.Admit’, u’‘, u’‘, u’‘, u’Container for an ADMIT project. The project is normally based on one’, u’single FITS cube (in some cases two, where the ingest stage needs a’, u’primary beam to correct the science cube with), although this is not’, u’a restriction to ADMIT.’, u’‘, u’A FITS cube results in an ADMIT directory, within which you will’, u”find an admit.xml file describing the project, it’s data products (BDP’s)”, u”and the AT’s (tasks) that generated the BDP’s.”, u’‘, u’If input file/directory are given or admit.xml is located in the current’, u’directory then they are loaded into the class, else a new (empty) class is’, u’instantiated.’, u’‘, u’:Parameters:’, u’‘, u’ **baseDir** : str’, u’‘, u’ Base directory for XML files (the “ADMIT directory”).’, u’ ‘, u’‘, u’ **name** : str’, u’‘, u’ Alias name.’, u’ ‘, u’‘, u’ **basefile** : str’, u’‘, u’ Base XML file name (default: admit.xml).’, u’ ‘, u’‘, u’ **create** : bool’, u’‘, u’ Whether to create any needed directories.’, u’ ‘, u’‘, u’ **dataserver** : bool’, u’‘, u’ Whether to start the data browser server.’, u’ ‘, u’‘, u’ **loglevel** : int’, u’‘, u’ The integer log level from the Python *logging* module. One of:’, u’ ‘, u’ - logging.CRITICAL = 50’, u’ - logging.ERROR = 40’, u’ - logging.WARNING = 30’, u’ - logging.INFO = 20’, u’ - logging.DEBUG = 10’, u’ ‘, u’ Default is logging.INFO.’, u’ ‘, u’‘, u’ **commit** : bool, optional’, u’‘, u’ Whether to commit XML-backed flows immediately; default is ``True``.’, u’ Set to ``True`` if the flow will *not* be reconstructed (as in a recipe’, u’ script) before use; this is usually the case for interactive mode. Set’, u’ to ``False`` in (most) scripts, which reconstruct the flow each time.’, u’‘, u’.. rubric:: Notes’, u’‘, u’‘, u’.. todo::’, u’‘, u’ 1. in the current implementation every directory, admit or not-admit, can’, u’ be made an admit directory (i.e. contain a root admit.xml)’, u’‘, u” 2. we really don’t need a basefile= in the argument list”, u’‘, u’.. rubric:: Attributes’, u’‘, u’‘, u’‘, u’================== ==========’, u’ baseDir (str) Base directory for XML files (the “ADMIT directory”). Guaranteed to end in os.sep. ‘, u’ baseFile (str) Base XML file name, usually admit.xml. ‘, u’ currDir (str) Current working directory (at construction). ‘, u’ fm (FlowManager) Project flow manager instance. ‘, u’ new (bool) Whether the project is new or constructed from an existing XML file. ‘, u’ pm (ProjectManager) Project manager instance. ‘, u’ pmode (int) Plotting mode. ‘, u’ ptype (int) Plotting type. ‘, u’ count (int) Flow counter how many times the flow has been run (stored in userData) ‘, u’ project_id (int) Static project identification number ‘, u’ summaryData (instance of admit.Summary) AT summary data ‘, u’ userData (dict) Additional, user-defined data. ‘, u’_data_browser_port (int) Port number that the localhost http server for the data browser (aka data GUI) will use. This attribute is set by the operating system. ‘, u’ _data_server (bool) Whether to start the data browser server. ‘, u’ _server (HTTP server) Data HTTP server. ‘, u’================== ==========’, u’‘, u’.. rubric:: Methods’, u’‘, u’.. autosummary::’, u’ :toctree:’, u’‘, u’ addtask’, u’ atToHTML’, u’ browse’, u’ check’, u’ clean’, u’ dir’, u’ discover’, u’ dryrun’, u’ exit’, u’ export’, u’ find_bdp’, u’ find_files’, u’ findtask’, u’ get’, u’ getFlow’, u’ getManager’, u’ getlogginglevel’, u’ has’, u’ logToHTML’, u’ mergeFlow’, u’ mkdir’, u’ plotparams’, u’ print_all’, u’ print_attributes’, u’ print_methods’, u’ print_summary’, u’ read’, u’ run’, u’ script’, u’ set’, u’ setAstale’, u’ setdir’, u’ setlogginglevel’, u’ show’, u’ showsetkey’, u’ startDataServer’, u’ tesdir’, u’ updateHTML’, u’ url’, u’ userdata’, u’ version’, u’ write’, u’ writeXML’, u’‘, u’‘, u’.. py:method:: Admit.addtask(a, stuples=None, dtuples=None)’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Add an AT to the project.’, u’ ‘, u’ Also adjusts the connection mapping.’, u” Usually all but the first task will have ‘stuples’”, u’ (a List of Source Tuples (task-id,bdp-id)).’, u’ ‘, u’ Support for re-running scripts: this method will ignore attempts to’, u’ re-add a task of the same type and ID to the existing flow, if the’, u’ project has been restored from XML. Between invocations, scripts may be’, u’ edited to append new tasks to the flow, but not remove or insert them.’, u’ Keywords for existing ATs may also be changed by the script; if changes’, u’ are found, the existing task will be marked out-of-date.’, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **a** : AT’, u’ ‘, u’ ADMIT task to append/insert into the flow.’, u’ ‘, u’ ‘, u’ **stuples** : list of 2-tuples, optional’, u’ ‘, u’ List of source connection 2-tuples, one per BDP input port.’, u’ ‘, u’ ‘, u’ **dtuples** : list of 4-tuples, optional’, u’ ‘, u’ List of destination connection 4-tuples.’, u’ ‘, u’ :Returns:’, u’ ‘, u’ int’, u’ ‘, u’ Input task ID on success, else -1 (error detected).’, u’ ‘, u’ .. seealso::’, u’ ‘, u’ ‘, u’ :obj:`add`’, u’ ‘, u’‘, u’.. py:method:: Admit.atToHTML()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Write individual AT data to the html form’, u’ ‘, u’ ‘, u’‘, u’.. py:method:: Admit.browse()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Open a web browser tab with the URL of this admit project’, u’ ‘, u’ ‘, u’‘, u’.. py:method:: Admit.check()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Check all project BDPs for name collisions.’, u’ Also identifies orphaned branches of the tree.’, u’ A topological sort is needed as well, if they are not in the correct’, u’ execution order.’, u’ ‘, u’ ‘, u’ .. seealso::’, u’ ‘, u’ ‘, u’ :obj:`UNIX`’, u’ ‘, u’‘, u’.. py:method:: Admit.clean()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u” Method to delete orphan bdp’s (files and underlying data)”, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **None**’, u’ ‘, u’ ‘, u’ ‘, u’ :Returns:’, u’ ‘, u’ None’, u’ ‘, u’ ‘, u’ ‘, u’‘, u’.. py:method:: Admit.dir()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ See AT.dir() but placed here for convenience as well.’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **None**’, u’ ‘, u’ ‘, u’ ‘, u’ :Returns:’, u’ ‘, u’ str’, u’ ‘, u’ Base directory.’, u’ ‘, u’‘, u”.. py:method:: Admit.discover(mode=None, rootdir=’.’)”, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Project data discovery.’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **mode** : TBD’, u’ ‘, u’ Discovery mode.’, u’ ‘, u’ ‘, u’ **rootdir** : str, optional’, u’ ‘, u’ Search root directory.’, u’ ‘, u’ :Returns:’, u’ ‘, u’ list’, u’ ‘, u’ Search results.’, u’ ‘, u’‘, u’.. py:method:: Admit.dryrun()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ ‘, u’ ‘, u’‘, u’.. py:method:: Admit.exit(exit)’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Early cleanup and exit if exit > 0’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **exit** : int’, u’ ‘, u’ The exit code to exit with (must be > 0)’, u’ ‘, u’ :Returns:’, u’ ‘, u’ None’, u’ ‘, u’ ‘, u’ ‘, u’‘, u’.. py:method:: Admit.export(level=0, casa=True, fits=False, out=None)’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ ‘, u’ ‘, u’‘, u’.. py:method:: Admit.find_bdp()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u” Find all bdp’s in the current admit.”, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **None**’, u’ ‘, u’ ‘, u’ ‘, u’ :Returns:’, u’ ‘, u’ list’, u’ ‘, u’ All \\*.bdp files within the admit hierarchy.’, u’ ‘, u’‘, u”.. py:method:: Admit.find_files(pattern=’*.fits’)”, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Find files containing a wildcard pattern.’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **pattern** : str, optional’, u’ ‘, u’ File name wildcard pattern.’, u’ ‘, u’ :Returns:’, u’ ‘, u’ list’, u’ ‘, u’ File names matching the pattern.’, u’ ‘, u’‘, u’.. py:method:: Admit.findtask(isMatch)’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Finds ATs in the flow matching a criterion.’, u’ ‘, u’ Applies the function `isMatch` to all ATs in the flow, in proper’, u’ dependency order, accumulating matching ATs in a list (the return’, u’ value). Downstream ATs are guaranteed to follow their predecessors in’, u’ this list. Often `isMatch` may be conveniently expressed as a lambda’, u’ function.’, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **isMatch** : bool functor(AT)’, u’ ‘, u’ Function object taking one AT as input and returning a Boolean.’, u’ ‘, u’ :Returns:’, u’ ‘, u’ list of ATs’, u’ ‘, u’ ATs testing True using `isMatch`.’, u’ ‘, u’ .. rubric:: Notes’, u’ ‘, u’ ‘, u’ This method is a wrapper for `FlowManager.find()’, u’ <FlowManager.html#admit.FlowManager.FlowManager.find>`_.’, u’ ‘, u’ .. rubric:: Examples’, u’ ‘, u’ ‘, u’ To find all ATs with ID less than 100 in project `p`:’, u’ ‘, u’ >>> p.find(lambda at: at.id() < 100)’, u’ ‘, u’‘, u’.. py:method:: Admit.get(key)’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Get a global ADMIT parameter.’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **key** : str’, u’ ‘, u’ User-defined data keyword.’, u’ ‘, u’ :Returns:’, u’ ‘, u’ str’, u’ ‘, u’ User-defined (userData) keyword value.’, u’ ‘, u’ .. rubric:: Notes’, u’ ‘, u’ ‘, u’ .. todo::’, u’ This method should mirror the way we do this in the AT’, u’ (setkey/getkey)’, u’ ‘, u’‘, u’.. py:method:: Admit.getFlow()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Returns flow manager instance.’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **None**’, u’ ‘, u’ ‘, u’ ‘, u’ :Returns:’, u’ ‘, u’ FlowManager’, u’ ‘, u’ Flow manager instance.’, u’ ‘, u’‘, u’.. py:method:: Admit.getManager()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Returns project manager instance.’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **None**’, u’ ‘, u’ ‘, u’ ‘, u’ :Returns:’, u’ ‘, u’ ProjectManager’, u’ ‘, u’ Project manager instance.’, u’ ‘, u’‘, u’.. py:method:: Admit.getlogginglevel()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Method to return the current logging level’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **None**’, u’ ‘, u’ ‘, u’ ‘, u’ :Returns:’, u’ ‘, u’ An int representing the current logging level’, u’ ‘, u’ ‘, u’ ‘, u’‘, u’.. py:method:: Admit.has(key)’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Query if a global user key exists for this admit project.’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **key** : str’, u’ ‘, u’ User-defined data keyword.’, u’ ‘, u’ :Returns:’, u’ ‘, u’ bool’, u’ ‘, u’ True if keyword is present in userData, else False.’, u’ ‘, u’‘, u’.. py:method:: Admit.logToHTML()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Write the admit.log to an html file’, u’ ‘, u’ ‘, u’‘, u’.. py:attribute:: Admit.loginit’, u’ :module: admit.Admit’, u’ :annotation: = False’, u’‘, u’‘, u’.. py:method:: Admit.mergeFlow(finalize=True)’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Merges tasks from the XML-derived flow (if any).’, u’ ‘, u’ When projects are restored to memory from persistent XML files, that’, u’ task flow is initially held in stasis while the (possibly modified)’, u’ flow is being reconstructed, typically by re-running a script. This’, u’ reconstruction phase lasts from the point where the XML is read up to’, u’ the first call to this method with `finalize` set (most typically, the’, u’ first call to run(), which calls this method internally). Calling this’, u’ method during reconstruction compares the old flow to the newly’, u’ constructed flow and tasks present unaltered in the new flow (i.e.,’, u’ same BDP inputs and keyword values as before) are marked up to date, if’, u’ they were up to date in the original flow. Other relevant attributes’, u’ are transferred as appropriate.’, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **finalize** : bool, optional’, u’ ‘, u’ Whether to discard the XML-derived flow after merge analysis,’, u’ preventing future merge attempts.’, u’ ‘, u’ :Returns:’, u’ ‘, u’ None’, u’ ‘, u’ ‘, u’ ‘, u’ .. rubric:: Notes’, u’ ‘, u’ ‘, u’ It is permissible to add or remove arbitrary tasks from the flow, in an’, u’ arbitrary order, while reconstructing it. Tasks unaffected by the’, u’ changes (if any) will not be re-executed gratuitously.’, u’ ‘, u’ After finalization, the old flow is forgotten and subsequent calls will’, u’ have no effect (and likewise for fresh projects not backed by XML).’, u’ ‘, u’‘, u’.. py:method:: Admit.mkdir(dirname)’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u” Make a directory in the ADMIT hierarchy, if it doesn’t exist yet.”, u’ It also allows an absolute path, in the classical unix sense, but’, u’ this is normally not needed.’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **dirname** : str’, u’ ‘, u’ Directory name.’, u’ ‘, u’ :Returns:’, u’ ‘, u’ None’, u’ ‘, u’ ‘, u’ ‘, u’‘, u’.. py:method:: Admit.plotparams(plotmode=32, plottype=5)’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Determines if plots are saved and in what format.’, u’ These are based on simple matplotlib diagrams.’, u’ Common output formats are png and pdf.’, u” Note: this only applies to new AT’s started in a flow,”, u’ to change existing parameters in a re-run for example,’, u’ you will need to manually change the AT._plot_mode’, u’ and AT._plot_type’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **plotmode** : int’, u’ ‘, u’ Plotting mode. Default: PlotControl.BATCH’, u’ ‘, u’ ‘, u’ **plottype** : int’, u’ ‘, u’ Plot format type. Default: PlotControl.PNG.’, u’ ‘, u’ :Returns:’, u’ ‘, u’ None’, u’ ‘, u’ ‘, u’ ‘, u’ .. seealso::’, u’ ‘, u’ ‘, u’ :obj:`util.PlotControl`’, u’ ‘, u’‘, u’.. py:method:: Admit.print_all()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Calls all the methods of this object.’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **None**’, u’ ‘, u’ ‘, u’ ‘, u’ :Returns:’, u’ ‘, u’ None’, u’ ‘, u’ ‘, u’ ‘, u’‘, u’.. py:method:: Admit.print_attributes()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Print all the attributes of this object and their value(s).’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **None**’, u’ ‘, u’ ‘, u’ ‘, u’ :Returns:’, u’ ‘, u’ None’, u’ ‘, u’ ‘, u’ ‘, u’‘, u’.. py:method:: Admit.print_methods()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Print all the methods of this object and their doc string(s).’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **None**’, u’ ‘, u’ ‘, u’ ‘, u’ :Returns:’, u’ ‘, u’ None’, u’ ‘, u’ ‘, u’ ‘, u’‘, u’.. py:method:: Admit.print_summary()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Print out summary data’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **None**’, u’ ‘, u’ ‘, u’ ‘, u’ :Returns:’, u’ ‘, u’ None’, u’ ‘, u’ ‘, u’ ‘, u’‘, u’.. py:attribute:: Admit.project_id’, u’ :module: admit.Admit’, u’ :annotation: = 0’, u’‘, u’‘, u’.. py:method:: Admit.read()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Reads a project.’, u’ ‘, u’ ‘, u’ .. rubric:: Notes’, u’ ‘, u’ ‘, u’ Not implemented.’, u’ ‘, u’‘, u’.. py:method:: Admit.run(write=True, commit=True)’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Runs the project flow.’, u’ ‘, u’ Run those pieces of the pipeline flow’, u’ deemed out of date. After the run, the flow’, u” tasks gather their summary into ADMIT’s summaryData,”, u’ ensuring that summaryData always is consistent with the’, u’ current flow, and does not contain remnants from orphans.’, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **write** : bool, optional’, u’ ‘, u’ Whether to write the project XML files after running the flow;’, u’ default is ``True``.’, u’ ‘, u’ ‘, u’ **commit: bool, optional**’, u’ ‘, u’ Whether to commit the current flow after merging flow tasks with’, u’ the XML-derived flow (if present). Set to ``False`` during incremental’, u’ run()/addtask() flow reconstruction. Once a flow is committed, all’, u’ requests to add or remove flow tasks will vest immediately. Default’, u’ is ``True``.’, u’ ‘, u’ :Returns:’, u’ ‘, u’ None’, u’ ‘, u’ ‘, u’ ‘, u’ .. seealso::’, u’ ‘, u’ ‘, u’ :obj:`mergeFlow`’, u’ ‘, u’ .. rubric:: Notes’, u’ ‘, u’ ‘, u’ This method supports intelligent re-running of projects read from XML.’, u’ Task flows may be reconstructed (as in a script) in any order, from the’, u’ point where the XML is read up to the first call to run() (with’, u’ commit=True). Tasks present (unaltered) in the new flow and marked up’, u’ to date in the XML will not be re-executed.’, u’ ‘, u’‘, u’.. py:method:: Admit.script(pyfile)’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Generates a Python script regenerating the current project.’, u’ ‘, u’ The resulting script is intended to recreate the project results from’, u’ scratch and to be run from the *parent* of the project directory.’, u’ Running the script over existing project results is unpredictable and’, u’ not supported.’, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **pyfile** : str’, u’ ‘, u’ Output Python script file name.’, u’ ‘, u’ :Returns:’, u’ ‘, u’ None’, u’ ‘, u’ ‘, u’ ‘, u’‘, u’.. py:method:: Admit.set(**kwargs)’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Sets keys and values in userData.’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **kwargs** : dictionary like’, u’ ‘, u’ Command line arguments for the function, can be a=x,b=y or’, u’ \\*\\*{a:x, b:y} format’, u’ ‘, u’ :Returns:’, u’ ‘, u’ None’, u’ ‘, u’ ‘, u’ ‘, u’‘, u’.. py:method:: Admit.setAstale(astale, verbose=False, dryrun=False)’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Method to toggle the stale flags on all tasks based on a global admit stale’, u’ for the sole purpose of admit_export to work. It is dangerous to call this’, u’ routine when not all tasks are either stale or not stale.’, u’ ‘, u’ This function needs to be called with True first, so it makes a stale backup,’, u’ then during the 2nd False call, the stale backup is pushed back.’, u’ ‘, u’ @todo This is a patch solution for admit 1.1 - general solution needed’, u’ ‘, u’‘, u’.. py:method:: Admit.setdir(dirname, create=True)’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Changes current working directory. The directory is’, u’ assumed to contain parameter file.’, u’ ‘, u’ .. note:: Deprecated.’, u’ See pushd()/popd() for a better version.’, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **dirname** : str’, u’ ‘, u’ Directory to work in.’, u’ ‘, u’ ‘, u’ **create** : bool, optional’, u’ ‘, u” Whether to create the directory if it doesn’t exist.”, u’ ‘, u’ .. rubric:: Notes’, u’ ‘, u’ ‘, u’ .. todo::’, u’ the new mkdir() and self.baseDir are the way to work in ADMIT’, u’ ‘, u’‘, u’.. py:method:: Admit.setlogginglevel(level)’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Method to set the logging level’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **level** : int’, u’ ‘, u’ The logging level to use’, u’ ‘, u’ :Returns:’, u’ ‘, u’ None’, u’ ‘, u’ ‘, u’ ‘, u’‘, u’.. py:method:: Admit.show()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Prints project state.’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **None**’, u’ ‘, u’ ‘, u’ ‘, u’ :Returns:’, u’ ‘, u’ None’, u’ ‘, u’ ‘, u’ ‘, u’ .. rubric:: Notes’, u’ ‘, u’ ‘, u’ Currently only display FlowManager contents.’, u’ ‘, u’‘, u’.. py:method:: Admit.showsetkey(outfile=None)’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Show current keys for tasks’, u’ For now on screen, but meant to aid writing a template file for rerun ‘, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **outfile** : str’, u’ ‘, u’ The name of the output file’, u’ ‘, u’ :Returns:’, u’ ‘, u’ None’, u’ ‘, u’ ‘, u’ ‘, u’‘, u’.. py:method:: Admit.startDataServer()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Starts the data HTTP server.’, u’ On a separate thread, start the http server on localhost:_data_browser_port’, u’ that will allow web browsing of data products. Also attempt’, u’ to open a browser window at that URL. When this method returns,’, u’ the variable self._data_browser_port will have the value of’, u’ the port returned by the OS. ‘, u’ See util.AdmitHTTP.AdmitHTTPServer’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **None**’, u’ ‘, u’ ‘, u’ ‘, u’ :Returns:’, u’ ‘, u’ None’, u’ ‘, u’ ‘, u’ ‘, u’‘, u’.. py:method:: Admit.tesdir()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Revert back from previous setdir (not recursive yet).’, u’ ‘, u’ .. note:: Deprecated.’, u’ See pushd()/popd() for a better version.’, u’ ‘, u’‘, u’.. py:method:: Admit.updateHTML()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Writes out HTML views of this object.’, u’ It is expected that summary() has been called first.’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **None**’, u’ ‘, u’ ‘, u’ ‘, u’ :Returns:’, u’ ‘, u’ None’, u’ ‘, u’ ‘, u’ ‘, u’‘, u’.. py:method:: Admit.url()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Print the URL for the data browser’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **None**’, u’ ‘, u’ ‘, u’ ‘, u’ :Returns:’, u’ ‘, u’ String representing localhost url on which data can be viewed.’, u’ ‘, u’ ‘, u’ ‘, u’‘, u’.. py:method:: Admit.userdata()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Collects current AT userdata. **warning:** No check is done for duplicate keys!’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **None**’, u’ ‘, u’ ‘, u’ ‘, u’ :Returns:’, u’ ‘, u’ None’, u’ ‘, u’ ‘, u’ ‘, u’‘, u’.. py:method:: Admit.version()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ return version of ADMIT’, u’ ‘, u’ ‘, u’‘, u’.. py:method:: Admit.write()’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Writes out the admit.xml file, admit0.py script and’, u’ project html files.’, u’ ‘, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **None**’, u’ ‘, u’ ‘, u’ ‘, u’ :Returns:’, u’ ‘, u’ None’, u’ ‘, u’ ‘, u’ ‘, u’‘, u’.. py:method:: Admit.writeXML(script=True)’, u’ :module: admit.Admit’, u’‘, u’ ‘, u’ ‘, u’ Writes out the admit.xml file and admit0.py script.’, u’ ‘, u’ Reading the XML file occurs in the constructor.’, u’ ‘, u’ :Parameters:’, u’ ‘, u’ **None**’, u’ ‘, u’ ‘, u’ ‘, u’ :Returns:’, u’ ‘, u’ None’], line 59.)

Todo

This method should mirror the way we do this in the AT (setkey/getkey)

(The original entry is located in [u’Admit.get(key)’, u’:module: admit.Admit’, u’‘, u’Get a global ADMIT parameter.’, u’‘, u’:Parameters:’, u’‘, u’ **key** : str’, u’‘, u’ User-defined data keyword.’, u’‘, u’:Returns:’, u’‘, u’ str’, u’‘, u’ User-defined (userData) keyword value.’, u’‘, u’.. rubric:: Notes’, u’‘, u’.. todo::’, u’ This method should mirror the way we do this in the AT’, u’ (setkey/getkey)’], line 19.)

Todo

the new mkdir() and self.baseDir are the way to work in ADMIT

(The original entry is located in [u’Admit.setdir(dirname, create=True)’, u’:module: admit.Admit’, u’‘, u’Changes current working directory. The directory is’, u’assumed to contain parameter file.’, u’‘, u’.. note:: Deprecated.’, u’ See pushd()/popd() for a better version.’, u’‘, u’:Parameters:’, u’‘, u’ **dirname** : str’, u’‘, u’ Directory to work in.’, u’‘, u’ **create** : bool, optional’, u’‘, u” Whether to create the directory if it doesn’t exist.”, u’‘, u’.. rubric:: Notes’, u’‘, u’.. todo::’, u’ the new mkdir() and self.baseDir are the way to work in ADMIT’], line 21.)