Skip to content

First version release #210

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Feb 6, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 0 additions & 2 deletions .github/workflows/benchmark.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,6 @@ jobs:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v2
- name: ccache
uses: hendrikmuhs/[email protected]
- name: Install ICU
run: sudo apt-get install -y libicu-dev pkg-config
- name: Install curl
Expand Down
2 changes: 0 additions & 2 deletions .github/workflows/ubuntu-sanitized.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,6 @@ jobs:
shared: [ON, OFF]
steps:
- uses: actions/checkout@v3
- name: ccache
uses: hendrikmuhs/[email protected]
- name: Install ICU
run: sudo apt-get install -y libicu-dev pkg-config
- name: Setup Ninja
Expand Down
2 changes: 0 additions & 2 deletions .github/workflows/ubuntu.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,6 @@ jobs:
cxx: [g++-12, clang++-14]
steps:
- uses: actions/checkout@v3
- name: ccache
uses: hendrikmuhs/[email protected]
- name: Install ICU
run: sudo apt-get install -y libicu-dev pkg-config
- name: Setup Ninja
Expand Down
2 changes: 0 additions & 2 deletions .github/workflows/ubuntu_install.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,6 @@ jobs:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- name: ccache
uses: hendrikmuhs/[email protected]
- name: Install ICU
run: sudo apt-get install -y libicu-dev pkg-config
- name: Setup Ninja
Expand Down
2 changes: 0 additions & 2 deletions .github/workflows/ubuntu_old.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,6 @@ jobs:
cxx: [g++-9, clang++-10]
steps:
- uses: actions/checkout@v3
- name: ccache
uses: hendrikmuhs/[email protected]
- name: Clear the cache
run: rm -r -f dependencies
- name: Install ICU
Expand Down
2 changes: 0 additions & 2 deletions .github/workflows/ubuntu_pedantic.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,6 @@ jobs:
shared: [ON, OFF]
steps:
- uses: actions/checkout@v3
- name: ccache
uses: hendrikmuhs/[email protected]
- name: Install ICU
run: sudo apt-get install -y libicu-dev pkg-config
- name: Setup Ninja
Expand Down
4 changes: 1 addition & 3 deletions .github/workflows/visual_studio.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,6 @@ jobs:
steps:
- name: checkout
uses: actions/checkout@v3
- name: ccache
uses: hendrikmuhs/[email protected]
- name: Configure
run: |
cmake -G "${{matrix.gen}}" -A ${{matrix.arch}} -B build
Expand All @@ -29,4 +27,4 @@ jobs:
- name: Run Release tests
run: |
cd build
ctest -C Release --output-on-failure
ctest -C Release --output-on-failure
2 changes: 0 additions & 2 deletions .github/workflows/visual_studio_clang.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,6 @@ jobs:
steps:
- name: checkout
uses: actions/checkout@v3
- name: ccache
uses: hendrikmuhs/[email protected]
- name: Configure
run: |
cmake -G "${{matrix.gen}}" -A ${{matrix.arch}} -T ClangCL -B build
Expand Down
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,8 @@ __pycache__
cmake-build-debug

.cache
docs
docs/html
docs/theme

# Generated using only the Github workflow
benchmark_result.json
Expand Down
8 changes: 4 additions & 4 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,17 @@ cmake_minimum_required(VERSION 3.16)
project(ada
DESCRIPTION "Fast spec-compliant URL parser"
LANGUAGES C CXX
VERSION 0.1.0
VERSION 1.0.0
)

set(ADA_LIB_VERSION "1.0.0" CACHE STRING "ada library version")
set(ADA_LIB_SOVERSION "1" CACHE STRING "ada library soversion")

include(GNUInstallDirs)

include(CTest)
include(cmake/ada-flags.cmake)

set(ADA_LIB_VERSION "0.1.0" CACHE STRING "ada library version")
set(ADA_LIB_SOVERSION "1" CACHE STRING "ada library soversion")

set(ADA_SOURCE_DIR src)

add_subdirectory(src)
Expand Down
19 changes: 19 additions & 0 deletions docs/RELEASE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Release Document

## Preparation

In order to release a new version of Ada, please update the
following documents:

- [CmakeLists.txt](../CmakeLists.txt)
- [Doxygen](../doxygen)
- [ada-version.h](../include/ada/ada-version.h)

## Release

- Run amalgation script using `./singleheader/amalgamate.py`
- Create a Github release with following format: `v1.0.0`
- Upload the following documents to the release
- `./singleheader/ada.h`
- `./singleheader/ada.cpp`
- `./singleheader/singleheader.zip`
84 changes: 84 additions & 0 deletions docs/doxygen/header.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
<!-- HTML header for doxygen 1.9.6-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="$langISO">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen $doxygenversion"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<!--BEGIN PROJECT_NAME--><title>$projectname: $title</title><!--END PROJECT_NAME-->
<!--BEGIN !PROJECT_NAME--><title>$title</title><!--END !PROJECT_NAME-->
<link href="$relpath^tabs.css" rel="stylesheet" type="text/css"/>
<!--BEGIN DISABLE_INDEX-->
<!--BEGIN FULL_SIDEBAR-->
<script type="text/javascript">var page_layout=1;</script>
<!--END FULL_SIDEBAR-->
<!--END DISABLE_INDEX-->
<script type="text/javascript" src="$relpath^jquery.js"></script>
<script type="text/javascript" src="$relpath^dynsections.js"></script>
<script type="text/javascript" src="$relpath^doxygen-awesome-darkmode-toggle.js"></script>
<script type="text/javascript" src="$relpath^doxygen-awesome-fragment-copy-button.js"></script>
<script type="text/javascript" src="$relpath^doxygen-awesome-paragraph-link.js"></script>
<script type="text/javascript" src="$relpath^doxygen-awesome-interactive-toc.js"></script>
<script type="text/javascript">
DoxygenAwesomeDarkModeToggle.init()
DoxygenAwesomeFragmentCopyButton.init()
DoxygenAwesomeParagraphLink.init()
DoxygenAwesomeInteractiveToc.init()
</script>
$treeview
$search
$mathjax
$darkmode
<link href="$relpath^$stylesheet" rel="stylesheet" type="text/css" />
$extrastylesheet
</head>
<body>
<!--BEGIN DISABLE_INDEX-->
<!--BEGIN FULL_SIDEBAR-->
<div id="side-nav" class="ui-resizable side-nav-resizable"><!-- do not remove this div, it is closed by doxygen! -->
<!--END FULL_SIDEBAR-->
<!--END DISABLE_INDEX-->

