Florian Schmaus <flo@geekplace.eu>: Author Summary

Builds triggered by Florian Schmaus <flo@geekplace.eu>

Builds triggered by an author are those builds which contains changes committed by the author.
1119
164 (15%)
955 (85%)

Breakages and fixes

Broken means the build has failed but the previous build was successful.
Fixed means that the build was successful but the previous build has failed.
57 (5% of all builds triggered)
31 (3% of all builds triggered)
-26
Build Completed Code commits Tests
SMACK › NIGHTLYSTABLE › #203 2 weeks ago
Smack 4.4.4-SNAPSHOT
800 passed
SMACK › NIGHTLY › #1821 2 weeks ago
[ox-im] Annotate sporadically failing assertTrue()
[sinttest] Treat NPE as test failure not as abort condition
818 passed
SMACK › CIMASTER › #821 2 weeks ago
[ox-im] Annotate sporadically failing assertTrue()
[sinttest] Treat NPE as test failure not as abort condition
Testless build
SMACK › NIGHTLY › #1820 3 weeks ago
Merge pull request #483 from guusdk/SMACK-908_debugger-tabs
SMACK-908: Don't use components to count tabs in Debugger
818 passed
SMACK › CIMASTER › #820 3 weeks ago
Merge pull request #483 from guusdk/SMACK-908_debugger-tabs
SMACK-908: Don't use components to count tabs in Debugger
Testless build
SMACK › NIGHTLY › #1819 3 weeks ago
Do not call XmlPullParser.getName() when the event is unknown
XmlPullParser.getName() only returns a result if the current parser
event is START_ELEMENT or END_ELEMENT. If this is not the case, then
the method may throw (if StAX is used).
Do not call XmlPullParser.getName() when the event is unknown
XmlPullParser.getName() only returns a result if the current parser
event is START_ELEMENT or END_ELEMENT. If this is not the case, then
the method may throw (if StAX is used).
Merge tag '4.4.3'
Smack 4.4.3
[omemo] Add OmemoManager.purgeEveryting()
This is basically the already existing method from
OmemoManagerSetupHelper.cleanUpPubSub() moved over into OmemoManager
as purgeEverything().
Smack 4.4.3
[core] Introduce Builder.failOnUnknownStates() and unit tests
The previous approach of emitting a severe log message when a
state (descriptor) was unknown was misleading. There are valid cases
where some states are not known, if, for example, a module was
explicitly disabled.

Using Builder.failOnUnknownStates() in unit tests is far cleaner, as
the existence of unknown states is tested in a controlled environment:
one where are states are supposed to be known.
Merge branch '4.4'
818 passed
SMACK › NIGHTLYSTABLE › #202 3 weeks ago
Smack 4.4.3
Do not call XmlPullParser.getName() when the event is unknown
XmlPullParser.getName() only returns a result if the current parser
event is START_ELEMENT or END_ELEMENT. If this is not the case, then
the method may throw (if StAX is used).
800 passed
SMACK › CIMASTER › #819 3 weeks ago
[core] Introduce Builder.failOnUnknownStates() and unit tests
The previous approach of emitting a severe log message when a
state (descriptor) was unknown was misleading. There are valid cases
where some states are not known, if, for example, a module was
explicitly disabled.

Using Builder.failOnUnknownStates() in unit tests is far cleaner, as
the existence of unknown states is tested in a controlled environment:
one where are states are supposed to be known.
Do not call XmlPullParser.getName() when the event is unknown
XmlPullParser.getName() only returns a result if the current parser
event is START_ELEMENT or END_ELEMENT. If this is not the case, then
the method may throw (if StAX is used).
Merge tag '4.4.3'
Smack 4.4.3
Do not call XmlPullParser.getName() when the event is unknown
XmlPullParser.getName() only returns a result if the current parser
event is START_ELEMENT or END_ELEMENT. If this is not the case, then
the method may throw (if StAX is used).
[omemo] Add OmemoManager.purgeEveryting()
This is basically the already existing method from
OmemoManagerSetupHelper.cleanUpPubSub() moved over into OmemoManager
as purgeEverything().
Merge branch '4.4'
Smack 4.4.3
Testless build
SMACK › NIGHTLY › #1818 1 month ago
[xdata] Automatically fill required fields with a default value
Merge pull request #467 from Flowdalic/4.4-data-forms
Proposed data form updates for 4.4
Merge branch '4.4'
[xdata] Allow FillableForm.write() ot overwrite already filled fields
[address] Fix NPE in MultipleRecipientManager
The arguments 'to', 'cc, and 'bcc' may be null, hence ensure that they
are non-null when calling e.g. size() on them.

