What is the best way to determine, without an Oracle support contract, the release date of an Oracle Database 12c patchset?
Patchsets? That is easy.


12.1.0.1 is a base release
12.2.0.1 is a base release
12.1.0.2 is the one and only 12c patchset, it was released in July 2014: https://blogs.oracle.com/imc/oracle-database-12c-release-1-12102-generally-available


For PSU/RU/RUR/one-off patches, opatch lists the date they were packaged, e.g.:

$ /u01/app/oracle/product/12.2.0/dbhome_1/OPatch/opatch lsinv | grep Created -B 1

Patch description:  "Database Jul 2018 Release Update : 12.2.0.1.180717 (28163133)"
   Created on 6 Jul 2018, 08:05:03 hrs PST8PDT


Note that this is not the release date, they can be packaged weeks before the actual release.

Another thing to note, Oracle includes the release date in PSU/RU/RUR versions since 2016. So the version 12.2.0.1.180717 above means it is the RU for 12.2.0.1 that was released on 2018-07-17.

The list of most recent or the one released prior PSU/RUs:


12.1.0.2.180417
12.1.0.2.180717
12.2.0.1.180417
12.2.0.1.180717


The patching for 12.1.0.1 ended 2 years ago (2016-08-31).