summaryrefslogtreecommitdiffhomepage
path: root/lib/axlsx/rels
AgeCommit message (Collapse)Author
2023-06-10Fix safe Style/ColonMethodCall offensesGeremia Taglialatela
Caxlsx is using both `.` and `::`, 220 occurrences vs 280 to invoke methods on `Axlsx` module. This commit standardizes the approach towards `.`, which will also allow shorter lines. Performance is not affected ``` Comparison: Axlsx.validate: 8515252.3 i/s Axlsx::validate: 8512863.7 i/s - same-ish: difference falls within error ```
2023-05-24Fix Style/RedundantFileExtensionInRequire offensesGeremia Taglialatela
2023-05-18Fix YARD warningsGeremia Taglialatela
- `should_use_same_id_as?` has been replaced by `ids_cache_key` in 913003e Also fixes a typo [ci skip]
2023-05-09Do not change the whitespace that is produced by to_xml_string'sPaul Kmiec
2023-05-05Pipe output directly to str and avoid additional memory allocationsPaul Kmiec
Currently, there are lots of examples of code like this, ``` str << ('<tag ' << foo << ' ' << bar << '/>') ``` which create the string for the tag in memory before piping to str. We can avoid creating all of these intermediate strings by dropping the paranthesis and piping directly to str. This relies on the `str` passed around to handle lots of small appends. This is a problem when using RubyZip, but that is solved in the next commit.
2023-05-04Fix tests / code to work with frozen string literalsPaul Kmiec
2023-05-04Enable Style/FrozenStringLiteralComment and autocorrectPaul Kmiec
2023-04-09Fix offenses related to indentation consistencyGeremia Taglialatela
2023-04-08Fix space-related offensesGeremia Taglialatela
- Layout/SpaceAfterComma - Layout/SpaceAroundEqualsInParameterDefault - Layout/SpaceAroundOperators - Layout/SpaceBeforeBlockBraces - Layout/SpaceInsideBlockBraces - Layout/SpaceInsideHashLiteralBraces - Layout/SpaceInsideParens
2023-04-08Fix EmptyLines related offensesGeremia Taglialatela
2023-04-06Fix Style/Encoding offensesGeremia Taglialatela
``` rubocop --only Style/Encoding -a ```
2023-04-06Remove Layout/TrailingWhitespace offensesGeremia Taglialatela
``` rubocop --only Layout/TrailingWhitespace -a ```
2022-03-02instance_values -> instance_values_forpjskennedy
2022-03-02Update references to use new class methodpjskennedy
2019-10-02Cache relationship in Hash rather than in Array.Vladimir Kochnev
Also cacle only ids, not entire instances.
2019-10-02Fix Relationship.instances cache.Vladimir Kochnev
This PR aims to fix several issues with Relationship cache: 1) It's not threadsafe, so I propose to use a TLS variable for this. 2) Memory obtained by cache remains non-freed before the next run of `serialize`. I think it should be freed immediately. 3) Memory should be freed in `ensure` block to prevent memory bloating in case of exception. *There are only two hard things in Computer Science: cache invalidation and naming things.*
2017-04-01chore(doc): document some membersrandym
2014-02-26Huge refactoringJurriaan Pruis
Do not create huge strings Let Row inherit from SimpleTypedList Optimized sanitizing Optimized validation And more..
2013-07-08Implement Relationship.clear_cached_instances, use it before serializing the ↵Stefan Daschek
package. This is necessary to make serialization idempotent (i.e. make sure that Relationship instances are generated with the same IDs everytime the package is serialized). It also fixes a memory leak if Axlsx is used in a long running server process (eg a Rails app).
2013-07-08Simply Relationship.next_free_id by depending on number of cached instances.Stefan Daschek
Only drawback: Setting @next_freed_id_counter to 1000 in tc_helper.rb is no longer possible. But this was useful mainly while adding / fixing test cases when implementing the Relationship instance cache.
2013-07-08Make relationship ids more reliable.Stefan Daschek
Relationship instances now keep track of their own id – this should be much more reliable than the old way of more or less “guessing” the relationship id based on the position of some object in some array. Fixes https://github.com/randym/axlsx/issues/212, especially. Each relationship now has its own, unique id – except for the cases when it doesn’t: Some relationships need to share the same id, see `Relation#should_use_same_id_as?` for the gory details. All tests pass, and the full example.xlsx is generated without errors and looks fine in Excel for Mac 2011. The pivot table example still has the problems mentioned in https://github.com/randym/axlsx/issues/168 – but as far as I can tell I didn’t make it worse (Excel is still be able to “repair” the file, and the repaired file then contains the pivot table).
2012-11-27Merge pull request #148 from alexrothenberg/pivot_tableRandy Morgan (@morgan_randy)
Create a simple Pivot Table
2012-11-27Create a simple Pivot TableAlex Rothenberg
* an example can be run with `ruby examples/pivot_table.rb` * right now you cannot set options on the pivot table to make it useful (coming soon...)
2012-11-12Escape URLs used as target for hyperlinks.Stefan Daschek
Up to now, when using an URL containing a & character, the generated XML was invalid.
2012-07-141.1.8 release prepRandy Morgan
2012-05-19correct relation management for comments and some spec improvements for ↵Randy Morgan
package to provide more breadth in serialization integration testing.
2012-05-13remove discontinued to_xml methodRandy Morgan
2012-04-01rebuild all serialization to use string concatenation instead of nokogiri.Randy Morgan
2012-04-01part way through changing all serialization to use string concatenation ↵Randy Morgan
prior to dropping Nokogiri dep in production.
2012-03-04fix typos in docsRandy Morgan
2012-02-12Adding in support for optionally using the shared strings table. This will ↵Randy Morgan
allow us to inter-op properly with Numbers
2012-02-02Adding in hyperlinking for images as per issue #22Randy Morgan
2012-01-18remove linebreaks/indentation when saving to encourage interop with rubyXLRandy Morgan
https://github.com/randym/axlsx/issues/19
2011-11-26adding in support for ruby 1.9.3Randy Morgan
release version 1.0.9
2011-11-23Adding image support and some document clean up for .8 releaseRandy Morgan
2011-11-20first commitRandy Morgan