Fixes SMACK-907

Fixes: df96c5709379 ("[address] Get rid of PacketCopy workaround")
816 passed
SMACK › CIMASTER › #818 1 month ago
[xdata] Allow FillableForm.write() ot overwrite already filled fields
Merge branch '4.4'
[address] Fix NPE in MultipleRecipientManager
The arguments 'to', 'cc, and 'bcc' may be null, hence ensure that they
are non-null when calling e.g. size() on them.

Fixes SMACK-907

Fixes: df96c5709379 ("[address] Get rid of PacketCopy workaround")
[xdata] Automatically fill required fields with a default value
Merge pull request #467 from Flowdalic/4.4-data-forms
Proposed data form updates for 4.4
Testless build
Build Completed Code commits Tests
SMACK › CIMASTER › #809 3 months ago
Merge pull request #470 from Fishbowler/fix_muc_javadoc
[sinttest] Tweaks to the muc test javadoc
Testless build
SMACK › NIGHTLY › #1796 5 months ago
Bump Bouncy Castle to 1.68
Add smack-websocket-java11
This also lifts a bunch of logic from smack-websocket-okhttp into
smack-websocket. Furthermore, the following subprojects require now
Java 11:
- smack-integration-test
- smack-omemo-signal-integration-test
- smack-repl
- smack-websocket-java11

Related tracking issue: SMACK-835
[openpgp] Do not put the BouncyCastleProvider at first position
This causes

java.security.InvalidKeyException: cannot identify XDH private key

on Java 11 or higher.

See also
- https://github.com/bcgit/bc-java/issues/620
- https://github.com/bcgit/bc-java/issues/589
- https://github.com/corretto/corretto-11/issues/168
- https://bugs.openjdk.java.net/browse/JDK-8171279
[smack-integration-test] Bump reflections to 0.9.12
This also means that smack-integration-test needs to declare a
dependency on Guava, which was previously available as transitive
dependency of 'reflections' 0.9.11.
Testless build
SMACK › CIMASTER › #791 5 months ago
Add smack-websocket-java11
This also lifts a bunch of logic from smack-websocket-okhttp into
smack-websocket. Furthermore, the following subprojects require now
Java 11:
- smack-integration-test
- smack-omemo-signal-integration-test
- smack-repl
- smack-websocket-java11

Related tracking issue: SMACK-835
Testless build
SMACK › CIMASTER › #789 5 months ago
Add smack-websocket-java11
This also lifts a bunch of logic from smack-websocket-okhttp into
smack-websocket. Furthermore, the following subprojects require now
Java 11:
- smack-integration-test
- smack-omemo-signal-integration-test
- smack-repl
- smack-websocket-java11

Related tracking issue: SMACK-835
[github-ci] Test with Java 15 also
[openpgp] Do not put the BouncyCastleProvider at first position
This causes

java.security.InvalidKeyException: cannot identify XDH private key

on Java 11 or higher.

See also
- https://github.com/bcgit/bc-java/issues/620
- https://github.com/bcgit/bc-java/issues/589
- https://github.com/corretto/corretto-11/issues/168
- https://bugs.openjdk.java.net/browse/JDK-8171279
[smack-integration-test] Bump reflections to 0.9.12
This also means that smack-integration-test needs to declare a
dependency on Guava, which was previously available as transitive
dependency of 'reflections' 0.9.11.
Bump Bouncy Castle to 1.68
Testless build
SMACK › NIGHTLY › #1791 6 months ago
Smack 4.4.1-SNAPSHOT
[extensions] Add BoBDataExtension getBobData() and getContentId()
Those two methods where missing after the BoB API redesign.

Fixes SMACK-896.
Merge branch '4.4'
[im] Update DirectoryRosterStore TODO note regarding Android API 26.
[im] DirectoryRosterStore.readEntry() should also catch IllegalArgumentException
Fixes SMACK-897.
Fix NPE in BoBIQ by adding XmlStringBuilder.optIntAttribute(String, Integer)
The method was missing and hence BoBIQ used optIntAttribute(String,
int) instead, which resulted in an NPE if the Integer was null.

