Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Check size in bytes as opposed to string size #589

Open
wants to merge 46 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
be7d474
Add community caxlsx notice
straydogstudio Sep 9, 2019
3345543
Update README.md
straydogstudio Sep 9, 2019
e9b2db7
Update README.md
straydogstudio Sep 9, 2019
51f4e4f
Release 3.0.0
straydogstudio Sep 9, 2019
6b6673f
Merge branch 'master' of https://github.com/caxlsx/axlsx
straydogstudio Sep 9, 2019
9c19440
Change gem name
straydogstudio Sep 9, 2019
7e13f96
Update README.md
straydogstudio Sep 10, 2019
b63a801
Add caxlsx.rb to make auto require work
kiskoza Sep 17, 2019
08314a9
Gemspec home page fix [skip ci]
straydogstudio Sep 24, 2019
e383a60
Fix URL in README (#6)
pwim Sep 26, 2019
896b95b
add and update some ruby versions
takkanm Sep 18, 2019
e80ac9b
add some ruby versions
takkanm Sep 18, 2019
775b260
Update README.md to show Travis CI status of this fork.
simi Sep 12, 2019
955f130
Update gem install instructions to use caxlsx
noniq Sep 26, 2019
acf116e
Bump dependencies for nokogiri, rubyzip, and Ruby.
inopinatus Sep 10, 2019
bffbc1e
Merge pull request #3 from kiskoza/fix-rails-auto-require
straydogstudio Oct 1, 2019
c73b36d
Fix github links / repo names [skip ci]
straydogstudio Oct 1, 2019
913003e
Fix Relationship.instances cache.
marshall-lee Aug 3, 2016
0946966
Cache relationship in Hash rather than in Array.
marshall-lee Mar 9, 2019
94a9419
Merge pull request #2 from inopinatus/master
straydogstudio Oct 2, 2019
4487cd1
Merge pull request #10 from marshall-lee/caxlsx-fix_relationship_cache
straydogstudio Oct 2, 2019
e712b66
Remove ruby 2.1 and 2.2 from Travis
straydogstudio Oct 4, 2019
1f8f705
Version 3.0.1 bump [skip ci]
straydogstudio Oct 4, 2019
07d8ecf
Readme title fixes [skip ci]
straydogstudio Oct 4, 2019
fff65a9
Fix rake reference [skip ci]
straydogstudio Oct 4, 2019
2224dbc
Use CHANGELOG.md instead of README for changelog
westonganger Oct 28, 2019
76975a3
Remove rubima.md
westonganger Oct 28, 2019
2cdaed0
Add Style Reference
westonganger Oct 28, 2019
eaa635a
fix validate document with font option underline
alimujtaba Oct 14, 2019
c886ae1
Remove a typo from comment
vzvu3k6k Oct 24, 2019
2d77319
Improve README
westonganger Oct 28, 2019
f31c46c
Delete appveyor.yml
westonganger Oct 29, 2019
887f337
Create CONTRIBUTING.md
noniq Oct 30, 2019
45280b4
Add link to contribution guidelines
noniq Oct 30, 2019
345748b
Add link to FAQ
noniq Nov 23, 2019
c1307a3
Add section about where to (not) post questions and find answers.
noniq Nov 23, 2019
bf2cb81
Remove unused / stubbed code related to parsing xlsx files
noniq Dec 3, 2019
2f71254
Add GitHub action for closing stale issues
noniq Dec 14, 2019
45a091e
Add changelog entry for 2.0.2
noniq Dec 14, 2019
19b4859
Mention axslx_styler in related gems section
noniq Dec 15, 2019
8cc722d
Fix typo.
noniq Dec 15, 2019
5f0d84d
Fix typo.
noniq Dec 15, 2019
198f6b7
Fix typo
noniq Dec 15, 2019
75cec07
Fix rdoc for BarSeries#shape
noniq Dec 15, 2019
cfce288
Check size in bytes as opposed to string size
Dec 16, 2019
23a4fa5
Add test for name too long with Unicode characters
Dec 17, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 29 additions & 0 deletions .github/workflows/stale.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: Mark stale issues and pull requests

on:
schedule:
- cron: "0 0 * * *"

jobs:
stale:

runs-on: ubuntu-latest

steps:
- uses: actions/stale@v1
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
days-before-stale: 90
days-before-close: 7
stale-issue-message: >
This issue has been automatically marked as stale because it has not been commented on for at least three months.
It will be automatically closed in 7 days.

If you have any new information or updates please reply in order to keep the issue open.
stale-pr-message: >
This pull request has been automatically marked as stale because has been no activity for at least three months.
It will be automatically closed in 7 days.

If you have any new information or updates please reply in order to keep the pull request open.
stale-issue-label: stale
stale-pr-label: stale
8 changes: 4 additions & 4 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,15 @@ notifications:
irc: "irc.freenode.org#axlsx"
email:
recipients:
- [email protected]
- [email protected]
on_success: always

matrix:
include:
- rvm: 2.1
- rvm: 2.2.8
- rvm: 2.3.5
- rvm: 2.4.2
- rvm: 2.4.7
- rvm: 2.5.6
- rvm: 2.6.4
- rvm: rbx-3
- rvm: jruby-19mode
- rvm: jruby-9.1.17.0
Expand Down
133 changes: 102 additions & 31 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,26 +1,89 @@
CHANGELOG
---------
- **April.1.17**:3.0.0-pre

- **October.4.19**: 3.0.1
- Support for ruby versions limited to officially supported version (Ruby v2.3+)
- Updates to dependency gems, especially nokogiri and ruby-zip
- Fix Relationship.instances cache
- Autoload fix for Rails

- **October.4.19**: 2.0.2
- Released as caxlsx, fork of axlsx
- Update ruby-zip dependency (fixes https://github.com/randym/axlsx/issues/536)

- **September.17.19**: 3.0.0
- First release of caxlsx, fork of axlsx

- **April.1.17**: 3.0.0-pre
- Support for ruby versions limited to officially supported version
- Updates to dependency gems, especially nokogiri and ruby-zip
- Patch options parsing for two cell anchor
- Remove support for depreciated worksheet members
- **November.25.12**:1.3.4
- Added Cell#name so you you can quickly create a defined name for a single cell in your workbook.
- Added full book view and sheet state management. This means you can specify how the workbook renders as well as manage sheet visibility.
- Added smoothing management for line charts series

- **September.12.13**: 2.0.1
- Unpinned rubyzip version

- **September.12.13**: 2.0.0
- DROPPED support for ruby 1.8.7
- Altered readme to link to contributors
- Lots of improvements to make charts and relations more stable.
- Patched color param mutation.
- Data sourced for pivot tables can now come from other sheets.
- Altered image file extension comparisons to be case insensitive.
- Added control character sanitization to shared strings.
- Added page breaks. see examples/example.rb for an example.
- Bugfix: single to dual cell anchors for images now swap properly so you can set the end_at position during instantiation, in a block or directly on the image.
- Improved how we convert date/time to include the UTC offset when provided.
- Pinned rubyzip to 0.9.9 for those who are not ready to go up. Please note that release 2.0.1 and on will be using the 1.n.n series of rubyzip
- Bugfix: transposition of cells for Worksheet#cols now supports
incongruent column counts.counts
- Added space preservation for cell text. This will allow whitespace
in cell text both when using shared strings and when serializing
directly to the cell.

- **April.24.13**: 1.3.6
- Fixed LibreOffice/OpenOffice issue to properly apply colors to lines
in charts.
- Added support for specifying between/notBetween formula in an array.
*thanks* straydogstudio!
- Added standard line chart support. *thanks* scambra
- Fixed straydogstudio's link in the README. *thanks* nogara!

- **February.4.13**: 1.3.5
- converted vary_colors for chart data to instance variable with appropriate defulats for the various charts.
- Added trust_input method on Axlsx to instruct the serializer to skip HTML escaping. This will give you a tremendous performance boost,
Please be sure that you will never have <, >, etc in your content or the XML will be invalid.
- Rewrote cell serialization to improve performance
- Added iso_8601 type to support text based date and time management.
- Bug fix for relationship management in drawings when you add images
and charts to the same worksheet drawing.
- Added outline_level_rows and outline_level_columns to worksheet to simplify setting up outlining in the worksheet.
- Added support for pivot tables
- Added support for descrete border edge styles
- Improved validation of sheet names
- Added support for formula value caching so that iOS and OSX preview can show the proper values. See Cell.add_row and the formula_values option.

- **November.25.12**: 1.3.4
- Support for headers and footers for worksheets
- bug fix: Properly escape hyperlink urls
- Improvements in color_scale generation for conditional formatting
- Improvements in autowidth calculation.
- **November.8.12**:1.3.3

- **November.8.12**: 1.3.3
- Patched cell run styles for u and validation for family

- **November.5.12**:1.3.2
- **November.5.12**: 1.3.2
- MASSIVE REFACTORING
- Patch for apostrophes in worksheet names
- added sheet_by_name for workbook so you can now find your worksheets
by name
- added insert_worksheet so you can now add a worksheet to an
arbitrary position in the worksheets list.
- reduced memory consumption for package parts post serialization

- **September.30.12**: 1.3.1
- Improved control character handling
- Added stored auto filter values and date grouping items
Expand All @@ -29,29 +92,35 @@ CHANGELOG
all the predefined table styles.
- Improved style management for fonts so they merge undefined values
from the initial master.

- **September.8.12**: 1.2.3
- enhance exponential float/bigdecimal values rendering as strings intead
of 'numbers' in excel.
- added support for :none option on chart axis labels
- added support for paper_size option on worksheet.page_setup

- **August.27.12**: 1.2.2
- minor patch for auto-filters
- minor documentation improvements.

- **August.12.12**: 1.2.1
- Add support for hyperlinks in worksheets
- Fix example that was using old style cell merging with concact.
- Fix bug that occurs when calculating the font_size for cells that use a user specified style which does not define sz

- **August.5.12**: 1.2.0
- rebuilt worksheet serialization to clean up the code base a bit.
- added data labels for charts
- added table header printing for each sheet via defined_name. This
means that when you print your worksheet, the header rows show for every page
- **July.??.12**: 1.1.9 release

- **July.??.12**: 1.1.9
- lots of code clean up for worksheet
- added in data labels for pie charts, line charts and bar charts.
- bugfix chard with data in a sheet that has a space in the name are
now auto updating formula based values
- **July.14.12**: 1.1.8 release

- **July.14.12**: 1.1.8
- added html entity encoding for sheet names. This allows you to use
characters like '<' and '&' in your sheet names.
- new - first round google docs interoperability
Expand All @@ -60,15 +129,17 @@ CHANGELOG
to PDF from Libra Office
- various readability improvements and work standardizing attribute
names to snake_case. Aliases are provided for backward compatiblity
- **June.11.12**: 1.1.7 release

- **June.11.12**: 1.1.7
- fix chart rendering issue when label offset is specified as a
percentage in serialization and ensure that formula are not stored
in value caches
- fix bug that causes repair warnings when using a text only title reference.
- Add title property to axis so you can lable the x/y/series axis for
charts.
- Add sheet views with panes
- **May.30.12**: 1.1.6 release

- **May.30.12**: 1.1.6
- data protection with passwords for sheets
- cell level input validators
- added support for two cell anchors for images
Expand All @@ -78,14 +149,15 @@ in value caches
- added ph (phonetics) and s (style) attributes for row.
- resolved all warnings generating from this gem.
- improved comment relationship management for multiple comments
- **May.13.12**: 1.1.5 release

- **May.13.12**: 1.1.5
- MOAR print options! You can now specify paper size, orientation,
fit to width, page margings and gridlines for printing.
- Support for adding comments to your worksheets
- bugfix for applying style to empty cells
- bugfix for parsing formula with multiple '='

- **May.3.12:**: 1.1.4 release
- **May.3.12:**: 1.1.4
- MOAR examples
- added outline level for rows and columns
- rebuild of numeric and axis data sources for charts
Expand All @@ -97,23 +169,23 @@ in value caches
- Added support for specifying the color of data series in charts.
- bugfix using add_cell on row mismanaged calls to update_column_info.

- ** April.25.12:**: 1.1.3 release
- ** April.25.12:**: 1.1.3
- Primarily because I am stupid.....Updates to readme to properly report version, add in missing docs and restructure example directory.

- ** April.25.12:**: 1.1.2 release
- ** April.25.12:**: 1.1.2
- Conditional Formatting completely implemented.
- refactoring / documentation for Style#add_style
- added in label rotation for chart axis labels
- bugfix to properly assign style and type info to cells when only partial information is provided in the types/style option

- ** April.18.12**: 1.1.1 release
- ** April.18.12**: 1.1.1
- bugfix for autowidth calculations across multiple rows
- bugfix for dimension calculations with nil cells.
- REMOVED RMAGICK dependency WOOT!
- Update readme to show screenshot of gem output.
- Cleanup benchmark and add benchmark rake task

- ** April.3.12**: 1.1.0 release
- ** April.3.12**: 1.1.0
- bugfix patch name_to_indecies to properly handle extended ranges.
- bugfix properly serialize chart title.
- lower rake minimum requirement for 1.8.7 apps that don't want to move on to 0.9 NOTE this will be reverted for 2.0.0 with workbook parsing!
Expand All @@ -128,7 +200,7 @@ in value caches
- Major (like 7x faster!) performance updates.
- Gem now supports for JRuby 1.6.7, as well as experimental support for Rubinius

- ** March.5.12**: 1.0.18 release
- ** March.5.12**: 1.0.18
https://github.com/randym/axlsx/compare/1.0.17...1.0.18
- bugfix custom borders are not properly applied when using styles.add_style
- interop worksheet names must be 31 characters or less or some versions of office complain about repairs
Expand All @@ -138,29 +210,29 @@ in value caches
- added << alias for add_row
- removed presetting of date1904 based on authoring platform. Now defaults to use 1900 epoch (date1904 = false)

- ** February.14.12**: 1.0.17 release
- ** February.14.12**: 1.0.17
https://github.com/randym/axlsx/compare/1.0.16...1.0.17
- Added in support for serializing to StringIO
- Added in support for using shared strings table. This makes most of the features in axlsx interoperable with iWorks Numbers
- Added in support for fixed column_widths
- Removed unneeded dependencies on active-support and i18n

- ** February.2.12**: 1.0.16 release
- ** February.2.12**: 1.0.16
https://github.com/randym/axlsx/compare/1.0.15...1.0.16
- Bug fix for schema file locations when validating in rails
- Added hyperlink to images
- date1904 now automatically set in BSD and mac environments
- removed whitespace/indentation from xml outputs
- col_style now skips rows that do not contain cells at the column index

- **January.6.12**: 1.0.15 release
- **January.6.12**: 1.0.15
https://github.com/randym/axlsx/compare/1.0.14...1.0.15
- Bug fix add_style specified number formats must be explicity applied for libraOffice
- performance improvements from ochko when creating cells with options.
- Bug fix setting types=>[:n] when adding a row incorrectly determines the cell type to be string as the value is null during creation.
- Release in preparation for password protection merge

- **December.14.11**: 1.0.14 release
- **December.14.11**: 1.0.14
- Added support for merging cells
- Added support for auto filters
- Improved auto width calculations
Expand All @@ -169,22 +241,22 @@ in value caches
- Added access to app and core package objects so you can set the creator and other properties of the package
- The beginning of password protected xlsx files - roadmapped for January release.

- **December.8.11**: 1.0.13 release
- **December.8.11**: 1.0.13
- Fixing .gemspec errors that caused gem to miss the lib directory. Sorry about that.

- **December.7.11**: 1.0.12 release
- **December.7.11**: 1.0.12
DO NOT USE THIS VERSION = THE GEM IS BROKEN
- changed dependency from 'zip' gem to 'rubyzip' and added conditional code to force binary encoding to resolve issue with excel 2011
- Patched bug in app.xml that would ignore user specified properties.
- **December.5.11**: 1.0.11 release
- **December.5.11**: 1.0.11
- Added [] methods to worksheet and workbook to provide name based access to cells.
- Added support for functions as cell values
- Updated color creation so that two character shorthand values can be used like 'FF' for 'FFFFFFFF' or 'D8' for 'FFD8D8D8'
- Examples for all this fun stuff added to the readme
- Clean up and support for 1.9.2 and travis integration
- Added support for string based cell referencing to chart start_at and end_at. That means you can now use :start_at=>"A1" when using worksheet.add_chart, or chart.start_at ="A1" in addition to passing a cell or the x, y coordinates.

- **October.30.11**: 1.0.10 release
- **October.30.11**: 1.0.10
- Updating gemspec to lower gem version requirements.
- Added row.style assignation for updating the cell style for an entire row
- Added col_style method to worksheet upate a the style for a column of cells
Expand All @@ -194,11 +266,11 @@ in value caches
- fixed out of range bug in time calculations for 32bit time.
- added i18n for active support

- **October.26.11**: 1.0.9 release
- **October.26.11**: 1.0.9
- Updated to support ruby 1.9.3
- Updated to eliminate all warnings originating in this gem

- **October.23.11**: 1.0.8 release
- **October.23.11**: 1.0.8
- Added support for images (jpg, gif, png) in worksheets.

- **October.23.11**: 1.0.7 released
Expand All @@ -212,10 +284,10 @@ in value caches
- rebuild of anchor positioning to remove some spagetti code. Chart now supports a start_at and end_at method that accept an arrar for col/row positioning. See example6 for an example. You can still pass :start_at and :end_at options to worksheet.add_chart.
- Refactored cat and val axis data to keep series serialization a bit more DRY

##October.22.11: 1.0.6 release
- **October.22.11**: 1.0.6
- Bumping version to include docs. Bug in gemspec pointing to incorrect directory.

##October.22.11: 1.05
- **October.22.11**: 1.05
- Added support for line charts
- Updated examples and readme
- Updated series title to be a real title ** NOTE ** If you are accessing titles directly you will need to update text assignation.
Expand All @@ -231,14 +303,13 @@ in value caches
- Added style property to charts
- Removed serialization write test as it most commonly fails when run from the gem's intalled directory

##October.21.11: 1.0.4
- **October.21.11**: 1.0.4
- altered package to accept a filename string for serialization instead of a File object.
- Updated specs to conform
- More examples for readme


##October.21.11: 1.0.3 release
- **October.21.11**: 1.0.3
- Updated documentation

##October.20.11: 0.1.0 release

- **October.20.11**: 0.1.0
33 changes: 33 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# How to contribute to caxlsx

## Did you find a bug?

* **Ensure the bug was not already reported** by searching on GitHub under [Issues](https://github.com/caxlsx/caxlsx/issues) and [Pull requests](https://github.com/caxlsx/caxlsx/pulls).

* If you're unable to find an open issue or pull request addressing the problem, [create a new issue](https://github.com/caxlsx/caxlsx/issues/new) or – ideally – a new [pull request](https://github.com/caxlsx/caxlsx/pulls). Be sure to include a **title and clear description**, as much relevant information as possible, and a **code sample** or an **executable test case** demonstrating the expected behavior that is not occurring. It’s important that others can reproduce the problem easily.

* A pull request must contain tests covering the behaviour added or modified by the pull request.


## Do you intend to add a new feature or change an existing one?

* Refer to the guidelines mentioned above. Note that a feature request not accompanied by actual code (in form of a pull request) is rather unlikely to be implemented.


## Helping to resolve existing issues

Triaging issues can be very time-consuming, so we especially appreciate any help in this area!

Start by looking for (issues labelled “needs triage”)[https://github.com/caxlsx/caxlsx/labels/needs%20triage]. Choose one of these issues, then perform the following checks:

* Is the issue still relevant? It may have been fixed or made obsolete in the meantime.
* Can the issue be reproduced? If necessary, ask the person who reported the issue originally to provide more information.
* If an issue is very vague, can you help narrow it down to something more specific? Maybe you can provide additional information to help reproduce a bug, or help by eliminating needless steps that aren't required to demonstrate the problem.
* Is it clear which portion of the caxlsx code is causing the issue? If not, try to determine the relevant code.
* How did the relevant code came into the state causing the issue? Has it been there since the beginning, or is it the result of some later change?

Add comments to the issue to share your findings. Anything you can do to make bug reports more succinct or easier to reproduce helps folks trying to write code to fix those bugs - whether you end up writing the code yourself or not.

---

_A lot of the content in this document was ~~inspired by~~ copied from the [Ruby on Rails Contributing Guidelines](https://github.com/rails/rails/blob/master/CONTRIBUTING.md)_
Loading