Oct 02 2012

Visual Importer Enterprise Crack

AERON ENTERPRISE, MICRO-METERS AND CALIPERS GAUGES, 90173010, Certificate, View CAPSTONE EXPORT & IMPORT,, SURGICAL EQUIPMENTS, 9018, Certificate, View. When trying to open or import raw scan data files from your laser scanner in FARO® SCENE, or if you are saving a SCENE.fls or.lsproj file. Describes how to import Datasmith and CAD files using Blueprint or Python, and how to change the way your scene is transformed into Unreal Assets and Actors.

Visual Importer Enterprise Crack -

Axure RP 10

Infinite Interactions,
Unlimited Power

Axure RP is the only UX tool that gives UX professionals the power to build realistic, functional prototypes.

Download Your Free 30-day Trial


Interactive Possibilities

Create UX prototypes with unlimited combinations of event triggers, conditions, and actions to truly explore digital experiences.

Interaction Events

Use mouse, touch, and keyboard events to trigger interactions

Conditional Logic

Add conditions and variables to take your prototypes to the next level

Dynamic Content for realistic UX prototypes

Leverage powerful Axure RP widgets to create working forms, sortable grids, and dynamic interfaces

Working Forms

Working text fields, droplists, and radio buttons are just a drag-and-drop away

Multi-State Containers

Use multi-state dynamic panels to make everything from popups to scrollable, swipe-able, mobile screens

Data-Driven Interfaces

Create data-driven tables and grids that you can dynamically sort and filter with the repeater widget

Adaptive Views

Design for desktop, tablets, and phones on a single page and automatically show the appropriate view

All This Power and No Code Required

Making realistic, functional, UX prototypes has never been easier.

Download Axure RP 10

Download a free trial and see why professionals choose Axure RP.

Download Now

As a UX Designer and Researcher, I’m able to prototype high-fidelity solutions that allow the team to visualize interactions and functionality that feel very real. Since switching to Axure, we’ve been able to get much higher quality user feedback because of the robust prototypes and realistic experience that Axure allows us to create.

Emily, UX Researcher

A complete tool for UX Professionals

Create diagrams, customer journeys, wireframes, and other UX documentation right next to your rich, functional UX prototypes.

Flow Diagrams

Built-in flow shapes and connectors that magically reflow make it easy to make diagrams in RP

Notes and Specifications

Add notes to capture requirements and specifications for developers and stakeholders

Share Functional Prototypes with just a click

Click a button and instantly publish your RP UX prototypes to Axure Cloud to share, inspect, and gather feedback from your team.

Comments and Feedback

Gather feedback directly on-screen and use Slack and Microsoft Teams integrations for notifications.

Developer Inspect

Streamline hand off to developers with automated redlines, design assets, and CSS inspection.

Get Your Team on the Same Page

Embed fully-functional prototypes directly into Jira and Confluence, and use our Microsoft Teams and Slack integrations keep everyone up to date on the latest activity.

Design Tool Integrations


Easily copy frames from Figma into Axure RP to bring your designs to life.

Learn More

Adobe XD

Import layers from Adobe XD to Axure RP, editable and ready to add interactions.

Learn More


Quickly bring artboards from Sketch into RP to create beautiful UX prototypes.

Learn More

I’ve been using Axure for more than a decade and love it! It is straightforward and enables low fidelity as well as high fidelity prototyping. The extensive interactions and integrations allow me to quickly prototype realistic user experiences.

Ravid, UX Project Manager

Download Axure RP 10

When you’re ready to see how Axure RP can help you and your team, download the free 30-day fully-functional trial for PC or Mac.

Download Now
Источник: https://www.axure.com/

Visual Importer Enterprise

Visual Importer Enterprise
Visual Importer Enterprise

Download Visual Importer Enterprise v7.5.15 crack by iNViSiBLE

▀██████ ██ ███▀▀ ▄▄▄▄▄ ▀▀▀██▓░░ ▐█████▀██████▌ ██████ ██▌ ▄█████████▓▒░ ▄ ▀▀▀▀▀ ███████ ▄█████▀ ██████ ▀ ▀▀▀██████▀▀▀▀▀▀ ██████ ███████▌ ██████ █████▄ ██████ ██▄▄▄ ███▓██ ██▓▓████ ███▓▓█ ████▓█ █▓███▓ ███████▓░░ ░ █▓▓█▓█ █▓█▓▓█▐▓▌█▓▓█▓▓ ▓█▓▓█▓ ▓███▓▓ ████████▓▒░░ ▓▓▓▓▓▓ ▓▓▓▓▓▓ ▓▓▓▓▓▓▓▒ ▓▓▓▓▓▓ ▓▓▓▓▓ ███████████▓▒▓▒░ ▓▒▒▓▓▒ ▒▒▓▓▓▓ ▒▒▓▓▓▒▒▒ ▒▓▓▓▒▓ ▒▓▓▒▒ █████████████▄▄▄▓░ ░ ▒░▒▒▒▒ ░▒▒▒▒▒ ▒▒▒▒▒░░ ▒▒▒▒▒░ ▒▒░░ ▀███████████▓░ ░░░░░▒ ░░▒░░░ ░░░░░▒░ ░▒░░░░ ░░░░ ▀▀████████▓░ ░░░░░░ ░░░░░░ ░░░░░░ ░░░░░░░░ ▀▀▀███▒░ ░░░░ ░░ ░░░░░░ ░░░ !yL ░ ░░░░ ░ Visual Importer Enterprise 7.5.15 (c) DB Software Laboratory Release Date ......................[ 28/06/2008 ] OS Type: ..........................[ WinXP ] Release Type: .....................[ Crack ] Protection: .......................[ Armadildo ] ▄ ▄█ ▄██ ▄▄▄▄ ▄██▀ █▀█ ▄████ █ ▀ ▄ █ ▄██ ▄▄ ▄▄▄████ █ ▄▄▄███ ▄▀▀███▄█▀█▀ █▄█ ▄▄▄███ ▄██ ██ ▄▄▄███ █ ██▀███ █ ██ █ ███ █ █ ▄▄▄█ █▀▄█▄ ▀ ███ █ █ █▀████▄ █▀████ █ █ ▄▄▄▄▄ █ █ █ █ ██▄██ █ █ █ ██▄█▄██▀ █ █ ▀███▄ █ █ ██▄█ █ ██ █▀██ ██ █ ▀▀███▀ █▀█ ███ █ █▀▀▀ █ █▄▄█ █▀▀▀ █ █ █ █ ▄▄ █ █▌█ █▀▀▀ █ ██▄█ ██▀█ █▀▀▀ █ █ █ █ █▀ ████▀▀▀ █▄█▀▀████▀▀▀ ▀▀▀██████▀█▄█▄█ ████▀▀▀ █▄██▀ ▀ ███ ▀██▄███▀ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ █▄██▀▀ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ Visual Importer Enterprise is an automation tool. User can design Import, Export and SQL scripts, add them to the Package and schedule it for execution on regular basis. Visual Importer Enterprise stores all information in the repository. Unlike DTS, SSIS and Oracle Warehouse builder Visual Importer Enterprise can send and receive emails and process attachments as well. All FTP operations also supported. By combining simple Package Items together Visual Importer Enterprise helps businesses and Fortune 100 companies to automate complicated business processes and everyday tasks. Enterprise Version includes execution agent which can be run as Windows service. http://www.dbsoftlab.com/ ▄█ ▄▄▄▄ ▄ ▄ ▄ ▄ ▄██▀ ▄████ █▄██▄▄▄▄▄▄▄▄ ▄██ ██▄ ▄▄▄▄▄▄▄▄██▄ █▄ ▀ ▄ ██▀█▀ █▄██▄█▀▀▀▀▀▀▀▀▀ █▀█ █▀█ ▀▀▀▀▀▀▀▀▀█▄█▀██▀ █ ▄██ ██▀▄█▄ ▀ █▀█ ▄▀▀███▄ █ █ █ █ ▄▀▀███▄ █▀█ ▀ ▄ ▄ ██ █▀████▄ █▀█ ▀███▄ █ █ ▄▄▄█ █ █ █ █ █ ▄▄▄█ █ █ █ ▄██ ▄▄▄▄▄ ███▄ █▀█ █ ██ █▀██ █ ▄▄ █ █▌█ █ ▄██▀ █ █ █ █ █ █ ▄██▀ █ █ █ █ █▀█▄██▀ █▀██ █▀██ █ █ ██▄█ ██▀█▀█▄█▄█ █ █ █ █ █ █ █ █ ▄█ █▄█ █ █ █ █ █ █ ██ █ █ ██▄█ █▄█ █▄██▀ ▀ █▄██▀▀ █▄█ ▀▀▀█████▄█▄██▀█▄██▀███████▄█▄█▄█▄█▀██████▀█▀ █▀ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ Unpack, Install. Copy cracked files from /iNViSiBLE dir to app dir. Enjoy! If you like this app, BUY iT! ▄█ ▄▄▄███ ▄██▀ ▄██ ▀█ █ ▀ ▄ █ █ █ █▀▀ ▄██ ▄▄ ▄ ▄████▄▄▄ ▄██ ██ ▄▄▄███ █ █ █ ██▀▀█▄██▀██▄██▄ ▄███ █ █▀█ █▀████▄ █▀████ █ █ ▄▄▄▄▄ █ █ ▄▄▄ █ █ █▀█ █ ██ █ █ ██ █ █▄█ █ ██ █▀██ ██ █ ▀▀███▀ █▀█ █ █ █▀█ ███ █ █ █ ██ █ █ ██ █▀▀▀ █ ██▄█ ██▀█ █▀▀▀ █ █ █ █ █▄█▄▄█ █ █▀ ▀██▄███▀▀██████▀█▄█ █▄██▀ ▀ ███ ▀██████▀ ▀▀▀▀▀██ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ █ Experienced keygenners, coders and suppliers wanted. PGP KeyID: 0xCC1DB781 Unencrypted emails will be discarded.

Источник: https://cracksgurus.com/crack/Visual-Importer-Enterprise-v7.5.15-crack-by-iNViSiBLE-bee7de2cab.html

HCL AppScan Source Version Readme and Release Notes

Upgrading AppScan Source without ending all AppScan Source processes may cause the Remediation Assistance view to fail

If you perform a product upgrade when an AppScan Source process is still running, the Remediation Assistance view may display an error similar to these after the upgrade:


Before upgrading an AppScan Source installation that includes the AppScan Source for Analysis, AppScan Source for Development (Eclipse plug-in), or AppScan Source for Development (Visual Studio plug-in) components, ensure that there are no AppScan Source processes running.

After applying AppScan Source for Development to Eclipse, you are not prompted to choose a workspace after the initial Eclipse relaunch

After applying AppScan Source for Development to Eclipse, you are prompted to restart the workbench. After restarting, you are prompted to choose a workspace. However, when you restart Eclipse again - or close it and start it - you are not prompted to choose a workspace.

This problem is related to https://bugs.eclipse.org/bugs/show_bug.cgi?id=409552.

You can work around this problem using one of these methods:

  • Use the option when starting Eclipse.
  • Exit Eclipse and then, in your Eclipse installation directory, delete the configuration\org.eclipse.osgi\.manager directory before starting Eclipse again.

If you do not resolve the problem, you can ensure that you are using the correct workspace by using the action.

Attempts to run AppScan Source for Development (Eclipse plug-in) results in error

Attempts to run some actions in AppScan Source for Development (Eclipse plug-in) (for example, launching a scan or starting actions that require a login) can result in this error message (or one that is similar to it):

When running on a 64-bit Java Runtime Environment, this typically indicates that the 64-bit Microsoft™ Visual C++ runtime library is unavailable. To resolve this problem, install the Microsoft Visual C++ 2010 Redistributable Package, available at http://www.microsoft.com/en-ca/download/details.aspx?id=14632.

Installing the AppScan Source for Development Eclipse plug-in no longer includes the option to install the plug-in prerequisites

In Version 9.0, the options to install the prerequisites for the Eclipse plug-in (Graphical Editing Framework (GEF) and Draw2d) are no longer available. Most versions of Eclipse that are supported by AppScan Source for Development include these features. If yours does not, install these components into your Eclipse environment using the appropriate update site before installing the AppScan Source for Development Eclipse plug-in.

Using 64-bit Eclipse on macOS:

This message can occur when scanning from a 64-bit Eclipse IDE using the AppScan Source for Development Eclipse plug-in when the contents of the class path and the default JDK in Eclipse do not match.

To work around this issue:

  • 1. Choose from the main menu.
  • 2. If your workspace contains more than one project, the Choose Projects dialog box will open. In this dialog box, select the project to configure and then click OK.
  • 3. Set the JDK to use for scanning this project to IBM JDK 1.7.

Click OK to close the dialog box and re-scan the application.

On Microsoft Windows 7, component review panel may be blank when applying the AppScan Source for Development Plug-in to Eclipse or Eclipse-based products

In some cases (for example, if you use a .bat file to launch Eclipse), when you use the Software Updates feature to apply the AppScan Source for Development plug-in to Eclipse, the page that allows you to review installation components will appear blank even when components are going to be installed. If you click Finish on this panel, the installation will complete provided there are no other issues.

Upgrading the AppScan Source for Development (Eclipse plug-in)

It is recommended that you uninstall AppScan Source for Development from your Eclipse IDE before upgrading to a more recent version of AppScan Source for Development or AppScan Source.

AppScan Source for Analysis and AppScan Source for Development (Eclipse plug-in) component prerequisite on Linux

On Linux, Eclipse requires the installation of a third-party component in order to render browser-based content. Without this component, AppScan Source for Analysis and theAppScan Source for Development (Eclipse plug-in) may exhibit symptoms such as a hang after login or a fail during product use. See the HCL AppScan Source Installation and Administration Guide to learn how to enable browser-based content for these products.

The libstdc++.so.5 GCC library may be required for Red Hat Enterprise Linux Versions 5 and 6

If you need to install Mozilla XULRunner to enable browser-based content on Linux for AppScan Source for Analysis or AppScan Source for Development (Eclipse plug-in) (as described in the product documentation), libstdc++.so.5 is required. In many cases, this library will already be on your machine. If it is not on your machine, you will receive an error message that includes text similar to:

For libstdc++.so.5: If you are a member of the Red Hat network and have , run this command as to install libstdc++.so.5:

If you are not a member of the Red Hat network or do not have , you will need to obtain a copy of the compat-libstdc++ RPM from an RPM archive site or obtain libstdc++.so.5 from another source. After it has been installed and placed on your , you will be able to run the AppScan Source setup binary.

AppScan Source for Development plug-in for Eclipse and Eclipse-based products: multiple prompts for AppScan Source installation directory

When you use the AppScan Source for Development Plug-in for Eclipse and Eclipse-based products for the first time, you are prompted by a dialog box to specify the path to your AppScan Source installation directory. If you specify the installation directory and click OK but then receive the same dialog again, click Cancel, restart the workbench, and then continue with normal product use. Failure to restart the workbench upon receiving multiple prompts for the installation directory can cause scans to fail.

Shared/Global filters in AppScan Source for Development do not consistently display

The Filtering module in AppScan Source for Development allows you to open saved assessments and perform filtering actions without having to log in and authenticate to the AppScan Enterprise Server. Because shared filters are stored in the AppScan Source Database (which requires login and authentication to access), they are not available in the plug-ins if you have not yet logged your current plug-in session into AppScan Source.

Workaround: Perform a scan (or any other action that requires login) before accessing the filtering module in the plug-in. Once you log in, shared filters will be available.

Important: Filters are loaded when the Edit Filters View is open in the Developer Plug-in. If this view is already open, logging in will not update the view with shared filters. As a workaround, close the view, restart the plug-in, and log in to AppScan Source before reopening the Edit Filters View.

Configuring Eclipse or Rational Application Developer for WebSphere Software (RAD) environments

AppScan Source supports importing projects from external Eclipse environments (see the Supported Project Files sections in the HCL AppScan Source Installation and Administration Guide (to learn more about this guide, see Documentation)). Before you import an Eclipse or RAD project, you may need to create an Eclipse importer configuration for it in your AppScan Source for Analysis preferences and install the AppScan Source for Development plug-ins into the environment.

Modifying custom rules and plug-in use

If you create a custom rule in AppScan Source for Analysis and are logged in to an AppScan Source for Development plug-in, to see the changes, you must restart the IDE.

Assessment Summary view chart style selection is no longer supported

In the Assessment Summary view, you can no longer choose the style of chart to display. The bar chart is the only chart style available.

Rational Application Developer for WebSphere Software (RAD) Plug-in on Windows 7 must run as administrator

If the installation location or shared resources directory for RAD is in a directory in the path C:\Program Files, then you must run RAD as administrator. To run as administrator, right-click the program shortcut and click Run as administrator. On Windows 7, the Program Files directory is virtualized in order to allow users who are not running as the administrator to have write access to this protected directory. However, the virtualization workaround is not compatible with RAD.

If you selected an installation location or shared resources directory in the path C:\Program Files and do not want to require running RAD as administrator, then complete one of these tasks:

  • If you selected an installation location in a directory in the path C:\Program Files, then reinstall RAD (and any other programs sharing the same installation location) and select an installation location that is not in the path C:\Program Files.
  • If you selected a shared resources directory in the path C:\Program Files, then reinstall RAD and all Rational Software Development Platform products (regardless of their installation location) and select shared resources directory and installation locations that are not in the path C:\Program Files.

For more information on running RAD on Windows 7, refer to Running version or later Rational Software Development Platform products on Microsoft Windows Vista.

Источник: https://help.hcltechsw.com/appscan/Source/9.0.3/topics/readme.html

A chain is only as strong as its weakest link, so the saying goes. When it comes to the current state of the global supply chain, weakness is everywhere. Massive dislocations are present in the container market, shipping routes, ports, air cargo, trucking lines, railways and even warehouses. The result has created shortages of key manufacturing components, order backlogs, delivery delays and a spike in transportation costs and consumer prices. Unless the situation is resolved soon, the consequences for the global economy may be dire.

What created this logistical nightmare and when will it normalize?

The collapse and subsequent surge in consumer demand

Stress in the supply chain pre-dates COVID. Trade tensions, particularly between the U.S. and China, escalated under President Trump with the introduction of unprecedented tariffs and sanctions on Chinese companies. Beijing retaliated, targeting U.S. agriculture exporters. This created volatility in supply and demand as companies on both sides of the globe rushed to stock inventories ahead of the implementation of tariffs. The unexpected shift in trade put the initial stress on global logistics.

Then came COVID.

During the first half of 2020, demand for most goods cratered as economies worldwide went into lockdown. Sailings by ocean carriers were canceled, manufacturing capacity was cut, and workers everywhere were displaced.

But beginning in the summer of 2020, thanks to massive fiscal stimulus, imports to the U.S. surged. Consumers flooded online retailers with new orders. Manufacturing restarted and international trade resumed. The global economic machine was turned back on.

By late 2020, real cracks in the supply chain started to emerge. From a logistics perspective, restarting the manufacturing machine after the lockdown turned out to be quite difficult. The complex system that moves raw materials and finished products around the globe requires predictability and precision. Both had been lost.

A shortage of shipping containers emerged, shipping rates for certain routes skyrocketed, congestion developed at international ports that then spread to railroads and inland rail terminals, exasperating the trucking and chassis shortage that was already in place. U.S. importers experienced delays in receiving key manufacturing components and exporters faced challenges accessing containers and getting bookings on shipping vessels. The chain had broken.

As the holiday season approaches, the logistics industry is bracing for another jump in demand that could further cripple the supply chain. Every link in the chain needs to operate effectively to restore order in the system, yet each component has its own unique challenges to overcome.

Container prices are soaring

Shipping containers are the backbone of global trade. They move dry bulk and finished goods from one international trade hub to another. Historically, woes for the container industry have followed the economic cycle. Today, it is booming.

The average price for a Chinese-made standard 40’ container is approaching $6,000, more than double what it was in 2016. The post-lockdown jump in demand, combined with lower container turnover, caused prices to rocket higher. Thousands of containers are still stuck in the wrong place.

Many containers that carried millions of masks to countries in Africa and South America early in the pandemic remain empty and uncollected because shipping carriers have concentrated their vessels on their most profitable Asia-North America/Europe routes. In other words, there are fewer containers in circulation, creating an imbalance in usable supply and demand.

Lack of circulation is a problem in the U.S., too. Record-high shipping rates for some routes is impacting U.S. exports. Exporters say shipping lines are refusing to send boxes inland to pick up their cargo because they are trying to get empty containers back to factories in Asia as quickly as possible.

At the port of Los Angeles, the busiest port in the country where 17% of national cargo is received, import volumes increased by 27% in June 2021 vs June 2020 compared to loaded exports that decreased 12% over the same period. It was the lowest amount of exports at the Port of Los Angeles since 2005. Meanwhile, the number of empty containers jumped 47% compared to last year due to the heavy demand in Asia.

Further strains came from the grounding of the Ever Grand in the Suez Canal in March and the shutdown of a key port in southern China in May and June that left roughly 350,000 containers idle.

Until container circulation improves, prices will likely keep rising.

Shipping costs are skyrocketing

The shipping industry is another key component in the supply chain, moving millions of containers around the globe every day. Shipping lines coordinate with logistics companies to carry around 90% of world trade.

When the Suez Canal was blocked, it stranded containers and caused backlogs and delays in shipping schedules as vessels were forced to wait for the canal to reopen or take the much longer route around the southern tip of Africa. The situation was similar to an airport that has to deal with an unexpected change in traffic. It takes time to sort through the chaos and reroute everything. Unfortunately, these giant ships to move as fast, and consequences of the disaster are still being felt.

More ships are needed, but additional supply is a few years away. There are new orders for shipping vessels, equal to almost 20% of the existing capacity, but they won’t come online until 2023. In addition, the trend toward larger and larger ships creates infrastructure challenges at the ports and in other areas that service them. Ships are double or triple the size from the early 2000s and can now hold more than 20,000 containers. They require more truck, train and warehouse capacity to load and unload, and when delays occur, more containers are affected.

The price to ship a container from China to the U.S. West Coast has gone up 13-fold from pre-COVID levels. Shipping from the West Coast to China has also risen, but only by a factor of two. The discrepancy in prices for the different routes is an indication of relative demand and highlights why many carriers are willing to return to China with empty containers rather than wait around for U.S. export product that is slow to make its way to the ports. It is more profitable for the carriers to do so.

The discrepancy in prices between various shipping routes will eventually normalize, but it will take time. The imbalance is impacting container circulation and the flow of trade. Until then, companies will have to deal with higher costs and long delays.

Ports are more productive but still struggle to meet demand

Of course, port infrastructure is a critical component of the supply chain linked to shipping.

In a recent interview, Gene Seroka of the Port of Los Angeles highlighted the changes the port has made to deal with the increased traffic from the import surge. Productivity is 50% higher than pre-COVID levels, but delays are still happening. Shipping vessels and their container cargo are sitting 2.5 times longer at anchor than they used to before COVID. Think of it as a huge traffic jam.

Port congestion is not just a U.S. phenomenon. Traffic on the Yangtze River in China has been challenged due to extreme weather this summer. Authorities had to close the river during storms, creating severe backlogs at Chinese ports as ships wait days for passage to resume. And it may get worse. From August to December, 16 to 18 typhoons are forecast to form in the Northwest Pacific and South China Sea.

