aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorLines
2020-10-24ci: No longer allow tests to fail with clangHEADmasterAvatar Marvin Schmidt -1/+0
The previous commit fixed the failing python tests. Make sure we don't regress and make CI fail if they break again
2020-10-24Fix symbol visibility errors with clangAvatar Marvin Schmidt -2/+6
LabelsDepSpec visibility: 133: >>> test action_TEST 133: Traceback (most recent call last): 133: File "/home/marv/devel/paludis-worktrees/master/python/action_TEST.py", line 21, in <module> 133: from paludis import * 133: ImportError: /home/marv/devel/paludis-worktrees/master/build-clang/python/libpaludispython_3.0.so.300: undefined symbol: _ZN7paludis19spec_tree_internals14BasicInne rNodeINS_8SpecTreeINS_13TypeListEntryINS_20SpecTreeLeafNodeTypeINS_14PackageDepSpecEEENS3_INS4_INS_12BlockDepSpecEEENS3_INS4_INS_13LabelsDepSpecINS_17DependenciesLabelEE EEENS3_INS4_INS_15NamedSetDepSpecEEENS3_INS_21SpecTreeInnerNodeTypeINS_10AllDepSpecEEENS3_INSF_INS_10AnyDepSpecEEENS3_INSF_INS_18ConditionalDepSpecEEENS_12TypeListTailEE EEEEEEEEEEEEESG_EEE6appendISB_EESt10shared_ptrINSU_8NodeTypeIT_E4TypeEERKSX_ISZ_E 133: >>> test action_TEST returned 1 [1s] 133: >>> exiting with error for test action_TEST 1/1 Test #133: python_action ....................***Failed 0.03 sec The missing symbol is: std::shared_ptr<DependencySpecTree::NodeType<paludis::LabelsDepSpec<paludis::DependenciesLabel>>::Type> paludis::spec_tree_internals::BasicInnerNode<paludis::SpecTree<...>>::append< paludis::LabelsDepSpec<paludis::DependenciesLabel>>( std::shared_ptr<paludis::LabelsDepSpec<paludis::DependenciesLabel> > const&) => Move LabelsDepSpec<DependenciesLabel> instantiation to header file Missing dep_spec.hh include: 133: >>> test action_TEST 133: Traceback (most recent call last): 133: File "/home/marv/devel/paludis-worktrees/master/python/action_TEST.py", line 21, in <module> 133: from paludis import * 133: ImportError: /home/marv/devel/paludis-worktrees/master/build-clang/python/libpaludispython_3.0.so.300: undefined symbol: _ZN7paludis19spec_tree_internals14BasicInnerNodeINS_8SpecTreeINS_13TypeListEntryINS_20SpecTreeLeafNodeTypeINS_14PackageDepSpecEEENS3_INS4_INS_12BlockDepSpecEEENS3_INS4_INS_13LabelsDepSpecINS_17DependenciesLabelEEEEENS3_INS4_INS_15NamedSetDepSpecEEENS3_INS_21SpecTreeInnerNodeTypeINS_10AllDepSpecEEENS3_INSF_INS_10AnyDepSpecEEENS3_INSF_INS_18ConditionalDepSpecEEENS_12TypeListTailEEEEEEEEEEEEEEESG_EEE6appendISD_EESt10shared_ptrINSU_8NodeTypeIT_E4TypeEERKSX_ISZ_E 133: >>> test action_TEST returned 1 [0s] 133: >>> exiting with error for test action_TEST 1/1 Test #133: python_action ....................***Failed 0.03 sec The missing symbol is: std::shared_ptr<DependencySpecTree::NodeType<paludis::NamedSetDepSpec>::Type> paludis::spec_tree_internals::BasicInnerNode<DependencySpecTree>::append< paludis::NamedSetDepSpec>(std::shared_ptr<paludis::NamedSetDepSpec> const&) => Provide full type for NamedSetDepSpec
2020-10-16modernize: Mark overriding functions as suchAvatar Marvin Schmidt -2285/+2284
Done using clang-tidy's `modernize-use-override` check
2020-09-28ci: exherbo: clang: Update docker base imageAvatar Marvin Schmidt -1/+1
2020-09-28ci: gentoo: Update to ruby 2.5Avatar Marvin Schmidt -1/+1
2020-09-28ci: Add stage to build docker imagesAvatar Marvin Schmidt -0/+45
2020-09-28ci: gentoo: Adjust boost workaround for new versionAvatar Marvin Schmidt -2/+2
2020-03-10ci: gentoo: Rename docker directory for consistencyAvatar Marvin Schmidt -0/+0
Makes the gitlab CI config easier
2020-03-10ci: exherbo: Make Python version configurableAvatar Marvin Schmidt -2/+10
This allows using different Python versions in the stable and testing docker images We need to resolve using `--complete` so we don't break packages with the default Python ABI which aren't in the resolution of `paludis-deps`
2020-03-10ci: exherbo: Allow all required old versionsAvatar Marvin Schmidt -2/+2
If the resolution requires an old version of a package it shouldn't fail since be can't do much about that. Permit "*/*" to make this more reliable
2020-03-10ci: exherbo: Use long-options for `cave resolve`Avatar Marvin Schmidt -4/+14
2020-03-10ci: Remove Python 2.7 from docker imagesAvatar Marvin Schmidt -94/+2
2020-02-19emagicdocs: Also install CONTRIBUTING* filesAvatar Heiko Becker -1/+1
It is quite common for projects to have such a file and it (hopefully) is a good start when you're looking for information where and how to submit a patch.
2019-10-24Support python 3.8Avatar Heiko Becker -2/+2
2019-10-24Use the versioned component and imported target for boost pythonAvatar Heiko Becker -4/+3
2019-10-22doc/python: Run sphinx with the same python version we build againstAvatar Marvin Schmidt -1/+1
The shebang of the sphinx-build binary does not necessarily point to the python version we use to build our python bindings. On Exherbo Sphinx provides multiple library version but only a single executable which gets a shebang pointing to the last selected ABI
2019-10-22build: Format long command more readableAvatar Marvin Schmidt -1/+7
2019-10-22ci/configure: Introduce option for python version to useAvatar Marvin Schmidt -1/+7
2019-10-22hooker_TEST: make ordering/py_hook Python3 compatibleAvatar Marvin Schmidt -1/+1
Otherwise the test fails with the following error when using Python 3: 13: [ RUN ] Hooker.Ordering 13: paludis@1565848657: [WARNING hook.python.failure] Hook 'hooker_TEST_dir/ordering/py_hook.py': running hook_run_ordering function failed: 'Traceback (most recent call last): 13: File "hooker_TEST_dir/ordering/py_hook.py", line 2, in hook_run_ordering 13: file("hooker_TEST_dir/ordering.out", "a").write("py_hook\n") 13: NameError: name 'file' is not defined' 13: ../paludis/hooker_TEST.cc:76: Failure 13: Expected equality of these values: 13: 0 13: result.max_exit_status() 13: Which is: 1 13: ../paludis/hooker_TEST.cc:83: Failure 13: Expected equality of these values: 13: "e\nc\nf\nd\nb\na\npy_hook\ng\ni\nh\nsohook\nk\nj\n" 13: line 13: Which is: "e\nc\nf\nd\nb\na\ng\ni\nh\nsohook\nk\nj\n" 13: With diff: 13: @@ -5,5 @@ 13: b 13: a 13: -py_hook 13: g 13: i 13: 13: [ FAILED ] Hooker.Ordering (184 ms)
2019-10-22python: Normalize exceptionsAvatar Marvin Schmidt -0/+1
The python 3 incompatible call of `file` in the python hook caused an exception. Trying to get the traceback failed because the exception isn't normalized: 13: [ RUN ] Hooker.Ordering 13: paludis@1565848332: [WARNING hook.python.traceback_failed] In thread ID '13623': 13: ... When triggering hook 'ordering': 13: ... When running hook 'hooker_TEST_dir/ordering/py_hook.py' for hook 'ordering': 13: ... When getting traceback 13: ... Hook 'hooker_TEST_dir/ordering/py_hook.py': _get_traceback(): traceback.format_exception failed 13: paludis@1565848332: [WARNING hook.python.failure] Hook 'hooker_TEST_dir/ordering/py_hook.py': running hook_run_ordering function failed: 'Getting traceback failed' 13: paludis@1565848332: [WARNING hook.python.failure] Hook 'hooker_TEST_dir/ordering/py_hook.py' failed unexpectedly: 'Traceback (most recent call last): 13: File "/usr/x86_64-pc-linux-gnu/lib/python3.7/traceback.py", line 121, in format_exception 13: type(value), value, tb, limit=limit).format(chain=chain)) 13: File "/usr/x86_64-pc-linux-gnu/lib/python3.7/traceback.py", line 476, in __init__ 13: if (exc_value and exc_value.__cause__ is not None 13: AttributeError: 'str' object has no attribute '__cause__' 13: 13: The above exception was the direct cause of the following exception: 13: 13: Traceback (most recent call last): 13: File "/home/marv/devel/paludis-worktrees/cross/python/paludis_output_wrapper.py", line 101, in restore_prefix 13: restore("both") 13: File "/home/marv/devel/paludis-worktrees/cross/python/paludis_output_wrapper.py", line 80, in restore 13: if len(stderr_cache): 13: SystemError: <built-in function len> returned a result with an error set' 13: ../paludis/hooker_TEST.cc:76: Failure 13: Expected equality of these values: 13: 0 13: result.max_exit_status() 13: Which is: 1 13: ../paludis/hooker_TEST.cc:83: Failure 13: Expected equality of these values: 13: "e\nc\nf\nd\nb\na\npy_hook\ng\ni\nh\nsohook\nk\nj\n" 13: line 13: Which is: "e\nc\nf\nd\nb\na\ng\ni\nh\nsohook\nk\nj\n" 13: With diff: 13: @@ -5,5 @@ 13: b 13: a 13: -py_hook 13: g 13: i 13: 13: [ FAILED ] Hooker.Ordering (195 ms)
2019-10-22build: Make python version configurableAvatar Marvin Schmidt -6/+15
2019-10-22build: Set Boost_PYTHON_VERSION to select correct library versionAvatar Marvin Schmidt -0/+1
2019-10-22build: Make python invocation compatible with Python 3Avatar Marvin Schmidt -1/+1
2019-10-22clang-tidy: Disable modernize-make-uniqueAvatar Marvin Schmidt -0/+1
2019-10-22clang-tidy: Disable modernize-use-trailing-return-typeAvatar Marvin Schmidt -0/+1
2019-10-22clang-tidy: Update config with clang-tidy 9Avatar Marvin Schmidt -1/+29
2019-10-13ci: Pass correct CMAKE_FIND_ROOT_PATHAvatar Marvin Schmidt -0/+1
2019-10-13ci: Remove i686 target option from docker imagesAvatar Marvin Schmidt -2/+0
2019-10-13ci: docker: Remove obsolete python workaroundAvatar Marvin Schmidt -2/+1
2019-10-13ci: exherbo: Restrict build jobs for ghostscript to 1Avatar Marvin Schmidt -0/+6
2019-10-13ci: gentoo: Workaround boost/cmake problemsAvatar Marvin Schmidt -7/+9
2019-10-13ci: gentoo: Update docker fileAvatar Marvin Schmidt -2/+2
2019-08-02ci: Add missing Python ABIsAvatar Marvin Schmidt -0/+2
2019-07-25build: Make changing supported Ruby ABIs a one-stop changeAvatar Marvin Schmidt -8/+6
The option description and the actually supported ABI version got out of sync with the last updates. Prevent this from happening again by keeping the information in one place only
2019-07-02Documentation: Added example to `world` file location.Avatar Jacob Hrbek -1/+1
2019-07-02Documentation: Updated comment that mensiones exherbo configuration to be ↵Avatar Jacob Hrbek -1/+1
more intuitive.
2019-04-26ci: Use 'artifacts' to pass build folder between jobsAvatar Marvin Schmidt -3/+1
2019-04-26ci: Add clang-tidy stageAvatar Marvin Schmidt -0/+60
Created using: $ clang-tidy -dump-config > .clang-tidy with $ clang-tidy --version LLVM (http://llvm.org/): LLVM version 8.0.0svn Optimized build with assertions. Default target: x86_64-pc-linux-gnu Host CPU: penryn
2019-04-26ci: Add Exherbo testing buildAvatar Marvin Schmidt -1/+38
Builds paludis with GCC in an Exherbo environment with all testing/broken packages unmasked, so that we catch problems with future versions of those packages early
2019-04-19ci: Add clang based build for ExherboAvatar Marvin Schmidt -0/+141
Allow the tests to fail for now, since all tests involving python fail for some reason when using Clang. I'll hunt this down, but like to have a CI job for this in place before
2019-04-19Improve CI setupAvatar Marvin Schmidt -14/+339
2019-04-18tests: fix BASH_COMPAT tests with bash 5Avatar Marc-Antoine Perennou -2/+2
Bash now overrides this with a new value with no dot Fixes #2 Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
2019-03-11tests: Allow Linux 5.xAvatar Heiko Becker -1/+1
2019-02-07allow building with ruby 2.6Avatar Marc-Antoine Perennou -1/+2
Change-Id: I9fa0633ad28e6b24db009e2e229cbbe7d1d03d98 Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
2018-12-22build: Generate an import target for Jansson and use itAvatar Heiko Becker -4/+9
2018-12-22build: Use imported targets for GTestAvatar Heiko Becker -6/+3
Raises the cmake requirement to 3.5.0 (released in March 2016) but we don't need to manually mess with INCLUDE_DIRS and linking to a thread library anymore.
2018-12-22build: Work around gcc6&cmake issue #16291 in .gitlab-ci.yamlAvatar Heiko Becker -1/+1
A change in gcc 6 made using -isystem with the default include directory fail. A bug report [1] about this has been closed with RESOLVED WONTFIX. This became a problem with cmake[>=3.6] because cmake is filtering out /usr/include as default include path, but not our non-standard /usr/${CHOST}/include (upstream issue [2]). Until this is fixed we can specify the implicit include dir manually. We do the same on Exherbo in cmake.exlib. [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70129 [2] https://gitlab.kitware.com/cmake/cmake/issues/16291 [3] c077952471b7d8003fb3c41091c2daea01e4f700 in arbor.git
2018-12-21build: Add .gitlab-ci.ymlAvatar Heiko Becker -0/+16
2018-07-23Adjust the stripper for file>=5.33 and PIE executablesAvatar Heiko Becker -1/+2
It can recognize executables built with PIE now, which are just shared objects with the executable bit set (and were recognized by stripper via the "shared object" text returned from earlier versions). With file 5.32: $ file .../file: ".../file: ELF 64-bit LSB shared object" $ file .../libmagic.so.1.0.0: ".../libmagic.so.1.0.0: ELF 64-bit LSB shared object" With file 5.33: $ file .../file: ".../file: ELF 64-bit LSB pie executable x86-64" $ file .../libmagic.so.1.0.0: ".../libmagic.so.1.0.0: ELF 64-bit LSB pie executable x86-64"
2018-07-05python: Implement and expose Environment::reduced_usernameAvatar Marvin Schmidt -0/+21
It was forgotten in 917cc160a which introduced this pure virtual function in the `Environment` base class: /var/tmp/paludis/build/sys-apps-paludis-scm/work/paludis-scm/python/environment.cc:48:7: note: because the following virtual functions are pure within 'EnvironmentImplementationWrapper': class EnvironmentImplementationWrapper : ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /var/tmp/paludis/build/sys-apps-paludis-scm/work/paludis-scm/paludis/environment_implementation.hh:23:0, from /var/tmp/paludis/build/sys-apps-paludis-scm/work/paludis-scm/paludis/environments/paludis/paludis_environment.hh:23, from /var/tmp/paludis/build/sys-apps-paludis-scm/work/paludis-scm/python/environment.cc:24: /var/tmp/paludis/build/sys-apps-paludis-scm/work/paludis-scm/paludis/environment.hh:427:33: note: virtual std::__cxx11::string paludis::Environment::reduced_username() const virtual std::string reduced_username() const = 0; ^~~~~~~~~~~~~~~~