Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Kotlin Multiplatform support #116

Merged
merged 52 commits into from
Aug 20, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
d33fe13
Move build file to kts
prof18 Feb 21, 2023
f710f20
Implement first basic Android version
prof18 Mar 11, 2023
b85bf56
First JVM version
prof18 Mar 12, 2023
2c7bda5
First iOS version
prof18 Mar 19, 2023
a71c6f7
Multiplatform sample setup
prof18 Mar 19, 2023
f56591f
Implement sample
prof18 Mar 19, 2023
b3cee70
Create api dump
prof18 Mar 20, 2023
3ee1817
Setup for dev publishing
prof18 Mar 22, 2023
311374c
Fix settings and copy task
prof18 Mar 22, 2023
a505aff
Fix publish
prof18 Mar 23, 2023
9058b7f
Setup basic iOS client
prof18 Apr 1, 2023
06c5bd7
Fix regex that get image link from content
prof18 Apr 3, 2023
2877820
iOS: Return null if nothing is found on attributes map
prof18 Apr 8, 2023
ce2aa17
Create new packages
prof18 May 9, 2023
35310d3
Change model name
prof18 May 12, 2023
5700cb6
Clean up
prof18 May 14, 2023
e80ffda
Update dependencies
prof18 May 14, 2023
aecce2e
Catch exception that could happen with regex
prof18 May 14, 2023
3388f1a
Rename sample kotlin to sample android
prof18 May 15, 2023
99c1d3b
Rename package from prof to prof18
prof18 May 15, 2023
2434e6e
New dev version
prof18 May 19, 2023
f2a57e7
Update API
prof18 May 19, 2023
50a62e8
Rename getChannel function
prof18 May 23, 2023
d57de5f
Add parsing from string
prof18 May 24, 2023
d558b5e
Cherry pick Android Atom support
prof18 Jun 16, 2023
33f1776
Add Atom support on JVM
prof18 Jun 18, 2023
5648612
Add Atom support on iOS
prof18 Jun 27, 2023
5549289
Test refactor
prof18 Jun 30, 2023
f5a0594
Formatting clean-up
prof18 Jun 30, 2023
25d9748
Rewritten docs
prof18 Jul 2, 2023
b9722d2
Fix Atom parser
prof18 Jul 31, 2023
e5931b5
Return error if parsing fails on iOS
prof18 Aug 1, 2023
5ab4aaf
Fix api dump
prof18 Aug 1, 2023
157e017
Implement a builder and a default constructor for RssParser
prof18 Aug 12, 2023
8a365a9
Version bump
prof18 Aug 12, 2023
f5399b6
Update README
prof18 Aug 12, 2023
28edc79
Improve CI
prof18 Aug 12, 2023
ac5610c
Apply suggestions from code review
prof18 Aug 13, 2023
9ca2e7e
Update README.md
prof18 Aug 13, 2023
1888440
Improve README
prof18 Aug 13, 2023
3e7ce6d
Update to Kotlin 1.9
prof18 Aug 13, 2023
839767c
Update deps
prof18 Aug 13, 2023
3ba2d70
Update deps
prof18 Aug 13, 2023
46ab96e
Add feed url checker on the sample
prof18 Aug 14, 2023
41252f7
Add custom parsing exception that can be caught on common code
prof18 Aug 14, 2023
a283008
Bump version
prof18 Aug 14, 2023
3143d6f
Update api dump
prof18 Aug 14, 2023
69bdc62
Improve image extraction logic
prof18 Aug 16, 2023
b6884a3
Improve CI
prof18 Aug 19, 2023
8d65d44
Improve CI
prof18 Aug 19, 2023
c5f9351
Version bump
prof18 Aug 19, 2023
bbe0f18
Fix typo
prof18 Aug 19, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
21 changes: 14 additions & 7 deletions .github/workflows/on-push.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,21 +2,28 @@ name: Test on Push
on:
push:
branches:
- '*'
- 'master'

jobs:
test:
name: Run tests
runs-on: ubuntu-latest
runs-on: macos-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- uses: actions/checkout@v3

- name: Gradle Wrapper Validation
uses: gradle/wrapper-validation-action@v1
- name: set up JDK
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: 17

- uses: gradle/gradle-build-action@v2.4.2
with:
gradle-home-cache-cleanup: true
cache-read-only: false

- name: Test
run: ./gradlew clean check --no-daemon --stacktrace
run: ./gradlew :rssparser:check --no-daemon --stacktrace

- name: (Fail-only) Bundle test reports
if: failure()
Expand Down
19 changes: 13 additions & 6 deletions .github/workflows/pr-checks.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,16 +7,23 @@ on:
jobs:
test:
name: Run tests
runs-on: ubuntu-latest
runs-on: macos-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- uses: actions/checkout@v3

- name: Gradle Wrapper Validation
uses: gradle/wrapper-validation-action@v1
- name: set up JDK
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: 17

- uses: gradle/gradle-build-action@v2.4.2
with:
gradle-home-cache-cleanup: true
cache-read-only: false

- name: Test
run: ./gradlew clean check --no-daemon --stacktrace
run: ./gradlew :rssparser:check --no-daemon --stacktrace

- name: (Fail-only) Bundle test reports
if: failure()
Expand Down
38 changes: 28 additions & 10 deletions .github/workflows/publish-library.yaml
Original file line number Diff line number Diff line change
@@ -1,21 +1,28 @@
name: Publish

on:
release:
# We'll run this workflow when a new GitHub release is created
types: [released]

jobs:
build:
runs-on: ubuntu-latest
runs-on: macos-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- uses: actions/checkout@v3

- name: Gradle Wrapper Validation
uses: gradle/wrapper-validation-action@v1
- name: set up JDK
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: 17

- uses: gradle/gradle-build-action@v2.4.2
with:
gradle-home-cache-cleanup: true
cache-read-only: false

- name: Test
run: ./gradlew clean check --no-daemon --stacktrace
run: ./gradlew :rssparser:check --no-daemon --stacktrace

- name: (Fail-only) Bundle test reports
if: failure()
Expand All @@ -29,14 +36,25 @@ jobs:
path: build-reports.zip

publish:
runs-on: ubuntu-latest
runs-on: macos-latest
needs: [build]
steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v3

- name: set up JDK
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: 17

- uses: gradle/gradle-build-action@v2
with:
gradle-home-cache-cleanup: true
cache-read-only: false

- name: Upload Snapshot
run: ./gradlew :rssparser:publishAllPublicationsToMavenCentral --no-daemon --no-parallel --no-configuration-cache --stacktrace
run: ./gradlew :rssparser:publishAllPublicationsToMavenCentralRepository --no-daemon --no-parallel --no-configuration-cache --stacktrace
env:
ORG_GRADLE_PROJECT_mavenCentralUsername: ${{ secrets.OSSRH_USERNAME }}
ORG_GRADLE_PROJECT_mavenCentralPassword: ${{ secrets.OSSRH_PASSWORD }}
Expand Down