Skip to content

Commit 3dc4dd3

Browse files
committed
prepare for version 1.6.0
1 parent c8322d4 commit 3dc4dd3

File tree

3 files changed

+167
-1
lines changed

3 files changed

+167
-1
lines changed

.clang-format

Lines changed: 149 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,149 @@
1+
# Taken from https://github.com/arduino/arduino-language-server/blob/e453c5fbd059bae673bb21d028f5ca8e690744be/handler/handler.go#L1769-L1952
2+
# Which will be used in the IDE 2.0+ when 'format sketch' option is selected
3+
4+
Language: Cpp
5+
# LLVM is the default style setting, used when a configuration option is not set here
6+
BasedOnStyle: LLVM
7+
AccessModifierOffset: -2
8+
AlignAfterOpenBracket: Align
9+
AlignConsecutiveAssignments: false
10+
AlignConsecutiveBitFields: false
11+
AlignConsecutiveDeclarations: false
12+
AlignConsecutiveMacros: false
13+
AlignEscapedNewlines: DontAlign
14+
AlignOperands: Align
15+
AlignTrailingComments: true
16+
AllowAllArgumentsOnNextLine: true
17+
AllowAllConstructorInitializersOnNextLine: true
18+
AllowAllParametersOfDeclarationOnNextLine: true
19+
AllowShortBlocksOnASingleLine: Always
20+
AllowShortCaseLabelsOnASingleLine: true
21+
AllowShortEnumsOnASingleLine: true
22+
AllowShortFunctionsOnASingleLine: Empty
23+
AllowShortIfStatementsOnASingleLine: Always
24+
AllowShortLambdasOnASingleLine: Empty
25+
AllowShortLoopsOnASingleLine: true
26+
AlwaysBreakAfterDefinitionReturnType: None
27+
AlwaysBreakAfterReturnType: None
28+
AlwaysBreakBeforeMultilineStrings: false
29+
AlwaysBreakTemplateDeclarations: No
30+
BinPackArguments: true
31+
BinPackParameters: true
32+
# Only used when "BreakBeforeBraces" set to "Custom"
33+
BraceWrapping:
34+
AfterCaseLabel: false
35+
AfterClass: false
36+
AfterControlStatement: Never
37+
AfterEnum: false
38+
AfterFunction: false
39+
AfterNamespace: false
40+
#AfterObjCDeclaration:
41+
AfterStruct: false
42+
AfterUnion: false
43+
AfterExternBlock: false
44+
BeforeCatch: false
45+
BeforeElse: false
46+
BeforeLambdaBody: false
47+
BeforeWhile: false
48+
IndentBraces: false
49+
SplitEmptyFunction: false
50+
SplitEmptyRecord: false
51+
SplitEmptyNamespace: false
52+
# Java-specific
53+
#BreakAfterJavaFieldAnnotations:
54+
BreakBeforeBinaryOperators: NonAssignment
55+
BreakBeforeBraces: Attach
56+
BreakBeforeTernaryOperators: true
57+
BreakConstructorInitializers: BeforeColon
58+
BreakInheritanceList: BeforeColon
59+
BreakStringLiterals: false
60+
# v12 has various problems with this set to 0 (no limit)
61+
# possible workaround is to set this to 4294967295 aka some large number
62+
# see https://reviews.llvm.org/D96896
63+
ColumnLimit: 0
64+
# "" matches none
65+
CommentPragmas: ""
66+
CompactNamespaces: false
67+
ConstructorInitializerAllOnOneLineOrOnePerLine: true
68+
ConstructorInitializerIndentWidth: 2
69+
ContinuationIndentWidth: 2
70+
Cpp11BracedListStyle: false
71+
DeriveLineEnding: true
72+
DerivePointerAlignment: true
73+
DisableFormat: false
74+
# Docs say "Do not use this in config files". The default (LLVM 11.0.1) is "false".
75+
#ExperimentalAutoDetectBinPacking:
76+
FixNamespaceComments: false
77+
ForEachMacros: []
78+
IncludeBlocks: Preserve
79+
IncludeCategories: []
80+
# "" matches none
81+
IncludeIsMainRegex: ""
82+
IncludeIsMainSourceRegex: ""
83+
IndentCaseBlocks: true
84+
IndentCaseLabels: true
85+
IndentExternBlock: Indent
86+
IndentGotoLabels: false
87+
IndentPPDirectives: None
88+
IndentWidth: 2
89+
IndentWrappedFunctionNames: false
90+
InsertTrailingCommas: None
91+
# Java-specific
92+
#JavaImportGroups:
93+
# JavaScript-specific
94+
#JavaScriptQuotes:
95+
#JavaScriptWrapImports
96+
KeepEmptyLinesAtTheStartOfBlocks: true
97+
MacroBlockBegin: ""
98+
MacroBlockEnd: ""
99+
# Set to a large number to effectively disable
100+
MaxEmptyLinesToKeep: 100000
101+
NamespaceIndentation: None
102+
NamespaceMacros: []
103+
# Objective C-specific
104+
#ObjCBinPackProtocolList:
105+
#ObjCBlockIndentWidth:
106+
#ObjCBreakBeforeNestedBlockParam:
107+
#ObjCSpaceAfterProperty:
108+
#ObjCSpaceBeforeProtocolList
109+
PenaltyBreakAssignment: 1
110+
PenaltyBreakBeforeFirstCallParameter: 1
111+
PenaltyBreakComment: 1
112+
PenaltyBreakFirstLessLess: 1
113+
PenaltyBreakString: 1
114+
PenaltyBreakTemplateDeclaration: 1
115+
PenaltyExcessCharacter: 1
116+
PenaltyReturnTypeOnItsOwnLine: 1
117+
# Used as a fallback if alignment style can't be detected from code (DerivePointerAlignment: true)
118+
PointerAlignment: Right
119+
RawStringFormats: []
120+
ReflowComments: true
121+
SortIncludes: false
122+
SortUsingDeclarations: false
123+
SpaceAfterCStyleCast: false
124+
SpaceAfterLogicalNot: false
125+
SpaceAfterTemplateKeyword: false
126+
SpaceBeforeAssignmentOperators: true
127+
SpaceBeforeCpp11BracedList: false
128+
SpaceBeforeCtorInitializerColon: true
129+
SpaceBeforeInheritanceColon: true
130+
SpaceBeforeParens: ControlStatements
131+
SpaceBeforeRangeBasedForLoopColon: true
132+
SpaceBeforeSquareBrackets: false
133+
SpaceInEmptyBlock: false
134+
SpaceInEmptyParentheses: false
135+
SpacesBeforeTrailingComments: 2
136+
SpacesInAngles: false
137+
SpacesInCStyleCastParentheses: false
138+
SpacesInConditionalStatement: false
139+
SpacesInContainerLiterals: false
140+
SpacesInParentheses: false
141+
SpacesInSquareBrackets: false
142+
Standard: Auto
143+
StatementMacros: []
144+
TabWidth: 2
145+
TypenameMacros: []
146+
# Default to LF if line endings can't be detected from the content (DeriveLineEnding).
147+
UseCRLF: false
148+
UseTab: Never
149+
WhitespaceSensitiveMacros: []

