This is the initial functioning release of glsl-preprocessor
based on JCPP. The following are changes made compared to the upstream version of JCPP.
- Removed checked exceptions
- Moved file system-related things into the
fs
package - Added virtual file system functionality and improved string-handling aspects in
Preprocessor
- Removed file system reading classes. The only file system reading functionality is now
ResourceFileSystem
that is used for testing - Added virtual and in-memory file system classes and functionality
- Added support for GLSL-specific directives like
#extension
,#version
,#custom
, and a different type of#line
that only uses numbers - Added snapshot and error tests for GLSL-specific situations and functionality
- Removed guava and replaced it with builtin methods from the standard library
- Removed dead code and cleaned up some things
Meta:
- Reformatted much of the code
- Upgraded the source compatibility to Java 17 (LTS)
- Added jacoco coverage testing
This library isn't directly connected to glsl-transformer but it is useful as a preprocessing step as glsl-transformer expects already preprocessed code. Furthermore it shares some of the testing code and build configuration.