Code Monkey home page Code Monkey logo

robotpy-meta's Introduction

RobotPy meta package

Easy to remember desktop installation for RobotPy! For more information about RobotPy, see the documentation.

The instructions below work on a normal computer. For RoboRIO instructions, see the documentatation.

Install core RobotPy components

On Windows:

py -3 -m pip install -U robotpy

On Linux/OSX:

pip3 install -U robotpy

Install optional RobotPy components

Note

At the beginning of build season not all components are available because vendors haven't made releases set. If you install one of those components, it will try to install version 0.0.0

There are several categories of optional components that you can install. This uses the standard pip 'extras' installation functionality. The available categories are:

  • apriltag
  • commands2
  • cscore
  • navx
  • pathplannerlib
  • phoenix5
  • phoenix6
  • playingwithfusion
  • rev
  • romi
  • sim
  • xrp

Let's say that you wanted to install the latest version of the NavX software along with command based programming. You would do this:

On Windows:

py -3 -m pip install -U robotpy[navx,commands2]

On Linux/OSX:

pip3 install -U robotpy[navx,commands2]

Install all optional components

There is a special 'all' category which will install the core components and all of the optional categories.

On Windows:

py -3 -m pip install -U robotpy[all]

On Linux/OSX:

pip3 install -U robotpy[all]

robotpy-meta's People

Contributors

actions-user avatar auscompgeek avatar thetriplev avatar virtuald avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

robotpy-meta's Issues

Issues Installing Robotpy on Ubuntu

Problem description

I can't seem to be able to install robotpy or any other similar package on an Ubuntu co-processor I am experimenting with. During the install process, it seems to try to build the wheel manually, but fails to do so. I haven't looked into it much yet and will probably do so later today, but wanted to ask this in case I missed something obvious.

OS: Ubuntu 20.04.1 LTS (GNU/Linux 5.10.110 aarch64)

Sample Install Log:

