def write_content(app): app.info(bold('writing default config to rst... '), nonl=True) config_rstfile = os.path.join(app.env.srcdir, app.config.sonatconfig_content_file) checkdir(config_rstfile) s = StringIO() SONAT_CFGM.defaults().write(s) s = s.getvalue() s = s.replace(os.environ['USER'], '${USER}') f = open(config_rstfile, 'w') f.write(s) f.close() app.info('done into ' + os.path.basename(config_rstfile))
def campaign_view(campaign): form = CampaignSettingsForm(obj=campaign) if form.validate_on_submit(): form.populate_obj(campaign) if 'importfile' in request.files: fileob = request.files['importfile'] if hasattr(fileob, 'getvalue'): data = fileob.getvalue() else: data = fileob.read() data = StringIO(data.replace('\r\n', '\n').replace('\r', '\n')) reader = unicodecsv.DictReader(data) import_from_csv(campaign, reader) db.session.commit() return render_redirect(campaign.url_for('recipients'), code=303) return render_template('campaign.html.jinja2', campaign=campaign, form=form, wstep=2)
def writer(row, last): if isscalar(row) or row.ndim == 0: outfile.write(startindent + ' ' + str(row.filled().astype(ndarray))) return tmpstr = StringIO(bytes('', 'utf-8')) if ma.getmaskarray(row).all(): tmpstr.write(', '.join(['_'] * row.size) + ', ') else: savetxt(tmpstr, ma.filled(row), fmt, delimiter = ', ', newline =', ') if last: tmpstr.seek(-2, 1) tmpstr.write(b';') tmpstr.seek(0, 0) tmpstr = tmpstr.read() tmpstr = tmpstr.replace(bytes(fmt % getattr(row, 'fill_value', 0) + ',', 'utf-8'), bytes('_,', 'utf-8')) outfile.write(textwrap.fill(tmpstr.decode('utf-8'), line_length, initial_indent = startindent + ' ', subsequent_indent = startindent + ' ')) outfile.write('\n')
def load_ref_gz_uu(s, o, b): s = sub("data/", "", s) s = sub(r"data\.", "", s) s = sub(r"\.py", "", s) s = sub(r"\.", "/", s) ref_file = "ref/" + s + ordering_suffix(o, b) + ".ref.gz.uu" #print "loading:", ref_file res = StringIO() uu.decode(ref_file, res) res = res.getvalue() res = StringIO(res) res = gzip.GzipFile(fileobj=res, mode="r").read() res = res.replace(" ", "") #res_f=open(ref_file) #res=res_f.read() #res_f.close() #print "returning" return res
def generate_file_rst(fname, target_dir, src_dir, plot_gallery): """ Generate the rst file for a given example. """ base_image_name = os.path.splitext(fname)[0] image_fname = '%s_%%s.png' % base_image_name this_template = rst_template last_dir = os.path.split(src_dir)[-1] # to avoid leading . in file names, and wrong names in links if last_dir == '.' or last_dir == 'examples': last_dir = '' else: last_dir += '_' short_fname = last_dir + fname src_file = os.path.join(src_dir, fname) example_file = os.path.join(target_dir, fname) shutil.copyfile(src_file, example_file) # The following is a list containing all the figure names figure_list = [] image_dir = os.path.join(target_dir, 'images') thumb_dir = os.path.join(image_dir, 'thumb') if not os.path.exists(image_dir): os.makedirs(image_dir) if not os.path.exists(thumb_dir): os.makedirs(thumb_dir) image_path = os.path.join(image_dir, image_fname) stdout_path = os.path.join(image_dir, 'stdout_%s.txt' % base_image_name) thumb_file = os.path.join(thumb_dir, fname[:-3] + '.png') if plot_gallery and fname.startswith('plot'): # generate the plot as png image if file name # starts with plot and if it is more recent than an # existing image. first_image_file = image_path % 1 if os.path.exists(stdout_path): stdout = open(stdout_path).read() else: stdout = '' if (not os.path.exists(first_image_file) or os.stat(first_image_file).st_mtime <= os.stat(src_file).st_mtime): # We need to execute the code print 'plotting %s' % fname t0 = time() import matplotlib.pyplot as plt plt.close('all') cwd = os.getcwd() try: # First CD in the original example dir, so that any file # created by the example get created in this directory orig_stdout = sys.stdout os.chdir(os.path.dirname(src_file)) my_stdout = StringIO() sys.stdout = my_stdout my_globals = {'pl': plt} execfile(os.path.basename(src_file), my_globals) sys.stdout = orig_stdout my_stdout = my_stdout.getvalue() if '__doc__' in my_globals: # The __doc__ is often printed in the example, we # don't with to echo it my_stdout = my_stdout.replace(my_globals['__doc__'], '') my_stdout = my_stdout.strip() if my_stdout: stdout = '**Script output**::\n\n %s\n\n' % ('\n '.join( my_stdout.split('\n'))) open(stdout_path, 'w').write(stdout) os.chdir(cwd) # In order to save every figure we have two solutions : # * iterate from 1 to infinity and call plt.fignum_exists(n) # (this requires the figures to be numbered # incrementally: 1, 2, 3 and not 1, 2, 5) # * iterate over [fig_mngr.num for fig_mngr in # matplotlib._pylab_helpers.Gcf.get_all_fig_managers()] for fig_num in (fig_mngr.num for fig_mngr in matplotlib. _pylab_helpers.Gcf.get_all_fig_managers()): # Set the fig_num figure as the current figure as we can't # save a figure that's not the current figure. plt.figure(fig_num) plt.savefig(image_path % fig_num) figure_list.append(image_fname % fig_num) except: print 80 * '_' print '%s is not compiling:' % fname traceback.print_exc() print 80 * '_' finally: os.chdir(cwd) sys.stdout = orig_stdout print " - time elapsed : %.2g sec" % (time() - t0) else: figure_list = [ f[len(image_dir):] for f in glob.glob(image_path % '[1-9]') ] #for f in glob.glob(image_path % '*')] # generate thumb file this_template = plot_rst_template from matplotlib import image if os.path.exists(first_image_file): image.thumbnail(first_image_file, thumb_file, 0.2) if not os.path.exists(thumb_file): # create something not to replace the thumbnail shutil.copy('images/blank_image.png', thumb_file) docstring, short_desc, end_row = extract_docstring(example_file) # Depending on whether we have one or more figures, we're using a # horizontal list or a single rst call to 'image'. if len(figure_list) == 1: figure_name = figure_list[0] image_list = SINGLE_IMAGE % figure_name.lstrip('/') else: image_list = HLIST_HEADER for figure_name in figure_list: image_list += HLIST_IMAGE_TEMPLATE % figure_name.lstrip('/') f = open(os.path.join(target_dir, fname[:-2] + 'rst'), 'w') f.write(this_template % locals()) f.flush()
def generate_file_rst(fname, target_dir, src_dir, plot_gallery): """ Generate the rst file for a given example. """ base_image_name = os.path.splitext(fname)[0] image_fname = '%s_%%s.png' % base_image_name this_template = rst_template last_dir = os.path.split(src_dir)[-1] # to avoid leading . in file names, and wrong names in links if last_dir == '.' or last_dir == 'examples': last_dir = '' else: last_dir += '_' short_fname = last_dir + fname src_file = os.path.join(src_dir, fname) example_file = os.path.join(target_dir, fname) shutil.copyfile(src_file, example_file) # The following is a list containing all the figure names figure_list = [] image_dir = os.path.join(target_dir, 'images') thumb_dir = os.path.join(image_dir, 'thumb') if not os.path.exists(image_dir): os.makedirs(image_dir) if not os.path.exists(thumb_dir): os.makedirs(thumb_dir) image_path = os.path.join(image_dir, image_fname) stdout_path = os.path.join(image_dir, 'stdout_%s.txt' % base_image_name) thumb_file = os.path.join(thumb_dir, fname[:-3] + '.png') if plot_gallery and fname.startswith('plot'): # generate the plot as png image if file name # starts with plot and if it is more recent than an # existing image. first_image_file = image_path % 1 if os.path.exists(stdout_path): stdout = open(stdout_path).read() else: stdout = '' if (not os.path.exists(first_image_file) or os.stat(first_image_file).st_mtime <= os.stat(src_file).st_mtime): # We need to execute the code print 'plotting %s' % fname t0 = time() import matplotlib.pyplot as plt plt.close('all') cwd = os.getcwd() try: # First CD in the original example dir, so that any file # created by the example get created in this directory orig_stdout = sys.stdout os.chdir(os.path.dirname(src_file)) my_stdout = StringIO() sys.stdout = my_stdout my_globals = {'pl': plt} execfile(os.path.basename(src_file), my_globals) sys.stdout = orig_stdout my_stdout = my_stdout.getvalue() if '__doc__' in my_globals: # The __doc__ is often printed in the example, we # don't with to echo it my_stdout = my_stdout.replace( my_globals['__doc__'], '') my_stdout = my_stdout.strip() if my_stdout: stdout = '**Script output**::\n\n %s\n\n' % ( '\n '.join(my_stdout.split('\n'))) open(stdout_path, 'w').write(stdout) os.chdir(cwd) # In order to save every figure we have two solutions : # * iterate from 1 to infinity and call plt.fignum_exists(n) # (this requires the figures to be numbered # incrementally: 1, 2, 3 and not 1, 2, 5) # * iterate over [fig_mngr.num for fig_mngr in # matplotlib._pylab_helpers.Gcf.get_all_fig_managers()] for fig_num in (fig_mngr.num for fig_mngr in matplotlib._pylab_helpers.Gcf.get_all_fig_managers()): # Set the fig_num figure as the current figure as we can't # save a figure that's not the current figure. plt.figure(fig_num) plt.savefig(image_path % fig_num) figure_list.append(image_fname % fig_num) except: print 80 * '_' print '%s is not compiling:' % fname traceback.print_exc() print 80 * '_' finally: os.chdir(cwd) sys.stdout = orig_stdout print " - time elapsed : %.2g sec" % (time() - t0) else: figure_list = [f[len(image_dir):] for f in glob.glob(image_path % '[1-9]')] #for f in glob.glob(image_path % '*')] # generate thumb file this_template = plot_rst_template from matplotlib import image if os.path.exists(first_image_file): image.thumbnail(first_image_file, thumb_file, 0.2) if not os.path.exists(thumb_file): # create something not to replace the thumbnail shutil.copy('images/blank_image.png', thumb_file) docstring, short_desc, end_row = extract_docstring(example_file) # Depending on whether we have one or more figures, we're using a # horizontal list or a single rst call to 'image'. if len(figure_list) == 1: figure_name = figure_list[0] image_list = SINGLE_IMAGE % figure_name.lstrip('/') else: image_list = HLIST_HEADER for figure_name in figure_list: image_list += HLIST_IMAGE_TEMPLATE % figure_name.lstrip('/') f = open(os.path.join(target_dir, fname[:-2] + 'rst'), 'w') f.write(this_template % locals()) f.flush()
You should run this by hand after any modifications to packages.json, to make sure that there are no mistakes. """ from os.path import split, splitext from json import load f = open("packages.json") data = load(f) g = [] for p in data: pkg = { "name": p["name"], "dependencies": p["dependencies"], "version": p["version"], "download": p["download"], } g.append(pkg) from json import dump from StringIO import StringIO s = StringIO() dump(g, s, sort_keys=True, indent=4) s.seek(0) s = s.read() # Remove the trailing space s = s.replace(" \n", "\n") f = open("packages.json", "w") f.write(s) f.write("\n")
response_data = portal.restrictedTraverse(parsed_path.path)() except ConflictError: raise except Exception, exc: # restore the request request.form = ori_form request.RESPONSE.headers = ori_response_headers code = 500 msg = str(exc) hdrs = {} fp = StringIO(msg) raise urllib2.HTTPError(response_url, code, msg, hdrs, fp) else: # restore the request response_headers = request.RESPONSE.headers request.form = ori_form request.RESPONSE.headers = ori_response_headers response_data = StringIO(response_data.replace( PORTAL_URL_PLACEHOLDER, public_url)) response = urllib.addinfourl( response_data, headers=response_headers, url=response_url, code=200) return response