Skip to content

Commit

Permalink
Breaking: Remove "UseLegacyStretchBehaviour" functions (facebook#1368)
Browse files Browse the repository at this point in the history
Summary:
Pull Request resolved: facebook#1368

X-link: facebook/react-native#39372

These were marked as deprecated as part of the public Yoga 2.0 release, and were alredy emitting deprecation warnings. Remove them.

Reviewed By: javache

Differential Revision: D49131250

fbshipit-source-id: 178828b49f1e4a6dc0620669b7cb3bbc522b9444
  • Loading branch information
NickGerleman authored and facebook-github-bot committed Sep 12, 2023
1 parent 965d04c commit e8ea313
Show file tree
Hide file tree
Showing 11 changed files with 1 addition and 105 deletions.
12 changes: 0 additions & 12 deletions java/com/facebook/yoga/YogaConfig.java
Original file line number Diff line number Diff line change
Expand Up @@ -18,18 +18,6 @@ public abstract class YogaConfig {
public abstract void setPrintTreeFlag(boolean enable);

public abstract void setPointScaleFactor(float pixelsInPoint);
/**
* Yoga previously had an error where containers would take the maximum space possible instead of the minimum
* like they are supposed to. In practice this resulted in implicit behaviour similar to align-self: stretch;
* Because this was such a long-standing bug we must allow legacy users to switch back to this behaviour.
*
* @deprecated "setUseLegacyStretchBehaviour" will be removed in the next release. Usage should be replaced with
* "setErrata(YogaErrata.ALL)" to opt out of all future breaking conformance fixes, or
* "setErrata(YogaErrata.STRETCH_FLEX_BASIS)" to opt out of the specific conformance fix previously disabled by
* "UseLegacyStretchBehaviour".
*/
@Deprecated
public abstract void setUseLegacyStretchBehaviour(boolean useLegacyStretchBehaviour);

public abstract void setErrata(YogaErrata errata);

Expand Down
9 changes: 0 additions & 9 deletions java/com/facebook/yoga/YogaConfigJNIBase.java
Original file line number Diff line number Diff line change
Expand Up @@ -43,15 +43,6 @@ public void setPointScaleFactor(float pixelsInPoint) {
YogaNative.jni_YGConfigSetPointScaleFactorJNI(mNativePointer, pixelsInPoint);
}

/**
* Yoga previously had an error where containers would take the maximum space possible instead of the minimum
* like they are supposed to. In practice this resulted in implicit behaviour similar to align-self: stretch;
* Because this was such a long-standing bug we must allow legacy users to switch back to this behaviour.
*/
public void setUseLegacyStretchBehaviour(boolean useLegacyStretchBehaviour) {
YogaNative.jni_YGConfigSetUseLegacyStretchBehaviourJNI(mNativePointer, useLegacyStretchBehaviour);
}

public void setErrata(YogaErrata errata) {
YogaNative.jni_YGConfigSetErrataJNI(mNativePointer, errata.intValue());
}
Expand Down
1 change: 0 additions & 1 deletion java/com/facebook/yoga/YogaNative.java
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,6 @@ public class YogaNative {
static native void jni_YGConfigSetUseWebDefaultsJNI(long nativePointer, boolean useWebDefaults);
static native void jni_YGConfigSetPrintTreeFlagJNI(long nativePointer, boolean enable);
static native void jni_YGConfigSetPointScaleFactorJNI(long nativePointer, float pixelsInPoint);
static native void jni_YGConfigSetUseLegacyStretchBehaviourJNI(long nativePointer, boolean useLegacyStretchBehaviour);
static native void jni_YGConfigSetErrataJNI(long nativePointer, int errata);
static native int jni_YGConfigGetErrataJNI(long nativePointer);
static native void jni_YGConfigSetLoggerJNI(long nativePointer, YogaLogger logger);
Expand Down
15 changes: 0 additions & 15 deletions java/jni/YGJNIVanilla.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -93,18 +93,6 @@ static void jni_YGConfigSetPointScaleFactorJNI(
YGConfigSetPointScaleFactor(config, pixelsInPoint);
}

static void jni_YGConfigSetUseLegacyStretchBehaviourJNI(
JNIEnv* /*env*/,
jobject /*obj*/,
jlong nativePointer,
jboolean useLegacyStretchBehaviour) {
const YGConfigRef config = _jlong2YGConfigRef(nativePointer);
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecated"
YGConfigSetUseLegacyStretchBehaviour(config, useLegacyStretchBehaviour);
#pragma clang diagnostic pop
}

static void jni_YGConfigSetErrataJNI(
JNIEnv* /*env*/,
jobject /*obj*/,
Expand Down Expand Up @@ -790,9 +778,6 @@ static JNINativeMethod methods[] = {
{"jni_YGConfigSetPointScaleFactorJNI",
"(JF)V",
(void*) jni_YGConfigSetPointScaleFactorJNI},
{"jni_YGConfigSetUseLegacyStretchBehaviourJNI",
"(JZ)V",
(void*) jni_YGConfigSetUseLegacyStretchBehaviourJNI},
{"jni_YGConfigSetErrataJNI", "(JI)V", (void*) jni_YGConfigSetErrataJNI},
{"jni_YGConfigGetErrataJNI", "(J)I", (void*) jni_YGConfigGetErrataJNI},
{"jni_YGConfigSetLoggerJNI",
Expand Down
2 changes: 1 addition & 1 deletion java/tests/com/facebook/yoga/YogaNodeTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -292,7 +292,7 @@ public void directionIsPassedThrough() {
@Test
public void testResetApiShouldResetAllLayoutOutputs() {
YogaConfig config = YogaConfigFactory.create();
config.setUseLegacyStretchBehaviour(true);
config.setErrata(YogaErrata.STRETCH_FLEX_BASIS);
YogaNode node = createNode(config);
node.setWidth(100);
node.setHeight(100);
Expand Down
14 changes: 0 additions & 14 deletions javascript/src/Config.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -32,13 +32,6 @@ void Config::setPointScaleFactor(float pixelsInPoint) {
YGConfigSetPointScaleFactor(m_config, pixelsInPoint);
}

void Config::setUseLegacyStretchBehaviour(bool useLegacyStretchBehaviour) {
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecated"
YGConfigSetUseLegacyStretchBehaviour(m_config, useLegacyStretchBehaviour);
#pragma clang diagnostic pop
}

void Config::setErrata(int errata) {
YGConfigSetErrata(m_config, static_cast<YGErrata>(errata));
}
Expand All @@ -52,13 +45,6 @@ bool Config::isExperimentalFeatureEnabled(int feature) const {
m_config, static_cast<YGExperimentalFeature>(feature));
}

bool Config::useLegacyStretchBehaviour() const {
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecated"
return YGConfigGetUseLegacyStretchBehaviour(m_config);
#pragma clang diagnostic pop
}

int Config::getErrata() const {
return static_cast<int>(YGConfigGetErrata(m_config));
}
Expand Down
2 changes: 0 additions & 2 deletions javascript/src/Config.h
Original file line number Diff line number Diff line change
Expand Up @@ -32,13 +32,11 @@ class Config {
public: // Setters
void setExperimentalFeatureEnabled(int feature, bool enabled);
void setPointScaleFactor(float pixelsInPoint);
void setUseLegacyStretchBehaviour(bool useLegacyStretchBehaviour);
void setErrata(int errata);
void setUseWebDefaults(bool useWebDefaults);

public: // Getters
bool isExperimentalFeatureEnabled(int feature) const;
bool useLegacyStretchBehaviour() const;
int getErrata() const;
bool useWebDefaults() const;

Expand Down
3 changes: 0 additions & 3 deletions javascript/src/embind.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -32,13 +32,10 @@ EMSCRIPTEN_BINDINGS(YOGA_LAYOUT) {
"setExperimentalFeatureEnabled",
&Config::setExperimentalFeatureEnabled)
.function("setPointScaleFactor", &Config::setPointScaleFactor)
.function(
"setUseLegacyStretchBehaviour", &Config::setUseLegacyStretchBehaviour)
.function("setErrata", &Config::setErrata)
.function("setUseWebDefaults", &Config::setUseWebDefaults)
.function(
"isExperimentalFeatureEnabled", &Config::isExperimentalFeatureEnabled)
.function("useLegacyStretchBehaviour", &Config::useLegacyStretchBehaviour)
.function("getErrata", &Config::getErrata)
.function("useWebDefaults", &Config::useWebDefaults);

Expand Down
12 changes: 0 additions & 12 deletions javascript/src/wrapAssembly.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -53,18 +53,6 @@ export type Config = {
enabled: boolean,
): void;
setPointScaleFactor(factor: number): void;
/**
* @deprecated Please use "getErrata()"
*/
useLegacyStretchBehaviour(): boolean;
/**
* @deprecated "setUseLegacyStretchBehaviour" will be removed in the next
* release. Usage should be replaced with "setErrata(ERRATA_ALL)" to opt out
* of all future breaking conformance fixes, or
* "setErrata(ERRATA_STRETCH_FLEX_BASIS)" to opt out of the specific
* conformance fix previously disabled by "UseLegacyStretchBehaviour".
*/
setUseLegacyStretchBehaviour(useLegacyStretchBehaviour: boolean): void;
getErrata(): Errata;
setErrata(errata: Errata): void;
useWebDefaults(): boolean;
Expand Down
15 changes: 0 additions & 15 deletions yoga/Yoga.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1017,21 +1017,6 @@ YOGA_EXPORT void YGConfigSetUseWebDefaults(
resolveRef(config)->setUseWebDefaults(enabled);
}

YOGA_EXPORT bool YGConfigGetUseLegacyStretchBehaviour(
const YGConfigConstRef config) {
return resolveRef(config)->hasErrata(YGErrataStretchFlexBasis);
}

YOGA_EXPORT void YGConfigSetUseLegacyStretchBehaviour(
const YGConfigRef config,
const bool useLegacyStretchBehaviour) {
if (useLegacyStretchBehaviour) {
resolveRef(config)->addErrata(YGErrataStretchFlexBasis);
} else {
resolveRef(config)->removeErrata(YGErrataStretchFlexBasis);
}
}

bool YGConfigGetUseWebDefaults(const YGConfigConstRef config) {
return resolveRef(config)->useWebDefaults();
}
Expand Down
21 changes: 0 additions & 21 deletions yoga/Yoga.h
Original file line number Diff line number Diff line change
Expand Up @@ -306,27 +306,6 @@ WIN_EXPORT void YGConfigSetPointScaleFactor(
float pixelsInPoint);
WIN_EXPORT float YGConfigGetPointScaleFactor(YGConfigConstRef config);

// Yoga previously had an error where containers would take the maximum space
// possible instead of the minimum like they are supposed to. In practice this
// resulted in implicit behaviour similar to align-self: stretch; Because this
// was such a long-standing bug we must allow legacy users to switch back to
// this behaviour.
WIN_EXPORT YG_DEPRECATED(
"Please use "
"\"YGConfigGetErrata()\"") bool YGConfigGetUseLegacyStretchBehaviour(YGConfigConstRef
config);
WIN_EXPORT
YG_DEPRECATED(
"\"YGConfigSetUseLegacyStretchBehaviour\" will be removed in the next "
"release. Usage should be replaced with \"YGConfigSetErrata(YGErrataAll)\" "
"to opt out of all future breaking conformance fixes, or "
"\"YGConfigSetErrata(YGErrataStretchFlexBasis)\" to opt out of the "
"specific conformance fix previously disabled by "
"\"UseLegacyStretchBehaviour\".")
void YGConfigSetUseLegacyStretchBehaviour(
YGConfigRef config,
bool useLegacyStretchBehaviour);

// YGConfig
WIN_EXPORT YGConfigRef YGConfigNew(void);
WIN_EXPORT void YGConfigFree(YGConfigRef config);
Expand Down

0 comments on commit e8ea313

Please sign in to comment.