[Bug 60601] New: Hyperlinks in original worksheet are not removed if there are no more hyperlinks on write.

2017-01-18 Thread bugzilla
https://bz.apache.org/bugzilla/show_bug.cgi?id=60601

Bug ID: 60601
   Summary: Hyperlinks in original worksheet are not removed if
there are no more hyperlinks on write.
   Product: POI
   Version: 3.16-dev
  Hardware: All
OS: All
Status: NEW
  Severity: normal
  Priority: P2
 Component: XSSF
  Assignee: dev@poi.apache.org
  Reporter: p...@uniquare.com
  Target Milestone: ---

If a workbook is loaded that contains hyperlinks, and all hyperlinks are
removed via cell.removeHyperlink(), the written workbook still contains all
hyperlinks.


The following change in XSSFSheet fixes this issue:

// Now re-generate our CTHyperlinks, if needed
if(hyperlinks.size() > 0) 
{
if(worksheet.getHyperlinks() == null) {
worksheet.addNewHyperlinks();
}
CTHyperlink[] ctHls = new CTHyperlink[hyperlinks.size()];
for(int i=0; i

ApacheCon CFP closing soon (11 February)

2017-01-18 Thread Rich Bowen
Hello, fellow Apache enthusiast. Thanks for your participation, and
interest in, the projects of the Apache Software Foundation.

I wanted to remind you that the Call For Papers (CFP) for ApacheCon
North America, and Apache: Big Data North America, closes in less than a
month. If you've been putting it off because there was lots of time
left, it's time to dig for that inspiration and get those talk proposals in.

It's also time to discuss with your developer and user community whether
there's a track of talks that you might want to propose, so that you
have more complete coverage of your project than a talk or two.

We're looking for talks directly, and indirectly, related to projects at
the Apache Software Foundation. These can be anything from in-depth
technical discussions of the projects you work with, to talks about
community, documentation, legal issues, marketing, and so on. We're also
very interested in talks about projects and services built on top of
Apache projects, and case studies of how you use Apache projects to
solve real-world problems.

We are particularly interested in presentations from Apache projects
either in the Incubator, or recently graduated. ApacheCon is where
people come to find out what technology they'll be using this time next
year.

Important URLs are:

To submit a talk for Apache: Big Data -
http://events.linuxfoundation.org/events/apache-big-data-north-america/program/cfp
To submit a talk for ApacheCon -
http://events.linuxfoundation.org/events/apachecon-north-america/program/cfp

To register for Apache: Big Data -
http://events.linuxfoundation.org/events/apache-big-data-north-america/attend/register-
To register for ApacheCon -
http://events.linuxfoundation.org/events/apachecon-north-america/attend/register-

Early Bird registration rates end March 12th, but if you're a committer
on an Apache project, you get the low committer rate, which is less than
half of the early bird rate!

For further updated about ApacheCon, follow us on Twitter, @ApacheCon,
or drop by our IRC channel, #apachecon on the Freenode IRC network. Or
contact me - rbo...@apache.org - with any questions or concerns.

Thanks!

Rich Bowen, VP Conferences, Apache Software Foundation

-- 
(You've received this email because you're on a dev@ or users@ mailing
list of an Apache Software Foundation project. For subscription and
unsubscription information, consult the headers of this email message,
as this varies from one list to another.)

-
To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org
For additional commands, e-mail: dev-h...@poi.apache.org



[Bug 60601] Hyperlinks in original worksheet are not removed if there are no more hyperlinks on write.

2017-01-18 Thread bugzilla
https://bz.apache.org/bugzilla/show_bug.cgi?id=60601

Dominik Stadler  changed:

   What|Removed |Added

   Keywords||PatchAvailable

-- 
You are receiving this mail because:
You are the assignee for the bug.
-
To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org
For additional commands, e-mail: dev-h...@poi.apache.org



[Bug 60541] Column collapsed attribute is incorrectly set when reading file

2017-01-18 Thread bugzilla
https://bz.apache.org/bugzilla/show_bug.cgi?id=60541

Dominik Stadler  changed:

   What|Removed |Added

 OS||All

-- 
You are receiving this mail because:
You are the assignee for the bug.
-
To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org
For additional commands, e-mail: dev-h...@poi.apache.org



Re: Using Apache Commons IO

2017-01-18 Thread Dominik Stadler
Hi,

I don't see the logic of "we should not add new dependencies because our
user do not upgrade", the ones that do upgrade would probably easily manage
as we already have a few of them. The ones that do not upgrade are not
interested in new stuff anyway, but are not affected even if we do add new
ones.

And did people complain about breaking changes as long as we listed them
properly via @Deprecated and in release notes? I mostly remember some
discussions when we did not properly document them and thus caught people
off guard.

If you want to look at some facts about version-usage and upgrade-speed you
can take a look at https://centic9.github.io/github-version-statistics/ it
has both the current version-distribution and timeseries since around
October last year. According to this, open-source projects on Github (only
the ones using Gradle or Maven) use version 3.14 most often, with the
following top 5 as of today:

3.14: 343
3.9: 276
3.13: 188
3.15: 167
3.12: 166

Please note that these are not full numbers, but only the first ~2000
entries found as Github has a 1000-result-limit when searching for the two
buildsystems.
Back in October the numbers were 3.14: 353, 3.9: 310, 3.13: 209, so older
versions do slowly fade out and newer ones actually get used by a fair
share of the projects after some time.

So 3.9 really is still very popular for some reason despite
http://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22org.apache.poi%22%20AND%20a%3A%22poi%22
and http://mvnrepository.com/artifact/org.apache.poi/poi sorting the
versions properly!

Dominik.

On Wed, Jan 18, 2017 at 3:45 AM, Allison, Timothy B. 
wrote:

> Y, I agree with Nick.  I'm slightly inclined to not using Commons IO to
> avoid potential conflicts, but I defer to the more active devs :).
>
> We can't do the equivalent of a maven-shade-plugin in Ant, can we?  Looks
> like maybe in gradle...but...
>
>
> -Original Message-
> From: Nick Burch [mailto:apa...@gagravarr.org]
> Sent: Tuesday, January 17, 2017 3:35 PM
> To: POI Developers List 
> Subject: Re: Using Apache Commons IO
>
> On Tue, 17 Jan 2017, Javen O'Neal wrote:
> > In the spirit of "the best code is no code", how would you feel about
> > replacing our endian classes and IOUtils with Apache Commons IO?
> >
> > The downside is that it adds a dependency.
> > https://poi.apache.org/overview.html#components
>
> How many classes do we need? Do those classes include all the methods we
> need, or are there gaps?
>
> (Having dealt with yet another StackOverflow question today from someone
> stuck on a really old POI version, and knowing that the ones who make it to
> StackOverflow are actually the better ones, I'd rather inline a few classes
> / do nothing instead of adding a dependency that people can get
> wrong)
>
> Nick
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org For additional
> commands, e-mail: dev-h...@poi.apache.org
>
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org
> For additional commands, e-mail: dev-h...@poi.apache.org
>
>


[Bug 60556] IllegalArgumentException: The end () must not be before the start ()

2017-01-18 Thread bugzilla
https://bz.apache.org/bugzilla/show_bug.cgi?id=60556

Dominik Stadler  changed:

   What|Removed |Added

 OS||All

-- 
You are receiving this mail because:
You are the assignee for the bug.
-
To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org
For additional commands, e-mail: dev-h...@poi.apache.org



[Bug 60561] Values wrote in the first visible sheet are overwriting hidden sheet values

2017-01-18 Thread bugzilla
https://bz.apache.org/bugzilla/show_bug.cgi?id=60561

Dominik Stadler  changed:

   What|Removed |Added

 OS||All

-- 
You are receiving this mail because:
You are the assignee for the bug.
-
To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org
For additional commands, e-mail: dev-h...@poi.apache.org



[Bug 60570] Add rudimentary EMF read-only capability

2017-01-18 Thread bugzilla
https://bz.apache.org/bugzilla/show_bug.cgi?id=60570

Dominik Stadler  changed:

   What|Removed |Added

   Severity|normal  |enhancement

-- 
You are receiving this mail because:
You are the assignee for the bug.
-
To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org
For additional commands, e-mail: dev-h...@poi.apache.org



Re: Using Apache Commons IO

2017-01-18 Thread Javen O'Neal
If having dependencies is seen as a negative, we could use Gradle to shadow
our dependencies (we could start with Apache Commons IO, for which we
currently use very little, but makes our code better where used).

If we shadow import just the classes that we need, this would be a decent
compromise between jar/class load time and consumed perm gen space, and
reducing our maintained code base.

On Jan 18, 2017 11:12, "Dominik Stadler"  wrote:

> Hi,
>
> I don't see the logic of "we should not add new dependencies because our
> user do not upgrade", the ones that do upgrade would probably easily manage
> as we already have a few of them. The ones that do not upgrade are not
> interested in new stuff anyway, but are not affected even if we do add new
> ones.
>
> And did people complain about breaking changes as long as we listed them
> properly via @Deprecated and in release notes? I mostly remember some
> discussions when we did not properly document them and thus caught people
> off guard.
>
> If you want to look at some facts about version-usage and upgrade-speed you
> can take a look at https://centic9.github.io/github-version-statistics/ it
> has both the current version-distribution and timeseries since around
> October last year. According to this, open-source projects on Github (only
> the ones using Gradle or Maven) use version 3.14 most often, with the
> following top 5 as of today:
>
> 3.14: 343
> 3.9: 276
> 3.13: 188
> 3.15: 167
> 3.12: 166
>
> Please note that these are not full numbers, but only the first ~2000
> entries found as Github has a 1000-result-limit when searching for the two
> buildsystems.
> Back in October the numbers were 3.14: 353, 3.9: 310, 3.13: 209, so older
> versions do slowly fade out and newer ones actually get used by a fair
> share of the projects after some time.
>
> So 3.9 really is still very popular for some reason despite
> http://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22org.
> apache.poi%22%20AND%20a%3A%22poi%22
> and http://mvnrepository.com/artifact/org.apache.poi/poi sorting the
> versions properly!
>
> Dominik.
>
> On Wed, Jan 18, 2017 at 3:45 AM, Allison, Timothy B. 
> wrote:
>
> > Y, I agree with Nick.  I'm slightly inclined to not using Commons IO to
> > avoid potential conflicts, but I defer to the more active devs :).
> >
> > We can't do the equivalent of a maven-shade-plugin in Ant, can we?  Looks
> > like maybe in gradle...but...
> >
> >
> > -Original Message-
> > From: Nick Burch [mailto:apa...@gagravarr.org]
> > Sent: Tuesday, January 17, 2017 3:35 PM
> > To: POI Developers List 
> > Subject: Re: Using Apache Commons IO
> >
> > On Tue, 17 Jan 2017, Javen O'Neal wrote:
> > > In the spirit of "the best code is no code", how would you feel about
> > > replacing our endian classes and IOUtils with Apache Commons IO?
> > >
> > > The downside is that it adds a dependency.
> > > https://poi.apache.org/overview.html#components
> >
> > How many classes do we need? Do those classes include all the methods we
> > need, or are there gaps?
> >
> > (Having dealt with yet another StackOverflow question today from someone
> > stuck on a really old POI version, and knowing that the ones who make it
> to
> > StackOverflow are actually the better ones, I'd rather inline a few
> classes
> > / do nothing instead of adding a dependency that people can get
> > wrong)
> >
> > Nick
> >
> > -
> > To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org For additional
> > commands, e-mail: dev-h...@poi.apache.org
> >
> >
> > -
> > To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org
> > For additional commands, e-mail: dev-h...@poi.apache.org
> >
> >
>


