Skip to content

Latest commit

 

History

History
461 lines (349 loc) · 19.9 KB

ChangeLog.md

File metadata and controls

461 lines (349 loc) · 19.9 KB

Change Log

0.5.7 (2023-01-30)

New features:

Fixed Issues:

Changes:

  • The Eq trait was implemented for enum types.

Internal Changes:

0.5.6 (2022-08-09)

Fixed Issues:

  • Fix RowValue which can reference an invalid Ok that defined outside (contributed by GH-62)

Changes:

Internal Changes:

  • Update ODPI-C to 4.4.1. (see ODPI-C release notes)
  • Suppress 'cargo clippy' warnings
  • Use atomic types instead of RefCell and Mutex

0.5.5 (2022-05-11)

New features:

Fixed bugs:

Internal Changes:

  • Update ODPI-C to 4.3.0. (see ODPI-C release notes: 4.3.0)

0.5.4 (2022-01-20)

Fixed bugs:

  • Fix resource leaks when Oracle object datatypes are used. (GH-48)

0.5.3 (2021-08-15)

New features:

  • Add Connection::statement() and StatementBuilder to create [Statement][] and deprecate Connection::prepare().
  • Customize prefetch row size (StatementBuilder::prefetch_rows()) GH-40
  • Read/Write LOBs as streams ([sql_type::Lob][], [sql_type::Clob][], [sql_type::Nclob][] and [sql_type::Blob][])
  • Ref cursors including implicit statement results ([sql_type::RefCursor][]) GH-38
  • Add [Connection::oci_attr][], [Connection::set_oci_attr][], [Statement::oci_attr][] and [Statement::oci_attr][] to support OCI handle attributes.
  • Impl ToSql for &'a [u8; N]

Internal Changes:

  • Bind LOB columns as string or binary by default

0.5.2 (2021-06-11)

  • Update ODPI-C to 4.2.1. (see ODPI-C release notes: 4.2.0 and 4.2.1)
  • Make it possible to get rowid as string (GH-36)
  • Make it possible to bind boolean values (PL/SQL only)

0.5.1 (2021-04-18)

  • Add Batch DML feature (GH-29)
  • Implement FromStr for Version.
  • Add OracleType::Json variant. (Note: JSON data type has not been supported yet.)

0.4.0 (2021-03-07)

Changes:

  • Based on ODPI-C 4.1.0
  • The return value of DbError::offset() was changed from u16 to u32.

0.3.3 (2020-10-25)

Changes:

0.3.2 (2019-11-14)

Changes:

  • Fix SEGV while getting Object type's FLOAT data type attributes. (GH-19)

  • Add workaround to use with tracing-core. (GH-18)

0.3.1 (2019-10-05)

Changes:

0.3.0 (2019-10-02)

Incompatible changes:

  • Remove ConnParam enum and add Connector struct to use builder pattern.

    • The fourth argument of Connection::connect was removed.
      From:
      let conn = Connection::connect(username, password, connect_string, &[])?;
      To:
      let conn = Connection::connect(username, password, connect_string)?;
    • Use Connector to use additional parameters.
      From:
      let conn = Connection::connect(username, password, connect_string, &[ConnParam::Sysdba])?;
      To:
      let conn = Connector::new(username, password, connect_string).privilege(Privilege::Sysdba).connect()?;
      or
      let mut connector = Connector::new(username, password, connect_string);
      connector.privilege(Privilege::Sysdba);
      let conn = connector.connect().unwrap();
  • Add a new submodule sql_type and move the following structs, enums and traits from the root module to the submodule.

    • Collection
    • IntervalDS
    • IntervalYM
    • Object
    • ObjectType
    • ObjectTypeAttr
    • OracleType
    • Timestamp
    • FromSql
    • ToSql
    • ToSqlNull
  • Remove client_version() method and add Version::client() method instead.

  • Remove the associated type Item from RowValue trait.

  • Add &Connection argument to trait methods: ToSql::oratype and ToSqlNull::oratype_for_null.

  • Iterator for &ResultSet<T> was removed and that for ResultSet<T> was added again for better ergonomics. Change for row_result in &result_set {...} to either for row_result in result_set {...} if the ResultSet can be consumed or to for row_result in result_set.by_ref() {...} otherwise.

Changes:

  • Implement FusedIterator for ResultSet.
  • The return value of Connection::object_type() is cached in the connection.
    When "CREATE TYPE", "ALTER TYPE" or "DROP TYPE" is executed, the cache clears.
  • Add Connection.clear_object_type_cache().
  • Update ODPI-C to version 3.2.2.

0.2.2 (2019-09-29)

  • Implement Sync and Send for Connection. (GH-14)

0.2.1 (2019-04-14)

Changes:

  • Fix memory corruption when using object and collection data types.
  • Update ODPI-C to version 3.1.3.

0.2.0 (2018-10-02)

Incompatible changes:

  • Make errors usable across threads (GH-6)

0.1.2 (2018-09-22 - yanked because of packaging miss)

Changes:

  • Change the license to the Universal Permissive License v 1.0 and/or the Apache License v 2.0.

  • Update ODPI-C to 3.0.0, which includes support for Oracle 18c client.

  • New methods

0.1.1 (2018-07-16)

Changes:

  • Allow fetching BLOB data as Vec<u8>.
  • Implement ToSql and ToSqlNull for &[u8].
  • Implement Debug for Connection, Statement and so on.
  • Update ODPI-C to version 2.4.2.

0.1.0 (2018-04-15)

Changes:

Incompatible changes:

  • Iterator for ResultSet<T> was removed and that for &ResultSet<T> was added in order not to consume ResultSet<T> by for-loop.
    Change for row_result in result_set {...} to for row_result in &result_set {...}.

0.0.8 (2018-03-25)

Fixed bugs:

  • Fix an error when a column value converted from the database character set to UTF-8 becomes longer than the column size. (GH-3)

Incompatible changes:

  • BindIndex and ColumnIndex were sealed and cannot be implemented for types outside of the crate.

  • The Other variant of [StatetmentType][] enum was removed. Commit, Rollback, ExplainPlan, Call and Unknown variants were added to the enum.

  • Change the return type of ObjectType::new_object() from Option<Object> to Result<Object>.

  • Change the return type of ObjectType::new_collection() from Option<Collection> to Result<Collection>.

0.0.7 (2018-03-18)

The method to prepare statements was changed for future extension.

Changes:

Incompatible changes:

0.0.6 (2018-03-11)

Methods for establishing connections were changed in order to avoid incompatible changes when connection pooling is supported in future.

Changes:

Incompatible changes:

0.0.5 (2018-03-04)

New features:

Incompatible changes:

  • Merge RowResultSet struct into RowValueResultSet and rename it to ResultSet.

0.0.4 (2018-02-25)

New features:

Incompatible changes: