Skip to content

Commit

Permalink
sets up pipeline (#90)
Browse files Browse the repository at this point in the history
  • Loading branch information
codyfrehr committed Feb 19, 2024
1 parent 7fad272 commit 2c138a0
Show file tree
Hide file tree
Showing 4 changed files with 38 additions and 19 deletions.
32 changes: 32 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: CI
on:
push:
branches:
- main
pull_request:
branches:
- main

permissions:
contents: read

jobs:
build-test-install:
name: Build, Test, and Install
runs-on: ubuntu-latest
steps:
- name: Setup JDK 8
uses: actions/setup-java@v4
with:
java-version: '8'
distribution: 'liberica'
- name: Checkout
uses: actions/checkout@v4
- name: Compile
run: ./mvnw clean compile
- name: Test
run: ./mvnw test
- name: License Check
run: ./mvnw license:check
- name: Install
run: ./mvnw install -DskipTests
5 changes: 3 additions & 2 deletions README.adoc
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
= Xpdf API
//TODO: automatically inject build status, like spring boot project does
//TODO: look at other readme with .adoc structure, and see what other ways there are to format this. for example, spring boot has tabs for "Security" and "Code of Conduct" - pretty cool!

image::https://github.com/codyfrehr/xpdf-api/actions/workflows/ci.yml/badge.svg?event=push&branch=main[]

Xpdf API is a collection of Java APIs for https://www.xpdfreader.com/about.html[Xpdf], the open source library for operating on PDF files written in C++.
Xpdf is an invaluable PDF toolkit, and this project aims to make it more accessible to the Java community.

Expand Down Expand Up @@ -54,7 +55,7 @@ We also strongly encourage you to read the _pdftotext_ source documentation for
//TODO: link to docs in repo..?
Documentation can be found alongside the executable file in the package resources.

image:_doc/readme/javadoc_pdftextoptions.jpg[IntelliJ JavaDoc]
image::_doc/readme/javadoc_pdftextoptions.jpg[]

=== Examples

Expand Down
10 changes: 3 additions & 7 deletions TODO
Original file line number Diff line number Diff line change
@@ -1,18 +1,14 @@
- should make use of the term "RICH text" or "rich PDF" in your javadocs and documentation, and make a special note about how this only works on PDF files with RICH TEXT
- should make use of the term "RICH text" or "rich PDF" in your javadocs and readme, and make a special note about how this only works on PDF files with RICH TEXT
- test all code examples from readme and javadocs to ensure they are working!
- should we impose a default timeout of 30 seconds on the tool?
on one hand, its a very nice safeguard that 99% of use cases will fall into, and will prevent user's apps from inadvertently hanging.
on the other hand, it imposes a constraint on the user they didnt choose (maybe we can provide option to make unlimited?)
- write README
- add special note somewhere about how this will only work on PDF files with RICH TEXT
- update github project "About" section, and other general settings for the repo
- setup namecheap xpdf.io domain to automatically redirect to github repo, until website built https://www.namecheap.com/support/knowledgebase/article.aspx/385/2237/how-to-set-up-a-url-redirect-for-a-domain/
but first, need to get hosting for site and install ssl cert
- request derek to add link to your library on their webpage
- reorganize SCRIBBLES into official supporting documents
- write CONTRIBUTING (is this standard name for developer instructions to contribute? DEVELOPERS seems like a better name for file maybe?)
- what other files?
- set up github CI/CD pipeline
- setup coverage check in pipeline
- setup cucumber integration tests
- set up github issue management
- fix broken github links on resume and website
- figure out process to deploy to maven central repo
Expand Down
10 changes: 0 additions & 10 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -320,16 +320,6 @@
</dependencyPolicy>
</dependencyPolicies>
</configuration>
<executions>
<!--checks (1) all source files have proper licensing header, and (2) all dependencies are GPLv3 compatible-->
<execution>
<id>gplv3-compatibility-check</id>
<phase>test</phase>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</pluginManagement>
Expand Down

0 comments on commit 2c138a0

Please sign in to comment.