Fixes SMACK-895.
Testless build
SMACK › NIGHTLYSTABLE › #186 6 months ago
[im] Update DirectoryRosterStore TODO note regarding Android API 26.
[im] DirectoryRosterStore.readEntry() should also catch IllegalArgumentException
Fixes SMACK-897.
Fix NPE in BoBIQ by adding XmlStringBuilder.optIntAttribute(String, Integer)
The method was missing and hence BoBIQ used optIntAttribute(String,
int) instead, which resulted in an NPE if the Integer was null.

Fixes SMACK-895.
[extensions] Add BoBDataExtension getBobData() and getContentId()
Those two methods where missing after the BoB API redesign.

Fixes SMACK-896.
Testless build
SMACK › CIMASTER › #782 6 months ago
Fix NPE in BoBIQ by adding XmlStringBuilder.optIntAttribute(String, Integer)
The method was missing and hence BoBIQ used optIntAttribute(String,
int) instead, which resulted in an NPE if the Integer was null.

Fixes SMACK-895.
Smack 4.4.1-SNAPSHOT
[im] Update DirectoryRosterStore TODO note regarding Android API 26.
[im] DirectoryRosterStore.readEntry() should also catch IllegalArgumentException
Fixes SMACK-897.
Merge branch '4.4'
[extensions] Add BoBDataExtension getBobData() and getContentId()
Those two methods where missing after the BoB API redesign.

