Граф коммитов

13 Коммитов

Автор SHA1 Сообщение Дата
Stephan T. Lavavej d49e401dad
Use constexpr is_sorted, add charconv tests, update comments (#1278) 2020-09-22 17:18:44 -07:00
Stephan T. Lavavej c9a43aa819
README improvements, minor cleanups (#1226)
Co-authored-by: mnatsuhara <46756417+mnatsuhara@users.noreply.github.com>
2020-08-26 01:18:26 -07:00
Casey Carter 7a7602cb0f
Limit line length to 120 columns (#1214)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2020-08-21 19:53:55 -07:00
Stephan T. Lavavej b2f1556d2a
Update .clang-format for Clang 10 (#1075)
* Remove unnecessary comments in ranges tests.

We taught clang-format how to sort like this automatically.

* Fix x86 compiler error in stljobs.h.

This never compiled for x86 where size_t and SIZE_T are different types.

* Update .clang-format for Clang 10.

AllowShortBlocksOnASingleLine changed from false/true to
Never/Empty/Always. We still want the default of Never, as Empty
appears to misbehave.

DeriveLineEnding was added, defaulting to true. We want to disable line
ending auto-detection.

SortPriority was added. Its documentation is difficult to understand,
but it can be used to group includes together while modifying their
otherwise-lexicographic ordering. Here, I'm using it to group WinSDK
includes together, while still sorting WinIoCtl.h last.

IncludeIsMainSourceRegex was added. This doesn't appear to be relevant
to us.

IndentGotoLabels was added. We've avoided goto.

SpaceInEmptyBlock was added. We prefer the default of no space.

SpacesInConditionalStatement was added. We definitely prefer the
default of no space.

SpaceBeforeSquareBrackets was added. Again, we definitely prefer the
default of no space.

The Standard option was overhauled. Previously, Cpp11 meant "use the
latest supported standard". That was confusing, so it has been
deprecated in favor of Latest.

UseCRLF was added. We currently use CRLF for all files. (Previously,
validate.cpp would detect LF files, but clang-format wouldn't fix
them.)

* In .clang-format, delete empty lines and move comment.

The empty lines were intended to make it easier to see customized
options, but they were actually making it harder to diff the default
config against our config.

Move the StatementMacros comment next to our customized settings,
and rewrap it.

* Reformat filesystem.cpp.
2020-07-27 11:38:12 -07:00
Stephan T. Lavavej 2c441c7e03
Improve build instructions and cleanup code (#764)
Fixes #518.
2020-04-30 02:49:14 -07:00
Stephan T. Lavavej 7a2ae687bc
validate.cpp: Validate paths for length and spaces (#699) 2020-04-09 22:54:59 -07:00
Sumit Bhardwaj 21944c188d
Add static_assert to is_sorted() for the lookup tables in validate.cpp (#650)
Co-authored-by: Sumit Bhardwaj <subhardw@microsoft.com>
2020-04-01 11:42:12 -07:00
Billy O'Neal ff83542af4
Update to Clang 10 and Visual Studio 2019 version 16.6p2 (#645)
* Update to Clang 10 and Visual Studio 2019 version 16.6p2

* re-clang-formats the tree to comply with new clang 10 clang-format
* updates our agents to F series VMs which are faster and cheaper for our build workloads
* defaults scale set to 0 VMs and lets the Azure Pipelines service control all resizing
* fix tests to pass with the new compilers

Co-authored by Casey Carter and Curtis Bezault
2020-03-28 18:53:15 -07:00
Curtis J Bezault 20f21b2248
Add tests using lit as a test harness (#520) 2020-03-25 13:56:03 -07:00
Stephan T. Lavavej 30031d3de4
Add the tr1 test suite. (#485)
* Add the tr1 test suite.

Works towards #144. Note that this is just the source code; the
infrastructure to automatically build and run the tests is coming soon.

Update enforce-clang-format.cmd as parallelize is recursive. (I verified
that behavior by running parallelize directly.) We don't need to mention
stl/inc's subdirectories. We can mention all of tools because
clang-format detects file extensions and the other files in tools are
fine. (In contrast, excluding stl/msbuild saves time.) Finally, add
tests/tr1 (which is why we depend on recursive behavior, due to its many
subdirectories). Also, update the git status and git diff commands to
print differences in the tests directory too.

* Add "accepted extensions" to parallelize.
2020-02-06 13:26:56 -08:00
Stephan T. Lavavej 098333c912
Add libcxx (not yet running) working towards #145. (#394)
* Port Microsoft-internal MSVC-PR-218746 and MSVC-PR-219383.
* And MSVC-PR-219451:
  * Skip llvm-project in validate.cpp.
  * Change .vscode/settings.json to CRLF.
2019-12-17 17:44:44 -08:00
Stephan T. Lavavej 9c1c63cd26
Enforce ASCII and whitespace conventions (#229)
Fixes #141.

* Change LF to CRLF.
* Remove UTF-8 BOMs.
* Add validate.cpp.
* Add validate to CMakeLists.txt.
* Add validate to azure-devops.
* Wrap enforce-clang-format.cmd.
* Code review feedback: abort().
* Code review feedback: Assign previous3.
* Code review feedback: Don't catch everything.
* Code review feedback: MaxErrorsForDisallowedCharacters.
* Cleanup: Remove `enabled: true`.
* Code review feedback: Character code comments.
* Code review feedback: Allow certain files to be tabby.
* Code review feedback: Use native wchar_t paths.
2019-10-30 16:22:33 -07:00
Billy O'Neal 9b2207c14e
Parallelize enforcement of clang-format (#163)
Add jobify.exe and parallelize.exe
Add a "tools" directory for test/build support tools.
Add jobify.exe from the msvc repo.
Extract parts of jobify into stljobs.h, and author wrappers for other test support.
Add parallelize.exe which runs a command in parallel over all inputs in a directory.
Teach Azure DevOps to enforce clang-format in parallel.
2019-10-08 17:12:08 -07:00