References to issues.qgis.org updated

This commit is contained in:
Jorge Gustavo Rocha 2019-06-12 00:10:43 +01:00
parent a9e3950841
commit 38c8e757aa
76 changed files with 125 additions and 131 deletions

13
BUGS
View File

@ -1,14 +1,11 @@
Help I think I found a bug!
---------------------------
If you find a bug in QGIS, you can search for it
If you find a bug in QGIS, first check if it has been reported:
https://issues.qgis.org/projects/qgis/search?issues=1
If you can't find an existing ticket, report it using the QGIS ticket/bug database at:
https://issues.qgis.org/projects/qgis/issues/new
https://github.com/qgis/QGIS/issues
If you can't find an existing ticket, report a new one, using the bug report template provided.
Some hints about when you should file a bug:
@ -22,9 +19,7 @@ Some hints about when you should file a bug:
behave doesn't match ours. Hey we are all humans it can happen...
- Always check that your bug has not already been filed by someone else since
dealing with duplicate tickets causes a lot of time wasting.
- Always provide contact details and make sure you are subscribed to the
ticket entry (either by adding yourself to CC field or by logging in before
filing the ticket).
- Be prepared to provided further feedback after the initial triage.
- Don't be offended if we don't see tickets as having the same priority as you
do. While we appreciate it's inconvenient if some issue prevents you doing
your work, we need to take the big picture view of things and focus on

View File

@ -227,7 +227,7 @@ IF(WITH_CORE)
# https://sourceforge.net/p/mingw-w64/bugs/527/
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80816
# also OpenBSD has no thread_local support, see https://issues.qgis.org/issues/17351
# also OpenBSD has no thread_local support, see https://github.com/qgis/QGIS/issues/25248
ELSE (MINGW OR CMAKE_SYSTEM_NAME STREQUAL "OpenBSD")
IF (WITH_THREAD_LOCAL)

View File

@ -1,6 +1,6 @@
---
Bug-Database: https://issues.qgis.org/projects/qgis/issues
Bug-Submit: https://issues.qgis.org/projects/qgis/issues/new
Bug-Database: https://github.com/qgis/QGIS/issues
Bug-Submit: https://github.com/qgis/QGIS/issues
Contact: qgis-developer@lists.osgeo.org
Donation: https://qgis.org/en/site/getinvolved/donations.html
Name: QGIS

View File

@ -59,9 +59,8 @@ users and developers.
\section index_bugs Bug Reporting
If you think you have found a bug, please report it using our <a
href="https://issues.qgis.org/projects/qgis">bug tracker</a>. When reporting bugs,
please include some contact information in case we need help with replicating
your issue.
href="https://github.com/qgis/QGIS/issues">bug tracker</a>. When reporting bugs,
please be available to follow up on your initial report.
\section index_ircchannel IRC channel
Some QGIS users and developers can also often be found in the

View File

@ -10,7 +10,7 @@
<metadata_license>MIT</metadata_license>
<project_license>GPL-2.0+</project_license>
<url type="bugtracker">https://issues.qgis.org/projects/qgis/issues/</url>
<url type="bugtracker">https://github.com/qgis/QGIS/issues</url>
<url type="donation">https://qgis.org/en/site/getinvolved/donations.html</url>
<url type="faq">https://qgis.org/en/site/getinvolved/faq/index.html</url>
<url type="help">https://qgis.org/en/docs/index.html</url>

View File

@ -9,7 +9,7 @@ icon=images/MetaSearch.svg
author=Tom Kralidis
email=tomkralidis@gmail.com
tags=web,catalog,service,metadata,csw
homepage=http://qgis.org/
homepage=https://qgis.org/
tracker=https://issues.qgis.org/projects/qgis/issues?category_id=107&set_filter=1&status_id=o
repository=https://github.com/qgis/QGIS/tree/master/python/plugins/MetaSearch
experimental=False

View File

@ -48,8 +48,8 @@ class TestDBManagerPostgisConnector(unittest.TestCase):
connector._close_cursor(r)
return val
# See https://issues.qgis.org/issues/16625
# and https://issues.qgis.org/issues/10600
# See https://github.com/qgis/QGIS/issues/24525
# and https://github.com/qgis/QGIS/issues/19005
def test_dbnameLessURI(self):
c = PostGisDBConnector(QgsDataSourceUri())
self.assertIsInstance(c, PostGisDBConnector)

View File

@ -66,7 +66,7 @@ class TestDBManagerPostgisPlugin(unittest.TestCase):
# Remove temporary service file
os.unlink(self.tmpservicefile)
# See https://issues.qgis.org/issues/16625
# See https://github.com/qgis/QGIS/issues/24525
def test_rasterTableGdalURI(self):
@ -92,8 +92,8 @@ class TestDBManagerPostgisPlugin(unittest.TestCase):
obj = QObject() # needs to be kept alive
# Test for empty URI
# See https://issues.qgis.org/issues/16625
# and https://issues.qgis.org/issues/10600
# See https://github.com/qgis/QGIS/issues/24525
# and https://github.com/qgis/QGIS/issues/19005
expected_dbname = self.testdb
os.environ['PGDATABASE'] = expected_dbname
@ -110,7 +110,7 @@ class TestDBManagerPostgisPlugin(unittest.TestCase):
check_rasterTableGdalURI(expected_dbname)
# Test for service-only URI
# See https://issues.qgis.org/issues/16626
# See https://github.com/qgis/QGIS/issues/24526
os.environ['PGDATABASE'] = 'fake'
database = PGDatabase(obj, QgsDataSourceUri('service=dbmanager'))
@ -124,7 +124,7 @@ class TestDBManagerPostgisPlugin(unittest.TestCase):
check_rasterTableGdalURI(expected_dbname)
# See http://issues.qgis.org/issues/16833
# See https://github.com/qgis/QGIS/issues/24732
def test_unicodeInQuery(self):
os.environ['PGDATABASE'] = self.testdb
obj = QObject() # needs to be kept alive

View File

@ -11,8 +11,8 @@ email=volayaf@gmail.com
icon=:/images/themes/default/processingAlgorithm.svg
homepage=http://qgis.org
tracker=https://issues.qgis.org/projects/qgis/issues
homepage=https://qgis.org
tracker=https://github.com/qgis/QGIS/issues
repository=https://github.com/qgis/QGIS
hasProcessingProvider=yes
hasProcessingProvider=yes

View File

@ -2765,7 +2765,7 @@ class TestGdalOgrToPostGis(unittest.TestCase):
def tearDownClass(cls):
pass
# See https://issues.qgis.org/issues/15706
# See https://github.com/qgis/QGIS/issues/23629
def test_getConnectionString(self):
obj = OgrToPostGis()
obj.initAlgorithm({})

View File

