mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-10-02 07:47:25 +07:00
Apply API notes planned for 2019.2
GitOrigin-RevId: 979edb0c2c360b27cbac2cf313fbca182dbfeba0
This commit is contained in:
committed by
intellij-monorepo-bot
parent
ccfadedd24
commit
a2230a6e6b
-12
@@ -16,7 +16,6 @@
|
||||
package com.jetbrains.python.documentation;
|
||||
|
||||
import com.intellij.openapi.extensions.ExtensionPointName;
|
||||
import com.intellij.openapi.projectRoots.Sdk;
|
||||
import com.intellij.psi.PsiElement;
|
||||
import com.intellij.psi.PsiNamedElement;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@@ -34,17 +33,6 @@ public interface PythonDocumentationLinkProvider {
|
||||
@Nullable
|
||||
String getExternalDocumentationUrl(PsiElement element, PsiElement originalElement);
|
||||
|
||||
/**
|
||||
* This method was used to provide the fallback URL in case the one returned by {@link #getExternalDocumentationUrl(PsiElement, PsiElement)}
|
||||
* doesn't exist. This check is not performed any longer to avoid UI sluggishness.
|
||||
*
|
||||
* @deprecated Do your best to provide a valid URL in {@link #getExternalDocumentationUrl(PsiElement, PsiElement)}. To be removed in 2019.2.
|
||||
*/
|
||||
@Deprecated
|
||||
default String getExternalDocumentationRoot(Sdk sdk) {
|
||||
return "";
|
||||
}
|
||||
|
||||
@Nullable
|
||||
default Function<Document, String> quickDocExtractor(@NotNull PsiNamedElement namedElement) {
|
||||
return null;
|
||||
|
||||
@@ -18,17 +18,6 @@ public abstract class PyInspectionExtension {
|
||||
public static final ExtensionPointName<PyInspectionExtension> EP_NAME = ExtensionPointName.create("Pythonid.inspectionExtension");
|
||||
|
||||
public boolean ignoreUnused(PsiElement local, @NotNull TypeEvalContext evalContext) {
|
||||
@SuppressWarnings("deprecation")
|
||||
final boolean result = ignoreUnused(local);
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* @deprecated use {@link #ignoreUnused(PsiElement, TypeEvalContext)} instead.
|
||||
* Will be removed in 2019.2
|
||||
*/
|
||||
@Deprecated
|
||||
public boolean ignoreUnused(PsiElement local) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -44,22 +33,13 @@ public abstract class PyInspectionExtension {
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* @deprecated Use {@link PyInspectionExtension#ignoreMethodParameters(PyFunction, TypeEvalContext)} instead.
|
||||
* This method will be removed in 2019.2.
|
||||
*/
|
||||
@Deprecated
|
||||
public boolean ignoreMethodParameters(@NotNull PyFunction function) {
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param function function that is inspecting in {@link com.jetbrains.python.inspections.PyMethodParametersInspection}
|
||||
* @param context type evaluation context
|
||||
* @return true if the passed function could be ignored
|
||||
*/
|
||||
public boolean ignoreMethodParameters(@NotNull PyFunction function, @NotNull TypeEvalContext context) {
|
||||
return ignoreMethodParameters(function);
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean ignorePackageNameInRequirements(@NotNull PyQualifiedExpression importedExpression) {
|
||||
|
||||
@@ -25,7 +25,6 @@ import com.jetbrains.python.psi.PyClass;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@@ -38,17 +37,6 @@ public interface PyClassStub extends NamedStub<PyClass> {
|
||||
@NotNull
|
||||
Map<QualifiedName, QualifiedName> getSuperClasses();
|
||||
|
||||
/**
|
||||
* Returns literal text of the subscription expressions in the base classes list.
|
||||
* It's intended to be used for resolving generic types and type parameters in PEP 484 notation.
|
||||
*
|
||||
* @deprecated Use {@link PyClassStub#getSuperClassesText()} instead.
|
||||
* This method will be removed in 2019.2.
|
||||
*/
|
||||
@NotNull
|
||||
@Deprecated
|
||||
List<String> getSubscriptedSuperClasses();
|
||||
|
||||
@Nullable
|
||||
QualifiedName getMetaClass();
|
||||
|
||||
@@ -60,12 +48,9 @@ public interface PyClassStub extends NamedStub<PyClass> {
|
||||
|
||||
/**
|
||||
* @return literal text of expressions in the base classes list.
|
||||
* @apiNote This method will be marked as abstract in 2019.2.
|
||||
*/
|
||||
@NotNull
|
||||
default List<String> getSuperClassesText() {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
List<String> getSuperClassesText();
|
||||
|
||||
/**
|
||||
* @deprecated It is our internal API, try to avoid using it.
|
||||
|
||||
+2
-2
@@ -968,8 +968,8 @@ public class PyStdlibDocumentationLinkProvider implements PythonDocumentationLin
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getExternalDocumentationRoot(Sdk sdk) {
|
||||
@NotNull
|
||||
private static String getExternalDocumentationRoot(@NotNull Sdk sdk) {
|
||||
final String versionString = sdk.getVersionString();
|
||||
if (versionString != null && StringUtil.startsWithIgnoreCase(versionString, "jython")) {
|
||||
return "http://jython.org/docs/library/";
|
||||
|
||||
@@ -62,7 +62,7 @@ public class PyFileElementType extends IStubFileElementType<PyFileStub> {
|
||||
@Override
|
||||
public int getStubVersion() {
|
||||
// Don't forget to update versions of indexes that use the updated stub-based elements
|
||||
return 71;
|
||||
return 72;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
|
||||
@@ -7,7 +7,7 @@ import com.intellij.psi.PsiElement;
|
||||
import com.intellij.psi.stubs.*;
|
||||
import com.intellij.psi.util.QualifiedName;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import com.jetbrains.python.PyElementTypes;
|
||||
import com.jetbrains.python.PyStubElementTypes;
|
||||
import com.jetbrains.python.psi.*;
|
||||
import com.jetbrains.python.psi.impl.PyClassImpl;
|
||||
import com.jetbrains.python.psi.impl.PyPsiUtils;
|
||||
@@ -54,7 +54,6 @@ public class PyClassElementType extends PyStubElementType<PyClassStub, PyClass>
|
||||
return new PyClassStubImpl(psi.getName(),
|
||||
parentStub,
|
||||
getSuperClassQNames(psi),
|
||||
ContainerUtil.map(getSubscriptedSuperClasses(psi), PsiElement::getText),
|
||||
ContainerUtil.map(psi.getSuperClassExpressions(), PsiElement::getText),
|
||||
PyPsiUtils.asQualifiedName(psi.getMetaClassExpression()),
|
||||
psi.getOwnSlots(),
|
||||
@@ -134,13 +133,9 @@ public class PyClassElementType extends PyStubElementType<PyClassStub, PyClass>
|
||||
QualifiedName.serialize(entry.getValue(), dataStream);
|
||||
}
|
||||
|
||||
final List<String> subscriptedBaseClassesText = pyClassStub.getSubscriptedSuperClasses();
|
||||
final List<String> baseClassesText = pyClassStub.getSuperClassesText();
|
||||
|
||||
dataStream.writeByte(baseClassesText.size());
|
||||
for (String text : baseClassesText) {
|
||||
boolean isParametrized = subscriptedBaseClassesText.contains(text);
|
||||
dataStream.writeBoolean(isParametrized);
|
||||
dataStream.writeName(text);
|
||||
}
|
||||
|
||||
@@ -166,15 +161,9 @@ public class PyClassElementType extends PyStubElementType<PyClassStub, PyClass>
|
||||
}
|
||||
|
||||
final byte baseClassesCount = dataStream.readByte();
|
||||
final ArrayList<String> parametrizedBaseClasses = new ArrayList<>();
|
||||
final ArrayList<String> baseClassesText = new ArrayList<>();
|
||||
for (int i = 0; i < baseClassesCount; i++) {
|
||||
final boolean isParametrized = dataStream.readBoolean();
|
||||
String ref = dataStream.readNameString();
|
||||
baseClassesText.add(ref);
|
||||
if (ref != null && isParametrized) {
|
||||
parametrizedBaseClasses.add(ref);
|
||||
}
|
||||
baseClassesText.add(dataStream.readNameString());
|
||||
}
|
||||
|
||||
|
||||
@@ -187,7 +176,7 @@ public class PyClassElementType extends PyStubElementType<PyClassStub, PyClass>
|
||||
|
||||
final PyCustomClassStub customStub = deserializeCustomStub(dataStream);
|
||||
|
||||
return new PyClassStubImpl(name, parentStub, superClasses, parametrizedBaseClasses, baseClassesText, metaClass, slots, docString,
|
||||
return new PyClassStubImpl(name, parentStub, superClasses, baseClassesText, metaClass, slots, docString,
|
||||
getStubElementType(), customStub);
|
||||
}
|
||||
|
||||
@@ -213,7 +202,7 @@ public class PyClassElementType extends PyStubElementType<PyClassStub, PyClass>
|
||||
|
||||
@NotNull
|
||||
protected IStubElementType getStubElementType() {
|
||||
return PyElementTypes.CLASS_DECLARATION;
|
||||
return PyStubElementTypes.CLASS_DECLARATION;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
|
||||
@@ -11,7 +11,6 @@ import com.jetbrains.python.psi.stubs.PyClassStub;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@@ -25,7 +24,6 @@ public class PyClassStubImpl extends StubBase<PyClass> implements PyClassStub {
|
||||
|
||||
@NotNull
|
||||
private final Map<QualifiedName, QualifiedName> mySuperClasses;
|
||||
private final List<String> mySubscriptedSuperClassesText;
|
||||
|
||||
@Nullable
|
||||
private final QualifiedName myMetaClass;
|
||||
@@ -42,31 +40,9 @@ public class PyClassStubImpl extends StubBase<PyClass> implements PyClassStub {
|
||||
@Nullable
|
||||
private final PyCustomClassStub myCustomStub;
|
||||
|
||||
/**
|
||||
* @deprecated Use {@link PyClassStubImpl#PyClassStubImpl(String, StubElement, Map, List, QualifiedName, List, String, IStubElementType, PyCustomClassStub)} instead.
|
||||
* This constructor will be removed in 2019.2.
|
||||
*/
|
||||
@Deprecated
|
||||
public PyClassStubImpl(@Nullable String name,
|
||||
@Nullable StubElement parentStub,
|
||||
@NotNull Map<QualifiedName, QualifiedName> superClasses,
|
||||
@NotNull List<String> subscriptedSuperClassesText,
|
||||
@Nullable QualifiedName metaClass,
|
||||
@Nullable List<String> slots,
|
||||
@Nullable String docString,
|
||||
@NotNull IStubElementType stubElementType) {
|
||||
this(name, parentStub, superClasses, subscriptedSuperClassesText, Collections.emptyList(), metaClass, slots, docString, stubElementType, null);
|
||||
}
|
||||
|
||||
/**
|
||||
* @deprecated Use {@link PyClassStubImpl#PyClassStubImpl(String, StubElement, Map, List, QualifiedName, List, String, IStubElementType, PyCustomClassStub)} instead.
|
||||
* This constructor will be removed in 2019.2.
|
||||
*/
|
||||
@Deprecated
|
||||
public PyClassStubImpl(@Nullable String name,
|
||||
@Nullable StubElement parentStub,
|
||||
@NotNull Map<QualifiedName, QualifiedName> superClasses,
|
||||
@NotNull List<String> subscriptedSuperClassesText,
|
||||
@NotNull List<String> superClassesText,
|
||||
@Nullable QualifiedName metaClass,
|
||||
@Nullable List<String> slots,
|
||||
@@ -76,7 +52,6 @@ public class PyClassStubImpl extends StubBase<PyClass> implements PyClassStub {
|
||||
super(parentStub, stubElementType);
|
||||
myName = name;
|
||||
mySuperClasses = superClasses;
|
||||
mySubscriptedSuperClassesText = subscriptedSuperClassesText;
|
||||
mySuperClassesText = superClassesText;
|
||||
myMetaClass = metaClass;
|
||||
mySlots = slots;
|
||||
@@ -84,18 +59,6 @@ public class PyClassStubImpl extends StubBase<PyClass> implements PyClassStub {
|
||||
myCustomStub = customStub;
|
||||
}
|
||||
|
||||
public PyClassStubImpl(@Nullable String name,
|
||||
@Nullable StubElement parentStub,
|
||||
@NotNull Map<QualifiedName, QualifiedName> superClasses,
|
||||
@NotNull List<String> superClassesText,
|
||||
@Nullable QualifiedName metaClass,
|
||||
@Nullable List<String> slots,
|
||||
@Nullable String docString,
|
||||
@NotNull IStubElementType stubElementType,
|
||||
@Nullable PyCustomClassStub customStub) {
|
||||
this(name, parentStub, superClasses, Collections.emptyList(), superClassesText, metaClass, slots, docString, stubElementType, customStub);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Nullable
|
||||
public String getName() {
|
||||
@@ -108,12 +71,6 @@ public class PyClassStubImpl extends StubBase<PyClass> implements PyClassStub {
|
||||
return mySuperClasses;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public List<String> getSubscriptedSuperClasses() {
|
||||
return mySubscriptedSuperClassesText;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public QualifiedName getMetaClass() {
|
||||
|
||||
@@ -56,14 +56,6 @@ public abstract class PythonSdkFlavor {
|
||||
PythonEnvUtil.addToPythonPath(envs, pythonPathList);
|
||||
}
|
||||
|
||||
/**
|
||||
* @deprecated Use {@link #suggestHomePaths(Module)}. To be removed in 2019.2.
|
||||
*/
|
||||
@Deprecated
|
||||
public Collection<String> suggestHomePaths() {
|
||||
return suggestHomePaths(null);
|
||||
}
|
||||
|
||||
public Collection<String> suggestHomePaths(@Nullable Module module) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
from typing import Generic, TypeVar
|
||||
|
||||
T = TypeVar('T')
|
||||
V = TypeVar('V')
|
||||
|
||||
|
||||
class Class(Generic[T, V]):
|
||||
pass
|
||||
@@ -846,17 +846,6 @@ public class PyStubsTest extends PyTestCase {
|
||||
}
|
||||
}
|
||||
|
||||
// PY-18816
|
||||
public void testParametrizedBaseClass() {
|
||||
final PyFile file = getTestFile();
|
||||
final PyClass genericClass = file.findTopLevelClass("Class");
|
||||
final PyClassStub stub = genericClass.getStub();
|
||||
assertNotNull(stub);
|
||||
final List<String> genericBases = stub.getSubscriptedSuperClasses();
|
||||
assertContainsOrdered(genericBases, "Generic[T, V]");
|
||||
assertNotParsed(file);
|
||||
}
|
||||
|
||||
// PY-25655
|
||||
public void testBaseClassText() {
|
||||
final PyFile file = getTestFile();
|
||||
@@ -888,7 +877,7 @@ public class PyStubsTest extends PyTestCase {
|
||||
final PyFile file = getTestFile();
|
||||
final PyFunction func = file.findTopLevelFunction("func");
|
||||
final PyFunctionStub funcStub = func.getStub();
|
||||
assertNull(funcStub.findChildStubByType(PyElementTypes.ANNOTATION));
|
||||
assertNull(funcStub.findChildStubByType(PyStubElementTypes.ANNOTATION));
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user