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

package DataFrame for conan-io #542

Closed
wants to merge 15 commits into from
Closed

Conversation

yssource
Copy link
Contributor

Specify library name and version: DataFrame/1.5.0

  • [ x] I've read the guidelines for contributing.
  • [ x] I've followed the PEP8 style guides for Python code in the recipes.
  • [ x] I've used the latest Conan client version.
  • [ x] I've tried at least one configuration locally with the
    conan-center hook activated.

@conan-center-bot
Copy link
Collaborator

Sorry, the build is only launched for Early Access Program users. You can request access writing in this issue.

@conan-center-bot
Copy link
Collaborator

Sorry, the build is only launched for Early Access Program users. You can request access writing in this issue.

@conan-center-bot
Copy link
Collaborator

All green! 😊

recipes/DataFrame/config.yml Outdated Show resolved Hide resolved
recipes/DataFrame/all/conanfile.py Outdated Show resolved Hide resolved
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
@danimtb
Copy link
Member

danimtb commented Dec 26, 2019

Don't know why this generated just 1 package 🤔

Copy link
Member

@uilianries uilianries left a comment

Choose a reason for hiding this comment

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

Hi @yssource ! Thanks for your contribution, some important points:

  • Your recipe offers shared/static library option, by DataFrame only offer an unique type per platform
  • DataFrame build all its tests, but unfortunately there is no option
  • All packages and folder must use lowercase only

Please, take a look in my PR which contains all changes that you need to improve this PR: yssource#1

@yssource
Copy link
Contributor Author

Thanks for reviews.

@yssource
Copy link
Contributor Author

It's necessarily to rebase the commits, isn't it?

@conan-center-bot
Copy link
Collaborator

Some configurations of 'dataframe/1.5.0' have failed:

  • Windows x86_64, Debug, Visual Studio 14, MTd. Options: dataframe:shared-False
    • Hooks errors detected:
      • [HOOK - conan-center.py] post_package(): ERROR: [DEFAULT PACKAGE LAYOUT (KB-H013)] Unknown folder 'CMake' in the package (https://github.com/conan-io/conan-center-index/wiki/Error-Knowledge-Base#KB-H013)
      • [HOOK - conan-center.py] post_package(): ERROR: [CMAKE-MODULES-CONFIG-FILES (KB-H016)] The conan-center repository doesn't allow the packages to contain CMake find modules or config files. The packages have to be located using generators and the declared cpp_infoinformation (https://github.com/conan-io/conan-center-index/wiki/Error-Knowledge-Base#KB-H016)
      • [HOOK - conan-center.py] post_package(): ERROR: [CMAKE-MODULES-CONFIG-FILES (KB-H016)] Found files:
    • Log download
    • Log error Download
    • Profile
  • Access to all the logs

@yssource
Copy link
Contributor Author

yssource commented Dec 27, 2019

It seems the failure that is caused under "Windows x86_64". But I don't have such a guest developing environment on my local PC.

@uilianries
Copy link
Member

It seems the failure that is caused under "Windows x86_64". But I don't have such a guest developing environment on my local PC.

You don't need, just check the logs provided by the CI.

The problem is that on Windows, this project copies those CMake file to self.package_folder/CMake, instead of self.package_folder/lib/cmake, like on Unix systems.

Co-Authored-By: Uilian Ries <uilianries@gmail.com>
@conan-center-bot
Copy link
Collaborator

Some configurations of 'dataframe/1.5.0' have failed:

@yssource
Copy link
Contributor Author

        # Remove packaging files & MS runtime files
        for dir_to_remove in [
            "cmake",
            os.path.join("lib", "cmake"),
            os.path.join("lib", "share"),
            os.path.join("lib", "pkgconfig"),
            "share"
        ]:
            tools.rmdir(os.path.join(self.package_folder, dir_to_remove))

@uilianries I'm not sure, whether it is ok or not, as above.

@uilianries
Copy link
Member

@yssource You fixed one error, now you have a new one:

DataFrame requires C++17, however, MSVC 14 and MSVC 15 doesn't offer support for such cpp standard. You need to drop them by configure.

@uilianries
Copy link
Member

@yssource reading again the author cmake file, it requires cpp 14 actually.

Copy link
Member

@uilianries uilianries left a comment

Choose a reason for hiding this comment

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

Drop Visual Studio 14

recipes/dataframe/all/conanfile.py Show resolved Hide resolved
recipes/dataframe/all/conanfile.py Show resolved Hide resolved
yssource and others added 2 commits December 28, 2019 22:40
Co-Authored-By: Uilian Ries <uilianries@gmail.com>
Co-Authored-By: Uilian Ries <uilianries@gmail.com>
@conan-center-bot
Copy link
Collaborator

Some configurations of 'dataframe/1.5.0' have failed:

@conan-center-bot
Copy link
Collaborator

Some configurations of 'dataframe/1.5.0' have failed:

):
raise ConanInvalidConfiguration("DataFrame requires Visual Studio >= 16")
elif compiler == "apple-clang":
raise ConanInvalidConfiguration("DataFrame is not tested with apple-clang")
Copy link
Member