EMF/WMF files from our regression corpus

2017-01-18 Thread Allison, Timothy B.
All,
  I recently extracted ~9000 emf and ~37000 wmf files from our regression 
corpus: http://162.242.228.174/embedded_files/xmfs.tar.bz2 (301MB).  Enjoy!
  Quite helpful already in working with EMF parser.

  Cheers,

Tim



Re: EMF/WMF files from our regression corpus

2017-01-18 Thread Andreas Beeker
Hi Tim,

thank you ... although I'm currently not working on WMF, this is very helpful!
There are still a lot of features currently not implemented but I haven't had 
examples for.

Andi

-
To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org
For additional commands, e-mail: dev-h...@poi.apache.org



[Bug 60605] New: Convert Workbook.SHEET_STATE_HIDDEN, VISIBLE, and VERY_HIDDEN to enum

2017-01-18 Thread bugzilla
https://bz.apache.org/bugzilla/show_bug.cgi?id=60605

Bug ID: 60605
   Summary: Convert Workbook.SHEET_STATE_HIDDEN, VISIBLE, and
VERY_HIDDEN to enum
   Product: POI
   Version: unspecified
  Hardware: PC
OS: All
Status: NEW
  Severity: enhancement
  Priority: P2
 Component: SS Common
  Assignee: dev@poi.apache.org
  Reporter: one...@apache.org