python3 -m pip install robotpy-cscore
Defaulting to user installation because normal site-packages is not writeable
Collecting robotpy-cscore
  Downloading robotpy-cscore-2023.2.1.0.tar.gz (25 kB)
  Installing build dependencies ... error
  error: subprocess-exited-with-error

  × pip subprocess to install build dependencies did not run successfully.
  │ exit code: 1
  ╰─> [1049 lines of output]
      Collecting robotpy-build<2024.0.0,>=2023.0.0
        Using cached robotpy_build-2023.0.1-py3-none-any.whl (283 kB)
      Collecting robotpy-wpiutil~=2023.2.1
        Using cached robotpy-wpiutil-2023.2.1.0.tar.gz (23 kB)
        Installing build dependencies: started
        Installing build dependencies: finished with status 'done'
        WARNING: Missing build requirements in pyproject.toml for robotpy-wpiutil~=2023.2.1 from https://files.pythonhosted.org/packages/f1/41/572a4c35eac54269e450001ed81e6be8bc14ac0a98d09f5d29d9e2dd723f/robotpy-wpiutil-2023.2.1.0.tar.gz.
        WARNING: The project does not specify a build backend, and pip cannot fall back to setuptools without 'wheel'.
        Getting requirements to build wheel: started
        Getting requirements to build wheel: finished with status 'done'
        Installing backend dependencies: started
        Installing backend dependencies: finished with status 'done'
        Preparing metadata (pyproject.toml): started
        Preparing metadata (pyproject.toml): finished with status 'done'
      Collecting robotpy-wpinet~=2023.2.1
        Using cached robotpy-wpinet-2023.2.1.0.tar.gz (6.7 kB)
        Installing build dependencies: started
        Installing build dependencies: finished with status 'error'
        error: subprocess-exited-with-error

        × pip subprocess to install build dependencies did not run successfully.
        │ exit code: 1
        ╰─> [1016 lines of output]
            Collecting robotpy-build<2024.0.0,>=2023.0.0
              Using cached robotpy_build-2023.0.1-py3-none-any.whl (283 kB)
            Collecting robotpy-wpiutil~=2023.2.1
              Using cached robotpy-wpiutil-2023.2.1.0.tar.gz (23 kB)
              Installing build dependencies: started
              Installing build dependencies: finished with status 'done'
              WARNING: Missing build requirements in pyproject.toml for robotpy-wpiutil~=2023.2.1 from https://files.pythonhosted.org/packages/f1/41/572a4c35eac54269e450001ed81e6be8bc14ac0a98d09f5d29d9e2dd723f/robotpy-wpiutil-2023.2.1.0.tar.gz.
              WARNING: The project does not specify a build backend, and pip cannot fall back to setuptools without 'wheel'.
              Getting requirements to build wheel: started
              Getting requirements to build wheel: finished with status 'done'
              Installing backend dependencies: started
              Installing backend dependencies: finished with status 'done'
              Preparing metadata (pyproject.toml): started
              Preparing metadata (pyproject.toml): finished with status 'done'
            Collecting tomli
              Using cached tomli-2.0.1-py3-none-any.whl (12 kB)
            Collecting header2whatever>=0.4.8
              Using cached header2whatever-0.4.8-py3-none-any.whl (81 kB)
            Collecting patch==1.*
              Using cached patch-1.16-py3-none-any.whl
            Collecting setuptools-scm>=6.2
              Using cached setuptools_scm-7.1.0-py3-none-any.whl (43 kB)
            Collecting toposort
              Using cached toposort-1.9-py3-none-any.whl (8.4 kB)
            Collecting robotpy-cppheaderparser>=5.1
              Using cached robotpy_cppheaderparser-5.1.0-py3-none-any.whl (36 kB)
            Collecting setuptools<64,>=45
              Using cached setuptools-63.4.3-py3-none-any.whl (1.2 MB)
            Collecting pyyaml>=5.1
              Using cached PyYAML-6.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (721 kB)
            Collecting distro
              Using cached distro-1.8.0-py3-none-any.whl (20 kB)
            Collecting pydantic>=1.7.0
              Using cached pydantic-1.10.4-py3-none-any.whl (155 kB)
            Collecting tomli-w
              Using cached tomli_w-1.0.0-py3-none-any.whl (6.0 kB)
            Collecting sphinxify>=0.7.3
              Using cached sphinxify-0.9-py3-none-any.whl (5.9 kB)
            Collecting pybind11-stubgen>=0.10.5
              Using cached pybind11_stubgen-0.12.0-py3-none-any.whl (13 kB)
            Collecting jinja2
              Using cached Jinja2-3.1.2-py3-none-any.whl (133 kB)
            Collecting schematics>=2.1.1
              Using cached schematics-2.1.1-py2.py3-none-any.whl (63 kB)
            Collecting typing-extensions>=4.2.0
              Using cached typing_extensions-4.4.0-py3-none-any.whl (26 kB)
            Collecting ply
              Using cached ply-3.11-py2.py3-none-any.whl (49 kB)
            Collecting packaging>=20.0
              Using cached packaging-23.0-py3-none-any.whl (42 kB)
            Collecting MarkupSafe>=2.0
              Using cached MarkupSafe-2.1.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (26 kB)
            Building wheels for collected packages: robotpy-wpiutil
              Building wheel for robotpy-wpiutil (pyproject.toml): started
              Building wheel for robotpy-wpiutil (pyproject.toml): finished with status 'error'
              error: subprocess-exited-with-error

              × Building wheel for robotpy-wpiutil (pyproject.toml) did not run successfully.
              │ exit code: 1
              ╰─> [950 lines of output]
                  running bdist_wheel
                  running build
                  running build_py
                  running build_gen
                  running build_dl
                  Downloading https://frcmaven.wpi.edu/artifactory/release/edu/wpi/first/wpiutil/wpiutil-cpp/2023.2.1/wpiutil-cpp-2023.2.1-linuxarm64.zip

                  ...
                  100%
                  Downloading https://frcmaven.wpi.edu/artifactory/release/edu/wpi/first/wpiutil/wpiutil-cpp/2023.2.1/wpiutil-cpp-2023.2.1-headers.zip

                  ...
                  101%
                  WARNING: some items not in generation yaml for SendableBuilder.yml
                  classes:
                    SendableBuilder:
                      methods:
                        AddIntegerProperty:
                        AddFloatProperty:
                        AddIntegerArrayProperty:
                        AddFloatArrayProperty:
                        AddSmallIntegerArrayProperty:
                        AddSmallFloatArrayProperty:

                  running egg_info
                  writing robotpy_wpiutil.egg-info/PKG-INFO
                  writing dependency_links to robotpy_wpiutil.egg-info/dependency_links.txt
                  writing entry points to robotpy_wpiutil.egg-info/entry_points.txt
                  writing top-level names to robotpy_wpiutil.egg-info/top_level.txt
                  listing git files failed - pretending there aren't any
                  reading manifest file 'robotpy_wpiutil.egg-info/SOURCES.txt'
                  writing manifest file 'robotpy_wpiutil.egg-info/SOURCES.txt'
                  creating build/lib.linux-aarch64-cpython-38
                  creating build/lib.linux-aarch64-cpython-38/wpiutil
                  copying wpiutil/_stacktrace.py -> build/lib.linux-aarch64-cpython-38/wpiutil
                  copying wpiutil/version.py -> build/lib.linux-aarch64-cpython-38/wpiutil
                  copying wpiutil/_init_wpiutil.py -> build/lib.linux-aarch64-cpython-38/wpiutil
                  copying wpiutil/__init__.py -> build/lib.linux-aarch64-cpython-38/wpiutil
                  copying wpiutil/pkgcfg.py -> build/lib.linux-aarch64-cpython-38/wpiutil
                  creating build/lib.linux-aarch64-cpython-38/wpiutil/log
                  copying wpiutil/log/__init__.py -> build/lib.linux-aarch64-cpython-38/wpiutil/log
                  creating build/lib.linux-aarch64-cpython-38/wpiutil/sync
                  copying wpiutil/sync/__init__.py -> build/lib.linux-aarch64-cpython-38/wpiutil/sync
                  creating build/lib.linux-aarch64-cpython-38/wpiutil/src
                  copying wpiutil/src/main.cpp -> build/lib.linux-aarch64-cpython-38/wpiutil/src
                  copying wpiutil/src/safethread_gil.cpp -> build/lib.linux-aarch64-cpython-38/wpiutil/src
                  copying wpiutil/src/stacktracehook.cpp -> build/lib.linux-aarch64-cpython-38/wpiutil/src
                  creating build/lib.linux-aarch64-cpython-38/wpiutil/src/type_casters
                  copying wpiutil/src/type_casters/wpi_array_type_caster.h -> build/lib.linux-aarch64-cpython-38/wpiutil/src/type_casters
                  copying wpiutil/src/type_casters/wpi_json_type_caster.h -> build/lib.linux-aarch64-cpython-38/wpiutil/src/type_casters
                  copying wpiutil/src/type_casters/wpi_smallset_type_caster.h -> build/lib.linux-aarch64-cpython-38/wpiutil/src/type_casters
                  copying wpiutil/src/type_casters/wpi_smallvector_type_caster.h -> build/lib.linux-aarch64-cpython-38/wpiutil/src/type_casters
                  copying wpiutil/src/type_casters/wpi_smallvectorimpl_type_caster.h -> build/lib.linux-aarch64-cpython-38/wpiutil/src/type_casters
                  copying wpiutil/src/type_casters/wpi_span_type_caster.h -> build/lib.linux-aarch64-cpython-38/wpiutil/src/type_casters
                  copying wpiutil/src/type_casters/wpi_string_map_caster.h -> build/lib.linux-aarch64-cpython-38/wpiutil/src/type_casters
                  creating build/lib.linux-aarch64-cpython-38/wpiutil/include
                  creating build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/Demangle.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/scope -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/ConvertUTF.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/Compiler.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/SpanExtras.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/Logger.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/MemAlloc.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/VersionTuple.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/MessagePack.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/type_traits.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/ConcurrentQueue.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/FunctionExtras.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  creating build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/sendable
                  copying wpiutil/include/wpi/sendable/SendableHelper.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/sendable
                  copying wpiutil/include/wpi/sendable/Sendable.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/sendable
                  copying wpiutil/include/wpi/sendable/SendableBuilder.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/sendable
                  copying wpiutil/include/wpi/sendable/SendableRegistry.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/sendable
                  copying wpiutil/include/wpi/nodiscard.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/function_ref.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/SmallString.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/SymbolExports.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/raw_istream.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/Synchronization.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/iterator_range.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/ReverseIteration.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/spinlock.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/circular_buffer.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  creating build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/ghc
                  copying wpiutil/include/wpi/ghc/filesystem.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/ghc
                  copying wpiutil/include/wpi/Algorithm.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/Endian.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/SmallVectorMemoryBuffer.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/UidVector.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/interpolating_map.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/DenseMapInfo.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/StringExtras.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/CallbackManager.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/Errc.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/StringMapEntry.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/SmallSet.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/MappedFileRegion.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/json_serializer.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/EpochTracker.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/MapVector.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/STLForwardCompat.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/timestamp.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  creating build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/fmt
                  copying wpiutil/include/wpi/fmt/raw_ostream.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/fmt
                  copying wpiutil/include/wpi/StringMap.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/mpack.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/SmallPtrSet.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/leb128.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/ErrorHandling.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/Chrono.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/mutex.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/PointerIntPair.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/iterator.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/PointerUnion.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/StackTrace.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/SafeThread.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/sha1.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/static_circular_buffer.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/circular_buffer.inc -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/MemoryBuffer.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/Signal.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/fs.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/condition_variable.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/DataLogReader.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/DenseMap.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/AlignOf.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/json.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/PointerLikeTypeTraits.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/raw_ostream.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/NullDeleter.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/EventVector.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/raw_os_ostream.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/array.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/MathExtras.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/future.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/SmallVector.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/jni_util.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/Hashing.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/AllocatorBase.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/priority_queue.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/deprecated.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/DJB.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/WindowsError.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/Errno.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/SwapByteOrder.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  creating build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  creating build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory/detail
                  copying wpiutil/include/wpi/memory/detail/ebo_storage.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory/detail
                  copying wpiutil/include/wpi/memory/detail/lowlevel_allocator.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory/detail
                  copying wpiutil/include/wpi/memory/detail/free_list_array.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory/detail
                  copying wpiutil/include/wpi/memory/detail/ilog2.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory/detail
                  copying wpiutil/include/wpi/memory/detail/free_list.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory/detail
                  copying wpiutil/include/wpi/memory/detail/memory_stack.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory/detail
                  copying wpiutil/include/wpi/memory/detail/assert.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory/detail
                  copying wpiutil/include/wpi/memory/detail/debug_helpers.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory/detail
                  copying wpiutil/include/wpi/memory/detail/align.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory/detail
                  copying wpiutil/include/wpi/memory/detail/small_free_list.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory/detail
                  copying wpiutil/include/wpi/memory/detail/utility.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory/detail
                  copying wpiutil/include/wpi/memory/detail/container_node_sizes.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory/detail
                  copying wpiutil/include/wpi/memory/new_allocator.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/allocator_traits.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/iteration_allocator.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/memory_resource_adapter.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/allocator_storage.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/memory_pool_type.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/memory_pool_collection.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/deleter.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/std_allocator.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/segregator.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/namespace_alias.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/aligned_allocator.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/static_allocator.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/fallback_allocator.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/default_allocator.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/config_impl.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/debugging.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/joint_allocator.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/container.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/memory_stack.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/config.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/heap_allocator.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/tracking.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/memory_arena.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/memory_pool.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/temporary_allocator.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/error.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/smart_ptr.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/virtual_memory.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/threading.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/memory/malloc_allocator.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi/memory
                  copying wpiutil/include/wpi/DataLog.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/Base64.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  copying wpiutil/include/wpi/priority_mutex.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/wpi
                  creating build/lib.linux-aarch64-cpython-38/wpiutil/include/fmt
                  copying wpiutil/include/fmt/std.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/fmt
                  copying wpiutil/include/fmt/chrono.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/fmt
                  copying wpiutil/include/fmt/args.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/fmt
                  copying wpiutil/include/fmt/compile.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/fmt
                  copying wpiutil/include/fmt/core.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/fmt
                  copying wpiutil/include/fmt/printf.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/fmt
                  copying wpiutil/include/fmt/xchar.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/fmt
                  copying wpiutil/include/fmt/format-inl.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/fmt
                  copying wpiutil/include/fmt/os.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/fmt
                  copying wpiutil/include/fmt/color.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/fmt
                  copying wpiutil/include/fmt/ranges.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/fmt
                  copying wpiutil/include/fmt/ostream.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/fmt
                  copying wpiutil/include/fmt/format.h -> build/lib.linux-aarch64-cpython-38/wpiutil/include/fmt
                  creating build/lib.linux-aarch64-cpython-38/wpiutil/lib
                  copying wpiutil/lib/libwpiutil.so -> build/lib.linux-aarch64-cpython-38/wpiutil/lib
                  creating build/lib.linux-aarch64-cpython-38/wpiutil/rpy-include
                  creating build/lib.linux-aarch64-cpython-38/wpiutil/rpy-include/rpygen
                  copying wpiutil/rpy-include/rpygen/wpi__SendableBuilder.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/rpy-include/rpygen
                  copying wpiutil/rpy-include/rpygen/wpi__Sendable.hpp -> build/lib.linux-aarch64-cpython-38/wpiutil/rpy-include/rpygen
                  running build_ext
                  creating /tmp/tmpfp8c09q4/tmp
                  creating /tmp/tmpfp8c09q4/tmp/tmpfp8c09q4
                  aarch64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -I/usr/include/python3.8 -c /tmp/tmpfp8c09q4/test.cpp -o /tmp/tmpfp8c09q4/tmp/tmpfp8c09q4/test.o -std=c++20
                  aarch64-linux-gnu-gcc: error: unrecognized command line option ‘-std=c++20’; did you mean ‘-std=c++2a’?
                  creating /tmp/tmph94uuq7y/tmp
                  creating /tmp/tmph94uuq7y/tmp/tmph94uuq7y
                  aarch64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -I/usr/include/python3.8 -c /tmp/tmph94uuq7y/test.cpp -o /tmp/tmph94uuq7y/tmp/tmph94uuq7y/test.o -std=c++17
                  creating /tmp/tmp4dfzmzyz/tmp
                  creating /tmp/tmp4dfzmzyz/tmp/tmp4dfzmzyz
                  aarch64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -I/usr/include/python3.8 -c /tmp/tmp4dfzmzyz/test.cpp -o /tmp/tmp4dfzmzyz/tmp/tmp4dfzmzyz/test.o -fvisibility=hidden
                  building 'wpiutil._wpiutil' extension
                  creating build/temp.linux-aarch64-cpython-38/build
                  creating build/temp.linux-aarch64-cpython-38/build/temp.linux-aarch64-cpython-38
                  creating build/temp.linux-aarch64-cpython-38/build/temp.linux-aarch64-cpython-38/gensrc
                  creating build/temp.linux-aarch64-cpython-38/build/temp.linux-aarch64-cpython-38/gensrc/wpiutil
                  creating build/temp.linux-aarch64-cpython-38/wpiutil
                  creating build/temp.linux-aarch64-cpython-38/wpiutil/src
                  aarch64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -DRPYBUILD_MODULE_NAME=_wpiutil -DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT=1 -I/tmp/pip-install-hxq32p56/robotpy-wpiutil_d508935dc48c4b2385c020f096783711/wpiutil/include -I/tmp/pip-install-hxq32p56/robotpy-wpiutil_d508935dc48c4b2385c020f096783711/wpiutil/rpy-include -I/tmp/pip-install-hxq32p56/robotpy-wpiutil_d508935dc48c4b2385c020f096783711/wpiutil/src/type_casters -I/tmp/pip-build-env-6di3q73f/overlay/lib/python3.8/site-packages/robotpy_build/pybind11/include -I/tmp/pip-build-env-6di3q73f/overlay/lib/python3.8/site-packages/robotpy_build/include -Ibuild/temp.linux-aarch64-cpython-38/gensrc/wpiutil -I/tmp/pip-install-hxq32p56/robotpy-wpiutil_d508935dc48c4b2385c020f096783711/wpiutil -I/usr/include/python3.8 -c build/temp.linux-aarch64-cpython-38/gensrc/wpiutil/DataLog.cpp -o build/temp.linux-aarch64-cpython-38/build/temp.linux-aarch64-cpython-38/gensrc/wpiutil/DataLog.o -s -g0 -std=c++17 -fvisibility=hidden
                  In file included from build/temp.linux-aarch64-cpython-38/gensrc/wpiutil/DataLog.cpp:5:
                  /tmp/pip-install-hxq32p56/robotpy-wpiutil_d508935dc48c4b2385c020f096783711/wpiutil/include/wpi/DataLog.h:12:10: fatal error: span: No such file or directory
                     12 | #include <span>
                        |          ^~~~~~
                  compilation terminated.
                  /tmp/pip-build-env-6di3q73f/overlay/lib/python3.8/site-packages/setuptools/command/build_py.py:153: SetuptoolsDeprecationWarning:     Installing 'wpiutil.src' as data is deprecated, please list it in `packages`.
                      !!


                      ############################
                      # Package would be ignored #
                      ############################
                      Python recognizes 'wpiutil.src' as an importable package,
                      but it is not listed in the `packages` configuration of setuptools.

                      'wpiutil.src' has been automatically added to the distribution only
                      because it may contain data files, but this behavior is likely to change
                      in future versions of setuptools (and therefore is considered deprecated).

                      Please make sure that 'wpiutil.src' is included as a package by using
                      the `packages` configuration field or the proper discovery methods
                      (for example by using `find_namespace_packages(...)`/`find_namespace:`
                      instead of `find_packages(...)`/`find:`).

                      You can read more about "package discovery" and "data files" on setuptools
                      documentation page.


                  !!

                    check.warn(importable)
                  /tmp/pip-build-env-6di3q73f/overlay/lib/python3.8/site-packages/setuptools/command/build_py.py:153: SetuptoolsDeprecationWarning:     Installing 'wpiutil.src.type_casters' as data is deprecated, please list it in `packages`.
                      !!


                      ############################
                      # Package would be ignored #
                      ############################
                      Python recognizes 'wpiutil.src.type_casters' as an importable package,
                      but it is not listed in the `packages` configuration of setuptools.

                      'wpiutil.src.type_casters' has been automatically added to the distribution only
                      because it may contain data files, but this behavior is likely to change
                      in future versions of setuptools (and therefore is considered deprecated).

                      Please make sure that 'wpiutil.src.type_casters' is included as a package by using
                      the `packages` configuration field or the proper discovery methods
                      (for example by using `find_namespace_packages(...)`/`find_namespace:`
                      instead of `find_packages(...)`/`find:`).

                      You can read more about "package discovery" and "data files" on setuptools
                      documentation page.


                  !!

                    check.warn(importable)
                  error: command '/usr/bin/aarch64-linux-gnu-gcc' failed with exit code 1
                  [end of output]

              note: This error originates from a subprocess, and is likely not a problem with pip.
              ERROR: Failed building wheel for robotpy-wpiutil
            Failed to build robotpy-wpiutil
            ERROR: Could not build wheels for robotpy-wpiutil, which is required to install pyproject.toml-based projects
            [end of output]

        note: This error originates from a subprocess, and is likely not a problem with pip.
      error: subprocess-exited-with-error

      × pip subprocess to install build dependencies did not run successfully.
      │ exit code: 1
      ╰─> See above for output.

      note: This error originates from a subprocess, and is likely not a problem with pip.
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error

