advxml

A lightweight, simple and functional DSL library to work with XML in Scala with Cats

APACHE-2.0 License

Stars
60
Committers
11

Bot releases are hidden (Show)

advxml - v2.5.2 Latest Release

Published by geirolz about 1 year ago

What's Changed - Dependencies updates only

New Contributors

Full Changelog: https://github.com/geirolz/advxml/compare/v2.5.1...v2.5.2

advxml - v2.5.1

Published by geirolz over 2 years ago

What's Changed

Deps update

New Contributors

Full Changelog: https://github.com/geirolz/advxml/compare/v2.5.0...v2.5.1

advxml - v2.5.0

Published by geirolz over 2 years ago

What's Changed

Breaking changes

  • All classes have been moved from package advxml.core.* to advxml.*, so please just replace advxml.core. with advxml.
  • Instances are now part of the companion objects in other to simplify the usability. import advxml.core.instances.* is not longer needed in most cases.

Dependencies

Full Changelog: https://github.com/geirolz/advxml/compare/v2.4.2...v2.4.3

advxml - 2.4.2

Published by geirolz almost 3 years ago

Nothing new, just a release to support scala 2.13.7 and Scala 3.1.0

Updates

  • Update to scala 2.13.7
  • Update scala3-library to 3.1.0
  • Update scala-collection-compat to 2.6.0
  • Update scalafmt-core to 3.1.1
  • Update sbt-scoverage to 1.9.2
  • Update sbt-ci-release to 1.5.10
advxml - v2.4.1

Published by geirolz almost 3 years ago

Breaking changes

  • Rename ValidatedEx and ValidatedNelEx into ValidatedThrow and ValidatedNelThrow
  • Rename EitherEx and EitherNelEx into EitherThrow and EitherNelThrow
  • Rename AppExOrEu into ApplicativeThrowOrEu
  • Drop MonadEx, replaced by cats MonadThrow
  • Drop AppEx, replaced by cats ApplicativeThrow
  • Rename AppEu into ApplicativeEu
  • Rename AppNelEx into ApplicativeNelThrow
  • Rename AppNelEx into AppNelThrow
  • [Converter] Rename const into pure and drop constF and idF

Documentation

Dependencies

  • Update sbt-ci-release to 1.5.9
  • Update sbt-scoverage to 1.9.1
  • Update scalatest to 3.2.10
  • Update scalactic to 3.2.10
  • Update scala-library to 2.12.15
  • Update sbt-updates to 0.6.0
advxml - v2.4.0

Published by geirolz about 3 years ago

What's new

  • Add support for Scala 3 #244
  • Fix #141 Optional XmlRule that doesn't break the transformation
  • composable AbstractRule (and, orElse) #216
  • Test transform with zoom #139
  • Add documentation

CICD

  • Merge CI and CD in one file.
  • Fix cicd release predicate
  • Fix scala doc generation
  • Add env vars to CICD
  • Remove CICD tag check

Dependencies

  • Update scala-xml to 2.0.1
  • Update sbt to 1.5.5
  • Update sbt-scalafmt to 2.4.3
  • Update sbt-scoverage to 1.8.2
  • Update scala-library to 2.12.14
  • Update sbt-scoverage to 1.8.1
  • Update scala-library to 2.13.6
  • Update discipline-scalatest to 2.1.5
  • Update scalatest to 3.2.9
  • Update scalactic to 3.2.9
  • Update cats-core, cats-laws to 2.6.1
  • Update scalacheck to 1.15.4
advxml - v2.3.1

Published by geirolz over 3 years ago

  • #216 XmlRules should be composable
  • SetAttrs should take Elem as argument
  • Add contributors in README
  • Update sbt-updates to 0.5.3
  • Fix CI and Codecov upload.
  • Update sbt to 1.5.0
  • SetAttrs should take current attrs as argument
  • Update discipline-scalatest to 2.1.3
  • Update scalatest to 3.2.7
  • Update scalactic to 3.2.7
  • Update cats-core, cats-laws to 2.5.0
  • Update scala-xml to 2.0.0-RC1
  • Update scala-library to 2.12.13
  • Update sbt-updates to 0.5.2
  • Fix merfigy filters
  • Add env variables
  • Fix github actions workflows pt.2
  • Fix github actions workflows
  • Update badge
  • Introduce github actions as CD
  • Introduce github actions as CI
  • Update sbt-ci-release to 1.5.7
  • Update sbt to 1.4.9
  • Update scalactic to 3.2.6
  • Update sbt-updates to 0.5.2
  • Update scala-library to 2.13.5
  • Update scala-library to 2.12.13
  • Update cats-core, cats-laws to 2.4.2
  • Update scalacheck to 1.15.3
  • Add check for mergify
advxml - v2.3.0

Published by geirolz over 3 years ago

2.3.0-RC3 In Summary

CI/CD

