Skip to content

Add Essentials to seealso training sections #4164

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

Open
wants to merge 4 commits into
base: release/2.18
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions knowledge.rst
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,5 @@ Knowledge
knowledge/guidelines
knowledge/faq
knowledge/videos
knowledge/academy

10 changes: 10 additions & 0 deletions knowledge/academy.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
.. _academy:

Conan 2 Essentials Training
===========================

The Conan 2 Essentials training is available for free at the JFrog Academy.
Copy link
Member

Choose a reason for hiding this comment

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

I would appreciate a bit more of detail, like for example that it is a hands-on training, with real exercises to learn by doing

It is a self-paced video course that covers the most important concepts of Conan 2,
and serves as a good introduction to the Conan package manager.

Register `here <https://academy.jfrog.com/conan-2-essentials?utm_source=Conan+Docs>`__ to freely access the course.
1 change: 1 addition & 0 deletions security/audit.rst
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ vulnerability scanning. See the :ref:`Adding private providers

.. seealso::

- `JFrog Academy Conan 2 Essentials: Scanning C++ packages for Vulnerabilities using Conan Audit <https://academy.jfrog.com/conan-2-essentials/2164300?utm_source=Conan+Docs>`__
- For detailed reference documentation on all ``conan audit`` subcommands and their
options, consult the :ref:`conan audit command reference
<reference_commands_audit>`.
Expand Down
6 changes: 6 additions & 0 deletions tutorial.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,12 @@ The purpose of this section is to guide you through the most important Conan fea
practical examples. From using libraries already packaged by Conan, to how to package your
libraries and store them on a remote server alongside all the precompiled binaries.

.. note::

The Conan 2 Essentials training course is available for free at the JFrog Academy,
which covers the same topics as this documentation but in a more interactive way.
You can access it `here <https://academy.jfrog.com/conan-2-essentials?utm_source=Conan+Docs>`__.

.. toctree::
:maxdepth: 2

Expand Down
6 changes: 6 additions & 0 deletions tutorial/conan_repositories.rst
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,12 @@ central repository.
Finally, we will explain the `local_recipes_index`, a special type of remote that allows
the use of a source folder with recipes as a Conan remote repository.

.. note::

The Conan 2 Essentials training course is available for free at the JFrog Academy,
which covers the same topics as this documentation but in a more interactive way.
You can access it `here <https://academy.jfrog.com/conan-2-essentials?utm_source=Conan+Docs>`__.

.. toctree::
:maxdepth: 1
:caption: Table of contents
Expand Down
4 changes: 4 additions & 0 deletions tutorial/conan_repositories/setting_up_conan_remotes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -37,3 +37,7 @@ There are several options to set up a Conan repository:

setting_up_conan_remotes/artifactory/artifactory_ce_cpp.rst
setting_up_conan_remotes/conan_server.rst

.. seealso::

- `JFrog Academy Conan 2 Essentials: Working with Conan Repositories <https://academy.jfrog.com/conan-2-essentials/2131740?utm_source=Conan+Docs>`__
1 change: 1 addition & 0 deletions tutorial/conan_repositories/uploading_packages.rst
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ You can check whether the package exists on your local computer again with:

.. seealso::

- `JFrog Academy Conan 2 Essentials: Working with Conan Repositories <https://academy.jfrog.com/conan-2-essentials/2131740?utm_source=Conan+Docs>`__
- :ref:`conan upload command reference <reference_commands_upload>`
- :ref:`conan remote command reference <reference_commands_remote>`
- :ref:`conan search command reference <reference_commands_search>`
5 changes: 5 additions & 0 deletions tutorial/consuming_packages.rst
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,11 @@ Then, in the "Introduction to versioning" we will learn about using different ve
defining requirements with version ranges, the concept of revisions and a brief introduction
to lockfiles to achieve reproducibility of the dependency graph.

.. note::

The Conan 2 Essentials training course is available for free at the JFrog Academy,
which covers the same topics as this documentation but in a more interactive way.
You can access it `here <https://academy.jfrog.com/conan-2-essentials?utm_source=Conan+Docs>`__.