× pip subprocess to install build dependencies did not run successfully.
│ exit code: 1
╰─> See above for output.

note: This error originates from a subprocess, and is likely not a problem with pip.

Operating System

Linux

Installed Python Packages

Package                Version
---------------------- --------------------
blinker                1.4
certifi                2019.11.28
chardet                3.0.4
cryptography           2.8
dbus-python            1.2.16
distro                 1.4.0
entrypoints            0.3
httplib2               0.14.0
idna                   2.8
keyring                18.0.1
launchpadlib           1.10.13
lazr.restfulclient     0.14.2
lazr.uri               1.0.3
meson                  0.53.2
netifaces              0.10.4
numpy                  1.17.4
oauthlib               3.1.0
pip                    20.0.2
PyGObject              3.36.0
PyJWT                  1.7.1
pymacaroons            0.13.0
PyNaCl                 1.3.0
PyQt5                  5.14.1
python-apt             2.0.0+ubuntu0.20.4.1
PyYAML                 5.3.1
requests               2.22.0
requests-unixsocket    0.2.0
SecretStorage          2.3.1
setuptools             45.2.0
simplejson             3.16.0
sip                    4.19.21
six                    1.14.0
ssh-import-id          5.10
systemd-python         234
ubuntu-advantage-tools 20.3
urllib3                1.25.8
wadllib                1.3.3
wheel                  0.34.2

