Skip to content

Releases: aafulei/cpp-today

Version 0.3.0

20 May 12:22

Choose a tag to compare

Released on 2025-05-20.

macOS

# download from assets:
#   today-v0.3.0-macos
#   today-v0.3.0-man.1

# run program
cd ~/Downloads                                   # or wherever you saved it
mv -v ./today-v0.3.0-macos ./today               # rename
chmod u+x ./today                                # make executable
xattr -dv com.apple.quarantine ./today           # remove security block
./today --version                                # check version
./today                                          # run

# install program
sudo cp -v ./today /usr/local/bin/               # or wherever you like
today                                            # verify

# view man page
cd ~/Downloads                                   # or wherever you saved it
mv -v ./today-v0.3.0-man.1 ./today.1             # rename
man ./today.1                                    # preview

# install man page
sudo cp -v ./today.1 /usr/local/share/man/man1/  # or wherever you like
man today                                        # verify

Linux

# download from assets:
#   today-v0.3.0-linux
#   today-v0.3.0-man.1

# run program
cd ~/Downloads                                   # or wherever you saved it
mv -v ./today-v0.3.0-linux ./today               # rename
chmod u+x ./today                                # make executable
./today --version                                # check version
./today                                          # run

# install program
sudo cp -v ./today /usr/local/bin/               # or wherever you like
today                                            # verify

# view man page
cd ~/Downloads                                   # or wherever you saved it
mv -v ./today-v0.3.0-man.1 ./today.1             # rename
man ./today.1                                    # preview

# install man page
sudo cp -v ./today.1 /usr/local/share/man/man1/  # or wherever you like
man today                                        # verify

Changelog - 0.3.0 - 2025-05-20

Managing a single source of truth between program and man page.

Added

  • Source code:
    • VERSION macro
    • --help and --version options
  • Build system:
    • make man
    • make dist
    • make install/uninstall with man page
    • make show-version
    • make run with ARGS for command-line arguments
    • Banners to show information about current stages
  • Project website:
    • User Guide section
    • Technical Details section
      • Single Source of Truth subsection
      • Makefile in Detail subsection
      • Ready for Deployment subsection
    • Enable features for code copy, footer, navigation
    • Enable extensions for code highlight
  • Manual page:
    • Man page with conversion from help2man
  • Assets:
    • Mermaid diagrams for project website and code reference
    • Screenshots of man page and help info
  • Project information:
    • Changelog.md:
      • Version 0.3.0
    • VERSION as the definitive source for software version

Changed

  • Build system:
    • Do not use BINSTAMP; just use order-only prerequisite on BIN_DIR

Version 0.2.0

20 May 12:18

Choose a tag to compare

Released on 2025-05-20.

macOS

# run program
cd ~/Downloads                            # or wherever you saved it
mv -v ./today-v0.2.0-macos ./today        # rename
chmod u+x ./today                         # make executable
xattr -dv com.apple.quarantine ./today    # remove security block
./today                                   # run

# install program
sudo cp -v ./today /usr/local/bin/        # or wherever you like
today                                     # verify

Linux

# run program
cd ~/Downloads                            # or wherever you saved it
mv -v ./today-v0.2.0-linux ./today        # rename
chmod u+x ./today                         # make executable
./today                                   # run

# install program
sudo cp -v ./today /usr/local/bin/        # or wherever you like
today                                     # verify

Changelog - 0.2.0 - 2025-05-20

Integrated with Doxygen for source code documentation.

Added

  • Source code:
    • Doxygen-style comments
  • Testing:
    • test.sh
  • Build system:
    • Full support of release and debug branches
    • make test
    • make install/uninstall
    • make show-os
    • make show-compiler
  • Automation:
    • GitHub Actions:
      • build.yml for automatic building workflow on latest macOS and Ubuntu
      • test.yml for automatic testing workflow on latest macOS and Ubuntu
      • check.yml for automatic code format check workflow on latest macOS
  • Project website:
    • MkDocs with the Material theme:
      • Getting Start section
      • Testing section
      • Build System section
  • Code reference:
    • Doxygen:
      • Doxyfile for docs generation
      • DoxygenLayout.xml for website layout
  • Assets:
    • .svg images for CppToday logo and icon
    • .css files to customize website appearance
  • Project information:
    • LICENSE for software license (MIT)
    • .gitignore
      • Ignore site/ and venv/
      • Ignore doxygen, original, backup files
    • CHANGELOG.md for Changelog:
      • Version 0.2.0
      • Version 0.1.0

Version 0.1.0

13 May 10:00

Choose a tag to compare

Released on 2025-05-13.

macOS

cd ~/Downloads                            # or wherever you saved it
mv -v ./today-v0.1.0-macos ./today        # rename
chmod u+x ./today                         # make executable
xattr -dv com.apple.quarantine ./today    # remove security block
./today                                   # run

Linux

cd ~/Downloads                            # or wherever you saved it
mv -v ./today-v0.1.0-linux ./today        # rename
chmod u+x ./today                         # make executable
./today                                   # run

Changelog - 0.1.0 - 2025-05-13

Initial release of the today program.

Added

  • Source code:
    • today.cpp - Initial release of the today program
  • Build system:
    • Makefile - Simple Make-based build system
  • Code formatting configuration:
    • .clang-format for Clang Format
  • Editor tooling support:
    • compile_flags.txt for clangd
  • Project information:
    • .gitignore for patterns to ignore by Git