@ -51,7 +51,7 @@ Source5: %{name}-server-README.fedora
Source6: %{name}-mime.xml
# Fix builds on 64-bit machines
# https://issues.qgis.org/issues/15602
# https://github.com/qgis/QGIS/issues/23525
# https://github.com/qgis/QGIS/commit/718581ffb12b723f9a3c0ae01b7ec2d8aed9d4bb.patch
Patch0: %{name}-lib64.patch
@ -163,7 +163,7 @@ Requires: %{name}%{?_isa} = %{combinedversion}-%{release}
# This questions the sense of the libs package.
# WARNING: Rebuild QGIS whenever a new version of GRASS is shipped! Even though
# the soname might stay the same, it won't work anymore.
# http://issues.qgis.org/issues/5274
# https://github.com/qgis/QGIS/issues/14999
Requires: grass%{?_isa} = %{grass_version}
%description grass

View File

@ -220,7 +220,7 @@ QVariantMap QgsDissolveAlgorithm::processAlgorithm( const QVariantMap &parameter
if ( QgsWkbTypes::geometryType( result.wkbType() ) == QgsWkbTypes::LineGeometry )
result = result.mergeLines();
// Geos may fail in some cases, let's try a slower but safer approach
// See: https://issues.qgis.org/issues/20591 - Dissolve tool failing to produce outputs
// See: https://github.com/qgis/QGIS/issues/28411 - Dissolve tool failing to produce outputs
if ( ! result.lastError().isEmpty() && parts.count() > 2 )
{
if ( feedback->isCanceled() )

View File

@ -188,7 +188,7 @@ void QgsLayoutLabelWidget::mInsertExpressionButton_clicked()
QString selText = mTextEdit->textCursor().selectedText();
// html editor replaces newlines with Paragraph Separator characters - see https://issues.qgis.org/issues/19743
// html editor replaces newlines with Paragraph Separator characters - see https://github.com/qgis/QGIS/issues/27568
selText = selText.replace( QChar( 0x2029 ), QChar( '\n' ) );
// edit the selected expression if there's one

View File

@ -583,7 +583,7 @@ void QgsAttributeTableDialog::runFieldCalculation( QgsVectorLayer *layer, const
mLayer->endEditCommand();
// refresh table with updated values
// fixes https://issues.qgis.org/issues/17312
// fixes https://github.com/qgis/QGIS/issues/25210
QgsAttributeTableModel *masterModel = mMainView->masterModel();
int modelColumn = masterModel->fieldCol( fieldindex );
masterModel->reload( masterModel->index( 0, modelColumn ), masterModel->index( masterModel->rowCount() - 1, modelColumn ) );

View File

@ -212,7 +212,7 @@ QgsFeatureList QgsClipboard::stringToFeatureList( const QString &string, const Q
// previous QgsOgrUtils::stringToFeatureList call
// Get the first value of a \t separated list. WKT clipboard pasted
// feature has first element the WKT geom.
// This split is to fix the following issue: https://issues.qgis.org/issues/16870
// This split is to fix the following issue: https://github.com/qgis/QGIS/issues/24769
// Value separators are set in generateClipboardText
QStringList fieldValues = row.split( '\t' );
if ( fieldValues.isEmpty() )

View File

@ -522,7 +522,7 @@ void QgsFieldCalculator::setPrecisionMinMax()
bool precisionIsEnabled = minPrecType < maxPrecType;
mOutputFieldPrecisionSpinBox->setEnabled( precisionIsEnabled );
// Do not set min/max if it's disabled or we'll loose the default value,
// see https://issues.qgis.org/issues/19050 - QGIS saves integer field when
// see https://github.com/qgis/QGIS/issues/26880 - QGIS saves integer field when
// I create a new real field through field calculator (Update field works as intended)
if ( precisionIsEnabled )
{

View File

@ -62,7 +62,7 @@ static void throwGEOSException( const char *fmt, ... )
#ifdef _MSC_VER
// stupid stupid MSVC, *SOMETIMES* raises it's own exception if we throw GEOSException, resulting in a crash!
// see https://issues.qgis.org/issues/14752
// see https://github.com/qgis/QGIS/issues/22709
// if you want to test alternative fixes for this, run the testqgsexpression.cpp test suite - that will crash
// and burn on the "line_interpolate_point point" test if a GEOSException is thrown.
// TODO - find a real fix for the underlying issue

View File

@ -138,7 +138,7 @@ void QgsLayerTree::writeXml( QDomElement &parentElement, const QgsReadWriteConte
for ( QgsMapLayer *layer : qgis::as_const( mCustomLayerOrder ) )
{
// Safety belt, see https://issues.qgis.org/issues/19145
// Safety belt, see https://github.com/qgis/QGIS/issues/26975
// Crash when deleting an item from the layout legend
if ( ! layer )
continue;

View File

@ -186,7 +186,7 @@ QImage QgsLayoutExporter::renderPageToImage( int page, QSize imageSize, double d
{
// specified image size is wrong aspect ratio for paper rect - so ignore it and just use dpi
// this can happen e.g. as a result of data defined page sizes
// see https://issues.qgis.org/issues/18534
// see https://github.com/qgis/QGIS/issues/26422
imageSize = QSize();
}

View File

@ -314,7 +314,7 @@ void QgsLabelingEngine::run( QgsRenderContext &context )
// features are pre-rotated but not scaled/translated,
// so we only disable rotation here. Ideally, they'd be
// also pre-scaled/translated, as suggested here:
// https://issues.qgis.org/issues/11856
// https://github.com/qgis/QGIS/issues/20071
QgsMapToPixel xform = mMapSettings.mapToPixel();
xform.setMapRotation( 0, 0, 0 );
#else

View File

@ -106,7 +106,7 @@ QString QgsMapSettingsUtils::worldFileContent( const QgsMapSettings &mapSettings
double c = r[0] * s[2] + r[1] * s[5] + r[2];
double d = r[3] * s[0] + r[4] * s[3];
// Pixel YDim - almost always negative
// See https://en.wikipedia.org/wiki/World_file#cite_ref-3, https://issues.qgis.org/issues/18491
// See https://en.wikipedia.org/wiki/World_file#cite_ref-3, https://github.com/qgis/QGIS/issues/26379
double e = r[3] * s[1] + r[4] * s[4];
double f = r[3] * s[2] + r[4] * s[5] + r[5];

View File

@ -80,7 +80,7 @@ bool QgsMapToPixel::updateMatrix()
{
QTransform newMatrix = transform();
// https://issues.qgis.org/issues/12757
// https://github.com/qgis/QGIS/issues/20856
if ( !newMatrix.isInvertible() )
return false;

View File

@ -611,7 +611,7 @@ bool QgsPointLocator::rebuildIndex( int maxFeaturesToIndex )
catch ( const QgsException &e )
{
Q_UNUSED( e )
// See https://issues.qgis.org/issues/12634
// See https://github.com/qgis/QGIS/issues/20749
QgsDebugMsg( QStringLiteral( "could not transform bounding box to map, skipping the snap filter (%1)" ).arg( e.what() ) );
}
}
@ -662,7 +662,7 @@ bool QgsPointLocator::rebuildIndex( int maxFeaturesToIndex )
catch ( const QgsException &e )
{
Q_UNUSED( e )
// See https://issues.qgis.org/issues/12634
// See https://github.com/qgis/QGIS/issues/20749
QgsDebugMsg( QStringLiteral( "could not transform geometry to map, skipping the snap for it (%1)" ).arg( e.what() ) );
continue;
}
@ -775,7 +775,7 @@ void QgsPointLocator::onFeatureAdded( QgsFeatureId fid )
catch ( const QgsException &e )
{
Q_UNUSED( e )
// See https://issues.qgis.org/issues/12634
// See https://github.com/qgis/QGIS/issues/20749
QgsDebugMsg( QStringLiteral( "could not transform geometry to map, skipping the snap for it (%1)" ).arg( e.what() ) );
return;
}

View File

@ -49,7 +49,7 @@ bool QgsTileCache::tile( const QUrl &url, QImage &image )
image = QImage::fromData( imageData );
// cache it as well (mutex is already locked)
// Check for null because it could be a redirect (see: https://issues.qgis.org/issues/16427 )
// Check for null because it could be a redirect (see: https://github.com/qgis/QGIS/issues/24336 )
if ( ! image.isNull( ) )
{
sTileCache.insert( url, new QImage( image ) );

View File

@ -102,7 +102,7 @@ void QgsVectorLayerDiagramProvider::drawLabel( QgsRenderContext &context, pal::L
// features are pre-rotated but not scaled/translated,
// so we only disable rotation here. Ideally, they'd be
// also pre-scaled/translated, as suggested here:
// https://issues.qgis.org/issues/11856
// https://github.com/qgis/QGIS/issues/20071
QgsMapToPixel xform = context.mapToPixel();
xform.setMapRotation( 0, 0, 0 );
#else

View File

@ -333,7 +333,7 @@ bool QgsVectorLayerEditBuffer::commitChanges( QStringList &commitErrors )
// no yes => changeAttributeValues
// yes yes => changeFeatures
// to fix https://issues.qgis.org/issues/15741
// to fix https://github.com/qgis/QGIS/issues/23663
// first of all check if feature to add is compatible with provider type
// this check have to be done before all checks to avoid to clear internal
// buffer if some of next steps success.

View File

@ -382,7 +382,7 @@ void QgsVectorLayerLabelProvider::drawLabelPrivate( pal::LabelPosition *label, Q
// features are pre-rotated but not scaled/translated,
// so we only disable rotation here. Ideally, they'd be
// also pre-scaled/translated, as suggested here:
// https://issues.qgis.org/issues/11856
// https://github.com/qgis/QGIS/issues/20071
QgsMapToPixel xform = context.mapToPixel();
xform.setMapRotation( 0, 0, 0 );

View File

@ -19,7 +19,7 @@ originally part of the larger QgsRasterLayer class
***************************************************************************/
// Threshold for treating values as exact match.
// Set to 0.0 to support displaying small values (https://issues.qgis.org/issues/12581)
// Set to 0.0 to support displaying small values (https://github.com/qgis/QGIS/issues/20706)
#define DOUBLE_DIFF_THRESHOLD 0.0 // 0.0000001
#include "qgslogger.h"
@ -437,7 +437,7 @@ bool QgsColorRampShader::shade( double value, int *returnRedValue, int *returnGr
{
// Assign the color of the higher class for every pixel between two class breaks.
// NOTE: The implementation has always been different than the documentation,
// which said lower class before, see https://issues.qgis.org/issues/13995
// which said lower class before, see https://github.com/qgis/QGIS/issues/22009
if ( overflow )
{
return false;

View File

@ -2082,7 +2082,7 @@ void QgsSvgMarkerSymbolLayer::renderPoint( QPointF point, QgsSymbolRenderContext
if ( context.renderContext().flags() & QgsRenderContext::Antialiasing )
{
// workaround issue with nested QPictures forgetting antialiasing flag - see https://issues.qgis.org/issues/14960
// workaround issue with nested QPictures forgetting antialiasing flag - see https://github.com/qgis/QGIS/issues/22909
p->setRenderHint( QPainter::Antialiasing );
}

View File

@ -423,7 +423,7 @@ bool QgsRuleBasedRenderer::Rule::startRender( QgsRenderContext &context, const Q
sf = QStringLiteral( "TRUE" );
}
// If we have more than 50 rules (to stay on the safe side) make a binary tree or SQLITE will fail,
// see: http://issues.qgis.org/issues/19441
// see: https://github.com/qgis/QGIS/issues/27269
else if ( subfilters.count() > 50 )
{
std::function<QString( const QStringList & )>bt = [ &bt ]( const QStringList & subf )

View File

@ -36,7 +36,7 @@ QgsCrashDialog::QgsCrashDialog( QWidget *parent )
"<a href=\"http://qgis.org/en/site/getinvolved/development/bugreporting.html#bugs-features-and-issues\">Follow the steps to help our developers.</a>"
"<br><br>"
"You can also send us a helpful bug report using the Copy Report button <br>and opening a ticket at "
"<a href=\"https://issues.qgis.org/\">issues.qgis.org</a>" ) );
"<a href=\"https://github.com/qgis/QGIS/issues\">QGIS Issue Tracker</a>" ) );
mHelpLabel->setTextInteractionFlags( Qt::TextBrowserInteraction );
mHelpLabel->setOpenExternalLinks( true );

View File

@ -116,7 +116,7 @@ void QgsAttributeTableDelegate::setModelData( QWidget *editor, QAbstractItemMode
if ( ( oldValue != newValue && newValue.isValid() ) || oldValue.isNull() != newValue.isNull() )
{
// This fixes https://issues.qgis.org/issues/16492
// This fixes https://github.com/qgis/QGIS/issues/24398
QgsFeatureRequest request( fid );
request.setFlags( QgsFeatureRequest::NoGeometry );
request.setNoAttributes();

View File

@ -263,7 +263,7 @@ void QgsAttributeTableModel::updatedFields()
void QgsAttributeTableModel::editCommandEnded()
{
// do not do reload(...) due would trigger (dataChanged) row sort
// giving issue: https://issues.qgis.org/issues/15976
// giving issue: https://github.com/qgis/QGIS/issues/23892
bulkEditCommandEnded( );
}

View File

@ -332,7 +332,7 @@ void QgsDualView::initModels( QgsMapCanvas *mapCanvas, const QgsFeatureRequest &
mFilterModel = new QgsAttributeTableFilterModel( mapCanvas, mMasterModel, mMasterModel );
// The following connections to invalidate() are necessary to keep the filter model in sync
// see regression https://issues.qgis.org/issues/15974
// see regression https://github.com/qgis/QGIS/issues/23890
connect( mMasterModel, &QgsAttributeTableModel::rowsRemoved, mFilterModel, &QgsAttributeTableFilterModel::invalidate );
connect( mMasterModel, &QgsAttributeTableModel::rowsInserted, mFilterModel, &QgsAttributeTableFilterModel::invalidate );

View File

@ -232,7 +232,7 @@ void QgsTextEditWrapper::setWidgetValue( const QVariant &val )
// We are checking for editable layer because in the form field context we do not
// want to strip the separator unless the layer is editable.
// Also check that we have something like a number in the value to avoid
// stripping out dots from nextval when we have a schema: see https://issues.qgis.org/issues/20200
// stripping out dots from nextval when we have a schema: see https://github.com/qgis/QGIS/issues/28021
// "Wrong sequence detection with Postgres"
bool canConvertToDouble;
QLocale().toDouble( v, &canConvertToDouble );

View File

@ -217,7 +217,7 @@ void QgsValueRelationWidgetWrapper::setValue( const QVariant &value )
else if ( mComboBox )
{
// findData fails to tell a 0 from a NULL
// See: "Value relation, value 0 = NULL" - https://issues.qgis.org/issues/19981
// See: "Value relation, value 0 = NULL" - https://github.com/qgis/QGIS/issues/27803
int idx = -1; // default to not found
for ( int i = 0; i < mComboBox->count(); i++ )
{

View File

@ -98,7 +98,7 @@ void QgsLayoutConfigObject::updateDataDefinedButton( QgsPropertyOverrideButton *
QgsLayoutObject::DataDefinedProperty key = static_cast< QgsLayoutObject::DataDefinedProperty >( button->propertyKey() );
whileBlocking( button )->setToProperty( mLayoutObject->dataDefinedProperties().property( key ) );
// In case the button was initialized to a different config object, we need to reconnect to it here (see https://issues.qgis.org/issues/18694 )
// In case the button was initialized to a different config object, we need to reconnect to it here (see https://github.com/qgis/QGIS/issues/26582 )
connect( button, &QgsPropertyOverrideButton::changed, this, &QgsLayoutConfigObject::updateDataDefinedProperty, Qt::UniqueConnection );
button->registerExpressionContextGenerator( mLayoutObject );
}

View File

@ -1022,7 +1022,7 @@ void QgsColorRampWidget::paintEvent( QPaintEvent *event )
// we need to set pen width to 1,
// since on retina displays
// pen.setWidth(0) <=> pen.width = 0.5
// see https://issues.qgis.org/issues/15984
// see https://github.com/qgis/QGIS/issues/23900
pen.setWidth( 1 );
painter.setPen( pen );
painter.setBrush( Qt::NoBrush );

View File

@ -665,7 +665,7 @@ void QgsPropertyOverrideButton::showExpressionDialog()
{
QgsExpressionContext context = mExpressionContextGenerator ? mExpressionContextGenerator->createExpressionContext() : QgsExpressionContext();
// build sensible initial expression text - see https://issues.qgis.org/issues/18638
// build sensible initial expression text - see https://github.com/qgis/QGIS/issues/26526
QString currentExpression = ( mProperty.propertyType() == QgsProperty::StaticProperty && !mProperty.staticValue().isValid() ) ? QString()
: mProperty.asExpression();

View File

@ -137,7 +137,7 @@ QgsRasterLayerSaveAsDialog::QgsRasterLayerSaveAsDialog( QgsRasterLayer *rasterLa
// pyramids are not necessarily built every time
mCrsSelector->setLayerCrs( mLayerCrs );
//default to layer CRS - see https://issues.qgis.org/issues/14209 for discussion
//default to layer CRS - see https://github.com/qgis/QGIS/issues/22211 for discussion
mCrsSelector->setCrs( mLayerCrs );
connect( mCrsSelector, &QgsProjectionSelectionWidget::crsChanged,

View File

@ -551,7 +551,7 @@ void QgsRubberBand::updateRect()
void QgsRubberBand::updatePosition()
{
// re-compute rectangle
// See https://issues.qgis.org/issues/12392
// See https://github.com/qgis/QGIS/issues/20566
// NOTE: could be optimized by saving map-extent
// of rubberband and simply re-projecting
// that to device-rectangle on "updatePosition"

View File

@ -918,7 +918,7 @@ QDomDocument QgsGrassModuleStandardOptions::readInterfaceDescription( const QStr
// GRASS commands usually output text in system default encoding.
// Let's use the System codec whether Qt doesn't recognize the encoding
// of the interface description (see https://issues.qgis.org/issues/4547)
// of the interface description (see https://github.com/qgis/QGIS/issues/14461)
QTextCodec *codec = nullptr;
QgsDebugMsg( "trying to get encoding name from XML interface description..." );

View File

@ -172,7 +172,7 @@ QgsGdalProvider::QgsGdalProvider( const QString &uri, const ProviderOptions &opt
if ( !CPLGetConfigOption( "VRT_SHARED_SOURCE", nullptr ) )
{
// GDAL < 2.3 has issues with use of VRT in multi-threaded
// scenarios. See https://issues.qgis.org/issues/16507 /
// scenarios. See https://github.com/qgis/QGIS/issues/24413 /
// https://trac.osgeo.org/gdal/ticket/6939
CPLSetConfigOption( "VRT_SHARED_SOURCE", "NO" );
}

View File

@ -1873,7 +1873,7 @@ bool QgsOgrProvider::addAttributes( const QList<QgsField> &attributes )
// Without the below hack, the length of the first added field would have
// been reset to zero, and QgsVectorLayerEditBuffer::commitChanges() would
// error out because of this.
// See https://issues.qgis.org/issues/19009
// See https://github.com/qgis/QGIS/issues/26840
for ( auto field : oldFields )
{
int idx = mAttributeFields.lookupField( field.name() );
@ -3726,7 +3726,7 @@ QSet<QVariant> QgsOgrProvider::uniqueValues( int index, int limit ) const
// GPKG/SQLite fid
// For GPKG and SQLITE drivers PK fields are not exposed as real fields, (and OGR_F_GetFID only
// works with GPKG), so we are adding an extra column that will become index 0
// See https://issues.qgis.org/issues/21311
// See https://github.com/qgis/QGIS/issues/29129
if ( ( mGDALDriverName == QLatin1String( "GPKG" ) || mGDALDriverName == QLatin1String( "SQLite" ) )
&& mFirstFieldIsFid && index == 0 )
{

View File

@ -160,7 +160,7 @@ QgsPostgresConn *QgsPostgresConn::connectDb( const QString &conninfo, bool reado
if ( shared )
{
// sharing connection between threads is not safe
// See https://issues.qgis.org/issues/13141
// See https://github.com/qgis/QGIS/issues/21205
Q_ASSERT( QApplication::instance()->thread() == QThread::currentThread() );
if ( connections.contains( conninfo ) )
@ -1354,7 +1354,7 @@ qint64 QgsPostgresConn::getBinaryInt( QgsPostgresResult &queryResult, int row, i
if ( mSwapEndian )
oid = ntohs( oid );
/* cast to signed 16bit
* See https://issues.qgis.org/issues/14262 */
* See https://github.com/qgis/QGIS/issues/22258 */
oid = ( qint16 )oid;
break;
@ -1404,7 +1404,7 @@ qint64 QgsPostgresConn::getBinaryInt( QgsPostgresResult &queryResult, int row, i
if ( mSwapEndian )
oid = ntohl( oid );
/* cast to signed 32bit
* See https://issues.qgis.org/issues/14262 */
* See https://github.com/qgis/QGIS/issues/22258 */
oid = ( qint32 )oid;
break;
}

View File

@ -77,7 +77,7 @@ QgsPostgresProvider::pkType( const QgsField &f ) const
// unless we can guarantee all values are unsigned
// (in which case we could use pktUint64)
// we'll have to use a Map type.
// See https://issues.qgis.org/issues/14262
// See https://github.com/qgis/QGIS/issues/22258
return PktFidMap; // pktUint64
case QVariant::Int:
@ -178,7 +178,7 @@ QgsPostgresProvider::QgsPostgresProvider( QString const &uri, const ProviderOpti
}
// NOTE: mValid would be true after true return from
// getGeometryDetails, see https://issues.qgis.org/issues/13781
// getGeometryDetails, see https://github.com/qgis/QGIS/issues/21807
if ( mSpatialColType == SctTopoGeometry )
{
@ -3236,7 +3236,7 @@ long QgsPostgresProvider::featureCount() const
if ( featuresCounted >= 0 )
return featuresCounted;
// See: https://issues.qgis.org/issues/17388 - QGIS crashes on featureCount())
// See: https://github.com/qgis/QGIS/issues/25285 - QGIS crashes on featureCount())
if ( ! connectionRO() )
{
return 0;

View File

@ -487,7 +487,7 @@ class QgsPostgresUtils
// We shift negative 32bit integers to above the max 32bit
// positive integer to support the whole range of int32 values
// See https://issues.qgis.org/issues/14262
// See https://github.com/qgis/QGIS/issues/22258
static qint64 int32pk_to_fid( qint32 x )
{
return x >= 0 ? x : x + INT32PK_OFFSET;

View File

@ -1478,7 +1478,7 @@ bool QgsWFSProvider::readAttributesFromSchema( QDomDocument &schemaDoc,
//attribute name
QString name = attributeElement.attribute( QStringLiteral( "name" ) );
// Some servers like http://ogi.state.ok.us/geoserver/wfs on layer ogi:doq_centroids
// return attribute names padded with spaces. See https://issues.qgis.org/issues/3426
// return attribute names padded with spaces. See https://github.com/qgis/QGIS/issues/13486
// I'm not completely sure how legal this
// is but this validates with Xerces 3.1, and its schema analyzer does also the trimming.
name = name.trimmed();

View File

@ -59,7 +59,7 @@ namespace QgsWms
renderJob.start();
// Allows the main thread to manage blocking call coming from rendering
// threads (see discussion in https://issues.qgis.org/issues/18988).
// threads (see discussion in https://github.com/qgis/QGIS/issues/26819).
QEventLoop loop;
QObject::connect( &renderJob, &QgsMapRendererParallelJob::finished, &loop, &QEventLoop::quit );
loop.exec();

View File

@ -623,7 +623,7 @@ void TestQgsGeometrySnapper::snapMultiPolygonToPolygon()
flist << ff;
rl->dataProvider()->addFeatures( flist );
// test MultiPolygon that could be removed in the process https://issues.qgis.org/issues/18497
// test MultiPolygon that could be removed in the process https://github.com/qgis/QGIS/issues/26385
QgsGeometry polygonGeom = QgsGeometry::fromWkt( QStringLiteral( "MultiPolygon(((0.1 -0.1, 5 0.1, 9.9 0.1, 0.1 -0.1)))" ) );
QgsGeometrySnapper snapper( rl );
QgsGeometry result = snapper.snapGeometry( polygonGeom, 1 );

View File

@ -209,7 +209,7 @@ void TestQgisAppClipboard::pasteWkt()
QCOMPARE( point->y(), 30.0 );
// be sure parsing does not consider attached parameters that
// can change geometryType as in https://issues.qgis.org/issues/16870
// can change geometryType as in https://github.com/qgis/QGIS/issues/24769
mQgisApp->clipboard()->setText( QStringLiteral( "POINT (111 30)\t GoodFieldValue\nPOINT (125 10)\t(WrongFieldValue)" ) );
features = mQgisApp->clipboard()->copyOf();

View File

@ -320,7 +320,7 @@ void TestQgsAttributeTable::testOrderColumn()
std::unique_ptr< QgsAttributeTableDialog > dlg( new QgsAttributeTableDialog( tempLayer.get() ) );
// Issue https://issues.qgis.org/issues/20673
// Issue https://github.com/qgis/QGIS/issues/28493
// When we reorder column (last column becomes first column), and we select an entire row
// the currentIndex is no longer the first column, and consequently it breaks edition

View File

@ -93,12 +93,12 @@ void TestQgsCurve::curveToLine()
"LineString (0 0, 29.29 70.71, 100 100, 170.71 70.71, 200 0)", 2 );
/* op: Maximum of M_PI / 8 degrees of angle, (a)symmetric */
/* See https://issues.qgis.org/issues/16717 */
/* See https://github.com/qgis/QGIS/issues/24616 */
TEST_C2L( circularString, M_PI / 8, QgsAbstractGeometry::MaximumAngle,
"LineString (0 0, 7.61 38.27, 29.29 70.71, 61.73 92.39, 100 100, 138.27 92.39, 170.71 70.71, 192.39 38.27, 200 0)", 2 );
/* op: Maximum of 70 degrees of angle, symmetric */
/* See https://issues.qgis.org/issues/16722 */
/* See https://github.com/qgis/QGIS/issues/24621 */
TEST_C2L( circularString, 70 * M_PI / 180, QgsAbstractGeometry::MaximumAngle,
"LineString (0 0, 50 86.6, 150 86.6, 200 0)", 2 );

View File

@ -16902,7 +16902,7 @@ QString TestQgsGeometry::elemToString( const QDomElement &elem ) const
void TestQgsGeometry::wkbInOut()
{
// Premature end of WKB
// See https://issues.qgis.org/issues/14182
// See https://github.com/qgis/QGIS/issues/22184
const char *hexwkb = "0102000000EF0000000000000000000000000000000000000000000000000000000000000000000000";
int size;
unsigned char *wkb = hex2bytes( hexwkb, &size );

View File

@ -549,7 +549,7 @@ void TestQgsGeometryUtils::testCircleCenterRadius()
void TestQgsGeometryUtils::testSqrDistToLine()
{
// See https://issues.qgis.org/issues/13952#note-26
// See https://github.com/qgis/QGIS/issues/21967#issuecomment-495853991
QgsPointXY qp( 771938, 6.95593e+06 );
QgsPointXY p1( 771946, 6.95593e+06 );
QgsPointXY p2( 771904, 6.95595e+06 );

View File

@ -638,7 +638,7 @@ bool TestQgsLabelingEngine::imageCheck( const QString &testName, QImage &image,
return resultFlag;
}
// See https://issues.qgis.org/issues/15507
// See https://github.com/qgis/QGIS/issues/23431
void TestQgsLabelingEngine::testRegisterFeatureUnprojectible()
{
QgsPalLayerSettings settings;
@ -750,7 +750,7 @@ void TestQgsLabelingEngine::testParallelLabelSmallFeature()
// This test assumes that NO label is drawn in this situation. In future we may want
// to revisit this and e.g. draw a centered horizontal label over the feature -- in which
// case the reference image here should be freely revised. But for now, we just don't
// want a hang/crash such as described in https://issues.qgis.org/issues/18283
// want a hang/crash such as described in https://github.com/qgis/QGIS/issues/26174
QgsPalLayerSettings settings;
setDefaultLabelParams( settings );

View File

@ -43,7 +43,7 @@ class TestQgsLayerDefinition: public QObject
/**
* test that export does not crash: regression #18981
* https://issues.qgis.org/issues/18981 - Save QLR crashes QGIS 3
* https://github.com/qgis/QGIS/issues/26812 - Save QLR crashes QGIS 3
*/
void testExportDoesNotCrash();

View File

@ -168,7 +168,7 @@ TestQgsMapToPixelGeometrySimplifier::testIsGeneralizableByMapBoundingBox()
void TestQgsMapToPixelGeometrySimplifier::testWkbDimensionMismatch()
{
// 2D multilinestring containing 2 3DZ linestrings
// See https://issues.qgis.org/issues/12416
// See https://github.com/qgis/QGIS/issues/20588
// NOTE: the first line needs to be 5 vertices or more, or
// simplification won't even be attempted
const char *hexwkb = "010500000002000000010200008005000000000000000000000000000000000000000000000000000000000000000000F03F000000000000F03F00000000000000000000000000000040000000000000000000000000000000000000000000000840000000000000F03F0000000000000000000000000000244000000000000000008DEDB5A0F7C6B0BE010200008002000000000000000000000000000000000000000000000000000000000000000000000000000000000000008DEDB5A0F7C6B03E";

View File

@ -126,7 +126,7 @@ void TestQgsMarkerLineSymbol::lineOffset()
mMapSettings->setLayers( QList<QgsMapLayer *>() << mLinesLayer );
// Negative offset on marker line
// See https://issues.qgis.org/issues/13811
// See https://github.com/qgis/QGIS/issues/21836
QString qml = mTestDataDir + "marker_line_offset.qml";
bool success = false;
@ -137,7 +137,7 @@ void TestQgsMarkerLineSymbol::lineOffset()
QVERIFY( render( QStringLiteral( "line_offset" ) ) );
// TODO: -0.0 offset, see
// https://issues.qgis.org/issues/13811#note-1
// https://github.com/qgis/QGIS/issues/21836#issuecomment-495853073
}
void TestQgsMarkerLineSymbol::pointNumInterval()

View File

@ -439,7 +439,7 @@ void TestQgsRasterLayer::checkStats()
}
// test scale_factor and offset - uses netcdf file which may not be supported
// see https://issues.qgis.org/issues/8417
// see https://github.com/qgis/QGIS/issues/17186
void TestQgsRasterLayer::checkScaleOffset()
{
mReport += QLatin1String( "<h2>Check Stats with scale/offset</h2>\n" );

View File

@ -128,8 +128,8 @@ void TestQgsSvgCache::threadSafePicture()
// returns a detached copy which is safe to use across threads
// refs:
// https://issues.qgis.org/issues/17077
// https://issues.qgis.org/issues/17089
// https://github.com/qgis/QGIS/issues/24976
// https://github.com/qgis/QGIS/issues/24988
QgsSvgCache cache;
QString svgPath = TEST_DATA_DIR + QStringLiteral( "/sample_svg.svg" );

View File

@ -84,25 +84,25 @@ class TestQgsVectorFileWriter: public QObject
void polygonGridTest();
//! As above but using a projected CRS
void projectedPlygonGridTest();
//! This is a regression test ticket 1141 (broken Polish characters support since r8592) https://issues.qgis.org/issues/1141
//! This is a regression test ticket 1141 (broken Polish characters support since r8592) https://github.com/qgis/QGIS/issues/11201
void regression1141();
//! Test prepareWriteAsVectorFormat
void prepareWriteAsVectorFormat();
//! Test regression #21714 (Exported GeoPackages have wrong field definitions)
void testTextFieldLength();
//! Test https://issues.qgis.org/issues/22005
//! Test https://github.com/qgis/QGIS/issues/29819
void testExportToGpxPoint();
//! Test https://issues.qgis.org/issues/22005
//! Test https://github.com/qgis/QGIS/issues/29819
void testExportToGpxPointTrackPoints();
//! Test https://issues.qgis.org/issues/22005
//! Test https://github.com/qgis/QGIS/issues/29819
void testExportToGpxPointRoutePoints();
//! Test https://issues.qgis.org/issues/22005
//! Test https://github.com/qgis/QGIS/issues/29819
void testExportToGpxLineString();
//! Test https://issues.qgis.org/issues/22005
//! Test https://github.com/qgis/QGIS/issues/29819
void testExportToGpxLineStringForceTrack();
//! Test https://issues.qgis.org/issues/22005
//! Test https://github.com/qgis/QGIS/issues/29819
void testExportToGpxMultiLineString();
//! Test https://issues.qgis.org/issues/22005
//! Test https://github.com/qgis/QGIS/issues/29819
void testExportToGpxMultiLineStringForceRoute();
private:

View File

@ -929,7 +929,7 @@ void TestQgsGeometryChecks::testSelfContactCheck()
cleanupTestContext( testContext );
// https://issues.qgis.org/issues/20408
// https://github.com/qgis/QGIS/issues/28228
// test with a linestring which collapses to an empty linestring
QgsGeometryCheckContext context( 1, QgsCoordinateReferenceSystem( QStringLiteral( "EPSG:3857" ) ), QgsCoordinateTransformContext() );
QgsGeometrySelfContactCheck check2( &context, QVariantMap() );

View File

@ -132,7 +132,7 @@ void TestQgsRangeWidgetWrapper::cleanup()
void TestQgsRangeWidgetWrapper::test_setDoubleRange()
{
// Test setting scale range with doubles and NULL values, default range
// See https://issues.qgis.org/issues/17878
// See https://github.com/qgis/QGIS/issues/25773
// QGIS 3 Vector Layer Fields Garbled when Clicking the Toggle Editing Icon
QgsDoubleSpinBox *editor = qobject_cast<QgsDoubleSpinBox *>( widget1->createWidget( nullptr ) );

View File

@ -342,7 +342,7 @@ void TestQgsRelationReferenceWidget::testSetGetForeignKey()
}
// Test issue https://issues.qgis.org/issues/22071
// Test issue https://github.com/qgis/QGIS/issues/29884
// Relation reference widget wrong feature when "on map identification"
void TestQgsRelationReferenceWidget::testIdentifyOnMap()
{

View File

@ -72,7 +72,7 @@ void TestQgsScaleRangeWidget::test_setScaleRange()
// Test that setting scale range is always honoured
// rather than being limited by previously set
// max or min.
// See https://issues.qgis.org/issues/15463
// See https://github.com/qgis/QGIS/issues/23389
widget->setScaleRange( 6, 4 );
QCOMPARE( widget->minimumScale(), 6.0 );

View File

@ -330,7 +330,7 @@ void TestQgsValueRelationWidgetWrapper::testDrillDownMulti()
void TestQgsValueRelationWidgetWrapper::testZeroIndexInRelatedTable()
{
// findData fails to tell a 0 from a NULL
// See: "Value relation, value 0 = NULL" - https://issues.qgis.org/issues/19981
// See: "Value relation, value 0 = NULL" - https://github.com/qgis/QGIS/issues/27803
// create a vector layer
QgsVectorLayer vl1( QStringLiteral( "Polygon?crs=epsg:4326&field=pk:int&field=province:int&field=municipality:string" ), QStringLiteral( "vl1" ), QStringLiteral( "memory" ) );

View File

@ -327,7 +327,7 @@ class PyQgsOGRProvider(unittest.TestCase):
self.assertEqual(gdal.GetConfigOption("GDAL_HTTP_PROXYUSERPWD"), "username")
def testEditGeoJsonRemoveField(self):
""" Test bugfix of https://issues.qgis.org/issues/18596 (deleting an existing field)"""
""" Test bugfix of https://github.com/qgis/QGIS/issues/26484 (deleting an existing field)"""
datasource = os.path.join(self.basetestpath, 'testEditGeoJsonRemoveField.json')
with open(datasource, 'wt') as f:
@ -350,7 +350,7 @@ class PyQgsOGRProvider(unittest.TestCase):
self.assertEqual(f['w'], 4)
def testEditGeoJsonAddField(self):
""" Test bugfix of https://issues.qgis.org/issues/18596 (adding a new field)"""
""" Test bugfix of https://github.com/qgis/QGIS/issues/26484 (adding a new field)"""
datasource = os.path.join(self.basetestpath, 'testEditGeoJsonAddField.json')
with open(datasource, 'wt') as f:
@ -377,7 +377,7 @@ class PyQgsOGRProvider(unittest.TestCase):
self.assertEqual(len(vl.fields()), 1)
def testEditGeoJsonAddFieldAndThenAddFeatures(self):
""" Test bugfix of https://issues.qgis.org/issues/18596 (adding a new field)"""
""" Test bugfix of https://github.com/qgis/QGIS/issues/26484 (adding a new field)"""
datasource = os.path.join(self.basetestpath, 'testEditGeoJsonAddField.json')
with open(datasource, 'wt') as f:

View File

@ -215,7 +215,7 @@ class TestPyQgsOGRProviderGpkg(unittest.TestCase):
@unittest.skip(int(gdal.VersionInfo('VERSION_NUM')) < GDAL_COMPUTE_VERSION(2, 1, 2))
def testGeopackageExtentUpdate(self):
''' test https://issues.qgis.org/issues/15273 '''
''' test https://github.com/qgis/QGIS/issues/23209 '''
tmpfile = os.path.join(self.basetestpath, 'testGeopackageExtentUpdate.gpkg')
ds = ogr.GetDriverByName('GPKG').CreateDataSource(tmpfile)
lyr = ds.CreateLayer('test', geom_type=ogr.wkbPoint)
@ -643,7 +643,7 @@ class TestPyQgsOGRProviderGpkg(unittest.TestCase):
self.assertEqual(lyr2.wkbType(), QgsWkbTypes.Point)
def testGeopackageTwoLayerEdition(self):
''' test https://issues.qgis.org/issues/17034 '''
''' test https://github.com/qgis/QGIS/issues/24933 '''
tmpfile = os.path.join(self.basetestpath, 'testGeopackageTwoLayerEdition.gpkg')
ds = ogr.GetDriverByName('GPKG').CreateDataSource(tmpfile)
lyr = ds.CreateLayer('layer1', geom_type=ogr.wkbPoint)
@ -1033,7 +1033,7 @@ class TestPyQgsOGRProviderGpkg(unittest.TestCase):
self.assertNotEqual(_lessdigits(subSet_vl.extent().toString()), unfiltered_extent)
def testRequestWithoutGeometryOnLayerMixedGeometry(self):
""" Test bugfix for https://issues.qgis.org/issues/19077 """
""" Test bugfix for https://github.com/qgis/QGIS/issues/26907 """
# Issue is more a generic one of the OGR provider, but easy to trigger with GPKG
@ -1059,7 +1059,7 @@ class TestPyQgsOGRProviderGpkg(unittest.TestCase):
self.assertEqual(len(features), 1)
def testAddingTwoIntFieldsWithWidth(self):
""" Test buggfix for https://issues.qgis.org/issues/19009 """
""" Test buggfix for https://github.com/qgis/QGIS/issues/26840 """
tmpfile = os.path.join(self.basetestpath, 'testRequestWithoutGeometryOnLayerMixedGeometry.gpkg')
ds = ogr.GetDriverByName('GPKG').CreateDataSource(tmpfile)
@ -1079,7 +1079,7 @@ class TestPyQgsOGRProviderGpkg(unittest.TestCase):
self.assertTrue(vl.commitChanges())
def testApproxFeatureCountAndExtent(self):
""" Test perf improvement for for https://issues.qgis.org/issues/18402 """
""" Test perf improvement for for https://github.com/qgis/QGIS/issues/26292 """
tmpfile = os.path.join(self.basetestpath, 'testApproxFeatureCountAndExtent.gpkg')
ds = ogr.GetDriverByName('GPKG').CreateDataSource(tmpfile)

View File

@ -240,7 +240,7 @@ class TestPyQgsPostgresProvider(unittest.TestCase, ProviderTestCase):
self.assertTrue(vl.isValid())
test_unique([f for f in vl.getFeatures()], 4)
# See https://issues.qgis.org/issues/14262
# See https://github.com/qgis/QGIS/issues/22258
# TODO: accept multi-featured layers, and an array of values/fids
def testSignedIdentifiers(self):
@ -815,7 +815,7 @@ class TestPyQgsPostgresProvider(unittest.TestCase, ProviderTestCase):
# If an attribute map is provided, QgsVectorLayerUtils.createFeature must
# respect it, otherwise default values from provider are checked.
# User's choice will not be respected if the value violates unique constraints.
# See https://issues.qgis.org/issues/19936
# See https://github.com/qgis/QGIS/issues/27758
f = QgsVectorLayerUtils.createFeature(vl, attributes={1: 5, 3: 'map'})
# changed so that createFeature respects user choice
self.assertEqual(f.attributes(), [default_clause, 5, "'qgis'::text", 'map', None, None])
@ -829,7 +829,7 @@ class TestPyQgsPostgresProvider(unittest.TestCase, ProviderTestCase):
f = QgsVectorLayerUtils.createFeature(vl, attributes={1: 5})
self.assertEqual(f.attributes(), [default_clause, 5, "'qgis'::text", 'mappy', None, None])
# See https://issues.qgis.org/issues/15188
# See https://github.com/qgis/QGIS/issues/23127
def testNumericPrecision(self):
uri = 'point?field=f1:int'
uri += '&field=f2:double(6,4)'
@ -853,7 +853,7 @@ class TestPyQgsPostgresProvider(unittest.TestCase, ProviderTestCase):
self.assertEqual(f['f2'], 123.456)
self.assertEqual(f['f3'], '12345678.90123456789')
# See https://issues.qgis.org/issues/15226
# See https://github.com/qgis/QGIS/issues/23163
def testImportKey(self):
uri = 'point?field=f1:int'
uri += '&field=F2:double(6,4)'
@ -895,7 +895,7 @@ class TestPyQgsPostgresProvider(unittest.TestCase, ProviderTestCase):
testKey(lyr, '"f1","F2","f3"', ['f1', 'F2', 'f3'])
testKey(lyr, None, ['id'])
# See https://issues.qgis.org/issues/17518
# See https://github.com/qgis/QGIS/issues/25415
def testImportWithoutSchema(self):
def _test(table, schema=None):

View File

@ -977,7 +977,7 @@ class TestQgsVirtualLayerProvider(unittest.TestCase, ProviderTestCase):
def testUpdatedFields(self):
"""Test when referenced layer update its fields
https://issues.qgis.org/issues/20893
https://github.com/qgis/QGIS/issues/28712
"""
ml = QgsVectorLayer("Point?srid=EPSG:4326&field=a:int", "mem", "memory")

View File

@ -115,7 +115,7 @@ class TestPyQgsWFSProvider(unittest.TestCase, ProviderTestCase):
<xsd:complexContent>
<xsd:extension base="gml:AbstractFeatureType">
<xsd:sequence>
<!-- add a trailing space to the name to test https://issues.qgis.org/issues/3426 -->
<!-- add a trailing space to the name to test https://github.com/qgis/QGIS/issues/13486 -->
<xsd:element maxOccurs="1" minOccurs="0" name="pk " nillable="true" type="xsd:long"/>
<xsd:element maxOccurs="1" minOccurs="0" name="cnt" nillable="true" type="xsd:long"/>
<xsd:element maxOccurs="1" minOccurs="0" name="name" nillable="true" type="xsd:string"/>
@ -2963,7 +2963,7 @@ class TestPyQgsWFSProvider(unittest.TestCase, ProviderTestCase):
self.assertEqual((got.x(), got.y()), (426858.0, 5427937.0))
def testGetFeatureWithNamespaces(self):
''' test https://issues.qgis.org/issues/14685 '''
''' test https://github.com/qgis/QGIS/issues/22649 '''
endpoint = self.__class__.basetestpath + '/fake_qgis_http_endpoint_getfeature_with_namespaces'
@ -3552,7 +3552,7 @@ class TestPyQgsWFSProvider(unittest.TestCase, ProviderTestCase):
self.assertTrue(vl.isValid())
def testGeometryCollectionAsMultiLineString(self):
"""Test https://issues.qgis.org/issues/19571 """
"""Test https://github.com/qgis/QGIS/issues/27398 """
endpoint = self.__class__.basetestpath + '/fake_qgis_http_endpoint_gc_as_mls'
@ -3807,7 +3807,7 @@ class TestPyQgsWFSProvider(unittest.TestCase, ProviderTestCase):
pass # skip this feature source test -- provider is not affected
def testFilteredFeatureRequests(self):
"""Test https://issues.qgis.org/issues/21077 """
"""Test https://github.com/qgis/QGIS/issues/28895 """
endpoint = self.__class__.basetestpath + '/fake_qgis_http_endpoint_filtered_feature_requests'

View File

@ -875,7 +875,7 @@ class TestQgsGeometry(unittest.TestCase):
"""Test we can simplify a complex geometry.
Note: there is a ticket related to this issue here:
https://issues.qgis.org/issues/4189
https://github.com/qgis/QGIS/issues/14164
Backstory: Ole Nielson pointed out an issue to me
(Tim Sutton) where simplify ftools was dropping
@ -2285,7 +2285,7 @@ class TestQgsGeometry(unittest.TestCase):
assert compareWkt(expWkt, wkt), "convertToType failed: from multiline to polygon. Expected:\n%s\nGot:\n%s\n" % (expWkt, wkt)
def testRegression13053(self):
""" See https://issues.qgis.org/issues/13053 """
""" See https://github.com/qgis/QGIS/issues/21125 """
p = QgsGeometry.fromWkt('MULTIPOLYGON(((62.0 18.0, 62.0 19.0, 63.0 19.0, 63.0 18.0, 62.0 18.0)), ((63.0 19.0, 63.0 20.0, 64.0 20.0, 64.0 19.0, 63.0 19.0)))')
assert p is not None
@ -2294,7 +2294,7 @@ class TestQgsGeometry(unittest.TestCase):
assert compareWkt(expWkt, wkt), "testRegression13053 failed: mismatch Expected:\n%s\nGot:\n%s\n" % (expWkt, wkt)
def testRegression13055(self):
""" See https://issues.qgis.org/issues/13055
""" See https://github.com/qgis/QGIS/issues/21127
Testing that invalid WKT with z values but not using PolygonZ is still parsed
by QGIS.
"""
@ -2306,7 +2306,7 @@ class TestQgsGeometry(unittest.TestCase):
assert compareWkt(expWkt, wkt), "testRegression13055 failed: mismatch Expected:\n%s\nGot:\n%s\n" % (expWkt, wkt)
def testRegression13274(self):
""" See https://issues.qgis.org/issues/13274
""" See https://github.com/qgis/QGIS/issues/21334
Testing that two combined linestrings produce another line string if possible
"""
a = QgsGeometry.fromWkt('LineString (0 0, 1 0)')
@ -2325,7 +2325,7 @@ class TestQgsGeometry(unittest.TestCase):
wkt = g.asWkt()
assert compareWkt(expWkt, wkt), "testReshape failed: mismatch Expected:\n%s\nGot:\n%s\n" % (expWkt, wkt)
# Test reshape a geometry involving the first/last vertex (https://issues.qgis.org/issues/14443)
# Test reshape a geometry involving the first/last vertex (https://github.com/qgis/QGIS/issues/22422)
g.reshapeGeometry(QgsLineString([QgsPoint(0.5, 1), QgsPoint(0, 0.5)]))
expWkt = 'Polygon ((0 0.5, 0 0, 1 0, 1 0.5, 0.5 1, 0 0.5))'

View File

@ -789,7 +789,7 @@ class TestQgsJsonUtils(unittest.TestCase):
def testExportFeaturesWithLocale_regression20053(self):
""" Test exporting feature export with range widgets and locale different than C
Regression: https://issues.qgis.org/issues/20053 - decimal separator in csv files
Regression: https://github.com/qgis/QGIS/issues/27875 - decimal separator in csv files
"""
source = QgsVectorLayer("Point?field=name:string&field=cost:double&field=population:int&field=date:date",

View File

@ -366,7 +366,7 @@ class TestQgsLayoutAtlas(unittest.TestCase):
self.assertEqual(self.atlas.currentFilename(), expected)
self.atlas.endRender()
# using feature attribute (refs https://issues.qgis.org/issues/19552)
# using feature attribute (refs https://github.com/qgis/QGIS/issues/27379)
self.atlas.setFilenameExpression("'output_' || attribute(@atlas_feature,'NAME_1')")
expected = ['output_Basse-Normandie',

View File

@ -96,7 +96,7 @@ class TestPointBase(object):
self._Mismatches['TestComposerImageVsCanvasPoint'] = 800
self._Mismatches['TestComposerImagePoint'] = 800
# verify fix for issues
# https://issues.qgis.org/issues/9057
# https://github.com/qgis/QGIS/issues/17705
# http://gis.stackexchange.com/questions/86900
format = self.lyr.format()