Exemplo n.º 1
0
	def __init__(self):
		tmt.EclipseProject.__init__(
				self,
				tmt.projectName(),
				description=DESCRIPTION,
				main='net.gnehzr.tnoodle.scrambles.Main',
				tests=['net.gnehzr.tnoodle.test.ScrambleTest'])
Exemplo n.º 2
0
 def __init__(self):
     tmt.EclipseProject.__init__(
         self,
         tmt.projectName(),
         description=DESCRIPTION,
         main='net.gnehzr.tnoodle.scrambles.Main',
         tests=['net.gnehzr.tnoodle.test.ScrambleTest'])
Exemplo n.º 3
0
import tmt
import subprocess
from os.path import join, exists
import shutil

class Project(tmt.EclipseProject):
	def configure(self):
		tmt.EclipseProject.configure(self)
		tmt.WinstoneServer.addPlugin(self)

Project(tmt.projectName(), description="A generic competition scramble generator interface.")
Exemplo n.º 4
0
import tmt


class Project(tmt.TmtProject):
    def getDependencies(self):
        return [tmt.TmtProject.projects['twisty.js']]

    def getClasspathEntities(self, *args, **keyargs):
        # This is here just to make jracer's getClasspathEntities happy
        return set()

    def compile(self):
        pass

    def clean(self):
        pass

    def check(self):
        pass


Project(tmt.projectName(),
        description=
        "A javascript game framework created with multiplayer racing in mind")
Exemplo n.º 5
0
import tmt

class Project(tmt.EclipseProject):
	def configure(self):
		tmt.EclipseProject.configure(self)
		tmt.WinstoneServer.addPlugin(self)

Project(tmt.projectName(), description="A Rubik's Cube timer.")
Exemplo n.º 6
0
import tmt
import subprocess
from os.path import join, exists

class Project(tmt.EclipseProject):
	def configure(self):
		tmt.EclipseProject.configure(self)
		tmt.WinstoneServer.addPlugin(self)

Project(tmt.projectName(), description="A 100% java implementation of php.")
Exemplo n.º 7
0
import tmt
import subprocess
from os.path import join, exists

class Project(tmt.EclipseProject):

        def configure(self):
                tmt.EclipseProject.configure(self)
                self.main = "cs.threephase.Main"
                self.threephase_tables = 'tpr_tables'
                self.CACHED_THREEPHASE_TABLES = join(self.name, 'CACHED_THREEPHASE_TABLES_DELETE_TO_RECREATE')

Project(tmt.projectName(), description="A copy of Chen Shuang's 4x4 scrambler.")
Exemplo n.º 8
0
 def __init__(self):
     tmt.EclipseProject.__init__(
         self,
         tmt.projectName(),
         description=DESCRIPTION)
Exemplo n.º 9
0
		# The problem is that even after compiling, webroot/WEB-INF/lib/ and
		# webroot/WEB-INF/classes/ are still unpopulated, so simply jarring it up
		# isn't good enough. Here we populate classes/ and lib/. To do so, we need
		# all of the things that webProject depends on, EXCEPT for winstone (ourself).
		deps = webProject.getRecursiveDependenciesTopoSorted(exclude=set([self]))

		webInf = join("tnoodle_resources", "webapps", "ROOT", "WEB-INF")
		libDir = join(webInf, "lib")
		classesDir = join(webInf, "classes")
		for project in deps:
			assert project is not self
			if hasattr(project, "jarFile"):
				arcPath = join(libDir, basename(project.jarFile))
				jar.write(project.jarFile, arcPath)
			elif isinstance(project, tmt.EclipseProject):
				for dirpath, dirnames, filenames in os.walk(project.bin, followlinks=True):
					for name in filenames:
						if dirpath.startswith(join(project.bin, "tnoodle_resources")):
							destDir = ""
						else:
							destDir = classesDir
						path = join(dirpath, name)
						prefixLen = len(project.bin)
						if project.bin.endswith("/"):
							prefixLen += 1
						arcPath = join(destDir, path[prefixLen+1:])
						jar.write(path, arcPath)


Project(tmt.projectName(), description="Tiny embeddable webserver that implements the java servlet spec.")
Exemplo n.º 10
0
import tmt

class Project(tmt.TmtProject):
	def getDependencies(self):
		return [ tmt.TmtProject.projects['twisty.js'] ]

	def getClasspathEntities(self, *args, **keyargs):
		# This is here just to make jracer's getClasspathEntities happy
		return set()

	def compile(self):
		pass

	def clean(self):
		pass

	def check(self):
		pass

Project(tmt.projectName(), description="A javascript game framework created with multiplayer racing in mind")
Exemplo n.º 11
0
import tmt

