Skip to content

V 1 1 3#43

Merged
rchillyard merged 65 commits intomasterfrom
V_1_1_3
Mar 18, 2023
Merged

V 1 1 3#43
rchillyard merged 65 commits intomasterfrom
V_1_1_3

Conversation

@rchillyard
Copy link
Copy Markdown
Owner

Many internal improvements. Not a lot of extra functionality.

FP: updated sequenceForgiving; added sequenceForgivingWith and sequenceForgivingTransform.
# Conflicts:
#	src/test/scala/com/phasmidsoftware/util/FPSpec.scala
We can now delete branch V1_1_3a
WARNING: many unit tests are commented out!
TableParser: Try returns changed to IO;
Table: Try returns changed to IO;
RowParser: return types are now IO[X]
FP: added IOUsing;
FP: added IOUsing (which fixes test that was ignored in ProjectsFuncSpec);
Table: added methods of style: sourceFromXXX;
FP: added another apply method to IOUsing and TryUsing.
Restored tests in ProjectsFuncSpec.scala
Added CheckIOSpec
Restored ImplicitParserSpec test
TeeIterator: Added DebugIterator
CheckIO: added checkFailureIO
CheckIO.checkFailureIO  now returns IO[Assertion]
CheckIOSpec: added tests for checkFailureIO
Renderer: made T covariant in Renderer and CsvRenderer;
CsvAttributes: made T covariant in Renderer and CsvGenerator.
Renderer: made T covariant in Renderer and CsvRenderer;
CsvAttributes: made T covariant in Renderer and CsvGenerator.
There's another commit message for this. I hope it didn't get lost!!
Conflicts:
	src/main/scala/com/phasmidsoftware/render/Renderer.scala
	src/main/scala/com/phasmidsoftware/table/CsvAttributes.scala
ProductCsvRenderer: method elements is not public;
CsvRenderers: simplified renderer2
MovieFuncSpec: created class for CsvRendererMovie
There are still 9 tests which need to be updated to work properly.
CsvRenderer: render now returns IO[O];
Writable: added fileWritableIO;
Table: added writeCSVFileIO.
Renamed CheckIO as EvaluateIO; renamed two of the methods;
Added method matcher
Replaced many occurrences of check with matcher;
Replaced many uses of check with matchIO
CheckIO: renamed matcher as matchIO;
A few minor cosmetics plus...
FP.IOUsing: added apply method which takes a Try[R].
Table:
* parse now declares si as call-by-name (not sure if this really matters);
* sourceFromClassResource now declares implicit parameter codec (this definitely does matter!);
Parseable:
* added optModifier parameter to parse method of Parseable; 
* updated ParseableBigInt to take note of the optModifier and use as a radix;
Crime: created the model for the crime dataset;
Created new packages under examples and moved classes there;
Now write out Crime dataset as CSV;
CsvRenderers: 
* rendererGenerator methods now return CsvProduct;
* optionRenderer: now takes a defaultString parameter;
Crime: added CrimeBrief object and mapping test to that;
Removed it testing from build.sbt;
Crime:
* longitude and latitude now optional;
* renamed CrimeBrief as CrimeLocation;
Table:
* added mapOptional method;
build.sbt: updates to scalaTest, scalaParserCombinators, nScalaTime, logback, scala-logging
FP: sequenceForgivingTransform refactored;
top-level package: cleaned up slightly;
Name changes for _maybePrefix, _aliases, _columnNameMapper
build.sbt: upgrade to scala 2.13.10; downgrade to parser-combinators to 1.1.2
Moved resources from it to test: airbnb2.csv, movie_metadata.csv
build.sbt: added parallel library;
Rows: new container for holding the rows of a Table;
Table:
* changed Iterable to Rows for the content;
* removed dropRight, takeRight;
* added apply methods for Unheaded and Headed tables.
Extracted fraction from sampler call.
Several other minor changes.
Content: xs member is now private
Major change: FP: sequence method for Iterator[Option] use +: in order to boost performance;
Analysis: refactoring;
FP: changed operator in sequence(Iterable[Option[X])] to +:
Analysis: renamed Column.makeColumn as make
…nto V_1_1_3

# Conflicts:
#	src/it/scala/com/phasmidsoftware/examples/crime/CrimeFuncSpec.scala
This should allow CirleCI to run
@rchillyard rchillyard merged commit 40cafda into master Mar 18, 2023
@rchillyard rchillyard deleted the V_1_1_3 branch March 18, 2023 20:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant