Skip to content

Commit

Permalink
Redshift Connector (#1985)
Browse files Browse the repository at this point in the history
  • Loading branch information
kustosz authored and iamrecursion committed Sep 2, 2021
1 parent 3281f93 commit b867dfc
Show file tree
Hide file tree
Showing 78 changed files with 1,147 additions and 57 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -122,5 +122,8 @@ distribution/lib/Standard/Examples/*/data/scratch_file
distribution/lib/Standard/Examples/*/data/image.png
distribution/editions
distribution/lib/Standard/Table/*/polyglot/
distribution/lib/Standard/Database/*/polyglot/
distribution/lib/Standard/Examples/*/data/spreadsheet.xls
distribution/lib/Standard/Examples/*/data/spreadsheet.xlsx

test/Database_Tests/data/redshift_credentials.json
5 changes: 5 additions & 0 deletions RELEASES.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,11 @@
does not seem to freeze the compiler
([#1972](https://github.com/enso-org/enso/pull/1972)).

## Libraries

- Added support for Amazon Redshift in the database library
([#1985](https://github.com/enso-org/enso/pull/1985)).

# Enso 0.2.27 (2021-08-23)

## Libraries
Expand Down
10 changes: 7 additions & 3 deletions build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -1588,16 +1588,20 @@ lazy val `std-database` = project
Compile / packageBin / artifactPath :=
`database-polyglot-root` / "std-database.jar",
libraryDependencies ++= Seq(
"org.xerial" % "sqlite-jdbc" % "3.34.0",
"org.postgresql" % "postgresql" % "42.2.19"
"org.xerial" % "sqlite-jdbc" % "3.34.0",
"org.postgresql" % "postgresql" % "42.2.19",
"com.amazon.redshift" % "redshift-jdbc42" % "2.0.0.7",
"com.amazonaws" % "aws-java-sdk-core" % "1.12.58",
"com.amazonaws" % "aws-java-sdk-redshift" % "1.12.58"
),
Compile / packageBin := Def.task {
val result = (Compile / packageBin).value
val _ = StdBits
.copyDependencies(
`database-polyglot-root`,
Some("std-database.jar"),
ignoreScalaLibrary = true
ignoreScalaLibrary = true,
unpackedDeps = Set("aws-java-sdk-core", "httpclient")
)
.value
result
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,71 @@
Enso
Copyright 2020 - 2021 New Byte Order sp. z o. o.

'redshift-jdbc42', licensed under the Apache License, Version 2.0, is distributed with the Database.
The license file can be found at `licenses/APACHE2.0`.
Copyright notices related to this dependency can be found in the directory `com.amazon.redshift.redshift-jdbc42-2.0.0.7`.


'aws-java-sdk-core', licensed under the Apache License, Version 2.0, is distributed with the Database.
The license file can be found at `licenses/APACHE2.0`.
Copyright notices related to this dependency can be found in the directory `com.amazonaws.aws-java-sdk-core-1.12.58`.


'aws-java-sdk-redshift', licensed under the Apache License, Version 2.0, is distributed with the Database.
The license file can be found at `licenses/APACHE2.0`.
Copyright notices related to this dependency can be found in the directory `com.amazonaws.aws-java-sdk-redshift-1.12.58`.


'jmespath-java', licensed under the Apache License, Version 2.0, is distributed with the Database.
The license file can be found at `licenses/APACHE2.0`.
Copyright notices related to this dependency can be found in the directory `com.amazonaws.jmespath-java-1.12.58`.


'jackson-annotations', licensed under the The Apache Software License, Version 2.0, is distributed with the Database.
The license file can be found at `licenses/APACHE2.0`.
Copyright notices related to this dependency can be found in the directory `com.fasterxml.jackson.core.jackson-annotations-2.12.3`.


'jackson-core', licensed under the The Apache Software License, Version 2.0, is distributed with the Database.
The license file can be found at `licenses/APACHE2.0`.
Copyright notices related to this dependency can be found in the directory `com.fasterxml.jackson.core.jackson-core-2.12.3`.


'jackson-databind', licensed under the The Apache Software License, Version 2.0, is distributed with the Database.
The license file can be found at `licenses/APACHE2.0`.
Copyright notices related to this dependency can be found in the directory `com.fasterxml.jackson.core.jackson-databind-2.12.3`.


'jackson-dataformat-cbor', licensed under the The Apache Software License, Version 2.0, is distributed with the Database.
The license file can be found at `licenses/APACHE2.0`.
Copyright notices related to this dependency can be found in the directory `com.fasterxml.jackson.dataformat.jackson-dataformat-cbor-2.12.3`.


'commons-codec', licensed under the Apache License, Version 2.0, is distributed with the Database.
The license file can be found at `licenses/APACHE2.0`.
Copyright notices related to this dependency can be found in the directory `commons-codec.commons-codec-1.15`.


'commons-logging', licensed under the The Apache Software License, Version 2.0, is distributed with the Database.
The license file can be found at `licenses/APACHE2.0`.
Copyright notices related to this dependency can be found in the directory `commons-logging.commons-logging-1.1.3`.


'joda-time', licensed under the Apache 2, is distributed with the Database.
The license information can be found along with the copyright notices.
Copyright notices related to this dependency can be found in the directory `joda-time.joda-time-2.8.1`.


'httpclient', licensed under the Apache License, Version 2.0, is distributed with the Database.
The license file can be found at `licenses/APACHE2.0`.
Copyright notices related to this dependency can be found in the directory `org.apache.httpcomponents.httpclient-4.5.13`.


'httpcore', licensed under the Apache License, Version 2.0, is distributed with the Database.
The license file can be found at `licenses/APACHE2.0`.
Copyright notices related to this dependency can be found in the directory `org.apache.httpcomponents.httpcore-4.4.13`.


'checker-qual', licensed under the The MIT License, is distributed with the Database.
The license information can be found along with the copyright notices.
Copyright notices related to this dependency can be found in the directory `org.checkerframework.checker-qual-3.5.0`.
Expand All @@ -15,3 +80,8 @@ Copyright notices related to this dependency can be found in the directory `org.
The license information can be found along with the copyright notices.
Copyright notices related to this dependency can be found in the directory `org.xerial.sqlite-jdbc-3.34.0`.


'ion-java', licensed under the The Apache License, Version 2.0, is distributed with the Database.
The license file can be found at `licenses/APACHE2.0`.
Copyright notices related to this dependency can be found in the directory `software.amazon.ion.ion-java-1.0.2`.

Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
Copyright (C) 2005

Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER

Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.

Copyright (c) 2003, PostgreSQL Global Development Group

Copyright (c) 2004, Open Cloud Limited.

Copyright (c) 2004, PostgreSQL Global Development Group

Copyright (c) 2004, PostgreSQL Global Development Group.

Copyright (c) 2005, PostgreSQL Global Development Group

Copyright (c) 2006, PostgreSQL Global Development Group

Copyright (c) 2007, PostgreSQL Global Development Group

Copyright (c) 2008, PostgreSQL Global Development Group

Copyright (c) 2009, PostgreSQL Global Development Group

Copyright (c) 2011, PostgreSQL Global Development Group

Copyright (c) 2012, PostgreSQL Global Development Group

Copyright (c) 2014, PostgreSQL Global Development Group

Copyright (c) 2015, PostgreSQL Global Development Group

Copyright (c) 2016, PostgreSQL Global Development Group

Copyright (c) 2017, PostgreSQL Global Development Group

Copyright (c) 2018, PostgreSQL Global Development Group

Copyright (c) 2019, PostgreSQL Global Development Group

Copyright (c) 2020, PostgreSQL Global Development Group
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
--License Start--
BSD-2-Clause License:

Copyright (c) 1997, PostgreSQL Global Development Group
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.

--License End--

This product includes software that is licensed under the Apache License,
Version 2.0 (listed below).

--License Start--
AWS SDK for Java
Copyright © 2015, Amazon Web Services, Inc. or its affiliates. All rights
reserved.

Apache Commons Codec
Copyright © 2002-2014 The Apache Software Foundation

Apache Commons Logging
Copyright © 2001-2014 The Apache Software Foundation

Apache HttpComponents Client
Copyright © 1999-2012 The Apache Software Foundation

Apache HttpComponents Core
Copyright © 1999-2012 The Apache Software Foundation

Jackson
Copyright © 2009-2011 FasterXML, LLC

Joda-Time
Copyright © 2005–2015 Joda.org. All rights reserved.

Licensed under the Apache License, Version 2.0 (the "License"); you may
not use this file except in compliance with the License. You may obtain a
copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
License for the specific language governing permissions and limitations
under the License.
--License End--
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
Copyright (c) 2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.

Copyright (c) 2016-2019. Amazon.com, Inc. or its affiliates. All Rights Reserved.

Copyright (c) 2016. Amazon.com, Inc. or its affiliates. All Rights Reserved.

Copyright (c) 2019. Amazon.com, Inc. or its affiliates. All Rights Reserved.

Copyright 2010-2021 Amazon.com, Inc. or its affiliates. All Rights

Copyright 2010-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.

Copyright 2011-2021 Amazon Technologies, Inc.

Copyright 2011-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.

Copyright 2012-2021 Amazon Technologies, Inc.

Copyright 2012-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.

Copyright 2013-2021 Amazon Technologies, Inc.

Copyright 2013-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.

Copyright 2014-2021 Amazon Technologies, Inc.

Copyright 2014-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.

Copyright 2015-2021 Amazon Technologies, Inc.

Copyright 2015-2021 Amazon.com, Inc. or its affiliates. All Rights

Copyright 2015-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.

Copyright 2016-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.

Copyright 2018-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.

Copyright 2019-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.

Copyright 2020-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.

Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.

Portions copyright 2006-2009 James Murty. Please see LICENSE.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Copyright 2016-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Copyright 2010-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
See https://github.com/FasterXML/jackson-annotations for more information

Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Jackson JSON processor

Jackson is a high-performance, Free/Open Source JSON processing library.
It was originally written by Tatu Saloranta ([email protected]), and has
been in development since 2007.
It is currently developed by a community of developers.

## Licensing

Jackson 2.x core and extension components are licensed under Apache License 2.0
To find the details that apply to this artifact see the accompanying LICENSE file.

## Credits

A list of contributors may be found from CREDITS(-2.x) file, which is included
in some artifacts (usually source distributions); but is always available
from the source code management (SCM) system project uses.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Copyright (c) 2007- Tatu Saloranta, [email protected]
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Jackson JSON processor

Jackson is a high-performance, Free/Open Source JSON processing library.
It was originally written by Tatu Saloranta ([email protected]), and has
been in development since 2007.
It is currently developed by a community of developers.

## Licensing

Jackson 2.x core and extension components are licensed under Apache License 2.0
To find the details that apply to this artifact see the accompanying LICENSE file.

## Credits

A list of contributors may be found from CREDITS(-2.x) file, which is included
in some artifacts (usually source distributions); but is always available
from the source code management (SCM) system project uses.
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
Here are people who have contributed to development of this project
(version numbers in brackets indicate release in which the problem was fixed)

Tatu Saloranta, [email protected]: author

Clinton Gormley (clintongormley@github)

* Suggested [#5]: Support binary (byte[]) Object keys (assuming UTF-8 encoding)
(2.4.3)
* Suggested [#6]: Support 'self-describe' CBOR tag
(2.4.3)

mbaril@github)

* Reported #9, suggested fix, contributed unit test: Infinite loop when trying
to write binary data using CBORGenerator
(2.5.1)

Steve Gury (stevegury@github)

* Reported #13, suggested fix: Bug in boundary checking in the CBORParser
(2.6.2)

Adrien Grand (jpountz@github)

* Reported #15: CBORParser.getNumberType returns DOUBLE even if the generator
has been fed with a float
(2.6.5)

philipa@githubL

* Requested #20: Add a public `finishToken()`
(2.7.2)
* Requested #22: CBORGenerator.copyCurrentStructure() and copyCurrentEvent() do not copy tags
(2.7.2)
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
Apache Commons Codec
Copyright 2002-2020 The Apache Software Foundation

This product includes software developed at
The Apache Software Foundation (https://www.apache.org/).

src/test/org/apache/commons/codec/language/DoubleMetaphoneTest.java
contains test data from http://aspell.net/test/orig/batch0.tab.
Copyright (C) 2002 Kevin Atkinson ([email protected])

===============================================================================

The content of package org.apache.commons.codec.language.bm has been translated
from the original php source code available at http://stevemorse.org/phoneticinfo.htm
with permission from the original authors.
Original source copyright:
Copyright (c) 2008 Alexander Beider & Stephen P. Morse.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Some portions of this file Copyright (c) 2004-2006 Intel Corportation
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
Apache Commons Logging
Copyright 2003-2014 The Apache Software Foundation

This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).

Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
this work for additional information regarding copyright ownership.
Loading

0 comments on commit b867dfc

Please sign in to comment.