DESCRIPTION = "A dead simple svg generation library written in pure Java, with no dependencies. This code runs on both desktop Java, Android, and compiles to Javascript with GWT."

tmt.EclipseProject(tmt.projectName(), description=DESCRIPTION)
Exemplo n.º 12
0
import tmt
tmt.EclipseProject(tmt.projectName(), description="A Java library that parses a Stackmat plugged into an audio port.")
Exemplo n.º 13
0
import tmt


class Project(tmt.EclipseProject):
    def configure(self):
        tmt.EclipseProject.configure(self)
        tmt.WinstoneServer.addPlugin(self)


Project(tmt.projectName(), description="A Rubik's Cube timer.")
Exemplo n.º 14
0
import tmt

class Project(tmt.TmtProject):
	def getDependencies(self):
		return []

	def compile(self):
		pass

	def clean(self):
		pass

	def check(self):
		pass

Project(tmt.projectName(), description="Lucas Garron's Javascript puzzle simulator.")
Exemplo n.º 15
0
 def _chdir(self):
     oldDir = os.path.abspath('.')
     os.chdir(tmt.projectName())
     return oldDir
Exemplo n.º 16
0
 def __init__(self):
     tmt.EclipseProject.__init__(
         self, tmt.projectName(), description=DESCRIPTION, main="net.gnehzr.tnoodle.scrambles.Main"
     )
Exemplo n.º 17
0
import tmt
import subprocess
from os.path import join, exists
import shutil

class Project(tmt.EclipseProject):
	def configure(self):
		tmt.EclipseProject.configure(self)
		tmt.WinstoneServer.addPlugin(self)

Project(tmt.projectName(), description="mootools js library")
Exemplo n.º 18
0
 def __init__(self):
     tmt.EclipseProject.__init__(self,
                                 tmt.projectName(),
                                 description=DESCRIPTION)
Exemplo n.º 19
0
import tmt
import subprocess
from os.path import join, exists
import shutil

class Project(tmt.EclipseProject):
	def configure(self):
		tmt.EclipseProject.configure(self)
		tmt.WinstoneServer.addPlugin(self, needsDb=True)

Project(tmt.projectName(), description="A very basic demo of a java servlet and a php page.")
Exemplo n.º 20
0
import tmt
import subprocess
from os.path import join, exists
import shutil


class Project(tmt.EclipseProject):
    def configure(self):
        tmt.EclipseProject.configure(self)
        tmt.WinstoneServer.addPlugin(self)


Project(tmt.projectName(), description="mootools js library")
Exemplo n.º 21
0
import tmt
import subprocess
from os.path import join, exists
import shutil

class Project(tmt.EclipseProject):
    def configure(self):
        tmt.EclipseProject.configure(self)
        tmt.WinstoneServer.addPlugin(self)

Project(tmt.projectName(), description="A generic competition scramble generator interface.")
Exemplo n.º 22
0
import tmt
tmt.EclipseProject(tmt.projectName(), description="Dumping ground for useful Java functions used by web servlets")
Exemplo n.º 23
0
import tmt
tmt.EclipseProject(tmt.projectName(), description="Dumping ground for useful Java functions used throughout tnoodle")
Exemplo n.º 24
0
import tmt
import subprocess
from os.path import join, exists

class Project(tmt.EclipseProject):
	def configure(self):
		tmt.EclipseProject.configure(self)
		self.twophase_tables = 'twophase_tables'

	"""
    Commented out because we don't bother generating the tables at compile time anymore.
    They're generated the first time you run tnoodle, and are saved to disk.
	def innerCompile(self, src, tempBin, bin):
		if src == self.srcResource:
			# build the pruning and transition tables for the two phase algorithm
			tablesPath = join(tempBin, self.twophase_tables)
			print "Generating %s" % tablesPath
			cp = self.getClasspathEntities()
			cp.add(tempBin) # getClasspathEntities() contains self.bin, which isn't up to date yet
			assert 0 == tmt.java(
							main="cs.min2phase.Tools",
							classpath=self.toClasspath(cp),
							args=[ tablesPath ])
			print "Successfully generated %s!" % tablesPath
	"""

Project(tmt.projectName(), description="Chen Shuang's (https://github.com/ChenShuang) awesome 3x3 scrambler built on top of Herbert Kociemba's Java library.")
Exemplo n.º 25
0
import tmt
import subprocess

class Project(tmt.EclipseProject):
    def configure(self):
        tmt.EclipseProject.configure(self)
        tmt.WinstoneServer.addPlugin(self)

        self.nonJavaResourceDeps |= tmt.glob(self.src, '.*html$', relativeTo=self.src)

