One of the advantages stated about the new texture pack format is that "It will also allow us to mix and match block artwork resolutions" however, it does NOT properly detect non-standard resolutions of blocks (see attached). In the attached sreenshots below, the texture sizes on the blocks that are not mapped properly are 15x and 17x. Instead of properly detecting these resolutions and mapping them properly, the game maps them to the next larger standard (power with a base of 2. 2^4, 2^5, 2^6 ect.) 15x is mapped to 16x, and 17x is mapped to 32x.
Why would anyone want non-standard resolution items? Well, mainly so you and actually have 1 px in the middle instead of jacking the resolution up so high that the middle looks small! 15x will allow you to have objects that actually come to a point in the middle, instead of looking dull or not being centered in the texture space. And lastly, people do it BECAUSE THEY CAN. There is no technical reason why textures should need to be these standard sizes anymore, so we SHOULD be able to use odd resolutions as they have their purpose just as even resolutions do. (Here is the original idea and explanation behind using odd resolutions alongside even ones)
Also attached is my stitched terrain file. It has 21 textures that are 15x (I was excited that they would work, and let down as always), and it has put yellow pixels that become transparent in-game. Also notice it is not square, but doubled due to the amount of textures, and also most of that is unused. It would save space if all of the non-standard resolution textures were put into a different sized image, stitched_terrain_npot.png instead, that way they could also map correctly. Or, it could even stay on the current stitched images, but just be mapped correctly.
2^n sized textures are not required on newer hardware, basically any hardware that supports OpenGL 2.0 or higher.
EDIT: I have become aware that this issue does not just affect non-standard resolution textures, but also smaller standard resolutions, such as 8x, 4x, 2x, and 1x, which are mapped to 16x if you try them.