OpenRefine 3.9-beta1
Pre-release
Pre-release
This is the first beta release of the 3.9 series. Please backup your workspace directory before installing and report any problems that you encounter.
New features
- Import files using drag and drop. Closes #6250 by @Ahmed-Elgamel in #6438
- Ability to exclude candidates from a cluster. Closes #105 by @zyadtaha in #6448
- Support for user defined clustering distances and keyers by @zyadtaha in #6612
- The Wikibase editing operation reports editing results in the grid by @wetneb in #6555
- A dialog to warn of history entry deletion was added by @wetneb in #6659
- Add support for adding rows to a project by @steve-kasica in #6461
- Large media files can be uploaded to Wikimedia Commons and other Wikibases (#6510) by @sebastian-berlin-wmse in #6531
- A new GREL function (
levensthteinDistance) to calculate the edit distance between two strings by @zyadtaha in #6755 - A new GREL
zipfunction was introduced by @sunilnatraj in #6739 - Ability to handle dates in Jython expressions. Fixes #692 by @tfmorris in #6862
- Alphabetical/chronological sort for multi-file import by @elebitzero in #6844
- Resizeable columns (known to work imperfectly with the Edge browser, see #6932) by @wetneb in #6563
- Option to remove Blank Columns upon project creation by @wsmmxmm in #4757
- An extension mangement page by @Abbe98 in #7012
- Allow uploading new media file versions by @sebastian-berlin-wmse in #6967
- New "remove duplicate rows" operation by @sunilnatraj in #7040
- Search filter for Open Projects page by @Babi-B in #4690
Enhancements
- Ignore JSON comments by default when importing JSON files by @zyadtaha in #6429
- Add module names to About page. Closes #5546 by @tfmorris in #6421
- New look and feel for the wikibase warnings. Closes #5702 by @t8210103 in #6535
- Switch release notification to openrefine.org and display other events by @wetneb in #6511
- The OpenRefine icon is compliant with new MacOS guidelines by @teolemon in #6592
- Improve localization of row/record count bar by @wetneb in #6648
- Replace PNG logo by SVG equivalent by @xinluz6 in #6620
- Preserve pagination after actions which trigger a grid update by @wetneb in #6546
- Limit Wikibase description length to 250 characters by @sebastian-berlin-wmse in #6853
- Avoid creating identical facets in reconciliation and Wikibase editing operations by @wetneb in #6865
- wikibase: More precise editing error messages by @wetneb in #6872
- wikibase: Render property names in issue reports #6768 by @sunilnatraj in #6895
- Move error reporting in apply-operations dialog away from alert into dialog by @wetneb in #6904
- Make the client link clickable in terminals by @Abbe98 in #6976
- Update refine.ini for
REFINE_INTERFACEby @antoine2711 in #6983 - Adds the reconciliation service logo to column header and while schema building by @ayushrai206 in #6156
- Set a delay between opening submenu and hover. Fixes #6672 by @Shubham-M-Rathod in #6965
- Mark tables used for layout as presentational by @Abbe98 in #7003
- Wikibase: proxy manifest requests by @Abbe98 in #6136
- wikibase: Only ignore file upload warnings for matched cells by @wetneb in #7031
- Add escape() function options to escape URL path and fragment by @sunilnatraj in #6715
- wikibase: Improve recon name for created entities by @sunilnatraj in #7053
Bug fixes
- The replace dialog works when the strings involved contain double quotes (Fixes #6367) by @surajbora59 in #6374
- Improve error reporting when parsing incomplete GREL expressions by @surajbora59 in #6368
- Better report importer initialization errors. Fixes #6058 by @tfmorris in #6370
- Correct the reconciliation documentation link display type by @Abbe98 in #6184
- Fix recon dialog suggested types radio button by @Redeem-Grimm-Satoshi in #6397
- Fix swapped button labels in wikibase schema editor by @Redeem-Grimm-Satoshi in #6415
- Fix inconsistent Extract/Apply button location by @Redeem-Grimm-Satoshi in #6450
- Support localized numbers in import settings. Fixes #6351 by @Xiayucheng1212 in #6358
- Fix encoding guesser for non-UTF-8 BOM-based files. Fixes #6595 by @tfmorris in #6596
- recon: Add back missing 'search for match' button by @wetneb in #6600
- grel: Fix NullPointerException in forEachIndex by @tfmorris in #6606
- Make join handling of empty strings consistent even if they are first in array by @tfmorris in #6605
- wikibase: Better handling of the 'badtags' error by @wetneb in #6552
- Fix join() of arrays containing nulls. Fixes #6683 by @tfmorris in #6684
- Solve Excel importing from URL problem. Fixes #6418 by @Kurocifer in #6537
- Fix type of error message returned by the Filter GREL control by @sunil-atheer in #6701
- grel: Integer divide by zero returning null instead of infinity by @Kurocifer in #6708
- Increase TSV/CSV column limit to 32K (from 512). Fixes #6723 by @tfmorris in #6757
- The saving of text files on MacOS Sonoma was fixed. Fixes #6549 by @tfmorris in #6749
- fix: Ensure thread safety of Wikibase date parsing by @wetneb in #6779
- Fix cursor appearance when hovering tabs. Closes #6764 by @GittyHarsha in #6811
- Fix misplaced edit button for empty cells. Closes #5989 by @GittyHarsha in #6812
- File type detection fails when multiple files are imported at once by @sunilnatraj in #6788
- Fix Uncaught RangeError when using Cell Edit button to change String to Date data type. by @GittyHarsha in #6823
- wikibase: Fix NPE when empty edits are scheduled by @wetneb in #6776
- Turn on line separator detection for CSV/TSV import. Fixes #6691 by @tfmorris in #6790
- add documentation for
toTitleCase()second argument (delimiters) by @akashinde in #6846 - Add error reporting to JSON preview parse. Fixes #6454 by @tfmorris in #6912
- Add missing backslash escaping in duplicate facet expression by @wetneb in #6910
- The
toStringGREL function correctly returns an error when formatting template and arguments are inconsistent. Fixes #6943 by @tfmorris in #6946 - ODS file incorrectly recognized as XLS #6877 by @sunilnatraj in #6880
- Fix resultSummary div in Clustering dialog has unnecessary squishyness by @himanshubhatt0512 in #6845
- Fix an inadequate rate-limiting when editing Wikimedia Commons by @sunilnatraj in #6969
- Really fix QuickStatements export this time by @wetneb in #7016
- Fix opening of CSV files with many columns. Closes issue #7038 by @CAMB-dev in #7041
- Minor fixes to translatable files by @SannitaSSJ in #7075
- fix: Deserialization of old cell splitting operation by @wetneb in #7079
Extension changes
- The Google Data integration was removed. It can be added back by installing the refine-gdata-extension which is now maintained in a standalone repository. By @wetneb in #6958
Extension compatibility
- Remove use of Properties for URL query parsing, fixes #6403 by @EliasStihl in #6407
- Extend Exporter interfaces to phase out use of Properties by @tfmorris in #6796
- Remove Denormalize operation by @wetneb in #6468
- Provide slf4j-api & jackson to extension modules. Fixes #6475 by @tfmorris in #6478
- Drop legacy Keyer classes not registered as clustering methods by @wetneb in #6486
- Move Keyer and Distance registration to controller.js by @wetneb in #6487
- Avoid crashing when a cell renderer throws an exception by @wetneb in #6514
- Move exporter registration to controller.js by @wetneb in #6504
- Package Java classes into jars by @wetneb in #6513
- Drop 'sample' extension. by @wetneb in #6484
- Remove grel registration from RefineTest by @wetneb in #6574
- Fix class mapping mechanism broken by the migration to Jackson by @wetneb in #6480
- Restore public API of reconciliation classes. Fixes #6652 by @tfmorris in #6653
- The meaning of the
startparameter in theget-rowscommand was changed by @wetneb in #6546 - Separate 'core' and 'grel' Maven modules by @wetneb in #6651
- Fix CSRF token fetching utility (and Wikibase login) by @wetneb in #6945
- Assign different cascade layers to CSS from different modules by @Abbe98 in #6981
- Deprecate EngineConfig::reconstruct by @wetneb in #7033
- operations: Let core and extensions register icons by @wetneb in #7055
New code contributors
- @Redeem-Grimm-Satoshi made their first contribution in #6397
- @EliasStihl made their first contribution in #6407
- @zyadtaha made their first contribution in #6429
- @WR-Smiley made their first contribution in #6442
- @abhishekkujur1307 made their first contribution in #6473
- @pkumar2001 made their first contribution in #6476
- @Ahmed-Elgamel made their first contribution in #6438
- @Xiayucheng1212 made their first contribution in #6358
- @t8210103 made their first contribution in #6535
- @growfrow made their first contribution in #6545
- @DaxServer made their first contribution in #6593
- @dino2580 made their first contribution in #6626
- @teolemon made their first contribution in #6592
- @Kurocifer made their first contribution in #6537
- @sunil-atheer made their first contribution in #6701
- @steve-kasica made their first contribution in #6461
- @xinluz6 made their first contribution in #6620
- @fivecut made their first contribution in #6734
- @Ash-Crow made their first contribution in #6771
- @GittyHarsha made their first contribution in #6811
- @sunilnatraj made their first contribution in #6788
- @akashinde made their first contribution in #6846
- @wsmmxmm made their first contribution in #4757
- @Shubham-M-Rathod made their first contribution in #6965
- @himanshubhatt0512 made their first contribution in #6845
- @CAMB-dev made their first contribution in #7041
- @SannitaSSJ made their first contribution in #7075
Full Changelog: 3.8-beta1...3.9-beta1
NOTE: Many dependencies have been updated, but they aren't included in the list of changes above.