.. toctree::
:maxdepth: 2
Expand Down
1 change: 1 addition & 0 deletions tutorial/consuming_packages/build_simple_cmake_project.rst
Original file line number Diff line number Diff line change
Expand Up @@ -273,6 +273,7 @@ See :ref:`Building with CMake presets<examples-tools-cmake-toolchain-build-proje

.. seealso::

- `JFrog Academy Conan 2 Essentials: Building A Simple CMake Project From Conan <https://academy.jfrog.com/conan-2-essentials/2131739?utm_source=Conan+Docs>`__
- :ref:`Building with CMake presets<examples-tools-cmake-toolchain-build-project-presets>`
- :ref:`Getting started with Autotools<examples_tools_autotools_autotools_toolchain_build_project_autotools_toolchain>`
- :ref:`Getting started with Meson<examples_tools_meson_toolchain_build_simple_meson_project>`
Expand Down
1 change: 1 addition & 0 deletions tutorial/consuming_packages/cross_building_with_conan.rst
Original file line number Diff line number Diff line change
Expand Up @@ -219,6 +219,7 @@ You could check that we built the application for the correct architecture by ru

.. seealso::

- `JFrog Academy Conan 2 Essentials: Cross-Compiling Your Applications With Conan <https://academy.jfrog.com/conan-2-essentials/2182684?utm_source=Conan+Docs>`__
- :ref:`Creating a Conan package for a toolchain<example_cross_build_toolchain_package>`
- :ref:`Cross building to Android with the NDK<examples_cross_build_android_ndk>`
- :ref:`VirtualBuildEnv reference <conan_tools_env_virtualbuildenv>`
Expand Down
1 change: 1 addition & 0 deletions tutorial/consuming_packages/different_configurations.rst
Original file line number Diff line number Diff line change
Expand Up @@ -333,6 +333,7 @@ matched our specified configuration.

.. seealso::

- `JFrog Academy Conan 2 Essentials: Building For Multiple Configurations With Conan And CMake Presets <https://academy.jfrog.com/conan-2-essentials/2131740?utm_source=Conan+Docs>`__
- :ref:`VirtualRunEnv reference <conan_tools_env_virtualrunenv>`
- :ref:`Cross-compiling using --profile:build and --profile:host <consuming_packages_cross_building_with_conan>`
- :ref:`creating_packages_configure_options_settings`
Expand Down
2 changes: 1 addition & 1 deletion tutorial/consuming_packages/intro_to_versioning.rst
Original file line number Diff line number Diff line change
Expand Up @@ -218,5 +218,5 @@ allowed range ``zlib/[~1.2]``, because the ``conan.lock`` lockfile is forcing it

.. seealso::

- `JFrog Academy Conan 2 Essentials: Intro To Versioning <https://academy.jfrog.com/conan-2-essentials/2182693?utm_source=Conan+Docs>`__
- :ref:`Introduction to Versioning<tutorial_versioning>`

Original file line number Diff line number Diff line change
Expand Up @@ -396,7 +396,7 @@ demonstrates how to import bindings for the library depending on the graphics AP

.. seealso::

- `JFrog Academy Conan 2 Essentials: The Flexibility Of Using A conanfile.py <https://academy.jfrog.com/conan-2-essentials/2164299?utm_source=Conan+Docs>`__
- :ref:`Using "cmake_layout" + "CMakeToolchain" + "CMakePresets feature" to build your project<examples-tools-cmake-toolchain-build-project-presets>`.
- :ref:`Understanding the Conan Package layout<tutorial_package_layout>`.
- :ref:`Documentation for all conanfile.py available methods<reference_conanfile_methods>`.
- Conditional generators in configure()
Original file line number Diff line number Diff line change
Expand Up @@ -241,6 +241,7 @@ the environment activation:

.. seealso::

- `JFrog Academy Conan 2 Essentials: Using Build Tools As Conan Packages <https://academy.jfrog.com/conan-2-essentials/2164300?utm_source=Conan+Docs>`__
- :ref:`Using [system_tools] in your profiles <reference_config_files_profiles_system_tools>`.
- :ref:`Creating recipes for tool_requires: packaging build tools <tutorial_other_tool_requires_packages>`.
- :ref:`examples_graph_tool_requires_protobuf`
Expand Down
6 changes: 6 additions & 0 deletions tutorial/creating_packages.rst
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,12 @@ peculiarities of different types of Conan packages like, for example, header-onl
libraries, packages for pre-built binaries, packaging tools for building other packages or
packaging your own applications.