<div id="top"><!-- do not remove this div, it is closed by doxygen! -->

<!--BEGIN TITLEAREA-->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<!--BEGIN PROJECT_LOGO-->
<td id="projectlogo"><img alt="Logo" src="$relpath^$projectlogo"/></td>
<!--END PROJECT_LOGO-->
<!--BEGIN PROJECT_NAME-->
<td id="projectalign">
<div id="projectname">$projectname<!--BEGIN PROJECT_NUMBER--><span id="projectnumber">&#160;$projectnumber</span><!--END PROJECT_NUMBER-->
</div>
<!--BEGIN PROJECT_BRIEF--><div id="projectbrief">$projectbrief</div><!--END PROJECT_BRIEF-->
</td>
<!--END PROJECT_NAME-->
<!--BEGIN !PROJECT_NAME-->
<!--BEGIN PROJECT_BRIEF-->
<td>
<div id="projectbrief">$projectbrief</div>
</td>
<!--END PROJECT_BRIEF-->
<!--END !PROJECT_NAME-->
<!--BEGIN DISABLE_INDEX-->
<!--BEGIN SEARCHENGINE-->
<!--BEGIN !FULL_SIDEBAR-->
<td>$searchbox</td>
<!--END !FULL_SIDEBAR-->
<!--END SEARCHENGINE-->
<!--END DISABLE_INDEX-->
</tr>
<!--BEGIN SEARCHENGINE-->
<!--BEGIN FULL_SIDEBAR-->
<tr><td colspan="2">$searchbox</td></tr>
<!--END FULL_SIDEBAR-->
<!--END SEARCHENGINE-->
</tbody>
</table>
</div>
<!--END TITLEAREA-->
<!-- end header part -->
14 changes: 9 additions & 5 deletions doxygen
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ PROJECT_NAME = "Ada"
# could be handy for archiving the generated documentation or if some version
# control system is used.

PROJECT_NUMBER = "0.1.0"
PROJECT_NUMBER = "1.0.0"

# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a
Expand Down Expand Up @@ -1017,7 +1017,7 @@ RECURSIVE = YES
# Note that relative paths are relative to the directory from which doxygen is
# run.

EXCLUDE = benchmarks, tests, Testing, tools, build, docs, include/ada/expected.h, singleheader, include/ada/log.h
EXCLUDE = benchmarks, tests, Testing, tools, build, docs/html, docs/theme, include/ada/expected.h, singleheader, include/ada/log.h

# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
# directories that are symbolic links (a Unix file system feature) are excluded
Expand Down Expand Up @@ -1290,7 +1290,7 @@ HTML_FILE_EXTENSION = .html
# of the possible markers and block names see the documentation.
# This tag requires that the tag GENERATE_HTML is set to YES.

HTML_HEADER =
HTML_HEADER = docs/doxygen/header.html

# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each
# generated HTML page. If the tag is left blank doxygen will generate a standard
Expand Down Expand Up @@ -1341,7 +1341,11 @@ HTML_EXTRA_STYLESHEET = docs/theme/doxygen-awesome.css \
# files will be copied as-is; there are no commands or markers available.
# This tag requires that the tag GENERATE_HTML is set to YES.

HTML_EXTRA_FILES = docs/theme/doxygen-awesome-darkmode-toggle.js
HTML_EXTRA_FILES = docs/theme/doxygen-awesome-darkmode-toggle.js \
docs/theme/doxygen-awesome-sidebar-only-darkmode-toggle.css \
docs/theme/doxygen-awesome-fragment-copy-button.js \
docs/theme/doxygen-awesome-paragraph-link.js \
docs/theme/doxygen-awesome-interactive-toc.js

# The HTML_COLORSTYLE tag can be used to specify if the generated HTML output
# should be rendered with a dark or light theme.
Expand Down Expand Up @@ -1894,7 +1898,7 @@ EXTRA_SEARCH_MAPPINGS =
# If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output.
# The default value is: YES.

GENERATE_LATEX = YES
GENERATE_LATEX = NO

# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. If a
# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
Expand Down
6 changes: 3 additions & 3 deletions include/ada/ada_version.h
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@
#ifndef ADA_ADA_VERSION_H
#define ADA_ADA_VERSION_H

#define ADA_VERSION "0.1.0"
#define ADA_VERSION "1.0.0"

namespace ada {

enum {
ADA_VERSION_MAJOR = 0,
ADA_VERSION_MINOR = 1,
ADA_VERSION_MAJOR = 1,
ADA_VERSION_MINOR = 0,
ADA_VERSION_REVISION = 0,
};

Expand Down