Skip to content

Commit

Permalink
Merge branch 'main' into boost_regex
Browse files Browse the repository at this point in the history
  • Loading branch information
zufuliu committed Jan 1, 2024
2 parents 7690c1a + 632a09e commit 4f3b3d6
Show file tree
Hide file tree
Showing 98 changed files with 957 additions and 673 deletions.
7 changes: 6 additions & 1 deletion .clang-tidy
Original file line number Diff line number Diff line change
@@ -1,18 +1,20 @@
---
# https://clang.llvm.org/extra/clang-tidy/index.html
# https://clang.llvm.org/extra/clang-tidy/checks/list.html
# --enable-check-profile
# Checks: -*,clang-diagnostic-*,
Checks: >
clang-diagnostic-*,
clang-analyzer-*,
bugprone-*,
cert-*,
cppcoreguidelines-slicing,
modernize-*,
performance-*,
readability-*,
misc-*,
-clang-analyzer-security.insecureAPI.strcpy,
-clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling,
-clang-analyzer-optin.core.EnumCastOutOfRange,
-bugprone-easily-swappable-parameters,
-bugprone-implicit-widening-of-multiplication-result,
-bugprone-narrowing-conversions,
Expand All @@ -22,6 +24,7 @@ Checks: >
-modernize-macro-to-enum,
-modernize-redundant-void-arg,
-modernize-use-nodiscard,
-modernize-use-std-numbers,
-modernize-use-trailing-return-type,
-modernize-use-using,
-performance-enum-size,
Expand All @@ -45,6 +48,8 @@ Checks: >
# -readability-else-after-return,
# -readability-named-parameter,
# -readability-simplify-boolean-expr,
# -bugprone-reserved-identifier,
# -misc-const-correctness,

WarningsAsErrors: ''
HeaderFilterRegex: '.*'
Expand Down
71 changes: 38 additions & 33 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,27 +46,27 @@ jobs:
CALL "build\VS2017\build.bat" Build ARM Release 1
CALL "build\make_zip.bat" MSVC ARM Release 1

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_MSVC2019_i18n_x64
path: 'build\Notepad2_i18n_x64_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_MSVC2019_i18n_Win32
path: 'build\Notepad2_i18n_Win32_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_MSVC2019_i18n_AVX2
path: 'build\Notepad2_i18n_AVX2_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_MSVC2019_i18n_ARM64
path: 'build\Notepad2_i18n_ARM64_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_MSVC2019_en_ARM
path: 'build\Notepad2_ARM_*.zip'
Expand Down Expand Up @@ -126,27 +126,27 @@ jobs:
CALL "build\VS2017\build.bat" Build ARM Release 1
CALL "build\make_zip.bat" MSVC ARM Release 1

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_MSVC2022_i18n_x64
path: 'build\Notepad2_i18n_x64_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_MSVC2022_i18n_Win32
path: 'build\Notepad2_i18n_Win32_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_MSVC2022_i18n_AVX2
path: 'build\Notepad2_i18n_AVX2_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_MSVC2022_i18n_ARM64
path: 'build\Notepad2_i18n_ARM64_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_MSVC2022_en_ARM
path: 'build\Notepad2_ARM_*.zip'
Expand Down Expand Up @@ -185,22 +185,22 @@ jobs:
CALL "build\VS2017\build.bat" Build ARM64 LLVMRelease 1
CALL "build\make_zip.bat" LLVM ARM64 Release 1

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_Clang_MSVC2019_en_x64
path: 'build\Notepad2_LLVM_x64_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_Clang_MSVC2019_en_Win32
path: 'build\Notepad2_LLVM_Win32_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_Clang_MSVC2019_en_AVX2
path: 'build\Notepad2_LLVM_AVX2_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_Clang_MSVC2019_en_ARM64
path: 'build\Notepad2_LLVM_ARM64_*.zip'
Expand Down Expand Up @@ -255,22 +255,22 @@ jobs:
CALL "build\VS2017\build.bat" Build ARM64 LLVMRelease 1
CALL "build\make_zip.bat" LLVM ARM64 Release 1

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_Clang_MSVC2022_en_x64
path: 'build\Notepad2_LLVM_x64_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_Clang_MSVC2022_en_Win32
path: 'build\Notepad2_LLVM_Win32_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_Clang_MSVC2022_en_AVX2
path: 'build\Notepad2_LLVM_AVX2_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_Clang_MSVC2022_en_ARM64
path: 'build\Notepad2_LLVM_ARM64_*.zip'
Expand All @@ -290,51 +290,56 @@ jobs:
CALL "build\install_mingw.bat" llvm