.. note::
Copy link
Member

Choose a reason for hiding this comment

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

If we don't want to deviate too much the attention to the user actually reading the written tutorial, maybe put sometimes this note below the TOC?


The Conan 2 Essentials training course is available for free at the JFrog Academy,
which covers the same topics as this documentation but in a more interactive way.
You can access it `here <https://academy.jfrog.com/conan-2-essentials?utm_source=Conan+Docs>`__.

.. toctree::
:maxdepth: 2
:caption: Table of contents
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -156,5 +156,6 @@ That will propagate the necessary compilation flags and headers ``includedirs``

.. seealso::

- `JFrog Academy Conan 2 Essentials: Dependencies, Generators And Building <https://academy.jfrog.com/conan-2-essentials/2218962?utm_source=Conan+Docs>`__
- :ref:`Reference for requirements() method <reference_conanfile_methods_requirements>`.
- :ref:`Introduction to versioning <consuming_packages_intro_versioning>`.
1 change: 1 addition & 0 deletions tutorial/creating_packages/build_packages.rst
Original file line number Diff line number Diff line change
Expand Up @@ -300,4 +300,5 @@ CMake and on Linux and macOS using Autotools. This can be easily handled in the

.. seealso::

- `JFrog Academy Conan 2 Essentials: Dependencies, Generators And Building <https://academy.jfrog.com/conan-2-essentials/2218962?utm_source=Conan+Docs>`__
- :ref:`Patching sources <examples_tools_files_patches>`
1 change: 1 addition & 0 deletions tutorial/creating_packages/configure_options_settings.rst
Original file line number Diff line number Diff line change
Expand Up @@ -288,6 +288,7 @@ more detail.

.. seealso::

- `JFrog Academy Conan 2 Essentials: Configuring Settings And Options <https://academy.jfrog.com/conan-2-essentials/2218964?utm_source=Conan+Docs>`__
- :ref:`Header-only packages<creating_packages_other_header_only>`.
- Check the binary compatibility :ref:`compatibility.py extension <reference_extensions_binary_compatibility>`.
- Conan :ref:`package types<reference_conanfile_attributes_package_type>`.
Expand Down
1 change: 1 addition & 0 deletions tutorial/creating_packages/create_your_first_package.rst
Original file line number Diff line number Diff line change
Expand Up @@ -336,6 +336,7 @@ An **important** note: the Conan cache is private to the Conan client - modifyin

.. seealso::

- `JFrog Academy Conan 2 Essentials: Creating Your First Conan Package <https://academy.jfrog.com/conan-2-essentials/2218950?utm_source=Conan+Docs>`__
- :ref:`Create your first Conan package with Visual Studio/MSBuild<examples_tools_microsoft_create_first_package>`.
- :ref:`Create your first Conan package with Meson<examples_tools_meson_create_first_package>`.
- :ref:`Create your first Conan package with Autotools (only Linux)<examples_tools_autotools_create_first_package>`.
Expand Down
1 change: 1 addition & 0 deletions tutorial/creating_packages/define_package_information.rst
Original file line number Diff line number Diff line change
Expand Up @@ -345,6 +345,7 @@ example<examples_conanfile_package_info_components>` in the examples section.

.. seealso::

- `JFrog Academy Conan 2 Essentials: The package() And package_info() Methods <https://academy.jfrog.com/conan-2-essentials/2218963?utm_source=Conan+Docs>`__
- :ref:`Propagating environment and configuration information to consumers example<examples_conanfile_package_info_conf_and_env>`
- :ref:`Define components for Conan packages that provide multiple libraries example<examples_conanfile_package_info_components>`
- :ref:`package_info() reference<reference_conanfile_methods_package_info>`
1 change: 1 addition & 0 deletions tutorial/creating_packages/handle_sources_in_packages.rst
Original file line number Diff line number Diff line change
Expand Up @@ -251,6 +251,7 @@ zip file has the correct ``sha256``. So we could modify the source method to thi

.. seealso::

