Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 6 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,23 +41,22 @@ general purpose Java utilities from the Aviation Risk Identification and Assessm
### Early Open Sourcing checklist

- [ ] Add "CONTRIBUTION.md" rules
- [ ] Add Roadmap
- [ ] Then pivoting to Java 17
- [ ] Removing pair and triple (only in Java 17+)
- [ ] (Re)Add code coverage

---

## Adopting!

All official releases are available at [Maven Central](https://central.sonatype.com/artifact/org.mitre/commons).
The latest official release is version: `0.0.58`
- Adopting this Java library requires your project to be on Java 17 or later.
- The latest official release is version: `0.0.59`
- All official releases are available at [Maven Central](https://central.sonatype.com/artifact/org.mitre/commons).


#### Gradle

```
dependencies {
implementation("org.mitre:commons:0.0.58")
implementation("org.mitre:commons:0.0.59")
}
```

Expand All @@ -67,7 +66,7 @@ dependencies {
<dependency>
<groupId>org.mitre</groupId>
<artifactId>commons</artifactId>
<version>0.058</version>
<version>0.059</version>
</dependency>
```

Expand Down
2 changes: 1 addition & 1 deletion build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ plugins {
}

group = "org.mitre"
version = "0.0.59-SNAPSHOT"
version = "0.0.59"

repositories {
mavenCentral()
Expand Down
32 changes: 23 additions & 9 deletions docs/publish-to-maven-central.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,24 +16,38 @@ intentionally un-automated to ensure releases are always highly intentional acti

**The Goal: Manually create an "asset bundle" we can upload to maven central**

- Official "how-to" documentation is [here](https://central.sonatype.org/publish/publish-manual/)
- The final `bundle.jar` must be suitable for `maven central` (Developer list, SCM Urls, Project Description, etc.)
- Official "how-to" documentation is [here](https://central.sonatype.org/publish/publish-portal-upload/)
- Older, partially out-dated (but still useful) "how-to" documentation is [here](https://central.sonatype.org/publish/publish-manual/)
- The final `.pom` must be suitable for `maven central` (Developer list, SCM Urls, Project Description, etc.)
- Make build must create these resource:
- `software-libary.jar`
- `software-libary.pom`
- `software-libary-source.jar`
- `software-libary-javadoc.jar`
- **Action:** Sign all artifacts with gpg
- **Action:** Sign all 4 artifacts with gpg
- **Run:** `gpg -ab commons-X.Y.Z.jar`
- **Run:** `gpg -ab commons-X.Y.Z.pom`
- **Run:** `gpg -ab commons-X.Y.Z-sources.jar`
- **Run:** `gpg -ab commons-X.Y.Z-javadoc.jar`
- **Action:** Bundle all the artifacts into one jar.
- **Action:** Generate the MD5 checksum of all 4 artifacts
- **Run:** `md5sum commons-X.Y.Z.jar | cut -d " " -f 1 > commons-X.Y.Z.jar.md5`
- **Run:** `md5sum commons-X.Y.Z.pom | cut -d " " -f 1 > commons-X.Y.Z.jar.md5`
- **Run:** `md5sum commons-X.Y.Z-sources.jar | cut -d " " -f 1 > commons-X.Y.Z-sources.jar.md5`
- **Run:** `md5sum commons-X.Y.Z-javadoc.jar | cut -d " " -f 1 > commons-X.Y.Z-javadoc.jar.md5`
- **Action:** Generate the SHA1 checksum of all 4 artifacts
- **Run:** `sha1sum commons-X.Y.Z.jar | cut -d " " -f 1 > commons-X.Y.Z.jar.sha1`
- **Run:** `sha1sum commons-X.Y.Z.pom | cut -d " " -f 1 > commons-X.Y.Z.jar.sha1`
- **Run:** `sha1sum commons-X.Y.Z-sources.jar | cut -d " " -f 1 > commons-X.Y.Z-sources.jar.sha1`
- **Run:** `sha1sum commons-X.Y.Z-javadoc.jar | cut -d " " -f 1 > commons-X.Y.Z-javadoc.jar.sha1`
- **Action:** Bundle all the artifacts into one .zip file.
- `mkdir -p org/mitre/commons/X.Y.Z`
- `cp commons-X.Y.Z* org/mitre/commons/X.Y.Z`
- create the `.zip` file
- Name the `.zip` whatever you like. This is the file that gets uploaded to the portal
- **Run:**
`jar -cvf bundle.jar commons-X.Y.Z-javadoc.jar commons-X.Y.Z-javadoc.jar.asc commons-X.Y.Z-sources.jar commons-X.Y.Z-sources.jar.asc commons-X.Y.Z.jar commons-X.Y.Z.jar.asc commons-X.Y.Z.pom commons-X.Y.Z.pom.asc`
- This creates the artifact bundle: `bundle.jar`
- Log into `oss.sonatype.org`
- Select `Staging Upload` and provide your `bundle.jar`
- **ALERT:** Sometimes this upload produces an "upload failed" dialog even when the upload was successful
- Select `Staging Repositories` and find the bundle you just uploaded. The artifact repo should list all the checks
the bundle went through.
- Log into `https://central.sonatype.com/`
- Select `Publish`
- Upload your .zip
- Wait for system to verify your upload. It will require jar, pom, sources, docs, md5 checksums, sha1 checksums, pgp signatures.
11 changes: 10 additions & 1 deletion docs/release-notes.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,21 @@
# Release Notes

### Version 0.0.59 (Released 2025-05-21)

- **Migrated to Java 17**
- Added `AltitudePath`, `VehiclePath`, and `PathPair`.
- These classes are designed to be `Key` types used in [DistanceTrees](https://github.com/mitre-public/dist-tree)
- `YyyyMmDd` added `plus` and `minus` methods
- Added `CheckedRunnable` and `CheckedCallable` to automatically demote checked exceptions and allow using methods that
throw Checked Exceptions to be used in standard java lambda places

### Version 0.0.58 (Released 2025-04-05)

- Added LeftMerger utility class
- Added `Time.enclosingTimeWindow(Collection<Instant> times)`
- `MapBuilder` has new convenience functions for certain `MapFeatures`
- Multi-line Strings
- draw circles (Supports `Collection<LatLong>`, `LatLongPath`, and `LatLong64Path`)
- draw circles (Supports `Collection<LatLong>`, `LatLongPath`, and `LatLong64Path`)
- draw paths (Supports `Collection<LatLong>`, `LatLongPath`, and `LatLong64Path`)
- `ReservoirSampler` now implements the `Consumer` interface
- Patched a flawed constructor in `LatLong64Path`
Expand Down
Loading