Reproducible example code

pip3 install robotpy
pip3 install robotpy-cscore
pip3 install robotpy-apriltag

Tried with python 3.8 and 3.9

RobotPy 2021 Upgrades

Well, kickoff is tomorrow, so probably should work on this now? ;)

I'm planning on starting work on these things at 8PM Eastern Standard Time. Would appreciate any help people want to offer. Here's a list of the things I imagine need to be done:

  • Documentation updates!
    • pip install robotpy needs to be our emphasized install method
    • robotpy installer needs to be upgraded (robotpy/robotpy-installer#49)
      • ... sorta want to rename it to 'robotpip' :-D
    • Remove all mentions of 'download-opkg/install-opkg'
  • Upgrades
    • core pieces of robotpy: wpiutil, ntcore, hal, wpilib
    • ctre, spark, navx
      • I belive CTRE/SPARK support OSX now? Need to add them to new builds
    • adi, others?
    • robotpy-build needs to update to pybind11 2.6.1 -- holding the version of robotpy-build to < 2021 until I finish the cxxheaderparser migration
  • new libraries
    • wpimath
    • HAL websocket wrapper for ROMI support
    • WPILib simulation physics stuff? it might be in wpilib, haven't checked

Other things I'm tracking but won't be doable before kickoff

  • commands v2 library needs robotpy-build upgrades to function
  • playing with fusion venom controller: waiting for response from them wrt simulation

If you want to help out, get on gitter and tell me what you're working on! A lot of these things should be doable before tomorrow morning.

Change bump minor version to match wpilib release

So, robotpy 2022.4.x should correspond to wpilib 2022.4.x ... and so on. Should be done automatically so we don't have to think about it. Maybe only activate the bump if wpiutil is being bumped and its major version changes?

Should we pin versions here?

I sorta like the idea of saying "oh you have robotpy 2023.x.y.z, so you must have this specific set of packages". However, that probably wouldn't work so well with vendor packages since maybe users might want to use an older version for some reason?

Right now, we only bound the minimum version of the package... which is fine, but seems potentially bad.

We could use a different boundary (so like keep it within a minor version?) instead. Open to other options.

Edit: So it seems to me that there are three different options available to us. Let's assume that the current version of wpilib is 2023.1.2.3. Here are the options:

  1. wpilib<2024.0.0,>=2023.1.2.3 (this is what we do now)
  2. wpilib<2023.2.0,>=2023.1.2.3
  3. wpilib==2023.1.2.3

It seems that doing any of those things for wpilib dependencies is fairly reasonable. The tricky part would be vendor libraries.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.