- `JFrog Academy Conan 2 Essentials: <https://academy.jfrog.com/conan-2-essentials/?utm_source=Conan+Docs>`__
- :ref:`Patching sources<examples_tools_files_patches>`
- :ref:`Capturing Git SCM source information<examples_tools_scm_git_capture>` instead of copying sources with ``exports_sources``.
- :ref:`source() method reference<reference_conanfile_methods_source>`
Original file line number Diff line number Diff line change
Expand Up @@ -260,3 +260,7 @@ We can run ``conan create`` again specifying a different ``compiler.cppstd`` and
We could call ``conan install --require sum/0.1`` with an empty profile and would get the binary package from the
server. But if we miss the binary and we need to build the package again, it will fail because of the lack of
settings.

.. seealso::

- `JFrog Academy Conan 2 Essentials: Creating A Recipe For Header-Only Libraries <https://academy.jfrog.com/conan-2-essentials/2269961?utm_source=Conan+Docs>`__
Original file line number Diff line number Diff line change
Expand Up @@ -403,3 +403,7 @@ package could be to define a :command:`build_policy="missing"`, especially if th
under the team's control. If they are external (on the internet), it could be better to create the
packages and store them on your own Conan repository, so that the builds do not rely on third-party URLs
being available.

.. seealso::

- `JFrog Academy Conan 2 Essentials: Creating a Recipe For Prebuilt Binaries <https://academy.jfrog.com/conan-2-essentials/2269962?utm_source=Conan+Docs>`__
Original file line number Diff line number Diff line change
Expand Up @@ -236,6 +236,7 @@ then the approach would be not removing the ``del self.info.settings.build_type`

.. seealso::

- `JFrog Academy Conan 2 Essentials: Creating Tool Require Packages <https://academy.jfrog.com/conan-2-essentials/2269963?utm_source=Conan+Docs>`__
- :ref:`examples_graph_tool_requires_protobuf`
- Toolchains (compilers)
- :ref:`Usage of runenv_info<reference_conanfile_methods_package_info_runenv_info>`
Expand Down
1 change: 1 addition & 0 deletions tutorial/creating_packages/package_method.rst
Original file line number Diff line number Diff line change
Expand Up @@ -170,4 +170,5 @@ absolute links into relative paths and make the package relocatable.

.. seealso::

- `JFrog Academy Conan 2 Essentials: The package() And package_info() Methods <https://academy.jfrog.com/conan-2-essentials/2218963?utm_source=Conan+Docs>`__
- :ref:`package() method reference<reference_conanfile_methods_package>`
1 change: 1 addition & 0 deletions tutorial/creating_packages/preparing_the_build.rst
Original file line number Diff line number Diff line change
Expand Up @@ -194,5 +194,6 @@ could do in the ``generate()`` method like:

.. seealso::

- `JFrog Academy Conan 2 Essentials: Dependencies, Generators And Building <https://academy.jfrog.com/conan-2-essentials/2218962?utm_source=Conan+Docs>`__
- Use the ``generate()`` method to :ref:`import files from dependencies<copy_resources_on_generate>`.
- :ref:`generate() method reference<reference_conanfile_methods_generate>`
4 changes: 4 additions & 0 deletions tutorial/creating_packages/test_conan_packages.rst
Original file line number Diff line number Diff line change
Expand Up @@ -159,3 +159,7 @@ test<reference_commands>` command:

As you can see in the output, our *test_package* builds successfully testing that the
*hello/1.0* Conan package can be consumed with no problem.

.. seealso::

- `JFrog Academy Conan 2 Essentials: Testing Conan Packages <https://academy.jfrog.com/conan-2-essentials/2269958?utm_source=Conan+Docs>`__
5 changes: 5 additions & 0 deletions tutorial/versioning.rst
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,11 @@ Finally, when different branches of a dependency graph ``requires`` different ve
same package, that is called a "version conflict". The tutorial will also introduce these
errors and how to address them.

.. note::

The Conan 2 Essentials training course is available for free at the JFrog Academy,
which covers the same topics as this documentation but in a more interactive way.
You can access it `here <https://academy.jfrog.com/conan-2-essentials?utm_source=Conan+Docs>`__.

.. toctree::
:maxdepth: 2
Expand Down