docs: fix broken links, missing sidebar entries, and restore lost content

- Replace all /developer_portal/ links with /developer-docs/ in index.md
- Fix non-existent extension-project-structure references
- Fix sidebar links using old /docs/ paths (/user-docs/ instead)
- Add missing extension-points/editors and pkg-resources-migration to sidebar
- Restore Kubernetes debugging section lost during howtos migration
- Restore pkg-resources-migration.md deleted during bifurcation
- Fix versioned docs quickstart.mdx missing version prefix
- Update stale developer_portal references in README, DOCS_CLAUDE, intro.md
- Fix broken creating-viz-plugins link in intro.md

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Evan Rusackas
2026-02-23 11:21:21 -08:00
parent 8c28c6b474
commit 8ddb06bb2f
13 changed files with 405 additions and 27 deletions

View File

@@ -1012,7 +1012,7 @@ When contributing new React components to Superset, please try to add a Story al
The topic of authoring new plugins, whether you'd like to contribute
it back or not has been well documented in the
[the documentation](https://superset.apache.org/docs/contributing/creating-viz-plugins), and in [this blog post](https://preset.io/blog/building-custom-viz-plugins-in-superset-v2).
[the documentation](/developer-docs/contributing/howtos#creating-visualization-plugins), and in [this blog post](https://preset.io/blog/building-custom-viz-plugins-in-superset-v2).
To contribute a plugin to Superset, your plugin must meet the following criteria:

View File

@@ -256,6 +256,30 @@ For debugging the Flask backend:
2. Set breakpoints and press F5 to debug
### Debugging Server App in Kubernetes Environment
To debug Flask running in a POD inside a kubernetes cluster, you'll need to make sure the pod runs as root and is granted the `SYS_PTRACE` capability. These settings should not be used in production environments.
```yaml
securityContext:
capabilities:
add: ["SYS_PTRACE"]
```
See [set capabilities for a container](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-capabilities-for-a-container) for more details.
Once the pod is running as root and has the `SYS_PTRACE` capability it will be able to debug the Flask app.
You can follow the same instructions as in `docker compose`. Enter the pod and install the required library and packages: gdb, netstat and debugpy.
Often in a Kubernetes environment nodes are not addressable from outside the cluster. VSCode will thus be unable to remotely connect to port 5678 on a Kubernetes node. In order to do this you need to create a tunnel that port forwards 5678 to your local machine.
```bash
kubectl port-forward pod/superset-<some random id> 5678:5678
```
You can now launch your VSCode debugger with the same config as above. VSCode will connect to 127.0.0.1:5678 which is forwarded by kubectl to your remote kubernetes POD.
### Storybook
See the dedicated [Storybook documentation](../testing/storybook) for information on running Storybook locally and adding new stories.

View File

@@ -0,0 +1,94 @@
---
title: pkg_resources Migration Guide
sidebar_position: 9
---
<!--
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.
-->
# pkg_resources Deprecation and Migration Guide
## Background
As of setuptools 81.0.0, the `pkg_resources` API is deprecated and will be removed. This affects several packages in the Python ecosystem.
## Current Status
### Superset Codebase
The Superset codebase has already migrated away from `pkg_resources` to the modern `importlib.metadata` API:
- `superset/db_engine_specs/__init__.py` - Uses `from importlib.metadata import entry_points`
- All entry point loading uses the modern API
### Production Dependencies
Some third-party dependencies may still use `pkg_resources`. Monitor your dependency tree for packages that haven't migrated yet.
## Migration Path
### Short-term Solution
Pin setuptools to version 80.x to prevent breaking changes:
```python
# requirements/base.in
setuptools<81
```
This prevents the removal of `pkg_resources` while dependent packages are updated.
### Long-term Solution
Update all dependencies to use `importlib.metadata` instead of `pkg_resources`:
#### Migration Example
**Old (deprecated):**
```python
import pkg_resources
version = pkg_resources.get_distribution("package_name").version
entry_points = pkg_resources.iter_entry_points("group_name")
```
**New (recommended):**
```python
from importlib.metadata import version, entry_points
pkg_version = version("package_name")
eps = entry_points(group="group_name")
```
## Action Items
### For Superset Maintainers
1. The Superset codebase already uses `importlib.metadata`
2. Monitor third-party dependencies for updates
3. Update setuptools pin once the ecosystem is ready
### For Extension Developers
1. **Update your packages** to use `importlib.metadata` instead of `pkg_resources`
2. **Test with setuptools >= 81.0.0** once all packages are migrated
## References
- [setuptools pkg_resources deprecation notice](https://setuptools.pypa.io/en/latest/pkg_resources.html)
- [importlib.metadata documentation](https://docs.python.org/3/library/importlib.metadata.html)
- [Migration guide](https://setuptools.pypa.io/en/latest/deprecated/pkg_resources.html)

View File

@@ -110,7 +110,7 @@ flowchart TD
## Entity-Relationship Diagram
For the full interactive Entity-Relationship Diagram, please visit the [main documentation](https://superset.apache.org/docs/contributing/resources).
For the full interactive Entity-Relationship Diagram, please visit the [developer documentation](/developer-docs/contributing/resources).
You can also [download the .svg](https://github.com/apache/superset/tree/master/docs/static/img/erd.svg) directly from GitHub.
@@ -119,7 +119,7 @@ You can also [download the .svg](https://github.com/apache/superset/tree/master/
### Official Documentation
- [Apache Superset Documentation](https://superset.apache.org/docs/intro)
- [API Documentation](https://superset.apache.org/docs/api)
- [Configuration Guide](https://superset.apache.org/docs/installation/configuring-superset)
- [Configuration Guide](https://superset.apache.org/admin-docs/configuration/configuring-superset)
### Community Resources
- [Apache Superset Blog](https://preset.io/blog/)

View File

@@ -29,14 +29,14 @@ Welcome to the Apache Superset Developer Portal - your comprehensive resource fo
## 🚀 Quick Start
### New Contributors
- [Contributing Overview](/developer_portal/contributing/overview)
- [Development Setup](/developer_portal/contributing/development-setup)
- [Your First PR](/developer_portal/contributing/submitting-pr)
- [Contributing Overview](/developer-docs/contributing/overview)
- [Development Setup](/developer-docs/contributing/development-setup)
- [Your First PR](/developer-docs/contributing/submitting-pr)
### Extension Development
- [Extension Project Structure](/developer_portal/extensions/extension-project-structure)
- [Extension Architecture](/developer_portal/extensions/architecture)
- [Quick Start](/developer_portal/extensions/quick-start)
- [Extension Development](/developer-docs/extensions/development)
- [Extension Architecture](/developer-docs/extensions/architecture)
- [Quick Start](/developer-docs/extensions/quick-start)
## 📚 Documentation Sections
@@ -83,7 +83,7 @@ Everything you need to contribute to the Apache Superset project. This section i
### External Documentation
- **[User Documentation](https://superset.apache.org/docs/intro)** - Using Superset
- **[API Documentation](https://superset.apache.org/docs/api)** - REST API reference
- **[Configuration Guide](https://superset.apache.org/docs/configuration/configuring-superset)** - Setup and configuration
- **[Configuration Guide](https://superset.apache.org/admin-docs/configuration/configuring-superset)** - Setup and configuration
### Important Files
- **[CLAUDE.md](https://github.com/apache/superset/blob/master/CLAUDE.md)** - LLM development guide
@@ -96,17 +96,17 @@ Everything you need to contribute to the Apache Superset project. This section i
<td width="50%">
**I want to contribute code**
1. [Set up development environment](/developer_portal/contributing/development-setup)
1. [Set up development environment](/developer-docs/contributing/development-setup)
2. [Find a good first issue](https://github.com/apache/superset/labels/good%20first%20issue)
3. [Submit your first PR](/developer_portal/contributing/submitting-pr)
3. [Submit your first PR](/developer-docs/contributing/submitting-pr)
</td>
<td width="50%">
**I want to build an extension**
1. [Start with Quick Start](/developer_portal/extensions/quick-start)
2. [Learn extension structure](/developer_portal/extensions/extension-project-structure)
3. [Explore architecture](/developer_portal/extensions/architecture)
1. [Start with Quick Start](/developer-docs/extensions/quick-start)
2. [Learn extension development](/developer-docs/extensions/development)
3. [Explore architecture](/developer-docs/extensions/architecture)
</td>
</tr>
@@ -115,8 +115,8 @@ Everything you need to contribute to the Apache Superset project. This section i
**I found a bug**
1. [Search existing issues](https://github.com/apache/superset/issues)
2. [Report the bug](/developer_portal/contributing/issue-reporting)
3. [Submit a fix](/developer_portal/contributing/submitting-pr)
2. [Report the bug](/developer-docs/contributing/issue-reporting)
3. [Submit a fix](/developer-docs/contributing/submitting-pr)
</td>
<td>