CHANGELOG.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,23 @@
22

33
All notable changes to this project will be documented in this file starting 2021.
44

5+
## [1.6.0] -- 2025-10-25
6+
7+
* New since 1.5.2
8+
9+
* ADD: Optional debounce support (setDebounceMillis()) to filter contact bounce without external components.
10+
* ADD: New example sketches: RotaryWithButton and AcceleratedRotatorAdvanced (showing debounce and acceleration together).
11+
* CI: Expanded unit/integration tests and updated CI configuration for newer Arduino cores and PlatformIO.
12+
* DOCS: Updated README and examples for IDE 2.x and core compatibility; clarified LatchMode behavior.
13+
14+
* Fixes and improvements since 1.5.2
15+
16+
* FIX: Robust interrupt handling across cores (AVR, SAMD, ESP32, ESP8266) — consistent use of digitalPinToInterrupt() and edge configuration to avoid missed steps on non‑AVR boards.
17+
* FIX: Race conditions when reading counts from ISR — atomic access and reduced critical sections.
18+
* FIX: Reduced CPU usage in ISR and polling paths (lower interrupt overhead).
19+
* CHANGE: Improved API stability notes and migration guide in README.
20+
21+
522
## [1.5.2] - 2021-07-04
623

724
minor fixes found in ci integration.

library.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name=RotaryEncoder
2-
version=1.5.3
2+
version=1.6.0
33
author=Matthias Hertel
44
maintainer=Matthias Hertel, http://www.mathertel.de
55
sentence=Use a rotary encoder with quadrature pulses as an input device.

0 commit comments

Comments
 (0)