
Version 0.19
artutils 0.19.0
Breaking Changes
-
Deprecated function aliases removed - The following camelCase function stubs that threw errors directing users to snake_case equivalents have been removed entirely:
- Database interface:
dbArtGet(),dbArtAppend(),dbArtUpdate() - Path functions:
pathImageAsset(),pathArtCanvas(),pathArtworkThumb(),pathArtistThumb(),pathGalleryAsset(),pathCertFrameAsset(),pathCertTemplAsset(),pathArtMainImage(),pathReplayFrame(),pathReplayGraph(),pathArtworkCert() - Prefix functions:
prefixUploads(),prefixGallery(),prefixReplay() - Data access:
getAppdata(),getArtistIndex(),getArtistStyleMap(),getArtistTags(),getArtistOpensea(),getArtworkIndex(),getArtworkStats(),getArtworkMeta(),getArtworkProfile(),getArtworkProfileFull(),getVerificationInfo(),getArtworkOpensea(),artHasNFT(),getFrameAnalytics(),getImageRaster() - Modifiers:
addArtwork(),addCollection(),updateArtistStats(),updateArtistBenchmarks(),deleteCollection()
- Database interface:
get_image_raster()removed - Function deleted; usemagickdirectly for image raster operations.Benchmark functions migrated to artbenchmark -
.parseBenchmarkRow()and benchmark calculation logic moved to the dedicatedartbenchmarkpackage.
artutils 0.19.1
New Features
get_art_print_url()retrieves the external print store URL for an artwork to enable e-commerce integration with print marketplaces.get_art_opensea_url()retrieves the direct OpenSea listing URL for NFT artworks to enable one-click marketplace navigation.get_art_purchase_urls()retrieves print and OpenSea URLs for all artworks by an artist in a single efficient query. Bulk version optimized forget_appdata().get_appdata()now includes$artist$urlsDT— a data.table of purchase URLs (print and OpenSea) for all artist artworks, eliminating extra queries in consuming modules.
artutils 0.19.2
New Features
-
db_art_execute()executes parameterized SQL statements (UPDATE, DELETE, INSERT) usingDBI::dbExecute(). This is the preferred method for executing statements with dynamic values as it prevents SQL injection attacks. Returns the number of affected rows.# Example: parameterized UPDATE n_updated <- db_art_execute( qry = "UPDATE app.artwork_index SET purchase_url = $1 WHERE art_uuid = $2", params = list(url, artwork_uuid) )