Releases: purduesigbots/pros
4.2.1
What's Changed
- 🔀Backmerge master-pros-4 post 4.1.0 release by @noam987 in #669
- 📝 Adi port doc fix by @Rocky14683 in #696
- update libv5rts by @AndrewLuGit in #698
- ⚡Use
-mfloat-abi=hard, Updatelibm.aandlibc.aby @SizzinSeal in #703 - Backmerge Master by @AndrewLuGit in #720
- chore: 📄 update copyright to 2024, update license to PROS 4 by @ion098 in #722
- ✨ Print stack trace to brain screen on data/prefetch abort by @ion098 in #651
- 🐛 Fix _exit implementation by @ion098 in #671
- ✨ Add more weak symbols for llemu by @WillXuCodes in #674
- ✨ Add RecursiveMutex class & make Mutex/RecursiveMutex ctors constexpr by @ion098 in #677
- 🧑💻 Deprecate LLEMU if liblvgl is not present by @ion098 in #692
- 📝 update version of c and c++ in readme by @SizzinSeal in #710
- 🚨 fix motorgroup compiler warnings by @SizzinSeal in #712
- 🚨 Fix make override warnings by @SizzinSeal in #713
- 📝 fix imu documentation by @Rocky14683 in #721
- ✨ Motor Type Getter by @SizzinSeal in #723
- fix makefile override bug by @Rocky14683 in #730
- Fix digital out for adi expander by @Rocky14683 in #732
- aivision for beta release by @Rocky14683 in #729
- feat: ✨ Get the state of the controller's power button by @ion098 in #737
- fix: 🐛 Fix is_installed when using negative port reversed motors by @ion098 in #741
- fix rotation sensor set_position by @Rocky14683 in #747
- fix: 🐛 Increase max text length for controller text setting by @ion098 in #683
- fix lol by @Rocky14683 in #752
- feat: ✨ Allow disabling PROS banner by @ion098 in #748
- docs: 📝 Fix misleading example code for distance sensor api by @ion098 in #750
- Implemented get_digital_new_release by @miles352 in #726
- fix compiler warnings for kernel by @Rocky14683 in #762
- refactor: ⚡ Reduce code binary size by @ion098 in #708
- Ai vision by @Rocky14683 in #764
- 🔀 Backmerge Master by @AndrewLuGit in #766
- swap optical get/set integration time docs by @AndrewLuGit in #765
- 🔖 Release 4.2.0 by @AndrewLuGit in #767
- 🐛 allow creating vexlink devices on empty ports by @AndrewLuGit in #763
- 🐛 fix some typos by @Ynthra in #768
- 🔀 Backmerge Master by @AndrewLuGit in #770
- 🔖 Release 4.2.1 by @KdotDevelopment in #771
New Contributors
- @ion098 made their first contribution in #722
- @miles352 made their first contribution in #726
- @Ynthra made their first contribution in #768
- @KdotDevelopment made their first contribution in #771
Full Changelog: 4.1.2...4.2.1
4.1.2
4.1.1
What's Changed
- ✨ Add Optical Get/Set Integration Time by @Gracelu128 in #719
Full Changelog: 4.1.0...4.1.1
4.1.0
What's Changed from Kernel 4.0.7:
- Update Motor groups to take in AbstractMotor& Instead of MotorGroup&
- Bunch of documentation updates
- Few small bugs involving literals and static getters
What's the difference between PROS 4 and 3?
PROS 4 is a Kernel upgrade from PROS 4 to both decrease the size of the base Kernel, and provide utilities such as the base device class and liblvgl that makes it easier for both users and library writers to customize their PROS projects. This version also moves all documentation to a doxygen site rather than a Sphinx documentation page.
What's new Since PROS 3:
- Update to C++20 instead of 14
- New and improved Main.cpp with better examples
- = operator overload removed for motors and motor groups
- LVGL is now a default template and updated to lvgl 8.3.4 (you can switch to lvgl 5.3.2 by running pros c apply liblvgl@5.3.3)
- New static functions to create IMUs, GPS, and vision sensors based on sensing the port they are plugged into automatically
- Adds << overloads for devices to improve debugging
- New namespace for ADI devices
- removes the need for "/usd/" at the beginning of most files
- Adds a device superclass
- Now with 33% more PROS
- Different GPS sensor API
- Adds abstract motor base class
- Removed explicit from devices
- New LLEMU screen
- Better Motor group implementation
- adds cpp literals support for devices
- Remove Legacy API
- Added new functions to determine competition state
- Moved to enum classes instead of enums
- Native File system support when using LVGL
- And Much Much More.
The docs are being updated throughout the summer based on user feedback. Please let us know in our Beta server or in a #help thread in VTOW if there are updates you want to see on the docs, or if something looks off or doesn't make sense.
4.0.7
What's Changed
- 📝 PROS 4: Fix docs by @Jerrylum in #568
- Update the docs branch with develop-pros-4 changes by @noam987 in #604
- Motor bug fixes and add new set_gearing by @noam987 in #611
- ✨Add list_files function by @noam987 in #612
- ✨ ADI Get Port by @phinc23 in #613
- 🐛Vex link default override by @phinc23 in #614
- ✨Field Control State Getter by @CChheerryyll in #608
- Fflush on write by @aberiggs in #619
- 🐛Fix Negative Port Rotation Sensor by @Cooper7196 in #618
- 🐛 Field Control Getter Return Value by @CChheerryyll in #627
- ✨Allows for file open to default to the sd card. by @noam987 in #621
- 🐛Fix motor voltage limit port mutex returning by @Gavin-Niederman in #635
- Pros4/feature/get devices vector by @aberiggs in #652
- Modify PROS 4 GPS API by @CChheerryyll in #650
- 🐛Fix linking issues with the competition modes by @noam987 in #655
- 🐛ADI mutex fix by @R11G in #633
- Adds static getters for some devices by @noam987 in #653
- 📝 PROS 4: Documentation Fixes for optical and distance sensor by @Gracelu128 in #654
- 🐛Fixed Imu::is_calibrating function for PROS 4 #626 by @Gracelu128 in #629
- 🐛Remove = operator overload from motor groups by @noam987 in #656
- 🔖Release/4.0.7 by @noam987 in #658
New Contributors
- @CChheerryyll made their first contribution in #608
- @Gavin-Niederman made their first contribution in #635
Full Changelog: 4.0.6...4.0.7
3.8.2
What's Changed
- 🐛 Fixed broken TEXT_LARGE_CENTER macro by @the2nake in #561
- 🐛 Add nullchecks to clock time functions by @WillXuCodes in #585
- 🐛Fixed Imu::is_calibrating function for PROS 3 #626 by @Gracelu128 in #628
- ✨ Add to GPS API by @phinc23 in #630
- 🐛ADI mutex fix for pros 3 by @R11G in #636
New Contributors
Full Changelog: 3.8.0...3.8.2
3.8.0: Road to PROS 4
Features:
- Add some missing functions to motor groups, such as
get_temperatures(),
get_voltages(), andget_voltage_limits(). - Add additional constructors to motor groups to handle different construction
cases. - Add "at()" method for motor groups.
- Add integration time setting/getting to
pros::Optical.
Updates:
- Update Makefiles to use "pros" instead of "prosv5". This should hopefully fix
some issues that occur on linux installs. - Update Copyright to 2023.
Bugfixes:
- Fixed ambiguity with the default constructor on ADI Encoders.
- Paths with parenthesis no longer break the build system.
- Fixed the return_port breaking a function in the motor API.
Hopefully this will be the last update to 3... before the PROS 4 open beta.
Special thanks to @djava, @beyond-reality-dev !
3.7.3
Summary
🐛 Fix global pros::Rotation objects creating a data abort exception.
✨ Added functionality for size() and [] operator for motor groups.
🐛 Fix bug with LED non-extended constructor.
🐛 Fix bug with Python version so CI builds.
3.7.2: LED Strips and More!
This update adds addressable LED support, motors reversible by passing negative port numbers, and date/time keeping features.
What's changed:
Features:
- ✨ Passing a negative port number to
pros::Motororpros::Motor_Groupwill automatically initialize the motor with the reversed flag set by @R11G in #421 - ✨ Added
pros::MotorGroupas an alias forpros::Motor_Groupby @evanmiller620 in #429 - ✨ Added support for addressable LED strips by @omegaStag in #424
- ✨ Added timekeeping functionality through the clock_gettime() and clock_settime() support, enabling standard the standard libraries
chronoandtime.hby @Richard-Stump in #127
Bugfixes:
- 🐛 Add ext_ to missing CPP functions for adi C++ by @WillXuCodes in #438
Special Mentions:
- @evanmiller620 made their first contribution in #421!
- @R11G made their first contribution #429!