moros/CHANGELOG.md

28 KiB

Changelog

Unreleased

  • Add e1000 driver (#337)
  • Reduce DHCP sleep time (#610)
  • Allow copying file to dir (#607)
  • Fix HTTP server (#609)
  • Fix HTTP server content type (#608)
  • Improve RNG (#602)
  • Fix invalid VGA palette reset (#605)
  • Improve VGA palette parser (#604)
  • Fix underflow errors in VGA driver (#603)

0.10.3 (2024-03-20)

  • Add ANSI OSC color palette support (#566)
  • Add drive device (#555)
  • Add env vars to customize screen size (#585)
  • Add escape sequences to shell (#558)
  • Add hashbang support to execute scripts (#570)
  • Add kernel log to buffer in memory (#578)
  • Add memory dump command (#574)
  • Add time synchronisation with NTP (#579)
  • Add timeout to socket accept (#584)
  • Display non printable ascii chars with a dark dot (#580)
  • Fix random memory issues (#573)
  • Fix shell autocomplete (#591)
  • Fix socket status reading (#575)
  • Improve setup process (#596)
  • Improve warning when MFS is not mounted (#595)
  • Initialize ACPI module at boot time (#583)
  • Refactor everything to stay below 80 chars per line (#567)
  • Run clippy (#581)
  • Skip ATA drive selection when not needed (#576)
  • Update Rust from nightly-2023-12-01 to nightly-2024-03-01 (#598)
  • Update documentation (#592)
  • Update unit conversions (#597)
  • Update x86_64 crate from 0.14.12 to 0.15.0 (#590)
  • Bump bootloader from 0.9.23 to 0.9.24 (#571)
  • Bump bootloader from 0.9.24 to 0.9.28 (#586)
  • Bump num-traits from 0.2.17 to 0.2.18 (#572)
  • Bump object from 0.32.1 to 0.32.2 (#564)
  • Bump object from 0.32.2 to 0.33.0 (#589)
  • Bump object from 0.33.0 to 0.34.0 (#593)
  • Bump pic8259 from 0.10.4 to 0.11.0 (#594)
  • Bump smoltcp from 0.10.0 to 0.11.0 (#565)
  • Bump uart_16550 from 0.2.19 to 0.3.0 (#524)
  • Bump x86_64 from 0.15.0 to 0.15.1 (#600)
  • Bump x86_64 from 0.14.11 to 0.14.12 (#577)

0.10.2 (2023-12-22)

  • Add basic userspace allocator (#544)
  • Add basic userspace shell (#548)
  • Add hash command (#554)
  • Add more code examples to lisp (#542)
  • Add number->string function to lisp (#561)
  • Add process page table (#454)
  • Add support for hexadecimal numbers in Lisp (#540)
  • Improve binary support (#552)
  • Improve documentation (#547)
  • Improve lisp with Advent of Code 2023 (#556)
  • Improve system information (#553)
  • Run cargo clippy (#541)
  • Upgrade acpi crate to 5.0.0 (#538)
  • Upgrade toolchain from 2023-05-01 to 2023-12-01 (#559)
  • Bump libm from 0.2.7 to 0.2.8 (#535)
  • Bump num-traits from 0.2.16 to 0.2.17 (#536)
  • Bump sha2 from 0.10.7 to 0.10.8 (#533)
  • Bump vte from 0.11.1 to 0.12.0 (#532)
  • Bump vte from 0.12.0 to 0.12.1 (#539)
  • Bump vte from 0.12.1 to 0.13.0 (#543)
  • Bump x86_64 from 0.14.10 to 0.14.11 (#531)

0.10.1 (2023-09-23)

  • Add PageUp and PageDown keys support (#515)
  • Add namespaces to lisp (#511)
  • Add network syscalls (#512)
  • Evaluate load argument in lisp (#522)
  • Speed up VGA text mode (#516)
  • Fix BitmapBlock#next_free_addr after 512 allocated blocks (#518)
  • Fix CSI bug in editor (#520)
  • Fix cursor movements on long lines in editor (#521)
  • Fix read on fuse host driver (#519)
  • Fix regex in shell redirection from (#523)
  • Update smoltcp from 0.9.1 to 0.10.0 (#510)
  • Bump num-traits from 0.2.15 to 0.2.16 (#517)
  • Bump pbkdf2 from 0.12.1 to 0.12.2 (#513)
  • Bump uart_16550 from 0.2.18 to 0.2.19 (#514)

0.10.0 (2023-06-21)

  • Add cut/copy/paste to editor (#456)
  • Add docstring to lisp (#490)
  • Add full support for comments in lisp (#489)
  • Add light palette (#480)
  • Add parenthesis matching to editor (#488)
  • Add path to prompt (#444)
  • Fix RTL8139 driver issues (#483)
  • Fix invalid bytes from serial (#479)
  • Fix lisp comments (#493)
  • Fix lisp cond expand (#501)
  • Fix lisp range params (#494)
  • Fix panic in chess move parser (#446)
  • Fix panic on commands containing only spaces (#442)
  • Fix setup instructions in readme (#504)
  • Improve asm binaries (#482)
  • Improve chess game (#506)
  • Improve help (#451)
  • Improve help system (#481)
  • Improve lisp (#449)
  • Improve lisp (#455)
  • Improve shell autocompletion (#448)
  • Refactor keyboard interrupt handler (#453)
  • Refactor lisp functions (#478)
  • Remove allow other (#447)
  • Replace some rust programs with lisp scripts (#445)
  • Run clippy (#502)
  • Update rust to nightly-2022-12-21 (#485)
  • Update rust version (#495)
  • Upgrade smoltcp from 0.8.2 to 0.9.1 (#484)
  • Use pbkdf2_hmac to fix compilation warnings (#477)
  • Bump aml from 0.16.1 to 0.16.2 (#450)
  • Bump aml from 0.16.2 to 0.16.3 (#471)
  • Bump bit_field from 0.10.1 to 0.10.2 (#468)
  • Bump libm from 0.2.6 to 0.2.7 (#498)
  • Bump linked_list_allocator from 0.10.4 to 0.10.5 (#472)
  • Bump nom from 7.1.1 to 7.1.2 (#457)
  • Bump nom from 7.1.2 to 7.1.3 (#461)
  • Bump object from 0.29.0 to 0.30.0 (#441)
  • Bump object from 0.30.0 to 0.30.3 (#462)
  • Bump object from 0.30.3 to 0.31.1 (#497)
  • Bump pbkdf2 from 0.11.0 to 0.12.1 (#470)
  • Bump pic8259 from 0.10.2 to 0.10.3 (#473)
  • Bump raw-cpuid from 10.6.0 to 10.7.0 (#469)
  • Bump raw-cpuid from 10.7.0 to 11.0.1 (#499)
  • Bump sha2 from 0.10.6 to 0.10.7 (#505)
  • Bump smoltcp from 0.8.1 to 0.8.2 (#443)
  • Bump spin from 0.9.4 to 0.9.5 (#465)
  • Bump spin from 0.9.5 to 0.9.6 (#474)
  • Bump vte from 0.11.0 to 0.11.1 (#496)

0.9.0 (2022-11-11)

  • Add BigInt support to Lisp (#415)
  • Add Conway's Game of Life (#409)
  • Add RTC device file (#400)
  • Add TCO to Lisp (#420)
  • Add apply to Lisp (#410)
  • Add cache to AtaBlockDevice (#396)
  • Add compilation option to set memory size (#433)
  • Add file append (#387)
  • Add if and while to Lisp (#418)
  • Add macro to Lisp (#425)
  • Add makefile arg for qemu audio (#393)
  • Add more bytes to RNG seed when RDRAND is not available (#401)
  • Add new forms to lisp (#385)
  • Add size unit options to commands (#434)
  • Add support for closing connections in request to HTTP server (#406)
  • Exit from alloc errors after page fault in userspace (#404)
  • Extend and refactor Lisp implementation (#412)
  • Fix editor delete (#429)
  • Fix makefile variables (#394)
  • Fix process table panic (#435)
  • Fix SATA LBA2 wrong address (#388)
  • Improve HTTP server (#391)
  • Improve Lisp forms (#402)
  • Improve QEMU options (#384)
  • Improve http timeout (#397)
  • Improve shell (#405)
  • Move /ini/lisp to /lib/lisp (#398)
  • Reduce filesizes (#430)
  • Refactor Lisp (#417)
  • Run clippy (#424)
  • Run clippy (#438)
  • Switch HTTP server to HTTP 1.1 (#395)
  • Update lisp doc and examples (#428)
  • Update pc-keyboard from 0.5.1 to 0.6.1 (#423)
  • Update rust version (#432)
  • Update shell redirections (#399)
  • Update users file (#389)
  • Use git describe to display version (#437)
  • Bump base64 from 0.13.0 to 0.13.1 (#422)
  • Bump libm from 0.2.3 to 0.2.5 (#386)
  • Bump libm from 0.2.5 to 0.2.6 (#436)
  • Bump linked_list_allocator from 0.10.1 to 0.10.3 (#408)
  • Bump linked_list_allocator from 0.10.3 to 0.10.4 (#416)
  • Bump raw-cpuid from 10.4.0 to 10.5.0 (#390)
  • Bump raw-cpuid from 10.5.0 to 10.6.0 (#411)
  • Bump sha2 from 0.10.2 to 0.10.3 (#403)
  • Bump sha2 from 0.10.3 to 0.10.5 (#407)
  • Bump sha2 from 0.10.5 to 0.10.6 (#413)

0.8.0 (2022-08-05)

  • Add Brautigan poem (#373)
  • Add CSI sequence for enabling or disabling echo to userspace (#333)
  • Add a reboot command (#328)
  • Add binaries (#350)
  • Add lazy allocation (#275)
  • Add shell aliases (#357)
  • Add shell globbing (#352)
  • Add shell variables (#348)
  • Add socket command (#341)
  • Add tilde expansion to shell (#367)
  • Add time command (#346)
  • Add userspace entry point macro (#354)
  • Build only moros image (#340)
  • Executable loading (#349)
  • Fix args ptr alignment (#359)
  • Fix device reading (#329)
  • Fix issues with process alloc (#327)
  • Fix variables expansion (#370)
  • Improve FUSE driver with write and delete (#292)
  • Improve Lisp (#344)
  • Improve dhcp command (#335)
  • Improve http command (#365)
  • Improve lisp (#362)
  • Improve regex for redirections (#356)
  • Read command line args from userspace programs (#351)
  • Refactor code (#330)
  • Refactor serial (#336)
  • Remove superfluous use of lazy static (#364)
  • Replace ChaCha RNG by HC-128 (#338)
  • Replace clock syscalls with device files (#345)
  • Rewrite network interface (#334)
  • Store current direction in DIR shell variable (#355)
  • Upgrade linked list allocator (#363)
  • Use exit code to set status var (#360)
  • Bump libm from 0.2.2 to 0.2.3 (#372)
  • Bump object from 0.28.3 to 0.28.4 (#339)
  • Bump object from 0.28.4 to 0.29.0 (#358)
  • Bump raw-cpuid from 10.3.0 to 10.4.0 (#375)
  • Bump smoltcp from 0.8.0 to 0.8.1 (#342)
  • Bump spin from 0.9.3 to 0.9.4 (#369)
  • Bump vte from 0.10.1 to 0.11.0 (#371)
  • Bump x86_64 from 0.14.9 to 0.14.10 (#368)

0.7.1 (2022-04-10)

  • Add 2048 game (#295)
  • Add Box to process data (#306)
  • Add directory support to userspace (#303)
  • Autocomplete binary path (#324)
  • Display RTC during boot (#298)
  • Fix various issues while reading files (#307)
  • Handle backtab key for backward autocompletion (#321)
  • Improve ATA driver (#286)
  • Improve documentation (#294)
  • Improve file reading (#296)
  • Improve help (#291)
  • Pin rustc version (#287)
  • Refactor code (#288)
  • Refactor network commands (#322)
  • Update rust toolchain (#320)
  • Upgrade smoltcp (#293)
  • Bump aml from 0.16.0 to 0.16.1 (#297)
  • Bump bootloader from 0.9.19 to 0.9.20 (#290)
  • Bump bootloader from 0.9.20 to 0.9.21 (#302)
  • Bump hmac from 0.12.0 to 0.12.1 (#313)
  • Bump libm from 0.2.1 to 0.2.2 (#309)
  • Bump nom from 7.1.0 to 7.1.1 (#315)
  • Bump object from 0.27.1 to 0.28.3 (#305)
  • Bump pbkdf2 from 0.10.0 to 0.11.0 (#316)
  • Bump rand from 0.8.4 to 0.8.5 (#310)
  • Bump rand_chacha from 0.3.0 to 0.3.1 (#175)
  • Bump raw-cpuid from 10.2.0 to 10.3.0 (#317)
  • Bump sha2 from 0.10.0 to 0.10.1 (#299)
  • Bump sha2 from 0.10.1 to 0.10.2 (#312)
  • Bump uart_16550 from 0.2.15 to 0.2.16 (#301)
  • Bump uart_16550 from 0.2.16 to 0.2.17 (#318)
  • Bump x86_64 from 0.14.6 to 0.14.7 (#289)
  • Bump x86_64 from 0.14.7 to 0.14.8 (#308)
  • Bump x86_64 from 0.14.8 to 0.14.9 (#319)

0.7.0 (2021-12-12)

  • Add ELF loader (#248)
  • Add basic userspace (#228)
  • Add calc command (#263)
  • Add dynamical disk information (#252)
  • Add file syscalls (#242)
  • Add pci command and switch IDE controllers to compatible mode (#276)
  • Add process table and exit syscall (#268)
  • Add partial rust binaries support (#255)
  • Add shell redirections (#262)
  • Add spawn syscall (#251)
  • Add time module to API (#284)
  • Add website (#261)
  • Extend lisp language (#278)
  • Fix DNS address (#279)
  • Fix VGA issues with real hardware (#258)
  • Improve UTF-8 support (#267)
  • Improve user experience (#274)
  • Remove array-macro dependency (#253)
  • Rewrite Lisp parser with Nom (#277)
  • Bump acpi from 3.1.0 to 4.0.0 (#243)
  • Bump acpi from 4.0.0 to 4.1.0 (#265)
  • Bump aml from 0.14.0 to 0.15.0 (#236)
  • Bump aml from 0.15.0 to 0.16.0 (#241)
  • Bump linked_list_allocator from 0.9.0 to 0.9.1 (#256)
  • Bump pbkdf2 from 0.8.0 to 0.9.0 (#239)
  • Bump pic8259 from 0.10.1 to 0.10.2 (#235)
  • Bump sha2 from 0.9.5 to 0.9.6 (#240)
  • Bump sha2 from 0.9.6 to 0.9.8 (#244)
  • Bump x86_64 from 0.14.4 to 0.14.5 (#245)
  • Bump x86_64 from 0.14.5 to 0.14.6 (#247)

0.6.0 (2021-08-21)

  • Add beep command (#234)
  • Add Lisp interpreter (#207)
  • Add VGA font loader (#201)
  • Add VGA palette loader (#203)
  • Add chess game (#230)
  • Add file offset (#206)
  • Add keyboard layout change at runtime (#226)
  • Add regular expression engine (#222)
  • Add syscalls (#196)
  • Add time to dir entry (#215)
  • Improve baremetal experience (#232)
  • Fix clippy warnings (#214)
  • Move kernel code to api (#204)
  • Refactor editor (#221)
  • Refactor filesystem (#225)
  • Refactor line editing (#212)
  • Refactor print macros (#208)
  • Remove volatile crate (#219)
  • Update acpi crate from v2.3.1 to v3.1.0 (#218)
  • Update crypto crates (#216)
  • Update raw-cpuid from v9.0.0 to v10.0.0 (#220)
  • Use CSI for key events (#210)
  • Bump aml from 0.13.0 to 0.14.0 (#227)
  • Bump bootloader from 0.9.18 to 0.9.19 (#233)
  • Bump raw-cpuid from 10.0.0 to 10.2.0 (#224)
  • Bump spin from 0.9.1 to 0.9.2 (#202)
  • Bump x86_64 from 0.14.3 to 0.14.4 (#209)

0.5.1 (2021-06-27)

  • Add missing RX stats to PCNET driver (#124)
  • Disable rand_chacha with debug_assertions (#120)
  • Fix PCNET BCNT computation (#122)
  • Fix compilation errors (#184)
  • Migrate from TravisCI to GitHub Actions (#131)
  • Update aml crate (#195)
  • Update smoltcp crate (#194)
  • Bump acpi from 2.2.0 to 2.3.1 (#180)
  • Bump array-macro from 1.0.5 to 2.1.0 (#188)
  • Bump rand from 0.8.3 to 0.8.4 (#176)
  • Bump rand_core from 0.6.1 to 0.6.3 (#185)
  • Bump raw-cpuid from 8.1.2 to 9.0.0 (#191)
  • Bump spin from 0.7.1 to 0.9.1 (#181)
  • Bump time from 0.2.25 to 0.2.27 (#186)
  • Bump vte from 0.10.0 to 0.10.1 (#174)

0.5.0 (2020-11-15)

  • Add ACPI shutdown (#111)
  • Add a web server (#114)
  • Add nanowait busy loop with nanoseconds precision (#78)
  • Add new date and env commands (#112)
  • Add new mem command (#113)
  • Add pcnet driver (#82)
  • Add tests (#118)
  • Improve text editor (#109)
  • Remove cargo xbuild (#83)
  • Remove dependency on rlibc (#115)
  • Use ChaCha20 RNG (#116)

0.4.0 (2020-07-29)

  • Add ANSI Style type (#76)
  • Colorize user interface (#69)
  • Fix ATA busy loop hang
  • Fix detection of magic superblock
  • Handle RTC interrupts (#71)
  • Improve ATA reset
  • Improve console (#74)
  • Improve editor (#77)
  • Improve installation and documentation (#73)
  • Optimize shell printing (#75)
  • Update dependencies (#70)

0.3.1 (2020-04-13)

  • Update ATA driver (#41)
  • Update dependencies (#42)

0.3.0 (2020-02-16)

  • Add PhysBuf for DMA (#16)
  • Add geotime command (#14)
  • Add process struct (#19)
  • Add tcp command (#17)
  • Improve filesystem (#24)
  • Improve shell history (#18)
  • Use VGA color palette (#15)

0.2.0 (2020-02-02)

  • Add autocompletion to shell
  • Add heap allocation
  • Add network stack

0.1.0 (2020-01-18)

  • Add ATA PIO mode
  • Add PCI enumeration
  • Add RTC clock
  • Add editor
  • Add filesystem
  • Add shell

0.0.0 (2019-12-28)

  • Start MOROS project