Change project structure to allows future modules, due that the library from now on will be published as advxml-core instead of advxml. This is done because the upcoming feature for automatic converters derivation, this feature will be available in a different module named advxml-generic or advxml-macros (I've not decided yet).

Changes

  • [Data] Data syntax moved from advxml.syntax to advxml.syntax.data
  • [Data] KeyValuePredicate doesn`t take type paramenter.
  • [Converter] Converter now takes only 2 parameters. Input and output, no effect.
  • [Converter] type alias PureConverter removed.
  • [Zoom]ImmediateDown renamed in Down.
  • [Zoom] method /@ renamend in attr
  • [Zoom] method text renamend in content
  • [Transform] XmlNormalizer and his syntax have been moved under transform package

New

  • [Data] Value, SimpleValue and ValidatedValue ADT to wrap and validate String values, add v as string interpolation to easelly build a SimpleValue.
  • [Data] Add Value instances under advxml.instances.data.value
  • [Zoom] Add label method to get node label value.
  • [Converter] As type alias to Converter[A, B]
  • [Converter] XmlEncoder type alias to ValidatedConverter[T, NodeSeq]
  • [Converter] XmlDecoder type alias to ValidatedConverter[NodeSeq, T]
  • [Converter] OptionConverter type alias to Converter[A, Option[B]]
  • [Converter.Syntax] Add to[G[_]] to apply implicit natural transformation, provided by converter instances.
  • [Converter.Syntax] Add andThenAs[B] same as flatMapAs but for Validated
advxml - v2.2.1

Published by geirolz about 4 years ago

Minor fix:

  • Remove scalactic from production code due the large Jar on production.
advxml - v2.2.0

Published by geirolz over 4 years ago

Changes

💣 Breaking

  • Refactoring XmlTraverser, the goals of these changes are simplify core and usability. Check documentation for further information.

🔴 Major

  • ValidatedEx has been deprecated, ValidatedNelEx replace it.

⚪️ Minor

  • Fix escaping of nested nodes in documentation(#77 thanks to @dcsobral )
  • Improve contract tests

🔵 Env

  • Migrate to travis-ci.com
  • Add codacy coverage support.

🔄 Dependencies updates

  • cats-core, cats-laws to 2.1.1
  • scalafmt-core to 2.4.2
  • scalactic to 3.1.1
  • scalatest to 3.1.1
  • discipline-scalatest to 1.0.1
advxml - v2.1.0

Published by geirolz over 4 years ago

This release introduce some syntax breaking changes so please check the documentation.
This release fix bug #63

Major changes:

  • XmlZoom is no more a type alias but it is a case class now, so for example
val z : XmlZoom = _ \ "firstNodeUnderRoot"

Has been replaced by

val z : XmlZoom = root \ "firstNodeUnderRoot"
  • $(XmlZoom) wrapping is no more required
advxml - v2.0.0

Published by geirolz almost 5 years ago

Changes

  • Refactor packages
  • Improve XmlRule with Cats
  • Improve SetAttrs
  • Improve RemoveAttrs
  • Improve Predicate
  • Transform Converters to Kleisli in order to avoid implict conversions.
  • Refactor ValidateEx, add ValidatedEx tests.
  • Improve XmlTraverserSyntax.

Updates

  • Update scala-xml to 2.0.0-M1
  • Update Sbt to 1.3.4
  • Update cats-core from 2.0.0 to 2.1.0
  • Update sbt-ci-release from 1.4.31 to 1.5.0
  • Update scalatest from 3.0.8 to 3.1.0

News

  • NestedMapSyntax
  • Prepend action modifier
  • Add mapAs and flatMapAs to Converter Ops.

Bugfix

  • Fix bug, inverse order of modifiers.
advxml - v2.0.0-RC3

Published by geirolz almost 5 years ago

Changes:

  • Improve root transformation.
  • Create CODE_OF_CONDUCT

Bug Fixed

  • Bug #46 reported by @erickneverson
advxml - v2.0.0-RC2

Published by geirolz almost 5 years ago

Changes

  • Converters syntax simplified
  • Tests improvements

Updates

  • Update Sbt to 1.3.6
advxml - v2.0.0-RC1

Published by geirolz almost 5 years ago

Changes

  • Refactor packages
  • Improve XmlRule with Cats
  • Improve SetAttrs
  • Improve RemoveAttrs
  • Improve Predicate
  • Change transform Converters to Kleisli in order to avoid implict conversions.
  • Refactor ValidateEx, add ValidatedEx tests.
  • Improve docs
  • Improve XmlTraverserSyntax.

Updates

  • Update Sbt to 1.3.4
  • Update cats-core 2.0.0 -> 2.1.0

News

  • Prepend action modifier
  • Add mapAs and flatMapAs to Converter Ops.
  • NestedMapSyntax(provides nMap and nFlatmap)

Bugfix

  • Fix bug, inverse order of modifiers.
advxml - v0.1.6

Published by geirolz almost 5 years ago

Revert Sbt to 1.2.8 due several problemes with version 1.3.3

advxml - v0.1.5

Published by geirolz almost 5 years ago

-[breaking-changes] Improve XmlTraverser
-[breaking-changes] Improve Converters
-[breaking-changes] Improve XmlNormalizer
-Update Sbt to 1.3.3 and other dependencies.

advxml - v0.1.4

Published by geirolz about 5 years ago

News:

  • Remove Sbt aliases due Bug.
  • Improve filter syntax
  • Improve error handler for ValidatedRes.
  • Update to Sbt 1.3.0
  • Support scala 2.13.1 and 2.12.9
  • Fix variance for all classes.
advxml - v0.1.3

Published by geirolz about 5 years ago

New Features:

  • Traverse nested ValidationRes

Other:

  • Improve syntax
  • Improve Sbt structure
advxml - v0.0.2

Published by geirolz about 5 years ago