Copilot commented on code in PR #62790:
URL: https://github.com/apache/airflow/pull/62790#discussion_r3066482751
##########
airflow-core/docs/extra-packages-ref.rst:
##########
@@ -339,6 +339,8 @@ Some of those enable Airflow to use executors to run tasks
with them - other tha
+---------------------+-----------------------------------------------------+-----------------------------------------------------------------+----------------------------------------------+
| influxdb | ``pip install 'apache-airflow[influxdb]'`` |
Influxdb operators and hook |
|
+---------------------+-----------------------------------------------------+-----------------------------------------------------------------+----------------------------------------------+
+| ibm-mq | ``pip install 'apache-airflow[ibm-mq]'`` |
IBM MQ hooks and operators |
|
Review Comment:
The extra name documented here (`ibm-mq`) should match the actual extras key
defined in the root `pyproject.toml` (this PR adds `ibm.mq`). If the intended
extra is `ibm.mq` (consistent with other dotted provider extras, e.g.
`microsoft.azure`), update this table accordingly to avoid users installing a
non-existent extra.
```suggestion
| ibm.mq | ``pip install 'apache-airflow[ibm.mq]'``
| IBM MQ hooks and operators |
|
```
##########
providers/ibm/mq/provider.yaml:
##########
@@ -0,0 +1,61 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you 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.
+
+---
+package-name: apache-airflow-providers-ibm-mq
+name: IBM MQ
+
+state: ready
+lifecycle: incubation
+source-date-epoch: 1758787200
+description: |
+ `IBM MQ <https://www.ibm.com/products/mq/>`__
+# Note that those versions are maintained by release manager - do not update
them manually
+# with the exception of case where other provider in sources has >= new
provider version.
+# In such case adding >= NEW_VERSION and bumping to NEW_VERSION in a provider
have
+# to be done in the same PR
+versions:
+ - 0.1.0
+
+integrations:
+ - integration-name: IBM MQ
+ external-doc-url: https://www.ibm.com/products/mq
+ logo: /docs/integration-logos/ibm-mq.png
+ tags: [software]
+
+hooks:
+ - integration-name: IBM MQ
+ python-modules:
+ - airflow.providers.ibm.mq.hooks.mq
+
+triggers:
+ - integration-name: IBM MQ
+ python-modules:
+ - airflow.providers.ibm.mq.triggers.mq
+
+connection-types:
+ - hook-class-name: airflow.providers.ibm.mq.hooks.mq.IBMMQHook
+ connection-type: mq
+ ui-field-behaviour:
+ placeholders:
+ extra: |
+ {"queue_manager": "QM1",
+ "channel": "DEV.APP.SVRCONN",
+ "open_options": cls.default_open_options}
Review Comment:
The placeholder JSON includes `cls.default_open_options`, which is not valid
JSON and will be copied by users into the Connection `extra` field, causing
runtime parsing problems. Replace it with a concrete string value (e.g.
`\"MQOO_INPUT_SHARED\"`) or a valid example value, then regenerate provider
metadata so `get_provider_info.py` stays consistent.
```suggestion
"open_options": "MQOO_INPUT_SHARED"}
```
##########
providers/ibm/mq/docs/connections/mq.rst:
##########
@@ -0,0 +1,27 @@
+ .. Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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.
+
+.. _howto/connection:mq:
+
+MQ connection
+=============
+
+The MQ connection type enables connection to an IBM MQ.
+
+.. |MQ Connection| image:: mq_connection.png
+ :width: 400
+ :alt: IBM MQ Connection Screenshot
Review Comment:
This page references `mq_connection.png`, but no image file is included in
the changes for the new provider docs. Add the referenced image under
`providers/ibm/mq/docs/connections/` (or remove/replace the image directive) to
avoid broken docs builds/links.
```suggestion
```
##########
providers/ibm/mq/README.rst:
##########
@@ -0,0 +1,92 @@
+
+.. Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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.
+
+.. NOTE! THIS FILE IS AUTOMATICALLY GENERATED AND WILL BE OVERWRITTEN!
+
+.. IF YOU WANT TO MODIFY TEMPLATE FOR THIS FILE, YOU SHOULD MODIFY THE TEMPLATE
+ ``PROVIDER_README_TEMPLATE.rst.jinja2`` IN the
``dev/breeze/src/airflow_breeze/templates`` DIRECTORY
+
+Package ``apache-airflow-providers-ibm-mq``
+
+Release: ``0.1.0``
+
+
+`IBM MQ <https://www.ibm.com/products/mq/>`__
+
+
+Provider package
+----------------
+
+This is a provider package for ``ibm.mq`` provider. All classes for this
provider package
+are in ``airflow.providers.ibm.mq`` python package.
+
+You can find package information and changelog for the provider
+in the `documentation
<https://airflow.apache.org/docs/apache-airflow-providers-ibm-mq/0.1.0/>`_.
+
+Installation
+------------
+
+You can install this package on top of an existing Airflow 2 installation
+(see ``Requirements`` below for the minimum Airflow version supported) via
+
+``pip install apache-airflow-providers-ibm-mq``
+
+This installs only the provider package. To use the IBM MQ operators at
+runtime you also need the ``ibmmq`` dependency, which can be installed via
+the provider extra:
+
+``pip install apache-airflow-providers-ibm-mq[ibmmq]``
+
+The ``ibmmq`` extra installs the Python wrapper for the IBM MQ client that is
required by the provider hooks and operators.
+
+Note that the `ibmmq <https://github.com/ibm-messaging/mq-mqi-python/>`_
Python package requires the native `IBM MQ Redistributable Client
<https://www.ibm.com/docs/en/ibm-mq/9.4.x?topic=overview-redistributable-mq-clients>`_
libraries to be installed on the system.
+
+Refer to the IBM MQ documentation for installation instructions for your
platform.
+
+The package supports the following python versions: 3.10,3.11,3.12,3.13
+
+Requirements
+------------
+
+=============================================
=====================================
+PIP package Version required
+=============================================
=====================================
+``apache-airflow`` ``>=2.11.0``
+``apache-airflow-providers-common-messaging`` ``>=2.0.0``
+``importlib-resources`` ``>=1.3``
+=============================================
=====================================
+
+
+========================================================================================================================
====================
+Dependent package
Extra
+========================================================================================================================
====================
+`apache-airflow-providers-common-compat
<https://airflow.apache.org/docs/apache-airflow-providers-common-compat>`_
``common.compat``
+`apache-airflow-providers-common-messaging
<https://airflow.apache.org/docs/apache-airflow-providers-common-messaging>`_
``common.messaging``
+========================================================================================================================
====================
+
+Optional dependencies
+----------------------
+
+========== ================
+Extra Dependencies
+========== ================
+``ibmmq`` ``ibmmq>=2.0.4``
+========== ================
+
+The changelog for the provider package can be found in the
+`changelog
<https://airflow.apache.org/docs/apache-airflow-ibm-mq/0.1.0/changelog.html>`_.
Review Comment:
The changelog URL appears incorrect/missing `-providers-` (it points to
`apache-airflow-ibm-mq` rather than `apache-airflow-providers-ibm-mq`, which is
used elsewhere in this PR). Fix the URL so it resolves correctly after
publishing.
```suggestion
`changelog
<https://airflow.apache.org/docs/apache-airflow-providers-ibm-mq/0.1.0/changelog.html>`_.
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]