Blocks: 59836
  Target Milestone: ---

Could be converted to

enum SheetState {
  VISIBLE(0),
  HIDDEN(1),
  VERY_HIDDEN(2);
}


Referenced Bugs:

https://bz.apache.org/bugzilla/show_bug.cgi?id=59836
[Bug 59836] Tracker: Replace primitives with enums
-- 
You are receiving this mail because:
You are the assignee for the bug.
-
To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org
For additional commands, e-mail: dev-h...@poi.apache.org



[Bug 59836] Tracker: Replace primitives with enums

2017-01-18 Thread bugzilla
https://bz.apache.org/bugzilla/show_bug.cgi?id=59836

Javen O'Neal  changed:

   What|Removed |Added

 Depends on||60605


Referenced Bugs:

https://bz.apache.org/bugzilla/show_bug.cgi?id=60605
[Bug 60605] Convert Workbook.SHEET_STATE_HIDDEN, VISIBLE, and VERY_HIDDEN to
enum
-- 
You are receiving this mail because:
You are the assignee for the bug.
-
To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org
For additional commands, e-mail: dev-h...@poi.apache.org



[Bug 60605] Convert Workbook.SHEET_STATE_HIDDEN, VISIBLE, and VERY_HIDDEN to enum

2017-01-18 Thread bugzilla
https://bz.apache.org/bugzilla/show_bug.cgi?id=60605

