Skip to content

embedding tests are not part of travis & appveyor CI #224

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

Closed
3 tasks done
den-run-ai opened this issue Jun 4, 2016 · 6 comments · Fixed by #391
Closed
3 tasks done

embedding tests are not part of travis & appveyor CI #224

den-run-ai opened this issue Jun 4, 2016 · 6 comments · Fixed by #391
Milestone

Comments

@den-run-ai
Copy link
Contributor

den-run-ai commented Jun 4, 2016

https://github.com/pythonnet/pythonnet/tree/master/src/embed_tests

  • Fix crashes when running local
  • Run in AppVeyor
  • Run in Travis
@vmuriart
Copy link
Contributor

Add the [disabled] configs on a356dcc

Even after patching #262, the are other similar issues that are affecting Python3 in Appveyor.
Travis fails on all of them.

vmuriart referenced this issue Jan 14, 2017
- Updates PYTHONWARNINGS
- Adds (disabled) embedded tests
  - appveyor runs and passes on Python2.7, fails on Python3+
  - travis runs the tests, fails on all versions.
- Removes fast finish. Easier to debug if regression is version specific
- Refactor appveyor setup.
- Format other CI files and add links to updated resources
@den-run-ai den-run-ai added this to the 2.3.0 milestone Feb 2, 2017
@den-run-ai
Copy link
Contributor Author

Ok, I got to work Mono + Miniconda for 'import clr and all tests are passing.

The embedding tests show this error:

(root) dta@ubuntune:~/pythonnet$ nunit-console src/embed_tests/bin/Python.EmbeddingTest.dll
NUnit-Console version 2.6.4.0
Copyright (C) 2002-2012 Charlie Poole.
Copyright (C) 2002-2004 James W. Newkirk, Michael C. Two, Alexei A. Vorontsov.
Copyright (C) 2000-2002 Philip Craig.
All Rights Reserved.

Runtime Environment - 
   OS Version: Unix 4.4.0.31
  CLR Version: 4.0.30319.42000 ( Mono 4.0 ( 4.6.2 (Stable 4.6.2.16/ac9e222 Tue Jan  3 11:48:26 UTC 2017) ) )

ProcessModel: Default    DomainUsage: Single
Execution Runtime: mono-4.0
..Fatal Python error: no mem for sys.argv
ValueError: character U+650074 is not in range [U+0000; U+10ffff]

