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

Migrate to sbt-typelevel #4160

Merged
merged 45 commits into from
Apr 10, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
499f288
Well, the build.sbt compiles
armanbilge Apr 3, 2022
ec57223
Regenerate workflow
armanbilge Apr 3, 2022
56db9ab
Consolidation
armanbilge Apr 3, 2022
b30190e
Fix compile errors
armanbilge Apr 3, 2022
809fe50
Disable doctests on foreign platforms
armanbilge Apr 3, 2022
b302d04
Fix js stuff
armanbilge Apr 3, 2022
05a58ca
Downgrade to sbt-typelevel-ci-release
armanbilge Apr 3, 2022
4afb353
Setup unidocs project
armanbilge Apr 3, 2022
8b650e6
Add organization settings
armanbilge Apr 3, 2022
9c8a013
Formatting
armanbilge Apr 3, 2022
0de5744
Disable unused warnings
armanbilge Apr 3, 2022
1899e0f
Disable unused warnings, except imports :(
armanbilge Apr 3, 2022
fb08e89
Fix bincompat
armanbilge Apr 3, 2022
f4e33f8
Give up on unused warnings
armanbilge Apr 3, 2022
1c68ec2
Disable fatal warnings for scaladoc
armanbilge Apr 3, 2022
d9ee77e
Add some scaladoc flags
armanbilge Apr 4, 2022
fd958d9
Fix https://github.com/typelevel/cats/issues/4149
armanbilge Apr 4, 2022
7d4bf21
Fix unidocs
armanbilge Apr 4, 2022
205d0cc
Make workflow definition independent of ++
armanbilge Apr 4, 2022
29b8c7b
Use latest munit
armanbilge Apr 4, 2022
2306446
Add Scala 3 only mima filters
armanbilge Apr 4, 2022
00e2efd
Fix binCompatTest on Scala 3
armanbilge Apr 4, 2022
7ac546f
Disable doctest on Scala 3
armanbilge Apr 4, 2022
ab40cc9
Run binCompatTest on scala 2 only
armanbilge Apr 4, 2022
d80ce2a
Move _all_ the binCompatTest sources :)
armanbilge Apr 4, 2022
3657ea1
Remove unused setting
armanbilge Apr 4, 2022
ce873ff
WIP migrate site to Laika
armanbilge Apr 6, 2022
fc025e4
Trying to fix some urls
armanbilge Apr 6, 2022
ac7797e
Fixed ... everything?
armanbilge Apr 6, 2022
88257fa
Disable fatal warnings for docs
armanbilge Apr 6, 2022
c4c5708
Regenerate workflow
armanbilge Apr 6, 2022
8c2f274
Tweak some stuff
armanbilge Apr 6, 2022
6319621
Fix badge snippets
armanbilge Apr 6, 2022
2cbe018
Fix edit url
armanbilge Apr 6, 2022
416225d
Update docs for contributing docs :)
armanbilge Apr 6, 2022
6b4ffb6
Clarify live-reload aspect of preview server
armanbilge Apr 6, 2022
7e93fb4
Merge remote-tracking branch 'upstream/main' into topic/sbt-typelevel
armanbilge Apr 7, 2022
174cdf8
Re-enable all warnings, non-fatally
armanbilge Apr 8, 2022
7e33f25
Upgrade to sbt-typelevel
armanbilge Apr 8, 2022
665d8f7
Roll out the copyright headers
armanbilge Apr 8, 2022
4085701
Merge branch 'topic/sbt-typelevel' into topic/sbt-typelevel-site
armanbilge Apr 8, 2022
71d97d4
Cats is 7 years old :')
armanbilge Apr 8, 2022
2c16802
scaladoc bugs ...
armanbilge Apr 8, 2022
ba5e479
Merge remote-tracking branch 'upstream/main' into topic/sbt-typelevel
armanbilge Apr 9, 2022
0bda83a
More headers
armanbilge Apr 9, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
416 changes: 324 additions & 92 deletions .github/workflows/ci.yml

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion .scalafmt.conf
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ fileOverride {
"glob:**/src/{main,test}/scala-2.12/**" {
runner.dialect = scala212source3
}
"glob:**/src/{main,test}/scala-3.x/**" {
"glob:**/src/{main,test}/scala-3/**" {
runner.dialect = scala3
}
}
Expand Down
31 changes: 6 additions & 25 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ skip these steps and jump straight to submitting a pull request.

1. [Find something that belongs in cats](#find-something-that-belongs-in-cats)
2. [Let us know you are working on it](#let-us-know-you-are-working-on-it)
3. [Build the project](#build-project)
3. [Build the project](#build-the-project)
4. [Implement your contribution](#write-code)
5. [Write tests](#write-tests)
6. [Write documentation](#contributing-documentation)
Expand Down Expand Up @@ -133,7 +133,7 @@ builds:

### Write code

[See guidelines](https://typelevel.org/cats/guidelines.html).
[See guidelines](guidelines.md).

### Attributions

Expand All @@ -151,11 +151,11 @@ for law checking, and imports all syntax and standard instances for convenience.
[Discipline](https://github.com/typelevel/discipline), is the name of the test and will be output to the
console as part of the test execution. By convention:
- When checking laws, this parameter generally takes a form that describes the data type being tested.
For example the name *"Validated[String, Int]"* might be used when testing a type class instance
For example the name `"Validated[String, Int]"` might be used when testing a type class instance
that the `Validated` data type supports.
- An exception to this is serializability tests, where the type class name is also included in the name.
For example, in the case of `Validated`, the serializability test would take the form,
*"Applicative[Validated[String, Int]]"*, to indicate that this test is verifying that the `Applicative`
`"Applicative[Validated[String, Int]]"`, to indicate that this test is verifying that the `Applicative`
type class instance for the `Validated` data type is serializable.
- This convention helps to ensure clear and easy to understand output, with minimal duplication in the output.
- It is also a goal that, for every combination of data type and supported type class instance:
Expand Down Expand Up @@ -187,9 +187,6 @@ As a side note, the latter command uses [sbt-mima](https://github.com/lightbend/
### source for the documentation
The documentation for this website is stored alongside the source, in the [docs subproject](https://github.com/typelevel/cats/tree/main/docs).

* The source for the tut compiled pages is in `docs/src/main/mdoc`
* The menu structure for these pages is in `docs/src/main/resources/microsite/data/menu.yml`

### Generating the Site

The microsite generation requires a specific scala version that might
Expand All @@ -199,27 +196,11 @@ workflow to discover the proper version:
command](https://github.com/typelevel/cats/blob/main/.github/workflows/ci.yml#L281)

At the moment the command is:
`sbt ++2.12.15 docs/makeMicrosite`
`sbt ++2.12.15 docs/tlSite`

### Previewing the site

1. Install jekyll locally. Depending on your platform, you might do this with:

`yum install jekyll`

`apt-get install ruby-full; gem install jekyll`

`gem install jekyll`

Or just dropping into a `nix-shell` if you are using the [Nix Cats development environment](#nix-cats-development-environment).

2. In a shell, navigate to the generated site directory in `cats-docs/target/site`

3. Start jekyll with `jekyll serve -b /cats`

4. Navigate to http://localhost:4000/cats/ in your browser

5. Make changes to your site, and run `sbt docs/makeMicrosite` to regenerate the site. The changes should be reflected as soon as you run `makeMicrosite`.
Run `docs/tlSitePreview` in the sbt console. This will start a preview server at http://localhost:4242/ that will automatically refresh as you make edits.

### Compiler verified documentation

Expand Down
34 changes: 17 additions & 17 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@
Cats is a library which provides abstractions for functional programming in the [Scala programming language](https://scala-lang.org).

Scala supports both object-oriented and functional programming, and this is reflected in the hybrid approach of the
standard library. Cats strives to provide functional programming abstractions that are core, [binary compatible](http://typelevel.org/cats/#binary-compatibility-and-versioning), [modular](http://typelevel.org/cats/motivations#modularity), [approachable](http://typelevel.org/cats/motivations#approachability) and [efficient](http://typelevel.org//cats/motivations#efficiency). A broader goal of Cats is to provide a foundation for an [ecosystem of pure, typeful libraries](https://typelevel.org/cats/#ecosystem) to support functional programming in Scala applications.
standard library. Cats strives to provide functional programming abstractions that are core, [binary compatible](#binary-compatibility-and-versioning), [modular](https://typelevel.org/cats/motivations.html#modularity), [approachable](https://typelevel.org/cats/motivations.html#approachability) and [efficient](https://typelevel.org/cats/motivations.html#efficiency). A broader goal of Cats is to provide a foundation for an [ecosystem of pure, typeful libraries](https://typelevel.org/cats/typelevelEcosystem.html) to support functional programming in Scala applications.

For more detail about Cats' motivations, go [here](http://typelevel.org/cats/motivations).
For more detail about Cats' motivations, go [here](https://typelevel.org/cats/motivations.html).

### Why "cats"?

Expand All @@ -26,7 +26,7 @@ Regardless, you do not need to know anything about category theory to use Cats.
### Code Contributors

This project exists thanks to [all the people who contribute](https://github.com/typelevel/cats/graphs/contributors). We welcome contributions to Cats and would love for you to help build
Cats. See our [contributor guide](https://typelevel.org/cats/contributing.html) for more
Cats. See our [contributor guide](CONTRIBUTING.md) for more
information about how you can get involved as a developer. If you are looking for something to start with, [here is a beginner friendly list](https://github.com/typelevel/cats/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22).

### Financial Contributors
Expand All @@ -36,31 +36,31 @@ information about how you can get involved as a developer. If you are looking fo
<h4>Platinum Sponsors</h4>
<a href="https://opencollective.com/typelevel/contribute/platinum-sposor-12420/checkout">Platinum sponsorship</a> starts at $950 USD/month.
<div id="platinum-sponsors">
<noscript>Platinum Sponsors appear here at <a href="https://typelevel.org/cats/">https://typelevel.org/cats</a></noscript>
<noscript>Platinum Sponsors appear here at <a href="">https://typelevel.org/cats</a></noscript>
</div>

<h4>Gold Sponsors</h4>
<a href="https://opencollective.com/typelevel/contribute/gold-sponsor-12419/checkout">Gold Sponsorship</a> starts at $420 USD/month.
<div id="gold-sponsors">
<noscript>Gold Sponsors appear here at <a href="https://typelevel.org/cats/">https://typelevel.org/cats</a></noscript>
<noscript>Gold Sponsors appear here at <a href="">https://typelevel.org/cats</a></noscript>
</div>

<h4>Silver Sponsors</h4>
<a href="https://opencollective.com/typelevel/contribute/silver-sponsor-11780/checkout">Silver Sponsorship</a> starts at $180 USD/month.
<div id="silver-sponsors">
<noscript>Silver Sponsors appear here at <a href="https://typelevel.org/cats/">https://typelevel.org/cats</a></noscript>
<noscript>Silver Sponsors appear here at <a href="">https://typelevel.org/cats</a></noscript>
</div>

<h4>Backers</h4>
Become a <a href="https://opencollective.com/typelevel/contribute/backer-11779/checkout">Backer</a> with a recurring donation of just $5 USD/month.
<div id="backers">
<noscript>Backers appear here at <a href="https://typelevel.org/cats/">https://typelevel.org/cats</a></noscript>
<noscript>Backers appear here at <a href="">https://typelevel.org/cats</a></noscript>
</div>

<h4>Other contributors</h4>
We thankfully accept <a href="https://opencollective.com/typelevel/donate">one-time and recurring</a> contributions as well.
<div id="other-contributors">
<noscript>Other contributors appear here at <a href="https://typelevel.org/cats/">https://typelevel.org/cats</a></noscript>
<noscript>Other contributors appear here at <a href="">https://typelevel.org/cats</a></noscript>
</div>

<script src="/cats/js/sponsors.js"></script>
Expand Down Expand Up @@ -120,13 +120,13 @@ Links:

1. Website: [typelevel.org/cats/](https://typelevel.org/cats/)
2. ScalaDoc: [typelevel.org/cats/api/](https://typelevel.org/cats/api/)
3. Type classes: [typelevel.org/cats/typeclasses](https://typelevel.org/cats/typeclasses.html)
4. Data types: [typelevel.org/cats/datatypes.html](https://typelevel.org/cats/datatypes.html)
5. Algebra overview: [typelevel.org/cats/algebra.html](https://typelevel.org/cats/algebra.html)
6. Glossary: [typelevel.org/cats/nomenclature.html](https://typelevel.org/cats/nomenclature.html)
7. Resources for Learners: [typelevel.org/cats/resources_for_learners.html](https://typelevel.org/cats/resources_for_learners.html)
8. FAQ: [typelevel.org/cats/faq.html](https://typelevel.org/cats/faq.html)
9. The Typelevel Ecosystem: [typelevel.org/cats/typelevelEcosystem.html](https://typelevel.org/cats/typelevelEcosystem.html)
3. Type classes: [typelevel.org/cats/typeclasses](https://typelevel.org/cats/typeclasses.md)
4. Data types: [typelevel.org/cats/datatypes.html](https://typelevel.org/cats/datatypes.md)
5. Algebra overview: [typelevel.org/cats/algebra.html](https://typelevel.org/cats/algebra.md)
6. Glossary: [typelevel.org/cats/nomenclature.html](https://typelevel.org/cats/nomenclature.md)
7. Resources for Learners: [typelevel.org/cats/resources_for_learners.html](https://typelevel.org/cats/resources_for_learners.md)
8. FAQ: [typelevel.org/cats/faq.html](https://typelevel.org/cats/faq.md)
9. The Typelevel Ecosystem: [typelevel.org/cats/typelevelEcosystem.html](https://typelevel.org/cats/typelevelEcosystem.md)

### Community

Expand Down Expand Up @@ -202,7 +202,7 @@ Here's a (non-exhaustive) list of companies that use Cats in production. Don't s
- [Code Dx](https://codedx.com/)
- [Codecentric](https://codecentric.de)
- [Colisweb](https://www.colisweb.com/)
- [CompStak](compstak.com)
- [CompStak](https://compstak.com)
- [Coya](https://coya.com/)
- [Datum Brain](https://datumbrain.com/)
- [Disney](https://disney.com/)
Expand Down Expand Up @@ -335,7 +335,7 @@ relax this to a single sign-off. More detail in the [process document](https://g

All code is available to you under the MIT license, available at
http://opensource.org/licenses/mit-license.php and also in the
[COPYING](COPYING) file. The design is informed by many other
[COPYING](https://github.com/typelevel/cats/blob/main/COPYING) file. The design is informed by many other
projects, in particular [Scalaz](https://github.com/scalaz/scalaz).

Copyright the maintainers, 2015-2022.
21 changes: 21 additions & 0 deletions algebra-core/src/main/scala/algebra/Priority.scala
Original file line number Diff line number Diff line change
@@ -1,3 +1,24 @@
/*
* Copyright (c) 2015 Typelevel
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/

package algebra

import scala.annotation.nowarn
Expand Down
21 changes: 21 additions & 0 deletions algebra-core/src/main/scala/algebra/instances/StaticMethods.scala
Original file line number Diff line number Diff line change
@@ -1,3 +1,24 @@
/*
* Copyright (c) 2015 Typelevel
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/

package algebra.instances

import scala.annotation.tailrec
Expand Down
21 changes: 21 additions & 0 deletions algebra-core/src/main/scala/algebra/instances/all.scala
Original file line number Diff line number Diff line change
@@ -1,3 +1,24 @@
/*
* Copyright (c) 2015 Typelevel
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/

package algebra
package instances

Expand Down
21 changes: 21 additions & 0 deletions algebra-core/src/main/scala/algebra/instances/array.scala
Original file line number Diff line number Diff line change
@@ -1,3 +1,24 @@
/*
* Copyright (c) 2015 Typelevel
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/

package algebra
package instances

Expand Down
21 changes: 21 additions & 0 deletions algebra-core/src/main/scala/algebra/instances/bigDecimal.scala
Original file line number Diff line number Diff line change
@@ -1,3 +1,24 @@
/*
* Copyright (c) 2015 Typelevel
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/

package algebra
package instances

Expand Down
21 changes: 21 additions & 0 deletions algebra-core/src/main/scala/algebra/instances/bigInt.scala
Original file line number Diff line number Diff line change
@@ -1,3 +1,24 @@
/*
* Copyright (c) 2015 Typelevel
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/

package algebra
package instances

Expand Down
21 changes: 21 additions & 0 deletions algebra-core/src/main/scala/algebra/instances/bitSet.scala
Original file line number Diff line number Diff line change
@@ -1,3 +1,24 @@
/*
* Copyright (c) 2015 Typelevel
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/

package algebra
package instances

Expand Down
Loading