Choose a reason for hiding this comment

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

What do you mean by "not tested"? Who didn't test, you or the author? You should check if it's working on OSX.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

OSX tests are commented out in the official hosseinmoein/DataFrame/.travis.yml.
emm, I will test this in my fork with travis-ci.

@conan-center-bot
Copy link
Collaborator

Some configurations of 'dataframe/1.5.0' failed in build 10 (0e9ea27c8bdf79d98ddadc30f78bac63ea1ebed0):

@conan-center-bot
Copy link
Collaborator

Some configurations of 'dataframe/1.5.0' failed in build 11 (ef8bafb6cb09187cb80c277de22d866600c3554a):

@conan-center-bot
Copy link
Collaborator

Some configurations of 'dataframe/1.5.0' failed in build 12 (f0fc0975a445c73486e6e0b03a129d5b0ae8f568):

@yssource
Copy link
Contributor Author

The building on Visual Studio has troubled me for a long time.
I created a repo with the same codes and made a successful building on travis-ci and appveyor.
But, it fails to build here.

@conan-center-bot
Copy link
Collaborator

Some configurations of 'dataframe/1.5.0' failed in build 13 (9fb52c9b8630d5390f6223ec8634d264e313ecfb):

@uilianries
Copy link
Member

@yssource The error is:

error LNK2019: unresolved external symbol "private: static unsigned int hmdf::ThreadGranularity::num_of_threads_

The problem is that you trying to access a symbol which wasn't exported, but DataFrame project doesn't support __declspec(dllexport)/__declspec(import). Even if you force CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=ON it won't work. It's an upstream limitation.

My suggestion: Drop shared option for Windows, request such support to the upstream

@uilianries
Copy link
Member

For some reason, this project is forcing MD runtime, even when is configured to MT. I didn't any clue about.

conan create . dataframe/1.5.0@ -s compiler="Visual Studio" -s compiler.version=15 -s compiler.runtime=MT

...
 cl /c /IC:\Users\uilia\.conan\data\dataframe\1.5.0\_\_\build\7d0ab7bed042914e1f2bacde0cf7e4d3b1a535bf\source_subfolder\include /W3 /WX- /diagnostics:classic /MP12 /O2 /Ob2 /D WIN32 /D _WINDOWS /D NDEBUG /D "CMAKE_INTDIR=\"Release\"" /D _MBCS /Gm- /EHsc /MD /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /std:c++14 /Fo"DataFrame.dir\Release\\" /Fd"DataFrame.dir\Release\DataFrame.pdb" /Gd /TP /errorReport:queue C:\Users\uilia\.conan\data\dataframe\1.5.0\_\_\build\7d0ab7bed042914e1f2bacde0cf7e4d3b1a535bf\source_subfolder\src\Vectors\HeteroVector.cc C:\Users\uilia\.conan\data\dataframe\1.5.0\_\_\build\7d0ab7bed042914e1f2bacde0cf7e4d3b1a535bf\source_subfolder\src\Vectors\HeteroView.cc C:\Users\uilia\.conan\data\dataframe\1.5.0\_\_\build\7d0ab7bed042914e1f2bacde0cf7e4d3b1a535bf\source_subfolder\src\Vectors\HeteroPtrView.cc C:\Users\uilia\.conan\data\dataframe\1.5.0\_\_\build\7d0ab7bed042914e1f2bacde0cf7e4d3b1a535bf\source_subfolder\src\Utils\ThreadGranularity.cc C:\Users\uilia\.conan\data\dataframe\1.5.0\_\_\build\7d0ab7bed042914e1f2bacde0cf7e4d3b1a535bf\source_subfolder\src\Utils\DateTime.cc C:\Users\uilia\.conan\data\dataframe\1.5.0\_\_\build\7d0ab7bed042914e1f2bacde0cf7e4d3b1a535bf\source_subfolder\src\MMap\MMapBase.cc C:\Users\uilia\.conan\data\dataframe\1.5.0\_\_\build\7d0ab7bed042914e1f2bacde0cf7e4d3b1a535bf\source_subfolder\src\MMap\MMapFile.cc C:\Users\uilia\.conan\data\dataframe\1.5.0\_\_\build\7d0ab7bed042914e1f2bacde0cf7e4d3b1a535bf\source_subfolder\src\MMap\MMapSharedMem.cc

@conan-center-bot
Copy link
Collaborator

Some configurations of 'dataframe/1.5.0' failed in build 14 (9fb52c9b8630d5390f6223ec8634d264e313ecfb):

@yssource
Copy link
Contributor Author

I think the commit d060e05 has resolved the dllexport problem.
And, I will re-create the package when its next release comes out.

@yssource
Copy link
Contributor Author

yssource commented Feb 7, 2020

Close. Open a new PR v1.7.0

@yssource yssource closed this Feb 7, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants