Commit Graph

270 Commits

Author SHA1 Message Date
Kogia-sima 1107757ad1 Add test for Techempower Framework Benchmarks
cc #37
2020-12-17 10:02:49 +09:00
Kogia-sima 8179de521d docs: Revert documents
v0.2.3 still requires `extern crate sailfish_macros;`
2020-12-17 00:04:47 +09:00
Kogia-sima ac728a8495 Update AFL tests 2020-12-16 23:15:22 +09:00
Kogia-sima c182e41622 perf: Optimize Buffer::push()
fix #8
2020-12-16 21:52:39 +09:00
Kogia-sima aa0afb1f81 doc: Update safety documents
and some assertion fix
2020-12-16 21:17:06 +09:00
Kogia-sima 1ec10031f5 refactor: Turn off unused features in dependencies 2020-12-16 20:14:38 +09:00
Kogia-sima a1abc2aaa3 refactor: Simplify derive option parsing 2020-12-16 19:55:28 +09:00
Kogia-sima 98edecdb3a refactor: suppress use of to_string_lossy 2020-12-16 19:13:37 +09:00
Kogia-sima 6c7a74823f refactor: use DefaultHasher instead of custom fnv hash implementation 2020-12-16 19:01:28 +09:00
Kogia-sima 790f7366cf break: Update TemplateOnce trait structure
* Remove render_once_to_string method
* Add render_once_to method
* Now TemplateOnce trait requires both method implementation
* Some performance improvement
2020-12-16 19:01:28 +09:00
Kogia-sima d0ec00fb29 refactor: Use nanorand crate instead of custom xorshift implementation 2020-12-16 16:52:07 +09:00
Kogia-sima 9b733f973f suppress dead_code warning when target_feature = "avx2" 2020-12-16 15:44:20 +09:00
Kogia-sima a965f03321 Update error format 2020-12-16 15:38:28 +09:00
Kogia-sima 99e0f4cf89 Merge branch 'perf/reserve_small' 2020-12-16 15:23:56 +09:00
Kogia-sima fcf3bc1be4 Revert "Remove benchmarks"
This reverts commit 7726b4c063.
2020-12-16 15:20:10 +09:00
Kogia-sima c7093a727a perf: Replace reserve with reserve_small 2020-12-16 15:18:04 +09:00
Kogia-sima 7726b4c063 Remove benchmarks 2020-12-16 13:38:17 +09:00
Kogia-sima 2d6d913213 no longer requires `extern crate sailfish_macros` 2020-12-16 13:35:37 +09:00
Kogia-sima 72b061ee3e refactor: Use unlikely in Buffer::reserve() 2020-11-30 12:19:03 +09:00
Kogia-sima 541ecb91ef Bump version (0.2.2 => 0.2.3) 2020-11-29 21:40:58 +09:00
Kogia-sima 4d993256fe Add `derive` feature for sailfish crate 2020-11-29 21:39:50 +09:00
Kogia-sima db7aaf5edc Add forbid(unsafe_code) in sailfish-compiler/macros 2020-11-29 21:22:31 +09:00
Kogia-sima 4e949848d0
Merge pull request #34 from Svenskunganka/master
Use std::result::Result in derive macro to allow custom Result types
2020-11-22 11:33:53 +09:00
Kogia-sima c9b4d08ed0 refactor: hide Buffer::clear() method
This method is dangerous because it might deletes all contents
previouslly rendered.
2020-11-21 18:44:56 +09:00
Kogia-sima 834289be59 refactor: Reduce unsafe blocks 2020-11-21 18:44:52 +09:00
Kogia-sima 82fb9f5469 refactor: Remove unused code 2020-11-21 18:25:36 +09:00
Kogia-sima ed25390917 Avoid running compile-failure tests in CI 2020-11-21 18:03:45 +09:00
Kogia-sima 52e635af6e Update compile error tests 2020-11-21 18:03:41 +09:00
Tom Jordell 9d405ad9ff Use std::result::Result in derive macro to allow custom Result types 2020-11-21 08:40:46 +01:00
Kogia-sima cfd40f573b Bump version (0.2.1 => v0.2.2) 2020-11-11 10:48:30 +09:00
Kogia-sima af6c052b1f Update proc-macro2 (fix #32) 2020-11-11 10:46:40 +09:00
Kogia-sima 2ecc5ce63f Update CHANGELOG 2020-08-04 09:28:28 +09:00
Kogia-sima 2ba4a99582 Bump version (0.2.0 => 0.2.1) 2020-08-04 09:18:24 +09:00
Kogia-sima 5666f92b9d Search rustfmt along all toolchains 2020-08-04 03:33:49 +09:00
Kogia-sima d79a5d3b4b perf: Zero-copy conversion from String into Buffer 2020-08-04 03:14:21 +09:00
Kogia-sima 941cd965ab Do not use render_once_to_string method directly 2020-07-26 00:02:51 +09:00
Kogia-sima 4f64a3b7fe Avoid over-size allocation in `render_once_to_string` 2020-07-25 23:56:17 +09:00
Kogia-sima 658a623008 Remove profile overrides 2020-07-25 07:58:13 +09:00
Kogia-sima 4fc278ecfb Revert "Improve Template::render() performance"
This reverts commit 4e8b437387.
2020-07-25 07:48:00 +09:00
Kogia-sima 383a6db3e3 Add `rm_whitespace = true` option for some tests 2020-07-25 07:48:00 +09:00
Kogia-sima 3678978e54
Merge pull request #30 from stoically/patch-1
Fix docs typo
2020-07-24 12:35:30 +09:00
stoically f37f074a67
Fix docs typo 2020-07-24 04:32:51 +02:00
Kogia-sima 4a8ce80e3d improve escape_small() performance 2020-07-23 11:49:53 +09:00
Kogia-sima 4e8b437387 Improve Template::render() performance 2020-07-23 11:48:19 +09:00
Kogia-sima cc10171b73 Avoid dangerous conversion from String to Buffer 2020-07-22 07:05:15 +09:00
Kogia-sima fcde448751 Add trim filter 2020-07-22 06:40:26 +09:00
Kogia-sima 31bbcaebc8 Avoid capacity overflow in Buffer::with_capacity 2020-07-22 03:25:07 +09:00
Kogia-sima 236dff6b10 Improve size hint update algorithm 2020-07-21 09:00:15 +09:00
Kogia-sima 9765de213f Allow proc-macro2 v1.0.19 as a dependency 2020-07-21 07:22:34 +09:00
Kogia-sima a3fdc8e226 fix: Fix vim syntax highlighting
* highlight sailfish tag inside html strings
2020-07-18 09:31:23 +09:00
Kogia-sima 3515380d93 Add CHANGELOG.md 2020-07-18 02:34:22 +09:00
Kogia-sima 9dfcfe2c45 Add filter documentation in User Guide 2020-07-17 18:06:06 +09:00
Kogia-sima d0ef795161 Bump version (0.1.3 => 0.2.0) 2020-07-17 04:48:29 +09:00
Kogia-sima 1141580878 Fix number of skips on parsing code block 2020-07-15 23:22:10 +09:00
Kogia-sima 80b64fe883 break: Remove Buffer::set_len method
This method allows reducing the buffer size, but it should not be
possible.
Alternatively I added a Buffer::advance method to increase the length.
2020-07-15 19:49:35 +09:00
Kogia-sima fabc3ba149 Merge branch 'feature/filter'
close #2
2020-07-15 19:40:53 +09:00
Kogia-sima 15b0504564 Add tests for filter 2020-07-15 19:34:53 +09:00
Kogia-sima eac0dfbf5b Add minimal runtime filters 2020-07-15 17:12:31 +09:00
Kogia-sima 373ffc135e Implement filter transformation 2020-07-15 07:38:11 +09:00
Kogia-sima 2d15165406 break: Syntactically disallow invalid filter expression 2020-07-15 04:17:50 +09:00
Kogia-sima 119e282945 Avoid generating _size_hint local variable 2020-07-15 00:06:01 +09:00
Kogia-sima 670d936def break: remove runtime::Context API 2020-07-15 00:06:01 +09:00
Kogia-sima 2ebb4b290f Exclude examples/ directory from workspaces 2020-07-15 00:06:01 +09:00
Kogia-sima 869c58dcb1 Use UFCS instead of receiver coecions
This change is required to achieve filter
2020-07-15 00:06:01 +09:00
Kogia-sima 203a890618 break: Remove register_escape_fn API 2020-07-15 00:06:01 +09:00
Kogia-sima 3040084ca9 do not use `sfrt` as an alias to sailfish::runtime 2020-07-15 00:05:56 +09:00
Kogia-sima 38de1f8051 Merge branch 'test/afl'
close #26
2020-07-14 22:48:21 +09:00
Kogia-sima 6c72bb17d1 Put all tests in sailfish-tests/ directory 2020-07-14 22:46:58 +09:00
Kogia-sima 4d548bdb94 Add fuzzing test for sailfish-compiler
cc #26
2020-07-14 22:28:15 +09:00
Kogia-sima b420cc0161 feat: Implement Compiler::compile_str() function 2020-07-14 22:07:35 +09:00
Kogia-sima 727ed61844 Add simple fuzzing test
cc #26
2020-07-14 21:45:56 +09:00
Kogia-sima c01784b154 Add formatting test 2020-07-14 20:41:45 +09:00
Kogia-sima 470f5b7ffa Remove unreachable code 2020-07-14 20:37:20 +09:00
Kogia-sima 3267d60f1b Add test for configuration file 2020-07-14 18:59:39 +09:00
Kogia-sima e277fe4a7d Add more tests for runtime 2020-07-14 18:38:38 +09:00
Kogia-sima f41047ef92 Optimize Buffer::push_str() implementation for stable compiler 2020-07-14 05:43:02 +09:00
Kogia-sima b1f266a285 Fix buffer capacity overflow check 2020-07-13 06:47:19 +09:00
Kogia-sima e321d6b013 Update benchmark dependencies 2020-07-13 06:44:53 +09:00
Kogia-sima 65636d2ebc Suppress "Failed to remote artifact" error in rust-analyzer 2020-07-13 01:28:42 +09:00
Kogia-sima 3b06795f5e Bump version (0.1.2 => 0.1.3) 2020-07-11 17:46:55 +09:00
Kogia-sima 5d874e44ea doc: update doc comments 2020-07-11 17:10:23 +09:00
Kogia-sima 9982ab0683 Suppress warning when `config` feature flag is disabled 2020-07-11 17:02:31 +09:00
Kogia-sima b4903f2b3d refactor: Add utils.rs 2020-07-11 04:23:39 +09:00
Kogia-sima 5cef362dbd Add more debug assertions 2020-07-11 02:39:04 +09:00
Kogia-sima 277a71cd0f Optimize long HTML escaping 2020-07-11 02:29:55 +09:00
Kogia-sima f93d6e74b3 Add instructions for vim syntax plugin
[skip ci]
2020-07-10 19:09:12 +09:00
Kogia-sima 2a10342cd7 Add link to VisualStudio Marketplace 2020-07-10 18:29:19 +09:00
Kogia-sima 6981992efb Prepare VSCode syntax extention for publishing 2020-07-10 18:27:04 +09:00
Kogia-sima eb438f6d3c Fix safe_realloc implementation 2020-07-10 10:20:10 +09:00
Kogia-sima 28baf202c2 Hide SizeHint and Context from docs 2020-07-10 08:50:32 +09:00
Kogia-sima 6c21955189 Fix memcpy_small implementation to emulate glibc implenetation exactly 2020-07-10 07:38:06 +09:00
Kogia-sima 3043719d35 Fix default implementation of Render::render_escaped 2020-07-10 00:32:58 +09:00
Kogia-sima 7d0538b244 Fix HTML escaping in char rendering 2020-07-10 00:30:25 +09:00
Kogia-sima 5c4c66f331 Add copyright notice in benchmark 2020-07-09 23:48:26 +09:00
Kogia-sima 2807340e59 Update Teams benchmark result 2020-07-09 23:44:30 +09:00
Kogia-sima f1ad6f3bd3 Escape HTML in std::write! benchmark
cc #22
2020-07-09 23:44:25 +09:00
Kogia-sima 6ab65f4247 Use itoap crate to render integers 2020-07-08 22:26:47 +09:00
Kogia-sima d86a35cbd6 Fix Integer::MAX_LEN for usize and isize 2020-07-08 07:06:49 +09:00
Kogia-sima b46ffbe623 Optimize write_u128 for small integers 2020-07-08 05:55:03 +09:00
Kogia-sima 636633331b clippy 2020-07-05 13:33:56 +09:00