As for the weather in the U.S., the ports of New Orleans, Baton Rouge, Gramercy, and Morgan City in Louisiana and the Port of Pascagoula in Mississippi remain closed following the recent arrival of Hurricane Ida.

Capacity issues at the ports, however, are largely due to problems with the next link in the chain: a shortage of truck drivers.

Truck driver shortage is not going away

Trucking is the primary source of container transport once the cargo is unloaded at a port. A shortage of drivers across the country means much of the container volume sits idle at capacity-constrained facilities. Frustration with employment prospects, safety concerns, expanded unemployment benefits and having kids at home have contributed to drivers leaving the industry.

According to driver recruiting firms, there is one qualified driver for every 9 job postings. The trucking industry is very fragmented, with the bulk of drivers working at small firms. 89% of trucking companies have one to five trucks. With the average price for a Class 8 truck at $59,377 in July compared with $40,666 a year earlier, margins are heading lower, making it even less attractive for independent contractors to enter the industry.

The importance of trucking to large multi-national corporations is reflected in their desire to expand their internal fleets to keep a competitive advantage in dealing with the shortage. Walmart has the nation’s third-largest fleet of around 6,500 trucks and is aggressively trying to hire drivers, offering a $12,000 signing bonus in some areas.

Many of the 500 drivers it plans to hire will be plucked from the for-hire ranks, and Walmart plans to offer them an average salary of $87,500, double the median salary for the industry. More drivers dedicated to Walmart may help Walmart’s logistics, but it will add to the congestion for hundreds of smaller retailers that rely on the “for hire” market.

Wages are rising in the industry, but it will take time to lure back people into the industry who have moved on to jobs with a better lifestyle. Of all the bottlenecks in the supply chain, the truck driver shortage appears to be the most acute. The hauling industry is also one of the most critical links in the chain when it comes to alleviating the congestion at ports, warehouses and rail terminals.

Railroads are stuck in the middle

The next link in the chain is railroads. Trucks bring containers to various hubs where the containers are loaded on trains and taken inland. When the system works properly, containers are lifted from arriving trains and placed directly onto a wheeled chassis, which is then hauled away by a local driver. The chassis is supposed to be quickly unloaded by the final customer and returned by truck to the rail yard.

A notable bottleneck is in Chicago, where seven of the major North American freight railroads converge, creating a complicated web of inbound and outbound operations between trains and trucks.

But the major railroads have their own issues to contend with, including a labor shortage of their own.

Railroads retrenched quickly when the economy seized up last year, furloughing thousands of workers and taking hundreds of locomotives offline. Workers who were furloughed have been slow to come back and some rail companies are reporting difficulty in hiring conductors.

Yet, one of the major hurdles in dealing with supply and demand swings was created years ago. It had nothing to do with COVID.  It is known as “precision scheduling.”

In 2017, Jacksonville-based SX was the first U.S. railroad operator to implement the operating philosophy. The strategy calls for running fewer trains longer distances and keeping them on a tighter schedule, allowing the railroad to scrap locomotives, employ fewer workers and shut facilities. Think of the strategy as equivalent to just-in-time manufacturing. Even a small hiccup in the system can create major problems, and the volatility in supply and demand over the last two years were no small challenge.

Let’s not forget another source of uncertainty: weather.

Almost all the major railroads, including Union Pacific , CS X and BNSF Railway, have lines that run to New Orleans. Hurricane Ida forced the Kansas City Southern rail network to shut its main line in Louisiana. The service disruption could spread across the US rail network as freight cars are rerouted. It typically takes weeks and even months for railroads to fully recover from an extended shutdown of main lines.

Switching to air cargo is not a solution

With all the congestion on the ground, one might think relief could be found by switching to air cargo rather than container ships and trains. The problem with switching is cost. Airfreight is roughly eight times the cost of sea shipment. Most airfreight is carried in the cargo holds of passenger jets and with international air travel severely constrained, so are available cargo slots. Fewer slots translate to higher prices. For example, air freight prices out of China’s largest cargo airport have risen by up to 30% following an outbreak of coronavirus cases. Air cargo is not an economical nor practical solution.

Warehouse capacity is contributing to the bottleneck

Warehouse capacity is an often overlooked component in the supply chain. Many containers are unloaded at distribution centers, and if there is no available space, it adds to the container circulation problem. Growing e-commerce demand, especially post-COVID, created a shortage of warehouse space, leading to higher warehouse rental rates, which, in turn, is beginning to pass through into consumer prices.

In the July Logistics Manager’s Index Report, the Warehousing Prices Index component, which tracks warehouse pricing, registered the highest mark in the history of the index. The reading represents a 2.6% increase from the prior month and a staggering 20.5% rise from the reading one year ago.

Another sign of strong warehouse demand industry fundamentals is the performance of dedicated warehouse REITS. The Bloomberg Industrial/Warehouse Index is up 45% from the beginning of 2020.

Consequences of continued disruption

For obvious reasons, fixing the supply chain bottleneck is important for many reasons.

Higher costs of containers, shipping, hauling, and storage lead to higher consumer prices and overall inflation. The Fed is banking on the transitory nature of the bottleneck, expecting prices to level off once the supply chain is cleared.

If the disruption gets worse or drags on for longer than expected, policymakers will likely get impatient with the current ultra-loose monetary policy that is helping fuel demand for goods that is causing the bottleneck and begin to rate interest rates.

Additional delays in the delivery of key inputs could also lead to a decline in manufacturing. This is already happening in several industries, particularly the auto industry, where a semiconductor shortage is forcing a slowdown in production. Toyota Motor, the world’s largest automaker, plans worldwide production cuts of 40% in September because of the shortage in computer chips. Ford plans to idle a plant near Kansas City, Mo. that makes its highly profitable F-150 pickup truck. G.M. stopped most of its truck production in North America last month because of the shortage. These curtailments will feed into lower real GDP figures over the next few quarters, hampering the economic recovery.

Near term relief for the global supply chain disruption is not around the corner. As long as demand holds up through the holiday shopping season, COVID outbreaks continue to shut shipping hubs around the world, and extreme weather batters individual links in the chain, expect the disruption to persist.

Follow me on Twitter or LinkedIn. Check out my website. 

Источник: https://www.forbes.com/sites/garthfriesen/2021/09/03/no-end-in-sight-for-the-covid-led-global-supply-chain-disruption/