Project(tmt.projectName(), description="A server plugin wrapper for scrambles that also draws pdfs.")
Exemplo n.º 26
0
import tmt
import subprocess
from os.path import join, exists

class Project(tmt.EclipseProject):
	def configure(self):
		tmt.EclipseProject.configure(self)
                self.main = 'cs.sq12phase.Search'

	def compile(self):
		tmt.EclipseProject.compile(self)

Project(tmt.projectName(), description="A copy of Chen Shuang's square 1 two phase solver.")
Exemplo n.º 27
0
import tmt

class Project(tmt.EclipseProject):
	def configure(self):
		tmt.EclipseProject.configure(self)
		tmt.WinstoneServer.addPlugin(self)

		# I'd rather maintain a single TNoodle.jar binary that multiple different
		# jars with different subsets of what I consider TNoodle.
		self.fullName = "TNoodle"

Project(tmt.projectName(), description="Special target for the WCA")
Exemplo n.º 28
0
				# Note that there's a symlink from the src_tnoodle_resources
				# directory to the generated stackmat-flash/bin/StackApplet.swf.
				# This allows people without the flex sdk installed to work on tnoodle.
				# Fortunately, we don't follow symlinks when evaluating whether
				# a project needs to be rebuilt, so this symlink hack doesn't
				# force infinite rebuilds if mxmlc is installed.
				if not tmt.args.skip_noflex_warning:
					realOutSwf = self.APPLET_FILENAME
					print """\n\nWARNING: It appears you do not have the flex sdk installed (specifically the mxmlc binary), which is needed to build stackmat-flash. I'm going to go ahead and use the version of %s from the git repository.""" % ( realOutSwf )
				self.checkoutSwf(tempBin)
			else:
				# Wowow, you've gotta love it when you have such great tools
				asFile = join(src, 'StackApplet.as')
				if exists(asFile):
					assert self.mxmlcInstalled
					outSwf = self.APPLET_FILENAME
					retVal, stdout, stderr = tmt.runCmd([ 'mxmlc', '-benchmark=True', '-creator=tnoodle', '-static-link-runtime-shared-libraries=true', '-output=%s' % outSwf, asFile ], showStatus=True)
					assert retVal == 0

					# Yikes. mxmlc doesn't seem to have any command line args to treat
					# warnings as errors. Look what they've made me do!
					assert len(stderr) == 0

			# Neither of the two operations above update the timestamp of a file in self.bin.
			# We explicitly update timestamp of a file in self.bin so there aren't any issues where we try
			# to recompile this project when we don't need to.
			f = file(join(tempBin, ".timestamp"), 'w')
			f.write("%s" % time.time())

Project(tmt.projectName(), description="A flash applet that can interpret the sound of a stackmat plugged into your computer.")
Exemplo n.º 29
0
import tmt
from os.path import join

class Project(tmt.EclipseProject):
	def configure(self):
		tmt.EclipseProject.configure(self)

	def compile(self):
		tmt.EclipseProject.compile(self)

Project(tmt.projectName(), description="An easy to distribute and run single player version of noderacer.")
Exemplo n.º 30
0
import os
import os.path

class Project(tmt.TmtProject):
    def configure(self):
        self.gradlew = "(cd %s; ./gradlew %%s)" % self.name

    def getDependencies(self):
        return [ tmt.TmtProject.projects['scrambles'] ]

    def runGradleTask(self, task):
        retVal = os.system(self.gradlew % task)
        assert retVal == 0

    def compile(self):
        # Note that we skip signing here in order to prevent
        # travis ci issue.
        self.runGradleTask("assemble -x signArchives")

    def clean(self):
        self.runGradleTask("clean")

    def check(self):
        pass

    def publishToMavenCentral(self):
        self.runGradleTask("uploadArchives")
        self.runGradleTask("nexusStagingRelease")

Project(tmt.projectName(), description="Android scrambling library")
Exemplo n.º 31
0
import tmt
import subprocess
from os.path import join, exists

class Project(tmt.EclipseProject):
    def configure(self):
        tmt.EclipseProject.configure(self)
        tmt.WinstoneServer.addPlugin(self)

Project(tmt.projectName(), description="A 100% java implementation of php.")
Exemplo n.º 32
0
import tmt


class Project(tmt.EclipseProject):
    def configure(self):
        tmt.EclipseProject.configure(self)
        tmt.WinstoneServer.addPlugin(self)

        # I'd rather maintain a single TNoodle.jar binary that multiple different
        # jars with different subsets of what I consider TNoodle.
        self.fullName = "TNoodle"


Project(tmt.projectName(), description="Special target for the WCA")