Current thread 0x00007f789d8ea700 (most recent call first):
Stacktrace:

  at <unknown> <0xffffffff>
  at (wrapper managed-to-native) Python.Runtime.Runtime.PySys_SetArgvEx (int,string[],int) <0x0012c>
  at Python.Runtime.Py.SetArgv (System.Collections.Generic.IEnumerable`1<string>) <0x0004b>
  at Python.Runtime.PythonEngine.Initialize (System.Collections.Generic.IEnumerable`1<string>) <0x000cf>
  at Python.Runtime.PythonEngine..ctor (string[]) <0x00013>
  at Python.EmbeddingTest.InitializeTest.LoadSpecificArgs () <0x000af>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0x000ba>
  at <unknown> <0xffffffff>
  at (wrapper managed-to-native) System.Reflection.MonoMethod.InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&) <0x0006c>
  at System.Reflection.MonoMethod.Invoke (object,System.Reflection.BindingFlags,System.Reflection.Binder,object[],System.Globalization.CultureInfo) <0x000b7>
  at System.Reflection.MethodBase.Invoke (object,object[]) <0x0002a>
  at NUnit.Core.Reflect.InvokeMethod (System.Reflection.MethodInfo,object,object[]) <0x00064>
  at NUnit.Core.TestMethod.RunTestMethod () <0x00053>
  at NUnit.Core.TestMethod.RunTestCase (NUnit.Core.TestResult) <0x00027>
  at NUnit.Core.TestMethod.RunTest () <0x00147>
  at NUnit.Core.NUnitTestMethod.RunTest () <0x0000f>
  at NUnit.Core.TestMethod.RunRepeatedTest () <0x0012f>
  at NUnit.Core.TestMethod.RunTestInContext () <0x0060b>
  at NUnit.Core.TestMethod.Run (NUnit.Core.EventListener,NUnit.Core.ITestFilter) <0x000af>
  at NUnit.Core.TestSuite.RunAllTests (NUnit.Core.TestResult,NUnit.Core.EventListener,NUnit.Core.ITestFilter) <0x002f1>
  at NUnit.Core.TestSuite.RunSuite (NUnit.Core.EventListener,NUnit.Core.ITestFilter) <0x0046b>
  at NUnit.Core.TestSuite.RunSuiteInContext (NUnit.Core.EventListener,NUnit.Core.ITestFilter) <0x000c7>
  at NUnit.Core.TestSuite.Run (NUnit.Core.EventListener,NUnit.Core.ITestFilter) <0x0006f>
  at NUnit.Core.TestFixture.Run (NUnit.Core.EventListener,NUnit.Core.ITestFilter) <0x00083>
  at NUnit.Core.TestSuite.RunAllTests (NUnit.Core.TestResult,NUnit.Core.EventListener,NUnit.Core.ITestFilter) <0x002f1>
  at NUnit.Core.TestSuite.RunSuite (NUnit.Core.EventListener,NUnit.Core.ITestFilter) <0x0046b>
  at NUnit.Core.TestSuite.RunSuiteInContext (NUnit.Core.EventListener,NUnit.Core.ITestFilter) <0x000c7>
  at NUnit.Core.TestSuite.Run (NUnit.Core.EventListener,NUnit.Core.ITestFilter) <0x0006f>
  at NUnit.Core.TestSuite.RunAllTests (NUnit.Core.TestResult,NUnit.Core.EventListener,NUnit.Core.ITestFilter) <0x002f1>
  at NUnit.Core.TestSuite.RunSuite (NUnit.Core.EventListener,NUnit.Core.ITestFilter) <0x0046b>
  at NUnit.Core.TestSuite.RunSuiteInContext (NUnit.Core.EventListener,NUnit.Core.ITestFilter) <0x000c7>
  at NUnit.Core.TestSuite.Run (NUnit.Core.EventListener,NUnit.Core.ITestFilter) <0x0006f>
  at NUnit.Core.TestSuite.RunAllTests (NUnit.Core.TestResult,NUnit.Core.EventListener,NUnit.Core.ITestFilter) <0x002f1>
  at NUnit.Core.TestSuite.RunSuite (NUnit.Core.EventListener,NUnit.Core.ITestFilter) <0x0046b>
  at NUnit.Core.TestSuite.RunSuiteInContext (NUnit.Core.EventListener,NUnit.Core.ITestFilter) <0x000c7>
  at NUnit.Core.TestSuite.Run (NUnit.Core.EventListener,NUnit.Core.ITestFilter) <0x0006f>
  at NUnit.Core.SimpleTestRunner.Run (NUnit.Core.EventListener,NUnit.Core.ITestFilter,bool,NUnit.Core.LoggingThreshold) <0x00128>
  at NUnit.Core.TestRunnerThread.TestRunnerThreadProc () <0x00059>
  at System.Threading.ThreadHelper.ThreadStart_Context (object) <0x00083>
  at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool) <0x0022e>
  at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool) <0x00028>
  at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext,System.Threading.ContextCallback,object) <0x00061>
  at System.Threading.ThreadHelper.ThreadStart () <0x00034>
  at (wrapper runtime-invoke) object.runtime_invoke_void__this__ (object,intptr,intptr,intptr) <0x000c8>

Native stacktrace:

	/usr/bin/cli() [0x4accca]
	/lib/x86_64-linux-gnu/libpthread.so.0(+0x113d0) [0x7f78a22ac3d0]
	/lib/x86_64-linux-gnu/libc.so.6(gsignal+0x38) [0x7f78a1cf1418]
	/lib/x86_64-linux-gnu/libc.so.6(abort+0x16a) [0x7f78a1cf301a]
	/usr/lib/x86_64-linux-gnu/libpython3.5m.so(Py_FatalError+0x3f) [0x7f789d1616df]
	/usr/lib/x86_64-linux-gnu/libpython3.5m.so(PySys_SetArgvEx+0xde) [0x7f789d142b1e]
	[0x4082183d]

Debug info from gdb:

Could not attach to process.  If your uid matches the uid of the target
process, check the setting of /proc/sys/kernel/yama/ptrace_scope, or try
again as the root user.  For more details, see /etc/sysctl.d/10-ptrace.conf
ptrace: Operation not permitted.
No threads.

=================================================================
Got a SIGABRT while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================

Aborted (core dumped)
(root) dta@ubuntune:~/pythonnet$ 

@den-run-ai
Copy link
Contributor Author

This issue explains the current problem with system Python in Ubuntu, but this is resolved in Miniconda:

#303

@vmuriart
Copy link
Contributor

vmuriart commented Feb 7, 2017

Should we close this issue or #352 since they are related. #352 specifically details the current issue on Travis (can't find python.dll). Do we know if the python versions on travis were build with --enabled_shared?

@vmuriart
Copy link
Contributor

vmuriart commented Feb 14, 2017

Travis dlls have been painfully found without having to use miniconda thanks to this issue.

Now it outputting the same error that @denfromufa mentions. #352 was closed since its particular scope has been fixed (finding dlls)

@vmuriart
Copy link
Contributor

Good news and bad news. I got the embedded tests to run and pass on travis. The bad news is that I had to disable half of them for it to pass.

What time means is that travis is fully configured to run the embedded_tests, now we just have to fix the issues on the tests.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants