Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Tk support #1298

Open
wants to merge 4,666 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 250 commits
Commits
Show all changes
4666 commits
Select commit Hold shift + click to select a range
bf8aafd
Merge commit '3ec9cf9' into merge_missing2
undingen May 19, 2016
f742d0c
Merge commit 'ff03e99' into merge_missing2
undingen May 19, 2016
3164dc3
Merge commit 'c5858c7' into merge_missing2
undingen May 19, 2016
64bc976
add __name__ attr to method-wrapper
May 19, 2016
da8686b
Merge pull request #1182 from kmod/check_refcounting
kmod May 19, 2016
1d1236b
Merge pull request #1170 from Daetalus/numpy_update
undingen May 19, 2016
96bcd8c
Support CAPI exceptions through this function
kmod May 19, 2016
413d022
Some numpy_test.py improvements
kmod May 19, 2016
307c2a0
Switch to smallvectors here
kmod May 19, 2016
4f83635
Extract the logic from DEFAULT_CLASS_SIMPLE
kmod May 19, 2016
49f8df1
Merge pull request #1183 from undingen/merge_missing2
kmod May 19, 2016
9c925c4
Merge pull request #1186 from kmod/numpy_perf
kmod May 20, 2016
a7653f0
Merge pull request #1187 from kmod/perf9
kmod May 20, 2016
7e53e4e
Reenable the 'extra' tests
kmod May 20, 2016
2023279
Don't create .pyc files for the main script
kmod May 20, 2016
cfae319
Oh it wasn't an issue, we were just passing more tests than expected
kmod May 20, 2016
8807084
Merge pull request #1189 from kmod/extra_tests
kmod May 20, 2016
24ee166
store and restore is_reraise flag
undingen May 19, 2016
1257cf6
enable sqlalchemy_smalltest
undingen May 19, 2016
c429f19
Merge pull request #1185 from undingen/sqlalchemy_ref
undingen May 21, 2016
1cfb7ac
Cleanup
kmod May 20, 2016
b5d22ec
Turn these optimizations back on
kmod May 20, 2016
24f4462
Merge pull request #1192 from kmod/refcounting_merge
kmod May 21, 2016
33e1db9
tuple: implement tp_as_sequence->sq_contains
undingen May 22, 2016
5816b3d
binop: use PyNumber_* for user defined classes
undingen May 20, 2016
b22043a
binopInternal: make inplace a template argument
undingen May 21, 2016
21ab994
Merge pull request #1198 from undingen/tuple_contains
undingen May 22, 2016
938b019
microptimization: mark _PyGC_generation0 as having a const address
undingen May 22, 2016
e335b4c
Merge pull request #1188 from dropbox/refcounting
kmod May 23, 2016
12e93c0
Force-rebuild during a pgo build
kmod May 23, 2016
2c916cb
Add numpy_fulltest.py that runs the full numpy testsuite
kmod May 23, 2016
e44c12e
Make bind_obj_out borrowed
kmod May 22, 2016
026b316
rearrangeArgs: don't own refs for positional_to_positional
kmod May 23, 2016
0d111f8
Loosen these checks if we imported a third party c extension
kmod May 23, 2016
9ffdead
Merge pull request #1202 from undingen/const_generation0
undingen May 23, 2016
62ee763
Merge pull request #1203 from undingen/use_pynumber
undingen May 23, 2016
9d5e5b2
there's no rewriter support in hex and oct in Pyston for now, so just…
May 23, 2016
a32afb2
Merge pull request #1201 from Daetalus/nexedi_numpy_fixing
undingen May 23, 2016
f9fcd85
Merge pull request #1200 from kmod/extra_refs
kmod May 23, 2016
2876c09
Update test results
kmod May 23, 2016
14ea4c0
Merge pull request #1206 from kmod/numpy_updatetest
kmod May 23, 2016
ea4cd6e
BoxIteratorGeneric: call PyIter_Next() lazily
undingen May 23, 2016
a31e032
revert some pyston changes now that we have ob_refcnt
undingen May 21, 2016
22b0776
update virtualenv to the one which always sets zip_safe=False
undingen May 23, 2016
1e54256
Merge pull request #1208 from undingen/zip_safe
undingen May 23, 2016
a6fca70
Merge pull request #1205 from undingen/BoxIteratorGeneric_fix
undingen May 24, 2016
19bf066
str: use tp_as_sequence instead of tp_as_number
undingen May 24, 2016
87f8c6a
Merge pull request #1210 from undingen/str_tp_as_number
kmod May 24, 2016
5e1a850
PyObject_New: register the type if the type is not yet registered
undingen May 23, 2016
b2a94fc
travis-ci: add some numpy requirements
undingen May 23, 2016
bf20355
Create a simple Dockerfile
kmod May 25, 2016
61ac7b5
Merge pull request #1207 from undingen/register_types
kmod May 25, 2016
d793a3a
Workaround for the "terminator in middle of basic block" issue
kmod May 24, 2016
a994ec0
Fix a rewriter bug
kmod May 24, 2016
8e8c9a8
Copy in CPython's descrobject.c
kmod May 24, 2016
4c3c693
Switch to using CPython's getset, member, wrapperdescr, and wrapper t…
kmod May 24, 2016
75d0050
Reenable our tpp_call rewriting for these types
kmod May 24, 2016
2f2c2f2
Support Rewriter::addGCReference, now without leaks
kmod May 24, 2016
0751c27
Use CPython's PyMethodDescr_Type
kmod May 24, 2016
7f84725
Reenable rewriting for method-descriptors
kmod May 24, 2016
c9cab0e
Merge pull request #1211 from kmod/docker2
kmod May 25, 2016
04f4515
Get rid of the numpy patch
kmod May 24, 2016
6dd62f7
cffi failures scare me
kmod May 25, 2016
a11ffa7
Manually specify the output of methoddescr.py
kmod May 25, 2016
7974eb8
Merge pull request #1209 from kmod/cpython_descr2
kmod May 25, 2016
499c4c0
Some packaging / distributing updates
kmod May 25, 2016
f4f3d39
exec, input: if globals has no __builtins__ add it as a dictwrapper
undingen May 25, 2016
865f7ba
Add a pyston/pyston-numpy docker image as well
kmod May 25, 2016
f788cfa
Merge pull request #1212 from kmod/packaging
kmod May 25, 2016
c4384c6
update list of failing cpython tests
undingen May 25, 2016
970ed60
Bump version numbers
kmod May 25, 2016
c6d8021
Merge pull request #1226 from kmod/packaging
kmod May 25, 2016
08d75e5
Merge pull request #1223 from undingen/cpython_tests2
kmod May 25, 2016
e37660e
Merge pull request #1221 from undingen/exec_builtins
kmod May 25, 2016
d1b799e
Temporarily disable the clang build on travis-CI
kmod Jun 6, 2016
ecb7025
Fix gcc debug-mode issue
kmod Jun 7, 2016
5380b5c
Fix std::move error on temporary object
c-rhodes Jun 7, 2016
b1137c1
Merge pull request #1237 from c-rhodes/fix_builtins_std_move
undingen Jun 7, 2016
251f48a
Bump build time to 60 minutes
kmod Jun 7, 2016
5ae5bf2
Merge pull request #1235 from kmod/disable_clang_build
kmod Jun 7, 2016
ec0924c
Fix set.py on new platforms
kmod May 28, 2016
d96795b
Copy this CPython test change
kmod May 28, 2016
ce69b81
bjit: change PP sizes and some misc minor improvements
undingen May 26, 2016
031526a
bjit: let OSR handle multiple loops
undingen May 26, 2016
4253de6
bjit: directly emit 'is' and 'is not' comparisons
undingen May 26, 2016
dc85d00
bjit: make nonzeroHelper return a borrowed reference
undingen May 29, 2016
a9a9c6c
bjit: use r12 and r15
undingen May 30, 2016
b022674
bjit: reenable local block var optimization
undingen May 27, 2016
75b794a
bjit: allocate code block using mmap
undingen May 26, 2016
ce2d965
rewriter: cleanup call() using a template and add a can_throw argumen…
undingen Jun 2, 2016
229fb46
rewriter: directly embed additional ref uses and bump uses early when…
undingen Jun 2, 2016
9fd4924
bjit: enable MAP_32BIT
undingen Jun 4, 2016
ccdbbaa
float.cpp: now that we have float.c use some of the functions directly
undingen Jun 7, 2016
11c0b2c
use std::isinf and std::isnan
undingen Jun 7, 2016
dc2f38c
Don't include definedness analysis in phianalysis time
kmod May 30, 2016
71ece5c
Extend time limit for force_llvm tests
kmod Jun 8, 2016
4ddb6e4
Copy CPython PyInt_AsLong implementation with some Pyston modifications
Jun 2, 2016
6c6e888
Add PYSTON_CONST macro
Jun 3, 2016
dc0c342
loose the type check in complexDivFloat
Jun 6, 2016
2c79c3f
Initialize the base class in PyType_Ready if it not get initialzied.
Jun 6, 2016
820dd0c
Merge pull request #1236 from undingen/cleanup_float_cpp
undingen Jun 8, 2016
e717448
Merge pull request #1227 from undingen/bjit_opt2
undingen Jun 8, 2016
3407b2d
Merge pull request #1229 from Daetalus/scipy_fixing_1_nexedi
undingen Jun 8, 2016
74311c5
Bump integration test timeout as well
kmod Jun 8, 2016
5346677
Merge pull request #1234 from kmod/vregs_everywhere_merge
kmod Jun 8, 2016
f142484
vregs: split them in three parts and reuse them in some cases
undingen Jun 1, 2016
74ee55c
Merge pull request #1239 from undingen/bjit_opt2_with_vreg_reuse
kmod Jun 11, 2016
24a5b0c
Improve REPL support
c-rhodes Jun 10, 2016
4f48bbe
make more list unit test pass
aisk Jun 11, 2016
eb8815b
Merge pull request #1245 from c-rhodes/1097
undingen Jun 11, 2016
b21fad5
Merge pull request #1246 from aisk/test_list
undingen Jun 11, 2016
a60e8c8
Add pyston_ prefix to Pyston defined True and False.
Jun 1, 2016
78e068b
revert Pyston's change about PyBoolObject
Jun 12, 2016
911ea3a
copy pyport.h from CPython, and add some pyston changes.
Jun 12, 2016
01b0367
download cython from github instead of cython.org
undingen Jun 13, 2016
f773465
Merge pull request #1248 from undingen/cython_url
undingen Jun 13, 2016
af389a7
Merge pull request #1231 from Daetalus/scipy_fixing_2_nexedi
undingen Jun 13, 2016
ca2ff3c
Remove redefinition error in pyport.h
undingen Jun 13, 2016
a5488ae
Merge pull request #1250 from undingen/pyport_fix
undingen Jun 13, 2016
4989639
Add new PyCode_HasFreeVars implementation
Jun 14, 2016
5f37b16
perf: add a script which allows 'perf report' to disassemble JITed fu…
undingen Jun 10, 2016
31a515b
Merge pull request #1244 from undingen/bjit_profiling
undingen Jun 15, 2016
120eb24
copy CPython's slot_tp_call implementation to Pyston
Jun 15, 2016
03a8895
Time the build part of the CI script
kmod Jun 14, 2016
cbed427
Smart leak checker
kmod Jun 8, 2016
0460ca6
Interpreter: refcount safety for signals
kmod Jun 12, 2016
43351fb
llvm JIT: refcount safety for signals
kmod Jun 12, 2016
5466b67
Add a simple test for these issues
kmod Jun 14, 2016
616dd7b
Merge pull request #1252 from kmod/telnetlib
kmod Jun 16, 2016
d43ea30
Dict ctor should not propagate certain exceptions
kmod Oct 6, 2015
33ac174
Support staticmethod.__func__
kmod Jun 3, 2016
ae2b1c0
Regression test: this test throws an irgen assertion
kmod Jun 3, 2016
a3e4178
Turn down verbosity
kmod Jun 4, 2016
8bc8f87
Improve lineno handling
kmod Jun 15, 2016
5edb898
Merge pull request #1253 from kmod/linenumbers
kmod Jun 17, 2016
5cc0a09
Add api_test extension for test C API, initially add PySet_Size test.
Jun 17, 2016
3eb3e5f
Add SciPy test, but not enabled yet.
Jun 17, 2016
9742646
rewriter: improve decref and xdecref
undingen Jun 11, 2016
2023c92
rewriter: remove duplicate getAttr calls
undingen Jun 11, 2016
805b30c
bjit: keep track which vregs are known to be non null
undingen Jun 6, 2016
72fb068
rewriter: add helper which makes it easier to select the best 'call' …
undingen Jun 16, 2016
33baefb
rewriter: better scratch handling
undingen Jun 17, 2016
a93836f
bjit+rewriter: use const_loader.loadConstIntoReg more often
undingen Jun 17, 2016
4dd4b5b
Merge pull request #1255 from undingen/bjit_opt7
undingen Jun 17, 2016
cc87a03
Merge pull request #1251 from Daetalus/new_api_nexedi
kmod Jun 20, 2016
e6931d6
Enable CPython's macro PyCFunction_GET_FUNCTION. Fixes issue #1260
Jun 22, 2016
5b89e0e
Enable function.func_closure and function.__new__
kmod Jun 24, 2016
7ea089b
Revert "Temporarily disable the clang build on travis-CI"
undingen Jun 26, 2016
a6b4559
Merge pull request #1266 from undingen/reenable_llvm_build
undingen Jun 26, 2016
76b2870
If type->tp_getattr is not NULL, don't set has_getattribute to False
Jun 26, 2016
255e787
Merge pull request #1265 from kmod/copyfunc
kmod Jun 27, 2016
73eb4a8
Merge pull request #1267 from Daetalus/scipy_fixing_3_nexedi
undingen Jun 27, 2016
d42e89a
Add type.__basicsize__, type.__itemsize__
Jun 28, 2016
258a2b0
ICs: variable size IC slots
undingen Jun 15, 2016
01c34d8
Dictionary comparisons #1135
Jun 17, 2016
3d34fe7
Fix 3-way-compare behavior on our old compareInternal() path
kmod Jun 27, 2016
818927c
bjit: fix failed OSR
undingen Jun 30, 2016
7f3083e
Merge pull request #1274 from undingen/bjit_osr_failure
undingen Jun 30, 2016
f2bf812
Merge pull request #1272 from kmod/sizeoftank_dictcomparisons
kmod Jun 30, 2016
dc0a2f2
Merge pull request #1276 from sizeoftank/work_for_issue1216
undingen Jul 2, 2016
5f562c4
Merge pull request #1259 from undingen/rewriter_slots4
undingen Jul 2, 2016
5271adc
Optimize BB traversals by mapping to ints
kmod Jul 1, 2016
62b5c6b
Some small micro-optimizations
kmod Jul 2, 2016
57ba9ca
large_import_bench.py
kmod Jul 2, 2016
bfe0638
Remove the "CPython executable parser"
Jun 27, 2016
a5dc1b1
Merge pull request #1268 from Daetalus/cpython_exe_parser
undingen Jul 4, 2016
20c9a7d
Merge pull request #1278 from kmod/refcounter_opt
kmod Jul 4, 2016
b0dccfb
Stop to emit code if rewrite failed(failed == true)
Jun 29, 2016
7f56274
rearrangeArguments added a extra ref in numpy resize function
Jul 5, 2016
a0affc4
Merge pull request #1270 from Daetalus/scipy_fixing4_nexedi
undingen Jul 5, 2016
f5a40a2
deinitFrame: don't modify CAPI exception state
undingen Jul 5, 2016
20cb1cc
Merge pull request #1281 from undingen/deinitFrame_exc
undingen Jul 5, 2016
2edfc49
fix crash in setitem rewrite path
undingen Jul 3, 2016
58c1fdd
capi: add the direct access macros back
undingen Jul 5, 2016
0ebe7b6
Merge pull request #1283 from undingen/use_cpython_macros
undingen Jul 5, 2016
7af2906
Track down an elusive reference leak
kmod Jul 6, 2016
44ccbe1
Merge pull request #1284 from kmod/telnetlib
undingen Jul 6, 2016
3fe4964
Explicitly represent undefinedness in DefinednessAnalysis
kmod May 21, 2016
742dc66
Make DefinednessAnalysis return a bitset
kmod May 26, 2016
b192765
DefinednessAnalysis uses vectors internally now
kmod May 28, 2016
84b05da
Change varargs and kwargs to AST_Names
kmod May 28, 2016
9f17a19
Switch PhiAnalysis to use VRegSets
kmod May 28, 2016
d686cbf
Switch LivenessAnalysis to vregs
kmod May 30, 2016
19e073e
ScopingAnalysis fix for lambdas
kmod May 30, 2016
18c6b30
Convert type_analysis to vregs
kmod Jun 21, 2016
8052061
Change analysis APIs to take vregs
kmod Jun 21, 2016
061e994
Move closure/generators out of the irgen symbol table
kmod Jun 24, 2016
0999d34
Move is_defined names out of the symbol table
kmod Jun 28, 2016
31f263f
Convert OSR to use vregs
kmod Jun 30, 2016
0870415
Only allow getName for vregs that we will give names
kmod Jun 30, 2016
b29380d
Switch frame introspection to use vregs
kmod Jul 1, 2016
6b4e418
Turn vreg-reuse back on
kmod Jul 1, 2016
279edc7
Update section_ordering
kmod Jul 1, 2016
cdaed13
Update unittests
kmod Jun 27, 2016
43992f5
This include isn't needed anymore
kmod Jul 1, 2016
b2f6149
Incorporate Marius's feedback
kmod Jul 6, 2016
a0529f4
Cleanup: iterating a VRegMap skips default entries
kmod Jul 6, 2016
5500b77
Fix some vreg-reuse confusion
kmod Jul 6, 2016
44cdb66
Cleanup
kmod Jul 6, 2016
e4938dd
only lookup __[set/get/del]slice__ for slice AST nodes
undingen Jul 3, 2016
a044540
Disable flaky pyopenssl test
kmod Jul 7, 2016
1923d11
Merge pull request #1277 from kmod/vregs_everywhere
kmod Jul 8, 2016
4d4d78a
Merge pull request #1280 from undingen/slice_lookup
undingen Jul 8, 2016
34d5d93
Add list tp_as_mapping for issue #1197
Jul 9, 2016
6a6d74f
add tp_as_mapping slots for str & tuple.
Jul 9, 2016
9ac97a1
Support attrwrapper as globals argument to execfile
kmod Jul 11, 2016
10f9ec7
Make pyc_stress_test shorter
kmod Jul 11, 2016
37fa8a9
Merge pull request #1289 from kmod/execfile_globals
kmod Jul 11, 2016
ef00782
Merge pull request #1287 from sizeoftank/work_tp_as_mapping_issue1197
kmod Jul 11, 2016
2208749
VRegSet: use a llvm bitvector as representation
undingen Jul 8, 2016
7044c24
Merge pull request #1291 from undingen/bitvector
kmod Jul 11, 2016
62ac9c8
Don't require annotating explicit null pointers
kmod Jul 11, 2016
b00a768
Fix unexpected-AttributeError-when-importing
kmod Jul 12, 2016
229ef9b
Fix disabling of pyopenssl test
kmod Jul 12, 2016
f075558
Merge pull request #1292 from kmod/scipy
kmod Jul 12, 2016
87edc34
str does not have an __iter__
kmod Oct 6, 2015
f0a2338
Optimize seq_iter protocol
kmod Jul 12, 2016
c7640dc
loose the dummy code object check
Jul 8, 2016
2190118
Add argument check for PyDict_Next
Jul 13, 2016
dfd5366
Make unboxed seqiter functions available
kmod Jul 13, 2016
a597d1b
Update Cython from 0.22 to 0.24
Jul 13, 2016
8818130
Rename numpy_test to scipy_test and add scipy test suite.
Jul 14, 2016
9b6e419
When build scipy, do not enable implicit-function-declaration
Jul 14, 2016
3489a0a
Merge pull request #1286 from Daetalus/scipy_fixing5_nexedi
undingen Jul 14, 2016
50552a0
assembler: fix cmp encoding
undingen Jul 5, 2016
3959924
assembler: fix movsd(Indirect src, XMMRegister dest) encoding
undingen Jul 12, 2016
dc1e134
assembler: (%rbp) must be encoded as 0(%rbp)
undingen Jul 13, 2016
6a90c79
bjit: better hasnext handling
undingen Jun 30, 2016
a0b7020
unwinding: libunwind expects dwarf reg numbers
undingen Jul 13, 2016
f0e39c1
bjit: use a bitset for register tracking in the rewriter and use r12,…
undingen Jun 17, 2016
5c0d56b
bjit: args in the entry block are non null + pass info on to successo…
undingen Jul 11, 2016
2e78077
Merge pull request #1290 from undingen/bjit_opt8
undingen Jul 14, 2016
14ab985
Turn off flaky formencode test
kmod Jul 14, 2016
57acfd0
One more test is passing here
kmod Jul 14, 2016
d375dfd
Merge pull request #1293 from kmod/str_iter
kmod Jul 14, 2016
b9ab979
docker: we are now using cython 0.24 + update readme for 0.5.1 release
undingen Jul 14, 2016
abb4b13
Merge pull request #1295 from undingen/release051
undingen Jul 14, 2016
fc7e22e
Bump version numbers
undingen Jul 14, 2016
ea8cd1d
Merge pull request #1296 from undingen/bump_06
undingen Jul 14, 2016
536fd62
Add missing build_docker.sh
kmod Jul 15, 2016
b4b69eb
fix duplicate docker builds
kmod Jul 15, 2016
ae07536
forgot to update this version number
undingen Jul 15, 2016
0c37fa0
Add sq_slots & mp_slots to instance (issue #1197)
Jul 13, 2016
3dc94a1
str: use cpythons [r]partition
undingen Jul 18, 2016
f71d5b3
Merge pull request #1299 from undingen/fix_unicode_partition
undingen Jul 18, 2016
6a33d15
Merge pull request #1294 from sizeoftank/pr_instance_sqslots_mpslots_…
undingen Jul 18, 2016
c1488b5
Enable _tkinter and Tkinter module in Pyston
Jul 18, 2016
900753b
Rename pure None to pyston_None, and use Py_None as much as possible. …
Jul 18, 2016
d2293a8
Add thread.interrupt_main
Jul 18, 2016
be94efc
Test
Jul 19, 2016
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
29 changes: 27 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
build

Makefile.local
tools/astprint
tools/demangle
tools/mcjitcache
tools/mcjitcache_release
tools/publicize
tools/publicize_release

pyston
pyston_opt
pyston_noasserts
Expand All @@ -15,9 +19,17 @@ pyston_debug
pyston_prof
pyston_profile
pyston_release
pyston_grwl
pyston_grwl_dbg
pyston_nosync
pyston_gcc
pyston_release_gcc
pyston_release_gcc_pgo
pyston_release_gcc_pgo_instrumented
pystontmp*/
/*_unittest

*.cache
tests/t.py
tests/t2.py
*.bc
stdlib.ll
*.o
Expand All @@ -28,6 +40,7 @@ stdlib*.ll
oprofile_data
pprof.jit
tags
TAGS
*.pyc

perf.data
Expand All @@ -38,4 +51,16 @@ gmon.out
find_problem.status
*.expected_cache

plugins/clang_capi

*.so
*.pch

compile.log

*.swp
*.swo

*.out

*~
43 changes: 43 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
[submodule "test/lib/django"]
path = test/lib/django
url = https://github.com/django/django
[submodule "test/lib/virtualenv"]
path = test/lib/virtualenv
url = https://github.com/dropbox/virtualenv
[submodule "test/lib/pycrypto"]
path = test/lib/pycrypto
url = https://github.com/dlitz/pycrypto.git
[submodule "test/lib/gflags"]
path = test/lib/gflags
url = https://github.com/google/python-gflags
ignore = untracked
[submodule "test/lib/sqlalchemy"]
path = test/lib/sqlalchemy
url = https://github.com/zzzeek/sqlalchemy
[submodule "test/lib/pyxl"]
path = test/lib/pyxl
url = https://github.com/dropbox/pyxl.git
ignore = untracked
[submodule "build_deps/libunwind"]
path = build_deps/libunwind
url = https://github.com/pathscale/libunwind.git
ignore = all
[submodule "build_deps/libpypa"]
path = build_deps/libpypa
url = git://github.com/vinzenz/libpypa.git
[submodule "build_deps/lz4"]
path = build_deps/lz4
url = git://github.com/Cyan4973/lz4.git
[submodule "build_deps/jemalloc"]
path = build_deps/jemalloc
url = git://github.com/jemalloc/jemalloc.git
[submodule "test/lib/decorator"]
path = test/lib/decorator
url = https://github.com/micheles/decorator
[submodule "test/lib/pyinotify"]
path = test/lib/pyinotify
url = https://github.com/seb-m/pyinotify.git
[submodule "test/lib/sqlalchemy_0.5"]
path = test/lib/sqlalchemy_0.5
url = https://github.com/zzzeek/sqlalchemy
ignore = untracked
98 changes: 98 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
language: cpp

compiler:
- clang
- gcc

env:
matrix:
- TRAVIS_BUILD_TYPE=Debug CCACHE_DIR=$HOME/.ccache_debug
- TRAVIS_BUILD_TYPE=Release CCACHE_DIR=$HOME/.ccache_release
global:
- PYSTON_RUN_ARGS=G

matrix:
exclude:
- compiler: gcc
env: TRAVIS_BUILD_TYPE=Debug CCACHE_DIR=$HOME/.ccache_debug

# use travis-ci docker based infrastructure
sudo: false

cache:
directories:
- $HOME/.ccache_debug
- $HOME/.ccache_release

addons:
apt:
sources:
- kubuntu-backports
- llvm-toolchain-precise-3.5
- ubuntu-toolchain-r-test
packages:
- autoconf
- ccache
- clang-3.5
- cmake
- g++-4.8
- gdb
- gfortran
- libatlas-dev
- libatlas-base-dev
- libbz2-dev
- libgeoip-dev
- libgmp3-dev
- libmpfr-dev
- liblzma-dev
- libncurses5-dev
- libreadline-dev
- libsqlite3-dev
- libtool
- ninja-build
- python-dev
- texlive-extra-utils
- libcurl4-openssl-dev
- libxml2-dev
- libxslt1-dev
- libssl-dev
- libtk8.5
- libtcl8.5
- tcl8.5-dev
- tk8.5-dev
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We'll also need to add any new required libraries to docs/INSTALLING.md

- swig

before_install:
- if [ "$CC" = "clang" ]; then export CC="clang-3.5" CXX="clang++-3.5"; fi
- if [ "$CC" = "gcc" ]; then export CC="gcc-4.8" CXX="g++-4.8"; fi
- $CXX --version

install:
- git clone git://github.com/llvm-mirror/llvm.git ~/pyston_deps/llvm-trunk
- git clone git://github.com/llvm-mirror/clang.git ~/pyston_deps/llvm-trunk/tools/clang
- git config --global user.email "[email protected]"
- git config --global user.name "Your Name"
- git submodule update --init --recursive
- mkdir ~/pyston-build && cd ~/pyston-build
- make -C $TRAVIS_BUILD_DIR llvm_up
- bash $TRAVIS_BUILD_DIR/tools/configure_travis.sh

before_script:
- mysql -e 'create database mysqldb_test charset utf8;'

script:
- ccache -z
- time ninja -j4 pyston check-deps && PYSTON_RUN_ARGS=G travis_wait 60 ctest --output-on-failure
- ccache -s
- if [ -n "$(git status --porcelain --untracked=no)" ]; then echo "test suite left the source directory dirty"; git status; false; fi

os:
- linux
# - osx

notifications:
webhooks:
urls:
- https://webhooks.gitter.im/e/7256425a36658faa8b9b
on_success: change # options: [always|never|change] default: always
on_failure: always # options: [always|never|change] default: always
8 changes: 8 additions & 0 deletions .vimrc.dir
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
set wildignore+=*.expected_cache,*.pyc,*.out,*.bc,*.d,*.o

let g:pyston_top = expand('<sfile>:p:h')
command! M execute ":make -C " . g:pyston_top . "/src -j1 COLOR=0 USE_DISTCC=0"
command! L execute ":cfile " . g:pyston_top . "/src/compile.log"

ca m M
ca l L
Loading