Fixes SMACK-896.
Testless build
SMACK › NIGHTLYSTABLE › #170 11 months ago
Merge pull request #419 from adiaholic/bugFix
XmlEnvironment: Use correct method to obatain effective namespace.
788 passed
SMACK › NIGHTLY › #1765 1 year ago
Bump jXMPP version to 1.0.0
Merge pull request #407 from vanitasvitae/oxDeadCode
OX-IM: Remove redundant code to add self to recipients
Bump MiniDNS version to 1.0.0
[core] Fix log/exception message of XmppElementUtil
The Class.toString() already prefixes the resulting string with "class
", no need to state it explicitly in the log message that this is a
class.
Merge branch 'master' of github.com:igniterealtime/Smack
Merge pull request #408 from vanitasvitae/secretKeyBackupPassword
Allow user-supplied secret key backup passphrases
Merge pull request #406 from vanitasvitae/oxSecretKeyBackupRestore
OX: Improvements to Secret key backup restore function
Testless build
SMACK › NIGHTLY › #1743 1 year ago
Bump junit version to 5.6.2
Bump Error Prone version to 2.3.4 and fix new bug patterns
[core] Improve NumberUtil's exception message and fix javadoc
Update Message Archive Management (XEP-0313) support to urn:xmpp:mam:2
Fixes SMACK-890.
[experimental] Delcare methods as static when possible
Bump MiniDNS version to 0.4.0-alpha5
[core] Use UInt16 for ConnectionConfiguration 'port'
Bump jxmpp Version to 0.7.0-alpha6
Testless build
Build Completed Code commits Tests
SMACK › NIGHTLY › #1794 6 months ago
[core] Fix XmlEnvironment namespace: Use default namespace (not element's)
Assume the element
<foo:bar xmlns='namespace' xmlns:foo='foo-namespace'/>

then the <bar/> element's namespace is 'foo-namespace', but the
default namespace is 'namespace'. And this is the namespace that
scopes into inner elements.
Rework WebSocket code
Related to SMACK-835.
[extensions] Use StanzaView as parameter type in BoBDataExtension.from()
BoBDataExtensions can also appear in IQs (Registration IQ), and
potentially also Presence stanzas.

Fixes SMACK-901.
[xdata] Fix NPE in DataForm.Builder.addItem()
Fixes SMACK-900.
Merge pull request #455 from Flowdalic/fix-data-form-npe
[xdata] Fix NPE in DataForm.Builder.addItem()
Merge branch '4.4'
811 passed
SMACK › NIGHTLYSTABLE › #189 6 months ago
[core] Fix XmlEnvironment namespace: Use default namespace (not element's)
Assume the element
<foo:bar xmlns='namespace' xmlns:foo='foo-namespace'/>

then the <bar/> element's namespace is 'foo-namespace', but the
default namespace is 'namespace'. And this is the namespace that
scopes into inner elements.
[extensions] Use StanzaView as parameter type in BoBDataExtension.from()
BoBDataExtensions can also appear in IQs (Registration IQ), and
potentially also Presence stanzas.

Fixes SMACK-901.
798 passed
SMACK › NIGHTLY › #1766 1 year ago
[tcp] Mark SM as disabled prior resource binding
Otherwise we may send a SM ack request with the bind IQ request,
causing a stream error:

D/SMACK: SENT (0):
    <iq id='SETVB-74' type='set'>
      <bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'>
      </bind>
    </iq>
    <r xmlns='urn:xmpp:sm:3'/>
D/SMACK: RECV (0):
    <iq id='SETVB-74' type='result'>
      <bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'>
        <jid>
          snakeman@wiuwiu.de/eHeTGlCq
        </jid>
      </bind>
    </iq>
    <stream:error>
      <unsupported-stanza-type xmlns='urn:ietf:params:xml:ns:xmpp-streams'/>
    </stream:error>
    </stream:stream>
771 passed
SMACK › NIGHTLY › #1727 1 year ago
sinttest: delcare boolean in WaitForClosingStreamElementTest
resolver-dnsjava: bump to dnsjava 3.0 series
core: add shortcut via hash in EqualsUtil
Return false as soon as the hashed value does not match. This is
sound, since every class that implements equals(Object) should also
implement hashCode().
pep: Use EventItemsExtensionFilter
core: Add ExtensionElementFilter
geoloc: do not set error in integration test
As error is deprecated. And should be marked as such.
pubsub: Add EventItemsExtensionFilter
core: delete deprecated ToFilter
This filter was marked deprecated in 2017 with 5d0dd49e6 ("Introduce
ToMatchesFilter"), time to delete it.
geoloc: GeoLocation constructor should have Builder as sole paramter
Also remove that (broken) "Error and accuracy set" warning, but
mark (get|set)Error() as deprecated.
pep: cleanup pep users API
Use EntityBareJid just as its done within PepManager. There is no need
for AsyncButOrdered in the PEP user managers, as PepManager already
takes care of that. Also the message carrying the PEP event should
always be the last parameter of the callbacks, as it is the least
important piece of information.
pep: improve pep event filter
core: delete deprecated filters
Those where deprecated in 2015 with d4a6d8e65 ("Rename
PacketFilter (and implementing classes) and PacketExtension"), now it
is time to delete them.
Merge pull request #379 from akrherz/travis
update Travis-CI badge on README.md
resolver-dnsjava: change description
The recommended resolver on Android is MiniDNS.
core: remove deprecated methods in PacketUtil
Those where deprecated in 2015 with 8409dddff ("Add
PacketUtil.extensionElementFrom()"), and in 2017 with
2288825b1 ("Retain smack-core API").
core: do not init() closingStreamReceived sync point in initState()
The initState() method is also called in disconnect(). And if we reset
the closingStreamReceived sync point at disconnect, it will break the
WaitForClosingStreamElementTest integration test.
Merge pull request #382 from vanitasvitae/typo
Fix typo in XmppElementUtil
sinttest: only append subdescriptions if there are any
geoloc: make global setter static
pep: improve API, add PepEventListener
The geoloc, mood and usertune PEP users showed a pattern. Instead of
repeating this pattern every time, let PepManager do the hard work
sinttest: signal failure if geoloc element does not match
sinttest: also check for length of subdescriptions varargs
geoloc: make GeoLocation implement hashCode() and equals(Object)
omemo: fix javadoc issue with OracleJDK8
CI runs fail using OracleJDK8 with

/home/travis/build/igniterealtime/Smack/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoBundleElement_VAxolotl.java:30:
warning - Tag @see: missing final '>':
"<ahref="https://xmpp.org/extensions/xep-0384.html#usecases-announcing">XEP-0384:
OMEMO Encryption (Example 3)</a>."

Other JDKs do not report such an error.
sinttest: migrate to JUnit5, drop JUnit4
The before/after class annotations are now no longer borrowed from
JUnit.

Also some integration tests used @After and/or @Before from JUnit,
which was never supported nor had any effected. Those methods got
deleted. But since there appears to be a desire for such a
functionality in sinttest, we should consider adding one.
746 passed
SMACK › CIMASTER › #690 1 year ago
omemo: fix javadoc issue with OracleJDK8
CI runs fail using OracleJDK8 with

/home/travis/build/igniterealtime/Smack/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoBundleElement_VAxolotl.java:30:
warning - Tag @see: missing final '>':
"<ahref="https://xmpp.org/extensions/xep-0384.html#usecases-announcing">XEP-0384:
OMEMO Encryption (Example 3)</a>."

Other JDKs do not report such an error.
sinttest: migrate to JUnit5, drop JUnit4
The before/after class annotations are now no longer borrowed from
JUnit.

Also some integration tests used @After and/or @Before from JUnit,
which was never supported nor had any effected. Those methods got
deleted. But since there appears to be a desire for such a
functionality in sinttest, we should consider adding one.
sinttest: only append subdescriptions if there are any
resolver-dnsjava: change description
The recommended resolver on Android is MiniDNS.
geoloc: make global setter static
resolver-dnsjava: bump to dnsjava 3.0 series
746 passed
SMACK › CIMASTER › #651 1 year ago
gradle: Switch to 'maven-publish' plugin
gradle: Remove archives configuration
and FileTestUtil in favor of commons-io. This is required because
Eclipse won't put src/test code into the classpath of src/main
code (even though gradle was configured with an according
dependency).
732 passed
SMACK › NIGHTLY › #1685 1 year ago
gradle: Use project(':foo') intead of project(path: ':foo') when possible
travis: Add javadocAll to 'script' gradle targets
to ensure that javadocAll works correctly. A nice side-effect, this
also ensures that the package-info.java symbolic links are still
correct and haven't been replaced by some IDE or editor with the
content of the link target.
Make "duplicate" package-info.java files symbolic links
This is needed for javadocAll since otherwhise there will be

smack-core/src/main/java/org/jivesoftware/smack/package-info.java:21:
        warning: a package-info.java file has already been seen for
        package org.jivesoftware.smack

warnings.
javadocAll: Set source to sourceCompatibility to work around bug
in JDK 11. See https://bugs.openjdk.java.net/browse/JDK-8217177
730 passed
SMACK › CIMASTER › #638 1 year ago
Fix whitespace errors in AbstractXMPPConnection
730 passed
SMACK › NIGHTLY › #1669 2 years ago
Use XMLInputFactory.newInstance() instead of newFactory()
As newFactory() is errornously marked as deprecated in Java 9 or
higher. See also https://bugs.openjdk.java.net/browse/JDK-8183519
travis: Also call 'install' target
to check if artifact creation is functional.
travis: Update the Ubuntu repositories
travis: Update cache configuration
smack-android/build.gradle: Use 'implementation' for smack-xmlparser-xpp3
which is the probably the better choice here anyway. And it also
prevents the following failure on POM creation:

$ gradle uploadArchives
> Task :smack-android:uploadArchives FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':smack-android:uploadArchives'.
> Could not publish configuration 'archives'
   > Could not write to file
   '/home/flo/data/code/smack/smack-android/build/poms/pom-default.xml'.

See also

https://discuss.gradle.org/t/gradle-fails-to-create-pom-with-the-configuration-to-scope-mapping-is-not-unique/32087
travis: Remove "sudo: false" as recommended by travis
travis: Use gradle 5.5.1
travis: Remove openjdk8, add openjdk(9|11)
Javadoc changes for Java 11 compatibility
travis: Use apt-get instead apt
It appears 'apt' is no longer available and the official documentation
only mentions apt-get.
Remove finalize() from AbstractXmppNioConnection
checkstyle: Use $config_loc for Java 11
Also move configuration files into "${rootProject}/config/checkstyle"
to follow convention over configuration.

See https://github.com/gradle/gradle/issues/8286#issuecomment-458145619
travis: Use Ubuntu 14.04 (Trusty)
730 passed
SMACK › NIGHTLYSTABLE › #168 2 years ago
Merge pull request #320 from vanitasvitae/muc_joined_rooms_bookmarks_note
Add note about BookmarkManager to MUCManager
579 passed