- name: Clang x64 Release
continue-on-error: true
run: |
CALL "build\mingw\build.bat" llvm x86_64
CALL "build\make_zip.bat" Clang x64 Release 1

- name: Clang Win32 Release
continue-on-error: true
run: |
CALL "build\mingw\build.bat" llvm i686
CALL "build\make_zip.bat" Clang Win32 Release 1

- name: Clang AVX2 Release
continue-on-error: true
run: |
CALL "build\mingw\build.bat" llvm AVX2
CALL "build\make_zip.bat" Clang AVX2 Release 1

- name: Clang ARM64 Release
continue-on-error: true
run: |
CALL "build\mingw\build.bat" llvm aarch64
CALL "build\make_zip.bat" Clang ARM64 Release 1

- name: Clang ARM Release
continue-on-error: true
run: |
CALL "build\mingw\build.bat" llvm armv7
CALL "build\make_zip.bat" Clang ARM Release 1

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_llvm_mingw_en_x64
path: 'build\Notepad2_Clang_x64_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_llvm_mingw_en_Win32
path: 'build\Notepad2_Clang_Win32_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_llvm_mingw_en_AVX2
path: 'build\Notepad2_Clang_AVX2_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_llvm_mingw_en_ARM64
path: 'build\Notepad2_Clang_ARM64_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_llvm_mingw_en_ARM
path: 'build\Notepad2_Clang_ARM_*.zip'
Expand Down Expand Up @@ -373,22 +378,22 @@ jobs:
CALL "build\mingw\build.bat" ucrt AVX2 Clang
CALL "build\make_zip.bat" Clang AVX2 Release 1

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_GCC_en_x64_ucrt
path: 'build\Notepad2_GCC_x64_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_GCC_en_AVX2_ucrt
path: 'build\Notepad2_GCC_AVX2_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_Clang_mingw_en_x64_ucrt
path: 'build\Notepad2_Clang_x64_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_Clang_mingw_en_AVX2_ucrt
path: 'build\Notepad2_Clang_AVX2_*.zip'
Expand Down Expand Up @@ -427,22 +432,22 @@ jobs:
CALL "build\mingw\build.bat" x86_64 AVX2 Clang
CALL "build\make_zip.bat" Clang AVX2 Release 1

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_GCC_en_x64
path: 'build\Notepad2_GCC_x64_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_GCC_en_AVX2
path: 'build\Notepad2_GCC_AVX2_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_Clang_mingw_en_x64
path: 'build\Notepad2_Clang_x64_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_Clang_mingw_en_AVX2
path: 'build\Notepad2_Clang_AVX2_*.zip'
Expand Down Expand Up @@ -471,12 +476,12 @@ jobs:
CALL "build\mingw\build.bat" i686 Clang
CALL "build\make_zip.bat" Clang Win32 Release 1

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_GCC_en_Win32
path: 'build\Notepad2_GCC_Win32_*.zip'

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Notepad2_Clang_mingw_en_Win32
path: 'build\Notepad2_Clang_Win32_*.zip'
8 changes: 4 additions & 4 deletions License.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ Notepad2, metapath and Notepad2-mod are licensed under the BSD 3-Clause License
https://www.flos-freeware.ch
https://xhmikosr.github.io/notepad2-mod/

