Release 0.4.1: File reading, writing, and LINQ
The primary goals of this release were to:
- Support reading and writing data from files in common formats
- Improve LINQ support
Reading and Writing text, json, jsonl, and csv
The large feature additions of this release include functions to natively read and write from text, json, jsonl, and csv files. Details on the issue can be found at #19. The examples on the README.md
page illustrate how these can be used and their usefulness. A full list of changes can be found in CHANGELOG.md
or the copy of it at the bottom of the release notes.
LINQ
In doing research I found that a common use case where ScalaFunctional
could be helpful is in doing LINQ-like data manipulation. To better serve this group of users functions like select
and where
were added, and documentation was improved to cover this use case.
Breaking Changes
The bug detailed at #44 exposed that fold_left
and fold_right
was using the passed function incorrectly. This was corrected, but is a breaking change to all prior versions.
0.4.1 enum34 Removed
In the release of 0.4.0 a issue was found where the wheel built with python2 contained enum34 which broke the python3 installation. If it were built with python3, then it would not include enum34 causing problems with python2. The solution was to remove enum34 and use vanilla python instead.
Changelog
Release 0.4.0
New Features
- Official and tested support for python 3.5. Thus
ScalaFunctional
is tested on Python 2.7, 3.3,
3.4, 3.5, pypy, and pypy3 aggregate
from LINQorder_by
from LINQwhere
from LINQselect
from LINQaverage
from LINQsum
modified to allow LINQ projected sumproduct
modified to allow LINQ projected productseq.jsonl
to read jsonl filesseq.json
to read json filesseq.open
to read filesseq.csv
to read csv filesseq.range
to create range sequencesSequence.to_jsonl
to save jsonl filesSequence.to_json
to save json filesSequence.to_file
to save filesSequence.to_csv
to save csv files- Improved documentation with more examples and mention LINQ explicitly
- Change PyPi keywords to improve discoverability
- Created Google groups mailing list
Bug Fixes
fold_left
andfold_right
had incorrect order of arguments for passed function
Release 0.4.1
Fix python 3 build error due to wheel installation of enum34. Package no longer depends on enum34
Contributors
Thank you to adrian17 for contributing seq.range
to the release.