--- Comment #1 from Greg Woolsey  ---
We don't need the instance constructor argument, just use
enumInstance.ordinal() 

I do like replacing all integer constants like this with enums.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-
To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org
For additional commands, e-mail: dev-h...@poi.apache.org



[Bug 60561] Values wrote in the first visible sheet are overwriting hidden sheet values

2017-01-18 Thread bugzilla
https://bz.apache.org/bugzilla/show_bug.cgi?id=60561

--- Comment #1 from Javen O'Neal  ---
Created attachment 34644
  --> https://bz.apache.org/bugzilla/attachment.cgi?id=34644&action=edit
passing test case

I was unable to reproduce the reported problem using trunk (post 3.16 beta 1).

See attached passing unit test

-- 
You are receiving this mail because:
You are the assignee for the bug.
-
To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org
For additional commands, e-mail: dev-h...@poi.apache.org



[Bug 60561] Values wrote in the first visible sheet are overwriting hidden sheet values

2017-01-18 Thread bugzilla
https://bz.apache.org/bugzilla/show_bug.cgi?id=60561

--- Comment #2 from Javen O'Neal  ---
Created attachment 34645
  --> https://bz.apache.org/bugzilla/attachment.cgi?id=34645&action=edit
longer unit test that more closely resembles original bug report

-- 
You are receiving this mail because:
You are the assignee for the bug.
-
To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org
For additional commands, e-mail: dev-h...@poi.apache.org



[Bug 60561] Values wrote in the first visible sheet are overwriting hidden sheet values

2017-01-18 Thread bugzilla
https://bz.apache.org/bugzilla/show_bug.cgi?id=60561

Javen O'Neal  changed:

   What|Removed |Added

 Status|NEW |NEEDINFO

--- Comment #3 from Javen O'Neal  ---
> All modifications done with Excel on the first visible "DataSheet 1" are 
> reported on the "HiddenSheet".