metapath Copyright © 1996-2012 Florian Balmer, 2011-2023 Zufu Liu and All contributors.
Notepad2 Copyright © 2004-2012 Florian Balmer, 2011-2023 Zufu Liu and All contributors.
metapath Copyright © 1996-2012 Florian Balmer, 2011-2024 Zufu Liu and All contributors.
Notepad2 Copyright © 2004-2012 Florian Balmer, 2011-2024 Zufu Liu and All contributors.
Notepad2-mod Copyright © 2010-2017 XhmikosR and All contributors.
All rights reserved.

Expand Down Expand Up @@ -45,7 +45,7 @@ License for Lexilla, Scintilla, and SciTE
https://www.scintilla.org/
https://www.scintilla.org/License.txt

Copyright 1998-2023 by Neil Hodgson <[email protected]>
Copyright 1998-2024 by Neil Hodgson <[email protected]>

All Rights Reserved

Expand Down Expand Up @@ -229,7 +229,7 @@ https://github.com/JuliaLang/julia/blob/master/LICENSE.md

The Julia language is licensed under the MIT License. The "language" consists of the compiler (the contents of src/), most of the standard library (base/), and some utilities (most of the rest of the files in this repository). See below for exceptions.

Copyright (c) 2009-2023: Jeff Bezanson, Stefan Karpinski, Viral B. Shah, and other contributors:
Copyright (c) 2009-2024: Jeff Bezanson, Stefan Karpinski, Viral B. Shah, and other contributors:

https://github.com/JuliaLang/julia/contributors

Expand Down
6 changes: 5 additions & 1 deletion Notepad2.cppcheck
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,14 @@
<project version="1">
<platform>win64</platform>
<importproject>build/VS2017/Notepad2.sln</importproject>
<analyze-all-vs-configs>true</analyze-all-vs-configs>
<analyze-all-vs-configs>false</analyze-all-vs-configs>
<check-headers>true</check-headers>
<check-unused-templates>false</check-unused-templates>
<max-ctu-depth>10</max-ctu-depth>
<max-template-recursion>100</max-template-recursion>
<vs-configurations>
<config>Release</config>
</vs-configurations>
<libraries>
<library>windows</library>
</libraries>
Expand Down
2 changes: 1 addition & 1 deletion appveyor.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
version: '4.23.x.{build}'
version: '4.24.x.{build}'

image:
- Visual Studio 2017
Expand Down
29 changes: 29 additions & 0 deletions build/Toolset.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
import os.path
import glob
import json
import re
import datetime

toolset_msvc = """
<PlatformToolset Condition="'$(VisualStudioVersion)'=='15.0'">v141</PlatformToolset>
Expand Down Expand Up @@ -43,6 +45,32 @@ def update_all_project_toolset():
for path in glob.glob('../locale/*/*.vcxproj'):
update_project_toolset(path)

def update_copyright_year(path, year):
with open(path, encoding='utf-8', newline='\n') as fd:
doc = fd.read()
updated = re.sub(rf'(\d{{4}}-){year - 1}', lambda m: f'{m.group(1)}{year}', doc)
if updated != doc:
print('update:', path)
with open(path, 'w', encoding='utf-8', newline='\n') as fp:
fp.write(updated)

def update_all_copyright_year():
year = datetime.datetime.now().year
print('update copyright year to:', year)
for path in [
'../doc/License.txt',
'../metapath/doc/License.txt',
'../metapath/src/metapath.rc',
'../metapath/src/version.h',
'../scintilla/License.txt',
'../src/Notepad2.rc',
'../src/Version.h',
'../License.txt']:
update_copyright_year(path, year)

for path in glob.glob('../locale/*/*.rc'):
update_copyright_year(path, year)

def dump_static_linked_function(path):
result = {}
with open(path, encoding='utf-8') as fd:
Expand Down Expand Up @@ -157,6 +185,7 @@ def include_path(folder, path):
fd.write(json.dumps(commands, indent='\t', ensure_ascii=False))

#update_all_project_toolset()
#update_all_copyright_year()
#dump_static_linked_function('bin/Release/x64/metapath.map')
#dump_static_linked_function('bin/Release/x64/Notepad2.map')
generate_compile_commands('x86_64-pc-windows-msvc', cxx=True)
Expand Down
Loading

0 comments on commit 4f3b3d6

Please sign in to comment.