Main Koha release repository https://koha-community.org
Find a file
Tomas Cohen Arazi 40d3800cc4 Bug 9114: Make frameworks import/export routines correctly use UTF-8
Currently both the import_export_framework.pl script outputs data with
Perl's default encoding, ISO-8859. This patch properly sets
the binmode to UTF-8 when exporting SQL and CSV files using the PerlIO
layer (":encoding(UTF-8)") for STDOUT.

To test:

Export step test
- Use some ASCII character(s) with DIACRITICS in some field description
  in a chosen framework.
- Export the framework at Administration > MARC frameworks
- Run this to check the file is ISO-8859 encoded:
 $ file export_XXX.csv
 export_XXX.csv: ISO-8859 text, with very long lines
 (Note: try SQL and other output formats too. But not ODS)
- Apply the patch
- Export the framework again (change the name), and test encoding:
 $ file export_XXX_2.csv
 export_XXX_2.csv: UTF-8 Unicode text

Import step test
I assume you have two files, export_XXX.csv (ISO-8859 encoded) and
export_XXX_2.csv (XXX will depend on your framework's code)
- Reset your testing branch to master
- Import export_XXX.csv
- The string with non-ASCII chars is truncated at the first non-ASCII
  char's position (Note: this is the current behaviour).
- Import export_XXX_2.csv
- The non-ASCII chars are broken, the logs show errors on non-UNICODE
  chars.  (Note: even thou UTF-8 is the expected encoding it is
  treated as ISO-8859).
- Apply the patch
- Import the good (UTF-8 as expected) file and check everything worked
  as expected.

No double encoding should occur with either combination of formats.

Sponsored-by: Universidad Nacional de Cordoba
Signed-off-by: Magnus Enger <digitalutvikling@gmail.com>
I put some Norwegian and accented letters in a fremawork to test.
Before the patch, the exported CSV came out as ISO-8859, after the
patch it came out as UTF-8. ODS and XML (viewed in LibreOffice)
both looked good, before and after the patch.

Importing the ISO-8859 CSV cut off the strings at the first non-ASCII
char. Importing the UTF-8 CSV worked as epected.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Works as expected, passes tests and QA script.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2014-03-14 14:37:31 +00:00
acqui Bug 11366: make "no group" option in acq basket group drop-down translatable 2014-03-13 14:43:01 +00:00
admin Bug 9114: Make frameworks import/export routines correctly use UTF-8 2014-03-14 14:37:31 +00:00
authorities Bug 11652: ensure that merging authority records corrects biblios 2014-02-13 03:03:21 +00:00
basket Bug 10605: fix encoding issue on basket email (INTRANET) 2013-12-10 04:37:12 +00:00
C4 Bug 11923: fix option to sort contents of MARC record batches by citation descending 2014-03-13 15:10:56 +00:00
catalogue Bug 11096: support the retrieval of large MARCXML records 2014-02-28 19:50:09 +00:00
cataloguing Bug 11096: support the retrieval of large MARCXML records 2014-02-28 19:50:09 +00:00
circ Bug 11751: remove dead code related to handling members of institution patrons 2014-03-11 15:05:14 +00:00
course_reserves Bug 11866: (follow-up) repair security issue introduced by main patch 2014-03-10 14:57:17 +00:00
debian Bug 11705 - change versioning of build-git-snapshot 2014-03-12 01:49:56 +00:00
docs Bug 7143: Updating about page and history 2014-01-16 15:28:13 +00:00
errors
etc Bug 11078: Add locking to rebuild_zebra 2014-02-28 22:21:41 +00:00
install_misc Bug 11757: remove dependency on POE 2014-02-15 01:38:15 +00:00
installer Bug 11928: DBRev 3.15.00.025 2014-03-13 14:40:31 +00:00
Koha Bug 11928 - Remove unused table aqorderdelivery 2014-03-13 14:37:16 +00:00
koha-tmpl Bug 11386: standardize validation of the subscription add/edit form 2014-03-13 16:51:48 +00:00
labels Bug 11096: support the retrieval of large MARCXML records 2014-02-28 19:50:09 +00:00
members Bug 10861: (follow-up) various refactoring 2014-03-12 02:17:34 +00:00
misc Bug 10415 - Add course reserves to staff client home page 2014-03-12 18:15:24 +00:00
offline_circ Bug 10240: (follow-up) don't display patrons as lost or gone-no-address incorrectly 2013-10-11 01:57:05 +00:00
opac Bug 11647: (follow-up) add comment expressing that user must be logged in 2014-03-13 14:57:04 +00:00
OpenILS Bug 9239 QA follow-up: remove stray debug code 2013-03-16 21:32:34 -04:00
patron_lists Bug 10565: (follow-up) add new user permission for patron list management 2013-10-14 22:43:03 +00:00
patroncards Bug 10636 - patronimage should have borrowernumber as PK, not cardnumber 2013-10-14 21:08:02 +00:00
plugins Bug 7804 - Add Koha Plugin System - QA Followup 2 2013-03-20 14:50:19 -04:00
reports Bug 11718 - Use new DataTables include in reports templates 2014-03-12 17:33:25 +00:00
reserve Bug 9823: Refactor return from GetReservesFromBiblionumber 2014-01-30 16:19:55 +00:00
reviews Bug 1623 - Provide view of approved comments 2011-12-27 18:26:50 +01:00
rotating_collections Bug 9605: rotating collections permissions are wrong 2013-03-30 22:11:05 -04:00
selenium
serials Bug 11096: support the retrieval of large MARCXML records 2014-02-28 19:50:09 +00:00
services Bug 7178: Acquisition item creation improvement 2012-03-26 11:07:23 +02:00
skel Bug 11078: Add locking to rebuild_zebra 2014-02-28 22:21:41 +00:00
sms Bug 10611: Use mysql_auto_reconnect instead of ping 2014-03-10 23:15:35 +00:00
suggestion Bug 10277 - Add C4::Context->IsSuperLibrarian() 2013-12-30 15:47:23 +00:00
svc Bug 11704: Make */svc/report print the correct headers 2014-02-13 02:59:42 +00:00
t Bug 11934: (follow-up) tidy up whitespace 2014-03-13 15:18:49 +00:00
tags Bug 10730: Use DataTables on the tag review page 2013-09-25 16:47:59 +00:00
test Bug 5449: JSON malformed in Koha - Blocker with jQuery 1.4.x 2011-03-12 08:53:41 +13:00
tmp/modified_authorities
tools Bug 11493: Revert "Bug 6869 Batch item modification fails whit accented characters" 2014-03-12 17:31:28 +00:00
virtualshelves Bug 10853: All existing routing to get a CSV should return a MARC csv 2013-10-11 02:16:33 +00:00
xt Bug 11304: fix display of detail page holdings tab in translated Bootstrap theme 2013-11-27 16:52:02 +00:00
.htaccess
.mailmap 7439 Mailmap for master 2012-01-27 12:27:58 +01:00
about.pl Bug 11772: Show warning on About page:System information if no active currency is defined 2014-02-18 20:54:23 +00:00
changelanguage.pl Bug 6755 Problems with switching languages 2011-09-23 09:47:09 +12:00
edithelp.pl Bug 11661: sanitize file names supplied to edithelp.pl 2014-02-05 01:36:10 +00:00
fix-perl-path.PL
help.pl Bug 11238: contruct links to the appropriate manual version dynamically 2013-11-23 19:30:16 +00:00
INSTALL Bug 7759, update of install files to use background indexing (and some whitespace tidy) 2012-04-20 16:11:52 +02:00
install-CPAN.pl Bug 5370: Fix all the references to koha.org 2010-11-08 09:41:49 +13:00
INSTALL.debian Bug 8092 follow-up: Add optional dependency on CHI 2012-06-09 13:08:18 +02:00
INSTALL.fedora7 Bug 11757: remove dependency on POE 2014-02-15 01:38:15 +00:00
INSTALL.opensuse Bug 11757: remove dependency on POE 2014-02-15 01:38:15 +00:00
INSTALL.ubuntu Bug 7764: (follow-up) editorial tweaks 2013-10-04 16:27:55 +00:00
koha_perl_deps.pl bug 10548: fix count of missing required dependencies by koha_perl_deps.pl 2013-07-11 14:03:32 +00:00
kohaversion.pl Bug 11928: DBRev 3.15.00.025 2014-03-13 14:40:31 +00:00
LICENSE Bug 9440 - update Koha's LICENSE file from GPL2 to GPL3 2013-02-12 08:52:10 -05:00
mainpage.pl Bug 10080 - Change system pref IndependantBranches to IndependentBranches 2013-05-22 07:58:23 -07:00
Makefile.PL Bug 11078: Add locking to rebuild_zebra 2014-02-28 22:21:41 +00:00
MANIFEST.SKIP Bug 9546 : Updating make manifest tardist 2013-02-06 23:54:46 -05:00
README Bug 9440 - update Koha's LICENSE file from GPL2 to GPL3 2013-02-12 08:52:10 -05:00
README.robots Bug 6411 add another example to README.robots 2011-07-05 14:48:05 +12:00
rewrite-config.PL Bug 10580: adjust Makefile.PL to reflect that Zebra no longer optional in Koha setup 2014-02-21 17:38:15 +00:00

Koha is a free software integrated library system.

Koha is distributed under the GNU GPL version 3 or later.
Please read the file LICENSE for more details.

To install or upgrade Koha, please see the INSTALL file appropriate
to your platform.

Report bugs at http://bugs.koha-community.org/

Visit the Koha Project website at http://www.koha-community.org/