- [FL-1533] CI refactoring (#601)
- rename artifacts
- add workflow with date
- add debug
- Add branch name to artifact name and rm genpic job
- Add branch name to artifact name for upload job
- Add branch restrictions for dev and user branches
- Add branch restrictions for dev and user branches
- Add cleanup workspace for upload job
- Test ignore branch
- Test release CI workflow
- Rename release CI
- Add pre-release trigger
- Rm branch restriction for CI
- Add release trigger
- rm branch restriction for CI
- rm genpic job
- Github: refactor actions, move linting to parallel actions, separate forlder for artifacts, build cleanup
- Github: build date and commit hash on branches and tag on tags
- Github: minor artifacts name cleanup
- Github: decontaminate previous build leftovers
- Github: better decontamination and release build SUFFIX
- Github: fetch before decontamitation
- Github: change decontamination logic, jump to first commit if submodules are broken
- ReadMe: update links to latest firmware and images
- [FL-1435] correct text position for "Successfully written" msg #600
- [FL-1606] Hide "Unlocked" message on any user interaction #599
- [FL-1549] Gui Widget module (#598)
- gui_widget: rework with mlib container
- widget: rename gui_widget-> widget; gui_element->widget_element
- gui: move widget from nfc to gui/modules
- nfc: rework widget usage
- nfc: return to ReadEmvAppSuccess scene after ReadEmvDataSuccess exit
- [FL-1191][FL-1524] Filesystem rework (#568)
- FS-Api: removed datetime manipulation functions and most of the file flags
- Filesystem: common proxy api
- Filesystem: renamed to Storage. Work has begun on a glue layer. Added functions for reentrance.
- Storage: sd mount and sd file open
- Storage: sd file close
- Storage: temporary test app
- Storage: free filedata on close
- Storage: sd file read and write
- Storage: added internal storage (LittleFS)
- Storage: renamed internal commands
- Storage: seek, tell, truncate, size, sync, eof
- Storage: error descriptions
- Storage: directory management api (open, close, read, rewind)
- Storage: common management api (stat, fs_stat, remove, rename, mkdir)
- Dolphin app and Notifications app now use raw storage.
- Storage: storage statuses renamed. Implemented sd card icon.
- Storage: added raw sd-card api.
- Storage settings: work started
- Assets: use new icons approach
- Storage settings: working storage settings
- Storage: completely redesigned api, no longer sticking out FS_Api
- Storage: more simplified api, getting error_id from file is hidden from user, pointer to api is hidden inside file
- Storage: cli info and format commands
- Storage-cli: file list
- Storage: a simpler and more reliable api
- FatFS: slightly lighter and faster config. Also disabled reentrancy and file locking functions. They moved to a storage service.
- Storage-cli: accommodate to the new cli api.
- Storage: filesystem api is separated into internal and common api.
- Cli: added the ability to print the list of free heap blocks
- Storage: uses a list instead of an array to store the StorageFile. Rewrote api calls to use semaphores instead of thread flags.
- Storage settings: added the ability to benchmark the SD card.
- Gui module file select: uses new storage api
- Apps: removed deprecated sd_card_test application
- Args lib: support for enquoted arguments
- Dialogs: a new gui app for simple non-asynchronous apps
- Dialogs: view holder for easy single view work
- File worker: use new storage api
- IButton and lfrrfid apps: save keys to any storage
- Apps: fix ibutton and lfrfid stack, remove sd_card_test.
- SD filesystem: app removed
- File worker: fixed api pointer type
- Subghz: loading assets using the new storage api
- NFC: use the new storage api
- Dialogs: the better api for the message element
- Archive: use new storage api
- Irda: changed assest path, changed app path
- FileWorker: removed unused file_buf_cnt
- Storage: copying and renaming files now works between storages
- Storage cli: read, copy, remove, rename commands
- Archive: removed commented code
- Storage cli: write command
- Applications: add SRV_STORAGE and SRV_DIALOGS
- Internal-storage: removed
- Storage: improved api
- Storage app: changed api pointer from StorageApp to Storage
- Storage: better file_id handling
- Storage: more consistent errors
- Loader: support for NULL icons
- Storage: do nothing with the lfs file or directory if it is not open
- Storage: fix typo
- Storage: minor float usage cleanup, rename some symbols.
- Storage: compact doxygen comments.
- [FL-1430] ApiHal: add regions and colors enums #597
- [FL-1581] I2C fast mode #596
- [FL-1547], [FL-1500] NFC app v1 (#593)
- nfc: remove mifare read debug view and scene
- nfc: change mifare ultralight data structure
- mifare_ultralight: add more commands
- nfc: add emulate mifare ul scene
- nfc: rework data structures, remove debug scenes and views
- nfc: add read emv scenes
- nfc: mifare emulation wip
- nfc cli: increase detecting time
- nfc: save nfc files with new format
- nfc: store Mifare Ultralight
- nfc: start loading mifare ultralight
- nfc: add delete scenes
- nfc: add edit UID and name
- nfc: finish parsing uid and mifare ul data
- nfc: delete success fix
- gui_widget: introduce GuiWidget
- gui_widget: add string element
- gui_widget: add button element
- gui_widget: move free elements into gui_widget
- nfc: rework info scene with GuiWidget
- nfc: rework device info scene
- nfc: rework delete scene gui
- nfc: add compatible script support
- nfc: rework emv reading scenes
- nfc: rework bank card save
- nfc: add bank card custom view
- gui_widget: add icon element
- nfc: add icon to bank card
- nfc: start worker after switching view
- [FL-1430] New OTP format #595
- [FL-1489] IRDA: move to FileWorker (#594)
- Use FileWorker
- Use file_select to select remotes
- Fix some crashes
- Add RAW parsing restrictions
- Remove excess scene (LearnDoneAfter)
- Move all file system logic to standalone object
- IRDA: fix NVIC setup (#592)
- [FL-1558] Technical Debt: console, bootloader, targets, stdglue, etc... (#590)
- ApiHal: console abstraction, change uart baud rate to 230400. Bootloader: drop F5. Furi: prevent thread local output to serial console in stdglue.
- ApiHal: take control over system initialization, reorder some subsystems in a hope of fixing USB issues.
- Main: cleanup dead code. ISR: take care of HSECSS by our self. USB: leave clock configuration alone.
- F6 cube: switch RCC to LL.
- Cli: rollback return behavior.
- [FL-1493] text input: fix "up" key behaviour #591
- Cli: rename stack free size to stack watermark (#589)
- Cli: give input command CliCommandFlagParallelSafe flag (#588)
- Cli: insomnia safe flags and better insomnia handling in cli (#587)
- [FL-1530] Cli: better Сtrl-С polling (#586)
- [FL-1546, FL-1534, FL-1550] Drop F5, Certification preparation, Global application start lock (#585)
- Firmware: drop F5 target
- Rename app-loader to loader
- Update code owners file
- Loader: global application start lock API, minor refactoring
- Archive: update loader usage
- Cli: Command flags, global application start lock
- Apps: update cli API usage
- Bootloader: minor refactoring
- Firmware: minor build refactoring
- SubGhz: GUI packet test
- SubGhz: drop packet transmission and unused presets
- Github: drop F5 from build
- Archive: favorites
- Archive: a little bit more of Favorites
- [FL-1555] Cli: update motd (#584)
- Cli: update motd
- Cli: autocomplete and cursor.
- Cli: one line history.
- Cli: minor cleanup, remove double flush, remove prompt on empty autocomplete
- [FL-1590] SubGhz: fix incorrect limits on frequency that were causing crashes #607