Science Score: 36.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
✓Committers with academic emails
4 of 428 committers (0.9%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (15.8%) to scientific vocabulary
Keywords
Keywords from Contributors
Repository
Conan - The open-source C and C++ package manager
Basic Info
- Host: GitHub
- Owner: conan-io
- License: mit
- Language: Python
- Default Branch: develop2
- Homepage: https://conan.io
- Size: 31.4 MB
Statistics
- Stars: 8,929
- Watchers: 131
- Forks: 1,057
- Open Issues: 856
- Releases: 308
Topics
Metadata Files
README.md
Conan
Decentralized, open-source (MIT), C/C++ package manager.
- Homepage: https://conan.io/
- Github: https://github.com/conan-io/conan
- Docs: https://docs.conan.io
- Slack: https://cpplang.slack.com (#conan channel. Please, click here to get an invitation)
- Twitter: https://twitter.com/conan_io
- Blog: https://blog.conan.io
- Security reports: https://jfrog.com/trust/report-vulnerability
Conan is a package manager for C and C++ developers:
- It is fully decentralized. Users can host their packages on their servers, privately. Integrates with Artifactory and Bintray.
- Portable. Works across all platforms, including Linux, OSX, Windows (with native and first-class support, WSL, MinGW), Solaris, FreeBSD, embedded and cross-compiling, docker, WSL
- Manage binaries. It can create, upload and download binaries for any configuration and platform, even cross-compiling, saving lots of time in development and continuous integration. The binary compatibility can be configured and customized. Manage all your artifacts in the same way on all platforms.
- Integrates with any build system, including any proprietary and custom one. Provides tested support for major build systems (CMake, MSBuild, Makefiles, Meson, etc).
- Extensible: Its Python-based recipes, together with extension points allow for great power and flexibility.
- Large and active community, especially in GitHub (https://github.com/conan-io/conan) and Slack (https://cppalliance.org/slack/ #conan channel). This community also creates and maintains packages in ConanCenter and Bincrafters repositories in Bintray.
- Stable. Used in production by many companies, since 1.0 there is a commitment not to break package recipes and documented behavior.
This is the developer/maintainer documentation. For user documentation, go to https://docs.conan.io
Setup
You can run Conan from source in Windows, MacOS, and Linux:
Install pip following pip docs.
Clone Conan repository:
bash
$ git clone https://github.com/conan-io/conan.git conan-io
Note: repository directory name matters, some directories are known to be problematic to run tests (e.g.
conan).conan-iodirectory name was tested and guaranteed to be working.
- Install in editable mode
bash
$ cd conan-io && sudo pip install -e .
If you are in Windows, using sudo is not required. Some Linux distros won't allow you to put Python packages in editable mode in the root Python installation, and creating a virtual environment venv first, is mandatory.
- You are ready, try to run Conan:
```bash $ conan --help
Consumer commands install Installs the requirements specified in a recipe (conanfile.py or conanfile.txt). ...
Conan commands. Type "conan <command> -h" for help
```
Contributing to the project
Feedback and contribution are always welcome in this project. Please read our contributing guide. Also, if you plan to contribute, please add some testing for your changes. You can read the Conan tests guidelines section for some advice on how to write tests for Conan.
Running the tests
Install Python requirements
bash
$ python -m pip install -r conans/requirements.txt
$ python -m pip install -r conans/requirements_server.txt
$ python -m pip install -r conans/requirements_dev.txt
If you are not on Windows and you are not using a Python virtual environment, you will need to run these
commands using sudo.
Before you can run the tests, you need to set a few environment variables first.
bash
$ export PYTHONPATH=$PYTHONPATH:$(pwd)
On Windows it would be (while being in the Conan root directory):
bash
$ set PYTHONPATH=.
Conan test suite defines and configures some required tools (CMake, Ninja, etc) in the
conftest.py and allows to define a custom conftest_user.py.
Some specific versions, like cmake>=3.15 are necessary.
You can run the tests like this:
bash
$ python -m pytest .
A few minutes later it should print OK:
```bash
............................................................................................
Ran 146 tests in 50.993s
OK ```
To run specific tests, you can specify the test name too, something like:
bash
$ python -m pytest test/functional/command/export_test.py::TestRevisionModeSCM::test_revision_mode_scm -s
The -s argument can be useful to see some output that otherwise is captured by pytest.
Also, you can run tests against an instance of Artifactory. Those tests should add the attribute
artifactory_ready.
bash
$ python -m pytest . -m artifactory_ready
Some environment variables have to be defined to run them. For example, for an Artifactory instance that is running on the localhost with default user and password configured, the variables could take the values:
bash
$ export CONAN_TEST_WITH_ARTIFACTORY=1
$ export ARTIFACTORY_DEFAULT_URL=http://localhost:8081/artifactory
$ export ARTIFACTORY_DEFAULT_USER=admin
$ export ARTIFACTORY_DEFAULT_PASSWORD=password
ARTIFACTORY_DEFAULT_URL is the base URL for the Artifactory repo, not one for a specific
repository. Running the tests with a real Artifactory instance will create repos on the fly so please
use a separate server for testing purposes.
License
Owner
- Name: Conan.io
- Login: conan-io
- Kind: organization
- Email: info@conan.io
- Website: https://conan.io
- Twitter: conan_io
- Repositories: 31
- Profile: https://github.com/conan-io
Conan C and C++ Package and Dependency Manager
Committers
Last synced: 9 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| James | j****s@c****o | 3,082 |
| Luis Martinez de Bartolome Izquierdo | l****e@g****m | 1,092 |
| Carlos Zoido | m****a@g****m | 687 |
| Javier G. Sogo | j****o@g****m | 437 |
| Daniel | d****e@g****m | 316 |
| Rubén Rincón Blanco | r****b@j****m | 308 |
| Francisco Ramírez | f****8@g****m | 249 |
| SSE4 | t****e@g****m | 175 |
| Uilian Ries | u****s@g****m | 159 |
| Luis Caro Campos | 3****7 | 55 |
| César García Tapia | c****a@g****m | 36 |
| Ernesto de Gracia Herranz | e****h@j****m | 34 |
| Juan Sanchez | j****s@j****m | 32 |
| PerseoGI | p****8@g****m | 31 |
| David Sanchez | d****f@j****m | 30 |
| Alexandr Timofeev | m****m@o****m | 17 |
| Pedro Vicente | p****r@g****m | 17 |
| Andrew J Ford | a****d@l****m | 17 |
| Tomislav Ivek | t****k | 16 |
| ericLemanissier | e****r | 16 |
| climblinne | c****e | 14 |
| SpaceIm | 3****m | 13 |
| Ivan Komissarov | A****H@g****m | 12 |
| Jerry | j****e@g****m | 11 |
| Chris Mc | c****m@j****m | 11 |
| Psy-Kai | p****3@g****m | 10 |
| Tobias Hieta | t****s@h****e | 10 |
| Luis Menina | l****e@f****r | 8 |
| Timothé | n****v@g****m | 8 |
| Jintao Yin | n****y@g****m | 8 |
| and 398 more... | ||
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 4,555
- Total pull requests: 2,255
- Average time to close issues: over 1 year
- Average time to close pull requests: 25 days
- Total issue authors: 1,785
- Total pull request authors: 183
- Average comments per issue: 4.23
- Average comments per pull request: 1.02
- Merged pull requests: 1,621
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 1,213
- Pull requests: 1,037
- Average time to close issues: 10 days
- Average time to close pull requests: 6 days
- Issue authors: 598
- Pull request authors: 63
- Average comments per issue: 2.84
- Average comments per pull request: 0.58
- Merged pull requests: 718
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- memsharded (86)
- db4 (47)
- Todiq (44)
- rconde01 (44)
- SpaceIm (43)
- maitrey (40)
- harsszegi (40)
- DoDoENT (39)
- jcar87 (37)
- fschoenm (36)
- Adnn (36)
- uilianries (35)
- Nekto89 (33)
- PauloCarvalhoRJ (29)
- klausholstjacobsen (27)
Pull Request Authors
- memsharded (928)
- AbrilRBS (231)
- RubenRBS (172)
- franramirez688 (143)
- czoido (118)
- perseoGI (84)
- ErniGH (71)
- uilianries (43)
- juansblanco (27)
- ABBAPOH (22)
- jcar87 (19)
- danimtb (17)
- davidsanfal (14)
- valgur (13)
- SpaceIm (11)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 4
-
Total downloads:
- pypi 1,981,660 last-month
- Total docker downloads: 2,298,753
-
Total dependent packages: 35
(may contain duplicates) -
Total dependent repositories: 332
(may contain duplicates) - Total versions: 525
- Total maintainers: 4
pypi.org: conan
Conan C/C++ package manager
- Homepage: https://conan.io
- Documentation: https://docs.conan.io
- License: MIT
-
Latest release: 2.20.1
published 6 months ago
Rankings
pypi.org: sense2
Sense2 C/C++ package manager
- Homepage: https://conan.io
- Documentation: https://docs.conan.io
- License: MIT
-
Latest release: 1.52.2
published over 3 years ago
Rankings
Maintainers (1)
conda-forge.org: conan
- Homepage: https://conan.io
- License: MIT
-
Latest release: 1.54.0
published over 3 years ago
Rankings
pypi.org: conan-zbuild
Conan C/C++ package manager
- Homepage: https://conan.io
- Documentation: https://docs.conan.io
- License: MIT
-
Latest release: 1.66.3
published 7 months ago
Rankings
Dependencies
- Jinja2 >=2.9,<3.0.0
- Jinja2 >=3.0,<4.0.0
- MarkupSafe <=2.0.1
- PyYAML >=3.11,<=6.0
- colorama >=0.3.3,<0.5.0
- configparser >=3.5
- distro >=1.0.2,<=1.7.0
- fasteners >=0.14.1
- node-semver ==0.6.1
- patch-ng >=1.17.4,<1.18
- pygments >=2.0,<3.0
- python-dateutil >=2.7.0,<3
- requests >=2.25,<3.0.0
- six >=1.10.0,<=1.16.0
- tqdm >=4.28.1,<5
- urllib3 >=1.26.6,<1.27
- WebTest >=2.0.18,<2.1.0 development
- bottle * development
- mock >=1.3.0,<1.4.0 development
- parameterized >=0.6.3 development
- pytest >=4.6.11 development
- pytest >=6.1.1,<7.0.0 development
- pytest-xdist * development
- PyJWT >=2.4.0,<3.0.0
- bottle >=0.12.8,<0.13
- pluginbase >=0.5