# Changelog Source: https://docs.mage.ai/about/changelog Latest new features and changelog. Learn more about the latest features and improvements # Code of Conduct Source: https://docs.mage.ai/about/code-of-conduct We've adopted the [Contributor Covenant](https://www.contributor-covenant.org/) Code of Conduct for the Mage community. Please review the following to understand our standards and expectations for participation. ## Our Pledge We as members, contributors, and leaders pledge to make participation in our community a *magical* โœจ experience for everyone. We pledge to act and interact in ways that contribute to an open, welcoming, diverse, inclusive, and healthy community. ## Our Standards Examples of behavior that contributes to a positive environment for our community include: * ๐Ÿช„ Deliver magical experiences: demonstrating empathy and kindness toward others. Being respectful of differing opinions, viewpoints, and experiences * ๐Ÿ”‹ Give people power-ups: in data engineering *and* open-source development, doing your best to help others learn and grow * ๐Ÿ‘ฌ Victorious as a team: working together to build the best product possible, recognizing that teamwork can amplify outcomes beyond that of an individual * ๐Ÿ™…โ€โ™‚๏ธ No Ego: giving and gracefully accepting constructive feedback Examples of unacceptable behavior include: * The use of sexualized language or imagery, and sexual attention or advances of any kind * Trolling, insulting or derogatory comments, and personal or political attacks * Public or private harassment * Publishing others' private information, such as a physical or email address, without their explicit permission * Other conduct which could reasonably be considered inappropriate in a professional setting ## Enforcement Responsibilities Community leaders are responsible for clarifying and enforcing our standards of acceptable behavior and will take appropriate and fair corrective action in response to any behavior that they deem inappropriate, threatening, offensive, or harmful. Community leaders have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, and will communicate reasons for moderation decisions when appropriate. ## Scope This Code of Conduct applies within all community spaces, and also applies when an individual is officially representing the community in public spaces. Examples of representing our community include using an official e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. ## Enforcement Instances of abusive, harassing, or otherwise unacceptable behavior may be reported to the community leaders responsible for enforcementโ€” please reach out to [the Mage team](mailto:hello@mage.ai) with any concerns. All complaints will be reviewed and investigated promptly and fairly. All community leaders are obligated to respect the privacy and security of the reporter of any incident. ## Enforcement Guidelines Community leaders will follow these Community Impact Guidelines in determining the consequences for any action they deem in violation of this Code of Conduct: ### 1. Correction **Community Impact**: Use of inappropriate language or other behavior deemed unprofessional or unwelcome in the community. **Consequence**: A private, written warning from community leaders, providing clarity around the nature of the violation and an explanation of why the behavior was inappropriate. ### 2. Warning **Community Impact**: A violation through a single incident or series of actions. **Consequence**: A warning with consequences for continued behavior. No interaction with the people involved, including unsolicited interaction with those enforcing the Code of Conduct, for a specified period of time. This includes avoiding interactions in community spaces as well as external channels like social media. Violating these terms may lead to a temporary or permanent ban. ### 3. Temporary Ban **Community Impact**: A serious violation of community standards, including sustained inappropriate behavior. **Consequence**: A temporary ban from any sort of interaction or public communication with the community for a specified period of time. No public or private interaction with the people involved, including unsolicited interaction with those enforcing the Code of Conduct, is allowed during this period. Violating these terms may lead to a permanent ban. ### 4. Permanent Ban **Community Impact**: Demonstrating a pattern of violation of community standards, including sustained inappropriate behavior, harassment of an individual, or aggression toward or disparagement of classes of individuals. **Consequence**: A permanent ban from any sort of public interaction within the community. ## Attribution This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 2.1, available at [https://www.contributor-covenant.org/version/2/1/code\_of\_conduct.html][v2.1]. Community Impact Guidelines were inspired by [Mozilla's code of conduct enforcement ladder][Mozilla CoC]. For answers to common questions about this code of conduct, see the FAQ at [https://www.contributor-covenant.org/faq][FAQ]. Translations are available at [https://www.contributor-covenant.org/translations][translations]. [homepage]: https://www.contributor-covenant.org [v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html [Mozilla CoC]: https://github.com/mozilla/diversity [FAQ]: https://www.contributor-covenant.org/faq [translations]: https://www.contributor-covenant.org/translations # Features Source: https://docs.mage.ai/about/features ![](https://user-images.githubusercontent.com/78053898/198751496-22d51f03-f09f-454c-8f98-409b5dbec8f9.svg) ## Data pipeline management ๐Ÿ‘‰ See more [details here](/design/data-pipeline-management). ![](https://mage-ai.github.io/assets/orchestration-overview.gif) ## Notebook for building data pipelines ### 1. Data centric editor An interactive coding experience designed for preparing data to train ML models. Visualize the impact of your code every time you load, clean, and transform data. Data centric editor ### 2. Production ready code No more writing throw away code or trying to turn notebooks into scripts. Each block (aka cell) in this editor is a modular file that can be tested, reused, and chained together to create an executable data pipeline locally or in any environment. Read more about [blocks](/design/blocks) and how they work. Production ready code Run your data pipeline end-to-end using the command line function: `$ mage run [project] [pipeline]` You can run your pipeline in production environments with the orchestration tools * [Airflow](/guides/integrate-mage-airflow) * [Prefect](/integrations/prefect) ### 3. Extensible Easily add new functionality directly in the source code or through plug-ins (coming soon). Adding new API endpoints ([Tornado](https://www.tornadoweb.org/en/stable/)), transformations (Python, PySpark, SQL), and charts (using [React](https://reactjs.org/)) is easy to do (tutorial coming soon). Extensible charts # Frequently Asked Questions Source: https://docs.mage.ai/about/frequently-asked-questions Here are some frequently asked questions about Mage and our best answers.
Mage is an open-source data pipeline tool for transforming and integrating data. ๐Ÿง™ A mage is someone who uses magic. Advanced technology is indistinguishable from magic. Weโ€™re on a mission to make AI technology more accessible by building data tools for engineers and scientists. Find out more about our story: [https://www.mage.ai/blog/mage-heros-journey-fantasy-epic-on-how-a-startup-rose-from-the-ashes](https://www.mage.ai/blog/mage-heros-journey-fantasy-epic-on-how-a-startup-rose-from-the-ashes) Our tool was built with data engineers and data scientists in mind, but is not limited to those roles. Other data professionals could find value in the tool. You can quickly and easily get started by installing Mage using Docker (recommended),ย **`pip`**, orย **`conda`**. Click [here](https://docs.mage.ai/introduction/overview#quick-start) for details. Mage is free as long as you are self-hosted (AWS, GCP, Azure, or Digital Ocean). Our 4 [core design principles](/design/core-design-principles) that differentiate ourselves are: 1. Easy developer experience 2. Engineering best practices built-in 3. Data is a first-class citizen 4. Scaling is made simple Features that set us apart (some of the others might eventually have these features): 1. Mix and match SQL and Python in data pipeline tasks. 2. UI/IDE for building and managing data pipelines. 3. Data centric: we designed and built a pipeline engine ONLY for moving and transforming data. This makes it possible for us to make datasets a 1st class citizen; enabling native features such as partitioning, versioning, backfilling, data validation, testing, and data quality monitoring. 4. Extensible: we designed and built the tool with developers in mind, making sure itโ€™s really easy to add new functionality to the source code or through plug-ins. 5. Scalable: the tool can handle very, very large datasets while transforming the data or charting it. 6. Production ready: when you build your data pipeline, it runs exactly the same in development as it does in production. Deploying the tool and managing the infrastructure in production is very easy and simple, unlike Airflow. 7. Modular: every block/cell you write is a standalone file that is interoperable; meaning it can be used in other pipelines or in other code bases. Check out our blog [Mage vs. Fivetran](https://www.mage.ai/blog/mage-vs-fivetran). Check out our blog [Mage vs Airbyte](https://www.mage.ai/blog/mage-vs-airbyte). Mage provides an interactive notebook with built-in engineering best practices for building pipelines, which makes prototyping and building production-ready pipelines much easier. Mage supports writing pipelines in multiple languages which include Python, SQL, and R. Mage supports multiple types of pipelines natively such as: * Standard batch pipelines * Data integration pipelines * Streaming pipelines * Spark pipelines * DBT pipelines We currently support SQL, Python, R, and PySpark. Coming soon: Spark SQL. Yes! [Here](https://docs.mage.ai/integrations/spark-pyspark) is a step-by-step tutorial to use Mage withย Sparkย on EMR. Sagemaker is used to train machine learning models and serve them via api. Mage is an engine for running data pipelines that can move and transform data. That data can then be stored anywhere (e.g. S3) and used to train models in Sagemaker. Databricks provides infrastructure to run Spark. They also provide notebooks that can run your code in Spark as well. Mage can execute your code in a Spark cluster, managed by AWS, GCP, or even Databricks. [Here is a doc](/integrations/observability/alerting-slack) to help you set up alerting for pipeline status updates in [Slack](https://www.mage.ai/chat). We love and welcome community contributions! [Here is a doc](/contributing/overview) to get you started. To request features, add a โ€œFeature requestโ€ using the `New issue` button in GitHub from this [link](https://github.com/mage-ai/mage-ai/issues), or join our [feature-request](https://www.mage.ai/chat) Slack channel. *Canโ€™t find what youโ€™re looking for? [Ask a question here](https://github.com/mage-ai/mage-ai/discussions/categories/q-a) or [join our slack](https://mage.ai/chat) for additional support!* # Releases Source: https://docs.mage.ai/about/releases Latest new features and changelog. Install the newest version of Mage *** Install the newest version of Mage
Read full release notes ### โ˜๏ธ Google cloud storage source You can now effortlessly configure your data integration source blocks to Google Cloud Storage using this snippet. It specifies the destination bucket, sets the file type to Parquet, and provides the path to your service account credentials needed for authentication.
by @TalaatHasanin in [https://github.com/mage-ai/mage-ai/pull/5334](https://github.com/mage-ai/mage-ai/pull/5334) ### ๐ŸŒฌ๏ธ ๐Ÿฝ๏ธ Airtable Integration Effortlessly streamline your data data integration source blocks with Airtable using this tailored script. It establishes a connection to your Airtable base, designates the specific table for integration, and securely integrates your Airtable API key for access.
by @TalaatHasanin in [https://github.com/mage-ai/mage-ai/pull/5404](https://github.com/mage-ai/mage-ai/pull/5404) ### โœ‚๏ธ Add trim reformat action to transformer block A new "trim reformat" action has been added to the Python transformer block, allowing for the removal of leading and trailing whitespace from specified text columns. This enhancement ensures cleaner and more consistent data formatting by automatically stripping unnecessary spaces around text entries. by @cristopheridlc in [https://github.com/mage-ai/mage-ai/pull/5321](https://github.com/mage-ai/mage-ai/pull/5321) ### ๐Ÿปโ€โ„๏ธ Enable polars dataframe in GCS data exporter This update enhances the export method of the GCS IO module, expanding its functionality to support exporting Polars DataFrames in addition to the previously supported Pandas DataFrames. This new capability allows users to seamlessly work with both data formats, offering greater flexibility in managing and exporting data from their workflows.
by @TalaatHasanin in [https://github.com/mage-ai/mage-ai/pull/5348](https://github.com/mage-ai/mage-ai/pull/5348) ### Add support to scheduler name on k8s executor This update adds the ability to customize Kubernetes scheduler options when using the Kubernetes Executor. Users can now directly configure scheduler settings, providing increased flexibility and control over how pods are scheduled within Kubernetes environments. by @messerzen in [https://github.com/mage-ai/mage-ai/pull/5412](https://github.com/mage-ai/mage-ai/pull/5412)
Read full release notes ### ๐Ÿง  Memory management upgrade This feature enhances system performance and stability by optimizing allocation, deallocation, and overall utilization of RAM resources, resulting in improved efficiency and reduced memory-related errors. Check out the [doc](https://www.notion.so/mageai/Memory-management-upgrades-e6c5e6e360ce410094091e00c46e3bb6?pvs=4) for details.
### ๐Ÿ”„ Dynamic blocks 2.0 Introducing an enhanced Dynamic blocks feature for creating dynamic content blocks that can adapt based on user input or data changes, offering improved flexibility and interactivity for users. This update aims to streamline workflows and enhance the overall user experience by making content more responsive and customizable. Learn more in this [doc](https://www.notion.so/mageai/Dynamic-Blocks-2-0-d2fc11a4f48148d68b817e9bfb38a732). ### ๐Ÿ” Azure DB connection via Key Vault Securely retrieve a database connection URL stored in Azure Key Vault using environment variables for authentication. ``` AZURE_KEY_VAULT_URL AZURE_CLIENT_ID AZURE_CLIENT_SECRET AZURE_TENANT_ID ``` by [@wangxiaoyou1993](https://github.com/wangxiaoyou1993) in [#5302](https://github.com/mage-ai/mage-ai/pull/5302) ### ๐Ÿ‘๏ธ Workspace monitoring Add an "Overview" page and "Pipeline runs" page to the Workspace Management UI. This provides some overall monitoring for all of the pipeline runs in the different workspaces without having to individually open up each workspace instance.

by @johnson-mage in [https://github.com/mage-ai/mage-ai/pull/5311](https://github.com/mage-ai/mage-ai/pull/5311)
Read full release notes