* Add fileCreation/getCreation create-time accessors
For SDFS and LittleFS, enable a creation time accessor for files and Dir
iterators, similar to the existing fileTime/getLastWrite calls.
Remove spurious Dir::getLastWrite method (the proper and only documented
way is really Dir::fileTime).
Update json to point to new mklittlefs which copies the creation date of
files to the image.
Fixes#6992
* Remove malloc(), use stack vars for temp names
LFS filenames are limited in size and generally very small. Use a stack
variable instead of a dynamic allocation when performing full-path
computations.
* Replace "Creation" w/"CreationTime" in FS accessor
Per review, `getCreation` -> `getCreationTime`, `fileCreation` ->
`fileCreationTime`.
The names `fileTime()` and `getLastWrite()` are inherited from ESP32
implementation and unchanged.
* Add creation time to listfiles SD example
* Enable SdFat's sateTime callback for timestamping
SdFat requries the dateTimeCallback call (global for everything) to
update dates and times on created files.
Because the callback signature doesn't have space for us to provide
any parameters, we cannot get the the File, Dir, or FS object's
dateTimeCB member. Instead, just go with `time(null)` as the callback
function which is right in all but the most esoteric cases.
* Correct DOS year/month offset in dateTime callback
* Fix docs to match new xxxCreationTime() API names
Co-authored-by: Develo <deveyes@gmail.com>
* Add time to filesystem API
Support the ESP32 File::getLastWrite() call and setting the time on
all filesystems automatically (assuming the system clock has
been set properly and time(NULL) returns the proper time!).
Adds Dir::fileTime() to get the time of a file being listed, similar to
Dir::fileName() and Dir::fileSize().
Adds ::setTimeCallback(time_t (*cb)()) to File, Dir, and FS, allowing
users to override the default timestamp on a per-file, directory, or
filesystem basis. By default, a simple callback returning time(nullptr)
is implemented.
LittleFS uses the 't' attribute and should be backwards compatible.
SD/SDFS work and include wrappers for obsolete SdFat timestamp callbacks
using the MSDOS time.
This PR does not update SPIFFS, due to compatability concerns and a
possible massive rewrite which would make it possible to determine if an
old-style ot metadata enabled FS is present at mount time.
Includes an updated SD/listfiles and LittleFS_time example.
Replaces #6315
* Add links to new mklittlefs w/timestamp support
Include the update mklittlefs which generated 't' metadata on imported
files.
../tools/sdk/lwip2/include/netif/lowpan6_opts.h
* Add explicit note about timestamp being local time
* Address review concerns
Clean up some awkward object instantiations.
Remove the _enableTime flag/setter from SPIFFS.
Clean up the FSConfig constructors using C++ style init lists.
* master: (414 commits)
Don't export sketch if the underlying core does not support it. Fixes#3171
RSyntaxTextArea: using a modified version, tracked at https://github.com/arduino/RSyntaxTextArea. Fixes#3099
Updated keywords.txt
New editor on MacOSX: since CMD+J is known as "jump to selection" and the editor has no such feature, CMD+J is disabled on mac. See #3098
Old Preferences class remains for backwards compatibility as a delegate for PreferencesData
New Preferences window: renders fine on every OS and it's easier to adapt using NetBeans as visual editor. Fixes#3140
Remove spawn from exec command
Removed redundant call to File.deleteIfExists()
Removed buggy redundant check in FileUtils.deleteIfExists()
Restored current line/current selected lines display on lower left of the IDE. Fixes#3134
Updated cursor.ino
New editor on MacOSX: restored CMD+E for finding selected text
New editor on MacOSX: CMD+UP/DOWN moves cursor to start or end of sketch. See #3098
New editor on MacOSX: CMD+BACKSPACE deletes current line until cursor position, ALT+BACKSPACE deletes previous word. See #3098
ArduinoIDE is in the default package. Removed
Fixes #2969:
Fix Uncategorized warning message
New editor: ALT+ BACKSPACE deletes next word (OSX only). See #3098
New editor: ALT+ UP/DOWN move current line only if "editor.advanced" (hidden pref) is true. Fixes#3101
New editor: mark occurrences enable when "editor.advanced" (hidden pref) is true. Fixes#3102
...
Conflicts:
.gitignore
build/build.xml
hardware/esp8266com/esp8266/libraries/ESP8266WiFi/keywords.txt
hardware/esp8266com/esp8266/libraries/ESP8266WiFi/library.properties
hardware/esp8266com/esp8266/libraries/ESP8266WiFi/src/ESP8266WiFi.h
libraries/WiFi/README.adoc
libraries/WiFi/src/WiFi.cpp
libraries/WiFi/src/WiFiClient.cpp
libraries/WiFi/src/WiFiClient.h
libraries/WiFi/src/WiFiServer.cpp
libraries/WiFi/src/WiFiUdp.cpp
This includes empty stubs for most core Arduino functions.
Need to actually implement all those digital reads writes whatever.
Need to prebuild toolchains (xtensa-elf-lx106) for 3 platforms and put them on some download server.
Need to do the same with esptool.
Need to fix 0x40000 binary generation and add correct upload commands.
Maybe even implement uploads over WiFi.