Unity 2020.2.0

  • 2D: Added a tootlip for the Tile Palette Gizmos button. (1254646)

  • 2D: Added the Always Update property to the Sprite Skin component so that when enabled, the Sprite Skin will always deforms even when its associated Sprite Renderer is culled.

  • 2D: Ensured that the "Unapplied import settings" prompt appears you select Apply when there are changes in both the Sprite Editor and Texture Importer windows. (1244077)

  • 2D: Fixed a crash caused by using a Sprite Atlas with Secondary Textures assigned to it. (1288572)

  • 2D: Fixed a crash when undoing and redoing after a Tile Palette is saved. (1280263)

  • 2D: Fixed an issue causing Editor crashes when packing Sprites. (1259149)

  • 2D: Fixed an issue preventing you from creating Sprite Shape Profiles along with being thrown in the Project window. (1280016)

  • 2D: Fixed an issue so that a is no longer thrown when you perform the Redo operation after creating the Range property in the Sprite Shape profiler preset. (1274776)

  • 2D: Fixed an issue so that dragging a Sprite Shape Profile to the Hierarchy window while in Prefab Mode now no longer creates a GameObject in the in the main Scene. (1265846)

  • 2D: Fixed an issue so that Sprites with no animation data are not processed during .

  • 2D: Fixed an issue so that the Shift+Erase keyboard shortcut now returns to the Paint Tool when painting with the Tool in the Tile Palette.

  • 2D: Fixed an issue so that the Sprite Editor window now shows the Sprite when the Inspector is locked and the Sprite is selected in the Project window.

  • 2D: Fixed an issue that a assertion failed exception is no longer thrown when undoing after clicking the Create Range button. (1273705)

  • 2D: Fixed an issue where a Sprite Shape's bounding box did not take into account certain vertices. (1274400)

  • 2D: Fixed an issue where the preview of a deleted Secondary Texture entry remained visible in the Sprite Editor. (1211176)

  • 2D: Fixed an issue where the vertical scroll bar of the Secondary Textures module in the Sprite Editor did not react to the mouse wheel. (1204429)

  • 2D: Fixed an issue where did not return the correct UV data if the Sprite was not rendered yet. (1266065)

  • 2D: Fixed inconsistent positions in the 2D menu. (1268024)

  • 2D: Fixed Sprite Skin deformation not being updated when the Sprite Skin component is enabled for a GameObject.

  • 2D: Fixed the auto-sizing of the Tile Palette when the Tile Palette's Cell Swizzle is set to YXZ.

  • 2D: Fixed the broken documentation links in the Inspectors windows of components from the 2D Animation package.

  • 2D: Fixed the broken documentation links in the PSD Importer Inspector view.

  • 2D: Fixed the broken documentation URL of the Pixel Perfect component.

  • 2D: Fixed the exception error caused by reverting newly created vertices and edges in the Skinning editor module.

  • 2D: Fixed the generation of Collider shapes with Tilemap Collider 2D, when a Tile is animated with Animated Tiles.

  • 2D: Fixed the issue causing the Sprite Asset used by the Sprite Skin component to be deleted in the Scene.

  • 2D: Fixed the issue causing the error message when the Pack Preview button was repeatedly pressed. (1270150)

  • 2D: Fixed the issue where '_NormalMap' Secondary Textures were not streched to the *Max Texture Size* when the Atlas Texture's size is larger than the _NormalMap Texture. (1167829)

  • 2D: Fixed the issue where the PSD Importer created empty GameObjects in certain cases.

  • 2D: Fixed the issue where kept returning positions of size 0 for any axis. (1227811)

  • 2D: Fixed the memory leak from the Sprite Shape Controller when no control points are used.

  • 2D: Fixed the Sprite Editor not showing the Sprite when the Inspector is locked and the Sprite is not selected in the Project window. (1215581)

  • 2D: Fixed the Sprite Packer preview image of a loaded AssetBundle so that it properly displays after the Editor is refocused. (1243177)

  • 2D: Fixed the visual defect that occurs after undoing changes to the Bone Transform properties in the Sprite Skin components' Inspector window.

  • 2D: Fixed to work with and .

  • 2D: Modified Colliders to respect the Pivot property of Edge Sprites in Sprite Shape.

  • 2D: Modified Path tool returns usage.

  • 2D: Modified Sprite Shapes so that they are not generated when not in view during runtime.

  • 2D: Modified the Depth column label so that is is no longer clipped in the Visibility Tool window. (1257991)

  • 2D: Modified the Grid Brush property to retain cells set when moving Tiles with the Move tool. (1244347)

  • 2D: Modified the properties under the Sprite Library Asset that they no longer over lap in the Inspector window. (1280017)

  • 2D: Modified the Sprite Editor window so that the Visibility window no longer overlaps with the Weights and Geometry window when the Sprite Editor window is resized. (1263353)

  • 2D: Modified the Tilemap Painting editor so that when painting or erasing Tiles from the Tile Palette, the active editor tool is automatically set to the Paint tool if the Shift key is released before the mouse button is released. (1231123)

  • 2D: Modified the vertical slider handle so it is now properly aligned in the Bone Influence window. (1260568)

  • 2D: Modified Tile Palette so that when dragging in Sprites and Tiles to the Tile Palette, the layout of Tiles are kept equal in width and height where possible

  • 2D: Modified Tilemap Renderer so that individual Sprites are culled when the Renderer is set to Individual mode, instead of using chunk culling.

  • 2D: Updated the documentation for / when setting a minimum position that is greater than the maximum position or vice versa.

  • AI: Added OffMeshLink component Reset functionality. (1155287)

  • AI: Baking ignores FBX files with Mesh Compression set to Low or Medium when baking NavMesh. (1152594)

  • AI: Fixed a crash when specified node pool size for a new NavMeshQuery is too small. (1104755)

  • AI: Fixed a missing override indicators in NavMesh editors for the size of NavMeshObstacle and Area Mask for NavMeshAgent. (1269446)

  • AI: Fixed an editor crash when building a NavMesh with excessively distant sources. (1231244)

  • AI: Fixed an issue where NavMesh agent 'Area Mask' dropdown displayws when all values are selected. (1117300)

  • AI: Fixed an issue where pathfinding returned the end point on the wrong "floor" of the NavMesh. (1124570)

  • AI: Fixed NavMesh link cost modifiers improper behavior. (1281314)

  • Android: Automatically enable 'Custom ... Manifest' and 'Custom ... Template' checkboxes in Player Settings if appropriate files are added to Plugins/Android directory. (1227315)

  • Android: Avoid using depthClamp on GPUs that don't support it when using Vulkan.

  • Android: Disabled Optimized Frame Pacing on Android 4.4-5.1 to fix crash/freeze. (1268910)

  • Android: Fixed a regression with playing back uncompressed, on-disk asset bundles on Android versions before Pie.

  • Android: Fixed a super-slow playback of video issue in asset bundles on Android. (1287770)

  • Android: Fixed a Vulkan validation error when using Optimized Frame Pacing with Vulkan. (1255060)

  • Android: Fixed an issue when accessing streamable assets time is increased due to incorrect compression settings. (1276114)

  • Android: Fixed an issue when using storage buffer object in both vertex and fragment shader on Adreno. (1251305)

  • Android: Fixed an issue where Android cutout's y coordinate in windowed mode. (1248638)

  • Android: Fixed an issue where Multithreaded Rendering setting would use the incorrect platform settings.

  • Android: Fixed an issue with android's window pixel format when rendering over native UI. (1244553)

  • Android: Fixed artifacts on older Adreno devices when using compute skinning with blend shaped with OpenGL ES. (1260887)

  • Android: Fixed Autoconnect Profiler option when device is connected with USB only. (1244618)

  • Android: Fixed BuildOptions.ConnectToHost option, when Android is only connected to PC via USB and Wifi is disabled. Previously BuildOptions.ConnectToHost would only work through Wifi connection, now the app should automatically connect to Editor. (1233567)

  • Android: Fixed depth when rendering to backbuffer with BlitType Auto/Never.

  • Android: Fixed performance regression on Mali GPUs when using CBUFFERs. (1157313)

  • Android: Fixed RenderPass API implementation when using OpenGL ES. (1219327)

  • Android: With sporadic freeze when using Vulkan on Mali devices.

  • Animation: Added documentation for AnimatorControllerPlayable methods. (1195131)

  • Animation: Ensured that deactivating GameObjects does not deallocate memory used by TransformStreamHandle. (1167280)

  • Animation: Fixed a crash casued by being called at every frame. (1218218)

  • Animation: Fixed a crash that occurred when AnimationPlayables were destroyed. (1231355)

  • Animation: Fixed a crash that would happen when calling the GetBoneTransform on a humanoid with no left finger. (1228811)

  • Animation: Fixed a crash where the animation clip custom target was null as it was still in a transform binding mode. (1228823)

  • Animation: Fixed an issue in the Animation window where the Esc key did not cancel renaming. (1157048)

  • Animation: Fixed an issue in the Stats window that dispalyed an incorrect number of playing animations. (1201251)

  • Animation: Fixed an issue where blending playables that animated different set of properties would not correctly blend with the scene values. (1252312)

  • Animation: Fixed an issue where changes to an entry transition would not rebuild the state machine. (1282801)

  • Animation: Fixed an issue where creating Motions for a BlendTree node would overlap and hide surrounding BlendTree nodes. (1193229)

  • Animation: Fixed an issue where Light.innerSpotAngle could not be animated. (1270159)

  • Animation: Fixed an issue where OnStateEnter was not being called when StateMachineBehaviour stop Timelines. (1257833)

  • Animation: Fixed an issue where OnStateUpdate was not called when attaching a new AnimatorControllerPlayable. (1168332)

  • Animation: Fixed an issue where the editor crashes when opening Animator transition settings with specific hierarchy. (1242608)

  • Animation: Fixed an issue where the Layers and Parameters view in the Animator component where unhidden when entering Play Mode. (1219412)

  • Animation: Fixed an issue where threshold values with commas would not save in blend tress. (817322)

  • Animation: Fixed an issue with animations in built projects that occurred when the Disable Unity Audio setting was enabled in the Project Settings. (1187693)

  • Animation: Fixed an issue with the Animator window layout not persisting. (1197028)

  • Animation: Fixed root transform offsets introduced on nested humanoid characters running Animation C# Jobs. (1259490)

  • Asset Import: Fixed an issue in ModelImporter when the Preserve Hierarchy was ignored in some cases after applying a Preset to it. (1243047)

  • Asset Import: Fixed an issue that was throwing errors in the console when Rig settings of multiple models were all changed at once. (1264463)

  • Asset Import: Fixed an issue when using ClearImporterOverride on Model assets (fbx files and other formats using the ModelImporter) that caused a memory leak and console errors. (1218841)

  • Asset Import: Fixed an issue where RE2 generated warnings on old versions of macOS. (1259551)

  • Asset Import: Fixed an issue with the model rotated 90 degrees when upgrading project from version 2020.2.0a20 and below to 2020.2.0a21 and above. (1276677)

  • Asset Import: Fixed AssetImportWorker taking autoconnect player connections.

  • Asset Import: Importers does not lose selection anymore when the imported asset changes its type. (1182598)

  • Asset Import: LoadImage now returns PNGs in the authored colorspace when gAMA block is authored, instead of gamma 2.0. A new static flag has been added to the ImageConversion class to disable this behavior. See Texture2D.LoadImage for additional details. (1199896)

  • Asset Import: Solved an issue so that AssetDatabaseExperimental.GetAvailableImporterTypes returns all expected registered importers for a given asset path. (1218830)

  • Asset Pipeline: ArtifactID is now unique for an import result. (1193231)

  • Asset Pipeline: Changed behavior in Refresh

    • Empty folders that don't have .meta files get deleted if the folders were known before.
    • If an orphaned .meta file is marked as folderAsset the folder is recreated.
      These changes address issues related to creating/deleting folders in certain (p4, git) version controlled projects where empty folders don't get created/deleted when the user gets latest version on the client.
  • Asset Pipeline: Changing the platform is not propagated to the asset import worker process.

  • Asset Pipeline: Disabled editors for removed assets. (1158081)

  • Asset Pipeline: Fixed a crash in GetHashOfImportedAssetDependencyHints when scripted importer returns null inside GatherDependenciesFromSourceFile during unity startup. (1234968)

  • Asset Pipeline: Fixed a crash when a preview image was destroyed indirectly. (1163297)

  • Asset Pipeline: Fixed a Project Startup slow time issue due to an unmatched Custom Dependencies. (1276078)

  • Asset Pipeline: Fixed a scalability issue of increasing number of revisions of long dependency chains (e.g. iterating on nested prefabs). (1250294)

  • Asset Pipeline: Fixed a small performance regression when batch copying assets via scripts. (1238732)

  • Asset Pipeline: Fixed an issue where ''GetCurrentCacheServerIp' was returning an empty string instead of actual value.

  • Asset Pipeline: Fixed an issue where an imported asset dependency on a source asset could lead to a wrong import.

  • Asset Pipeline: Fixed an issue where an unused artifact dependency would lead to infinite import.

  • Asset Pipeline: Fixed an issue where Artifacts for deleted asset didn't get deleted in artifact garbage collection.

  • Asset Pipeline: Fixed an issue where custom dependencies changes are rejected in initial domain load.

  • Asset Pipeline: Fixed an issue where Forced import of an new asset which already have a meta file (and thereby a GUID) don't get force reimported.

  • Asset Pipeline: Fixed an issue where the current directory was changed in beginning of refresh. (1278242)

  • Asset Pipeline: Fixed Binary to YAML UInt16 conversion error when importing a specific binary serialized package into a project with Force Text serialization enabled. (1225913)

  • Asset Pipeline: Fixed bug where renaming a script doesn't properly take effect on asset import workers. (1258644)

  • Asset Pipeline: Fixed for bug where the main object would change after renaming a native asset. (1189089)

  • Asset Pipeline: Fixed for instability where .meta files are not parsed right. (1214122)

  • Asset Pipeline: Fixed issue where postprocessors with version 0 wouldn't be used.

  • Asset Pipeline: Having information that says "version 2" is selected, can be confusing, since users could assume that the "version 1" of the asset import pipeline could be selected. This has been removed completely as 2020.1 can on the Asset Import Pipeline that was re-written for 2019.3.

  • Asset Pipeline: If the license is not valid asset import worker processes will fail and block the main editor. (1224855)

  • Audio: Changing audio mixer attenuation to or from 0 dB resulted in popping / spiking sounds. (1101442)

  • Audio: Chorus and Flange filters didn't apply initial parameters correctly under certain situations when used in the audio mixer or as audio filter components. (579690)

  • Audio: Fixed "Assertion failed on expression" message in console when disabling the audio system from the project settings while an audio clip preview is playing. Also, the preview playback will now stop in this scenario. (1232267)

  • Bug Reporter: Added a name of the file causing the error to the project packer error message. (1223660)

  • Build Pipeline: Added scroll viewer to build settings. (1211918)

  • Build Pipeline: Added support for baked collision mesh writing in the Scriptable Build Pipeline.

  • Build Pipeline: Fixed a build corrupted issue when a field coming from an assembly override was serialized in assets/scenes. (1265330)

  • Build Pipeline: Fixed an edge case issue where generated sprite texture case were being mangled and caused build errors on case sensitive file systems.

  • Build Pipeline: Fixed an issue where StreamingAssets AssetBundle manifest were not provided by default to PlayerBuild, which resulted in types being referred by AssetBundle being kept in the build even if Player.Optimization.Managed Stripping Level was set to Medium or High.

  • Build Pipeline: Fixed bug in the Managed SpookyHash algorithm that was causing some bytes at the end of the buffer to not be incorporated into the hash for specific buffer sizes.

  • Build Pipeline: Reduced amount of garbage collection performed inside the ContentBuildInterface.

  • Burst: Fixed a compatibility issues between burst and older linux distros.

  • Burst: Fixed a potential error when running the linker with a failure on lld command.

  • Burst: Fixed a regression that could break usage of native plugins.

  • Burst: Fixed an issue preventing player builds to succeed when burst compilation is disabled.

  • Burst: Fixed an issue that prevented burst from resolving functions on platforms when it's statically linked such as iOS.

  • Burst: Fixed an issue where if a path to the package contained spaces, then native command execution would fail. This manifiested as weird errors with 'lld' or 'vswhere' or other native tools.

  • Burst: Fixed Debug.Log by re-enabling it when used in function pointers or jobs.

  • Burst: Fixed errors when opening Inspector with a non-public Execute method on a job producer type.

  • CodeEditor: Added support for solution folders.
    Only bind the messenger when the VS editor is selected.
    Warn when unable to create the messenger.
    Fixed an initialization issue triggering legacy code generation.
    Allow package source in assembly to be generated when referenced from asmref.

  • CodeEditor: Fixed and issue where teh assembly references to package assemblies break IDE projects.

  • CodeEditor: RIDER - "The specified path is not of a legal form (empty)".

  • CodeEditor: RIDER - Guarantee that sln and csproj files are present, when OpenProject is called.

  • Core: Fixed crash when IME Strings got too long. (1226610)

  • DX12: Fixed a performance issue when invoking dynamic vertex buffer updates. (1204804)

  • DX12: Fixed an issue with MSAA which resolved on 2D texture arrays.

  • DX12: FrameTimingManager now works on DX12 Windows Standalone and UWP. (1212335)

  • Editor: "Generate all .csproj files" setting needs to be toggled on every startup for all the csproj files to actually be generated.

  • Editor: (case 1215825) UnityEngine.Diagnostics.ForceCrash does not produce crash dump when editor exits due to fatal error log message. (1215825)

  • Editor: Active Tool window now saves properly in the layout. (1224432)

  • Editor: Allow pasting float numbers with a trailing f into number fields.

  • Editor: Automatic "unity is busy" progress dialogs on Windows no longer steal focus or pop up while the editor is not the active application.

  • Editor: Changed CTRL+click in Hierarchy so it changes the active object to reflect the Scene View behavior. (1154444)

  • Editor: Com.unity.test-framework does not print any messages when loaded into a project. (1214217)

  • Editor: Create Empty Parent' added to the hierarchy window context menu.

  • Editor: Cut' and 'Paste As a Child' functionality added to Scene View. (1215583)

  • Editor: Do not generate invalid project files when 'Open by file extension' is chosen. (1246567)

  • Editor: Don't display blank GameObject preview for Camera Prefab Assets. Instead, treat it the same as other Prefabs that don't have renderer components. (1182438)

  • Editor: Ensur EditorSettings works as preset. (1223623)

  • Editor: Fixed "Handles.Repaint called outside an editor OnGUI" error when folding out an Avatar Mask's Node Name property. (1244003)

  • Editor: Fixed 3D texture preview drag rotation.

  • Editor: Fixed a bug where UTR fails with "No tests have been selected to run message" when in fact we attempt to run playmode tests in standalone player and connection times out.

  • Editor: Fixed a canceling rect selection that was breaking the inspector. (1253694)

  • Editor: Fixed a class of GTK warnings showing up in the editor log when running the Linux editor. (1268468)

  • Editor: Fixed a crash that could occur when Burst compilation was scheduled before Burst had been initialized.

  • Editor: Fixed a crash when several editors were opened at the same time.

  • Editor: Fixed a crashed when a Transform was accessed during OnValidate. (1114911)

  • Editor: Fixed a float point imprecision with the rect tool. (1246267)

  • Editor: Fixed a performance regression caused by Preferences 'Developer Mode' writing and reading preferences each frame. (1261270)

  • Editor: Fixed a race condition during input shutdown when unloading an input library on Windows. (1250096)

  • Editor: Fixed a ShortcutWindow profile dropdown that was missing the dropdown arrow. (1232757)

  • Editor: Fixed a Unity crash in BroadcastMessageAny when parenting RectTransform in OnCanvasHierarchyChanged. (1255755)

  • Editor: Fixed an alignment issue with the sorting group component in the inspector. (1264073)

  • Editor: Fixed an Editor crash with TLSAllocator::GetAllocatedMemorySize() const when connecting wire-free earbuds in the Play mode. (1261961)

  • Editor: Fixed an error in player settings caused by switching platforms. (1284565)

  • Editor: Fixed an error that occurred when creating a new swatch preset library with a name containing "/". (1254004)

  • Editor: Fixed an incompatibility issues with scripting based PlayerSettings and Presets. (1232077)

  • Editor: Fixed an incompatibility issues with scripting based PlayerSettings and Presets. (1232092)

  • Editor: Fixed an incompatibility issues with scripting based PlayerSettings and Presets. (1232095)

  • Editor: Fixed an incompatibility issues with scripting based PlayerSettings and Presets. (1232100)

  • Editor: Fixed an incompatibility issues with scripting based PlayerSettings and Presets. (1232104)

  • Editor: Fixed an incompatibility issues with scripting based PlayerSettings and Presets. (1232112)

  • Editor: Fixed an incompatibility issues with scripting based PlayerSettings and Presets. (1232117)

  • Editor: Fixed an incompatibility issues with scripting based PlayerSettings and Presets. (1232141)

  • Editor: Fixed an incorrect drag indicator issue when dragging sprites to the hierarchy. (1178106)

  • Editor: Fixed an issue by adding null check. (1211302)

  • Editor: Fixed an issue by Calling UpdateCachedData to get updated info before updating the m_traker. (1202591)

  • Editor: Fixed an issue by setting the font size property value to zero in reset function. (1239786)

  • Editor: Fixed an issue in the Linux editor where mouse input in one window could create undesired visual changes in other windows upon repaint. (1131492)

  • Editor: Fixed an issue on Linux where the prefab overrides popup could overflow the available vertical screen space. (1119679)

  • Editor: Fixed an issue to enable scroll down automatically when first frame of logs does not fit in console window. (1241533)

  • Editor: Fixed an issue wehre tvOS player settings would not work with presets. (1254898)

  • Editor: Fixed an issue when importing an Asset from a .unitypackage that has the same GUID as an existing Asset in the project wasn't displaying a warning. (1250673)

  • Editor: Fixed an issue where a prefab selection in the Scene View was not respecting user set picking flags. (1234665)

  • Editor: Fixed an issue where AllowSceneActivation was not respected during enter playmode. (1153187)

  • Editor: Fixed an issue where Alt+numpad Unicode character input would not works in the Windows editor. (1174605)

  • Editor: Fixed an issue where an exception was thrown when trying to show the contextual menu for an unloaded scene in the hierarchy window. (1233432)

  • Editor: Fixed an issue where assembly reloading happened more than once when switching to the Unity Editor from another app or between Unity Editor windows. (1272211)

  • Editor: Fixed an issue where certain dropdowns are misaligned in the player settings preset editor. (1218668)

  • Editor: Fixed an issue where clicking the right edge of textures icon in material inspector would open a asset selection window. (1248553)

  • Editor: Fixed an issue where ColorField had no border when showEyeDropper was set to false. (1244882)

  • Editor: Fixed an issue where dragging from a closed window in the mac Editor would crash. (1257002)

  • Editor: Fixed an issue where DrawGizmo attribute was not supporting interfaces. (1271985)

  • Editor: Fixed an issue where extra symbols were added to the field, when double clicking on non-equal values and trying to type over them. (1256909)

  • Editor: Fixed an issue where Handles.Button prevented Scene View navigation. (1250996)

  • Editor: Fixed an issue where hidden components were not visible in the Inspector, even after the attached script was deleted. (1250355)

  • Editor: Fixed an issue where hierarchy search field was not always resetting when exiting prefab edit mode. (1265782)

  • Editor: Fixed an issue where iOS player settings were not working with presets. (1232103)

  • Editor: Fixed an issue where Material Validation color swatches did not render after domain reload. (1250913)

  • Editor: Fixed an issue where meta file info was not preserved when drag-copying assets in the Project Window. (1220825)

  • Editor: Fixed an issue where multiple EventSystem instances could be created from a prefab in one scene. (1210254)

  • Editor: Fixed an issue where no warning was occurring when duplicating an Asset from the Packages folder. (1265856)

  • Editor: Fixed an issue where plugin resolution would fail if a plugin had two chained library extensions. (1217894)

  • Editor: Fixed an issue where ProBuilder window stole focus on MacOS. Also ensures Application.isFocused only returns true in the Editor when GameView is focused (as is the documented behavior). (1254752)

  • Editor: Fixed an issue where right-clicking assets in the Hierarchy and Project window did not correctly highlight them. (1222945)

  • Editor: Fixed an issue where Scene View picking always returning the selection base when a prefab is the first selected object with a non-prefab GameObject behind. (1166101)

  • Editor: Fixed an issue where SearchField style of custom editors does not match with other Search Fields in the editor. (1243420)

  • Editor: Fixed an issue where selected text is not replaced in Input Field. (1253193)

  • Editor: Fixed an issue where Settings Window was not refreshing after selecting a Preset. (1268130)

  • Editor: Fixed an issue where snapping didn't work only lines were showing.

  • Editor: Fixed an issue where switching between tabs in the Preferences window resized the Cinemachine tab's UI. (1258316)

  • Editor: Fixed an issue where the -api-profile flag caused the editor to write to ProjectSettings/ProjectSettings.asset using binary serialization mode despite ForceText was configured in ProjectSettings/EditorSettings.asset.

  • Editor: Fixed an issue where the Build Settings window was not dockable. (1259782)

  • Editor: Fixed an issue where the context menu was not functioning as intended with Assembly Definition and Reference files. (1217217)

  • Editor: Fixed an issue where the Editor crashed when maximizing and minimizing the docked IMGUI debugger window. (1257185)

  • Editor: Fixed an issue where the first item was executed when pressing enter, even if nothing was selected. (1258382)

  • Editor: Fixed an issue where the Gizmos FoldOut does not expand until the mouse cursor is moved. (1228330)

  • Editor: Fixed an issue where the input handler was set incorrectly when upgrading projects. (1287791)

  • Editor: Fixed an issue where the keyboardLayout was not returning correct value on linux. (1167021)

  • Editor: Fixed an issue where the Line Renderer Simplify toggle would not refresh the scene view. (1258815)

  • Editor: Fixed an issue where the Renderer component editor did not list the reflection probes when they were disabled in the SupportedRenderingFeatures. (1254082)

  • Editor: Fixed an issue where the Save Asset window does not close automatically after saving all assets. (1222647)

  • Editor: Fixed an issue where the Scene View's Select All would not taking into account scene picking/visibility state. (1250345)

  • Editor: Fixed an issue where the Unity Download Assistant on Windows did not correctly displays progress as a positive percentage. (1294162)

  • Editor: Fixed an issue where the Unity Download Assistant on Windows did not correctly prompts for the download and install path. (1294753)

  • Editor: Fixed an issue where there were duplicate results from AssetDatabase.FindAssets. (1242371)

  • Editor: Fixed an issue where tool tips in camera inspector were missing. (1263085)

  • Editor: Fixed an issue where when "Add Component" button jumps in the inspector when resizing if has custom expandable UI Group elements. (1230277)

  • Editor: Fixed an issue where width of the border of the Alpha Value is not enclosed within boundary in the color picker. (1237286)

  • Editor: Fixed an issue where windows overlapped over other windows on resizing. (1255867)

  • Editor: Fixed an issue where you could not drag and drop from outside the project folder. (1270452)

  • Editor: Fixed an issue with "Select Shader" option in inspector shader context menu. (1231531)

  • Editor: Fixed an issue with Cancelling Display Dialog error when switching active input handling setting. (1283400)

  • Editor: Fixed an issue with Linux using FitRectToScreen instead of FitWindowRectToScreen. (1263999)

  • Editor: Fixed an issue with object sorting in the Profiler window. (1240861)

  • Editor: Fixed an issue with Properties in the Canvas Scaler component not matching the properties in its Preset. (1252603)

  • Editor: Fixed an issue with restoring of Rect Transform on UNDO after a render mode change. (1246899)

  • Editor: Fixed an issues related to labels that disappeared and Overlaping of labels in Layer Collision Matrix. (1259361)

  • Editor: Fixed an issuey where the Editor toggle boxes' height did not adjusted to align with their label. (1260494, 1267326)

  • Editor: Fixed an object sixing issue when the Center scale handle was not given an initial scale that was [1,1,1]. (1264038)

  • Editor: Fixed an overflow issue where keycode mappings were not using the std maps. (1270330)

  • Editor: Fixed Android Target DPI player setting to work with presets. (1254906)

  • Editor: Fixed assembly hot reload inside the editor. (1251134)

  • Editor: Fixed camera speed slider not getting to min-max when setting min/max values with more than 2 decimals. (1190430)

  • Editor: Fixed cancel of multiple objects rename that would set their names to "<multi>" instead of keeping their original names. (1218183)

  • Editor: Fixed disappearing "Edit..." button next to Shader dropdown list on Material UI.

  • Editor: Fixed dragging on Empty Favorites. (1224386)

  • Editor: Fixed error in import by adding support for the conversion of SkinWeights using UNorm16 and SNorm16 format. (1218889)

  • Editor: Fixed flickering when multiple windows were shown on macOS Editor. (1221722)

  • Editor: Fixed foldout alignment in Physics2D Settings window. (1228331)

  • Editor: Fixed Frame Debugger to show Compute Shader dispatch information properly.

  • Editor: Fixed Highlighter APIs. (1223530)

  • Editor: Fixed incorrect GUI style for Influence Mask field in the ParticleSystem External Forces Module.

  • Editor: Fixed issue where an incorrect mesh index count was being displayed in the Mesh Inspector. (1268635)

  • Editor: Fixed issue where the free move's surface snap (shift+control) didn't use the new HandleUtility.PlaceObject extendable API.

  • Editor: Fixed issue with event data not being reset on subsequent clicks after the first one. (1219722)

  • Editor: Fixed issues caused when components required by other components do not exist. (876288, 887641, 888143, 1086961)

  • Editor: Fixed issues with AspectRatioFitter component. (1199877)

  • Editor: Fixed main editor window is no longer maximized when resetting the layout. (1179646)

  • Editor: Fixed New InputSystem not handling absolute mouse positions including those sent over RDP.

  • Editor: Fixed player settings visual glitch issue where "Metal API Validation" checkbox had an extra indentation level.

  • Editor: Fixed Preset incompatibilities in Player Settings (Default/Standalone). (1232067)

  • Editor: Fixed property dropdown of "Surface Effector 2D" doesn't expand until the mouse cursor is moved in Properties Window. (1243958)

  • Editor: Fixed property window cascading even though no property windows are opened. (1251625)

  • Editor: Fixed rare unstable asset hash.

  • Editor: Fixed rebuilding gizmo renderers caused an performance regressions. (1238713)

  • Editor: Fixed Scene View not accepting input after Maximizing and Un-maximizing while holding the right mouse button. (1186624)

  • Editor: Fixed script execution order values being cropped when using certain UI scaling values (mostly 125%). (1182109)

  • Editor: Fixed skybox persisting in scene after drag cancellation.

  • Editor: Fixed test ShortcutEntryConstructor_MethodWithShortcutArgs_FromAttribute in debug mode. (1233242)

  • Editor: Fixed Texture 2D Array support to the Render Texture Editor. (1238898)

  • Editor: Fixed the Click Offset area for a GUI Button. (1240174)

  • Editor: Fixed the crash when "Right click" is used to close an undocked preview window on Windows. (1231889)

  • Editor: Fixed the FillOrigin Enumpopup issue. (1254876)

  • Editor: Fixed the issue where the Grid opacity Input field is highlighted on changing the Grid Axis from the scene view grid settings window. (1221530)

  • Editor: Fixed the Object Selector window preventing object selection in the Scene View when searching for certain types. (1241020)

  • Editor: Fixed the warning thrown by the Clang compiler at Line 134 of "RuleSetFiles.cpp" "warning- returning reference to local temporary object
    return core::string("");".

  • Editor: Fixed toggling Scene View from 2D to 3D locking the camera motion to the last direction of movement. (1232270)

  • Editor: Fixed Transform manipulator to use Undo.RecordObject so it works with livelink.

  • Editor: Fixed Unity Editor existing fullscreen mode when layout is changed. (1232706)

  • Editor: Fixed unselected Scene Views not respecting the mouse scroll wheel zoom shortcut. (1216819)

  • Editor: Fixed usage of when and are null for an editor mode dynamic layout. (1244524)

  • Editor: Fixed vertex snapping incorrectly snapping to objects hidden by Scene Visibility flags. (1222442)

  • Editor: Fixed errors when GUI items are highlighted by PrefixLabel. (1238526)

  • Editor: Forces normal windows to open in the active space (on top of the editor) when editor is full screened on mac. This prevents a 'hidden' window. (1218891)

  • Editor: Game tab no longer undocks when switching between tabs while cursor is locked. Cursor no longer locks on focus, only on a click in the Game tab. Also fixes an issue where cursor lock would not function properly (e.g. lock without hiding) when moving docked window to a new location in the editor. All fixes are specific to the editor on Windows. (1246445)

  • Editor: GameObjects are not draggable when using the scroll wheel in macOS. (1175328)

  • Editor: Gizmo icons are now displayed on all objects all the time unless object is selected. (1223375)

  • Editor: Hierarchy items are not considered hovered when scrolling the vertical scrollbar. (1229149)

  • Editor: Implemented Getter and Setter for Blocking Mask property, so that it can be accessed through script. (1210118)

  • Editor: In the linux editor, guiviews no longer gain focus on scroll events (scroll still occurs), which has the effect of preventing the editor from stealing focus on scrolls over guiviews that were previously unfocused. (1270605)

  • Editor: Including a trailing semi-colon in a testName filter no longer results in all tests being run. (1171200)

  • Editor: Inspector property copy/paste no longer allows pasting unrelated enum values. (1222717)

  • Editor: Internal.

  • Editor: Light icons in scene view now update immediately after light type is changed in inspector. (1229003)

  • Editor: Makes sure proper selected items are within hierarchy view after "selecte prefab root" and "invert selection", previously items would be properly selected but not in view of the hierarchy. (1228117)

  • Editor: Modified Android Icons PlayerSettings to work with presets. (1232114)

  • Editor: Modified arrays to be reorderable by default, and present non-reorderable arrays using legacy control.

  • Editor: Modified iOS Icons PlayerSettings to work with presets. (1232101)

  • Editor: Modified the LineRenderer editor positions view to always display the column. (1260526)

  • Editor: Modified the settings provider example for how to write UI for a SettingsProvider to save the property editing. (1263452)

  • Editor: Modified the title of the splash screen window to clarify activity name on CentOS. (1232562)

  • Editor: Modified the tooltip text for the Disable button. (1240815)

  • Editor: Modified the Unity menu to display the Windows menu item second from last. (775676)

  • Editor: Modified tvOS Icons PlayerSettings to work with presets. (1232093)

  • Editor: Mouse hover event is fixed in situations when windows are overlapping on macOS. (1222681)

  • Editor: Presets modifications array inconsistent size when excluding some properties. (1229273)

  • Editor: Project does not contain all .csproj files when "Generate All .csproj files" option is selected in preferences.

  • Editor: Re-added Mesh info to the Mesh Inspector Preview.

  • Editor: Removed extra spacing added to some fields in the inspector. (1235884)

  • Editor: Static Analysis found I missed a spot to check if a pointer was NULL. (1229276)

  • Editor: The projection property in the Camera inspector is now properly getting the blue indicator, if changed in a prefab. (1197771)

  • Editor: Transform shift rotate always reset the rotation value when used. (1221620)

  • Editor: Unity remote is no longer deprecated in the editor.

  • Editor: Updated cancel button when using SetValueWithoutNotify. (1246292)

  • Editor: Updated Collab package to 1.3.9. See the package changelog for full details.

  • Editor: Updated the Doc URL server with the official public server. (1255912)

  • Editor: Updated the documentation for CreateEditor API to indicate that it has to be destroyed explicitly. (1250942)

  • Editor: Updated the error message that is displayed when creating a swatch preset library with a filename beginning with a colon. (1254007)

  • Editor: Updated the Profile Analyzer (com.unity.performance.profile-analyzer) to version 1.0.1, with various fixes included. See https://docs.unity3d.com/Packages/com.unity.performance.profile-analyzer@1.0/changelog/CHANGELOG.html. (1253426, 1254017, 1254572, 1254868, 1254869, 1254870, 1256243)

  • Editor: Updated the toolbar search field in the Settings window to be a fixed width. (1257235)

  • Editor: VSync gets disabled after Maximize on Play is disabled and Play Mode is unpaused after pausing. (1230428)

  • Editor: When attempting to create a new file beginning with a dot, auto-convert the character to an underscore, similar to what we do for other invalid characters, instead of displaying an error. (1117029)

  • Editor: When creating a new asset in the project window of the Editor Unity will now no longer add the required file extension if the entered name already ends with it. So for example creating a script called "Foo.cs" in the project will now create the file "Foo.cs" rather than "Foo.cs.cs". The behaviour when the file extension is omitted is unchanged - creating the script "Foo" will create the file "Foo.cs" as normal. (1251423)

  • Editor: When deleting the last subfolder of an expanded folder, the icon stays the expanded folder one.
    In fact the expanded status of the folder is not updated.
    This updates the status correctly. (1233024)

  • GI: Added convergence statistics for additional probes (Lightmapping.SetAdditionalBakedProbes) in the Lighting window.

  • GI: Baking light probes and additional probes (Lightmapping.SetAdditionalBakedProbes) is faster.

  • GI: Ensured Prefab Mesh Renderers are properly affected when a user changes Receive GI, Lightmap Parameter, or Optimize UVs settings. (1179530)

  • GI: Ensured that all tooltips for Light Probe Proxy Volumes are present. (1245432)

  • GI: Ensured that Contribute GI is enabled for Presets where appropriate. (1223708)

  • GI: Ensured that distance values for objects using level of detail (LOD) groups are correct.

  • GI: Ensured that GPU VRAM is released following a Progressive GPU Lightmapper bake. (1204993)

  • GI: Ensured that inspecting a mesh renderer with no vertex buffer or no index buffer does not cause crashes. (1197692)

  • GI: Ensured that LightmapParameters class is not null for new scenes and is accessible via the C# API, along with pushOff. Corrected the docs accordingly. (1215629)

  • GI: Ensured that moving an Object while baking does not break directionality while using the Progressive GPU Lightmapper. (1238156)

  • GI: Ensured that RadeonRays::PlainBvhTranslator::Process does not cause the Editor to crash when using the Progressive GPU Lightmapper for neighboring Terrains. (1198965)

  • GI: Ensured that SceneLights in EnlightenBakeManager and ProgressiveRuntimeManagre do not have any memory leaks.

  • GI: Ensured that selecting a GPU, restarting the Editor, or unplugging the eGPu will not crash the Editor. (1272640)

  • GI: Ensured that selective RGB, R, G, and B view access functions in the Lightmap thumbnail preview. (1199790)

  • GI: Ensured that Static Batching does not corrupt Baked Lightmap scene visualizations on Play. (1059722)

  • GI: Ensured that the Custom Cache Folder Location updates correctly. (1228137)

  • GI: Ensured that the Editor does not hang on close or when baking is canceled. (1235769)

  • GI: Ensured that the Force Stop button functions properly when the user is running a bake with the Progressive Lightmapper and composite lightmaps are in their current state. (1069481)

  • GI: Ensured that the GPU Lightmapper will not fall back to the CPU Lightmapper when the user moves the viewport during baking with progressive updates enabled. (1286418)

  • GI: Ensured that the Inspectors Float Range slider correctly functions in linear colour space on gamma properties. (1245429)

  • GI: Ensured that the labels for the Lightmap thumbnail preview window is are properly aligned. (1113043)

  • GI: Ensured that the miss marker for first bounce ray is correct.

  • GI: Ensured that the Progressive GPU Lightmapper will run on Apple Silicon.

  • GI: Ensured that the Progressive Lightmapper does not crash when using a rendertarget as a cookie texture. (1261117)

  • GI: Ensured that the Sun fields enum is the correct width. (1244279)

  • GI: Ensured that Unity displays an error message when a user selects an unavailable denoiser. (1254973)

  • GI: Ensured that users can select UV colors for a Lightmap Preview. (1252445)

  • GI: Ensured thatTempBuffer<RenderTexture> is not released in memory when users are using deprecated Realtime Global Illumination functionality.

  • GI: Make Experimental.Lightmapping.Bake and BakeAsync docs less confusing by calling out which objects are affecting the bake. (1246519)

  • GI: Reduced the incidence of invalid texels in Progressive Lightmapper bakes. (1217996)

  • GI: Updated labels for Contribute and Receive GI mode in the Scene view. (1261852)

  • GI: When the Progressive GPU Lightmapper falls back to CPU Unity only creates OpenCL contexts. (1208704)

  • Graphics: - Fixed performance slowdown when releasing large amounts of buffers at once in Vulkan. Affects SRP batcher the most. (1102159)

  • Graphics: Added a warning message when intermediate renderers reset non-finite bounds to zero. (1225021)

  • Graphics: Added additional return code validation to various QueryInterface calls. (1229903)

  • Graphics: Added parameter to SkinnedMeshRenderer.BakeMesh(Mesh mesh, bool useScale) to take scaling into account when baking a mesh. By default this value is set to false to keep backwards compatibility. (1013310)

  • Graphics: Added prompt when switching colors space in editor.
    Setting color space to uninitialized via script is no longer valid.
    Updated RenderTextureDesc documentation. (1274452, 1274453)

  • Graphics: Added ScriptableCamera that can extend a Camera by inheritence.

  • Graphics: API to modify Virtual Texturing settings was changed to be more user friendly and finer grained.
    Changing settings will now cause existing caches to be recreated instead of only affecting the sizes of new caches.

  • Graphics: CopyTexture with explicit mips and regions now copies the full texture when both textures have no mips specified and Texture Quality is not FullRes. This also adds a warning when Texture Quality is set and CopyTexture is used to copy textures with mismatched mips. (1215135)

  • Graphics: Corrected the condition that is used to display the copy texture warning about mip inconsistency. (1254356)

  • Graphics: Enabled valid tessellation behavior for HDRP on Metal API platforms.

  • Graphics: Ensure that when you have > 63 material inspectors displayed that they will render and not throw an exception. (1156199)

  • Graphics: Expose EmitGeometryForCamera to C# for SRP UI rendering. (1155022)

  • Graphics: Fixed 16-bit texture quantized to 8 bits during importing. (1212098)

  • Graphics: Fixed a bad sort operation that caused random crashes during lightmap baking on OSX. (1271626)

  • Graphics: Fixed a calculation of disk read data issue. (1274963)

  • Graphics: Fixed a crash in the Editor when switching from HDRP to builtin pipeline in Graphics Settings. (1246590)

  • Graphics: Fixed a crash on DirectX11 that happened when you created a texture with a partial mip chain. (1213005)

  • Graphics: Fixed a crash that occured while calling VFX.VisualEffect.SetGradient with null. (1271839)

  • Graphics: Fixed a crash when calling Graphics.DrawMeshNow without first having called material.SetPass successfully. (1236602)

  • Graphics: Fixed a crash when running Virtual Texturing with NativeGfxJobs enabled. (1254545)

  • Graphics: Fixed a crash when using invalid ScriptableCullingParameters inside a custom SRP. (1218248)

  • Graphics: Fixed a DXGI swapchain update regression from 2020.1.0a21, and changed a texture format that could cause Unity to crash.

  • Graphics: Fixed a mesh rendering issue in SRP Batcher when using Polybrush. (1220956)

  • Graphics: Fixed a missing memory barrier issue when abimage was repeatedly bound for writing between dispatch calls.

  • Graphics: Fixed a potential crash in VFX when effect was updated out of frustum in indirect mode. (1256791)

  • Graphics: Fixed a potential crash when enabling hardware dynamic resolution using DX12 renderer. (1158661)

  • Graphics: Fixed a potential crash when switching vsync at runtime. (1251670)

  • Graphics: Fixed a prefab creation issue of non-MonoBehaviour ManagedObject component.

  • Graphics: Fixed a slow destruction of RenderTexture's internal resources when using Vulkan.

  • Graphics: Fixed a SystemInfo.minConstantBufferOffsetAlignment return type issue. (1191780)

  • Graphics: Fixed a TextureID leak when async loaded to a texture that was already loaded. (1266477)

  • Graphics: Fixed an exception that was thrown when creating unsupported Crunched Cubemap from script, Crunched Texture3D, CubemapArray, Texture2DArray and SparseTexture. (1278154)

  • Graphics: Fixed an int32 overflow issue that occured during RenderTexture runtime memory calculations. (1263913)

  • Graphics: Fixed an issue in RenderTargetIdentifier when comparing instances with different default values for m_DepthSlice. The default value is now -1, which is required by XR code.

  • Graphics: Fixed an issue whene import of 16 bit cubemaps with spherical or cylindrical mapping would fail. (1284767)

  • Graphics: Fixed an issue where copying compressed volume textures did not uses correct volume slice sizes. (1266585)

  • Graphics: Fixed an issue where CopyTexture might not respect the ignore texture limit flag resulting in wrong copies.

  • Graphics: Fixed an issue where GetShadowCasterBounds method were not correctly returning false when casters were beyond the set shadow distance. (1250914)

  • Graphics: Fixed an issue where in some cases, Custom Render Textures would not be rendered (generally with asset bundles or in a standalone build). (1282195)

  • Graphics: Fixed an issue where material references were getting discarded when a Renderer is Reset. (1186957)

  • Graphics: Fixed an issue where m_PreWarmDeltaTime had negative values. (1167237)

  • Graphics: Fixed an issue where rendertarget readback was not respecting channel layout. (1256612)

  • Graphics: Fixed an issue where RenderTexture.Create with bindTextureMS option would fail silently if the used MSAA antiAliasing value was unsupported with the active graphics device.

  • Graphics: Fixed an issue where shadows were not taken into account on any light type if object was not on Default Light Layer. (1289846)

  • Graphics: Fixed an issue where some of the fields on the SkinnedMeshRenderer were missing tooltips. (1263903)

  • Graphics: Fixed an issue where tree billboards were not rotated correctly when the camera was moving on mobile platforms. (1242389)

  • Graphics: Fixed an issue where unexpected continue was causing a missing update in VisualEffect after Reset Override. (1206890)

  • Graphics: Fixed an issue where vulkan scratchbuffer int32 overflowed. (1272953)

  • Graphics: Fixed an issue with blend shape on Mali GPU. (1285097)

  • Graphics: Fixed an issue with drag and drop of non-MonoBehaviour ManagedObject's child component onto inspector.

  • Graphics: Fixed an issue with invalid state transitions in DX12 back-end. (1259951)

  • Graphics: Fixed an issue with missing support for texture 2d (ms) arrays.

  • Graphics: Fixed an issue with shadow caster culling for HDRP. (1185407)

  • Graphics: Fixed and issue where RenderPass api did not sample stencil input attachment.

  • Graphics: Fixed buffer over-read when decoding BC4/5 texture data. (1270857)

  • Graphics: Fixed build time regression in the built-in shader.

  • Graphics: Fixed crash when null is passed in to Material.GetTexturePropertyName().

  • Graphics: Fixed crash when null is passed in to Material.GetTexturePropertyNameIDs(). (1238775)

  • Graphics: Fixed crash when trying to assign RenderTexture as input for a VT stack. (1235243)

  • Graphics: Fixed crash when using out-of-bounds indices with RenderPass API. (1226312)

  • Graphics: Fixed crash when using shader pass uses not first input attachment.

  • Graphics: Fixed Editor crash when using 2bpp PVRTC for 3D textures.

  • Graphics: Fixed flipped view when using RenderPass API.

  • Graphics: Fixed for UVMeshMetric calculation. (1248992)

  • Graphics: Fixed Frame Debugger when using RenderPass API.

  • Graphics: Fixed half precision support in compute shaders. (1227467)

  • Graphics: Fixed incorrect gamma decoding at import of LDR textures that target a HDR graphics format in a gamma colorspace project.

  • Graphics: Fixed incorrect input attachment indexing on fallback platforms.

  • Graphics: Fixed incorrect NativeArray aliasing when using CPU PVT. (1232623)

  • Graphics: Fixed Indirect drawcalls on Metal binding buffers with wrong offset. (1211151)

  • Graphics: Fixed inheritance of custom editors for renderpipeline when inheriting RenderPipelines. (1263659)

  • Graphics: Fixed initialization of Camera's state which was causing an issue on Camera's child component's Reset.

  • Graphics: Fixed invalid GLSL code generation with result variable participating in comparisons. (1229297)

  • Graphics: Fixed issue where one object in the scene would need ReceiveShadows set to true for Screen Space Shadows to be enabled when using deferred path. (1218683)

  • Graphics: Fixed Metal RenderPass crash when there is no depth.

  • Graphics: Fixed offset calculations of volume slices for compressed texture formats. (1249421)

  • Graphics: Fixed RenderBufferLoadAction.Clear when using SRP RenderPass API. (1225431)

  • Graphics: Fixed RenderPass API Validation, SystemInfo.supportedRenderTargetCount is per subpass.

  • Graphics: Fixed ScreenCapture.CaptureScreenshotAsTexture crashing on Metal under some circumstances. (1262959)

  • Graphics: Fixed several performance issues with reflection probe anchors when reloading scenes.

  • Graphics: Fixed some VFX failing validation on metal, crashing editor/player. (1231313)

  • Graphics: Fixed static analysis defect - class member not initialized in constructor. (1240445)

  • Graphics: Fixed static analysis defect - class members not initialized in constructor. (1248294)

  • Graphics: Fixed static analysis defect - invalid error check. (1262795)

  • Graphics: Fixed the ObjectToWorld matrix used by the BatchRendererGroup when the shader opts for nomatrices instancing.

  • Graphics: Fixed transparent shaders with no _MainTex property not having offset and scale uniforms set when rendering for picking in the Scene View. (1232257)

  • Graphics: Fixed two gfx memory leaks that occurred when running HDRP and using a custom rendering solution in client/worker rendering mode.

  • Graphics: Fixed uninitialized variable in MeshRenderer. (1226229)

  • Graphics: Ignore points/line topology when raytracing mesh in editor for selection. (1183667)

  • Graphics: Improved documentation for .

  • Graphics: Made export to png use grayscale image for R8. (1239813)

  • Graphics: Metal: Fixed a compatibility issues with MSAA/filtering on Apple Silicon and macOS 11.

  • Graphics: Metal: Fixed a constant buffer binding issue with HDRP 9.x Decals shader.

  • Graphics: Metal: Fixed a regression with Time.deltaTime and disabling vsync.

  • Graphics: Metal: Fixed a system instability/hang issue with texture versioning. (1256106)

  • Graphics: Metal: Fixed HLSL compatibility issue with DrawProceduralIndirect. SV_InstanceID always starts at 0 but with Metal, a base instance was not subtracted for equal behavior.

  • Graphics: Metal: Fixed MSAA ResolveDepthIntoTexture to use the resolved texture as a source when doing blit into destination.

  • Graphics: Metal: Fixed shader compiler warnings that could appear on macOS 11 Big Sur/iOS 14.

  • Graphics: Removed a hitch on creation of large textures on DX12.

  • Graphics: Removed a unneeded PIX related assert.

  • Graphics: Shader Memory usage optimization in player. (1223610)

  • Graphics: SRP Batcher doesn't break at first element anymore when rendering hybrid v2 objects. (1263322)

  • Graphics: The DX12 renderer performance has been improved by only adding IASetPrimitiveTopology to a command list when the topology has changed.

  • Graphics: This fixes the crash during command buffer reading in d3d12 mode. (1233711)

  • Graphics: Thread safety fix to texture streaming manager. (1229887)

  • Graphics: Throw an exception when creating mesh with more streams than supported for mesh. (1226104)

  • Graphics: Tipfix uninitialized variables in TextureUploadMemoryDX11. (1231159)

  • Graphics: TotalTime is inconsistent with sum of deltaTime. (1237608)

  • Graphics: Updated message that is shown in Inspector when using a mesh without animation data for SkinnedMeshRenderer. (1229548)

  • Graphics: Updated QualitySettings.streamingMipmapsRenderersPerFrame to support setting at runtime. (1222432)

  • Graphics: When creating shaders for desktop metal, do not forcibly generate constexpr shader for comparison (this is needed for ios where older devices do not support setting comparison from the application side). (1201857)

  • IL2CPP: Fixed an exception that could be throw if System.Data.DataCommonEventSource.ExitScope was called at runtime on a non-windows platform when managed code stripping is enabled. (1278839)

  • IL2CPP: Fixed building Universal Windows Platform player when using Windows SDK versions 15063 or 16299.

  • IL2CPP: Respect the DllImportAttribute.PreserveSig property on PInvoke definitions.

  • IL2CPP: Respect the PreserveSigAttribute on COM interop types. (1202914)

  • IMGUI: Fixed a scroll bar thumb overlapping with arrow icons issue in the console window. (1269928)

  • IMGUI: Fixed an issue where NotImplementedException is thrown on double clicking instructions from Inspected view when mode set to Clip. (1251517)

  • IMGUI: Fixed an issue with pop up menus needing additional click to switch. (1247542)

  • IMGUI: Fixed IndexOutOfRangeException when loading the editor. (1241206)

  • IMGUI: Fixed text input field not scrolling issue when cursor is moved. (1268088)

  • IMGUI: Fixed the issue where the last selection is shown as focused even after selection another window. (1241127)

  • IMGUI: Fixed the slider thumb artifact when multi editing. (1256600)

  • iOS: Fixed a xcode warning when UnityAppController.h was included in .m file. (1267931)

  • iOS: Fixed an issue where active/visible status of ipad floating keyboard were mishandled. (1217147)

  • iOS: Fixed an issue where Arcade's application was using a prohibited API when using Social API function.

  • iOS: Fixed an issue where GetKeyUp and GetKeyDown functions were returning true on every frame. (1218784)

  • iOS: Fixed an occassional crash on exit coming from iOS calling [UIViewController prefersHomeIndicatorAutoHidden] or [UIViewController preferredScreenEdgesDeferringSystemGestures] after unity has been killed.

  • iOS: Fixed default specular cubemap format for iOS and tvOS to be PVRTC.

  • iOS: Fixed game crashing after using Social.LoadUsers and then changing scene. (1270230)

  • iOS: Fixed sound becoming muted after quickly swapping to voice dictation and back to app. (1176463)

  • Kernel: AlignOf<T> returns C# required structure alignment, instead of 4.

  • Kernel: Fixed a stall issue when entering playmode with many pending Burst jobs to compile.

  • Kernel: Fixed an issue where worldPositionStays argument was missing from Undo.SetTransformParent. (1247086)

  • Kernel: Fixed issue with debug assert raised in unique_ptr, when move-from is either default constructed or already moved-from. (1226908)

  • Kernel: Fixed rounding when undoing parenting. (1214246)

  • Kernel: NativeArray.Dispose behavior to not throw when Allocator.None is used.

  • License: Fixed an issue where Report/log licensing errors were not sent by the client. (1273213)

  • Linux: Disabled unstable DrawHeader_WhenInvokedManually_FromPrefabOverridesTreeView_InvokesCallback test for case 1179487.

  • Linux: Fixed a highlighting issue in the hierarchy window while dragging assets. (1251614)

  • Linux: Fixed an Editor crashes if there was not a X11 window desktop environment. (1264934)

  • Linux: Fixed an issue where the eyedropper tool in the color picker did not work on Linux. (1174814)

  • Linux: Fixed keyboard modifiers from being incorrectly munged while moving between editor windows. (1218006, 1236681)

  • Linux: Fixed performance regression while running in Play mode inside the editor. (1271213)

  • Linux: Fixed sporadic errors in the console due to sending invalid drag events. (1251591)

  • Linux: Fixed UnitySetup -L option incorrectly showing defaults. (1160471)

  • macOS: CPU usage decreased for Player built with 'Run in Background'. (1240835)

  • macOS: Fixed a -screen-quality command line argument issue for the player on all desktop platforms. (1094263)

  • macOS: Fixed an issue where macOS Standalone player would not build on case sensitive file systems. (1293383)

  • macOS: Fixed an issue where MONO variable path did not have quotes in generated .sh script when exporting the Xcode project. (1274999)

  • macOS: Fixed an issue where shader pre-warming would crash when a fragment shader returns something else than the usual 4 components. (1264839)

  • macOS: Fixed an issue where target .xcodeproj was used instead of the target directory when building MacOS Xcode Project. (1288729)

  • macOS: Fixed an issue where the Build Settings window would not minimizes with the editor window. (1199503)

  • macOS: Fixed an issue where the Catalina system font directory to font search paths was not added. (1249128)

  • Источник: https://unity3d.com/unity/whats-new/2020.2.0
    Visual Importer Enterprise Crack

    Visual Importer Enterprise Crack -

    55 Mb

    Including extraction, transformation, and load (ETL)packages for data warehousing and business automation. Visual Importer ETL Enterprise includes graphical tools and wizards for building and debugging automation packages; Actions for performing work-flow functions such as FTP operations, executing SQL statements, and file manipulations; data sources and destinations for extracting and loading data; Unlike DTS, SSIS and Oracle Warehouse builder, Visual Importer ETL Enterprise can send and receive emails and process attachments as well. By combining simple ETL Package Actions together Visual Importer ETL Enterprise helps businesses and Fortune 100 companies to automate complicated business processes and everyday tasks.

    User can design Import, Export and SQL scripts, add them to the Package and schedule it for execution on regular basis. Unlike DTS, SSIS and Oracle Warehouse builder Visual Importer ETL Professional can receive emails and process attachments as well. All FTP operations also supported. By combining simple Package Items together Visual Importer ETL Professional helps small businesses and Fortune 100 companies to automate complicated business processes and everyday tasks.

    Import data into any database
    Export all data from the database
    Run SQL scripts
    Compress and decompress files
    Compare files using MD5 and size
    Copy, move, rename and delete files
    Upload and downloadfiles
    Receive and process Emails
    Send Emails
    and much more...

    Load Data From:

    Multiple Delimited or Fixed width Text files
    Multiple Excel files + Multiple Excel Spreadsheets
    Multiple MS Access Databases + Multiple Tables
    Multiple DBF Files
    Multiple Tables
    MS Sql Server
    MS Sql Server CE
    Oracle Database
    RSS Feed
    Any ODBC Database
    Any JDBC Database
    QlikView QVX and QVD Files
    Windows Event Log


    Add Records
    Update Records
    Delete Records
    Add New and Update existing Records
    Apply Functions to Database Fields
    Apply user defined Date format
    Run Sql script before and after loading data
    Run calculations during import
    Filter SourceData
    Use Select Statement as a Data Source
    Data Preview
    Run import script from command line


    Oracle 7-11g database
    SQL server 7-2008
    Any ODBC Compliant Database



    Источник: https://delphidotnet.com/database/1162-visual-importer-enterprise-831214.html


    This article is by Peter Kazanjy, co-founder of Atrium and TalentBin (acquired by Monster Worldwide in 2014). It's excerpted from the sales demo, phone, and email scripts chapter in his book, Founding Sales, which tackles everything founders and first-time sales staff need to know about acquiring early customers, building and scaling winning sales teams.

    Building a winning sales deck is one thing. But what about the email templates needed to get prospects on the phone? What about the phone scripts for setting those sales presentation appointments? The best sales deck in the world isn’t super helpful sitting on a shelf, gathering dust because you aren’t setting appointments in which to use it! And while a sales presentation is all well and good, a well-scripted, live demo is required to show prospects it’s not all smoke and mirrors.

    Of course, teaching a team of people what to say in each of these situations, not to mention, simply remembering yourself, is an entirely different animal than simply putting together a compelling set of sales slides. The key is to take as much variability and improvisation out of the equation as possible so you can define, test and stick with what works. But where do you even start?

    First, it’s a question of making sure that the commercial arguments you likely have embodied in materials like your sales deck, and core sales narrative, are also available in the format for other parts of the sales funnel. That is, you can't build a house with just a hammer. You need the right tools for each part of the job. It’s also a question of how you want your company to sound. It’s not too far off from how startups need to position and define the public-facing tone and voice they want to use.

    Sales is a significant channel through which companies need to tell a compelling story in a distinct voice. Every email your sales team sends, every voicemail they leave, and every demo they give in person or over the phone reinforces or detracts from this commercial argument you make to your prospect about why your solution is so fantastic for her business. The success or failure of this commercial argument is what will drive your revenue success or failure. You can see why starting from a strong position is so important.

    In this exclusive article excerpted from my book on enterprise sales for founders and other first time sales staff, I share the critical lessons I’ve learned to nailing these interactions both in our sales org at TalentBin, and at numerous other early stage sales orgs I’ve advised.

    But I also know it’s not enough to suggest the type of things people should say to clients. That’s why I’ve shared a number of examples of actual emails and demo scripts that have worked for us. You can take these and mold them to your own tone and value proposition, but if you’re looking for a starting point to get these conversations rolling, you’ve come to the right place.

    Just like your sales deck, the emails your team sends should be medium-specific encapsulations of your sales narrative, with an end goal of driving recipients to an online or offline presentation and demo. And just like your deck, these can start at the most basic level and get more elaborate from there as your messaging gets more specific.

    We’ll start with the idea of outbound outreach. While inbound leads (that you heavily qualify) are the highest-quality source of potential deals, it’s unlikely when you’re first starting out that you’ll have inbound demand of any merit before you start doing outbound.

    To start, you simply need a couple of outreach templates that you’ll use to contact decision-makers at prospect companies. The benefit of prospecting is that you are able to select prospects that have the business pain characteristics that your solution is able to transform and relieve. So conveniently, when you’re creating these templates, you can assume that readers have the pain points that you’re solving and, moreover, talk to them plainly about their business pains and your solution.

    As you read the following email templates, you should recognize parts of your master narrative: the problem and who has it (the recipient!), the differences between yours and existing solutions, and proof points of your product’s superiority.

    You’ll note the subject lines are often customized — there’s information in there to show the prospect that this message was specifically designed for him or her — and include qualification information (e.g., “Hiring Ruby devs? That’s NOT easy”). You’ll also see that the templates include “click targets,” hyperlinks pointing to pieces of collateral (I like YouTube demo videos in particular) that draw clicks from the prospect.

    These are important not just because they can provide more context and persuasion, but because, with the sort of email instrumentation you should implement, they will allow you to see which prospects are clicking and thus demonstrating interest in what you have to say. And they don’t have to be just text links. You can embed a screenshot of a slide or — one of my favorites — a thumbnail of a demo video that’s hyperlinked to the source to drive click-through to more compelling information. Email templates should also include links to your website. This helps with the click-target question, but also allows the prospect to learn more, and potentially become an inbound lead requesting your demo.

    You’ll also note that these sample templates are very specific about what the solution addresses, and take pains to demonstrate to the prospect that research was done to confirm that he or she has those business pains. In TalentBin’s case, that’s hiring technical talent. These emails don’t talk about “social recruiting.” They don’t talk about “recruiting” in general. They don’t talk about interviewing. They talk about the pain points of finding and recruiting technical talent, and potential solutions to those problems. And the messaging continually comes back to the prospect’s point of view. Prospects don’t care about you. They care about them.

    You must prioritize the prospects’ point of view; even as you present information about your solution, ground it in how it helps them.

    The best templates do all of this in a plainspoken (dare I say fun?) way that speaks to the prospect candidly, authoritatively, and as a peer. They avoid bullshit jargon-speak and unnecessarily “businessy” communication patterns.

    Same with overly ornate designs. Your templates should be 100% text, avoiding marketing images — with the exception of screenshots and slides, if you like. But avoid high-sheen logos and such. It makes your outreach look like a robot sent it, like there’s no qualification behind it and it’s therefore inapplicable spam rather than highly targeted consultative outreach. Don’t let your emails get mistaken for that other crap.

    Lastly, you’ll notice that there are strong calls to action at the conclusion of each email, asking to set up a one-on-one interaction (whether via telepresence à la Join.me, ClearSlide, etc. or face-to-face). That is the ultimate goal of this outreach: to drive to a synchronous presentation and discussion of the prospect’s business pains and your solution. A “demo,” in the vernacular.

    Here are a couple examples of cold-outreach emails (with mail merge code in place):

    SUBJECT LINE: Hey {{First Name}}! The magical solution to your technical recruiting headaches.

    Hey {{First Name}},

    I hope you're having a great day!

    It’s {{User.FIRSTNAME}} at TalentBin, and I’m reaching out because I have something that I think help make hiring all those Ruby, iOS, and Java roles I see on your career page.

    If you’re like most technical recruiters we work with (we have thousands of customers), you’re probably frustrated by the poor LinkedIn profiles of most developers, the fact that they don’t respond to InMails, and that it all just takes way too much time. Super frustrating.

    The good news is, TalentBin is designed specifically to reduce that time and drudgery via automation, so you can spend more of your time having great candidate conversations and selling them on working at {{CompanyName}}. Which is what recruiting is all about, right?

    You see, TalentBin is a talent search engine that helps recruiter find and reach out to fantastic technical talent based on the activity they demonstrate on places like Github, Stack Overflow, Twitter, Meetup, the US Patent Database, and more. More here: https://www.youtube.com/watch?v=fClV97ONRyI

    I'd love to show you how we might be able to help you find qualified technical candidates for your open positions and hire more and better technical staff, faster, with less work on your part.

    Do you have 20 minutes next week? What times work for you? Feel free to reply to this email, or you can ring me directly at {{User.BIZ_PHONE}}.

    Thanks, {{User.FIRSTNAME}}

    SUBJECT LINE: Hey {{First Name}}! Meet TalentBin: the Talent Search Engine

    Hey {{First Name}},

    I hope you're having a great day!

    It’s {{User.FIRSTNAME}} at Monster, and I am looking to introduce you to our newest acquisition, a technical recruiting tool called TalentBin. It’s clear that {{CompanyName}} is hiring technical talent, and I’d love the opportunity to show you how TalentBin can make your life easier in that regard.

    TalentBin has developed an amazing talent search engine used by recruiters to find software developers and other technical talent. More in this helpful video here: https://www.youtube.com/watch?v=fClV97ONRyI

    Facebook, Amazon, Microsoft, Salesforce, and hundreds of other companies have recruiters using TalentBin daily to search for and recruit these hard-to-find candidates.

    We derive our candidate data by crawling the *entire Internet* and making it your technical-recruiting playground. That means we are capitalizing on the grand potential of the Internet by recording information from disparate web locations and constructing rich composite profiles. So all those software engineers with terrible or nonexistent LinkedIn profiles who don’t respond to InMails? We have profiles for them based on what they do on GitHub, Stack Overflow, Twitter, Meetup, and more. And we have their personal email addresses.

    These profiles span professional and personal interests, and they include personal email addresses!

    Based on the open technical positions I see listed on your career site ({{CareerSiteLink}}), TalentBin should serve you well.

    I'd love to show you how TalentBin can help you find qualified technical candidates for your open positions and hire more and better technical staff, faster, with less work on your part.

    Do you have 20 minutes next week? What times work for you? Feel free to reply to this email, or you can ring me directly at {{User.BIZ_PHONE}}.

    Thanks {{User.FIRSTNAME}}

    SUBJECT LINE: Want to reach twice the technical candidates in half the time? TalentBin can help.

    Hi there {{First Name}},

    It’s {{User.FIRSTNAME}} here with Monster. I wanted to take a minute to introduce you to the newest addition to our ever-growing bag of recruiting tricks: TalentBin. If the information below is relevant to you, I would love to connect one-to-one to discuss further. I believe it will be a very helpful tool for you.

    TalentBin has developed a search engine used by recruiters to find software developers and other technical talent.

    Facebook, Amazon, Kelly IT, Robert Half, and hundreds of other companies and agencies have recruiters using TalentBin daily to search for these hard-to-find candidates.

    Based on the open positions I see listed on your website, TalentBin should serve you well in your search!

    Snapshot of some sweet features:

    4–5x more technical candidates than LinkedIn Recruiter can identify

    Millions of personal email addresses

    Messaging templates and mass emailing capability (Send an email blast to up to 30 candidates at once in a single click.)

    Email-open/link-click tracking (See when a candidate opens your emails.)

    Gmail and Outlook integration (Send candidates emails from within TalentBin without having to bounce out to another window.)

    CRM functionality (pipeline management & automation—no dropped balls)

    ...and some more cool/nerdy data stuff. :)

    Quick explainer video (It's pretty funny. You *will* laugh.): https://www.youtube.com/watch?v=fClV97ONRyI

    We’d love to show you how TalentBin can help you find and recruit qualified technical candidates for your open positions. Do you have 30 minutes next week? What times work for you?

    Don't believe the subject line? Email me! I'd be happy to explain. Or you can ring me directly at {{User.BIZ_PHONE}}.

    Thanks, {{User.FIRSTNAME}}

    You should always approach these types of email templates with an iterative mindset. As your solution extends, you’ll extend them. In fact, as you add slides to your sales deck, you can often add a correlating outreach email, maybe even with a screenshot of the slide embedded. As you find permutations in your customer base, you can fork off templates that are specific to sub-genres of your customers.

    As with your slides, you should keep email templates in some sort of “source repository” — which can be as simple as a Google Document or, eventually, a more complicated content management system, like Yesware, SalesLoft, or some other email-prospecting tool.

    While targeted email outreach for appointment setting is one of the most scalable means to put your message in front of qualified prospects, you’ll likely be getting on the phone — either dealing with inbound calls (perhaps prompted by your outbound emailing!) or doing out-and-out cold-calling (which everyone knows can be pretty nerve-racking).

    While there’s little chance that a phone call will directly follow a script, having at least some quick bullets to refer to can be helpful to ensure that you’re nailing your messaging points. Again, these should be a reformatting of your core narrative, designed to be delivered in thirty to ninety seconds. This is not the kind of phone script that you’ll have when you get to 10+ sales reps; instead, it’s about having guideposts to help you when you get on the phone trying to drive toward a demo.

    Below are some appointment-setting phone scripts from a company named HIRABL, which makes revenue-acceleration products for recruiting agencies. These scripts are for a product that helps agencies know when candidates that they’ve submitted to clients may have been hired, even though the client hasn’t reported it.

    Cold-Calling Scripts — HIRABL

    Version #1

    Hi there!

    This is NAME at HIRABL. I wanted to reach out, because we’ve been helping staffing agencies like yours identify backdoor hires.

    Are you familiar with backdoor hires, or have you had many at your agency?

    Customer: Yes, we are familiar with them, but we don’t do much about it because we don’t know how we’d go about it.

    Yeah, we hear that quite a bit. It sounds like a demo with our Account Director NAME might make sense — do you have 20 minutes on DAY or DAY?

    Version #2

    Hi there!

    This is NAME at HIRABL. How’s your day going?

    The reason I’m calling is that we develop software that notifies recruiters when clients hire their candidates and forget to tell them. Last year, we found over 4,200 missed fees across just 120 customers.

    I’d love to set up a time for you to speak with our Account Director NAME, because I think we can identify fees you’ve already earned.Do you have twenty minutes on DAY or DAY?


    And this is a more involved call script for TalentBin, which includes more of the sales narrative than the succinct ones above. It’s unlikely that all of the information in this script would be used in a given call, but having the information available to the caller is always helpful.

    Hey there!

    It's NAME from Monster.

    (Pleasantries. Weather. Sports team. Personal tidbits.)

    So, I'm calling because I know that ACCOUNT_NAME hires quite a few (software engineering/design/health care) professionals.

    Monster recently acquired a company called TalentBin. Did you see that news?

    (Customer responds.)

    Got it! So TalentBin develops tools used by recruiters to find talent. And it does this by crawling the entire Internet for activity that those folks engage in.

    Because these sorts of candidates are highly employed, recruiting them often requires a passive-candidate outreach approach.

    But at the same time, because these folks tend to not spend time on professional social networks like LinkedIn, finding them there can be really problematic. Unlike recruiters and salespeople, they just don't spend time there.

    However, these sorts of professionals do spend time other places online, leaving trails of information about what they do professionally. TalentBin scoops up all of that information and makes it recruiter-ready.

    As a result, TalentBin identifies more of these professionals than any other sourcing tool on the market. It makes it easy for you to reach them directly, by providing personal contact information, like personal email addresses, and social communication vectors like Twitter, Meetup, Facebook, and so on.

    Pretty nifty, eh?

    Yeah, what’s more:

    [Technical: For instance, in a given geography, say TalentBin will have five to ten times the number of Ruby, Java, .NET, iOS, and Android developers compared to LinkedIn, and will have oodles of personal email addresses for those candidates. This is because TalentBin has crawled GitHub, Stack Overflow, Meetup, Twitter, and many other sites where those engineers hang out.]

    [Healthcare: For instance, in a given geography, say TalentBin will have five to 10 times the number of registered nurses, physician assistants, nurse practitioners, physicians (oncologists, orthopedists, etc.), and so on thank LinkedIn. And it includes lots of direct phone numbers and other contact information for these candidates! This is because TalentBin has crawled every single healthcare license database where those professionals have to show up. So we literally have every healthcare professional in the United States in our database! How cool is that?]

    Lastly, TalentBin saves recruiters tons of time by automating a lot of the drudgery involved in candidate sourcing and outreach. Features like integrated email, templating and mail merging, mass messaging, drip-marketing campaigns, and email-open and click tracking make our clients super efficient jet fighters! It's like a robot recruiter helper, freeing recruiters up to spend more time on higher-value activities, like closing candidates.

    Which is why Monster bought the company! Because it's really impactful for our clients who hire these sorts of staff. Thousands of clients have signed up for TalentBin, including big names like Amazon, IBM, Kelly Services, Manpower, and more.

    Because of ACCOUNT_NAME's current hiring characteristics, I feel that this is something that would be very impactful to your business. I would love to set up a walk-through demo for your team with myself and my TalentBin product specialist colleague to dig in more.

    Are you available DAY or DAY next week for a thirty-minute demo? I promise it will be worth your time.


    When we built this script, we also included some reaction permutations to help guide the next steps of the call:

    Client is interested — Book demo.

    Great! What are some times that work for you next week? I have availability TIME BLOCK on DAY, TIME BLOCK on DAY, and TIME BLOCK on DAY.

    Great. I'll send a meeting invite to block your calendar with the online meeting room information. We'll do a screen share and walk through some slides and the product. Looking forward to it!

    Client asks follow-up question — Defer and drive to demo.

    That's a great question! Usually that's the sort of thing we like to get into in a brief presentation and demo with one of the TalentBin product specialists, who are the pros when it comes to explaining every feature. It's usually thirty minutes and focuses specifically on your business pains and where TalentBin can help.

    It's very educational, and well worth the time.

    Are you available DAY or DAY next week for a thirty-minute demo? I promise it will be worth it.

    Client asks, “Is it free/does it cost money?” — Defer and drive toward demo.

    It is not free, but it's extremely powerful and provides a strong return on investment. It's not uncommon for TalentBin to drive an additional engineering hire per month.

    But usually that's the sort of thing we like to get into in a brief presentation and demo with one of the TalentBin product specialists. It's usually thirty minutes and focuses specifically on your business pains and where TalentBin can help solve them.

    It's very educational, and well worth the time.

    Are you available DAY or DAY next week for a 30-minute demo? I promise it will be worth it.

    Client says, “I'm not interested” — Deflect and articulate value. Drive toward a demo.

    NAME, I wouldn't be on the phone with you right now if I didn't strongly think that this could help ACCOUNT_NAME hire more people, faster, with less cost and less work on the part of your recruiters. [In the case of an agency, "And ultimately make ACCOUNT_NAME more money."]

    I promise you that this sort of technology is going to be industry standard. By deferring consideration of it, you're putting your business and your ability as a recruiter at a disadvantage.

    Client asks, “Is this like [COMPETITOR NAME]?” — Deflect and drive toward demo.

    Oh! You're familiar with COMPETITOR_NAME. TalentBin is similar, but is actually the original pioneer in the industry, with the richest functionality, the best data sources, and the most automation. Which is why TalentBin has won the most industry acclaim and awards! Given your familiarity with the space, it seems like a demo would be very helpful for you to further complete your knowledge.

    Are you available DAY or DAY next week for a thirty-minute demo? I promise it will be worth it.

    Client says, “No, I'm really not interested.” — Articulate that you're going to follow up, and aren't going away. (More on how to do this here.)

    Okay, I understand that while this is relevant to your business, it sounds like the timing is not right just this instant. However, I am convinced that TalentBin is something that will help your business be more successful.

    So I'm going to send some video examples of the massive time savings and ROI that TalentBin can provide for ACCOUNT_NAME, and I'll make sure to touch base in a month or so to update you on what's new. [From there, follow up by email with materials as defined in Email Templates.]


    Next, we have some example voicemail scripts designed to prompt callbacks. As covered in the appointment-setting chapter, voicemails should generally be paired with emails.

    While listening to a voicemail can be easy (especially in the age of transcription to email), prospects will rarely return messages. It’s better to think of them as audio emails.

    That said, an email that is paired with a voice mail that has piqued a prospect’s interest is ripe for a reply.

    Follow-Up Voicemail

    Hey there! It's NAME from Monster again.

    I wanted to follow up on my previous message regarding TalentBin by Monster, the talent search engine.

    On paper, it seems like your company would be a great fit for our tool, given your hiring needs, and I just want to chat for a quick minute to see if scheduling you for a live web demo would make sense.

    Once again, NAME calling from TalentBin, PHONE NUMBER, that’s PHONE NUMBER. I look forward to speaking with you soon.

    Customer Proof Voicemail

    Hey there!

    This is NAME from TalentBin.

    I’m reaching out because our company makes amazing technical talent search software, and it looks like your organization loves to hire amazing software engineers.

    We're super popular with awesome technical recruiting organizations like Facebook, Amazon, Groupon, Microsoft, and hundreds of others. So we're legit.

    I'd love to connect with you on what we're up to and how it can help you guys with your engineering hiring needs.

    Hit me back at NUMBER. I look forward to chatting with you soon!



    Of course the goal of all these emails and phone calls is to get to the demo stage of the process. That’s concrete progress through the sales funnel, and your chances of making a sale at each stage are that much better. Of course, your chances of fumbling the deal are also greater because you’re moving into a higher touchpoint part of the process. To make sure you don’t sacrifice all the hard work that comes before a demo, the next section is about how to win at that level.

    Your demo should be crafted with your overarching sales narrative front and center. And because a live demo will typically come after you’ve shared some initial slides from your sales deck, you should follow the framing you presented in your deck. Your demo will reiterate much of it, but with much more context, customization, and visual clarity.

    What exactly is that framing? Well, as with your sales deck, it’s the bucketing of key use cases and the features that enable them. Ideally, you should already have those use cases identified, as they are likely referred to in your sales deck. But think about the combination of most common, most important, and most impressive use cases your solution enables. Then rank them, such that you start with the most important and most compelling ones — because you never know when a demo will have to end early! Beyond that, I like to think of a demo as telling the story of how your solution is used, again starting with major pain points.


    Your demo is where customization to the specific prospect can really be done in earnest. In fact, as you’re developing your product, think of ways you can make it easier to demonstrate using prospect content — it could be something as simple as ensuring that a prospect name and logo can be quickly embedded, or as complicated as making it easy to import customer data to use in a live demo. But the purpose of the demo is not to be a cold rehash of the features that you may have just touched on in your sales presentation.

    Your demo is an opportunity to demonstrate the potential value the product could provide to the prospect, richly, before their eyes.

    More customization will raise close rates and shorten deal cycles. The simplest version of this type of tailoring is knowing the prospect’s business context — either from prior research or from discovery questions at the beginning of your call — and using that to guide the demo.

    At TalentBin, that meant making sure that our sales reps knew the technical- and design-hiring requirements for prospects they were talking to, which was easily divined by looking at those prospects’ career web pages ahead of time. That way, the TalentBin rep could easily say, “I know by looking at your careers page that you’re hiring some iOS developers in Philadelphia. I would love to show you how TalentBin could help with that.”

    Consider this in contrast to something that is non-contextual, like “How about we show you what this looks like for recruiting for Java developers in San Francisco?” — when the prospect doesn’t recruit for Java, and definitely isn’t based in San Francisco. What are the key pieces of information you could use to modify your demo and make it more impactful to the prospect? Which can be sniffed out ahead of time, and which need to be elicited from the prospect?

    If your demo is non-contextual and not tied directly to the business realities of the prospect, it will always smell like you’re running the demo to make the product perform at its peak attractiveness, rather than showing how it will work when used by the client. You can avoid that by focusing on the prospect’s business context first and foremost. It will make your materials more believable than other vendor demos they see and raise the trust factor. It also helps to do this research yourself. Because if you simply ask clients what they want to do, they may not know, or may ask to go in the wrong direction.

    Again, with TalentBin, the worst approach would have been to ask, “What’s a role you’re having a hard time filling?” Because the client would likely simply bring up their current most difficult role. Better instead to focus on the roles that the client has the most hires for, for instance, because that’s the larger pain point.

    A more evolved version of demo customization is a demo that actually includes user data. A great example of that is how HIRABL (the company that makes revenue-acceleration products for recruiting agencies) runs their demos: A week ahead of the demo call, the prospect sends HIRABL candidate submission data from the CRM system they use to track hires. HIRABL then runs their “missed hire” analysis in a new instance of their SaaS software spun up for the prospect.

    When it comes time for the demo, they execute a lightweight presentation so the prospect understands the general mental model of the problem, solution, value, and such, and then they turn to all the missed fees that HIRABL has identified for that prospect. That’s a pretty killer demo! “So, we found what looks like around twenty-five missed fees from your last two years of submission data. You make about $20,000 per placement. Would you like to purchase the product so you can get cracking on collecting that $400,000 of missed fees? We would just give you access to this instance right here. It’s ready to go.” The answer is usually “Yes!”

    Obviously the latter case is far more advanced, and by no means should you say, “Well, we don’t have the ability to hyper-customize a demo environment, so we can’t start selling.” Not at all. However, when you work with product management, providing feedback on features you’d want to see in the product, remember that there are features that will make selling easier via a more customized demo. And even if those features don’t necessarily provide post-purchase value to customers, they can still be very valuable from a revenue-generation standpoint, in that they raise close rates and bring in more money.

    Example Demo Script

    What did a demo script look like at TalentBin? Well, of course, it correlated to our core sales narrative, and was built around the “Search, Qualify, Reach Out, Automate” framing we presented in our sales deck. You can check out how we handled those first two buckets below (and if you want to see the whole script, you’ll find it in the Appendix.). It starts with one of the most important use cases for our audience of recruiters, and then progresses from there in the way a recruiter would move from discovery of a new candidate to qualification of that candidate to outreach — a full life cycle of what recruiters do so often in their day-to-day workflow. Also note that it’s broken up to allow for pauses and discussion with the client.

    As you read through it, imagine what it would look like to walk prospects through all the ways TalentBin fits into their day-to-day, and solves their pains at each step, while screen sharing the product. And think about what your demo would look like! What are the natural workflows that your prospect works through on a daily basis? How does your solution fit into them and make them better, faster, stronger?

    Search: Enhanced candidate discovery was TalentBin’s first value proposition, and one of the most easily comprehended by prospects. This section was where we touched on the importance of being able to discover engineering candidates who were previously undiscoverable in traditional recruiting databases — or at least super hard to find, requiring far too much manual effort.

    We knew nothing would capture the attention of a technical recruiter like showing them the potential candidates they could find and engage using our solution, especially as compared to standard databases, so we started with that:

    "Well, I saw from your company’s career site that you need to hire some Ruby engineering staff there in the Dallas area, so let’s search for some. Here’s how we build a search for people who know Ruby in the Dallas area. We can do it manually, or we can use our new Job Req Translator that automatically pulls out the relevant terms in your job posting. I actually grabbed this posting before the call, so let’s paste that in there. See how easy that is?

    Now we can save that search for later use since we’re going to come back to this. Also, by saving that search, you’ll now get recommended candidate emails from those searches every few days. But let’s expand this some to see the total number of potential candidates for this role in Dallas. Excellent! Well, it looks like we have around eight thousand results there. That’s promising, since LinkedIn only has around eleven hundred for that same query! Very nice, so that’s like seven times the number — I’m betting there’s a pretty hefty load of people in these search results who have zero LinkedIn profile.

    And, of course, the way that you’d do this previously was to manually browse through GitHub or Stack Overflow or Twitter; it might take you five minutes per valid candidate. This way they’re already ready for you to review. And tons of them aren’t on LinkedIn being accosted by every other recruiter with a LinkedIn Recruiter seat!"

    Showing off scaled search results for desired skills in the prospect’s region:

    Qualify: This is where we would cover why having access to all of this aggregated professional activity was fantastic for qualifying that a candidate had the characteristics recruiters were looking for. Moreover, we looked at how using that contextual information, both professional and personal, in outreach could dramatically impact response rates and recruiter efficiency:

    "Okay, let’s start looking at some of these profiles. You can see that we show a preview on the search page that includes the relevant information for the skill that was searched for, along with the various social profiles we have identified and crawled for the candidate. And if you want to, you can tag these folks as ‘interesting’ or ‘not interesting’ for later bulk processing. But for now, let’s check out an individual. Natalie here looks interesting."

    Showing off search results and preview information:

    Profile View: Understanding that a candidate “fits the bill” and is at least worth reaching out to is a core recruiting workflow. Whether basing their decision on a resume or a LinkedIn profile, recruiters are used to doing that. So showing them how they could do that with a TalentBin profile, but with data aggregated from all over the web, was important:

    "Let’s click into her profile. Now you can see that we’ve aggregated all of her various web profiles. See, here’s her GitHub, Stack Overflow, Meetup, Twitter, LinkedIn, and Facebook, and we even have her Lanyrd social conference profile. Nice. If you ever wanted to go to those sites, you can just click on these like this. However, the big idea here is to aggregate that activity so you don’t have to do that.”

    Showing off Natalie’s various web profiles and how they’ve been aggregated:

    Interest Details: Understanding “why” a given candidate has the relevant professional skill is also important for recruiters. Often they spend time cross-correlating resume claims with sources of professional activity on the web. Moreover, they know that using contextual information in outreach is a valuable way to raise responsiveness, but often takes too long to do in a scalable fashion manually:

    “So let’s look at how we know that Natalie has ‘Ruby’ relevance. Okay, see down here on her profile, we’ve got her ‘interest viewer’ section, and if we click on ‘Ruby’ there we see that, wow, Natalie is really into Ruby! She’s following a number of Ruby repositories on GitHub, she has it in her Twitter biography, she’s a member of a couple Ruby Meetups, and she has answered some Ruby questions on Stack Overflow.

    Nice! Looks like Natalie is really into Ruby. The problem is that historically this is the sort of thing you’d have to spend five minutes clicking all over the web to determine. Nice that these interest details are right here so you can check them out, and maybe even share them with the hiring manager. Let’s go check out Natalie LinkedIn profile. Whoops! That link is dead! Probably because she deleted her LinkedIn profile. But we’ve got it! We can see that she’s got a bunch of other interests in technologies that are relevant to us — Ruby first and foremost — so she looks like a live one!”

    Navigating around and showing off the Skills viewer:

    From here, we would cover the key remaining buckets, “Reach Out” and “Automate.” We continued to follow the recruiter’s natural workflow — using a real-world candidate that matched that prospect’s hiring needs — and highlight features that would boost efficiency at every step. Importantly, we would tie parts of the demo to prior elements, making sure to create a holistic understanding of how the product would impact the entirety of the recruiter’s workflow for the better. If you’d like to read the whole script, check out the Appendix.

    In TalentBin’s case, the product was fairly evolved, so there was quite a bit of bucketing, and a good amount of ground to cover. But that doesn’t mean that this has to be the case with your demo. The goal is to connect the known pain points to the solution and its benefits, step by step, so your prospects can truly see how it fits into their workflow and makes their lives better. You know you’re doing it well when prospects are saying things like “That’s awesome” or “You have no idea how much this will help me with XYZ.”

    Think about the right way to go about demoing your offering. Is there a natural workflow to walk the user through? Is there a chronology? Are there specific key use cases that correlate to the value that you’re providing that you would want to start with? Think about the “story” of your product in the hands of the person you’re presenting it to, or the person that reports to her. What things will they care about, and what will make them better, faster, stronger, smarter, and more successful? Focus on those things, and you’ll be in a good spot.

    New product enterprise sales is a multi-touch exercise that requires compelling, consistent messaging up and down the sales funnel. So while a great sales deck is helpful, by no means is it the end all be all! Rather, you’ll need at least minimum viable incarnations of your sales narrative for each part of the funnel.

    At the top, that’ll mean email outreach templates and phone scripts, and nearer the bottom, that’ll be a great demo script. It’s not exactly rocket science, rather it’s just a question of taking the time to put the work in and write them out rather than thinking you can “wing it.” But if you put the work in, you'll find these materials invaluable, first for you to consume and refer to on your way to memorizing them (it’ll take dozens and dozens of iterations for it to start becoming muscle memory for you), and later, as a reference as you hire and onboard other sellers to your team. They will need documentation for training so they can execute all of this as flawlessly as you now can.

    Источник: https://review.firstround.com/here-are-the-scripts-for-sales-success-emails-calls-and-demos-that-close-deals

    1.0 (07/30/2010)


    What follows is the original PIL 1.1.7 CHANGES file contents

    Alan Stewart, Perry Stoll, Paul Svensson, Ulrik Svensson, Miki Tebeka, Michael van Tellingen, Ivan Tkatchev, Dan Torop, Adam Twardoch, Rune Uhlin, Dmitry Vasiliev, Sasha Voynow, Charles Waldman, Collin Winter, Dan Wolfe, Ka-Ping Yee, and many others (if your name should be on this list, let me know.) *** Changes from release 1.1.6 to 1.1.7 *** This section may not be fully complete. For changes since this file was last updated, see the repository revision history: http://bitbucket.org/effbot/pil-2009-raclette/changesets/ (1.1.7 final) + Set GIF loop info property to the number of iterations if a NETSCAPE loop extension is present, instead of always setting it to 1 (from Valentino Volonghi). (1.1.7c1 released) + Improved PNG compression (from Alexey Borzenkov). + Read interlaced PNG files (from Conrado Porto Lopes Gouvêa) + Added various TGA improvements from Alexey Borzenkov, including support for specifying image orientation. + Bumped block threshold to 16 megabytes, made size estimation a bit more accurate. This speeds up allocation of large images. + Fixed rounding error in ImagingDrawWideLine. "gormish" writes: ImagingDrawWideLine() in Draw.c has a bug in every version I've seen, which leads to different width lines depending on the order of the points in the line. This is especially bad at some angles where a 'width=2' line can completely disappear. + Added support for RGBA mode to the SGI module (based on code by Karsten Hiddemann). + Handle repeated IPTC tags (adapted from a patch by Eric Bruning). Eric writes: According to the specification, some IPTC tags can be repeated, e.g., tag 2:25 (keywords). PIL 1.1.6 only retained the last instance of that tag. Below is a patch to store all tags. If there are multiple tag instances, they are stored in a (python) list. Single tag instances remain as strings. + Fixed potential crash in ImageFilter for small target images (reported by Zac Burns and Daniel Fetchinson). + Use BMP instead of JPEG as temporary show format on Mac OS X. + Fixed putpixel/new for I;16 with colors > 255. + Added integer power support to ImagingMath. + Added limited support for I;16L mode (explicit little endian). + Moved WMF support into Image.core; enable WMF rendering by default if renderer is available. + Mark the ARG plugin as obsolete. + Added version query mechanism to ImageCms and ImageFont, for debugging. + Added (experimental) ImageCms function for fetching the ICC profile for the current display (currently Windows only). Added HWND/HDC support to ImageCms.get_display_profile(). + Added WMF renderer (Windows only). + Added ImagePointHandler and ImageTransformHandler mixins; made ImageCmsTransform work with im.point. + Fixed potential endless loop in the XVThumbnail reader (from Nikolai Ugelvik). + Added Kevin Cazabon's pyCMS package. The C code has been moved to _imagingcms.c, the Python interface module is installed as PIL.ImageCMS. Added support for in-memory ICC profiles. Unified buildTransform and buildTransformFromOpenProfiles. The profile can now be either a filename, a profile object, or a file-like object containing an in-memory profile. Additional fixes from Florian Böch: Very nice - it just needs LCMS flags support so we can use black point compensation and softproofing :) See attached patches. They also fix a naming issue which could cause confusion - display profile (ImageCms wording) actually means proof profile (lcms wording), so I changed variable names and docstrings where applicable. Patches are tested under Python 2.6. + Improved support for layer names in PSD files (from Sylvain Baubeau) Sylvain writes: I needed to be able to retrieve the names of the layers in a PSD files. But PsdImagePlugin.py didn't do the job so I wrote this very small patch. + Improved RGBA support for ImageTk for 8.4 and newer (from Con Radchenko). This replaces the slow run-length based encoding model with true compositing at the Tk level. + Added support for 16- and 32-bit images to McIdas loader. Based on file samples and stand-alone reader code provided by Craig Swank. + Added ImagePalette support to putpalette. + Fixed problem with incremental parsing of PNG files. + Make selftest.py report non-zero status on failure (from Mark Sienkiewicz) + Add big endian save support and multipage infrastructure to the TIFF writer (from Sebastian Haase). + Handle files with GPS IFD but no basic EXIF IFD (reported by Kurt Schwehr). + Added zTXT support (from Andrew Kuchling via Lowell Alleman). + Fixed potential infinite loop bug in ImageFont (from Guilherme Polo). + Added sample ICC profiles (from Kevin Cazabon) + Fixed array interface for I, F, and RGBA/RGBX images. + Added Chroma subsampling support for JPEG (from Justin Huff). Justin writes: Attached is a patch (against PIL 1.1.6) to provide control over the chroma subsampling done by the JPEG encoder. This is often useful for reducing compression artifacts around edges of clipart and text. + Added USM/Gaussian Blur code from Kevin Cazabon. + Fixed bug w. uninitialized image data when cropping outside the source image. + Use ImageShow to implement the Image.show method. Most notably, this picks the 'display' utility when available. It also allows application code to register new display utilities via the ImageShow registry. + Release the GIL in the PNG compressor (from Michael van Tellingen). + Revised JPEG CMYK handling. Always assume Adobe behaviour, both when reading and writing (based on a patch by Kevin Cazabon, and test data by Tim V. and Charlie Clark, and additional debugging by Michael van Tellingen). + Support for preserving ICC profiles (by Florian Böch via Tim Hatch). Florian writes: It's a beta, so still needs some testing, but should allow you to: - retain embedded ICC profiles when saving from/to JPEG, PNG, TIFF. Existing code doesn't need to be changed. - access embedded profiles in JPEG, PNG, PSD, TIFF. It also includes patches for TIFF to retain IPTC, Photoshop and XMP metadata when saving as TIFF again, read/write TIFF resolution information correctly, and to correct inverted CMYK JPEG files. + Fixed potential memory leak in median cut quantizer (from Evgeny Salmin). + Fixed OverflowError when reading upside-down BMP images. + Added resolution save option for PDF files. Andreas Kostyrka writes: I've included a patched PdfImagePlugin.py based on 1.1.6 as included in Ubuntu, that supports a "resolution" save option. Not great, but it makes the PDF saving more useful by allowing PDFs that are not exactly 72dpi. + Look for Tcl/Tk include files in version-specific include directory (from Encolpe Degoute). + Fixed grayscale rounding error in ImageColor.getcolor (from Tim Hatch). + Fixed calculation of mean value in ImageEnhance.Contrast (reported by "roop" and Scott David Daniels). + Fixed truetype positioning when first character has a negative left bearing (from Ned Batchelder): Ned writes: In PIL 1.1.6, ImageDraw.text will position the string incorrectly if the first character has a negative left bearing. To see the problem, show a string like "///" in an italic font. The first slash will be clipped at the left, and the string will be mis-positioned. + Fixed resolution unit bug in tiff reader/writer (based on code by Florian Höch, Gary Bloom, and others). + Added simple transparency support for RGB images (reported by Sebastian Spaeth). + Added support for Unicode filenames in ImageFont.truetype (from Donn Ingle). + Fixed potential crash in ImageFont.getname method (from Donn Ingle). + Fixed encoding issue in PIL/WalImageFile (from Santiago M. Mola). *** Changes from release 1.1.5 to 1.1.6 *** (1.1.6 released) + Fixed some 64-bit compatibility warnings for Python 2.5. + Added threading support for the Sane driver (from Abel Deuring). (1.1.6b2 released) + Added experimental "floodfill" function to the ImageDraw module (based on code by Eric Raymond). + The default arguments for "frombuffer" doesn't match "fromstring" and the documentation; this is a bug, and will most likely be fixed in a future version. In this release, PIL prints a warning message instead. To silence the warning, change any calls of the form "frombuffer(mode, size, data)" to frombuffer(mode, size, data, "raw", mode, 0, 1) + Added "fromarray" function, which takes an object implementing the NumPy array interface and creates a PIL Image from it. (from Travis Oliphant). + Added NumPy array interface support (__array_interface__) to the Image class (based on code by Travis Oliphant). This allows you to easily convert between PIL image memories and NumPy arrays: import numpy, Image im = Image.open('lena.jpg') a = numpy.asarray(im) # a is readonly im = Image.fromarray(a) + Fixed CMYK polarity for JPEG images, by treating all images as "Adobe CMYK" images. (thanks to Cesare Leonardi and Kevin Cazabon for samples, debugging, and patches). (1.1.6b1 released) + Added 'expand' option to the Image 'rotate' method. If true, the output image is made large enough to hold the entire rotated image. + Changed the ImageDraw 'line' method to always draw the last pixel in a polyline, independent of line angle. + Fixed bearing calculation and clipping in the ImageFont truetype renderer; this could lead to clipped text, or crashes in the low- level _imagingft module. (based on input from Adam Twardoch and others). + Added ImageQt wrapper module, for converting PIL Image objects to QImage objects in an efficient way. + Fixed 'getmodebands' to return the number of bands also for "PA" and "LA" modes. Added 'getmodebandnames' helper that return the band names. (1.1.6a2 released) + Added float/double support to the TIFF loader (from Russell Nelson). + Fixed broken use of realloc() in path.c (from Jan Matejek) + Added save support for Spider images (from William Baxter). + Fixed broken 'paste' and 'resize' operations in pildriver (from Bill Janssen). + Added support for duplex scanning to the Sane interface (Abel Deuring). (1.1.6a1 released) + Fixed a memory leak in "convert(mode)", when converting from L to P. + Added pixel access object. The "load" method now returns a access object that can be used to directly get and set pixel values, using ordinary [x, y] notation: pixel = im.load() v = pixel[x, y] pixel[x, y] = v If you're accessing more than a few pixels, this is a lot faster than using getpixel/putpixel. + Fixed building on Cygwin (from Miki Tebeka). + Fixed "point(callable)" on unloaded images (reported by Håkan Karlsson). + Fixed size bug in ImageWin.ImageWindow constructor (from Victor Reijs) + Fixed ImageMath float() and int() operations for Python 2.4 (reported by Don Rozenberg). + Fixed "RuntimeError: encoder error -8 in tostring" problem for wide "RGB", "I", and "F" images. + Fixed line width calculation. (1.1.6a0 released) + Fixed byte order issue in Image.paste(ink) (from Ka-Ping Yee). + Fixed off-by-0.5 errors in the ANTIALIAS code (based on input from Douglas Bagnall). + Added buffer interface support to the Path constructor. If a buffer is provided, it is assumed to contain a flat array of float coordinates (e.g. array.array('f', seq)). + Added new ImageMath module. + Fixed ImageOps.equalize when used with a small number of distinct values (reported by David Kirtley). + Fixed potential integer division in PSDraw.image (from Eric Etheridge). *** Changes from release 1.1 to 1.1.5 *** (1.1.5c2 and 1.1.5 final released) + Added experimental PERSPECTIVE transform method (from Jeff Breiden- bach). (1.1.5c1 released) + Make sure "thumbnail" never generates zero-wide or zero-high images (reported by Gene Skonicki) + Fixed a "getcolors" bug that could result in a zero count for some colors (reported by Richard Oudkerk). + Changed default "convert" palette to avoid "rounding errors" when round-tripping white source pixels (reported by Henryk Gerlach and Jeff Epler). (1.1.5b3 released) + Don't crash in "quantize" method if the number of colors requested is larger than 256. This release raises a ValueError exception; future versions may return a mode "RGB" image instead (reported by Richard Oudkerk). + Added WBMP read/write support (based on code by Duncan Booth). (1.1.5b2 released) + Added DPI read/write support to the PNG codec. The decoder sets the info["dpi"] attribute for PNG files with appropriate resolution settings. The encoder uses the "dpi" option (based on code by Niki Spahiev). + Added limited support for "point" mappings from mode "I" to mode "L". Only 16-bit values are supported (other values are clipped), the lookup table must contain exactly 65536 entries, and the mode argument must be set to "L". + Added support for Mac OS X icns files (based on code by Bob Ippolito). + Added "ModeFilter" support to the ImageFilter module. + Added support for Spider images (from William Baxter). See the comments in PIL/SpiderImagePlugin.py for more information on this format. (1.1.5b1 released) + Added new Sane release (from Ralph Heinkel). See the Sane/README and Sane/CHANGES files for more information. + Added experimental PngInfo chunk container to the PngImageFile module. This can be used to add arbitrary chunks to a PNG file. Create a PngInfo instance, use "add" or "add_text" to add chunks, and pass the instance as the "pnginfo" option when saving the file. + Added "getpalette" method. This returns the palette as a list, or None if the image has no palette. To modify the palette, use "getpalette" to fetch the current palette, modify the list, and put it back using "putpalette". + Added optional flattening to the ImagePath "tolist" method. tolist() or tolist(0) returns a list of 2-tuples, as before. tolist(1) returns a flattened list instead. (1.1.5a5 released) + Fixed BILINEAR/BICUBIC/ANTIALIAS filtering for mode "LA". + Added "getcolors()" method. This is similar to the existing histo- gram method, but looks at color values instead of individual layers, and returns an unsorted list of (count, color) tuples. By default, the method returns None if finds more than 256 colors. If you need to look for more colors, you can pass in a limit (this is used to allocate internal tables, so you probably don't want to pass in too large values). + Build improvements: Fixed building under AIX, improved detection of FreeType2 and Mac OS X framework libraries, and more. Many thanks to everyone who helped test the new "setup.py" script! (1.1.5a4 released) + The "save" method now looks for a file format driver before creating the file. + Don't use antialiased truetype fonts when drawing in mode "P", "I", and "F" images. + Rewrote the "setup.py" file. The new version scans for available support libraries, and configures both the libImaging core library and the bindings in one step. To use specific versions of the libraries, edit the ROOT variables in the setup.py file. + Removed threaded "show" viewer; use the old "show" implementation instead (Windows). + Added deprecation warnings to Image.offset, ImageDraw.setink, and ImageDraw.setfill. + Added width option to ImageDraw.line(). The current implementation works best for straight lines; it does not support line joins, so polylines won't look good. + ImageDraw.Draw is now a factory function instead of a class. If you need to create custom draw classes, inherit from the ImageDraw class. All other code should use the factory function. + Fixed loading of certain PCX files (problem reported by Greg Hamilton, who also provided samples). + Changed _imagingft.c to require FreeType 2.1 or newer. The module can still be built with earlier versions; see comments in _imagingft.c for details. (1.1.5a3 released) + Added 'getim' method, which returns a PyCObject wrapping an Imaging pointer. The description string is set to IMAGING_MAGIC. See Imaging.h for pointer and string declarations. + Fixed reading of TIFF JPEG images (problem reported by Ulrik Svensson). + Made ImageColor work under Python 1.5.2 + Fixed division by zero "equalize" on very small images (from Douglas Bagnall). (1.1.5a2 released) + The "paste" method now supports the alternative "paste(im, mask)" syntax (in this case, the box defaults to im's bounding box). + The "ImageFile.Parser" class now works also for PNG files with more than one IDAT block. + Added DPI read/write to the TIFF codec, and fixed writing of rational values. The decoder sets the info["dpi"] attribute for TIFF files with appropriate resolution settings. The encoder uses the "dpi" option. + Disable interlacing for small (or narrow) GIF images, to work around what appears to be a hard-to-find bug in PIL's GIF encoder. + Fixed writing of mode "P" PDF images. Made mode "1" PDF images smaller. + Made the XBM reader a bit more robust; the file may now start with a few whitespace characters. + Added support for enhanced metafiles to the WMF driver. The separate PILWMF kit lets you render both placeable WMF files and EMF files as raster images. See http://effbot.org/downloads#pilwmf (1.1.5a1 released) + Replaced broken WMF driver with a WMF stub plugin (see below). + Fixed writing of mode "1", "L", and "CMYK" PDF images (based on input from Nicholas Riley and others). + Fixed adaptive palette conversion for zero-width or zero-height images (from Chris Cogdon) + Fixed reading of PNG images from QuickTime 6 (from Paul Pharr) + Added support for StubImageFile plugins, including stub plugins for BUFR, FITS, GRIB, and HDF5 files. A stub plugin can identify a given file format, but relies on application code to open and save files in that format. + Added optional "encoding" argument to the ImageFont.truetype factory. This argument can be used to specify non-Unicode character maps for fonts that support that. For example, to draw text using the Microsoft Symbol font, use: font = ImageFont.truetype("symbol.ttf", 16, encoding="symb") draw.text((0, 0), unichr(0xF000 + 0xAA)) (note that the symbol font uses characters in the 0xF000-0xF0FF range) Common encodings are "unic" (Unicode), "symb" (Microsoft Symbol), "ADOB" (Adobe Standard), "ADBE" (Adobe Expert), and "armn" (Apple Roman). See the FreeType documentation for more information. + Made "putalpha" a bit more robust; you can now attach an alpha layer to a plain "L" or "RGB" image, and you can also specify constant alphas instead of alpha layers (using integers or colour names). + Added experimental "LA" mode support. An "LA" image is an "L" image with an attached transparency layer. Note that support for "LA" is not complete; some operations may fail or produce unexpected results. + Added "RankFilter", "MinFilter", "MedianFilter", and "MaxFilter" classes to the ImageFilter module. + Improved support for applications using multiple threads; PIL now releases the global interpreter lock for many CPU-intensive operations (based on work by Kevin Cazabon). + Ignore Unicode characters in the PCF loader (from Andres Polit) + Fixed typo in OleFileIO.loadfat, which could affect loading of FlashPix and Image Composer images (Daniel Haertle) + Fixed building on platforms that have Freetype but don't have Tcl/Tk (Jack Jansen, Luciano Nocera, Piet van Oostrum and others) + Added EXIF GPSInfo read support for JPEG files. To extract GPSInfo information, open the file, extract the exif dictionary, and check for the key 0x8825 (GPSInfo). If present, it contains a dictionary mapping GPS keys to GPS values. For a list of keys, see the EXIF specification. The "ExifTags" module contains a GPSTAGS dictionary mapping GPS tags to tag names. + Added DPI read support to the PCX and DCX codecs (info["dpi"]). + The "show" methods now uses a built-in image viewer on Windows. This viewer creates an instance of the ImageWindow class (see below) and keeps it running in a separate thread. NOTE: This was disabled in 1.1.5a4. + Added experimental "Window" and "ImageWindow" classes to the ImageWin module. These classes allow you to create a WCK-style toplevel window, and use it to display raster data. + Fixed some Python 1.5.2 issues (to build under 1.5.2, use the Makefile.pre.in/Setup.in approach) + Added support for the TIFF FillOrder tag. PIL can read mode "1", "L", "P" and "RGB" images with non-standard FillOrder (based on input from Jeff Breidenbach). (1.1.4 final released) + Fixed ImageTk build problem on Unix. (1.1.4b2 released) + Improved building on Mac OS X (from Jack Jansen). + Improved building on Windows with MinGW (from Klamer Shutte). + If no font is specified, ImageDraw now uses the embedded default font. Use the "load" or "truetype" methods to load a real font. + Added embedded default font to the ImageFont module (currently an 8-pixel Courier font, taken from the X window distribution). (1.1.4b1 released) + Added experimental EXIF support for JPEG files. To extract EXIF information from a JPEG file, open the file as usual, and call the "_getexif" method. If successful, this method returns a dictionary mapping EXIF TIFF tags to values. If the file does not contain EXIF data, the "_getexif" method returns None. The "ExifTags" module contains a dictionary mapping tags to tag names. This interface will most likely change in future versions. + Fixed a bug when using the "transparency" option with the GIF writer. + Added limited support for "bitfield compression" in BMP files and DIB buffers, for 15-bit, 16-bit, and 32-bit images. This also fixes a problem with ImageGrab module when copying screen- dumps from the clipboard on 15/16/32-bit displays. + Added experimental WAL (Quake 2 textures) loader. To use this loader, import WalImageFile and call the "open" method in that module. (1.1.4a4 released) + Added updated SANE driver (Andrew Kuchling, Abel Deuring) + Use Python's "mmap" module on non-Windows platforms to read some uncompressed formats using memory mapping. Also added a "frombuffer" function that allows you to access the contents of an existing string or buffer object as if it were an image object. + Fixed a memory leak that could appear when processing mode "P" images (from Pier Paolo Glave) + Ignore Unicode characters in the BDF loader (from Graham Dumpleton) (1.1.4a3 released; windows only) + Added experimental RGBA-on-RGB drawing support. To use RGBA colours on an RGB image, pass "RGBA" as the second string to the ImageDraw.Draw constructor. + Added support for non-ASCII strings (Latin-1) and Unicode to the truetype font renderer. + The ImageWin "Dib" object can now be constructed directly from an image object. + The ImageWin module now allows you use window handles as well as device contexts. To use a window handle, wrap the handle in an ImageWin.HWND object, and pass in this object instead of the device context. (1.1.4a2 released) + Improved support for 16-bit unsigned integer images (mode "I;16"). This includes TIFF reader support, and support for "getextrema" and "point" (from Klamer Shutte). + Made the BdfFontFile reader a bit more robust (from Kevin Cazabon and Dmitry Vasiliev) + Changed TIFF writer to always write Compression tag, even when using the default compression (from Greg Couch). + Added "show" support for Mac OS X (from Dan Wolfe). + Added clipboard support to the "ImageGrab" module (Windows only). The "grabclipboard" function returns an Image object, a list of filenames (not in 1.1.4), or None if neither was found. (1.1.4a1 released) + Improved support for drawing RGB data in palette images. You can now use RGB tuples or colour names (see below) when drawing in a mode "P" image. The drawing layer automatically assigns color indexes, as long as you don't use more than 256 unique colours. + Moved self test from MiniTest/test.py to ./selftest.py. + Added support for CSS3-style color strings to most places that accept colour codes/tuples. This includes the "ImageDraw" module, the Image "new" function, and the Image "paste" method. Colour strings can use one of the following formats: "#f00", "#ff0000", "rgb(255,0,0)", "rgb(100%,0%,0%)", "hsl(0, 100%, 50%)", or "red" (most X11-style colour names are supported). See the documentation for the "ImageColor" module for more information. + Fixed DCX decoder (based on input from Larry Bates) + Added "IptcImagePlugin.getiptcinfo" helper to extract IPTC/NAA newsphoto properties from JPEG, TIFF, or IPTC files. + Support for TrueType/OpenType fonts has been added to the standard distribution. You need the freetype 2.0 library. + Made the PCX reader a bit more robust when reading 2-bit and 4-bit PCX images with odd image sizes. + Added "Kernel" class to the ImageFilter module. This class allows you to filter images with user-defined 3x3 and 5x5 convolution kernels. + Added "putdata" support for mode "I", "F" and "RGB". + The GIF writer now supports the transparency option (from Denis Benoit). + A HTML version of the module documentation is now shipped with the source code distribution. You'll find the files in the Doc subdirectory. + Added support for Palm pixmaps (from Bill Janssen). This change was listed for 1.1.3, but the "PalmImagePlugin" driver didn't make it into the distribution. + Improved decoder error messages. (1.1.3 final released) + Made setup.py look for old versions of zlib. For some back- ground, see: http://www.gzip.org/zlib/advisory-2002-03-11.txt (1.1.3c2 released) + Added setup.py file (tested on Unix and Windows). You still need to build libImaging/imaging.lib in the traditional way, but the setup.py script takes care of the rest. The old Setup.in/Makefile.pre.in build method is still supported. + Fixed segmentation violation in ANTIALIAS filter (an internal buffer wasn't properly allocated). (1.1.3c1 released) + Added ANTIALIAS downsampling filter for high-quality "resize" and "thumbnail" operations. Also added filter option to the "thumbnail" operation; the default value is NEAREST, but this will most likely change in future versions. + Fixed plugin loader to be more robust if the __file__ variable isn't set. + Added seek/tell support (for layers) to the PhotoShop loader. Layer 0 is the main image. + Added new (but experimental) "ImageOps" module, which provides shortcuts for commonly used operations on entire images. + Don't mess up when loading PNG images if the decoder leaves data in the output buffer. This could cause internal errors on some PNG images, with some versions of ZLIB. (Bug report and patch provided by Bernhard Herzog.) + Don't mess up on Unicode filenames. + Don't mess up when drawing on big endian platforms. + Made the TIFF loader a bit more robust; it can now read some more slightly broken TIFF files (based on input from Ted Wright, Bob Klimek, and D. Alan Stewart) + Added OS/2 EMX build files (from Andrew MacIntyre) + Change "ImageFont" to reject image files if they don't have the right mode. Older versions could leak memory for "P" images. (Bug reported by Markus Gritsch). + Renamed some internal functions to avoid potential build problem on Mac OS X. + Added DL_EXPORT where relevant (for Cygwin, based on input from Robert Yodlowski) + (re)moved bogus __init__ call in BdfFontFile (bug spotted by Fred Clare) + Added "ImageGrab" support (Windows only) + Added support for XBM hotspots (based on code contributed by Bernhard Herzog). + Added write support for more TIFF tags, namely the Artist, Copyright, DateTime, ResolutionUnit, Software, XResolution and YResolution tags (from Greg Couch) + Added TransposedFont wrapper to ImageFont module + Added "optimize" flag to GIF encoder. If optimize is present and non-zero, PIL will work harder to create a small file. + Raise "EOFError" (not IndexError) when reading beyond the end of a TIFF sequence. + Support rewind ("seek(0)") for GIF and TIFF sequences. + Load grayscale GIF images as mode "L" + Added DPI read/write support to the JPEG codec. The decoder sets the info["dpi"] attribute for JPEG files with JFIF dpi settings. The encoder uses the "dpi" option: im = Image.open("file.jpg") dpi = im.info["dpi"] # raises KeyError if DPI not known im.save("out.jpg", dpi=dpi) Note that PIL doesn't always preserve the "info" attribute for normal image operations. (1.1.2c1 and 1.1.2 final released) + Adapted to Python 2.1. Among other things, all uses of the "regex" module has been repleased with "re". + Fixed attribute error when reading large PNG files (this bug was introduced in maintenance code released after the 1.1.1 release) + Ignore non-string objects in sys.path + Fixed Image.transform(EXTENT) for negative xoffsets + Fixed loading of image plugins if PIL is installed as a package. (The plugin loader now always looks in the directory where the Image.py module itself is found, even if that directory isn't on the standard search path) + The Png plugin has been added to the list of preloaded standard formats + Fixed bitmap/text drawing in fill mode. + Fixed "getextrema" to work also for multiband images. + Added transparency support for L and P images to the PNG codec. + Improved support for read-only images. The "load" method now sets the "readonly" attribute for memory-mapped images. Operations that modifies an image in place (such as "paste" and drawing operations) creates an in-memory copy of the image, if necessary. (before this change, any attempt to modify a memory-mapped image resulted in a core dump...) + Added special cases for lists everywhere PIL expects a sequence. This should speed up things like "putdata" and drawing operations. + The Image.offset method is deprecated. Use the ImageChops.offset function instead. + Changed ImageChops operators to copy palette and info dictionary from the first image argument. (1.1.1 released) + Additional fixes for Python 1.6/2.0, including TIFF "save" bug. + Changed "init" to properly load plugins when PIL is used as a package. + Fixed broken "show" method (on Unix) *** Changes from release 1.0 to 1.1 *** + Adapted to Python 1.6 ("append" and other method changes) + Fixed Image.paste when pasting with solid colour and matte layers ("L" or "RGBA" masks) (bug reported by Robert Kern) + To make it easier to distribute prebuilt versions of PIL, the tkinit binding stuff has been moved to a separate extension module, named "_imagingtk". *** Changes from release 0.3b2 to 1.0 final *** + If there's no 16-bit integer (like on a Cray T3E), set INT16 to the smallest integer available. Most of the library works just fine anyway (from Bill Crutchfield) + Tweaks to make drawing work on big-endian platforms. (1.0c2 released) + If PIL is built with the WITH_TKINTER flag, ImageTk can automatically hook into a standard Tkinter build. You no longer need to build your own Tkinter to use the ImageTk module. The old way still works, though. For more information, see Tk/install.txt. + Some tweaks to ImageTk to support multiple Tk interpreters (from Greg Couch). + ImageFont "load_path" now scans directory mentioned in .pth files (from Richard Jones). (1.0c1 released) + The TIFF plugin has been rewritten. The new plugin fully supports all major PIL image modes (including F and I). + The ImageFile module now includes a Parser class, which can be used to incrementally decode an image file (while down- loading it from the net, for example). See the handbook for details. + "show" now converts non-standard modes to "L" or "RGB" (as appropriate), rather than writing weird things to disk for "xv" to choke upon. (bug reported by Les Schaffer). (1.0b2 released) + Major speedups for rotate, transform(EXTENT), and transform(AFFINE) when using nearest neighbour resampling. + Modified ImageDraw to be compatible with the Arrow graphics interface. See the handbook for details. + PIL now automatically loads file codecs when used as a package (from The Dragon De Monsyne). Also included an __init__.py file in the standard distribution. + The GIF encoder has been modified to produce much smaller files. PIL now uses a run-length encoding method to encode GIF files. On a random selection of GIF images grabbed from the web, this version makes the images about twice as large as the original LZW files, where the earlier version made them over 5 times larger. YMMV, of course. + Added PCX write support (works with "1", "P", "L", and "RGB") + Added "bitmap" and "textsize" methods to ImageDraw. + Improved font rendering code. Fixed a bug or two, and moved most of the time critical stuff to C. + Removed "bdf2pil.py". Use "pilfont.py" instead! + Improved 16-bit support (still experimental, though). The following methods now support "I;16" and "I;16B" images: "getpixel", "copy", "convert" (to and from mode "I"), "resize", "rotate", and "transform" with nearest neighbour filters, and "save" using the IM format. The "new" and "open" functions also work as expected. On Windows, 16-bit files are memory mapped. NOTE: ALL other operations are still UNDEFINED on 16-bit images. + The "paste" method now supports constant sources. Just pass a colour value (a number or a tuple, depending on the target image mode) instead of the source image. This was in fact implemented in an inefficient way in earlier versions (the "paste" method generated a temporary source image if you passed it a colour instead of an image). In this version, this is handled on the C level instead. + Added experimental "RGBa" mode support. An "RGBa" image is an RGBA image where the colour components have have been premultipled with the alpha value. PIL allows you to convert an RGBA image to an RGBa image, and to paste RGBa images on top of RGB images. Since this saves a bunch of multiplications and shifts, it is typically about twice as fast an ordinary RGBA paste. + Eliminated extra conversion step when pasting "RGBA" or "RGBa" images on top of "RGB" images. + Fixed Image.BICUBIC resampling for "RGB" images. + Fixed PCX image file handler to properly read 8-bit PCX files (bug introduced in 1.0b1, reported by Bernhard Herzog) + Fixed PSDraw "image" method to restore the coordinate system. + Fixed "blend" problem when applied to images that was not already loaded (reported by Edward C. Jones) + Fixed -f option to "pilconvert.py" (from Anthony Baxter) (1.0b1 released) + Added Toby J. Sargeant's quantization package. To enable quantization, use the "palette" option to "convert": imOut = im.convert("P", palette=Image.ADAPTIVE) This can be used with "L", "P", and "RGB" images. In this version, dithering cannot be used with adaptive palettes. Note: ADAPTIVE currently maps to median cut quantization with 256 colours. The quantization package also contains a maximum coverage quantizer, which will be supported by future versions of PIL. + Added Eric S. Raymond's "pildriver" image calculator to the distribution. See the docstring for more information. + The "offset" method no longer dumps core if given positive offsets (from Charles Waldman). + Fixed a resource leak that could cause ImageWin to run out of GDI resources (from Roger Burnham). + Added "arc", "chord", and "pieslice" methods to ImageDraw (inspired by code contributed by Richard Jones). + Added experimental 16-bit support, via modes "I;16" (little endian data) and "I;16B" (big endian). Only a few methods properly support such images (see above). + Added XV thumbnail file handler (from Gene Cash). + Fixed BMP image file handler to handle palette images with small palettes (from Rob Hooft). + Fixed Sun raster file handler for palette images (from Charles Waldman). + Improved various internal error messages. + Fixed Path constructor to handle arbitrary sequence objects. This also affects the ImageDraw class (from Richard Jones). + Fixed a bug in JpegDecode that caused PIL to report "decoder error -2" for some progressive JPEG files (reported by Magnus Källström, who also provided samples). + Fixed a bug in JpegImagePlugin that caused PIL to hang when loading JPEG files using 16-bit quantization tables. + The Image "transform" method now supports Image.QUAD transforms. The data argument is an 8-tuple giving the upper left, lower left, lower right, and upper right corner of the source quadri- lateral. Also added Image.MESH transform which takes a list of quadrilaterals. + The Image "resize", "rotate", and "transform" methods now support Image.BILINEAR (2x2) and Image.BICUBIC (4x4) resampling filters. Filters can be used with all transform methods. + The ImageDraw "rectangle" method now includes both the right and the bottom edges when drawing filled rectangles. + The TGA decoder now works properly for runlength encoded images which have more than one byte per pixel. + "getbands" on an YCbCr image now returns ("Y", "Cb", "Cr") + Some file drivers didn't handle the optional "modify" argument to the load method. This resulted in exceptions when you used "paste" (and other methods that modify an image in place) on a newly opened file. *** Changes from release 0.2 (b5) to 0.3 (b2) *** (0.3b2 released) The test suite includes 825 individual tests. + An Image "getbands" method has been added. It returns a tuple containing the individual band names for this image. To figure out how many bands an image has, use "len(im.getbands())". + An Image "putpixel" method has been added. + The Image "point" method can now be used to convert "L" images to any other format, via a lookup table. That table should contain 256 values for each band in the output image. + Some file drivers (including FLI/FLC, GIF, and IM) accidently overwrote the offset method with an internal attribute. All drivers have been updated to use private attributes where possible. + The Image "histogram" method now works for "I" and "F" images. For these modes, PIL divides the range between the min and max values used in the image into 256 bins. You can also pass in your own min and max values via the "extrema" option: h = im.histogram(extrema=(0, 255)) + An Image "getextrema" method has been added. It returns the min and max values used in the image. In this release, this works for single band images only. + Changed the PNG driver to load and save mode "I" images as 16-bit images. When saving, values outside the range 0..65535 are clipped. + Fixed ImageFont.py to work with the new "pilfont" compiler. + Added JPEG "save" and "draft" support for mode "YCbCr" images. Note that if you save an "YCbCr" image as a JPEG file and read it back, it is read as an RGB file. To get around this, you can use the "draft" method: im = Image.open("color.jpg") im.draft("YCbCr", im.size) + Read "RGBA" TGA images. Also fixed the orientation bug; all images should now come out the right way. + Changed mode name (and internal representation) from "YCrCb" to "YCbCr" (!) *** WARNING: MAY BREAK EXISTING CODE *** (0.3b1 released) The test suite includes 750 individual tests. + The "pilfont" package is now included in the standard PIL distribution. The pilfont utility can be used to convert X BDF and PCF raster font files to a format understood by the ImageFont module. + GIF files are now interlaced by default. To write a non-interlaced file, pass interlace=0 to the "save" method. + The default string format has changed for the "fromstring" and "tostring" methods. *** WARNING: MAY BREAK EXISTING CODE *** NOTE: If no extra arguments are given, the first line in the string buffer is the top line of the image, instead of the bottom line. For RGB images, the string now contains 3 bytes per pixel instead of 4. These changes were made to make the methods compatible with the "fromstring" factory function. To get the old behaviour, use the following syntax: data = im.tostring("raw", "RGBX", 0, -1) im.fromstring(data, "raw", "RGBX", 0, -1) + "new" no longer gives a MemoryError if the width or height is zero (this only happened on platforms where malloc(0) or calloc(0) returns NULL). + "new" now adds a default palette object to "P" images. + You can now convert directly between all modes supported by PIL. When converting colour images to "P", PIL defaults to a "web" palette and dithering. When converting greyscale images to "1", PIL uses a thresholding and dithering. + Added a "dither" option to "convert". By default, "convert" uses floyd-steinberg error diffusion for "P" and "1" targets, so this option is only used to *disable* dithering. Allowed values are NONE (no dithering) or FLOYDSTEINBERG (default). imOut = im.convert("P", dither=Image.NONE) + Added a full set of "I" decoders. You can use "fromstring" (and file decoders) to read any standard integer type as an "I" image. + Added some support for "YCbCr" images (creation, conversion from/to "L" and "RGB", IM YCC load/save) + "getpixel" now works properly with fractional coordinates. + ImageDraw "setink" now works with "I", "F", "RGB", "RGBA", "RGBX", "CMYK", and "YCbCr" images. + ImImagePlugin no longer attaches palettes to "RGB" images. + Various minor fixes. (0.3a4 released) + Added experimental IPTC/NAA support. + Eliminated AttributeError exceptions after "crop" (from Skip Montanaro) + Reads some uncompressed formats via memory mapping (this is currently supported on Win32 only) + Fixed some last minute glitches in the last alpha release (Types instead of types in Image.py, version numbers, etc.) + Eliminated some more bogus compiler warnings. + Various fixes to make PIL compile and run smoother on Macs (from Jack Jansen). + Fixed "fromstring" and "tostring" for mode "I" images. (0.3a3 released) The test suite includes 530 individual tests. + Eliminated unexpected side-effect in "paste" with matte. "paste" now works properly also if compiled with "gcc". + Adapted to Python 1.5 (build issues only) + Fixed the ImageDraw "point" method to draw also the last point (!). + Added "I" and "RGBX" support to Image.new. + The plugin path is now properly prepended to the module search path when a plugin module is imported. + Added "draw" method to the ImageWin.Dib class. This is used by Topaz to print images on Windows printers. + "convert" now supports conversions from "P" to "1" and "F". + "paste" can now take a colour instead of an image as the first argument. The colour must match the colour argument given to the new function, and match the mode of the target image. + Fixed "paste" to allow a mask also for mode "F" images. + The BMP driver now saves mode "1" images. When loading images, the mode is set to "L" for 8-bit files with greyscale palettes, and to "P" for other 8-bit files. + The IM driver now reads and saves "1" images (file modes "0 1" or "L 1"). + The JPEG and GIF drivers now saves "1" images. For JPEG, the image is saved as 8-bit greyscale (it will load as mode "L"). For GIF, the image will be loaded as a "P" image. + Fixed a potential buffer overrun in the GIF encoder. (0.3a2 released) The test suite includes 400 individual tests. + Improvements to the test suite revealed a number of minor bugs, which are all fixed. Note that crop/paste, 32-bit ImageDraw, and ImageFont are still weak spots in this release. + Added "putpalette" method to the Image class. You can use this to add or modify the palette for "P" and "L" images. If a palette is added to an "L" image, it is automatically converted to a "P" image. + Fixed ImageDraw to properly handle 32-bit image memories ("RGB", "RGBA", "CMYK", "F") + Fixed "fromstring" and "tostring" not to mess up the mode attribute in default mode. + Changed ImPlatform.h to work on CRAY's (don't have one at home, so I haven't tried it). The previous version assumed that either "short" or "int" were 16-bit wide. PIL still won't compile on platforms where neither "short", "int" nor "long" are 32-bit wide. + Added file= and data= keyword arguments to PhotoImage and BitmapImage. This allows you to use them as drop-in replacements for the corre- sponding Tkinter classes. + Removed bogus references to the crack coder (ImagingCrack). (0.3a1 released) + Make sure image is loaded in "tostring". + Added floating point packer (native 32-bit floats only). *** Changes from release 0.1b1 to 0.2 (b5) *** + Modified "fromstring" and "tostring" methods to use file codecs. Also added "fromstring" factory method to create an image directly from data in a string. + Added support for 32-bit floating point images (mode "F"). You can convert between "L" and "F" images, and apply a subset of the available image processing methods on the "F" image. You can also read virtually any data format into a floating point image memory; see the section on "Decoding Floating Point Data" in the handbook for more information. (0.2b5 released; on windows only) + Fixed the tobitmap() method to work properly for small bitmaps. + Added RMS and standard deviation to the ImageStat.Stat class. Also modified the constructor to take an optional feature mask, and also to accept either an image or a list containing the histogram data. + The BitmapImage code in ImageTk can now use a special bitmap decoder, which has to be patched into Tk. See the "Tk/pilbitmap.txt" file for details. If not installed, bitmaps are transferred to Tk as XBM strings. + The PhotoImage code in ImageTk now uses a Tcl command ("PyImagingPaste") instead of a special image type. This gives somewhat better performance, and also allows PIL to support transparency. *** WARNING: TKAPPINIT MUST BE MODIFIED *** + ImageTk now honours the alpha layer in RGBA images. Only fully transparent pixels are made transparent (that is, the alpha layer is treated as a mask). To treat the alpha laters as a matte, you must paste the image on the background before handing it over to ImageTk. + Added McIdas reader (supports 8-bit images only). + PIL now preloads drivers for BMP, GIF, JPEG, PPM, and TIFF. As long as you only load and save these formats, you don't have to wait for a full scan for drivers. To force scanning, call the Image.init() function. + The "seek" and "tell" methods are now always available, also for single-frame images. + Added optional mask argument to histogram method. The mask may be an "1" or "L" image with the same size as the original image. Only pixels where the mask is non-zero are included in the histogram. + The "paste" method now allows you to specify only the lower left corner (a 2-tuple), instead of the full region (a 4-tuple). + Reverted to old plugin scanning model; now scans all directory names in the path when looking for plugins. + Added PIXAR raster support. Only uncompressed ("dumped") RGB images can currently be read (based on information provided by Greg Coats). + Added FlashPix (FPX) read support. Reads all pixel formats, but only the highest resolution is read, and the viewing transform is currently ignored. + Made PNG encoding somewhat more efficient in "optimize" mode; a bug in 0.2b4 didn't enable all predictor filters when optimized storage were requested. + Added Microsoft Image Composer (MIC) read support. When opened, the first sprite in the file is loaded. You can use the seek method to load additional sprites from the file. + Properly reads "P" and "CMYK" PSD images. + "pilconvert" no longer optimizes by default; use the -o option to make the file as small as possible (at the expense of speed); use the -q option to set the quality when compressing to JPEG. + Fixed "crop" not to drop the palette for "P" images. + Added and verified FLC support. + Paste with "L" or "RGBA" alpha is now several times faster on most platforms. + Changed Image.new() to initialize the image to black, as described in the handbook. To get an uninitialized image, use None as the colour. + Fixed the PDF encoder to produce a valid header; Acrobat no longer complains when you load PDF images created by PIL. + PIL only scans fully-qualified directory names in the path when looking for plugins. *** WARNING: MAY BREAK EXISTING CODE *** + Faster implementation of "save" used when filename is given, or when file object has "fileno" and "flush" methods. + Don't crash in "crop" if region extends outside the source image. + Eliminated a massive memory leak in the "save" function. + The GIF decoder doesn't crash if the code size is set to an illegal value. This could happen since another bug didn't handle local palettes properly if they didn't have the same size as the global palette (not very common). + Added predictor support (TIFF 6.0 section 14) to the TIFF decoder. + Fixed palette and padding problems in BMP driver. Now properly writes "1", "L", "P" and "RGB" images. + Fixed getpixel()/getdata() to return correct pixel values. + Added PSD (PhotoShop) read support. Reads both uncompressed and compressed images of most types. + Added GIF write support (writes "uncompressed" GIF files only, due to unresolvable licensing issues). The "gifmaker.py" script can be used to create GIF animations. + Reads 8-bit "L" and "P" TGA images. Also reads 16-bit "RGB" images. + Added FLI read support. This driver has only been tested on a few FLI samples. + Reads 2-bit and 4-bit PCX images. + Added MSP read and write support. Both version 1 and 2 can be read, but only version 1 (uncompressed) files are written. + Fixed a bug in the FLI/FLC identification code that caused the driver to raise an exception when parsing valid FLI/FLC files. + Improved performance when loading file format plugins, and when opening files. + Added GIF animation support, via the "seek" and "tell" methods. You can use "player.py" to play an animated GIF file. + Removed MNG support, since the spec is changing faster than I can change the code. I've added support for the experimental ARG format instead. Contact me for more information on this format. + Added keyword options to the "save" method. The following options are currently supported: format option description -------------------------------------------------------- JPEG optimize minimize output file at the expense of compression speed. JPEG progressive enable progressive output. the option value is ignored. JPEG quality set compression quality (1-100). the default value is 75. JPEG smooth smooth dithered images. value is strengh (1-100). default is off (0). PNG optimize minimize output file at the expense of compression speed. Expect more options in future releases. Also note that file writers silently ignore unknown options. + Plugged memory leaks in the PNG and TIFF decoders. + Added PNG write support. + (internal) RGB unpackers and converters now set the pad byte to 255 (full opacity). + Properly handles the "transparency" property for GIF, PNG and XPM files. + Added a "putalpha" method, allowing you to attach a "1" or "L" image as the alpha layer to an "RGBA" image. + Various improvements to the sample scripts: "pilconvert" Carries out some extra tricks in order to make the resulting file as small as possible. "explode" (NEW) Split an image sequence into individual frames. "gifmaker" (NEW) Convert a sequence file into a GIF animation. Note that the GIF encoder create "uncompressed" GIF files, so animations created by this script are rather large (typically 2-5 times the compressed sizes). "image2py" (NEW) Convert a single image to a python module. See comments in this script for details. "player" If multiple images are given on the command line, they are interpreted as frames in a sequence. The script assumes that they all have the same size. Also note that this script now can play FLI/FLC and GIF animations. This player can also execute embedded Python animation applets (ARG format only). "viewer" Transparent images ("P" with transparency property, and "RGBA") are superimposed on the standard Tk back- ground. + Fixed colour argument to "new". For multilayer images, pass a tuple: (Red, Green, Blue), (Red, Green, Blue, Alpha), or (Cyan, Magenta, Yellow, Black). + Added XPM (X pixmap) read support. (0.2b3 released) + Added MNG (multi-image network graphics) read support. "Ming" is a proposed animation standard, based on the PNG file format. You can use the "player" sample script to display some flavours of this format. The MNG standard is still under development, as is this driver. More information, including sample files, can be found at <ftp://swrinde.nde.swri.edu/pub/mng> + Added a "verify" method to images loaded from file. This method scans the file for errors, without actually decoding the image data, and raises a suitable exception if it finds any problems. Currently implemented for PNG and MNG files only. + Added support for interlaced GIF images. + Added PNG read support -- if linked with the ZLIB compression library, PIL reads all kinds of PNG images, except interlaced files. + Improved PNG identification support -- doesn't mess up on unknown chunks, identifies all possible PNG modes, and verifies checksum on PNG header chunks. + Added an experimental reader for placable Windows Meta Files (WMF). This reader is still very incomplete, but it illustrates how PIL's drawing capabilities can be used to render vector and metafile formats. + Added restricted drivers for images from Image Tools (greyscale only) and LabEye/IFUNC (common interchange modes only). + Some minor improvements to the sample scripts provided in the "Scripts" directory. + The test images have been moved to the "Images" directory. (0.2b2 released) (0.2b1 released; Windows only) + Fixed filling of complex polygons. The ImageDraw "line" and "polygon" methods also accept Path objects. + The ImageTk "PhotoImage" object can now be constructed directly from an image. You can also pass the object itself to Tkinter, instead of using the "image" attribute. Finally, using "paste" on a displayed image automatically updates the display. + The ImageTk "BitmapImage" object allows you to create transparent overlays from 1-bit images. You can pass the object itself to Tkinter. The constructor takes the same arguments as the Tkinter BitmapImage class; use the "foreground" option to set the colour of the overlay. + Added a "putdata" method to the Image class. This can be used to load a 1-layer image with data from a sequence object or a string. An optional floating point scale and offset can be used to adjust the data to fit into the 8-bit pixel range. Also see the "getdata" method. + Added the EXTENT method to the Image "transform" method. This can be used to quickly crop, stretch, shrink, or mirror a subregion from another image. + Adapted to Python 1.4. + Added a project makefile for Visual C++ 4.x. This allows you to easily build a dynamically linked version of PIL for Windows 95 and NT. + A Tk "booster" patch for Windows is available. It gives dramatic performance improvements for some displays. Has been tested with Tk 4.2 only, but is likely to work with Tk 4.1 as well. See the Tk subdirectory for details. + You can now save 1-bit images in the XBM format. In addition, the Image class now provides a "tobitmap" method which returns a string containing an XBM representation of the image. Quite handy to use with Tk. + More conversions, including "RGB" to "1" and more. (0.2a1 released) + Where earlier versions accepted lists, this version accepts arbitrary Python sequences (including strings, in some cases). A few resource leaks were plugged in the process. + The Image "paste" method now allows the box to extend outside the target image. The size of the box, the image to be pasted, and the optional mask must still match. + The ImageDraw module now supports filled polygons, outlined and filled ellipses, and text. Font support is rudimentary, though. + The Image "point" method now takes an optional mode argument, allowing you to convert the image while translating it. Currently, this can only be used to convert "L" or "P" images to "1" images (creating thresholded images or "matte" masks). + An Image "getpixel" method has been added. For single band images, it returns the pixel value at a given position as an integer. For n-band images, it returns an n-tuple of integers. + An Image "getdata" method has been added. It returns a sequence object representing the image as a 1-dimensional array. Only len() and [] can be used with this sequence. This method returns a reference to the existing image data, so changes in the image will be immediately reflected in the sequence object. + Fixed alignment problems in the Windows BMP writer. + If converting an "RGB" image to "RGB" or "L", you can give a second argument containing a colour conversion matrix. + An Image "getbbox" method has been added. It returns the bounding box of data in an image, considering the value 0 as background. + An Image "offset" method has been added. It returns a new image where the contents of the image have been offset the given distance in X and/or Y direction. Data wraps between edges. + Saves PDF images. The driver creates a binary PDF 1.1 files, using JPEG compression for "L", "RGB", and "CMYK" images, and hex encoding (same as for PostScript) for other formats. + The "paste" method now accepts "1" masks. Zero means transparent, any other pixel value means opaque. This is faster than using an "L" transparency mask. + Properly writes EPS files (and properly prints images to postscript printers as well). + Reads 4-bit BMP files, as well as 4 and 8-bit Windows ICO and CUR files. Cursor animations are not supported. + Fixed alignment problems in the Sun raster loader. + Added "draft" and "thumbnail" methods. The draft method is used to optimize loading of JPEG and PCD files, the thumbnail method is used to create a thumbnail representation of an image. + Added Windows display support, via the ImageWin class (see the handbook for details). + Added raster conversion for EPS files. This requires GNU or Aladdin Ghostscript, and probably works on UNIX only. + Reads PhotoCD (PCD) images. The base resolution (768x512) can be read from a PhotoCD file. + Eliminated some compiler warnings. Bindings now compile cleanly in C++ mode. Note that the Imaging library itself must be compiled in C mode. + Added "bdf2pil.py", which converts BDF fonts into images with associated metrics. This is definitely work in progress. For info, see description in script for details. + Fixed a bug in the "ImageEnhance.py" module. + Fixed a bug in the netpbm save hack in "GifImagePlugin.py" + Fixed 90 and 270 degree rotation of rectangular images. + Properly reads 8-bit TIFF palette-color images. + Reads plane separated RGB and CMYK TIFF images. + Added driver debug mode. This is enabled by setting Image.DEBUG to a non-zero value. Try the -D option to "pilfile.py" and see what happens. + Don't crash on "atend" constructs in PostScript files. + Only the Image module imports _imaging directly. Other modules should refer to the binding module as "Image.core". *** Changes from release 0.0 to 0.1 (b1) *** + A handbook is available (distributed separately). + The coordinate system is changed so that (0,0) is now located in the upper left corner. This is in compliancy with ISO 12087 and 90% of all other image processing and graphics libraries. + Modes "1" (bilevel) and "P" (palette) have been introduced. Note that bilevel images are stored with one byte per pixel. + The Image "crop" and "paste" methods now accepts None as the box argument, to refer to the full image (self, that is). + The Image "crop" method now works properly. + The Image "point" method is now available. You can use either a lookup table or a function taking one argument. + The Image join function has been renamed to "merge". + An Image "composite" function has been added. It is identical to copy() followed by paste(mask). + An Image "eval" function has been added. It is currently identical to point(function); that is, only a single image can be processed. + A set of channel operations has been added. See the "ImageChops" module, test_chops.py, and the handbook for details. + Added the "pilconvert" utility, which converts image files. Note that the number of output formats are still quite restricted. + Added the "pilfile" utility, which quickly identifies image files (without loading them, in most cases). + Added the "pilprint" utility, which prints image files to Postscript printers. + Added a rudimentary version of the "pilview" utility, which is simple image viewer based on Tk. Only File/Exit and Image/Next works properly. + An interface to Tk has been added. See "Lib/ImageTk.py" and README for details. + An interface to Jack Jansen's Img library has been added (thanks to Jack). This allows you to read images through the Img extensions file format handlers. See the file "Lib/ImgExtImagePlugin.py" for details. + Postscript printing is provided through the PSDraw module. See the handbook for details.
    Источник: https://pypi.org/project/Pillow/2.2.1/

    OLAP PivotTable Extensions is an Excel add-in which extends the functionality of PivotTables on Analysis Services cubes. The Excel API has certain PivotTable functionality which is not exposed in the UI. OLAP PivotTable Extensions provides an interface for some of this functionality. It also adds some new features like searching cubes, configuring default settings, and filtering to a list in your clipboard. The add-in can be launched from the following menu option in the right-click menu for PivotTables:

    This page is currently under construction as we migrate off our old Codeplex page is still on Codeplex.

    Private Calculated Members

    Any calculated members which are part of the Analysis Service cube on the server can be added to PivotTables. But there is no built-in UI to define your own MDX calculations. Adding extra Excel calculations in the cells surrounding the PivotTable has some limitations as they are not part of the PivotTable and can be wiped out if the dimensions of the PivotTable change, and plain Excel calculations must only operate on data visible in the PivotTable.

    OLAP PivotTable Extensions let you define your own calculated measures which are private to that particular PivotTable:

    Those calculations appear in the PivotTable just like any other calculations:

    They appear in the Field List pane at the very top under the Values grouping:

    For help with advanced calculation properties for these private PivotTable calculations, or for help with MDX expressions, refer to our Calculations Help page.

    Thankfully, in Excel 2013 Microsoft does provide a UI for building MDX calculations for the first time. It even includes a drag and drop field and function list. So use OLAP PivotTable Extensions in Excel 2013 for some of the other features it offers, which are detailed below. Unfortunately, Excel 2013 removed support for adding MDX calculated measures to PivotTables on Power Pivot models.

    Best Practice: In order to ensure a single version of the truth, it is a best practice to define important calculations as part of the cube source code. But some calculations like simple ratios or differences may clutter the cube and may be more appropriate if defined in the PivotTable itself. In addition, certain ad hoc research or prototyping may be more appropriate to be done as calculations private to a PivotTable until they are finalized and are ready to be added to the cube source code.


    Calculations Library

    Since all calculations you define are private to that one PivotTable, OLAP PivotTable Extensions automatically creates a Calculations Library for you which contains all the calculations you create. This allows you to pick any previous calculation you’ve used from a dropdown and add it to the current PivotTable:

    You can also perform Calculation Library maintenance by importing, exporting, and deleting calculations:

    View PivotTable MDX

    If a PivotTable is performing poorly or returning incorrect numbers, it may be necessary for the Analysis Services administrator to troubleshoot the MDX query which the PivotTable is using. The MDX tab of the OLAP PivotTable Extensions dialog shows you this MDX.

    Starting with release 0.7.3, you can check the checkbox in the top right in order to send your MDX query to a web service for formatting, thanks to Nick Medveditskov. Note: This web service is currently down with no ETL on when it will be back up.

    The MDX is exactly what is sent to the server with one exception. Any private calculations you’ve created for your PivotTable are defined as session calculated members. The MDX query exposed on the MDX tab displays the formulas for these calculations as query calculated members in the WITH clause of the MDX query. This allows an administrator to copy and paste the MDX query and troubleshoot it more easily in Management Studio or MDX Studio.

    Filtering PivotTable to a List

    A common scenario is having a list of items you wish to research in a PivotTable. Instead of manually checking each item in the filter dropdown, you can use the Filter List feature from OLAP PivotTable Extensions:

    Changing PivotTable Defaults

    Certain settings must be manually changed after creating a new PivotTable. For instance, if your dimensions have calculated members you wish to see in your PivotTable, you must manually right click on the PivotTable, choose PivotTable Options, flip to the Display tab, then check “Show calculated members from OLAP server”. The Defaults tab of OLAP PivotTable Extensions lets you default this setting to be on in any new PivotTables you create in the future. If checked, it also automatically sets “Refresh data when opening the file” on the connection properties:

    Note that Excel 2016 added a new options screen where you can set many more PivotTable formatting and functional defaults.


    Finding what you’re looking for in a cube can sometimes be challenging, but the Search feature of OLAP PivotTable Extensions can help. It lets you text search the items in the Field List and their descriptions. It also lets you text search the dimension members in your cube.

    For more detailed information about the Search feature, see the dedicated Search page.

    Distributing PivotTables

    OLAP PivotTable Extensions need only be installed on computers which need to create new private PivotTable calculations. After those calculations have been defined, the PivotTable can be distributed to others without problem. If you distribute the Excel workbook to other Excel users, they will be able to continue designing and manipulating that PivotTable without problem. If published to Excel Services, the private calculations you define will still be active in the PivotTable.

    The Calculation Library does not need to be distributed unless other users wish to start brand new PivotTables and reuse certain calculations you have created using OLAP PivotTable Extensions.

    Using Excel 2007/2010/2013/2016 and OLAP PivotTable Extensions to edit an Excel 2003 format .xls workbook with a PivotTable and add a private calculated member will work. This PivotTable can be saved and distributed to users of Excel 2003 and the private calculated member will show up and work.

    Other Features

    Other features include:

    The following features are supported by version of Excel:

    Installation Requirements

    Troubleshooting Installation

    If OLAP PivotTable Extensions is not visible in Excel, please consult the Troubleshooting Installation page.


    To report bugs or suggestions, please post an item to the Issues List tab.

    To ask questions about MDX formulas such as the formulas used for private PivotTable calculations, see our Calculations Help page, or post a question to the MDX tag on StackOverflow or the Microsoft Analysis Services Forum, or contact your Analysis Services administrator.

    To contact the author privately go to the contact page.


    To keep up-to-date with future enhancements, subscribe to the following RSS feeds:

    Acknowledgments and Additional Information

    For links to other resources about PivotTables, view our Acknowledgments and Additional Information page.

    Источник: https://olappivottableextensions.github.io/

    Axure RP 10

    Infinite Interactions,
    Unlimited Power

    Axure RP is the only UX tool that gives UX professionals the power to build realistic, functional prototypes.

    Download Your Free 30-day Trial


    Interactive Possibilities

    Create UX prototypes with unlimited combinations of event triggers, conditions, and actions to truly explore digital experiences.

    Interaction Events

    Use mouse, touch, and keyboard events to trigger interactions

    Conditional Logic

    Add conditions and variables to take your prototypes to the next level

    Dynamic Content for realistic UX prototypes

    Leverage powerful Axure RP widgets to create working forms, sortable grids, and dynamic interfaces

    Working Forms

    Working text fields, droplists, and radio buttons are just a drag-and-drop away

    Multi-State Containers

    Use multi-state dynamic panels to make everything from popups to scrollable, swipe-able, mobile screens

    Data-Driven Interfaces

    Create data-driven tables and grids that you can dynamically sort and filter with the repeater widget

    Adaptive Views

    Design for desktop, tablets, and phones on a single page and automatically show the appropriate view

    All This Power and No Code Required

    Making realistic, functional, UX prototypes has never been easier.

    Download Axure RP 10

    Download a free trial and see why professionals choose Axure RP.

    Download Now

    As a UX Designer and Researcher, I’m able to prototype high-fidelity solutions that allow the team to visualize interactions and functionality that feel very real. Since switching to Axure, we’ve been able to get much higher quality user feedback because of the robust prototypes and realistic experience that Axure allows us to create.

    Emily, UX Researcher

    A complete tool for UX Professionals

    Create diagrams, customer journeys, wireframes, and other UX documentation right next to your rich, functional UX prototypes.

    Flow Diagrams

    Built-in flow shapes and connectors that magically reflow make it easy to make diagrams in RP

    Notes and Specifications

    Add notes to capture requirements and specifications for developers and stakeholders

    Share Functional Prototypes with just a click

    Click a button and instantly publish your RP UX prototypes to Axure Cloud to share, inspect, and gather feedback from your team.

    Comments and Feedback

    Gather feedback directly on-screen and use Slack and Microsoft Teams integrations for notifications.

    Developer Inspect

    Streamline hand off to developers with automated redlines, design assets, and CSS inspection.

    Get Your Team on the Same Page

    Embed fully-functional prototypes directly into Jira and Confluence, and use our Microsoft Teams and Slack integrations keep everyone up to date on the latest activity.

    Design Tool Integrations


    Easily copy frames from Figma into Axure RP to bring your designs to life.

    Learn More

    Adobe XD

    Import layers from Adobe XD to Axure RP, editable and ready to add interactions.

    Learn More


    Quickly bring artboards from Sketch into RP to create beautiful UX prototypes.

    Learn More

    I’ve been using Axure for more than a decade and love it! It is straightforward and enables low fidelity as well as high fidelity prototyping. The extensive interactions and integrations allow me to quickly prototype realistic user experiences.

    Ravid, UX Project Manager

    Download Axure RP 10

    When you’re ready to see how Axure RP can help you and your team, download the free 30-day fully-functional trial for PC or Mac.

    Download Now
    Источник: https://www.axure.com/

    SystemTools Hyena Enterprise 14.0.4 Keygen + License Crack [Latest] Full Version

    SystemTools Hyena Keygen is a useful and efficient network management software that offers total control over all users connected to the network and server. SystemTools Hyena can be installed on all versions of the Windows operating system, including Windows Server. You can also increase network security using Hyena software. By logging in to the software, you control the user as the main administrator and can access local groups and domains, manage folders, files and directories, printers, and more.

    SystemTools Hyena 14.0.4 Keygen + License Crack [Latest]

    Why users like SystemTools Hyena 14.0.4 Keygen + License Crack [Latest]?

    SystemTools Hyena 14 Crack is a tool designed to simplify and centralize almost all of your management tasks and provide new features for system administration. This function will be provided in a single, centralized, and simple product that System Tools Hyena Full Keygen uses. The application is now used worldwide by tens of thousands of system administrators because the software is one of the most necessary tools for all administrators.

    SystemTools Hyena 13 Crack is a very useful software in the field of network management, which can be said on almost all networks, servers, domains, and user management tools, and more. Dear user, Using this sophisticated software, you will be able to regularly manage domains, printers, files, etc. (local or global), users who are connected to the network. Note that this software can also function as a direct administrator. Working with this software is very simple and you can download concise software, start strong network management on your system.

    Is SystemTools Hyena 14.0.4 Crack [Latest] best than other tools?

    SystemTools Hyena alternative is known throughout the industry as one of the main Windows management utilities. Using the default Windows administration tool to manage a medium or large Windows 200x network or Active Directory environment can be a challenge. Add multiple domains, hundreds or thousands of servers, workstations, and users, and before you know it, many things can get out of hand. Hyenas are designed to simplify and centralize almost all daily management tasks while providing new features for system administration. SystemTools Hyena Serial key uses an interface like Explorer for all operations, including clicking on each menu in the form of an easy-to-use pop-up. This application can convert almost all types of windows, such as Windows NT, Windows 2000, Windows XP / Vista, Windows 7, Windows 8 or Windows Server 2003/2008/2012.

    SystemTools Hyena Keygen is a tool designed to simplify and centralize almost all of your management tasks and provide new features for system administration. This function will be provided in a single, centralized, and simple product that System Tools Hyena Full Keygen uses. The application is now used worldwide by tens of thousands of system administrators because the software is one of the most necessary tools for all administrators. Hyenas are designed to simplify and centralize almost all daily management tasks while providing new features for system administration. This functionality is provided in a single product, centralized, and easy to use. Used today by tens of thousands of system administrators worldwide, Hyena is the only tool that every administrator cannot fail to have a very strong environment.

    What’re New Features are including in the latest version?

    • Synchronization action
    • Support for sharing, domains
    • Add a date and time of departure
    • A powerful network management tool
    • Application in network management
    • Compatible with all hardware systems
    • Compatible with all Windows systems
    • The simplicity of working with software
    • Has a remote control program like VNC
    • Super volume compared to other software
    • Add special symbols to the output file name
    • Ability to support printer and print operations
    • The output of open files and file version information
    • Manage Windows over NT or XP, 2000, 2003, etc.
    • Add multiple domains, hundreds or thousands of servers,
    • Perform network management at the fastest and slowest speeds
    • Ability to find running services and quickly display startup information
    • SystemTools Hyena Keygen Includes Microsoft access and exiting reporting options
    • The ability to manipulate and inspect the system and quickly detect security breaches
    • Locator for all operations, including the right mouse button in a sensitive text menu for all objects
    • Supports management of users, groups, computers, services, devices, events, files, sessions, open files, disk space, messages, output, processes,

    SystemTools Hyena 14.0.3 Crack [Latest]

    How to install and register?

    1. Download the SystemTools Hyena 14.0.4 + Keygen installation under the link.
    2. After downloading the installation, install it normally.
    3. After installing the complete software, run it.
    4. Now use the Gavin Serial key and register the software.
    5. You did it. Now start using the program.

    Which System requirements are essential for SystemTools Hyena Keygen?

    • System requirements are 1.2 GHz CPU, 1 GB RAM, 500 MB HDD free space, and Internet connection for database update.
    • SystemTools Hyena for Windows is compatible with Windows XP, Vista, 10, 8, 7, and 8.1.
    • SystemTools Hyena for Mac is compatible with Mac OSX 10.6 or higher.

    SystemTools Hyena 14.0.4 Keygen + License Crack [Latest] Download Link is Below.

    Category: Internet Security ToolИсточник: https://warezcrack.net/systemtools-hyena-keygen-crack/

    Notice: Undefined variable: z_bot in /sites/travelafter.us/crack/visual-importer-enterprise-crack.php on line 109

    Notice: Undefined variable: z_empty in /sites/travelafter.us/crack/visual-importer-enterprise-crack.php on line 109

    Posted inCrack

    1 thoughts on “Visual Importer Enterprise Crack”

    • FULL Software Plus says:

      В @G OttВ  A year ago I signed up for I think was window insider program where I get all windows beta stuff and I suppose that's why I automatically got win 11. They've changed your cut and paste with scissor icon and box. When you right click you now have to click more options before you can select what you want to do. Yesterday my paint program was changed as well to some washed out new version which I dont like as I use paint a lot .I'm not a power user but all my programs work as normal. I do have backup drives for win 10 and win 11.

    Leave a Reply

    Your email address will not be published. Required fields are marked *