conan-center-index
CppCoreGuidelines
Our great sponsors
conan-center-index | CppCoreGuidelines | |
---|---|---|
40 | 306 | |
876 | 41,290 | |
1.6% | 0.8% | |
10.0 | 7.6 | |
6 days ago | 18 days ago | |
Python | Python | |
MIT License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
conan-center-index
-
Looking for projects to contribute to
https://github.com/conan-io/conan-center-index there's 200+ PR that need reviewing :) we add community reviewers fairly often
-
Conan package manager completely broken after 2.0 release
As for ffmpeg it was last updated 10 days ago https://github.com/conan-io/conan-center-index/commits/master/recipes/ffmpeg/all :)
Indeed others in your situation have chosen to remain a bit longer on Conan 1.x - rest assured, every single pull request in Conan Center still requires full compatibility with Conan 1.x. u/miss_minutes, I'm surprised to hear that downgrading to the latest stable 1.x version has caused issues for you. I'd be very interested in learning about this so that we can help, please feel free to open an issue in GitHub with more details at https://github.com/conan-io/conan-center-index/issues/new/choose, and tag me @jcar87, and we'll gladly look into this.
-
PcapPlusPlus in Conan 2.0
https://github.com/conan-io/conan-center-index if you want to contribute migration of that recipes that would be amazing
This is a more complicated recipe https://github.com/conan-io/conan-center-index/blob/master/recipes/pcapplusplus/all/conanfile.py
-
Compiling CrowCPP on Windows and about to kms
It's available in Conan too https://github.com/conan-io/conan-center-index/tree/master/recipes/crowcpp-crow though it's not well maintained so no promises if it's working
-
Conan 2.0, the new version of the open-source C and C++ package manager
This post on github contains a list of packages supported by conan 2.0, its also kept up to date https://github.com/conan-io/conan-center-index/discussions/16196
-
C++ Is Incredible
2) Go to https://conan.io/center/ and search for nlohmann, click the first hit.
-
What would you change about C++? How would you improve it, and what do you hate about it?
I hope CMake and conan continue to be adopted by more CPP developers. But the future will tell.
-
Is there a timeline for when Boost 1.81 will be added to Conan Center or vpkg's repository?
https://github.com/conan-io/conan-center-index/pull/14888 seems to be mostly green, still computing some configurations, reviews might be a bit slower these holidays days, but I guess it will be there next week.
CppCoreGuidelines
- Learn Modern C++
-
Modern C++ Programming Course
You need to talk to Bjarne and Herb...
"C++ Core Guidelines" - https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines
- CLion Nova Explodes onto the C and C++ Development Scene
-
Toward a TypeScript for C++"
In addition to the other comments -
TypeScript deliberately takes a "good enough" approach to improving JavaScript, instead of designing an ideal but incompatible approach. For example, its handling of [function parameter bivariance](https://www.typescriptlang.org/docs/handbook/type-compatibil...) is unsound but works much better with the existing JavaScript ecosystem. By contrast, a more academic functional programming language would guarantee a sound type system but would be a huge shift from JavaScript.
By analogy, Herb Sutter is arguing that something like the [C++ Core Guidelines](https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines), with tooling help in this new Cpp2 syntax, can bring real improvements to safety. Something like Rust's borrow checker would bring much stricter guarantees, backed by academic research and careful design, but would be incompatible and a huge adjustment.
-
C++ is everywhere, but noone really talks about it. What are people's thoughts?
Another phenomenal resource is the ISO C++ core guidelines which is essentially a giant list of best practices of newer c++ features. These guidelines were a collaborative effort started by Bjarne Stroustrup who know a bit about c++. There is an entire section about resource management if you're interested in learning more about the newer facilities c++ offers in that regard to avoid the footguns, but there is a ton of other great information in there as well.
Take a look at Effective Modern c++ by Scott Meyers and the ISO c++ core guidelines. These resources are great for learning how to write better, more modern C++. I don't think it would be hard to grasp if you're already familiar with the language, just make sure to actually write some code which makes use of this stuff, otherwise it's easy to forget.
-
What are some C++ specific antipatterns that might be missed by C#/Java devs?
Look to the C++ Core Guidelines. It's not perfect, it has some flaws, including some sabotaging advice apparently adopted for political reasons. But at least it has some C++ authorities (Bjarne and Herb) as authors.
-
How to improve the code quality
Also, tried to follow https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines as much as I could.
-
Rust fact vs. fiction: 5 Insights from Google's Rust journey in 2022
C++: Not memory safe and tons of ceremonial to avoid UB and have actually well defined objects, semantically: for example, rule of five. Needs to follow a huge number of "core guidelines", https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines, many of the most important are not automatically enforceable by tools. No enum types, invisible codepaths everywhere due to exceptions. Stupid textual-inclusion compilation model meaning that you need to manually track which headers should actually be included in a file (in particular, when reviewing changes to that file that may or may not render some header inclusions useless). Namespace system where the namespace is not inferred from the file/package, but explicitly declared in the file, meaning that name collisions are possible (and result in an ill formed program, no diagnostic required. Once had to debug a colleague's ODR violation that made even valgrind segfault... very fun afternoon) and should be watched for in review. No unsafe and anything could be UB, so have to be paranoid about everything that is being done.
What are some alternatives?
Vcpkg - C++ Library Manager for Windows, Linux, and MacOS
Crafting Interpreters - Repository for the book "Crafting Interpreters"
libpq - build2 package for PostgreSQL C client library
github-cheat-sheet - A list of cool features of Git and GitHub.
VulkanExamples - Examples and demos for the Vulkan C++ API
LearnOpenGL - Code repository of all OpenGL chapters from the book and its accompanying website https://learnopengl.com
cmake-init-vcpkg-example - cmake-init generated executable project with vcpkg integration
git-internals-pdf - PDF on Git Internals
Power-Fx - Power Fx low-code programming language
clojure-style-guide - A community coding style guide for the Clojure programming language
too-many-lists - Learn Rust by writing Entirely Too Many linked lists
range-v3 - Range library for C++14/17/20, basis for C++20's std::ranges