The v0.3.2 release includes updates to the API, database connection handling, and the Windows installer. Please see the attached binary 3DR_setup_0.3.2.exe, which is a Windows installer executable for the v0.3.2 release.
Upgrade existing installations
The installer now recognizes existing installations, and will upgrade instead of overwriting. All objects, user accounts, and statistics will remain, however we currently lose settings. When upgrading, you'll need to know the information for your Fedora and MySQL server, and re-enter all the settings just as during a regular installation. Existing databases and config documents will be saved in a folder called 'backups' under the install directory. You can look here if you don't know the old config info.
Open Source
Obviously, we've migrated the project to GitHub. We hope that this will give our community greater transparency into the development process. Please feel free to become a contributor, or to file bug reports.
Big Changes to the REST API
The REST API now includes upload features, so you can write a client that does mass imports against your installation. The upload respects all the normal permission features. Also, slight changes to the API datatypes to respect a HATEOAS philosophy. Metadata, search results, and reviews all contain links that allow you to navigate the API. We've also added a few endpoints for upload, so that POSTing to /pid/ or /pid/OriginalUpload, or even / all do the same thing as POSTing to /UploadModel
Federated Search
Now, you can search the federation directly from any install of the 3DR software. This means that you can see results from the ADL demo site on your server, and results from any other partners that choose to participate. The federation capabilities have been around for a while, but without any GUI, they've been invisible. The federation respects the permissions you set for objects - only objects that are visible to 'AnonymousUsers' will be shown, and when someone attempts to download a model over the federation, they will be prompted for credentials by the hosting server, unless the object is marked for anonymous download.
Settings Pages for Administrators
This is a big one. Previously, you probably had to do a fair bit of digging around in config files to get the site running. Now, assuming your web server is setup, most of that can be accomplished though the GUI. There are pages for just about every setting you are likely to modify, including the connections to MySQL, Fedora, and SMTP, the site data like support email and company name, the email text that will be sent to users, Federal Learning Registry integration parameters, and setting for the API. Many settings groups have a 'Test' button, that will allow you to guess at the proper settings much easier than rooting around in config files, then clicking around the site to see if it worked. Also, there is a nice GUI tool for enrolling in the federation. I'll make a separate document on how to use that tool, but it should be pretty easy to figure out.
All Changes
- Fixed a bug preventing upload of thumbnails for unconvertable models
- Fixed paging buttons in federation search
- Lots of little fixes relating to install settings
- Download link for mysql in installer no longer works, updated
- Fixed API bug, now returns moreinformationURL from metadata.
- POST to raw endpoint / is now upload in keeping with REST
- Slight change to database stored proc CreatePermittedObjectsTable to show objects where the user is the submitter. Useful if permission table is broken and the submitter did not set explicit permissions set for an object
- Slight tweak to API installer web.config to include API descriptive info
- In keeping with REST design, POST to /originalUpload/ now uploads and overwrites
- Download links in API metadata now null when conversion not available
- API now follows a HATEOAS design philosophy, describes itself in call results.
- Added fields for conversion available and anonymous download allowed to metadata
- More management of connections in the API
- Serve.ashx now returns 404 for missing textures instead of blank stream.
- WebGL viewer now uses diffuse color instead of black for missing textures.
- API now re-sizes and formats textures on upload.
- Force added .gitignore files for /app_data
- Changes to the way SQL connections are handled. Now, connections are killed explicitly when not used.
- Updates to GUI interaction in settings pages
- Added debug local file system file store
- Connection management improvements, upload capabilities for the REST API
- Federation search results now show federate server name
- Added pages directive for passwordtextbox to installer template web.config
- Changes to Federation. Now, settings page includes some pretty options for registering.
- The federation API will only assign a previously used namespace to the original organization, even if it was delisted.
- The API now counts downloads
- Homepage includes options to search the federation.
- Updated graphics on settings page to reflect federation status better.
- Modified federation server to return nice error in case where namespace had been previously registered to a different organization.
- Updated federation to align with current API, now sends 'AnonymousUser' credentials
- Added federation control, api control, settings pages
- Added config sections to admin page
- Added sleep after IIS stop in upgrade install.
- Upgrade.sql now correctly creates permissions for old objects that were uploaded before the permission system existed
- Moved rebuild thumb tools into administrators, added to sitemap, did some style changes
- Bugfix for async thumbnail rebuild
- RebuildThumbnail cache tool now async, and a bit prettier
- Improvements to upgrade path for installer, added stop of IIS.
- Upgrade to installer to disallow install of Fedora and MySQL when detected on system already, and not allow IIS config when running less then version 7.
- Removed selenium binary from testing.
- Added ability to upgrade existing installation. Installer contains logic to detect installation, overwrite files, backup configs and run update.sql instead of setup.sql
- Added .gitignore files for common cases to github
- Added config templates to github