This doesn't make sense. Modifying one sheet should not modify a different
sheet unless there are formulas on the second sheet. The only other way this
would make sense is if you Ctrl+Click the sheets in Excel to create a sheet
[Group], in which case modifications are applied to all selected sheets in that
group.

Group editing is a GUI feature of Excel (not something that is stored in the
OOXML format, except perhaps for group state).

I did not see a difference in POI's behavior with respect to the values that
were written to the sheets when the hidden sheet was made very hidden.

Please provide a unit test that demonstrates the problem that you have. If at
all possible, test for the problem in POI java code, as this eliminates the
variable of Excel's behavior (different versions, macros that run when the
workbook is opened).

-- 
You are receiving this mail because:
You are the assignee for the bug.
-
To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org
For additional commands, e-mail: dev-h...@poi.apache.org



[Bug 60601] Hyperlinks in original worksheet are not removed if there are no more hyperlinks on write.

2017-01-18 Thread bugzilla
https://bz.apache.org/bugzilla/show_bug.cgi?id=60601

Javen O'Neal  changed:

   What|Removed |Added

 Resolution|--- |FIXED
 Status|NEW |RESOLVED

--- Comment #1 from Javen O'Neal  ---
Thanks for finding this edge case.

Fixed on trunk in r1779426. This will be fixed in the next beta release, 3.16
beta 2, and subsequent releases.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-
To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org
For additional commands, e-mail: dev-h...@poi.apache.org



Build failed in Jenkins: POI-DSL-1.6 #112

2017-01-18 Thread Apache Jenkins Server
See 

Changes:

[onealj] update changelog for bug 60601. Thanks to Joachim Piketz

[onealj] bug 60601: unlink hyperlinks from a sheet if all hyperlinks have been 
removed. Patch from Joachim Piketz

--
[...truncated 13438 lines...]
 [java] at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
 [java] at java.lang.reflect.Method.invoke(Method.java:597)
 [java] at 
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
 [java] at 
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
 [java] at 
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
 [java] at 
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
 [java] at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
 [java] at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
 [java] at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
 [java] at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
 [java] at 
org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
 [java] at 
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
 [java] at 
org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
 [java] at 
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
 [java] at 
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
 [java] at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
 [java] at org.junit.runners.Suite.runChild(Suite.java:128)
 [java] at org.junit.runners.Suite.runChild(Suite.java:27)
 [java] at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
 [java] at 
org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
 [java] at 
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
 [java] at 
org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
 [java] at 
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
 [java] at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
 [java] at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
 [java] at org.junit.runner.JUnitCore.run(JUnitCore.java:115)
 [java] at org.junit.runner.JUnitCore.run(JUnitCore.java:105)
 [java] at org.junit.runner.JUnitCore.run(JUnitCore.java:94)
 [java] at org.apache.poi.util.OOXMLLite.build(OOXMLLite.java:131)
 [java] at org.apache.poi.util.OOXMLLite.main(OOXMLLite.java:88)
 [java] 290) testCertChain(org.apache.poi.poifs.crypt.TestSignatureInfo)
 [java] org.apache.poi.openxml4j.exceptions.InvalidFormatException: Package 
should contain a content type part [M1.13]
 [java] at 
org.apache.poi.openxml4j.opc.ZipPackage.getPartsImpl(ZipPackage.java:292)
 [java] at 
org.apache.poi.openxml4j.opc.OPCPackage.getParts(OPCPackage.java:758)
 [java] at 
org.apache.poi.openxml4j.opc.OPCPackage.open(OPCPackage.java:298)
 [java] at 
org.apache.poi.poifs.crypt.TestSignatureInfo.testCertChain(TestSignatureInfo.java:511)
 [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 [java] at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
 [java] at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
 [java] at java.lang.reflect.Method.invoke(Method.java:597)
 [java] at 
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
 [java] at 
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
 [java] at 
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
 [java] at 
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
 [java] at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
 [java] at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
 [java] at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
 [java] at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
 [java] at 
org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
 [java] at 
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
 [java] at 
org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
 [java] at 
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
 [java] at 
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)